summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--maintainers/maintainer-list.nix52
-rw-r--r--nixos/modules/config/swap.nix7
-rw-r--r--nixos/modules/misc/locate.nix4
-rw-r--r--nixos/modules/module-list.nix1
-rw-r--r--nixos/modules/profiles/minimal.nix2
-rw-r--r--nixos/modules/security/pam.nix334
-rw-r--r--nixos/modules/services/databases/hbase.nix38
-rw-r--r--nixos/modules/services/logging/logstash.nix13
-rw-r--r--nixos/modules/services/matrix/mjolnir.nix2
-rw-r--r--nixos/modules/services/misc/plex.nix2
-rw-r--r--nixos/modules/services/misc/xmrig.nix10
-rw-r--r--nixos/modules/services/monitoring/cadvisor.nix2
-rw-r--r--nixos/modules/services/monitoring/zabbix-server.nix7
-rw-r--r--nixos/modules/services/web-servers/nginx/default.nix2
-rw-r--r--nixos/modules/services/x11/hardware/libinput.nix15
-rw-r--r--nixos/modules/system/boot/networkd.nix44
-rw-r--r--nixos/tests/all-tests.nix3
-rw-r--r--nixos/tests/libinput.nix38
-rw-r--r--pkgs/applications/audio/librespot/default.nix18
-rw-r--r--pkgs/applications/audio/mp3blaster/default.nix12
-rw-r--r--pkgs/applications/audio/spotifyd/default.nix13
-rw-r--r--pkgs/applications/blockchains/alfis/default.nix9
-rw-r--r--pkgs/applications/blockchains/chia/default.nix6
-rw-r--r--pkgs/applications/blockchains/clightning/default.nix6
-rw-r--r--pkgs/applications/blockchains/ledger-live-desktop/default.nix4
-rw-r--r--pkgs/applications/blockchains/openethereum/default.nix2
-rw-r--r--pkgs/applications/editors/android-studio/default.nix4
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json2465
-rw-r--r--pkgs/applications/editors/lite-xl/default.nix65
-rw-r--r--pkgs/applications/graphics/ImageMagick/7.0.nix4
-rw-r--r--pkgs/applications/graphics/menyoki/default.nix6
-rw-r--r--pkgs/applications/misc/cardpeek/default.nix65
-rw-r--r--pkgs/applications/misc/clipcat/default.nix2
-rw-r--r--pkgs/applications/misc/cloak/default.nix4
-rw-r--r--pkgs/applications/misc/gpxsee/default.nix6
-rw-r--r--pkgs/applications/misc/logseq/default.nix4
-rw-r--r--pkgs/applications/misc/lscolors/default.nix11
-rw-r--r--pkgs/applications/misc/osmscout-server/default.nix10
-rw-r--r--pkgs/applications/misc/todiff/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.json6
-rw-r--r--pkgs/applications/networking/cluster/krane/Gemfile.lock16
-rw-r--r--pkgs/applications/networking/cluster/krane/gemset.nix28
-rw-r--r--pkgs/applications/networking/cluster/spacegun/node-composition.nix2
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/providers.json33
-rwxr-xr-xpkgs/applications/networking/cluster/terraform-providers/update-provider2
-rw-r--r--pkgs/applications/networking/cluster/tgswitch/default.nix21
-rw-r--r--pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix30
-rw-r--r--pkgs/applications/networking/instant-messengers/deltachat-desktop/no-static-lib.patch39
-rwxr-xr-xpkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh13
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-googlechat/default.nix27
-rw-r--r--pkgs/applications/networking/irc/tiny/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/electron-mail/default.nix11
-rw-r--r--pkgs/applications/networking/mailreaders/meli/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/packages.nix4
-rw-r--r--pkgs/applications/networking/mhost/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/ncdc/default.nix11
-rw-r--r--pkgs/applications/networking/synology-drive/default.nix45
-rw-r--r--pkgs/applications/science/astronomy/gildas/default.nix6
-rw-r--r--pkgs/applications/science/logic/elan/default.nix2
-rw-r--r--pkgs/applications/science/machine-learning/finalfusion-utils/default.nix9
-rw-r--r--pkgs/applications/science/math/R/default.nix4
-rwxr-xr-xpkgs/applications/version-management/commitizen/generate-dependencies.sh2
-rw-r--r--pkgs/applications/version-management/commitizen/node-composition.nix8
-rw-r--r--pkgs/applications/version-management/commitizen/node-env.nix132
-rw-r--r--pkgs/applications/version-management/commitizen/node-packages.nix2923
-rw-r--r--pkgs/applications/version-management/git-and-tools/lucky-commit/default.nix2
-rw-r--r--pkgs/applications/version-management/pijul/default.nix4
-rw-r--r--pkgs/applications/video/ccextractor/default.nix7
-rw-r--r--pkgs/applications/video/streamlink/default.nix25
-rw-r--r--pkgs/applications/window-managers/eww/default.nix8
-rw-r--r--pkgs/applications/window-managers/i3/status-rust.nix8
-rw-r--r--pkgs/applications/window-managers/i3/wmfocus.nix2
-rw-r--r--pkgs/applications/window-managers/ion-3/default.nix7
-rw-r--r--pkgs/build-support/fetchgithub/default.nix2
-rw-r--r--pkgs/build-support/rust/import-cargo-lock.nix29
-rw-r--r--pkgs/build-support/rust/test/import-cargo-lock/default.nix1
-rw-r--r--pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/Cargo.lock638
-rw-r--r--pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/Cargo.toml8
-rw-r--r--pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/default.nix31
-rw-r--r--pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/src/main.rs3
-rw-r--r--pkgs/build-support/setup-hooks/copy-desktop-items.sh4
-rw-r--r--pkgs/data/icons/la-capitaine-icon-theme/default.nix52
-rw-r--r--pkgs/data/misc/hackage/pin.json8
-rw-r--r--pkgs/data/themes/gtk-theme-framework/default.nix36
-rw-r--r--pkgs/desktops/gnome/extensions/sound-output-device-chooser/default.nix4
-rw-r--r--pkgs/development/compilers/elm/packages/node-composition.nix2
-rw-r--r--pkgs/development/compilers/flutter/flutter.nix5
-rw-r--r--pkgs/development/compilers/ghc/head.nix6
-rw-r--r--pkgs/development/compilers/ghcjs/8.10/default.nix2
-rw-r--r--pkgs/development/compilers/kotlin/default.nix4
-rw-r--r--pkgs/development/compilers/kotlin/native.nix8
-rw-r--r--pkgs/development/compilers/seexpr/default.nix33
-rw-r--r--pkgs/development/coq-modules/coq-bits/default.nix19
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix63
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix2
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix14
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml10
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml3
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml24
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml18
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix44
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix1843
-rw-r--r--pkgs/development/interpreters/erlang/R24.nix4
-rw-r--r--pkgs/development/interpreters/wasmer/default.nix14
-rw-r--r--pkgs/development/libraries/agg/default.nix22
-rw-r--r--pkgs/development/libraries/faudio/default.nix4
-rw-r--r--pkgs/development/libraries/igraph/default.nix4
-rw-r--r--pkgs/development/libraries/iqueue/default.nix22
-rwxr-xr-xpkgs/development/libraries/java/mockobjects/builder.sh6
-rw-r--r--pkgs/development/libraries/java/mockobjects/default.nix13
-rw-r--r--pkgs/development/libraries/java/smack/builder.sh7
-rw-r--r--pkgs/development/libraries/java/smack/default.nix12
-rw-r--r--pkgs/development/libraries/libdeltachat/default.nix6
-rw-r--r--pkgs/development/libraries/libinput/default.nix5
-rw-r--r--pkgs/development/libraries/mapnik/default.nix2
-rw-r--r--pkgs/development/libraries/mumlib/default.nix28
-rw-r--r--pkgs/development/libraries/proj/default.nix5
-rw-r--r--pkgs/development/libraries/science/math/scs/default.nix4
-rw-r--r--pkgs/development/libraries/sqlite/default.nix5
-rw-r--r--pkgs/development/libraries/stxxl/default.nix7
-rw-r--r--pkgs/development/libraries/unicorn/default.nix6
-rw-r--r--pkgs/development/misc/google-clasp/google-clasp.nix2
-rw-r--r--pkgs/development/mobile/androidenv/emulator.nix3
-rw-r--r--pkgs/development/node-packages/composition.nix2
-rw-r--r--pkgs/development/node-packages/default.nix5
-rw-r--r--pkgs/development/node-packages/node-env.nix79
-rw-r--r--pkgs/development/node-packages/node-packages.nix866
-rw-r--r--pkgs/development/python-modules/ailment/default.nix4
-rw-r--r--pkgs/development/python-modules/aiolyric/default.nix4
-rw-r--r--pkgs/development/python-modules/angr/default.nix4
-rw-r--r--pkgs/development/python-modules/angrop/default.nix4
-rw-r--r--pkgs/development/python-modules/archinfo/default.nix4
-rw-r--r--pkgs/development/python-modules/atomman/default.nix47
-rw-r--r--pkgs/development/python-modules/bimmer-connected/default.nix8
-rw-r--r--pkgs/development/python-modules/cdcs/default.nix44
-rw-r--r--pkgs/development/python-modules/chiapos/default.nix11
-rw-r--r--pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch9
-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/clize/default.nix4
-rw-r--r--pkgs/development/python-modules/clvm-rs/bump-cargo-lock.patch11
-rw-r--r--pkgs/development/python-modules/clvm-rs/default.nix13
-rw-r--r--pkgs/development/python-modules/cozy/default.nix4
-rw-r--r--pkgs/development/python-modules/cvxpy/default.nix4
-rw-r--r--pkgs/development/python-modules/dnspythonchia/default.nix30
-rw-r--r--pkgs/development/python-modules/explorerscript/default.nix19
-rw-r--r--pkgs/development/python-modules/flask-wtf/default.nix4
-rw-r--r--pkgs/development/python-modules/gistyc/default.nix38
-rw-r--r--pkgs/development/python-modules/git-filter-repo/default.nix4
-rw-r--r--pkgs/development/python-modules/hdfs/default.nix36
-rw-r--r--pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix4
-rw-r--r--pkgs/development/python-modules/identify/default.nix11
-rw-r--r--pkgs/development/python-modules/igraph/default.nix (renamed from pkgs/development/python-modules/python-igraph/default.nix)4
-rw-r--r--pkgs/development/python-modules/ihatemoney/default.nix7
-rw-r--r--pkgs/development/python-modules/kmapper/default.nix4
-rw-r--r--pkgs/development/python-modules/ledgerwallet/default.nix7
-rw-r--r--pkgs/development/python-modules/ledgerwallet/remove-iterateints.patch19
-rw-r--r--pkgs/development/python-modules/libcloud/default.nix35
-rw-r--r--pkgs/development/python-modules/librouteros/default.nix10
-rw-r--r--pkgs/development/python-modules/manticore/default.nix50
-rw-r--r--pkgs/development/python-modules/mautrix/default.nix4
-rw-r--r--pkgs/development/python-modules/mne-python/default.nix4
-rw-r--r--pkgs/development/python-modules/motionblinds/default.nix39
-rw-r--r--pkgs/development/python-modules/motioneye-client/default.nix9
-rw-r--r--pkgs/development/python-modules/multiprocess/default.nix28
-rw-r--r--pkgs/development/python-modules/oocsi/default.nix32
-rw-r--r--pkgs/development/python-modules/potentials/default.nix58
-rw-r--r--pkgs/development/python-modules/pydeck/default.nix31
-rw-r--r--pkgs/development/python-modules/pydyf/default.nix40
-rw-r--r--pkgs/development/python-modules/pylitterbot/default.nix10
-rw-r--r--pkgs/development/python-modules/pypinyin/default.nix4
-rw-r--r--pkgs/development/python-modules/pyscard/default.nix11
-rw-r--r--pkgs/development/python-modules/python-gammu/default.nix19
-rw-r--r--pkgs/development/python-modules/python-mapnik/default.nix2
-rw-r--r--pkgs/development/python-modules/pyvex/default.nix4
-rw-r--r--pkgs/development/python-modules/pywizlight/default.nix14
-rw-r--r--pkgs/development/python-modules/qiling/default.nix32
-rw-r--r--pkgs/development/python-modules/qiskit-aer/default.nix2
-rw-r--r--pkgs/development/python-modules/rtoml/default.nix3
-rw-r--r--pkgs/development/python-modules/scs/default.nix23
-rw-r--r--pkgs/development/python-modules/stanza/default.nix49
-rw-r--r--pkgs/development/python-modules/tailscale/default.nix61
-rw-r--r--pkgs/development/python-modules/tensorflow/bin.nix12
-rw-r--r--pkgs/development/python-modules/trytond/default.nix11
-rw-r--r--pkgs/development/python-modules/unicorn/default.nix22
-rw-r--r--pkgs/development/python-modules/velbus-aio/default.nix7
-rw-r--r--pkgs/development/python-modules/weasyprint/default.nix102
-rw-r--r--pkgs/development/python-modules/weasyprint/library-paths.patch59
-rw-r--r--pkgs/development/python-modules/xknx/default.nix12
-rw-r--r--pkgs/development/tools/analysis/checkov/default.nix4
-rw-r--r--pkgs/development/tools/diesel-cli/default.nix9
-rw-r--r--pkgs/development/tools/earthly/default.nix9
-rw-r--r--pkgs/development/tools/electron/default.nix60
-rw-r--r--pkgs/development/tools/haskell/hyper-haskell/default.nix3
-rw-r--r--pkgs/development/tools/knightos/regenkfs/default.nix3
-rw-r--r--pkgs/development/tools/misc/sccache/default.nix4
-rw-r--r--pkgs/development/tools/misc/tokei/default.nix2
-rw-r--r--pkgs/development/tools/ocaml/dune-release/default.nix29
-rw-r--r--pkgs/development/tools/rust/cargo-crev/default.nix8
-rw-r--r--pkgs/development/tools/rust/cargo-deny/default.nix4
-rw-r--r--pkgs/development/tools/rust/cargo-depgraph/default.nix23
-rw-r--r--pkgs/development/tools/rust/cargo-embed/default.nix2
-rw-r--r--pkgs/development/tools/rust/devserver/default.nix4
-rw-r--r--pkgs/development/tools/rust/rust-analyzer/default.nix5
-rw-r--r--pkgs/development/tools/rust/rustup/default.nix4
-rw-r--r--pkgs/development/tools/selene/default.nix4
-rw-r--r--pkgs/development/tools/stylua/default.nix4
-rw-r--r--pkgs/development/web/remarkjs/nodepkgs.nix2
-rw-r--r--pkgs/games/beret/default.nix42
-rw-r--r--pkgs/games/pacvim/default.nix11
-rw-r--r--pkgs/misc/base16-builder/node-packages.nix2
-rw-r--r--pkgs/misc/emulators/retroarch/cores.nix884
-rw-r--r--pkgs/misc/emulators/retroarch/default.nix9
-rw-r--r--pkgs/misc/emulators/retroarch/hashes.json513
-rwxr-xr-xpkgs/misc/emulators/retroarch/update.py135
-rw-r--r--pkgs/misc/emulators/retroarch/wrapper.nix8
-rw-r--r--pkgs/misc/emulators/ryujinx/default.nix6
-rw-r--r--pkgs/misc/vim-plugins/generated.nix278
-rwxr-xr-xpkgs/misc/vscode-extensions/update_installed_exts.sh16
-rw-r--r--pkgs/misc/vscode-extensions/vscode-lldb/default.nix3
-rw-r--r--pkgs/os-specific/linux/bcc/default.nix4
-rw-r--r--pkgs/os-specific/linux/ddcci/default.nix18
-rw-r--r--pkgs/os-specific/linux/i7z/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/common-config.nix7
-rw-r--r--pkgs/os-specific/linux/kernel/linux-xanmod.nix31
-rwxr-xr-xpkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh10
-rw-r--r--pkgs/os-specific/linux/zfs/default.nix10
-rw-r--r--pkgs/servers/gemini/gmid/default.nix10
-rw-r--r--pkgs/servers/grocy/default.nix4
-rw-r--r--pkgs/servers/heisenbridge/default.nix24
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix2
-rw-r--r--pkgs/servers/home-assistant/default.nix1
-rw-r--r--pkgs/servers/http/nginx/stable.nix4
-rw-r--r--pkgs/servers/http/tomcat/jdbc/mysql/builder.sh4
-rw-r--r--pkgs/servers/http/tomcat/jdbc/mysql/default.nix15
-rw-r--r--pkgs/servers/jackett/default.nix36
-rw-r--r--pkgs/servers/jackett/deps.nix250
-rwxr-xr-xpkgs/servers/jackett/updater.sh34
-rw-r--r--pkgs/servers/jellyfin/node-composition.nix2
-rw-r--r--pkgs/servers/matrix-synapse/default.nix4
-rw-r--r--pkgs/servers/matrix-synapse/matrix-appservice-irc/node-composition.nix2
-rw-r--r--pkgs/servers/matrix-synapse/matrix-appservice-slack/node-composition.nix2
-rw-r--r--pkgs/servers/mautrix-signal/default.nix12
-rw-r--r--pkgs/servers/mautrix-telegram/default.nix22
-rw-r--r--pkgs/servers/mautrix-whatsapp/default.nix10
-rw-r--r--pkgs/servers/mjolnir/default.nix4
-rw-r--r--pkgs/servers/mjolnir/node-deps.nix1718
-rw-r--r--pkgs/servers/monitoring/icinga2/default.nix11
-rw-r--r--pkgs/servers/monitoring/prometheus/webui/codemirror-promql/default.nix2
-rw-r--r--pkgs/servers/monitoring/prometheus/webui/webui/default.nix2
-rw-r--r--pkgs/servers/mpd/default.nix6
-rw-r--r--pkgs/servers/mumsi/default.nix27
-rw-r--r--pkgs/servers/mx-puppet-discord/node-composition.nix2
-rw-r--r--pkgs/servers/nextcloud/default.nix4
-rw-r--r--pkgs/servers/routinator/default.nix5
-rw-r--r--pkgs/servers/sql/mariadb/default.nix11
-rw-r--r--pkgs/servers/sql/mariadb/macos-MDEV-26769-regression-fix.patch12
-rw-r--r--pkgs/servers/sql/mssql/jdbc/builder.sh6
-rw-r--r--pkgs/servers/sql/mssql/jdbc/default.nix16
-rw-r--r--pkgs/servers/web-apps/cryptpad/node-packages.nix2
-rw-r--r--pkgs/servers/web-apps/whitebophir/node-packages.nix2
-rw-r--r--pkgs/servers/zoneminder/default.nix4
-rw-r--r--pkgs/shells/nushell/default.nix2
-rw-r--r--pkgs/tools/X11/xidlehook/default.nix4
-rw-r--r--pkgs/tools/admin/aliyun-cli/default.nix30
-rw-r--r--pkgs/tools/admin/meshcentral/default.nix6
-rw-r--r--pkgs/tools/admin/meshcentral/package.json23
-rw-r--r--pkgs/tools/admin/meshcentral/yarn.lock1227
-rw-r--r--pkgs/tools/admin/meshcentral/yarn.nix1232
-rw-r--r--pkgs/tools/archivers/pax/default.nix4
-rw-r--r--pkgs/tools/audio/botamusique/default.nix2
-rw-r--r--pkgs/tools/compression/ouch/default.nix4
-rw-r--r--pkgs/tools/filesystems/kio-fuse/default.nix31
-rw-r--r--pkgs/tools/graphics/ldgallery/viewer/node-composition.nix2
-rw-r--r--pkgs/tools/graphics/svgcleaner/Cargo.lock256
-rw-r--r--pkgs/tools/graphics/svgcleaner/default.nix27
-rw-r--r--pkgs/tools/misc/convbin/default.nix4
-rw-r--r--pkgs/tools/misc/diffoscope/default.nix5
-rw-r--r--pkgs/tools/misc/ibus-theme-tools/default.nix29
-rw-r--r--pkgs/tools/misc/mongodb-compass/default.nix60
-rw-r--r--pkgs/tools/misc/rates/default.nix4
-rw-r--r--pkgs/tools/misc/termplay/default.nix3
-rw-r--r--pkgs/tools/misc/topicctl/default.nix6
-rw-r--r--pkgs/tools/misc/vector/default.nix36
-rw-r--r--pkgs/tools/misc/websocat/default.nix3
-rw-r--r--pkgs/tools/misc/xxv/default.nix3
-rw-r--r--pkgs/tools/networking/airfield/node.nix2
-rw-r--r--pkgs/tools/networking/bore/default.nix4
-rw-r--r--pkgs/tools/networking/cbftp/default.nix2
-rw-r--r--pkgs/tools/networking/gemget/default.nix22
-rw-r--r--pkgs/tools/networking/lychee/default.nix8
-rw-r--r--pkgs/tools/networking/ookla-speedtest/default.nix6
-rw-r--r--pkgs/tools/networking/zerotierone/default.nix4
-rw-r--r--pkgs/tools/nix/statix/default.nix4
-rw-r--r--pkgs/tools/package-management/cargo-audit/default.nix3
-rw-r--r--pkgs/tools/package-management/cargo-outdated/default.nix27
-rw-r--r--pkgs/tools/package-management/nixui/nixui.nix2
-rw-r--r--pkgs/tools/security/gau/default.nix6
-rw-r--r--pkgs/tools/security/onlykey/onlykey.nix2
-rw-r--r--pkgs/tools/security/sheesy-cli/default.nix8
-rw-r--r--pkgs/tools/security/trufflehog/default.nix4
-rw-r--r--pkgs/tools/security/vaultwarden/default.nix14
-rw-r--r--pkgs/tools/system/plan9port/default.nix3
-rw-r--r--pkgs/tools/system/zenith/default.nix3
-rw-r--r--pkgs/tools/text/ripgrep/default.nix4
-rw-r--r--pkgs/tools/text/tidy-viewer/default.nix6
-rw-r--r--pkgs/top-level/aliases.nix3
-rw-r--r--pkgs/top-level/all-packages.nix92
-rw-r--r--pkgs/top-level/haskell-packages.nix2
-rw-r--r--pkgs/top-level/python-aliases.nix1
-rw-r--r--pkgs/top-level/python-packages.nix32
311 files changed, 13056 insertions, 6618 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index b14431dbb7a47..41018c41728ba 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -603,6 +603,12 @@
       fingerprint = "7931 EB4E 4712 D7BE 04F8  6D34 07EE 1FFC A58A 11C5";
     }];
   };
+  amfl = {
+    email = "amfl@none.none";
+    github = "amfl";
+    githubId = 382798;
+    name = "amfl";
+  };
   amiddelk = {
     email = "amiddelk@gmail.com";
     github = "amiddelk";
@@ -1558,6 +1564,16 @@
     githubId = 87764;
     name = "Ben Ford";
   };
+  boppyt = {
+    email = "boppy@nwcpz.com";
+    github = "boppyt";
+    githubId = 71049646;
+    name = "Zack A";
+    keys = [{
+      longkeyid = "rsa4096/0x6310C97DE31D1545";
+      fingerprint = "E8D7 5C19 9F65 269B 439D  F77B 6310 C97D E31D 1545";
+    }];
+  };
   borisbabic = {
     email = "boris.ivan.babic@gmail.com";
     github = "borisbabic";
@@ -2340,6 +2356,12 @@
     githubId = 12202789;
     name = "CrazedProgrammer";
   };
+  creator54 = {
+    email = "hi.creator54@gmail.com";
+    github = "creator54";
+    githubId = 34543609;
+    name = "creator54";
+  };
   cript0nauta = {
     email = "shareman1204@gmail.com";
     github = "cript0nauta";
@@ -4705,6 +4727,12 @@
     githubId = 896431;
     name = "Chris Hodapp";
   };
+  hollowman6 = {
+    email = "hollowman@hollowman.ml";
+    github = "HollowMan6";
+    githubId = 43995067;
+    name = "Songlin Jiang";
+  };
   holymonson = {
     email = "holymonson@gmail.com";
     github = "holymonson";
@@ -7827,6 +7855,12 @@
     githubId = 99988;
     name = "Maarten Hoogendoorn";
   };
+  MoritzBoehme = {
+    email = "mail@moritzboeh.me";
+    github = "MoritzBoehme";
+    githubId = 42215704;
+    name = "Moritz Böhme";
+  };
   MostAwesomeDude = {
     email = "cds@corbinsimpson.com";
     github = "MostAwesomeDude";
@@ -8668,6 +8702,12 @@
     githubId = 101514;
     name = "Orivej Desh";
   };
+  ornxka = {
+    email = "ornxka@littledevil.sh";
+    github = "ornxka";
+    githubId = 52086525;
+    name = "ornxka";
+  };
   oro = {
     email = "marco@orovecchia.at";
     github = "oro";
@@ -9748,6 +9788,12 @@
     githubId = 37246692;
     name = "Riley Inman";
   };
+  riotbib = {
+    email = "github-nix@lnrt.de";
+    github = "riotbib";
+    githubId = 43172581;
+    name = "Lennart MĂĽhlenmeier";
+  };
   ris = {
     email = "code@humanleg.org.uk";
     github = "risicle";
@@ -9961,6 +10007,12 @@
     githubId = 592876;
     name = "Robert W. Pearce";
   };
+  rprecenth = {
+    email = "rasmus@precenth.eu";
+    github = "Prillan";
+    githubId = 1675190;
+    name = "Rasmus Précenth";
+  };
   rprospero = {
     email = "rprospero+nix@gmail.com";
     github = "rprospero";
diff --git a/nixos/modules/config/swap.nix b/nixos/modules/config/swap.nix
index 9b005021086be..2b94b954cb80f 100644
--- a/nixos/modules/config/swap.nix
+++ b/nixos/modules/config/swap.nix
@@ -203,7 +203,6 @@ in
     ];
 
     # Create missing swapfiles.
-    # FIXME: support changing the size of existing swapfiles.
     systemd.services =
       let
 
@@ -223,11 +222,7 @@ in
                 ${optionalString (sw.size != null) ''
                   currentSize=$(( $(stat -c "%s" "${sw.device}" 2>/dev/null || echo 0) / 1024 / 1024 ))
                   if [ "${toString sw.size}" != "$currentSize" ]; then
-                    fallocate -l ${toString sw.size}M "${sw.device}" ||
-                      dd if=/dev/zero of="${sw.device}" bs=1M count=${toString sw.size}
-                    if [ "${toString sw.size}" -lt "$currentSize" ]; then
-                      truncate --size "${toString sw.size}M" "${sw.device}"
-                    fi
+                    dd if=/dev/zero of="${sw.device}" bs=1M count=${toString sw.size}
                     chmod 0600 ${sw.device}
                     ${optionalString (!sw.randomEncryption.enable) "mkswap ${sw.realDevice}"}
                   fi
diff --git a/nixos/modules/misc/locate.nix b/nixos/modules/misc/locate.nix
index 2f2986c2fec5a..3638bebed931b 100644
--- a/nixos/modules/misc/locate.nix
+++ b/nixos/modules/misc/locate.nix
@@ -149,7 +149,7 @@ in {
 
     prunePaths = mkOption {
       type = listOf path;
-      default = ["/tmp" "/var/tmp" "/var/cache" "/var/lock" "/var/run" "/var/spool" "/nix/store"];
+      default = [ "/tmp" "/var/tmp" "/var/cache" "/var/lock" "/var/run" "/var/spool" "/nix/store" "/nix/var/log/nix" ];
       description = ''
         Which paths to exclude from indexing
       '';
@@ -157,7 +157,7 @@ in {
 
     pruneNames = mkOption {
       type = listOf str;
-      default = [];
+      default = [ ".bzr" ".cache" ".git" ".hg" ".svn" ];
       description = ''
         Directory components which should exclude paths containing them from indexing
       '';
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 4ee79b4396026..5d075d1aa299f 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -611,6 +611,7 @@
   ./services/misc/uhub.nix
   ./services/misc/weechat.nix
   ./services/misc/xmr-stak.nix
+  ./services/misc/xmrig.nix
   ./services/misc/zigbee2mqtt.nix
   ./services/misc/zoneminder.nix
   ./services/misc/zookeeper.nix
diff --git a/nixos/modules/profiles/minimal.nix b/nixos/modules/profiles/minimal.nix
index f044e6f39ea5a..e79b927238419 100644
--- a/nixos/modules/profiles/minimal.nix
+++ b/nixos/modules/profiles/minimal.nix
@@ -14,4 +14,6 @@ with lib;
   documentation.enable = mkDefault false;
 
   documentation.nixos.enable = mkDefault false;
+
+  programs.command-not-found.enable = mkDefault false;
 }
diff --git a/nixos/modules/security/pam.nix b/nixos/modules/security/pam.nix
index 40df6c67ef842..70bce783a90b6 100644
--- a/nixos/modules/security/pam.nix
+++ b/nixos/modules/security/pam.nix
@@ -410,46 +410,64 @@ let
       # Samba stuff to the Samba module.  This requires that the PAM
       # module provides the right hooks.
       text = mkDefault
-        (''
-          # Account management.
-          account required pam_unix.so
-          ${optionalString use_ldap
-              "account sufficient ${pam_ldap}/lib/security/pam_ldap.so"}
-          ${optionalString (config.services.sssd.enable && cfg.sssdStrictAccess==false)
-              "account sufficient ${pkgs.sssd}/lib/security/pam_sss.so"}
-          ${optionalString (config.services.sssd.enable && cfg.sssdStrictAccess)
-              "account [default=bad success=ok user_unknown=ignore] ${pkgs.sssd}/lib/security/pam_sss.so"}
-          ${optionalString config.krb5.enable
-              "account sufficient ${pam_krb5}/lib/security/pam_krb5.so"}
-          ${optionalString cfg.googleOsLoginAccountVerification ''
+        (
+          ''
+            # Account management.
+            account required pam_unix.so
+          '' +
+          optionalString use_ldap ''
+            account sufficient ${pam_ldap}/lib/security/pam_ldap.so
+          '' +
+          optionalString (config.services.sssd.enable && cfg.sssdStrictAccess==false) ''
+            account sufficient ${pkgs.sssd}/lib/security/pam_sss.so
+          '' +
+          optionalString (config.services.sssd.enable && cfg.sssdStrictAccess) ''
+            account [default=bad success=ok user_unknown=ignore] ${pkgs.sssd}/lib/security/pam_sss.so
+          '' +
+          optionalString config.krb5.enable ''
+            account sufficient ${pam_krb5}/lib/security/pam_krb5.so
+          '' +
+          optionalString cfg.googleOsLoginAccountVerification ''
             account [success=ok ignore=ignore default=die] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so
             account [success=ok default=ignore] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_admin.so
-          ''}
-
-          # Authentication management.
-          ${optionalString cfg.googleOsLoginAuthentication
-              "auth [success=done perm_denied=bad default=ignore] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so"}
-          ${optionalString cfg.rootOK
-              "auth sufficient pam_rootok.so"}
-          ${optionalString cfg.requireWheel
-              "auth required pam_wheel.so use_uid"}
-          ${optionalString cfg.logFailures
-              "auth required pam_faillock.so"}
-          ${optionalString (config.security.pam.enableSSHAgentAuth && cfg.sshAgentAuth)
-              "auth sufficient ${pkgs.pam_ssh_agent_auth}/libexec/pam_ssh_agent_auth.so file=${lib.concatStringsSep ":" config.services.openssh.authorizedKeysFiles}"}
-          ${let p11 = config.security.pam.p11; in optionalString cfg.p11Auth
-              "auth ${p11.control} ${pkgs.pam_p11}/lib/security/pam_p11.so ${pkgs.opensc}/lib/opensc-pkcs11.so"}
-          ${let u2f = config.security.pam.u2f; in optionalString cfg.u2fAuth
-              "auth ${u2f.control} ${pkgs.pam_u2f}/lib/security/pam_u2f.so ${optionalString u2f.debug "debug"} ${optionalString (u2f.authFile != null) "authfile=${u2f.authFile}"} ${optionalString u2f.interactive "interactive"} ${optionalString u2f.cue "cue"} ${optionalString (u2f.appId != null) "appid=${u2f.appId}"}"}
-          ${optionalString cfg.usbAuth
-              "auth sufficient ${pkgs.pam_usb}/lib/security/pam_usb.so"}
-          ${let oath = config.security.pam.oath; in optionalString cfg.oathAuth
-              "auth requisite ${pkgs.oathToolkit}/lib/security/pam_oath.so window=${toString oath.window} usersfile=${toString oath.usersFile} digits=${toString oath.digits}"}
-          ${let yubi = config.security.pam.yubico; in optionalString cfg.yubicoAuth
-              "auth ${yubi.control} ${pkgs.yubico-pam}/lib/security/pam_yubico.so mode=${toString yubi.mode} ${optionalString (yubi.challengeResponsePath != null) "chalresp_path=${yubi.challengeResponsePath}"} ${optionalString (yubi.mode == "client") "id=${toString yubi.id}"} ${optionalString yubi.debug "debug"}"}
-          ${optionalString cfg.fprintAuth
-              "auth sufficient ${pkgs.fprintd}/lib/security/pam_fprintd.so"}
-        '' +
+          '' +
+          ''
+
+            # Authentication management.
+          '' +
+          optionalString cfg.googleOsLoginAuthentication ''
+            auth [success=done perm_denied=bad default=ignore] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so
+          '' +
+          optionalString cfg.rootOK ''
+            auth sufficient pam_rootok.so
+          '' +
+          optionalString cfg.requireWheel ''
+            auth required pam_wheel.so use_uid
+          '' +
+          optionalString cfg.logFailures ''
+            auth required pam_faillock.so
+          '' +
+          optionalString (config.security.pam.enableSSHAgentAuth && cfg.sshAgentAuth) ''
+            auth sufficient ${pkgs.pam_ssh_agent_auth}/libexec/pam_ssh_agent_auth.so file=${lib.concatStringsSep ":" config.services.openssh.authorizedKeysFiles}
+          '' +
+          (let p11 = config.security.pam.p11; in optionalString cfg.p11Auth ''
+            auth ${p11.control} ${pkgs.pam_p11}/lib/security/pam_p11.so ${pkgs.opensc}/lib/opensc-pkcs11.so
+          '') +
+          (let u2f = config.security.pam.u2f; in optionalString cfg.u2fAuth ''
+            auth ${u2f.control} ${pkgs.pam_u2f}/lib/security/pam_u2f.so ${optionalString u2f.debug "debug"} ${optionalString (u2f.authFile != null) "authfile=${u2f.authFile}"} ${optionalString u2f.interactive "interactive"} ${optionalString u2f.cue "cue"} ${optionalString (u2f.appId != null) "appid=${u2f.appId}"}
+          '') +
+          optionalString cfg.usbAuth ''
+            auth sufficient ${pkgs.pam_usb}/lib/security/pam_usb.so
+          '' +
+          (let oath = config.security.pam.oath; in optionalString cfg.oathAuth ''
+            auth requisite ${pkgs.oathToolkit}/lib/security/pam_oath.so window=${toString oath.window} usersfile=${toString oath.usersFile} digits=${toString oath.digits}
+          '') +
+          (let yubi = config.security.pam.yubico; in optionalString cfg.yubicoAuth ''
+            auth ${yubi.control} ${pkgs.yubico-pam}/lib/security/pam_yubico.so mode=${toString yubi.mode} ${optionalString (yubi.challengeResponsePath != null) "chalresp_path=${yubi.challengeResponsePath}"} ${optionalString (yubi.mode == "client") "id=${toString yubi.id}"} ${optionalString yubi.debug "debug"}
+          '') +
+          optionalString cfg.fprintAuth ''
+            auth sufficient ${pkgs.fprintd}/lib/security/pam_fprintd.so
+          '' +
           # Modules in this block require having the password set in PAM_AUTHTOK.
           # pam_unix is marked as 'sufficient' on NixOS which means nothing will run
           # after it succeeds. Certain modules need to run after pam_unix
@@ -457,115 +475,151 @@ let
           # earlier point and it will run again with 'sufficient' further down.
           # We use try_first_pass the second time to avoid prompting password twice
           (optionalString (cfg.unixAuth &&
-          (config.security.pam.enableEcryptfs
-            || cfg.pamMount
-            || cfg.enableKwallet
-            || cfg.enableGnomeKeyring
-            || cfg.googleAuthenticator.enable
-            || cfg.gnupg.enable
-            || cfg.duoSecurity.enable)) ''
-              auth required pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} ${optionalString cfg.nodelay "nodelay"} likeauth
-              ${optionalString config.security.pam.enableEcryptfs
-                "auth optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so unwrap"}
-              ${optionalString cfg.pamMount
-                "auth optional ${pkgs.pam_mount}/lib/security/pam_mount.so disable_interactive"}
-              ${optionalString cfg.enableKwallet
-                ("auth optional ${pkgs.plasma5Packages.kwallet-pam}/lib/security/pam_kwallet5.so" +
-                 " kwalletd=${pkgs.plasma5Packages.kwallet.bin}/bin/kwalletd5")}
-              ${optionalString cfg.enableGnomeKeyring
-                "auth optional ${pkgs.gnome.gnome-keyring}/lib/security/pam_gnome_keyring.so"}
-              ${optionalString cfg.gnupg.enable
-                "auth optional ${pkgs.pam_gnupg}/lib/security/pam_gnupg.so"
-                + optionalString cfg.gnupg.storeOnly " store-only"
-               }
-              ${optionalString cfg.googleAuthenticator.enable
-                "auth required ${pkgs.googleAuthenticator}/lib/security/pam_google_authenticator.so no_increment_hotp"}
-              ${optionalString cfg.duoSecurity.enable
-                "auth required ${pkgs.duo-unix}/lib/security/pam_duo.so"}
-            '') + ''
-          ${optionalString cfg.unixAuth
-              "auth sufficient pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} ${optionalString cfg.nodelay "nodelay"} likeauth try_first_pass"}
-          ${optionalString cfg.otpwAuth
-              "auth sufficient ${pkgs.otpw}/lib/security/pam_otpw.so"}
-          ${optionalString use_ldap
-              "auth sufficient ${pam_ldap}/lib/security/pam_ldap.so use_first_pass"}
-          ${optionalString config.services.sssd.enable
-              "auth sufficient ${pkgs.sssd}/lib/security/pam_sss.so use_first_pass"}
-          ${optionalString config.krb5.enable ''
+            (config.security.pam.enableEcryptfs
+              || cfg.pamMount
+              || cfg.enableKwallet
+              || cfg.enableGnomeKeyring
+              || cfg.googleAuthenticator.enable
+              || cfg.gnupg.enable
+              || cfg.duoSecurity.enable))
+            (
+              ''
+                auth required pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} ${optionalString cfg.nodelay "nodelay"} likeauth
+              '' +
+              optionalString config.security.pam.enableEcryptfs ''
+                auth optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so unwrap
+              '' +
+              optionalString cfg.pamMount ''
+                auth optional ${pkgs.pam_mount}/lib/security/pam_mount.so disable_interactive
+              '' +
+              optionalString cfg.enableKwallet ''
+               auth optional ${pkgs.plasma5Packages.kwallet-pam}/lib/security/pam_kwallet5.so kwalletd=${pkgs.plasma5Packages.kwallet.bin}/bin/kwalletd5
+              '' +
+              optionalString cfg.enableGnomeKeyring ''
+                auth optional ${pkgs.gnome.gnome-keyring}/lib/security/pam_gnome_keyring.so
+              '' +
+              optionalString cfg.gnupg.enable ''
+                auth optional ${pkgs.pam_gnupg}/lib/security/pam_gnupg.so ${optionalString cfg.gnupg.storeOnly " store-only"}
+              '' +
+              optionalString cfg.googleAuthenticator.enable ''
+                auth required ${pkgs.googleAuthenticator}/lib/security/pam_google_authenticator.so no_increment_hotp
+              '' +
+              optionalString cfg.duoSecurity.enable ''
+                auth required ${pkgs.duo-unix}/lib/security/pam_duo.so
+              ''
+            )) +
+          optionalString cfg.unixAuth ''
+            auth sufficient pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} ${optionalString cfg.nodelay "nodelay"} likeauth try_first_pass
+          '' +
+          optionalString cfg.otpwAuth ''
+            auth sufficient ${pkgs.otpw}/lib/security/pam_otpw.so
+          '' +
+          optionalString use_ldap ''
+            auth sufficient ${pam_ldap}/lib/security/pam_ldap.so use_first_pass
+          '' +
+          optionalString config.services.sssd.enable ''
+            auth sufficient ${pkgs.sssd}/lib/security/pam_sss.so use_first_pass
+          '' +
+          optionalString config.krb5.enable ''
             auth [default=ignore success=1 service_err=reset] ${pam_krb5}/lib/security/pam_krb5.so use_first_pass
             auth [default=die success=done] ${pam_ccreds}/lib/security/pam_ccreds.so action=validate use_first_pass
             auth sufficient ${pam_ccreds}/lib/security/pam_ccreds.so action=store use_first_pass
-          ''}
-          auth required pam_deny.so
-
-          # Password management.
-          password sufficient pam_unix.so nullok sha512
-          ${optionalString config.security.pam.enableEcryptfs
-              "password optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so"}
-          ${optionalString cfg.pamMount
-              "password optional ${pkgs.pam_mount}/lib/security/pam_mount.so"}
-          ${optionalString use_ldap
-              "password sufficient ${pam_ldap}/lib/security/pam_ldap.so"}
-          ${optionalString config.services.sssd.enable
-              "password sufficient ${pkgs.sssd}/lib/security/pam_sss.so use_authtok"}
-          ${optionalString config.krb5.enable
-              "password sufficient ${pam_krb5}/lib/security/pam_krb5.so use_first_pass"}
-          ${optionalString cfg.enableGnomeKeyring
-              "password optional ${pkgs.gnome.gnome-keyring}/lib/security/pam_gnome_keyring.so use_authtok"}
-
-          # Session management.
-          ${optionalString cfg.setEnvironment ''
+          '' +
+          ''
+            auth required pam_deny.so
+
+            # Password management.
+            password sufficient pam_unix.so nullok sha512
+          '' +
+          optionalString config.security.pam.enableEcryptfs ''
+            password optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so
+          '' +
+          optionalString cfg.pamMount ''
+            password optional ${pkgs.pam_mount}/lib/security/pam_mount.so
+          '' +
+          optionalString use_ldap ''
+            password sufficient ${pam_ldap}/lib/security/pam_ldap.so
+          '' +
+          optionalString config.services.sssd.enable ''
+            password sufficient ${pkgs.sssd}/lib/security/pam_sss.so use_authtok
+          '' +
+          optionalString config.krb5.enable ''
+            password sufficient ${pam_krb5}/lib/security/pam_krb5.so use_first_pass
+          '' +
+          optionalString cfg.enableGnomeKeyring ''
+            password optional ${pkgs.gnome.gnome-keyring}/lib/security/pam_gnome_keyring.so use_authtok
+          '' +
+          ''
+
+            # Session management.
+          '' +
+          optionalString cfg.setEnvironment ''
             session required pam_env.so conffile=/etc/pam/environment readenv=0
-          ''}
-          session required pam_unix.so
-          ${optionalString cfg.setLoginUid
-              "session ${
-                if config.boot.isContainer then "optional" else "required"
-              } pam_loginuid.so"}
-          ${optionalString cfg.ttyAudit.enable
-              "session required ${pkgs.pam}/lib/security/pam_tty_audit.so
+          '' +
+          ''
+            session required pam_unix.so
+          '' +
+          optionalString cfg.setLoginUid ''
+            session ${if config.boot.isContainer then "optional" else "required"} pam_loginuid.so
+          '' +
+          optionalString cfg.ttyAudit.enable ''
+            session required ${pkgs.pam}/lib/security/pam_tty_audit.so
                 open_only=${toString cfg.ttyAudit.openOnly}
                 ${optionalString (cfg.ttyAudit.enablePattern != null) "enable=${cfg.ttyAudit.enablePattern}"}
                 ${optionalString (cfg.ttyAudit.disablePattern != null) "disable=${cfg.ttyAudit.disablePattern}"}
-              "}
-          ${optionalString cfg.makeHomeDir
-              "session required ${pkgs.pam}/lib/security/pam_mkhomedir.so silent skel=${config.security.pam.makeHomeDir.skelDirectory} umask=0077"}
-          ${optionalString cfg.updateWtmp
-              "session required ${pkgs.pam}/lib/security/pam_lastlog.so silent"}
-          ${optionalString config.security.pam.enableEcryptfs
-              "session optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so"}
-          ${optionalString cfg.pamMount
-              "session optional ${pkgs.pam_mount}/lib/security/pam_mount.so disable_interactive"}
-          ${optionalString use_ldap
-              "session optional ${pam_ldap}/lib/security/pam_ldap.so"}
-          ${optionalString config.services.sssd.enable
-              "session optional ${pkgs.sssd}/lib/security/pam_sss.so"}
-          ${optionalString config.krb5.enable
-              "session optional ${pam_krb5}/lib/security/pam_krb5.so"}
-          ${optionalString cfg.otpwAuth
-              "session optional ${pkgs.otpw}/lib/security/pam_otpw.so"}
-          ${optionalString cfg.startSession
-              "session optional ${pkgs.systemd}/lib/security/pam_systemd.so"}
-          ${optionalString cfg.forwardXAuth
-              "session optional pam_xauth.so xauthpath=${pkgs.xorg.xauth}/bin/xauth systemuser=99"}
-          ${optionalString (cfg.limits != [])
-              "session required ${pkgs.pam}/lib/security/pam_limits.so conf=${makeLimitsConf cfg.limits}"}
-          ${optionalString (cfg.showMotd && config.users.motd != null)
-              "session optional ${pkgs.pam}/lib/security/pam_motd.so motd=${motd}"}
-          ${optionalString (cfg.enableAppArmor && config.security.apparmor.enable)
-              "session optional ${pkgs.apparmor-pam}/lib/security/pam_apparmor.so order=user,group,default debug"}
-          ${optionalString (cfg.enableKwallet)
-              ("session optional ${pkgs.plasma5Packages.kwallet-pam}/lib/security/pam_kwallet5.so" +
-               " kwalletd=${pkgs.plasma5Packages.kwallet.bin}/bin/kwalletd5")}
-          ${optionalString (cfg.enableGnomeKeyring)
-              "session optional ${pkgs.gnome.gnome-keyring}/lib/security/pam_gnome_keyring.so auto_start"}
-          ${optionalString cfg.gnupg.enable
-              "session optional ${pkgs.pam_gnupg}/lib/security/pam_gnupg.so"
-              + optionalString cfg.gnupg.noAutostart " no-autostart"
-           }
-          ${optionalString (config.virtualisation.lxc.lxcfs.enable)
-               "session optional ${pkgs.lxc}/lib/security/pam_cgfs.so -c all"}
-        '');
+          '' +
+          optionalString cfg.makeHomeDir ''
+            session required ${pkgs.pam}/lib/security/pam_mkhomedir.so silent skel=${config.security.pam.makeHomeDir.skelDirectory} umask=0077
+          '' +
+          optionalString cfg.updateWtmp ''
+            session required ${pkgs.pam}/lib/security/pam_lastlog.so silent
+          '' +
+          optionalString config.security.pam.enableEcryptfs ''
+            session optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so
+          '' +
+          optionalString cfg.pamMount ''
+            session optional ${pkgs.pam_mount}/lib/security/pam_mount.so disable_interactive
+          '' +
+          optionalString use_ldap ''
+            session optional ${pam_ldap}/lib/security/pam_ldap.so
+          '' +
+          optionalString config.services.sssd.enable ''
+            session optional ${pkgs.sssd}/lib/security/pam_sss.so
+          '' +
+          optionalString config.krb5.enable ''
+            session optional ${pam_krb5}/lib/security/pam_krb5.so
+          '' +
+          optionalString cfg.otpwAuth ''
+            session optional ${pkgs.otpw}/lib/security/pam_otpw.so
+          '' +
+          optionalString cfg.startSession ''
+            session optional ${pkgs.systemd}/lib/security/pam_systemd.so
+          '' +
+          optionalString cfg.forwardXAuth ''
+            session optional pam_xauth.so xauthpath=${pkgs.xorg.xauth}/bin/xauth systemuser=99
+          '' +
+          optionalString (cfg.limits != []) ''
+            session required ${pkgs.pam}/lib/security/pam_limits.so conf=${makeLimitsConf cfg.limits}
+          '' +
+          optionalString (cfg.showMotd && config.users.motd != null) ''
+            session optional ${pkgs.pam}/lib/security/pam_motd.so motd=${motd}
+          '' +
+          optionalString (cfg.enableAppArmor && config.security.apparmor.enable) ''
+            session optional ${pkgs.apparmor-pam}/lib/security/pam_apparmor.so order=user,group,default debug
+          '' +
+          optionalString (cfg.enableKwallet) ''
+            session optional ${pkgs.plasma5Packages.kwallet-pam}/lib/security/pam_kwallet5.so kwalletd=${pkgs.plasma5Packages.kwallet.bin}/bin/kwalletd5
+          '' +
+          optionalString (cfg.enableGnomeKeyring) ''
+            session optional ${pkgs.gnome.gnome-keyring}/lib/security/pam_gnome_keyring.so auto_start
+          '' +
+          optionalString cfg.gnupg.enable ''
+            session optional ${pkgs.pam_gnupg}/lib/security/pam_gnupg.so ${optionalString cfg.gnupg.noAutostart " no-autostart"}
+          '' +
+          optionalString (config.virtualisation.lxc.lxcfs.enable) ''
+            session optional ${pkgs.lxc}/lib/security/pam_cgfs.so -c all
+          ''
+        );
     };
 
   };
diff --git a/nixos/modules/services/databases/hbase.nix b/nixos/modules/services/databases/hbase.nix
index ff01a1bcd98b9..183c8a2f46d53 100644
--- a/nixos/modules/services/databases/hbase.nix
+++ b/nixos/modules/services/databases/hbase.nix
@@ -5,18 +5,24 @@ with lib;
 let
   cfg = config.services.hbase;
 
-  configFile = pkgs.writeText "hbase-site.xml" ''
-    <configuration>
-      <property>
-        <name>hbase.rootdir</name>
-        <value>file://${cfg.dataDir}/hbase</value>
-      </property>
-      <property>
-        <name>hbase.zookeeper.property.dataDir</name>
-        <value>${cfg.dataDir}/zookeeper</value>
-      </property>
-    </configuration>
-  '';
+  defaultConfig = {
+    "hbase.rootdir" = "file://${cfg.dataDir}/hbase";
+    "hbase.zookeeper.property.dataDir" = "${cfg.dataDir}/zookeeper";
+  };
+
+  buildProperty = configAttr:
+    (builtins.concatStringsSep "\n"
+      (lib.mapAttrsToList
+        (name: value: ''
+          <property>
+            <name>${name}</name>
+            <value>${builtins.toString value}</value>
+          </property>
+        '')
+        configAttr));
+
+  configFile = pkgs.writeText "hbase-site.xml"
+    (buildProperty (defaultConfig // cfg.settings));
 
   configDir = pkgs.runCommand "hbase-config-dir" { preferLocalBuild = true; } ''
     mkdir -p $out
@@ -85,6 +91,14 @@ in {
         '';
       };
 
+      settings = mkOption {
+        type = with lib.types; attrsOf (oneOf [ str int bool ]);
+        default = defaultConfig;
+        description = ''
+          configurations in hbase-site.xml, see <link xlink:href="https://github.com/apache/hbase/blob/master/hbase-server/src/test/resources/hbase-site.xml"/> for details.
+        '';
+      };
+
     };
 
   };
diff --git a/nixos/modules/services/logging/logstash.nix b/nixos/modules/services/logging/logstash.nix
index 044d5330231ec..a08203dffe789 100644
--- a/nixos/modules/services/logging/logstash.nix
+++ b/nixos/modules/services/logging/logstash.nix
@@ -23,12 +23,16 @@ let
 
   logstashSettingsYml = pkgs.writeText "logstash.yml" cfg.extraSettings;
 
+  logstashJvmOptionsFile = pkgs.writeText "jvm.options" cfg.extraJvmOptions;
+
   logstashSettingsDir = pkgs.runCommand "logstash-settings" {
+      inherit logstashJvmOptionsFile;
       inherit logstashSettingsYml;
       preferLocalBuild = true;
     } ''
     mkdir -p $out
     ln -s $logstashSettingsYml $out/logstash.yml
+    ln -s $logstashJvmOptionsFile $out/jvm.options
   '';
 in
 
@@ -152,6 +156,15 @@ in
         '';
       };
 
+      extraJvmOptions = mkOption {
+        type = types.lines;
+        default = "";
+        description = "Extra JVM options, one per line (jvm.options format).";
+        example = ''
+          -Xms2g
+          -Xmx2g
+        '';
+      };
 
     };
   };
diff --git a/nixos/modules/services/matrix/mjolnir.nix b/nixos/modules/services/matrix/mjolnir.nix
index 8a54f93d98d8f..278924b05cf28 100644
--- a/nixos/modules/services/matrix/mjolnir.nix
+++ b/nixos/modules/services/matrix/mjolnir.nix
@@ -14,6 +14,8 @@ let
       else
         cfg.homeserverUrl;
 
+    rawHomeserverUrl = cfg.homeserverUrl;
+
     pantalaimon = {
       inherit (cfg.pantalaimon) username;
 
diff --git a/nixos/modules/services/misc/plex.nix b/nixos/modules/services/misc/plex.nix
index 7c97069aaf750..2ae4e80d5c3fd 100644
--- a/nixos/modules/services/misc/plex.nix
+++ b/nixos/modules/services/misc/plex.nix
@@ -76,7 +76,7 @@ in
           in Plex's scanners directory will be cleared and this module will
           symlink all of the paths specified here to that directory.
         '';
-        example = literalExample ''
+        example = literalExpression ''
           [
             (fetchFromGitHub {
               owner = "ZeroQI";
diff --git a/nixos/modules/services/misc/xmrig.nix b/nixos/modules/services/misc/xmrig.nix
index 15c7d2a7b14ca..cf01bb119e894 100644
--- a/nixos/modules/services/misc/xmrig.nix
+++ b/nixos/modules/services/misc/xmrig.nix
@@ -51,6 +51,8 @@ with lib;
   };
 
   config = mkIf cfg.enable {
+    boot.kernelModules = [ "msr" ];
+
     systemd.services.xmrig = {
       wantedBy = [ "multi-user.target" ];
       after = [ "network.target" ];
@@ -58,14 +60,16 @@ with lib;
       serviceConfig = {
         ExecStartPre = "${cfg.package}/bin/xmrig --config=${configFile} --dry-run";
         ExecStart = "${cfg.package}/bin/xmrig --config=${configFile}";
-        DynamicUser = true;
+        # https://xmrig.com/docs/miner/randomx-optimization-guide/msr
+        # If you use recent XMRig with root privileges (Linux) or admin
+        # privileges (Windows) the miner configure all MSR registers
+        # automatically.
+        DynamicUser = lib.mkDefault false;
       };
     };
   };
 
   meta = with lib; {
-    description = "XMRig Mining Software Service";
-    license = licenses.gpl3Only;
     maintainers = with maintainers; [ ratsclub ];
   };
 }
diff --git a/nixos/modules/services/monitoring/cadvisor.nix b/nixos/modules/services/monitoring/cadvisor.nix
index da051dbe4655b..dfbf07efcaea9 100644
--- a/nixos/modules/services/monitoring/cadvisor.nix
+++ b/nixos/modules/services/monitoring/cadvisor.nix
@@ -111,6 +111,8 @@ in {
         wantedBy = [ "multi-user.target" ];
         after = [ "network.target" "docker.service" "influxdb.service" ];
 
+        path = optionals config.boot.zfs.enabled [ pkgs.zfs ];
+
         postStart = mkBefore ''
           until ${pkgs.curl.bin}/bin/curl -s -o /dev/null 'http://${cfg.listenAddress}:${toString cfg.port}/containers/'; do
             sleep 1;
diff --git a/nixos/modules/services/monitoring/zabbix-server.nix b/nixos/modules/services/monitoring/zabbix-server.nix
index 9b0fd9dbff13e..0141c073da25d 100644
--- a/nixos/modules/services/monitoring/zabbix-server.nix
+++ b/nixos/modules/services/monitoring/zabbix-server.nix
@@ -250,7 +250,12 @@ in
     };
 
     security.wrappers = {
-      fping.source = "${pkgs.fping}/bin/fping";
+      fping =
+        { setuid = true;
+          owner = "root";
+          group = "root";
+          source = "${pkgs.fping}/bin/fping";
+        };
     };
 
     systemd.services.zabbix-server = {
diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix
index be589e42ddd6a..5717b86b3bea6 100644
--- a/nixos/modules/services/web-servers/nginx/default.nix
+++ b/nixos/modules/services/web-servers/nginx/default.nix
@@ -896,7 +896,7 @@ in
         PrivateMounts = true;
         # System Call Filtering
         SystemCallArchitectures = "native";
-        SystemCallFilter = "~@cpu-emulation @debug @keyring @ipc @mount @obsolete @privileged @setuid";
+        SystemCallFilter = "~@cpu-emulation @debug @keyring @ipc @mount @obsolete @privileged @setuid @mincore";
       };
     };
 
diff --git a/nixos/modules/services/x11/hardware/libinput.nix b/nixos/modules/services/x11/hardware/libinput.nix
index e2fb7d0918e36..efdb7c61dfaeb 100644
--- a/nixos/modules/services/x11/hardware/libinput.nix
+++ b/nixos/modules/services/x11/hardware/libinput.nix
@@ -13,7 +13,7 @@ let cfg = config.services.xserver.libinput;
         example = "/dev/input/event0";
         description =
           ''
-            Path for ${deviceType} device.  Set to null to apply to any
+            Path for ${deviceType} device.  Set to <literal>null</literal> to apply to any
             auto-detected ${deviceType}.
           '';
       };
@@ -24,8 +24,8 @@ let cfg = config.services.xserver.libinput;
         example = "flat";
         description =
           ''
-            Sets  the pointer acceleration profile to the given profile.
-            Permitted values are adaptive, flat.
+            Sets the pointer acceleration profile to the given profile.
+            Permitted values are <literal>adaptive</literal>, <literal>flat</literal>.
             Not all devices support this option or all profiles.
             If a profile is unsupported, the default profile for this is used.
             <literal>flat</literal>: Pointer motion is accelerated by a constant
@@ -38,12 +38,14 @@ let cfg = config.services.xserver.libinput;
       accelSpeed = mkOption {
         type = types.nullOr types.str;
         default = null;
+        example = "-0.5";
         description = "Cursor acceleration (how fast speed increases from minSpeed to maxSpeed).";
       };
 
       buttonMapping = mkOption {
         type = types.nullOr types.str;
         default = null;
+        example = "1 6 3 4 5 0 7";
         description =
           ''
             Sets the logical button mapping for this device, see XSetPointerMapping(3). The string  must
@@ -58,9 +60,10 @@ let cfg = config.services.xserver.libinput;
       calibrationMatrix = mkOption {
         type = types.nullOr types.str;
         default = null;
+        example = "0.5 0 0 0 0.8 0.1 0 0 1";
         description =
           ''
-            A  string  of  9 space-separated floating point numbers.  Sets the calibration matrix to the
+            A string of 9 space-separated floating point numbers. Sets the calibration matrix to the
             3x3 matrix where the first row is (abc), the second row is (def) and the third row is (ghi).
           '';
       };
@@ -68,6 +71,7 @@ let cfg = config.services.xserver.libinput;
       clickMethod = mkOption {
         type = types.nullOr (types.enum [ "none" "buttonareas" "clickfinger" ]);
         default = null;
+        example = "buttonareas";
         description =
           ''
             Enables a click method. Permitted values are <literal>none</literal>,
@@ -166,8 +170,9 @@ let cfg = config.services.xserver.libinput;
       transformationMatrix = mkOption {
         type = types.nullOr types.str;
         default = null;
+        example = "0.5 0 0 0 0.8 0.1 0 0 1";
         description = ''
-          A  string  of  9 space-separated floating point numbers.  Sets the transformation matrix to
+          A string of 9 space-separated floating point numbers. Sets the transformation matrix to
           the 3x3 matrix where the first row is (abc), the second row is (def) and the third row is (ghi).
         '';
       };
diff --git a/nixos/modules/system/boot/networkd.nix b/nixos/modules/system/boot/networkd.nix
index 662dfe2db9895..2e17bdf6bb659 100644
--- a/nixos/modules/system/boot/networkd.nix
+++ b/nixos/modules/system/boot/networkd.nix
@@ -131,6 +131,7 @@ let
           "fou"
           "xfrm"
           "ifb"
+          "batadv"
         ])
         (assertByteFormat "MTUBytes")
         (assertMacAddress "MACAddress")
@@ -381,6 +382,29 @@ let
         (assertInt "Table")
         (assertMinimum "Table" 0)
       ];
+
+      sectionBatmanAdvanced = checkUnitConfig "BatmanAdvanced" [
+        (assertOnlyFields [
+          "GatewayMode"
+          "Aggregation"
+          "BridgeLoopAvoidance"
+          "DistributedArpTable"
+          "Fragmentation"
+          "HopPenalty"
+          "OriginatorIntervalSec"
+          "GatewayBandwithDown"
+          "GatewayBandwithUp"
+          "RoutingAlgorithm"
+        ])
+        (assertValueOneOf "GatewayMode" ["off" "client" "server"])
+        (assertValueOneOf "Aggregation" boolValues)
+        (assertValueOneOf "BridgeLoopAvoidance" boolValues)
+        (assertValueOneOf "DistributedArpTable" boolValues)
+        (assertValueOneOf "Fragmentation" boolValues)
+        (assertInt "HopPenalty")
+        (assertRange "HopPenalty" 0 255)
+        (assertValueOneOf "RoutingAlgorithm" ["batman-v" "batman-iv"])
+      ];
     };
 
     network = {
@@ -473,6 +497,7 @@ let
           "IgnoreCarrierLoss"
           "Xfrm"
           "KeepConfiguration"
+          "BatmanAdvanced"
         ])
         # Note: For DHCP the values both, none, v4, v6 are deprecated
         (assertValueOneOf "DHCP" ["yes" "no" "ipv4" "ipv6"])
@@ -1056,6 +1081,21 @@ let
       '';
     };
 
+    batmanAdvancedConfig = mkOption {
+      default = {};
+      example = {
+        GatewayMode = "server";
+        RoutingAlgorithm = "batman-v";
+      };
+      type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionBatmanAdvanced;
+      description = ''
+        Each attribute in this set specifies an option in the
+        <literal>[BatmanAdvanced]</literal> section of the unit. See
+        <citerefentry><refentrytitle>systemd.netdev</refentrytitle>
+        <manvolnum>5</manvolnum></citerefentry> for details.
+      '';
+    };
+
   };
 
   addressOptions = {
@@ -1507,6 +1547,10 @@ let
           [VRF]
           ${attrsToSection def.vrfConfig}
         ''
+        + optionalString (def.batmanAdvancedConfig != { }) ''
+          [BatmanAdvanced]
+          ${attrsToSection def.batmanAdvancedConfig}
+        ''
         + def.extraConfig;
     };
 
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index 985dbd3b6767b..a74792d3d2eb0 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -228,9 +228,10 @@ in
   kubernetes = handleTestOn ["x86_64-linux"] ./kubernetes {};
   latestKernel.login = handleTest ./login.nix { latestKernel = true; };
   leaps = handleTest ./leaps.nix {};
+  libinput = handleTest ./libinput.nix {};
   libreddit = handleTest ./libreddit.nix {};
-  lidarr = handleTest ./lidarr.nix {};
   libreswan = handleTest ./libreswan.nix {};
+  lidarr = handleTest ./lidarr.nix {};
   lightdm = handleTest ./lightdm.nix {};
   limesurvey = handleTest ./limesurvey.nix {};
   litestream = handleTest ./litestream.nix {};
diff --git a/nixos/tests/libinput.nix b/nixos/tests/libinput.nix
new file mode 100644
index 0000000000000..2f84aaadcd0be
--- /dev/null
+++ b/nixos/tests/libinput.nix
@@ -0,0 +1,38 @@
+import ./make-test-python.nix ({ ... }:
+
+{
+  name = "libinput";
+
+  machine = { ... }:
+    {
+      imports = [
+        ./common/x11.nix
+        ./common/user-account.nix
+      ];
+
+      test-support.displayManager.auto.user = "alice";
+
+      services.xserver.libinput = {
+        enable = true;
+        mouse = {
+          naturalScrolling = true;
+          leftHanded = true;
+          middleEmulation = false;
+          horizontalScrolling = false;
+        };
+      };
+    };
+
+  testScript = ''
+    def expect_xserver_option(option, value):
+        machine.succeed(f"""cat /var/log/X.0.log | grep -F 'Option "{option}" "{value}"'""")
+
+    machine.start()
+    machine.wait_for_x()
+    machine.succeed("""cat /var/log/X.0.log | grep -F "Using input driver 'libinput'" """)
+    expect_xserver_option("NaturalScrolling", "on")
+    expect_xserver_option("LeftHanded", "on")
+    expect_xserver_option("MiddleEmulation", "off")
+    expect_xserver_option("HorizontalScrolling", "off")
+  '';
+})
diff --git a/pkgs/applications/audio/librespot/default.nix b/pkgs/applications/audio/librespot/default.nix
index 7b7d811f57313..64d59516f87f1 100644
--- a/pkgs/applications/audio/librespot/default.nix
+++ b/pkgs/applications/audio/librespot/default.nix
@@ -15,24 +15,18 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "1sal85gsbnrabxi39298w9njdc08csnwl40akd6k9fsc0fmpn1b0";
 
-  cargoBuildFlags = with lib; [
-    "--no-default-features"
-    "--features"
-    (concatStringsSep "," (filter (x: x != "") [
-      (optionalString withRodio "rodio-backend")
-      (optionalString withALSA "alsa-backend")
-      (optionalString withPulseAudio "pulseaudio-backend")
-      (optionalString withPortAudio "portaudio-backend")
-
-    ]))
-  ];
-
   nativeBuildInputs = [ pkg-config ];
 
   buildInputs = [ openssl ] ++ lib.optional withALSA alsa-lib
     ++ lib.optional withPulseAudio libpulseaudio
     ++ lib.optional withPortAudio portaudio;
 
+  buildNoDefaultFeatures = true;
+  buildFeatures = lib.optional withRodio "rodio-backend"
+    ++ lib.optional withALSA "alsa-backend"
+    ++ lib.optional withPulseAudio "pulseaudio-backend"
+    ++ lib.optional withPortAudio "portaudio-backend";
+
   doCheck = false;
 
   meta = with lib; {
diff --git a/pkgs/applications/audio/mp3blaster/default.nix b/pkgs/applications/audio/mp3blaster/default.nix
index d7dd5f102dbd8..0d65fe813ec19 100644
--- a/pkgs/applications/audio/mp3blaster/default.nix
+++ b/pkgs/applications/audio/mp3blaster/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, ncurses, libvorbis, SDL }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, ncurses, libvorbis, SDL }:
 
 stdenv.mkDerivation rec {
   pname = "mp3blaster";
@@ -11,6 +11,16 @@ stdenv.mkDerivation rec {
     sha256 = "0pzwml3yhysn8vyffw9q9p9rs8gixqkmg4n715vm23ib6wxbliqs";
   };
 
+  patches = [
+    # Fix pending upstream inclusion for ncurses-6.3 support:
+    #  https://github.com/stragulus/mp3blaster/pull/8
+    (fetchpatch {
+      name = "ncurses-6.3.patch";
+      url = "https://github.com/stragulus/mp3blaster/commit/62168cba5eaba6ffe56943552837cf033cfa96ed.patch";
+      sha256 = "088l27kl1l58lwxfnw5x2n64sdjy925ycphni3icwag7zvpj0xz1";
+    })
+  ];
+
   buildInputs = [
     ncurses
     libvorbis
diff --git a/pkgs/applications/audio/spotifyd/default.nix b/pkgs/applications/audio/spotifyd/default.nix
index e9de6cb3cf783..dacf91e562290 100644
--- a/pkgs/applications/audio/spotifyd/default.nix
+++ b/pkgs/applications/audio/spotifyd/default.nix
@@ -20,12 +20,6 @@ rustPackages.rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "07dxfc0csrnfl01p9vdrqvca9f574svlf37dk3dz8p6q08ki0n1z";
 
-  cargoBuildFlags = [
-    "--no-default-features"
-    "--features"
-    "${lib.optionalString withALSA "alsa_backend,"}${lib.optionalString withPulseAudio "pulseaudio_backend,"}${lib.optionalString withPortAudio "portaudio_backend,"}${lib.optionalString withMpris "dbus_mpris,"}${lib.optionalString withKeyring "dbus_keyring,"}"
-  ];
-
   nativeBuildInputs = [ pkg-config ];
 
   buildInputs = [ openssl ]
@@ -34,6 +28,13 @@ rustPackages.rustPlatform.buildRustPackage rec {
     ++ lib.optional withPortAudio portaudio
     ++ lib.optional (withMpris || withKeyring) dbus;
 
+  buildNoDefaultFeatures = true;
+  buildFeatures = lib.optional withALSA "alsa_backend"
+    ++ lib.optional withPulseAudio "pulseaudio_backend"
+    ++ lib.optional withPortAudio "portaudio_backend"
+    ++ lib.optional withMpris "dbus_mpris"
+    ++ lib.optional withKeyring "dbus_keyring";
+
   doCheck = false;
 
   meta = with lib; {
diff --git a/pkgs/applications/blockchains/alfis/default.nix b/pkgs/applications/blockchains/alfis/default.nix
index 0738661c05968..e1fd262eb7727 100644
--- a/pkgs/applications/blockchains/alfis/default.nix
+++ b/pkgs/applications/blockchains/alfis/default.nix
@@ -14,12 +14,6 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "1n7kb1lyghpkgdgd58pw8ldvfps30rnv5niwx35pkdg74h59hqgj";
 
-  cargoBuildFlags = [ "--no-default-features" ]
-    ++ lib.optional withGui "--features webgui";
-
-  cargoTestFlags = [ "--no-default-features" ]
-    ++ lib.optional withGui "--features webgui";
-
   checkFlags = [
     # these want internet access, disable them
     "--skip=dns::client::tests::test_tcp_client"
@@ -30,6 +24,9 @@ rustPlatform.buildRustPackage rec {
   buildInputs = lib.optional (withGui && stdenv.isLinux) webkitgtk
     ++ lib.optionals (withGui && stdenv.isDarwin) [ Cocoa WebKit ];
 
+  buildNoDefaultFeatures = true;
+  buildFeatures = lib.optional withGui "webgui";
+
   postInstall = lib.optionalString (withGui && stdenv.isLinux) ''
     wrapProgram $out/bin/alfis \
       --prefix PATH : ${lib.makeBinPath [ zenity ]}
diff --git a/pkgs/applications/blockchains/chia/default.nix b/pkgs/applications/blockchains/chia/default.nix
index a62d7f95d6067..207b42e5584ee 100644
--- a/pkgs/applications/blockchains/chia/default.nix
+++ b/pkgs/applications/blockchains/chia/default.nix
@@ -6,14 +6,14 @@
 
 let chia = python3Packages.buildPythonApplication rec {
   pname = "chia";
-  version = "1.2.10";
+  version = "1.2.11";
 
   src = fetchFromGitHub {
     owner = "Chia-Network";
     repo = "chia-blockchain";
     rev = version;
     fetchSubmodules = true;
-    sha256 = "sha256-TzSBGjgaE0IWaqJcCIoO/u+gDh17NtAqhE8ldbbjNIE=";
+    sha256 = "sha256-hRpZce8ydEsyq7htNfzlRSKPwMAOUurC3uiQpX6WiB8=";
   };
 
   postPatch = ''
@@ -46,7 +46,7 @@ let chia = python3Packages.buildPythonApplication rec {
     colorlog
     concurrent-log-handler
     cryptography
-    dnspython
+    dnspythonchia
     fasteners
     keyrings-cryptfile
     pyyaml
diff --git a/pkgs/applications/blockchains/clightning/default.nix b/pkgs/applications/blockchains/clightning/default.nix
index 04f3c1fcbc841..df7eace3284d8 100644
--- a/pkgs/applications/blockchains/clightning/default.nix
+++ b/pkgs/applications/blockchains/clightning/default.nix
@@ -39,11 +39,9 @@ stdenv.mkDerivation rec {
       devtools/sql-rewrite.py
   '';
 
-  configurePhase = ''
-    ./configure --prefix=$out --disable-developer --disable-valgrind
-  '';
+  configureFlags = [ "--disable-developer" "--disable-valgrind" ];
 
-  makeFlags = [ "prefix=$(out) VERSION=v${version}" ];
+  makeFlags = [ "VERSION=v${version}" ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/blockchains/ledger-live-desktop/default.nix b/pkgs/applications/blockchains/ledger-live-desktop/default.nix
index ac24baa934a4b..eb44dc219b667 100644
--- a/pkgs/applications/blockchains/ledger-live-desktop/default.nix
+++ b/pkgs/applications/blockchains/ledger-live-desktop/default.nix
@@ -2,12 +2,12 @@
 
 let
   pname = "ledger-live-desktop";
-  version = "2.35.0";
+  version = "2.35.1";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
-    hash = "sha256-o2XGBTqyHqQ/yq54B0GBFEk35Zxt2ZWGZCTjbEbKqiw=";
+    hash = "sha256:0z60c4sjq63r5rs95rbv7afliia05l1p9bgfd5zv7i51qxgzfs4a";
   };
 
   appimageContents = appimageTools.extractType2 {
diff --git a/pkgs/applications/blockchains/openethereum/default.nix b/pkgs/applications/blockchains/openethereum/default.nix
index 39f35f211f903..79ab37c7adb5d 100644
--- a/pkgs/applications/blockchains/openethereum/default.nix
+++ b/pkgs/applications/blockchains/openethereum/default.nix
@@ -29,7 +29,7 @@ rustPlatform.buildRustPackage rec {
     ++ lib.optionals stdenv.isLinux [ systemd ]
     ++ lib.optionals stdenv.isDarwin [ darwin.Security ];
 
-  cargoBuildFlags = [ "--features final" ];
+  buildFeatures = [ "final" ];
 
   # Fix tests by preventing them from writing to /homeless-shelter.
   preCheck = ''
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index 600902f75b107..5a94abf2f7dd2 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -13,8 +13,8 @@ let
     sha256Hash = "10gpwb130bzp6a9g958cjqcb2gsm0vdgm08nm5xy45xdh54nxjfg";
   };
   betaVersion = {
-    version = "2021.1.1.15"; # "Android Studio Bumblebee (2021.1.1) Beta 2"
-    sha256Hash = "sha256-J+Jw9F8pEE0SMWka//jADOiQ+GSOeRf5GBfp0RDtwqA=";
+    version = "2021.1.1.16"; # "Android Studio Bumblebee (2021.1.1) Beta 3"
+    sha256Hash = "pgmBWzq/5RHJTc41kzB43tbsjvrWx9BJ7UKsR8AO0V4=";
   };
   latestVersion = { # canary & dev
     version = "2021.2.1.3"; # "Android Studio Chipmunk (2021.2.1) Canary 3"
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 118065eb31ca2..9467f6c7aba78 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
+++ b/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
@@ -1968,38 +1968,6 @@
   }
  },
  {
-  "ename": "agda2-mode",
-  "commit": "714e0fe062981d27e3f1d48b2fd759d60bbb4d8c",
-  "sha256": "0vbi64fri02ziy68dvpq1y946w4n4mla8gh1cmldqq8x24l8ssdg",
-  "fetcher": "github",
-  "repo": "agda/agda",
-  "unstable": {
-   "version": [
-    20210903,
-    1114
-   ],
-   "deps": [
-    "annotation",
-    "eri"
-   ],
-   "commit": "475d9add939bf86936a1d5b41c3260f0000bd3c8",
-   "sha256": "0f7849s67gzzrnkb57hm2p6hbkrd50s02m9l5xfqg286dinhqp0v"
-  },
-  "stable": {
-   "version": [
-    2,
-    6,
-    2
-   ],
-   "deps": [
-    "annotation",
-    "eri"
-   ],
-   "commit": "246a229faea2ef2fa53caf491ff8a2d72dd7510c",
-   "sha256": "1ccmryw6vs8d87d5zmjl0kr2kvyd1zxl73344fa7yzqgg2kw1da6"
-  }
- },
- {
   "ename": "aggressive-fill-paragraph",
   "commit": "982f5936f2d83222263df2886ca0b629076366bb",
   "sha256": "1df4bk3ks09805y67af6z1gpfln0lz773jzbbckfl0fy3yli0dja",
@@ -2472,11 +2440,11 @@
   "repo": "domtronn/all-the-icons.el",
   "unstable": {
    "version": [
-    20211021,
-    1244
+    20211108,
+    7
    ],
-   "commit": "b7002b5aa152b56a2a852c3aae2f2e1a0e963277",
-   "sha256": "0srh30xciwb6dsw5rixz5ikc1z7jx3987zd4gnc1b7aj01826n8k"
+   "commit": "483dba65e897071c156cefec937edcf51aa333db",
+   "sha256": "01v0pyfz49a74d7vqg8nhq9jpbyqbywcpk3ajc59d9fwg7wmzjvq"
   },
   "stable": {
    "version": [
@@ -2999,8 +2967,8 @@
     20211030,
     1358
    ],
-   "commit": "2a4319971f42c754dd43806b66c13317741d6939",
-   "sha256": "1965wfdaqr7p3b0yc287xdb367xib491ljp7yazn3dxxy7ayd25h"
+   "commit": "9f814c5e8bcabb5f65563b057ae9ad8458b90408",
+   "sha256": "0jy2pxcsj06klrc02q9nsm626nj229zg5y9gn7xyixszjjbvmlyj"
   }
  },
  {
@@ -3281,8 +3249,8 @@
     20200914,
     644
    ],
-   "commit": "475d9add939bf86936a1d5b41c3260f0000bd3c8",
-   "sha256": "0f7849s67gzzrnkb57hm2p6hbkrd50s02m9l5xfqg286dinhqp0v"
+   "commit": "6cb77e1a216098d6a4e273f6750dbf4445953272",
+   "sha256": "1rj04f9q7fn88ifznqqi3p7anv0m827mz2w2bwb4s09kdn03nf6p"
   },
   "stable": {
    "version": [
@@ -3329,14 +3297,14 @@
   "repo": "rejeep/ansi.el",
   "unstable": {
    "version": [
-    20211023,
-    529
+    20211104,
+    1420
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "6e5455af7fa5d7b21bdb383e36190cb9d996ec35",
-   "sha256": "026bbdqnwcivgkhff6wp71vwi0wk2kn85idad7jmdsabdgzl9hmr"
+   "commit": "2367fba7b3b2340364a30cd6de7f3eb6bb9898a3",
+   "sha256": "1n7h6l4icm6lks3zpvd83j1fzrnspw19rmz7c96vy7pdh1y4v3p3"
   },
   "stable": {
    "version": [
@@ -3597,8 +3565,8 @@
     20211023,
     1831
    ],
-   "commit": "8b326a38fa1bf3b9675b251c78eb9456245aeef9",
-   "sha256": "07qcvn607x3mmrp8mc3wkxczj1mkhd0lb8674qx84j0yl7idv1dm"
+   "commit": "c55c6468526100ba0da00bff05cfb17cdf8839cf",
+   "sha256": "1wmq1fwzfj10c445gyh7silrzi3d911fc8knc967g7hspw4kna3w"
   },
   "stable": {
    "version": [
@@ -3633,11 +3601,11 @@
   "repo": "raxod502/apheleia",
   "unstable": {
    "version": [
-    20211031,
-    1757
+    20211116,
+    132
    ],
-   "commit": "1b7f2cf9969e7dfe610780b38b6f3dd834d1c01d",
-   "sha256": "1gy4pczi6lwvcjfxng8kf6nd4czpi261k4p46dgny686hr70mzc9"
+   "commit": "8e0605cc29732ec889b7318dd57921bf3f5ba06c",
+   "sha256": "1ffhnpz2zv4s4wl4a31c9xz9srx6h50q0ya7lacmj15vw9ffwd4z"
   },
   "stable": {
    "version": [
@@ -3794,11 +3762,11 @@
   "repo": "waymondo/apropospriate-theme",
   "unstable": {
    "version": [
-    20211103,
-    1600
+    20211113,
+    1913
    ],
-   "commit": "008cd61d8b42367316b147eef2a81636f01faeee",
-   "sha256": "04k12kb19xzw3dm4ydiy1m3qfpv0smvr33847lh4bhkiv1wyilp8"
+   "commit": "b934a5a17cac02137c1bfe81935638ab85dbaec9",
+   "sha256": "1wbvxvv7fydv9p148xxyivsvjh000z4ndfwfpbir4hv0l83xghrw"
   },
   "stable": {
    "version": [
@@ -3940,14 +3908,14 @@
   "repo": "stardiviner/arduino-mode",
   "unstable": {
    "version": [
-    20210907,
-    1455
+    20211112,
+    1223
    ],
    "deps": [
     "spinner"
    ],
-   "commit": "6d2d1122924370ffa17ce337e3b02ecab79d861b",
-   "sha256": "039h4hkl7n9ypdwi8zqs10fcbvwh5c2qmlz86x66xlp0wamg827r"
+   "commit": "3bc47bd7f75a7ccae409236dab43208ce8d41d51",
+   "sha256": "1jsifn9gfpb2rwhz9fr6r4qsmyydfd6rmz87iy7884nrnxkmdsci"
   }
  },
  {
@@ -5055,20 +5023,20 @@
  },
  {
   "ename": "auto-highlight-symbol",
-  "commit": "96293eb591e5f436efe8e9dc131d29ede292d2c3",
-  "sha256": "0n8acv58jkbqj00pi7d4g3nryvgvy52z0xg874jfh73d2f17dcdl",
+  "commit": "be4b46eddfa1dd39381913d1d56e9ba1d1a1f9ad",
+  "sha256": "1bkf4n0vg2ramz8n6qr44swdyp93d14qvm1gidpmgpaffdxsf8rl",
   "fetcher": "github",
-  "repo": "jcs-elpa/auto-highlight-symbol",
+  "repo": "elp-revive/auto-highlight-symbol",
   "unstable": {
    "version": [
-    20211006,
-    603
+    20211116,
+    1242
    ],
    "deps": [
     "ht"
    ],
-   "commit": "1a54a61fda6206c5e0fa843d16635133241292ba",
-   "sha256": "0b90i17rvdszdbmm4snzx6z5xgj705ahy0b0brfqs0b9m9s1iy13"
+   "commit": "0a16afcb10d8b3cf0e21002a6dff74f3b417c7c5",
+   "sha256": "13z0p702qxnz2xfrdw3himzgkwl3sqhcskqw8awmz67fqglw71zf"
   },
   "stable": {
    "version": [
@@ -5151,14 +5119,14 @@
   "repo": "rranelli/auto-package-update.el",
   "unstable": {
    "version": [
-    20211025,
-    1352
+    20211108,
+    2025
    ],
    "deps": [
     "dash"
    ],
-   "commit": "610576ed3adb6e732bc9288d1f9ec18e2ddef345",
-   "sha256": "0rgdrdsffr4d6lqpxfq8j8r35q1z38ba1985nnnci13lf53ibnvj"
+   "commit": "ad95435fefe2bb501d1d787b08272f9c1b7df488",
+   "sha256": "00456kxd1zb5lcwkm211mhdgkl0b01pp4fbkl1ryvdnhddn83ipv"
   },
   "stable": {
    "version": [
@@ -5630,8 +5598,8 @@
     "avy",
     "embark"
    ],
-   "commit": "0b524bda8d9c5f9e26898e383e98a4ec689fa144",
-   "sha256": "1jgl9n6js71sx4j1wg2nl5aaqmsq2hzna0qawz813637kaylrdxn"
+   "commit": "edfd0a842a75ad25115f95f56b0c8a9351d3e248",
+   "sha256": "1mq84aiak2fwxbxacf9wzk223dri6z918vqdgs3vy0amvn1ys2ji"
   },
   "stable": {
    "version": [
@@ -5841,11 +5809,11 @@
   "url": "https://bitbucket.org/pdo/axiom-environment",
   "unstable": {
    "version": [
-    20210714,
-    1912
+    20211116,
+    2200
    ],
-   "commit": "7d72e6319b98b334f74b78f3d4151e92fb7dcbad",
-   "sha256": "1hwcndb1x3i51l0kvzk4mj6sil8h10mxmazic9zvwjhia9qz9hz3"
+   "commit": "3266c5b2e4865337da86043b53a4e6609dbc8308",
+   "sha256": "11k53vvw5df66f54mh3zkghspmi7zsgls3mlkfvl19hz2z1pyhwq"
   }
  },
  {
@@ -6842,11 +6810,11 @@
   "repo": "gilbertw1/better-jumper",
   "unstable": {
    "version": [
-    20210713,
-    1426
+    20211108,
+    2015
    ],
-   "commit": "7f328a886ba4dd01993d269eee01c8ee3d0ddf52",
-   "sha256": "1xfap2db1ncfdnv8d3vdn8gxgkzamz8vz9jsyn0jiminhy0hb2na"
+   "commit": "3148a17b5920bba8ec4f81b717b99acde5fd5b74",
+   "sha256": "097xgcmp6a22hqyyfxqyxiq8p4kwq0gql4gcbmjhm9dd8qpf3s8b"
   }
  },
  {
@@ -7543,26 +7511,32 @@
  },
  {
   "ename": "blamer",
-  "commit": "4424e068324a241450fb4e8b6cccb697fdb2f187",
-  "sha256": "0fis6f2gpzj88mdf24fbply6a63i753bmlxfwlglbxx5k457wkkj",
+  "commit": "412fea9e0564929310918096bae95636ba885a7c",
+  "sha256": "1p7g9c0621nsj2vn6janywghhllv5j8i4lpqv06vxmqy6pydl0xw",
   "fetcher": "github",
-  "repo": "artawower/blamer.el",
+  "repo": "Artawower/blamer.el",
   "unstable": {
    "version": [
-    20211102,
-    2116
+    20211114,
+    2013
+   ],
+   "deps": [
+    "a"
    ],
-   "commit": "9979fbe64cdb7aaa8548a3ab430afbe27d00323f",
-   "sha256": "02anikbwihgficgnvrdhmizf1l5syf4bvzhwfq5ips6b6ldsfxis"
+   "commit": "8855eeb6ef6aa323361498714d06365e0db83488",
+   "sha256": "04wy05pa9xzvrk33xnfvfk8hy127q7nlgn9kbcd4mm7ql4ywf8gp"
   },
   "stable": {
    "version": [
     0,
-    2,
-    1
+    3,
+    2
+   ],
+   "deps": [
+    "a"
    ],
-   "commit": "1117a34dc09ae6b65eca88e2b6199d4b90e52af7",
-   "sha256": "114cbb32y0bd39yajs2m0pbm8fwdx3cfnf0qs1sf343qyzzkb319"
+   "commit": "8855eeb6ef6aa323361498714d06365e0db83488",
+   "sha256": "04wy05pa9xzvrk33xnfvfk8hy127q7nlgn9kbcd4mm7ql4ywf8gp"
   }
  },
  {
@@ -8048,15 +8022,15 @@
   "repo": "emacscollective/borg",
   "unstable": {
    "version": [
-    20211001,
-    2148
+    20211111,
+    2352
    ],
    "deps": [
     "epkg",
     "magit"
    ],
-   "commit": "069859e8857d70ca0cc755466ffdd35c18780607",
-   "sha256": "0ca5gmj437zxmzcvxfnbwpsdxblss9fv3689v9q6dqpy0p9vz0wq"
+   "commit": "2ffcfd4481710e5b6d45a07a99da2561fe1c9d3e",
+   "sha256": "1nfrvln6s09krabzgsw1hqxs5rp95137dcaqk0pfj9y320awa1gb"
   },
   "stable": {
    "version": [
@@ -8273,8 +8247,8 @@
     20200321,
     2126
    ],
-   "commit": "3b34032bdde6a37b4566c45ce93cb38da21d4965",
-   "sha256": "16p4404mxqgl1zqdalnq3bvbhwv11wgfl42871lxv3nndcsd30gr"
+   "commit": "71c555c2e254629c365e6fc44c2fc4d5b6d0ae8b",
+   "sha256": "03f0ipzmmpv64kk9dim8nihai3mz2ys7v2qvhywpd3a52nnmlqv4"
   },
   "stable": {
    "version": [
@@ -8397,11 +8371,11 @@
   "repo": "topikettunen/brutal-emacs",
   "unstable": {
    "version": [
-    20211018,
-    2212
+    20211112,
+    1713
    ],
-   "commit": "5ec10f0614978c376df95ed9da05f2227cd7cd62",
-   "sha256": "1gz69g9kz90yriwlyarfd632k19q65sb0r4as25ykq8m67cr5cm9"
+   "commit": "f9bba56199e861bc405703286ac3378bda496898",
+   "sha256": "12j7ad1fs93a9d5s9ki99321lbky1kpsz0b84xj0yld08zvhwixb"
   }
  },
  {
@@ -8663,8 +8637,8 @@
     "ht",
     "s"
    ],
-   "commit": "7336ae668c0b26e3a53bcd36577ea84a8090ec21",
-   "sha256": "1gzgp7w4j8dlig4psqc9g4ns69dd70hj83347al0jqcnrhw0ysy3"
+   "commit": "a2bc0252eae7a787219627512d5d54984b97e1a2",
+   "sha256": "0scqddzijg02dggyj7v59f30irp9hw68sc075wa0i039f4ab8kh4"
   },
   "stable": {
    "version": [
@@ -9843,8 +9817,8 @@
     20210707,
     2310
    ],
-   "commit": "a3bb240667686a007f3dd0649a093b7326e130cf",
-   "sha256": "03svmpz905nhpcgriq66sw4la2v58l2490h663yggf313zlplych"
+   "commit": "5ecc98425417732e7124460c7d938c0994958c1f",
+   "sha256": "10g0jap8rq0bbxqq61vvn2zklmhz94d883mr18gq1f926l3ni9z2"
   },
   "stable": {
    "version": [
@@ -10219,10 +10193,10 @@
  },
  {
   "ename": "ccls",
-  "commit": "be27a4022d58860917a659fce2b7d7791fbea4e2",
-  "sha256": "0kiv0n6pdpa75wjcimpwccwbjbhga4gjnphjrkpj4qz5qv42rbnm",
+  "commit": "5bd4c12f9c8ea96e29d684c4121ea4e10ba5e775",
+  "sha256": "1h0l6y4iky4ry36mfw6k8fddn0nyibcnhh6hhprjn7zmhyd32f5l",
   "fetcher": "github",
-  "repo": "MaskRay/emacs-ccls",
+  "repo": "emacs-lsp/emacs-ccls",
   "unstable": {
    "version": [
     20200820,
@@ -10532,8 +10506,8 @@
     20171115,
     2108
    ],
-   "commit": "1a3b84397c11d99cbeaadfccd7472ac914f715b2",
-   "sha256": "05xk1zmngk90vdskmj2ldlc14sk13g6adckch7g83nhdhw936x9h"
+   "commit": "be17316bf94dcfd0e725383041f5f059d85d8846",
+   "sha256": "0jf9ss3nj1v5qn02g9vhcsxp4rdrhx9s5ajd9md641av9p8c6rkm"
   },
   "stable": {
    "version": [
@@ -11323,8 +11297,8 @@
   "repo": "clojure-emacs/cider",
   "unstable": {
    "version": [
-    20211103,
-    2049
+    20211108,
+    621
    ],
    "deps": [
     "clojure-mode",
@@ -11335,8 +11309,8 @@
     "sesman",
     "spinner"
    ],
-   "commit": "7228402c093a7660a6bee6e4c1c69cce81703013",
-   "sha256": "174az297qq5x5x13ga99zvw7pn4n7aazplby348w79sih5flkl1z"
+   "commit": "a30d2e5ee2052dbc06e24c2494747ebd60f0cd03",
+   "sha256": "1dsx3f752hkj18b2bwyjnl37xfb4cqhh8mxl5gjp5dc9nk6i2ccv"
   },
   "stable": {
    "version": [
@@ -11605,15 +11579,28 @@
   "repo": "bdarcus/citar",
   "unstable": {
    "version": [
-    20211101,
-    1853
+    20211117,
+    312
+   ],
+   "deps": [
+    "org",
+    "parsebib",
+    "s"
+   ],
+   "commit": "26c83fb42e0daece49cc98bebca0e81ea7c0232b",
+   "sha256": "0ch6wja4s6mdcfhxkdjfx82k519wq41v4rirsggczpkrzx7j5ql3"
+  },
+  "stable": {
+   "version": [
+    0,
+    8
    ],
    "deps": [
     "bibtex-completion",
     "parsebib"
    ],
-   "commit": "e2e86bb9ad854548253322751f433b0b940fca1a",
-   "sha256": "1yfmk1calvzh44pzh3041lj5vrrgs67m6iq93v7knl59ghy2japw"
+   "commit": "2dcf0c450a80609294edcb89d55f352e763d0570",
+   "sha256": "1jrfcfr976c9nb2vpfrh6yhck5gm34wcjzbk0m6gq2xg3qfv2g6p"
   }
  },
  {
@@ -11624,8 +11611,8 @@
   "repo": "andras-simonyi/citeproc-el",
   "unstable": {
    "version": [
-    20211104,
-    751
+    20211111,
+    1008
    ],
    "deps": [
     "dash",
@@ -11636,8 +11623,8 @@
     "s",
     "string-inflection"
    ],
-   "commit": "e93b45fe125d2ed61c60136638b3836ec770f879",
-   "sha256": "176h3xs9jgxcgslp9vklzzsk5s02nf8zdljcjgnjkfxrjng26s8b"
+   "commit": "2857f9bb819d0d0a6e6ed91cc38b165e506bfc2e",
+   "sha256": "11qm0mg0spwmqrl8d4pwjp0byn5b2askjcbs1yl1rpmlki97hb6m"
   },
   "stable": {
    "version": [
@@ -12056,8 +12043,8 @@
   "repo": "clojure-emacs/clj-refactor.el",
   "unstable": {
    "version": [
-    20211031,
-    723
+    20211117,
+    1008
    ],
    "deps": [
     "cider",
@@ -12070,14 +12057,14 @@
     "seq",
     "yasnippet"
    ],
-   "commit": "9eab9469fe2a06275b7cac7e53eb48ceb5724f81",
-   "sha256": "0gg6pavih3nifcgdpafsl463f50klaf7mhmh9iz9sz45iyfz2q1i"
+   "commit": "af1bde5cb0ca5679927f70eb21e7a95a33791e51",
+   "sha256": "1a962xav2pzbdx2zfaf53hqj8a5nz1im1773b7b1d9s7vp4lc991"
   },
   "stable": {
    "version": [
     3,
-    0,
-    0
+    2,
+    2
    ],
    "deps": [
     "cider",
@@ -12090,8 +12077,8 @@
     "seq",
     "yasnippet"
    ],
-   "commit": "b1503962c90f1c88a4f32b8d32cf87c48437c158",
-   "sha256": "0i759k6qm752lmdsxrgp0bh3akl01as8k8q6x1a7cpdh6yddwajs"
+   "commit": "e0d83c845014a24c2604a08f9c9931c63ea809c4",
+   "sha256": "1iyivn7x5bcnp4g7k0k2b0jdcph84pbldlk83qqfzix6h4sp1k1f"
   }
  },
  {
@@ -12318,11 +12305,11 @@
   "repo": "clojure-emacs/clojure-mode",
   "unstable": {
    "version": [
-    20211028,
-    1217
+    20211114,
+    757
    ],
-   "commit": "feb03a603b2080b36492b538aeb2041bac4d129c",
-   "sha256": "1x2fqc003hkvk0gqqgzy0xnya1mx6mi864gicvf2fxbvvwl28vvh"
+   "commit": "08986ac32972830bb191496ea680fba1d6cd5fe2",
+   "sha256": "1y6zr7ijpyl1kf15108b5mkicf76ha2v8wq8lsk02xglgmjb7f5l"
   },
   "stable": {
    "version": [
@@ -12342,14 +12329,14 @@
   "repo": "clojure-emacs/clojure-mode",
   "unstable": {
    "version": [
-    20210322,
-    704
+    20211110,
+    1015
    ],
    "deps": [
     "clojure-mode"
    ],
-   "commit": "feb03a603b2080b36492b538aeb2041bac4d129c",
-   "sha256": "1x2fqc003hkvk0gqqgzy0xnya1mx6mi864gicvf2fxbvvwl28vvh"
+   "commit": "08986ac32972830bb191496ea680fba1d6cd5fe2",
+   "sha256": "1y6zr7ijpyl1kf15108b5mkicf76ha2v8wq8lsk02xglgmjb7f5l"
   },
   "stable": {
    "version": [
@@ -12651,8 +12638,8 @@
     20210104,
     1831
    ],
-   "commit": "909f435b9302f0cd02a73f34bc3316a8e1620bae",
-   "sha256": "16435f7clz33gl9j1l86ng5i4cgj7qgcv49335k39wjjzqdhqqa2"
+   "commit": "d2e10c4d8dd7dc32ae775a6382c5277308639271",
+   "sha256": "1jcw34vbfhs6mv4a9sl9gnqyf3g4fsnrcpdzkyx872c6awdg36dl"
   },
   "stable": {
    "version": [
@@ -12660,10 +12647,10 @@
     22,
     0,
     -1,
-    2
+    3
    ],
-   "commit": "28a033cc7de056d1a74857606397bb294ebe27ac",
-   "sha256": "18ir7q31l9jqshx3hixiaq9nvlfasxqrmr0a57q852xb0ad31gcj"
+   "commit": "fed67fa40d7b6e34ee7c8565694bd54af61aed73",
+   "sha256": "0ddnqjbkmj40119w071vhchprcljdm1k9n3aps5vsa6srdpxa0dh"
   }
  },
  {
@@ -12731,11 +12718,11 @@
   "repo": "tumashu/cnfonts",
   "unstable": {
    "version": [
-    20211102,
-    2232
+    20211112,
+    808
    ],
-   "commit": "46c9034f28cc559f8c93650baa1a64a42b06c535",
-   "sha256": "1dy6n1cdn05bdr4f1wk72gav5mnfbm23i6cp2vh6nd1nq5kkkchp"
+   "commit": "4dad44ed3619c40ba406bcf45d37fdec3ce0db8e",
+   "sha256": "037k5d4ikb3bqa1gqipzkx92ml8fajgalz0r375y7hlvasr2zvzx"
   },
   "stable": {
    "version": [
@@ -13604,11 +13591,11 @@
   "repo": "company-mode/company-mode",
   "unstable": {
    "version": [
-    20211024,
-    2305
+    20211112,
+    2354
    ],
-   "commit": "811beeade86669e20da35efed5b00de6a5e305ab",
-   "sha256": "0v5y92c328x3fn2z4hxiwv0qgjp85r4g28wp6b5cph8azfvzgnk9"
+   "commit": "eb9be0bff7c323c720198dcd539ee05fa2485cd3",
+   "sha256": "09xzxyk81rwpgc05g8w0nl36lax6x6z94hrnjivn72c7zdwq58i2"
   },
   "stable": {
    "version": [
@@ -13746,8 +13733,8 @@
     "axiom-environment",
     "company"
    ],
-   "commit": "7d72e6319b98b334f74b78f3d4151e92fb7dcbad",
-   "sha256": "1hwcndb1x3i51l0kvzk4mj6sil8h10mxmazic9zvwjhia9qz9hz3"
+   "commit": "3266c5b2e4865337da86043b53a4e6609dbc8308",
+   "sha256": "11k53vvw5df66f54mh3zkghspmi7zsgls3mlkfvl19hz2z1pyhwq"
   }
  },
  {
@@ -14172,16 +14159,16 @@
   "stable": {
    "version": [
     1,
-    2,
-    2
+    3,
+    0
    ],
    "deps": [
     "company",
     "ht",
     "s"
    ],
-   "commit": "ea577f13d0a47b6efbe2974a5a347a87d27c0c42",
-   "sha256": "1g6p5868qb2001ippdcnsscsm15d1fwl0iyilq7jk3ys68j30pr3"
+   "commit": "7067175ebf56c5110edf1475b03e2e242a00e66b",
+   "sha256": "1sfzj5qbpc1j1blg6rq5lmimgy1yfwyg7ixgp7psf53nq0cbq9jd"
   }
  },
  {
@@ -14922,15 +14909,15 @@
   "repo": "company-mode/company-quickhelp",
   "unstable": {
    "version": [
-    20210515,
-    2212
+    20211115,
+    1335
    ],
    "deps": [
     "company",
     "pos-tip"
    ],
-   "commit": "530b29380f0f95ae338cbe089693d786e6f53d86",
-   "sha256": "0w2xj9k50j96x81l767ah1m17pcjsbfk91mndm4w25p30kd1g8j4"
+   "commit": "3ca2708b4e5190205aca01d65fe1b391963a53f9",
+   "sha256": "120kvdrzbxs7idrqwz8rz59ic3ymq1b586l0qi27y7bdy2pg6njw"
   },
   "stable": {
    "version": [
@@ -15134,8 +15121,8 @@
     "company",
     "solidity-mode"
    ],
-   "commit": "9c77b390eab999e5e54dc5c1068f57201e6628bf",
-   "sha256": "0i6kjvd82bq3djh4makf4czdbmg3sb5q74wbdfhdyikx6kkzfj0m"
+   "commit": "bac439dbd2097664df45e9fac0ce57e23462c14c",
+   "sha256": "1vs64gwm6zn47fl4nvaizkwh8zwnqh764yqcmggyz4awsxsxg6ym"
   },
   "stable": {
    "version": [
@@ -15833,19 +15820,19 @@
   "repo": "minad/consult",
   "unstable": {
    "version": [
-    20211103,
-    1226
+    20211117,
+    855
    ],
-   "commit": "3b18b04524f0e963070ab6c61d4d3a3f10507d12",
-   "sha256": "07m3v8lg91ql0j0vicf59cavhyn0xva8qd83xxlngnsivqsa0h63"
+   "commit": "69bc425c59414ece0a49dfa8e3f2d9759a13748c",
+   "sha256": "066a3gf1hgzc4n7r06m1x3kyp98sabs8kf25dhlg9wgl2l6gccf0"
   },
   "stable": {
    "version": [
     0,
-    12
+    13
    ],
-   "commit": "ebb62563127a4b9442148372f897efb7baef61d2",
-   "sha256": "1bzlqn7k5akhyl763q29853yh5s8rmk6y1ncmy3am940wfypxjic"
+   "commit": "c2fed383c9c555ed017200a22efad0a9734725b0",
+   "sha256": "0ik5j4i4vb9hz629cjwnzhimskpv0fc8wca37z4ak0q1d898ayph"
   }
  },
  {
@@ -15989,16 +15976,16 @@
   "repo": "gagbo/consult-lsp",
   "unstable": {
    "version": [
-    20211103,
-    1200
+    20211104,
+    1506
    ],
    "deps": [
     "consult",
     "f",
     "lsp-mode"
    ],
-   "commit": "91deff6bcaee55ee4e33a4a9fe943d8de305e26c",
-   "sha256": "10nwwkdx537xr9d5zi5drbw4whrfha27kq0xd1jkvvdsqiaydxrl"
+   "commit": "aaa9a31bc82259d743186c53d8b01f043c6fec13",
+   "sha256": "1d4l930gwfp2syxkm129lxbvrwcqv3rz2qzb3m18v6aklk0si2db"
   },
   "stable": {
    "version": [
@@ -16022,15 +16009,15 @@
   "url": "https://codeberg.org/jao/consult-notmuch.git",
   "unstable": {
    "version": [
-    20210909,
-    101
+    20211114,
+    557
    ],
    "deps": [
     "consult",
     "notmuch"
    ],
-   "commit": "015642e88a48b1e3b4791a5badd8dbdfe6a6037e",
-   "sha256": "1nbyd21n3dfdikr2dv7bcb2rg2sar22dmirrlkd5bz0qniaqim4n"
+   "commit": "5e62b4da80c5361a656f459fc2fd3ec65d5d9bf1",
+   "sha256": "1krap35x6r3gfh0hk9vq7z471m21j2dyljaf5ppx85yhfanhpxp2"
   },
   "stable": {
    "version": [
@@ -16072,14 +16059,25 @@
   "url": "https://codeberg.org/jao/consult-recoll.git",
   "unstable": {
    "version": [
-    20210807,
-    1613
+    20211113,
+    1958
+   ],
+   "deps": [
+    "consult"
+   ],
+   "commit": "42dea1d40fedf7894e2515b4566a783b7b85486a",
+   "sha256": "0nzch4x58vgvmcjr6p622lkzms2gvjfdgpvi6bbj5qdzkln5q23a"
+  },
+  "stable": {
+   "version": [
+    0,
+    3
    ],
    "deps": [
     "consult"
    ],
-   "commit": "fe7a09b99d1497a30e11a2f86b6415adde00788a",
-   "sha256": "1bqmr686ncn46fbbq000mpbqrhf76sc9npbyg85053rhnwjdkk84"
+   "commit": "1b21fa157ba40fcfeecd0a10c5c82ecfb87aee53",
+   "sha256": "0bfvxzvyppkqfdj4cm5haqgkd72wrh5l7x8ldnpycapqyjpv9pip"
   }
  },
  {
@@ -16090,15 +16088,15 @@
   "url": "https://codeberg.org/jao/espotify",
   "unstable": {
    "version": [
-    20210620,
-    1953
+    20211114,
+    2258
    ],
    "deps": [
     "consult",
     "espotify"
    ],
-   "commit": "5bf63dacc5df8a74860e80dabd16afce68a24a36",
-   "sha256": "1vxg86wv6f96bva0d1xxhisk525chwhdl4nq77xhriflq65mcmi3"
+   "commit": "5c1dcf0182135cda4191d4ba206fe2f265100293",
+   "sha256": "06wj2pixhjgqddl9g2wkv7cq9gz9yjb46cb1jrlbya3rdjyfb6h5"
   }
  },
  {
@@ -16582,15 +16580,15 @@
   "repo": "hlissner/emacs-counsel-css",
   "unstable": {
    "version": [
-    20210310,
-    452
+    20211115,
+    1755
    ],
    "deps": [
     "cl-lib",
     "counsel"
    ],
-   "commit": "f7647b4195b9b4e97f1ee1acede6054ae38df630",
-   "sha256": "06xvyf9cnyq9zlp7rkq0a0h85yk967icifhg1pfhsz17za97yg94"
+   "commit": "8e9c0515fc952452eee786d8ebb43d48ea86c9f8",
+   "sha256": "18wncb713slsynm3amqs8ibpzfab819nn6r6yzl6yxsliahi2xil"
   },
   "stable": {
    "version": [
@@ -17658,20 +17656,20 @@
   "repo": "emacs-csharp/csharp-mode",
   "unstable": {
    "version": [
-    20210826,
-    421
+    20211115,
+    2134
    ],
-   "commit": "c0c7602368f7b3933584e7790394a4d509bd1c50",
-   "sha256": "1nkaaggdh9bzisq4dx6mi2lbajymq9l6dp83gsphf94xcn3q5g2s"
+   "commit": "515b866704252fc862144d9ff677fba75488e445",
+   "sha256": "0xadchhbfikw2vac6kqkmdjjixhybxqqf99cpl089cga9sjc7i5p"
   },
   "stable": {
    "version": [
     1,
-    0,
-    2
+    1,
+    0
    ],
-   "commit": "723a4ab2581b11f84d23f421faa06103864d2bc8",
-   "sha256": "1gdr1y8q93xr5vlx6jj95js6rmmsspq2bn870igbaijwwsn0sf7g"
+   "commit": "515b866704252fc862144d9ff677fba75488e445",
+   "sha256": "0xadchhbfikw2vac6kqkmdjjixhybxqqf99cpl089cga9sjc7i5p"
   }
  },
  {
@@ -18351,11 +18349,11 @@
   "repo": "cython/cython",
   "unstable": {
    "version": [
-    20190111,
-    2150
+    20211111,
+    1407
    ],
-   "commit": "b5f81f5e900922356ee7aeedf78a54fa96f85c71",
-   "sha256": "0rb5sngg8l1l4wdixhq4jzf2a55x60c0xzyzrqvpb596pacadbg9"
+   "commit": "2b1e743b9c736ec41e92b197eb709db0427558b4",
+   "sha256": "0x6nbir7pk8w4265qywqxjdvrrkyvkp8z066z29zljwcry1wk1ml"
   },
   "stable": {
    "version": [
@@ -18562,8 +18560,8 @@
   "repo": "emacs-lsp/dap-mode",
   "unstable": {
    "version": [
-    20211020,
-    1757
+    20211110,
+    1129
    ],
    "deps": [
     "bui",
@@ -18575,8 +18573,8 @@
     "posframe",
     "s"
    ],
-   "commit": "a18f29e3d1a3a945ec5dfc7dea98927ecb022c34",
-   "sha256": "037xly2c3jd33a3gnkrfp7lammrgarl5kknp5zvqs35278xpsdng"
+   "commit": "c19da4d347114d19fd9cd77af3650bcec7d81b15",
+   "sha256": "1pmzrb9c8z3jhwfjygdlkarc9ssaldvqx4vi48j6yg8av99p5z03"
   },
   "stable": {
    "version": [
@@ -19313,16 +19311,16 @@
   "repo": "Wilfred/deadgrep",
   "unstable": {
    "version": [
-    20210830,
-    656
+    20211107,
+    445
    ],
    "deps": [
     "dash",
     "s",
     "spinner"
    ],
-   "commit": "4ec21e644ef482a913c64f068ec8d602eedac1c6",
-   "sha256": "1ipjdwnf6c9qdwg4klkf6g06jj4lgap75ms5yq6a0gg2075d84jk"
+   "commit": "97663c41624526c4ceaf82fb6a0137ab2081affe",
+   "sha256": "1rkskf8byl5fnnlahvppawfjj7zc41sag4gwxdb2r3j77g5d5ahq"
   },
   "stable": {
    "version": [
@@ -20187,14 +20185,14 @@
   "repo": "dgutov/diff-hl",
   "unstable": {
    "version": [
-    20211102,
-    242
+    20211106,
+    2353
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "47f8724ced083c4f5aca9e0751bfd2489198d1be",
-   "sha256": "186b66fr2hj75si88431dx8jcp2icvk6qb2xi0z24ll7rxwccskg"
+   "commit": "6fa3af0843093f44e028584a93eef091ec7e79d2",
+   "sha256": "0fg7mdcjjnibqi8f7zj2pig35kcq4gqfi4jvg4hvw9fcncdv0yln"
   },
   "stable": {
    "version": [
@@ -20390,6 +20388,37 @@
   }
  },
  {
+  "ename": "dilbert",
+  "commit": "7fb785715c05adaa7551b27f4eaca2b704bf1a86",
+  "sha256": "1bsz4qmjy9hvpgrxpbz94v2yv0xvh1v8fik1pldv72bl4jkvifvl",
+  "fetcher": "github",
+  "repo": "DaniruKun/dilbert-el",
+  "unstable": {
+   "version": [
+    20211114,
+    1009
+   ],
+   "deps": [
+    "dash",
+    "enlive"
+   ],
+   "commit": "bd8c11ccc512ca60906a8b0e4bca2081ba4aab7b",
+   "sha256": "110ynzqsnkv6sdnbk475h6qyrvj4w1dk577hpr1p7pk7bif4waxd"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "deps": [
+    "dash",
+    "enlive"
+   ],
+   "commit": "e660def51721f80b7d21eeab60e9a719be5106f7",
+   "sha256": "0gim8imb9cw16sr76hydjp1rjw2cczslnh4h2gvq3jsmpk2hdvma"
+  }
+ },
+ {
   "ename": "dim",
   "commit": "3a740ab40cab3a1890f56df808f41a2d541aa77c",
   "sha256": "0gsyily47g3g55qmhp1wzfz319l1pkgjz4lbigafjzlzqxyclz52",
@@ -21833,14 +21862,14 @@
   "repo": "unhammer/dix",
   "unstable": {
    "version": [
-    20210312,
-    1850
+    20211117,
+    954
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "17f33f9a8bb50156261e10c045d54eb866ea84fa",
-   "sha256": "1aajxj4xvi8jpskfhh52n6388w1skj1y9aq2xdvwj7cizy57lqn2"
+   "commit": "9ad8b231812af17c2f7655057a8e0dece96a7d7f",
+   "sha256": "1l3js4rqwqjlk5b13fsr3nk6n3yzlnscya4jsc1j8dr19i5nbxcf"
   },
   "stable": {
    "version": [
@@ -21870,8 +21899,8 @@
     "dix",
     "evil"
    ],
-   "commit": "17f33f9a8bb50156261e10c045d54eb866ea84fa",
-   "sha256": "1aajxj4xvi8jpskfhh52n6388w1skj1y9aq2xdvwj7cizy57lqn2"
+   "commit": "9ad8b231812af17c2f7655057a8e0dece96a7d7f",
+   "sha256": "1l3js4rqwqjlk5b13fsr3nk6n3yzlnscya4jsc1j8dr19i5nbxcf"
   },
   "stable": {
    "version": [
@@ -22196,8 +22225,8 @@
   "repo": "Silex/docker.el",
   "unstable": {
    "version": [
-    20211101,
-    717
+    20211105,
+    138
    ],
    "deps": [
     "dash",
@@ -22207,8 +22236,8 @@
     "tablist",
     "transient"
    ],
-   "commit": "a7097f68a96470ae7d77b86c7bdee9acb095f06e",
-   "sha256": "1dnrk8fc725l3nk0rr0xxzz8zizs3558spprjbg8ry1l5fahjm9a"
+   "commit": "8d64cf4f84d7da5f839a8248fdddfb635a63f803",
+   "sha256": "1ivyvgh24nadhiv9ffqxckwln8vc9c2l0bvrvrd53yf0w8i345yz"
   },
   "stable": {
    "version": [
@@ -22569,30 +22598,30 @@
   "repo": "seagle0128/doom-modeline",
   "unstable": {
    "version": [
-    20211024,
-    1720
+    20211111,
+    834
    ],
    "deps": [
     "all-the-icons",
     "dash",
     "shrink-path"
    ],
-   "commit": "25e81e77cd7481de4c666d4070ae038e4970c767",
-   "sha256": "1xrhfrnpzj3c3vrqzw8wsrbpgnvl849ad4fzpqid1vvzl6xzq2ww"
+   "commit": "36fed6d1a1614f72d425073d7c9e1529f622fe7a",
+   "sha256": "0g56jvpsz8mdjpg7rifn89p7k2iw4rl1rvj8xv5323x9hl6772dx"
   },
   "stable": {
    "version": [
     3,
     2,
-    0
+    1
    ],
    "deps": [
     "all-the-icons",
     "dash",
     "shrink-path"
    ],
-   "commit": "d514f43679513819b37333a64a44523f239150b6",
-   "sha256": "1gfkaxga919a1a19dhpbby95l8dixb1278g5d7iadjf2i3j0p3l0"
+   "commit": "b59802efba1215bb861621deba0030cfda2796ed",
+   "sha256": "1ji15n2rdp7bjg5iq9im6c4m12k24kqp85i3n1m9npihrb4arh54"
   }
  },
  {
@@ -22622,14 +22651,14 @@
   "repo": "hlissner/emacs-doom-themes",
   "unstable": {
    "version": [
-    20211011,
-    1314
+    20211114,
+    1641
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "3e6f5d9ce129ac6fc0f466eb6f5518593625578f",
-   "sha256": "1ar9nb67hppqhbdl6l6mv1y6zl48mcdl91bmsc49bjpzp9a38y5b"
+   "commit": "96edc0ceb864b7d72218e58c8e9272cd96e5712c",
+   "sha256": "0qkpwlg5h3ysmf6aywz49a9gkl4xszxzdkcfpqc3n0i2bvcmf6vk"
   },
   "stable": {
    "version": [
@@ -22873,11 +22902,11 @@
   "repo": "dracula/emacs",
   "unstable": {
    "version": [
-    20210922,
-    1038
+    20211108,
+    749
    ],
-   "commit": "943faeda66931dd275fe83d858945bd07abacc5a",
-   "sha256": "01k8i4g0vv7m2jgjmj3y2n1821965r4m1j3fra5v30pnljjl7zjb"
+   "commit": "8c38b293af039041e8914894d86122403eec5bcf",
+   "sha256": "15h2zkrhlhhc7qkyydpbm2xdgbx3vwy1jj78rq3vycwb37v52kci"
   },
   "stable": {
    "version": [
@@ -23285,8 +23314,8 @@
     20210909,
     1010
    ],
-   "commit": "4060ee0f13866916336f4ba2c14fa836c9ad04da",
-   "sha256": "0ffxaj9l186ln642j86m9j79hkn71wqqx8xyzcwg2cc3avqnm3sx"
+   "commit": "05653b996b18032a4e80ab71827e7a15601a69d6",
+   "sha256": "1l2803hd9gr5mjzpfz21fgwcyy55zj0rdafwdmy1hcdy9g1d3cg8"
   },
   "stable": {
    "version": [
@@ -23522,8 +23551,8 @@
     20210924,
     2026
    ],
-   "commit": "76142cf100d9e611024638a761e62bd82af156cd",
-   "sha256": "1fsydk7pld2xpmmp1jnm8b3y7zdynibwicgmsfxpk11915y4fh6r"
+   "commit": "dc9013117bdcdc1b12feebcc58eaf129a6ad3a73",
+   "sha256": "0z5r0wybpm74hlcbisavn90i31vh3jsalhk0frihfclfgbqd24d9"
   },
   "stable": {
    "version": [
@@ -24051,14 +24080,14 @@
   "repo": "joostkremers/ebib",
   "unstable": {
    "version": [
-    20211102,
-    2220
+    20211112,
+    2206
    ],
    "deps": [
     "parsebib"
    ],
-   "commit": "84c7234c4901207fa0520af96922c2b8e407ff4c",
-   "sha256": "18gvmymkpzws8s4zjcm1kijyr55dgfcq201z3w1jzhkhcs01bfsc"
+   "commit": "b2f9c0a354044449a49501cc405cdb090e19dda0",
+   "sha256": "0f56rmpwj71lgqyb5gx9mnb2gz9s7bnmf7fyiwc0f541jrrgcfcl"
   },
   "stable": {
    "version": [
@@ -24829,14 +24858,11 @@
   "repo": "ROCKTAKEY/egalgo",
   "unstable": {
    "version": [
-    20190706,
-    1611
-   ],
-   "deps": [
-    "dash"
+    20211105,
+    1657
    ],
-   "commit": "e683b16ed4265ddb46efcc8cbf9503301cc39e22",
-   "sha256": "12nsbqrk7clr642kmbaa9xqgx7j2r6as6grx5qmghnp7kjfy1d7l"
+   "commit": "a56a86591351d53ca2add7c651757bfb0064fb22",
+   "sha256": "1xcd1kwrdclncln1fgg3ikdja8j96jfp0a9r9r7x2h05npb3881q"
   },
   "stable": {
    "version": [
@@ -24922,8 +24948,8 @@
   "repo": "joaotavora/eglot",
   "unstable": {
    "version": [
-    20211009,
-    1931
+    20211116,
+    823
    ],
    "deps": [
     "eldoc",
@@ -24932,8 +24958,8 @@
     "project",
     "xref"
    ],
-   "commit": "9665359bb6bfb6a96b0c3b307d4abea9fcbff7a5",
-   "sha256": "154wf1ps7s00vpmdxgj2pw36gcda1w82f5yw0zhl9c7gi05g3xn3"
+   "commit": "55c13a91378cdd7822c99bbbf340ea76b1f0bf38",
+   "sha256": "01861nbwkgx88ndhqcb2dcy9mzsk7za61ngbw02mxlg3ninl15ic"
   },
   "stable": {
    "version": [
@@ -24967,8 +24993,8 @@
     "fsharp-mode",
     "jsonrpc"
    ],
-   "commit": "e92e270c6c987497041fac65cded82146cd41dde",
-   "sha256": "0jzxdim6mpj984cmhxzpafig6dcaav5x98y59f4ji3dxc95qs6r7"
+   "commit": "0ba09a8124cee35cf81f55b4db9144efeb00a92f",
+   "sha256": "1y11q6zbmdfwswgy205f0iqsd5c4075zsf135vsnc7bpmmkpgcvw"
   },
   "stable": {
    "version": [
@@ -25083,8 +25109,8 @@
   "repo": "millejoh/emacs-ipython-notebook",
   "unstable": {
    "version": [
-    20211012,
-    347
+    20211107,
+    1724
    ],
    "deps": [
     "anaphora",
@@ -25095,8 +25121,8 @@
     "websocket",
     "with-editor"
    ],
-   "commit": "e354ea77c29e8c20b6b1a9ee00d86e6a9512bc0d",
-   "sha256": "1ny4gjawwsq7gx1ih7f37p24pyyjv9jbp702v1sl6wfnk6r7ll9c"
+   "commit": "1e42a2b26c2b113884170a94229c2743978e2dec",
+   "sha256": "0fvsbhv65z6vjw41s4yrk2j71cm7rw9yljlizrv55gazrpd5g6i8"
   },
   "stable": {
    "version": [
@@ -25594,24 +25620,19 @@
   "repo": "doublep/eldev",
   "unstable": {
    "version": [
-    20211102,
-    1943
+    20211113,
+    1804
    ],
-   "commit": "4a44c72a8cca50677315b1af7dbcae471421ef3f",
-   "error": [
-    "exited abnormally with code 1\n",
-    "",
-    "warning: unknown setting 'experimental-features'\nwarning: unable to download 'https://github.com/doublep/eldev/archive/4a44c72a8cca50677315b1af7dbcae471421ef3f.tar.gz': Couldn't resolve host name (6); retrying in 330 ms\nwarning: unable to download 'https://github.com/doublep/eldev/archive/4a44c72a8cca50677315b1af7dbcae471421ef3f.tar.gz': Couldn't resolve host name (6); retrying in 517 ms\nwarning: unable to download 'https://github.com/doublep/eldev/archive/4a44c72a8cca50677315b1af7dbcae471421ef3f.tar.gz': Couldn't resolve host name (6); retrying in 1178 ms\nwarning: unable to download 'https://github.com/doublep/eldev/archive/4a44c72a8cca50677315b1af7dbcae471421ef3f.tar.gz': HTTP error 302 (curl error: Couldn't resolve host name); retrying in 2285 ms\nerror: unable to download 'https://github.com/doublep/eldev/archive/4a44c72a8cca50677315b1af7dbcae471421ef3f.tar.gz': HTTP error 302 (curl error: Couldn't resolve host name)\n"
-   ]
+   "commit": "70aa39c6c6ed696b7f1505c1c9bf4b2556179a27",
+   "sha256": "01y3jyjisxngaj0wyib5s37839m7q4azkchaa381mwx0l5nv5k5d"
   },
   "stable": {
    "version": [
     0,
-    9,
-    3
+    10
    ],
-   "commit": "95fedcc075afba7306341e55122b8aa6108d412e",
-   "sha256": "0qmyx74hikkirv31x65gybr9n7ignxlyx61xkz5qmjk8pgdmkn3r"
+   "commit": "012f5ae33166987b4a541b0df2d39e3770ade228",
+   "sha256": "1y1gc37vn8k1yhp6b069sg8hdh1bn22icdqn4b28c2k5iiw9g7gi"
   }
  },
  {
@@ -25778,14 +25799,14 @@
   "repo": "davidshepherd7/electric-operator",
   "unstable": {
    "version": [
-    20210906,
-    1235
+    20211114,
+    1153
    ],
    "deps": [
     "dash"
    ],
-   "commit": "14def81d88bf4344a335e68007324e3f3ef5c435",
-   "sha256": "1p4kpxq8fvdcs5za79c4pzw1g8108kyfl9rcybs0g75fjxk1f2jb"
+   "commit": "1c51e88d5719e7b0dd022a4704c46b24e0c91348",
+   "sha256": "1zzy3y5vkdlb7wb3b4fgvm61zn3dj9n0ldi3153qvrgwn6w8m648"
   },
   "stable": {
    "version": [
@@ -26043,8 +26064,8 @@
     "cl-lib",
     "elfeed"
    ],
-   "commit": "5e17d4280f5f8019c3f8962a710c9b3e633f41ff",
-   "sha256": "0kv6svwg1h0wcj7z89xs20a9wns7v67af9m9rir3m8f47iyy70gr"
+   "commit": "c88bb246a40c2f8ec2cb36bc16690d1ed43f8b14",
+   "sha256": "0aq1rp46dr2hdkzm8aapb1xlcbdpa0nbrgb8b5avkihmyx7nkwkb"
   },
   "stable": {
    "version": [
@@ -26421,8 +26442,8 @@
     20211013,
     1408
    ],
-   "commit": "907ef434a0ce0f94dbd0c77f09bdfcdc779bca73",
-   "sha256": "0sri7m0n0wafc9dyffi5myvv2vawkfwx6lgmfrj7kikbds0l5s4c"
+   "commit": "7373e91e859c3ddc66457723d531cfab821160a3",
+   "sha256": "0g1krxgm3x8mj959yin1k8khqhgdr70cymvn78kb0w286079xkmn"
   },
   "stable": {
    "version": [
@@ -27193,8 +27214,8 @@
    "deps": [
     "cl-lib"
    ],
-   "commit": "da88fa2d04e37397c519e8b1181163f06a350e2f",
-   "sha256": "02g42xccwbhgq0wf4v2sd3khyvvsvigixxjb2rdqw70h4j1k8mya"
+   "commit": "ed03b9396da9ef16e498a2d33a51ec5596021b0e",
+   "sha256": "003pfp9mksl6w446c5njwi6kmlvm2m7pncilj075r9zdpra4a30z"
   }
  },
  {
@@ -27518,11 +27539,11 @@
   "repo": "oantolin/embark",
   "unstable": {
    "version": [
-    20211103,
-    1737
+    20211116,
+    2111
    ],
-   "commit": "0b524bda8d9c5f9e26898e383e98a4ec689fa144",
-   "sha256": "1jgl9n6js71sx4j1wg2nl5aaqmsq2hzna0qawz813637kaylrdxn"
+   "commit": "edfd0a842a75ad25115f95f56b0c8a9351d3e248",
+   "sha256": "1mq84aiak2fwxbxacf9wzk223dri6z918vqdgs3vy0amvn1ys2ji"
   },
   "stable": {
    "version": [
@@ -27541,15 +27562,15 @@
   "repo": "oantolin/embark",
   "unstable": {
    "version": [
-    20211031,
-    1522
+    20211116,
+    2111
    ],
    "deps": [
     "consult",
     "embark"
    ],
-   "commit": "0b524bda8d9c5f9e26898e383e98a4ec689fa144",
-   "sha256": "1jgl9n6js71sx4j1wg2nl5aaqmsq2hzna0qawz813637kaylrdxn"
+   "commit": "edfd0a842a75ad25115f95f56b0c8a9351d3e248",
+   "sha256": "1mq84aiak2fwxbxacf9wzk223dri6z918vqdgs3vy0amvn1ys2ji"
   },
   "stable": {
    "version": [
@@ -28473,8 +28494,8 @@
    "deps": [
     "closql"
    ],
-   "commit": "9be7c61fe119d9d984d8f3a91139c794300a77f2",
-   "sha256": "03qymnnsw5fb2xv1bm4z8arz8mnzqhg988baj15r13j1fcakl55r"
+   "commit": "8fa633c278241df577200c6c94102a0fa07bf8a5",
+   "sha256": "0h3f3xa5chm3vcahk97fx87l468d33myvpyd9blq26a7js568y7q"
   },
   "stable": {
    "version": [
@@ -29067,14 +29088,14 @@
   "repo": "ergoemacs/ergoemacs-mode",
   "unstable": {
    "version": [
-    20211103,
-    2356
+    20211105,
+    1531
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "63fe57790e212a3375fd9af2ccb3184f3e1d821b",
-   "sha256": "1hac7p9v510iw15livf3mx8f5f522n6s3w4mbhflilymb3bxclgh"
+   "commit": "df8d4253c44aee607308826093222188c4732099",
+   "sha256": "1rss0k7yvgbi326x2zjhbx9a5m80a58w1vj86c9ykrd0n4wj2nk0"
   },
   "stable": {
    "version": [
@@ -29121,8 +29142,8 @@
     20200914,
     644
    ],
-   "commit": "475d9add939bf86936a1d5b41c3260f0000bd3c8",
-   "sha256": "0f7849s67gzzrnkb57hm2p6hbkrd50s02m9l5xfqg286dinhqp0v"
+   "commit": "6cb77e1a216098d6a4e273f6750dbf4445953272",
+   "sha256": "1rj04f9q7fn88ifznqqi3p7anv0m827mz2w2bwb4s09kdn03nf6p"
   },
   "stable": {
    "version": [
@@ -29142,20 +29163,20 @@
   "repo": "erlang/otp",
   "unstable": {
    "version": [
-    20210315,
-    1640
+    20211112,
+    1232
    ],
-   "commit": "b3d4affcf9880255f6edc2e67095015e6ed2aca2",
-   "sha256": "1rz9akamp7qc8m417xgbjbm0785bj1jsjpaabzmq3pjxcqzykna0"
+   "commit": "abe8285f0b4c594d610f72df6890f6851b89f248",
+   "sha256": "1fw0chd6qmv1m06762l3lhbmd23l34g0dyvri7ql3bam0z9jjakq"
   },
   "stable": {
    "version": [
     24,
     1,
-    4
+    5
    ],
-   "commit": "eef2e7066ecdf9de5dc7fd81dc5043d9a9757efa",
-   "sha256": "0gpjl5avpfgrkm6g3p8b2b3zgfvrpsxgvzgb01mhbcw8mi2raka0"
+   "commit": "9e23eca89170fcdf22441ed65f05ef891096f318",
+   "sha256": "1gd5nac4d56wp5qqkaicdcjf3n63wbbqg4m08s26gxfbjqkfh8ri"
   }
  },
  {
@@ -29670,6 +29691,25 @@
   }
  },
  {
+  "ename": "eshell-info-banner",
+  "commit": "d602d153819e37a155ca9c4edf0271f478bd4200",
+  "sha256": "11xvlqxnxc0z5968mnmgqmpg3jn9l7x24w1qmwg9pkvr72ynh7vd",
+  "fetcher": "github",
+  "repo": "Phundrak/eshell-info-banner.el",
+  "unstable": {
+   "version": [
+    20211115,
+    914
+   ],
+   "deps": [
+    "f",
+    "s"
+   ],
+   "commit": "312f1e3da3f42a82b99228491427a429ee379648",
+   "sha256": "07xwph4mnmyd80apn6r1m8alxh2vy1d0y1jacb0ghqjbs01qg47q"
+  }
+ },
+ {
   "ename": "eshell-outline",
   "commit": "950b9323c19b145bbf07a9a8f780880a2593831c",
   "sha256": "1k510vsfsnhp86y2587zbc0cmaf735sp802d6qk7bgdllljl18hd",
@@ -29909,11 +29949,11 @@
   "url": "https://codeberg.org/jao/espotify",
   "unstable": {
    "version": [
-    20210405,
-    1808
+    20211114,
+    2251
    ],
-   "commit": "5bf63dacc5df8a74860e80dabd16afce68a24a36",
-   "sha256": "1vxg86wv6f96bva0d1xxhisk525chwhdl4nq77xhriflq65mcmi3"
+   "commit": "5c1dcf0182135cda4191d4ba206fe2f265100293",
+   "sha256": "06wj2pixhjgqddl9g2wkv7cq9gz9yjb46cb1jrlbya3rdjyfb6h5"
   }
  },
  {
@@ -30025,11 +30065,11 @@
   "repo": "emacs-ess/ESS",
   "unstable": {
    "version": [
-    20211011,
-    2049
+    20211113,
+    1429
    ],
-   "commit": "569dca1f4ff939a93c7be97c34577666d9af8b3a",
-   "sha256": "086nl0486l28n1zmw9jxqh63d7bqanzlqwh9nm4a4aw1fyjy7pda"
+   "commit": "aaa82f24c9f44fd7e39b7d918a7819eefbbb40a7",
+   "sha256": "0hxa8mm2i8xr98yw9b93m8fv3xmfb3kmydgkzai0svpi6wwn9kw2"
   },
   "stable": {
    "version": [
@@ -30620,15 +30660,15 @@
   "repo": "emacs-evil/evil",
   "unstable": {
    "version": [
-    20211021,
-    2104
+    20211116,
+    2102
    ],
    "deps": [
     "cl-lib",
     "goto-chg"
    ],
-   "commit": "17c635f6e1f538bf4b2c3c276ddd9d4d165a52fb",
-   "sha256": "1yd7kmhk0v235h4nlynfs29ljx7ca6i7s7h8wj5krk5b8sv51x27"
+   "commit": "c28e42126c4ae349e2d77c80b38feb68bc1b5b78",
+   "sha256": "00z3gmcn12nb32nczplxb68kfmmdrv0fg6f376ip6iwygjgn4cqc"
   },
   "stable": {
    "version": [
@@ -30822,15 +30862,15 @@
   "repo": "emacs-evil/evil-collection",
   "unstable": {
    "version": [
-    20211028,
-    1851
+    20211114,
+    702
    ],
    "deps": [
     "annalist",
     "evil"
    ],
-   "commit": "9e47d61bdfb63495503e62955ac5509b34c51de0",
-   "sha256": "06lwla41sr7m4bzlixbivn46c0ydc2hx0jfcqgi9lxk447v8ixcs"
+   "commit": "652d74acfb5789eacef36660c4ffc68905c8d741",
+   "sha256": "0pqm6pp6h8v5jy36cgm70kkjjgj38xdyq0irhnyqmaf5hdvrbvkh"
   },
   "stable": {
    "version": [
@@ -31489,16 +31529,16 @@
   "repo": "hlissner/evil-multiedit",
   "unstable": {
    "version": [
-    20211030,
-    2202
+    20211114,
+    1644
    ],
    "deps": [
     "cl-lib",
     "evil",
     "iedit"
    ],
-   "commit": "dd88d83a6c4d8501b809aa58d18ac2d51ad5fddb",
-   "sha256": "028qnaiwnx78c412iywsr4wqsh6fw6mjk5aqpkf5xrk7gvka27h0"
+   "commit": "e17078ff801c3cfc125bbe432a5fa24bd2958b67",
+   "sha256": "0x4fdjfvpx2nbca7jr1y0gjipg4rwf6cjmzf91j46vzslcvhqv4n"
   },
   "stable": {
    "version": [
@@ -31620,14 +31660,14 @@
   "repo": "Somelauw/evil-org-mode",
   "unstable": {
    "version": [
-    20201222,
-    2023
+    20211112,
+    108
    ],
    "deps": [
     "evil"
    ],
-   "commit": "80ef38fb378541937f6ddfe836809e76eda1e355",
-   "sha256": "19028laqnsl0h5nii7ykfh39srg94zhydhj1rcv52fs9nlg6c6dq"
+   "commit": "c3ec94bc2fb79127826ea85509247f082bc394aa",
+   "sha256": "15fvw5zq97q18nr5vshkf4qp9di0sb8fklyhgwmhyh254zfdlghf"
   },
   "stable": {
    "version": [
@@ -31957,15 +31997,15 @@
   "repo": "hlissner/evil-snipe",
   "unstable": {
    "version": [
-    20210713,
-    1456
+    20211114,
+    1647
    ],
    "deps": [
     "cl-lib",
     "evil"
    ],
-   "commit": "1a28d718c835a21591a170af78a03a366cd60c0d",
-   "sha256": "1dm73xmlhznh9yc22ifb238yyad09011nryc91n6glla347896p0"
+   "commit": "a79177df406a79b4ffa25743c752f21363bba1cc",
+   "sha256": "0pz2s0g0859zhyryvn1glngw1aq7a04x9rydl1l89h50hf5avmvj"
   },
   "stable": {
    "version": [
@@ -32057,8 +32097,8 @@
    "deps": [
     "evil"
    ],
-   "commit": "3bd73794ee5a760118042584ef74e2b6fb2a1e06",
-   "sha256": "125yxpd2cmhwvcb0p9z5dc6ydk4w2a9vblkn9hayh6myj9jwjy9f"
+   "commit": "282a975bda83310d20a2c536ac3cf95d2bf188a5",
+   "sha256": "0f9y5dwjkjv768s63bypp6nb51kklhkq58ixgzfs59r423y8l1nl"
   },
   "stable": {
    "version": [
@@ -32148,8 +32188,8 @@
    "deps": [
     "evil"
    ],
-   "commit": "17c635f6e1f538bf4b2c3c276ddd9d4d165a52fb",
-   "sha256": "1yd7kmhk0v235h4nlynfs29ljx7ca6i7s7h8wj5krk5b8sv51x27"
+   "commit": "c28e42126c4ae349e2d77c80b38feb68bc1b5b78",
+   "sha256": "00z3gmcn12nb32nczplxb68kfmmdrv0fg6f376ip6iwygjgn4cqc"
   },
   "stable": {
    "version": [
@@ -32351,15 +32391,15 @@
   "repo": "meain/evil-textobj-tree-sitter",
   "unstable": {
    "version": [
-    20211029,
-    514
+    20211105,
+    1632
    ],
    "deps": [
     "evil",
     "tree-sitter"
    ],
-   "commit": "08823ff97277fe50540d8226c7d298e06fb14932",
-   "sha256": "0w0kj6nd2achp7s6h56vzjjb28c8m5i45laa11iph3g8avvyhf2c"
+   "commit": "b35565ab6c8e380227048256885bb7aa7e7fd72c",
+   "sha256": "17rbxqvrq9c8j34mycbjkzrd6cjpamldj6h8k1hyzm2ld97w6gqm"
   }
  },
  {
@@ -32381,6 +32421,28 @@
   }
  },
  {
+  "ename": "evil-tree-edit",
+  "commit": "43726f8e4c4f7f673ca892ec17329471dba77b3e",
+  "sha256": "126jkiy9jganamn9xv2d357mxipgbz9skpvygwb7lkhnvkz263dg",
+  "fetcher": "github",
+  "repo": "ethan-leba/tree-edit",
+  "unstable": {
+   "version": [
+    20211114,
+    2308
+   ],
+   "deps": [
+    "avy",
+    "evil",
+    "s",
+    "tree-edit",
+    "tree-sitter"
+   ],
+   "commit": "6fd445dbeb158d05d785965077cc594aeeb73a61",
+   "sha256": "0h1zjdqxynxxlqdc9yxhmkjwarx4vn9anasv9i68fcmmnq7c0aw9"
+  }
+ },
+ {
   "ename": "evil-tutor",
   "commit": "4b7bfffdc34e181893b8cf4d1cc091f6c3f91126",
   "sha256": "1hvc2w5ykrgh62n4sxqqqcdk5sd7nmh6xzv4mir5vf9y2dgqcvsn",
@@ -32780,8 +32842,8 @@
    "deps": [
     "cl-lib"
    ],
-   "commit": "0a07f5489c66f76249e6207362614b595b80c230",
-   "sha256": "081p104ma9b7nzhs42y6zn8r8vz5dp7kz6vp79xdyl42w9dqinww"
+   "commit": "3a8d97c096c2c5714b667130fd8a80d5622ee067",
+   "sha256": "1fdfg9zblk82546fhmha84lz45g4nrgmqqq39jsr601axalfkl7q"
   },
   "stable": {
    "version": [
@@ -32847,10 +32909,10 @@
  },
  {
   "ename": "exotica-theme",
-  "commit": "744e4cf9105c9eaafe2b49ca1f8d7d6b9c5be4a6",
-  "sha256": "0gkidf8jcv3j3cqhjkjcxg6hv0m8kspycffn9dvjxqn912n6ljks",
+  "commit": "c3543d83fa2e0ed2b8b313f3c9e7a2c6f42b5085",
+  "sha256": "0jf18siqbwilx9v0mlm6v5k03c1v9jm4xdlk183bnrad09rdw6qh",
   "fetcher": "github",
-  "repo": "zenobharat/exotica-theme",
+  "repo": "zenobht/exotica-theme",
   "unstable": {
    "version": [
     20180212,
@@ -33787,8 +33849,8 @@
   "repo": "jumper047/fb2-reader",
   "unstable": {
    "version": [
-    20211104,
-    24
+    20211116,
+    2053
    ],
    "deps": [
     "async",
@@ -33797,8 +33859,8 @@
     "s",
     "visual-fill-column"
    ],
-   "commit": "3d4f2aef7051ab35f63ed94fda19ab25d1182883",
-   "sha256": "01vjz1bq7lrf8ynrfyr8lvkll0z228p9qdwj933c3812wjwgk6ml"
+   "commit": "b93dfcacbe3ea1147642ee4e1dab2e2c36c4f6a3",
+   "sha256": "1c5i2w59kgs1pbhyxa0m0bny50kra2xlziydzpvryyddix94k4ld"
   }
  },
  {
@@ -33970,11 +34032,11 @@
   "repo": "technomancy/fennel-mode",
   "unstable": {
    "version": [
-    20211101,
-    1749
+    20211110,
+    1728
    ],
-   "commit": "777c19b8cbf48f3247f8bd47f61858581ad02b50",
-   "sha256": "0v9a6psnlbh9cyibp95k2frix29ma6b69cgivmh8z4nrp0ycywc7"
+   "commit": "2900e3c2d5554b115a0a3b181e74a27c76489f4d",
+   "sha256": "14in4r89aqx6gq8qlia2bgprr73ldj7nlyvz61np2zqn7kfw1nfq"
   },
   "stable": {
    "version": [
@@ -34120,15 +34182,15 @@
   "repo": "knpatel401/filetree",
   "unstable": {
    "version": [
-    20211025,
-    2000
+    20211115,
+    506
    ],
    "deps": [
     "dash",
     "helm"
    ],
-   "commit": "a7a71d875cb666bed34e2ec86ae7921d8af5c28a",
-   "sha256": "08lz5zksnc8728v8gxpmc587pi7i85iv7f35d46appffwc42hfra"
+   "commit": "4f97329cdc628d2b9424114a981d046daab50d61",
+   "sha256": "06hdllrg2xca7qq6m6f4xnjlb06ljn6lk7zypviy20qv7vmxa87s"
   }
  },
  {
@@ -34433,8 +34495,8 @@
   "repo": "LaurenceWarne/finito.el",
   "unstable": {
    "version": [
-    20211015,
-    937
+    20211107,
+    1925
    ],
    "deps": [
     "async",
@@ -34445,8 +34507,8 @@
     "s",
     "transient"
    ],
-   "commit": "21a492d3e67e5e3ab59b75107d345142a4c3ac02",
-   "sha256": "02n3h2zvdf24jxmcpp0cjcfba54cs0isymcd4k4j68zywszwzp36"
+   "commit": "f1b280cfbcbbb0729a83d763f08e25ccdb4c399d",
+   "sha256": "0x8aysl2s0ixl72qbz924b59advxp3f6ifmwf41rn11rnqjdmlr0"
   },
   "stable": {
    "version": [
@@ -36700,8 +36762,8 @@
     "flycheck",
     "keg"
    ],
-   "commit": "bf2457d128dca207b3fb00a2660eb662327f877b",
-   "sha256": "0yc24n8mvppxni3hbfwk1p5spxqswax90l2v0gwc9wf20djmkdfq"
+   "commit": "f0a719892aed5b1b4b644f1339d1ace99c656100",
+   "sha256": "0vk4fdkai0ssq31ycckkz4iwp35ip5d8lnyisv4m3b98jv3pb6k0"
   }
  },
  {
@@ -36741,14 +36803,14 @@
   "repo": "emacs-languagetool/flycheck-languagetool",
   "unstable": {
    "version": [
-    20210715,
-    946
+    20211107,
+    1001
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "4fcf88d131fd0e149a7f1c787c07f4e03ea24fe8",
-   "sha256": "0p1fmxgbpfh3bihpdaqd2dfsgi3s9x17nhb8439livfrjhqdhfhd"
+   "commit": "b6d0b1515418e5821241ac04143a12997c3bb240",
+   "sha256": "1klwi2ssjnjc5cirq201wl643w8cb32r42nmjhvxv4dgad14i659"
   },
   "stable": {
    "version": [
@@ -39551,6 +39613,40 @@
   }
  },
  {
+  "ename": "fontsloth",
+  "commit": "f9c704d7509531a89ace039565152b5336a3f25a",
+  "sha256": "1kkcx9rycpcknyw1423d6k4dnbcpvkj3adzvgxl6a8h60q3i17v6",
+  "fetcher": "github",
+  "repo": "jollm/fontsloth",
+  "unstable": {
+   "version": [
+    20211102,
+    511
+   ],
+   "deps": [
+    "f",
+    "logito",
+    "pcache"
+   ],
+   "commit": "e43c7ed8302841aefe45f2e6bf35f84d854868f5",
+   "sha256": "1r3rn65gmnj964wisjagknz46kqhnpma5byw7gyzl69s8gfaifg0"
+  },
+  "stable": {
+   "version": [
+    0,
+    15,
+    3
+   ],
+   "deps": [
+    "f",
+    "logito",
+    "pcache"
+   ],
+   "commit": "8ce1802b356962296a492d90cc9ae62e06c7ae43",
+   "sha256": "106ry9gqp10fpf24zsh9aar3qr3q6lg1l7wj38sfc73saq71mi17"
+  }
+ },
+ {
   "ename": "forecast",
   "commit": "a7ea18a56370348715dec91f75adc162c800dd10",
   "sha256": "0zng8xdficpfccq484pghzg8yylihcy8aq0vpxd1w6l40m2qf6zn",
@@ -39639,8 +39735,8 @@
   "repo": "magit/forge",
   "unstable": {
    "version": [
-    20211103,
-    2319
+    20211111,
+    2038
    ],
    "deps": [
     "closql",
@@ -39653,8 +39749,8 @@
     "transient",
     "yaml"
    ],
-   "commit": "760affa8de6dd4ccb1607d343e36b54296473074",
-   "sha256": "0139z7h835669f6msflnp940106s3x29k7kagiga413ijjiv140h"
+   "commit": "41efa674cff0b447efbc103494fd61ec9b9156ae",
+   "sha256": "0baaq8bf07aq80ll1q86q9dzzgkpn6j5jl1c1dssc04awg69kjsb"
   },
   "stable": {
    "version": [
@@ -39854,14 +39950,14 @@
   "repo": "rnkn/fountain-mode",
   "unstable": {
    "version": [
-    20211104,
-    1141
+    20211105,
+    1510
    ],
    "deps": [
     "seq"
    ],
-   "commit": "bf1849456f6c7587e15a44a0e5c7e1f93810a6e2",
-   "sha256": "1hm2qw11kka2sfafqqhxvbc7ksrgsz5x7difmrbx03ljnib6fvcg"
+   "commit": "e3e4509e95019b5a56fb6596cafad0a78ebf2c79",
+   "sha256": "199carn2y5kxqsmxwrjcgvq4ih5xk74k09akb7milnxhys0zhnlk"
   },
   "stable": {
    "version": [
@@ -40095,14 +40191,14 @@
   "repo": "Fuco1/free-keys",
   "unstable": {
    "version": [
-    20160726,
-    2050
+    20211116,
+    1501
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "edfd69dc369b2647447b7c28c7c1163b1ddf45b4",
-   "sha256": "0xgifa7s9n882f9ymyyz9gc11xfbj3vfpnxiq1fqfm5hmwx9pwbc"
+   "commit": "7348ce68192871b8a69b687ec124d9f816d493ca",
+   "sha256": "0f99vykxvvcsdqs03ig5kyd3vdrclk8mcryn7b310ysg840ksrw8"
   },
   "stable": {
    "version": [
@@ -40404,14 +40500,14 @@
   "repo": "fsharp/emacs-fsharp-mode",
   "unstable": {
    "version": [
-    20211031,
-    1617
+    20211115,
+    1418
    ],
    "deps": [
     "s"
    ],
-   "commit": "e92e270c6c987497041fac65cded82146cd41dde",
-   "sha256": "0jzxdim6mpj984cmhxzpafig6dcaav5x98y59f4ji3dxc95qs6r7"
+   "commit": "0ba09a8124cee35cf81f55b4db9144efeb00a92f",
+   "sha256": "1y11q6zbmdfwswgy205f0iqsd5c4075zsf135vsnc7bpmmkpgcvw"
   },
   "stable": {
    "version": [
@@ -41411,15 +41507,15 @@
   "url": "https://alexschroeder.ch/cgit/gemini-write",
   "unstable": {
    "version": [
-    20211026,
-    1639
+    20211114,
+    1032
    ],
    "deps": [
     "elpher",
     "gemini-mode"
    ],
-   "commit": "169333a5c251c14a84286dea02a63d1a5e93cf54",
-   "sha256": "1mfg8yb03wr278x6whzqz0y68xsl2g5zdwak08j9a6yigib8pmcf"
+   "commit": "2a7d07d0ce4c5b8750f3ff1182ad94ee616734c8",
+   "sha256": "0jp16la1v4l8mdnxsia9w11a33s5jxs9rdgwp2snxq3h40wyv0is"
   }
  },
  {
@@ -41838,15 +41934,15 @@
   "repo": "magit/ghub",
   "unstable": {
    "version": [
-    20211001,
-    2224
+    20211106,
+    2042
    ],
    "deps": [
     "let-alist",
     "treepy"
    ],
-   "commit": "192eff9da2c0f61813f3bc9c00913985c1804180",
-   "sha256": "1bc5z63ylb0ir5v9qngyl50svmlfd6hx9lv1ladwywncdpsslls8"
+   "commit": "4d6a4b2bc1d88b993c09c1cb47b575a08eb264ea",
+   "sha256": "1sdwpn917p92bh8cljl70zzxrwdy368p0w1ynsfp4x9xdkgc068f"
   },
   "stable": {
    "version": [
@@ -42212,8 +42308,8 @@
     "transient",
     "with-editor"
    ],
-   "commit": "2bd1d823ddebb0cfef31a3338916aaef9ae01660",
-   "sha256": "1d3hhsb7r7ch3q6azchvpjf885mfnqx6xg5wl3iqbyhhr0i8q7vj"
+   "commit": "9413847c1a085899d8de6f8d978bd7265f65e5d8",
+   "sha256": "0b39813iyxgq0ai6hz4hpf9f4wix1lhcp6z5p1cm6y6hd8dyg486"
   },
   "stable": {
    "version": [
@@ -44112,8 +44208,8 @@
     "cl-lib",
     "go-mode"
    ],
-   "commit": "34974346d1f74fa835d745514c9fe9afccce8dae",
-   "sha256": "1h0vyp3xbz6xx6warxi23w8kjjgkr0x1lr6r9a2qiz2rywn8jlxf"
+   "commit": "5bd8efab64352dccf31dbc99c4fc96d3b985ef27",
+   "sha256": "0j430sd72pkh00773yqrg1jllli9yccdf645yxrxsf3n3k95s603"
   },
   "stable": {
    "version": [
@@ -44205,11 +44301,11 @@
   "repo": "dominikh/go-mode.el",
   "unstable": {
    "version": [
-    20210509,
-    2353
+    20211113,
+    705
    ],
-   "commit": "34974346d1f74fa835d745514c9fe9afccce8dae",
-   "sha256": "1h0vyp3xbz6xx6warxi23w8kjjgkr0x1lr6r9a2qiz2rywn8jlxf"
+   "commit": "5bd8efab64352dccf31dbc99c4fc96d3b985ef27",
+   "sha256": "0j430sd72pkh00773yqrg1jllli9yccdf645yxrxsf3n3k95s603"
   },
   "stable": {
    "version": [
@@ -44328,8 +44424,8 @@
    "deps": [
     "go-mode"
    ],
-   "commit": "34974346d1f74fa835d745514c9fe9afccce8dae",
-   "sha256": "1h0vyp3xbz6xx6warxi23w8kjjgkr0x1lr6r9a2qiz2rywn8jlxf"
+   "commit": "5bd8efab64352dccf31dbc99c4fc96d3b985ef27",
+   "sha256": "0j430sd72pkh00773yqrg1jllli9yccdf645yxrxsf3n3k95s603"
   },
   "stable": {
    "version": [
@@ -44454,10 +44550,10 @@
   "stable": {
    "version": [
     0,
-    2
+    3
    ],
-   "commit": "b3174e09a03954b1423c4ea2f2936f9fcd94f381",
-   "sha256": "054l7m9slhznpfkixrnk6n5h8rc9x7gjsahizxvkd73q0jvgqxgn"
+   "commit": "8de1c3b660602b6739444ceed3e48214c417fe38",
+   "sha256": "0b8jbcs848ck0zbl6rmyyac3mbhx58zq04l7wvi7paficg9lphj9"
   }
  },
  {
@@ -44828,24 +44924,6 @@
   }
  },
  {
-  "ename": "gopher",
-  "commit": "8c01e1c5009e8a4fefe5169c8e97ead53f8f6621",
-  "sha256": "01b1mr8nn5yrq65y067slc7mvxigansbim0nha41ckyrkh8mw4fs",
-  "fetcher": "github",
-  "repo": "msnyder-info/gopher.el",
-  "unstable": {
-   "version": [
-    20190512,
-    1351
-   ],
-   "deps": [
-    "w3m"
-   ],
-   "commit": "6f4accac226698b22e8388e41ad5723b12553dde",
-   "sha256": "02093q9dwbqjyq47j05cmxmw12690f4qqpwsj7qnqz15m9n4b6xc"
-  }
- },
- {
   "ename": "gore-mode",
   "commit": "de09fcf14f778efe4247a93fb887b77050258f39",
   "sha256": "0nljybh2pw8pbbajfsz57r11rs4bvzfxmwpbm5qrdn6dzzv65nq3",
@@ -45078,8 +45156,8 @@
     "magit-popup",
     "s"
    ],
-   "commit": "14d8083c9ca296ce3c3e6d4fe21e455119f56db5",
-   "sha256": "0k8k22vwd0148sr8lnxjsvrhsp4byfb8icaqhk9cshws3g5hpb7w"
+   "commit": "7f4153164fcd6588e2245ca3f5b4aee7737f4367",
+   "sha256": "1wrmw1y6qp3s36s30v4dncn68mf5biykpwpf5sk3h7sh0ifgk8yv"
   },
   "stable": {
    "version": [
@@ -45860,20 +45938,20 @@
   "repo": "ROCKTAKEY/grugru",
   "unstable": {
    "version": [
-    20210617,
-    1028
+    20211116,
+    850
    ],
-   "commit": "7efb041b826f15b10aa9cfb67b971fdc41064980",
-   "sha256": "175gfhi1621pclwvhbz2a8rramfb47v353x5hxjys1b0p848yk1l"
+   "commit": "7b63aa731bf7df528bb7d680ca3efe42ab4ead38",
+   "sha256": "0l60w8r5586af740vkcr11xj8ganws0hgbv4n7rn11mksr5idzwz"
   },
   "stable": {
    "version": [
     1,
-    20,
+    21,
     0
    ],
-   "commit": "e7f0fca4bfd4815e5ed794f13f89b1e28ce57d26",
-   "sha256": "15h1h5gg369h2dm9yp97ac6l5qajm7f9c0s2cgpymv21gyx2ikr5"
+   "commit": "1225a06dcb10c600ab9c44fd3d7df25bcd74d704",
+   "sha256": "0b5dgy3la3jzfxvj4fsdjphqvymvs6zx8dsibvld5ydkj3cx4pfw"
   }
  },
  {
@@ -46905,68 +46983,6 @@
   }
  },
  {
-  "ename": "hasky-extensions",
-  "commit": "e3f73e3df8476fa231d04211866671dd74911603",
-  "sha256": "0ymigba1d0qkrk3ccd3cx754safzmx1v5d13976571rszgmkvr15",
-  "fetcher": "github",
-  "repo": "hasky-mode/hasky-extensions",
-  "unstable": {
-   "version": [
-    20190204,
-    2016
-   ],
-   "deps": [
-    "avy-menu"
-   ],
-   "commit": "4a0d1d9beb3be8ff4a1857eb920c916734dcc8e1",
-   "sha256": "1sp07lqvxxcl625qr9ka7idvci3j0p77ll90pwzykr5cs7r3lzl2"
-  },
-  "stable": {
-   "version": [
-    0,
-    2,
-    0
-   ],
-   "deps": [
-    "avy-menu"
-   ],
-   "commit": "65bf7bc3967cbda23789d6c505daf73eed9a43aa",
-   "sha256": "0r91hcm265xa8amdfi44pn0cqf4m9zigzqx1ldgg8qd6l9r2hbh7"
-  }
- },
- {
-  "ename": "hasky-stack",
-  "commit": "c3faf544872478c3bccf2fe7dc51d406031e4d80",
-  "sha256": "08ds0v5p829s47lbhibswnbn1aqfnwf6xx7p5bc5062wxdvqahw8",
-  "fetcher": "github",
-  "repo": "hasky-mode/hasky-stack",
-  "unstable": {
-   "version": [
-    20190304,
-    2248
-   ],
-   "deps": [
-    "f",
-    "magit-popup"
-   ],
-   "commit": "9ef133ed831a95a2b9990a46a3c57f1918d0274f",
-   "sha256": "08h795hplyy7d0yqxvdfx3ylb7gkjplyriyq0w9dsv6ggvmc5hhl"
-  },
-  "stable": {
-   "version": [
-    0,
-    9,
-    0
-   ],
-   "deps": [
-    "f",
-    "magit-popup"
-   ],
-   "commit": "a3176aece9a9ab0a36ae795965f83f4c1fa243bf",
-   "sha256": "1j9cvy95wnmssg68y7hcjr0fh117ix1ypa0k7rxqn84na7hyhdpl"
-  }
- },
- {
   "ename": "hass",
   "commit": "d9f55bfa87d6fbaeafe713f8862369ea013a0c67",
   "sha256": "1jmxngfjad8vqd6abgqhf2a8x3vysxfhwk4qs0c327qfazmd7vq3",
@@ -47184,30 +47200,30 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20211031,
-    1714
+    20211116,
+    1616
    ],
    "deps": [
     "async",
     "helm-core",
     "popup"
    ],
-   "commit": "349663e85eddb40ed6ae78329e6abc47513b17f1",
-   "sha256": "0as1wk8crs9yizn1h6pqj60z4df59f6m632kfcnwl08yvzhiva3n"
+   "commit": "ab2592262f4f62498f3261993eb249bb4c60c8ba",
+   "sha256": "0d5accmbidapgxj9fbrn5cdcfy3i0993sxrafnj2x8cb8px1lrg4"
   },
   "stable": {
    "version": [
     3,
     8,
-    0
+    1
    ],
    "deps": [
     "async",
     "helm-core",
     "popup"
    ],
-   "commit": "0714e27fe703a42fa52caf6daa0921d544a55402",
-   "sha256": "1xrpv0sqmlwn94bc31k2iav284i1hl95937541ihlkhqg6v2vwrv"
+   "commit": "52dcf9e27c1a10be058efa0cf790510bbfeb89e7",
+   "sha256": "1yfr2vz1kd21rvnxi8xzv67gs5r599fhjmw8qphsmpv5afscfl7k"
   }
  },
  {
@@ -48092,26 +48108,26 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20211017,
-    530
+    20211114,
+    1507
    ],
    "deps": [
     "async"
    ],
-   "commit": "349663e85eddb40ed6ae78329e6abc47513b17f1",
-   "sha256": "0as1wk8crs9yizn1h6pqj60z4df59f6m632kfcnwl08yvzhiva3n"
+   "commit": "ab2592262f4f62498f3261993eb249bb4c60c8ba",
+   "sha256": "0d5accmbidapgxj9fbrn5cdcfy3i0993sxrafnj2x8cb8px1lrg4"
   },
   "stable": {
    "version": [
     3,
     8,
-    0
+    1
    ],
    "deps": [
     "async"
    ],
-   "commit": "0714e27fe703a42fa52caf6daa0921d544a55402",
-   "sha256": "1xrpv0sqmlwn94bc31k2iav284i1hl95937541ihlkhqg6v2vwrv"
+   "commit": "52dcf9e27c1a10be058efa0cf790510bbfeb89e7",
+   "sha256": "1yfr2vz1kd21rvnxi8xzv67gs5r599fhjmw8qphsmpv5afscfl7k"
   }
  },
  {
@@ -52185,11 +52201,11 @@
   "repo": "hlissner/emacs-hide-mode-line",
   "unstable": {
    "version": [
-    20190922,
-    115
+    20211112,
+    1400
    ],
-   "commit": "88888825b5b27b300683e662fa3be88d954b1cea",
-   "sha256": "0dfzjgxfkcw4wisbyldsm1km18pfp9j8xgadn6qnsz11l55bpgyp"
+   "commit": "bc5d293576c5e08c29e694078b96a5ed85631942",
+   "sha256": "12mfhg0r3gvy59ijy44vsircn251nmisp04k9vvgd2yhykpsr1j6"
   },
   "stable": {
    "version": [
@@ -54025,14 +54041,14 @@
   "repo": "zzkt/i-ching",
   "unstable": {
    "version": [
-    20210222,
-    1519
+    20211112,
+    1528
    ],
    "deps": [
     "request"
    ],
-   "commit": "51a3180ed07ae9f8b7ff3f2b822d998495864a07",
-   "sha256": "1rrykszzcyvrmks2clrpdq5kdldcqp38wc908bhq2b4qw7w3d7sw"
+   "commit": "39fd7daf1efd761336616c870cc5b8871422d95e",
+   "sha256": "18b9n5w36zdsaxc63nhsry2i1s28a4y21sc6cj7rawvd8zyxargv"
   }
  },
  {
@@ -54876,8 +54892,8 @@
     "cl-lib",
     "prop-menu"
    ],
-   "commit": "8553aef4e4bd22e35a236413b09980c6f93a9041",
-   "sha256": "15r63yqaslsdg760xiwrg2d7cxiiyvzrjzfmnfx8zwg32nfpkh1b"
+   "commit": "2e4b5c6a979b04d9383c44423388f6cb0988f14f",
+   "sha256": "0bl6wz05m325h2y4in7fv280p73a2iv2k52jg7qp26aggmpfrjxa"
   },
   "stable": {
    "version": [
@@ -54915,11 +54931,11 @@
   "repo": "victorhge/iedit",
   "unstable": {
    "version": [
-    20210812,
-    735
+    20211116,
+    11
    ],
-   "commit": "2f504c966e7f640dcd6ecbf40a6a1a05ea286de0",
-   "sha256": "08lgv18584ksgkz0r39vc6xfjid93v0z3wbds38iynaayimr3p68"
+   "commit": "012de2e8d8519e850a790f8a2c71a5b08358c29c",
+   "sha256": "00b1hmr8p6fwydppql75cqkcqbnc89271b7h1kydgnwm7pcg177w"
   },
   "stable": {
    "version": [
@@ -57467,8 +57483,8 @@
     "migemo",
     "nadvice"
    ],
-   "commit": "a2ce15abe6a30fae63ed457ab25a80455704f28e",
-   "sha256": "18j3h2ndrw92gpbd9q5ji6q8qrwqmzw2xw8yds8f0fd8aybkw8zz"
+   "commit": "b91f341d1b70175baf989f0c6eee6573bf781a27",
+   "sha256": "0svvh14zhym9ssc0dc7wyr1pw0rhiirn2s7a0xk43wl2r0c36cgj"
   },
   "stable": {
    "version": [
@@ -57782,8 +57798,8 @@
     "espotify",
     "ivy"
    ],
-   "commit": "5bf63dacc5df8a74860e80dabd16afce68a24a36",
-   "sha256": "1vxg86wv6f96bva0d1xxhisk525chwhdl4nq77xhriflq65mcmi3"
+   "commit": "5c1dcf0182135cda4191d4ba206fe2f265100293",
+   "sha256": "06wj2pixhjgqddl9g2wkv7cq9gz9yjb46cb1jrlbya3rdjyfb6h5"
   }
  },
  {
@@ -59134,14 +59150,14 @@
   "repo": "mooz/js2-mode",
   "unstable": {
    "version": [
-    20210906,
-    2337
+    20211105,
+    1214
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "a059c4105b374ce037b4cc0c942f9aed96508021",
-   "sha256": "0cghwxk43jzajb5f5l4904bl2p95bdcld2qc25r08a5d34jidvl1"
+   "commit": "d2636f95ebe4d423dc9b4311aff248c7688271c5",
+   "sha256": "1p293jhzsqzn4kljz1nl87jg1aq35jzqzs31ryfi8dn8iicwyd85"
   },
   "stable": {
    "version": [
@@ -59349,6 +59365,36 @@
   }
  },
  {
+  "ename": "json-par",
+  "commit": "db033df8bb4e12f8ba39accc42f285d8037268c5",
+  "sha256": "1d4jl6pllvsa5b132c9ygr5x5c7n49gz15w70fgdbkzm1gh17n7r",
+  "fetcher": "github",
+  "repo": "taku0/json-par",
+  "unstable": {
+   "version": [
+    20211106,
+    535
+   ],
+   "deps": [
+    "json-mode"
+   ],
+   "commit": "45902f2f36d4a90662caaaca6612b762ccb5b34e",
+   "sha256": "1p46pylidl035bhxv73867iw206ddriziplcv347rqj39drknlix"
+  },
+  "stable": {
+   "version": [
+    2,
+    0,
+    1
+   ],
+   "deps": [
+    "json-mode"
+   ],
+   "commit": "85a5288bea5c579b2bfdd7be16bdfc18a58b3a26",
+   "sha256": "0fbrgxd2n45smq7im6qas6nnzrxv3397rxp1snx7pk58vz4v980h"
+  }
+ },
+ {
   "ename": "json-process-client",
   "commit": "a681f977631344190e2a35d9ac2cbb9a42402272",
   "sha256": "0nf0lna15ymcn8wniz24ixxwr1qaznic9nym1q16ifwl72qryj79",
@@ -59653,8 +59699,8 @@
   "repo": "gcv/julia-snail",
   "unstable": {
    "version": [
-    20211103,
-    449
+    20211110,
+    1407
    ],
    "deps": [
     "dash",
@@ -59663,8 +59709,8 @@
     "spinner",
     "vterm"
    ],
-   "commit": "74aa827032e34f1d4202831008bcfa3c29b9f0c8",
-   "sha256": "03rmj7pj91bhg1kzqha9l5glnxgrjqmbsmblamrka4k22r09pcn6"
+   "commit": "55458e9c8fbeebb33ffeb291d40c529f2b006c8d",
+   "sha256": "0b9khsza4zfxdi03i5gx6s1g0f27qg71vmj4f4gcqkgdhfxxy4yb"
   },
   "stable": {
    "version": [
@@ -59844,8 +59890,8 @@
   "repo": "nnicandro/emacs-jupyter",
   "unstable": {
    "version": [
-    20210422,
-    1451
+    20211116,
+    150
    ],
    "deps": [
     "cl-lib",
@@ -59853,8 +59899,8 @@
     "websocket",
     "zmq"
    ],
-   "commit": "20e68a683632d4772780199216932223fa404aa7",
-   "sha256": "1ivq67cbkvb675sllrs1184a32agvh3c2i950vf017jjf1hab05k"
+   "commit": "f178c1c7b8d9a0c0b77e38dc03524db3d2c8288a",
+   "sha256": "1vmg6bq8w9aw5r9plnvslvhq1ykj5m5srz67qn9jbn54lx7qq08p"
   },
   "stable": {
    "version": [
@@ -60410,11 +60456,11 @@
   "repo": "conao3/keg.el",
   "unstable": {
    "version": [
-    20211104,
-    617
+    20211105,
+    316
    ],
-   "commit": "bf2457d128dca207b3fb00a2660eb662327f877b",
-   "sha256": "0yc24n8mvppxni3hbfwk1p5spxqswax90l2v0gwc9wf20djmkdfq"
+   "commit": "f0a719892aed5b1b4b644f1339d1ace99c656100",
+   "sha256": "0vk4fdkai0ssq31ycckkz4iwp35ip5d8lnyisv4m3b98jv3pb6k0"
   }
  },
  {
@@ -60428,8 +60474,8 @@
     20200601,
     333
    ],
-   "commit": "bf2457d128dca207b3fb00a2660eb662327f877b",
-   "sha256": "0yc24n8mvppxni3hbfwk1p5spxqswax90l2v0gwc9wf20djmkdfq"
+   "commit": "f0a719892aed5b1b4b644f1339d1ace99c656100",
+   "sha256": "0vk4fdkai0ssq31ycckkz4iwp35ip5d8lnyisv4m3b98jv3pb6k0"
   }
  },
  {
@@ -60888,20 +60934,20 @@
   "repo": "hperrey/khalel",
   "unstable": {
    "version": [
-    20211003,
-    1150
+    20211114,
+    1233
    ],
-   "commit": "c6f2adfd7211c747d443bf85618833820078ca4b",
-   "sha256": "0f76a9zr76azhb8rkzs24afscnx0sdypmha1z03cidn4mcz00sdb"
+   "commit": "313f74b17580c2a55f5c068e1bda17821b50c31e",
+   "sha256": "0m4448qvlh06n26l8l8hax4ir08mbai17mdi6inzvch7b09p0gpl"
   },
   "stable": {
    "version": [
     0,
     1,
-    5
+    6
    ],
-   "commit": "c6f2adfd7211c747d443bf85618833820078ca4b",
-   "sha256": "0f76a9zr76azhb8rkzs24afscnx0sdypmha1z03cidn4mcz00sdb"
+   "commit": "313f74b17580c2a55f5c068e1bda17821b50c31e",
+   "sha256": "0m4448qvlh06n26l8l8hax4ir08mbai17mdi6inzvch7b09p0gpl"
   }
  },
  {
@@ -61090,8 +61136,8 @@
     20210318,
     2106
    ],
-   "commit": "e8725996ac8cc8d533ba91f1e8325b74928d0b7d",
-   "sha256": "0px17zsy1dawgkm5zjbkg8j4zbsgiswkfcwrg1dxp0bf1b3my1j6"
+   "commit": "74057b9fcf7cbe3ec2f17c86e7a3da93b40e372b",
+   "sha256": "18n1xpcs8z7pmc2k35c343qsjai0rgyc1jgsc35j9z2xqzq6mpji"
   },
   "stable": {
    "version": [
@@ -61456,8 +61502,8 @@
   "repo": "kubernetes-el/kubernetes-el",
   "unstable": {
    "version": [
-    20211031,
-    133
+    20211114,
+    420
    ],
    "deps": [
     "dash",
@@ -61466,8 +61512,8 @@
     "transient",
     "with-editor"
    ],
-   "commit": "cfe2aff207d22af0be08835302a74bc52a30f69a",
-   "sha256": "1jfg73vam49rg4kw88mvh4arlf02w8vsgyxnqwr4f3112x3m1r76"
+   "commit": "4b740d88c6dcb091d701f74ddcf53e3732999ac9",
+   "sha256": "1l5rbgagdi6gfp8prj01pcgh4k3k90aijrrq5b8nkqppxiq85kh7"
   },
   "stable": {
    "version": [
@@ -61501,8 +61547,8 @@
     "evil",
     "kubernetes"
    ],
-   "commit": "cfe2aff207d22af0be08835302a74bc52a30f69a",
-   "sha256": "1jfg73vam49rg4kw88mvh4arlf02w8vsgyxnqwr4f3112x3m1r76"
+   "commit": "4b740d88c6dcb091d701f74ddcf53e3732999ac9",
+   "sha256": "1l5rbgagdi6gfp8prj01pcgh4k3k90aijrrq5b8nkqppxiq85kh7"
   },
   "stable": {
    "version": [
@@ -61777,16 +61823,16 @@
   "repo": "Deducteam/lambdapi",
   "unstable": {
    "version": [
-    20211029,
-    1658
+    20211116,
+    1414
    ],
    "deps": [
     "eglot",
     "highlight",
     "math-symbol-lists"
    ],
-   "commit": "6b453ab1f1fd0c48bb18ce077009e038c649cf04",
-   "sha256": "13bprd1vg4adr61hbcbih3p2yghlx4ygw5zi0vgcfr2r4lbpnn6k"
+   "commit": "dcb95cd0605cad14fe491903b40a13fad61e382d",
+   "sha256": "0lw9rydgfr6rf5579ac1jvz0449m52swhp0ad16wlxlrfi0k4iiw"
   }
  },
  {
@@ -62293,11 +62339,11 @@
   "repo": "conao3/leaf.el",
   "unstable": {
    "version": [
-    20211030,
-    621
+    20211115,
+    1551
    ],
-   "commit": "61365188be30c34c0e8b6f2004488e60a83dfcd6",
-   "sha256": "1fps4pmwhciksk21b9w7y6y827panf8xr80rk14fjsf2j2bpv841"
+   "commit": "7d8f768db5077bdb9f595cbf841018fc600ecf77",
+   "sha256": "15f0q4dlybqb3k17sgaj9vp42mgvrh72mqzs5sh49lxi000bdhkh"
   },
   "stable": {
    "version": [
@@ -62417,14 +62463,14 @@
   "repo": "conao3/leaf-tree.el",
   "unstable": {
    "version": [
-    20210503,
-    531
+    20211105,
+    19
    ],
    "deps": [
     "imenu-list"
    ],
-   "commit": "8126baf45c881fd4a692c2d74f9cc2eb15170401",
-   "sha256": "1vb5id0y9002yabkxijfi0l8vbibbd863kq4qk3gqax9dgbld481"
+   "commit": "89c3b8842df067bba67663d309f43aa311acdccd",
+   "sha256": "0him39wsl65nmml9as8gfrix707xjxwvjkwmrgxc9qfjwcxvbvsj"
   },
   "stable": {
    "version": [
@@ -62847,8 +62893,8 @@
     20210729,
     1808
    ],
-   "commit": "25c8d839cf78332c15b5762024ccb5f7c90b7a11",
-   "sha256": "14x4a6dw9ywzl16f4blg7bmb0rvvik5jjldilshjdxf4zpvy80fd"
+   "commit": "a49235c918d626f5053344604cb1c464960762af",
+   "sha256": "1b4k80bm2p7sqh33dx72qag7056nlxqv9s8czql2qfvi8vlnwzz0"
   }
  },
  {
@@ -63144,20 +63190,20 @@
   "repo": "ligolang/ligo",
   "unstable": {
    "version": [
-    20211011,
-    954
+    20211116,
+    1344
    ],
-   "commit": "faad1b26fd53121bd65e938ad4a4e78281712bde",
-   "sha256": "0bm2hxk2fhr11q2v45issa268snz0mxjhyc3ik2w8kg12faz936g"
+   "commit": "f5d298df9bb9acf9a1fc734c75a8f033f3eae3e5",
+   "sha256": "1lg6r78f7c4d4dzkpv3260p9j32f7rc51v4c5bajkblq379yn98r"
   },
   "stable": {
    "version": [
     0,
-    28,
+    29,
     0
    ],
-   "commit": "16fee65109043bc5d899c5f34dd10354bd087615",
-   "sha256": "0bm2hxk2fhr11q2v45issa268snz0mxjhyc3ik2w8kg12faz936g"
+   "commit": "e1bcb971b9f964bc927c9d12fcf377a1878c459f",
+   "sha256": "1lg6r78f7c4d4dzkpv3260p9j32f7rc51v4c5bajkblq379yn98r"
   }
  },
  {
@@ -63168,16 +63214,16 @@
   "repo": "emacs-vs/line-reminder",
   "unstable": {
    "version": [
-    20211025,
-    1745
+    20211116,
+    614
    ],
    "deps": [
     "fringe-helper",
     "ht",
     "indicators"
    ],
-   "commit": "593bbe1277651e1281807f84e46a4e9a75ced784",
-   "sha256": "1r8dkbca9abjs5g949hqkn54ggd2wmgl60h10jx8y9s6c07g14hq"
+   "commit": "41783a2ecd76c2d02ad87295bb8719eda1ee4ed3",
+   "sha256": "1v8x2kf0w5vwl4myiwraq5b1nyfx0b0fgwpzvb9bnjjdj2nsk36p"
   },
   "stable": {
    "version": [
@@ -63694,20 +63740,20 @@
   "repo": "publicimageltd/lister",
   "unstable": {
    "version": [
-    20211028,
-    1659
+    20211106,
+    2151
    ],
-   "commit": "22df7ad4a7cccd5e5861a37127263317ef6bea2a",
-   "sha256": "07im7gnrn8n8hsaf7zyfj7h1r5ig0bw7p0g26sicgwgbhfnz22y9"
+   "commit": "5ae4f8bcfad02eee81a18c15c921637bb4269c13",
+   "sha256": "04lxz74v8axkn0ahgaan0bxkxyxcfp7ny2kxx9sxm0yg77c26gzl"
   },
   "stable": {
    "version": [
     0,
     9,
-    1
+    3
    ],
-   "commit": "4c442c18ed5e4865393e72ffff16de9919b54456",
-   "sha256": "07h55vsfmpf4r1dggjn4a0xxpxahbj1amyfywbf21wx59p17aja8"
+   "commit": "f9271f641f82cca9cdf8dd5737dc6dcf77aa5a1d",
+   "sha256": "1mmph8q1ff3bvsfggff74k7zadn020imyj63p1g1swp5a3bs6yyq"
   }
  },
  {
@@ -63982,20 +64028,20 @@
   "repo": "donkirkby/live-py-plugin",
   "unstable": {
    "version": [
-    20211102,
-    152
+    20211112,
+    1745
    ],
-   "commit": "bd933c7351751eecc0f988166e983a9e478531be",
-   "sha256": "1apdjil570i9kjl4hm952cp5rjh68vhi23a1mq1d0vna4sc6pzl1"
+   "commit": "61e043c705dc8804ee7c6f78ed3f374b325d5917",
+   "sha256": "0hj36x4aall7phvd9mi58scmzr42xc0zzs8jh16nq3i2xd8p0rqd"
   },
   "stable": {
    "version": [
     4,
-    4,
+    5,
     0
    ],
-   "commit": "26d51013e75ddedd5eb8600a0a3dd035319f9d3f",
-   "sha256": "10p4ijx4l56ikb10416bmdwfxbcyqfa29kk1nf48gibxyvdlwdby"
+   "commit": "660dd193cdb51979145a548f495ab02917bc4613",
+   "sha256": "10qcggakqv4fm96mjz72x7rrvgphizdnd4n03gm3hhvc2yw3qma9"
   }
  },
  {
@@ -64736,8 +64782,8 @@
   "repo": "emacs-lsp/lsp-dart",
   "unstable": {
    "version": [
-    20211009,
-    2036
+    20211113,
+    1440
    ],
    "deps": [
     "dap-mode",
@@ -64747,8 +64793,8 @@
     "lsp-mode",
     "lsp-treemacs"
    ],
-   "commit": "e2f4ee0d3a88956afdd8515a055678b06f947bf0",
-   "sha256": "0ma0q36q7i0bxbxx525h8s0y0p63pc1hnc5bidbdykrp3hlxw50c"
+   "commit": "9c3ba0a27e8ad3b7fa16c553d8a1815db82b8638",
+   "sha256": "13f6a9fkhasdzh4y5rix8j151csj1x6y2qlld6lvbxgpln19zwz2"
   },
   "stable": {
    "version": [
@@ -64935,8 +64981,8 @@
   "repo": "emacs-lsp/lsp-java",
   "unstable": {
    "version": [
-    20211017,
-    1826
+    20211114,
+    1305
    ],
    "deps": [
     "dap-mode",
@@ -64948,8 +64994,8 @@
     "request",
     "treemacs"
    ],
-   "commit": "2b789750b272c85e838b9fc4e3d4f1d2eff34b5b",
-   "sha256": "1sqv15mbv9f6pw995jrmw3wqr16pkrkm83vgabc0wi7j3dkz1cx7"
+   "commit": "3246272b43659ce3020e6f47cd3eea17432b389a",
+   "sha256": "0kz2bhnijar7dkyqydfq66xp8isf90paaqy0kwzjrb9ss0bglsba"
   },
   "stable": {
    "version": [
@@ -65124,8 +65170,8 @@
   "repo": "emacs-lsp/lsp-metals",
   "unstable": {
    "version": [
-    20210914,
-    1821
+    20211112,
+    1442
    ],
    "deps": [
     "dap-mode",
@@ -65137,8 +65183,8 @@
     "scala-mode",
     "treemacs"
    ],
-   "commit": "695291761b2a3db734c3f53bb7fc4acfe0a5eb94",
-   "sha256": "0kg51yjrjrmsz78aj3ahbk2knrn8ccz4ccs894p8li6vz3gxm2fh"
+   "commit": "38dda2c22db66547d99e3cfa6b7e76c42e7c6b5a",
+   "sha256": "0p2pz6272h2rbb1si9psb4rh92mahlcr58slkm2mwqjwwbi5hfjl"
   },
   "stable": {
    "version": [
@@ -65168,8 +65214,8 @@
   "repo": "emacs-lsp/lsp-mode",
   "unstable": {
    "version": [
-    20211103,
-    1331
+    20211115,
+    807
    ],
    "deps": [
     "dash",
@@ -65179,8 +65225,8 @@
     "markdown-mode",
     "spinner"
    ],
-   "commit": "293a43819a96eb94b90bc14b6cb11ebfd090e8c8",
-   "sha256": "0rd3nh9wslp753cm5xypp9h8x2p7a5s7v6gkdqfs80fzdiy8ny3m"
+   "commit": "a7effcc79114e91e74f06ef3a7e078bafba05c2a",
+   "sha256": "09kjprvbdcv6h27fi24bfg0yl37djmfkic3a3ymfzl2r52gfkchv"
   },
   "stable": {
    "version": [
@@ -65448,14 +65494,14 @@
   "repo": "merrickluo/lsp-tailwindcss",
   "unstable": {
    "version": [
-    20211003,
-    305
+    20211117,
+    321
    ],
    "deps": [
     "lsp-mode"
    ],
-   "commit": "8b45d5ab6ad41f881ef52983d6906193736e6f41",
-   "sha256": "07ggss18zvmxv7r2x3m5x07c994sjwq0bfjjq50j7kfnd53bmb4h"
+   "commit": "bee8bf1f6707362ace02563b4dfc481e7452f936",
+   "sha256": "0rvwp8859p0byypy83mw42akjvv54ifx0gd3f4vb9vvp879rmsfi"
   },
   "stable": {
    "version": [
@@ -66034,8 +66080,8 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20211101,
-    1824
+    20211115,
+    1701
    ],
    "deps": [
     "dash",
@@ -66044,8 +66090,8 @@
     "transient",
     "with-editor"
    ],
-   "commit": "2bd1d823ddebb0cfef31a3338916aaef9ae01660",
-   "sha256": "1d3hhsb7r7ch3q6azchvpjf885mfnqx6xg5wl3iqbyhhr0i8q7vj"
+   "commit": "9413847c1a085899d8de6f8d978bd7265f65e5d8",
+   "sha256": "0b39813iyxgq0ai6hz4hpf9f4wix1lhcp6z5p1cm6y6hd8dyg486"
   },
   "stable": {
    "version": [
@@ -66410,8 +66456,8 @@
     "libgit",
     "magit"
    ],
-   "commit": "2bd1d823ddebb0cfef31a3338916aaef9ae01660",
-   "sha256": "1d3hhsb7r7ch3q6azchvpjf885mfnqx6xg5wl3iqbyhhr0i8q7vj"
+   "commit": "9413847c1a085899d8de6f8d978bd7265f65e5d8",
+   "sha256": "0b39813iyxgq0ai6hz4hpf9f4wix1lhcp6z5p1cm6y6hd8dyg486"
   },
   "stable": {
    "version": [
@@ -66578,8 +66624,8 @@
    "deps": [
     "dash"
    ],
-   "commit": "2bd1d823ddebb0cfef31a3338916aaef9ae01660",
-   "sha256": "1d3hhsb7r7ch3q6azchvpjf885mfnqx6xg5wl3iqbyhhr0i8q7vj"
+   "commit": "9413847c1a085899d8de6f8d978bd7265f65e5d8",
+   "sha256": "0b39813iyxgq0ai6hz4hpf9f4wix1lhcp6z5p1cm6y6hd8dyg486"
   },
   "stable": {
    "version": [
@@ -67374,11 +67420,11 @@
   "repo": "minad/marginalia",
   "unstable": {
    "version": [
-    20211028,
-    1244
+    20211114,
+    1401
    ],
-   "commit": "09d8ab38a5a4aa55a83968dc3e454d11fee05255",
-   "sha256": "140hbxyb7z09vp0f0h5fad4jiyfz4s34nnhgrw3vpm1whspq7ng8"
+   "commit": "8b24ffc91222f8a61f8f2aa3c3662198c7d74de9",
+   "sha256": "0kpa0h53jk01x786s8lw7ibcrb78h9ndah9i7lvr6jx0r6v30vkq"
   },
   "stable": {
    "version": [
@@ -68410,16 +68456,16 @@
   "repo": "meow-edit/meow",
   "unstable": {
    "version": [
-    20211104,
-    807
+    20211116,
+    1952
    ],
    "deps": [
     "cl-lib",
     "dash",
     "s"
    ],
-   "commit": "95a9df3e469355cb867724d1dd1139ec4e21540d",
-   "sha256": "0s231294mgf951y5swqr3hrh1q48ip5p8w4vvj3kqjsq15n0lw3s"
+   "commit": "f1c81c35141e6c669a36b5ebcc04ead8cf7d7364",
+   "sha256": "1353qfvind0xwdl7ig2hb36236bdfv242kij5lwy7z6kqg1d6z0s"
   }
  },
  {
@@ -68433,8 +68479,8 @@
     20210720,
     950
    ],
-   "commit": "27600243558e2596a6bbdc52540389c298488adb",
-   "sha256": "0fn66n8ln0xc4l25l48yshzrmyy7sf7ik9nqpfhhpzslcf249h39"
+   "commit": "a5c440c12758a7dd7d698b843e05aa4eb6d4e721",
+   "sha256": "1czqd9g6f346a96klrsb31xscy23r2ix6xfx9ks6h0fkxyw7prqa"
   },
   "stable": {
    "version": [
@@ -68463,8 +68509,8 @@
     "auto-complete",
     "merlin"
    ],
-   "commit": "27600243558e2596a6bbdc52540389c298488adb",
-   "sha256": "0fn66n8ln0xc4l25l48yshzrmyy7sf7ik9nqpfhhpzslcf249h39"
+   "commit": "a5c440c12758a7dd7d698b843e05aa4eb6d4e721",
+   "sha256": "1czqd9g6f346a96klrsb31xscy23r2ix6xfx9ks6h0fkxyw7prqa"
   },
   "stable": {
    "version": [
@@ -68497,8 +68543,8 @@
     "company",
     "merlin"
    ],
-   "commit": "27600243558e2596a6bbdc52540389c298488adb",
-   "sha256": "0fn66n8ln0xc4l25l48yshzrmyy7sf7ik9nqpfhhpzslcf249h39"
+   "commit": "a5c440c12758a7dd7d698b843e05aa4eb6d4e721",
+   "sha256": "1czqd9g6f346a96klrsb31xscy23r2ix6xfx9ks6h0fkxyw7prqa"
   },
   "stable": {
    "version": [
@@ -68560,8 +68606,8 @@
     "iedit",
     "merlin"
    ],
-   "commit": "27600243558e2596a6bbdc52540389c298488adb",
-   "sha256": "0fn66n8ln0xc4l25l48yshzrmyy7sf7ik9nqpfhhpzslcf249h39"
+   "commit": "a5c440c12758a7dd7d698b843e05aa4eb6d4e721",
+   "sha256": "1czqd9g6f346a96klrsb31xscy23r2ix6xfx9ks6h0fkxyw7prqa"
   },
   "stable": {
    "version": [
@@ -68918,8 +68964,8 @@
     20210131,
     2152
    ],
-   "commit": "5927a54208996cbb7b435fe89bb65ac8beb61bb6",
-   "sha256": "1dhz1yfy3gbmpf4nrys11166wzylv5vl1sg1sncwgq67r8zf729x"
+   "commit": "0652273fe1bfbeb165715613e00583b96ed07c2d",
+   "sha256": "1qr1zg0ppl6xlg91a21j4dlbysglwyjs8x139b2gyf95xlfkxpkw"
   },
   "stable": {
    "version": [
@@ -69321,20 +69367,20 @@
   "repo": "tarsius/minions",
   "unstable": {
    "version": [
-    20211022,
-    2311
+    20211110,
+    142
    ],
-   "commit": "3cc45f82cb50a4c895fe5df2ed69e07481ea131b",
-   "sha256": "0pl0lyzwb2ngqbh6kkx4kr6im19kqmnkpybss353947vl2njlbd6"
+   "commit": "fca3ba548dccc6e553affca8068c9aecb6a9a789",
+   "sha256": "1bzxxs8mxaihpjkbxgynhsi39lbbnij28grdc3sk9sq09j9752vw"
   },
   "stable": {
    "version": [
     0,
     3,
-    6
+    7
    ],
-   "commit": "1be68e8571336672d6cbec86246d1bf7844976be",
-   "sha256": "0lg704kwc851spp69745np8hsk0h6rl2hvfpid0j412278ds1qi8"
+   "commit": "fca3ba548dccc6e553affca8068c9aecb6a9a789",
+   "sha256": "1bzxxs8mxaihpjkbxgynhsi39lbbnij28grdc3sk9sq09j9752vw"
   }
  },
  {
@@ -69435,11 +69481,11 @@
   "repo": "hlissner/emacs-mips-mode",
   "unstable": {
    "version": [
-    20180502,
-    1457
+    20211114,
+    1645
    ],
-   "commit": "75152fc78baa762af4f83602f6cb3c8b9bcebca3",
-   "sha256": "1bk1jfqwwrq3jr6zasyjaz16rjjqbihrn7kakgfk3szv6grvsd7p"
+   "commit": "5676174bea9a5780ddd33d2d8111b8678dfa4e99",
+   "sha256": "0nlxhchcy3swmyfzdd8qmdzq05a4lzlgs1psnsvfjbbi9w8g8w5v"
   },
   "stable": {
    "version": [
@@ -69982,11 +70028,11 @@
   "repo": "protesilaos/modus-themes",
   "unstable": {
    "version": [
-    20211104,
-    736
+    20211114,
+    1209
    ],
-   "commit": "ef234d41fd2d45f32e7c40e6f334231916c9dad9",
-   "sha256": "068im2wq70rfac8l1a6542ishjay3apgx4hqga22x5bvb4kq6351"
+   "commit": "a70c6d0f752859c6de2c175dd9b71a66bf28ed97",
+   "sha256": "05l919641qn2dm6b328i6ymb2xgc42jbvpdvnwypi9brydnz7zm9"
   },
   "stable": {
    "version": [
@@ -70242,11 +70288,11 @@
   "repo": "caffo/monotropic-theme",
   "unstable": {
    "version": [
-    20181015,
-    1230
+    20211116,
+    1328
    ],
-   "commit": "36df566aa8225e303f6c9d90c00740dd678a415e",
-   "sha256": "05n8s3719f6yrh4fi5xyzzlhpsgpbc60mmfmzycxlb4sinq9bfks"
+   "commit": "f32a04b5bfee9cbcce4b223f17228d1142a28211",
+   "sha256": "0kfgj6h3jvivbssh27fi4nyqfqrbj6das79i6syywwqf200h29rl"
   }
  },
  {
@@ -70617,8 +70663,8 @@
     20210306,
     1053
    ],
-   "commit": "5e7fdb7551b1928d09eaf2114f19601458bc6c31",
-   "sha256": "1jab8w5mbh4x0kc8sfidd29609d2m9m06mv03fh4q6wip4rfkl24"
+   "commit": "3dc692847d53e209ef9010791c3ab5ac06fd979b",
+   "sha256": "0pcf2vnq38jdnsg8vz92pqsx7qd0r9x8jv5kfqk9br153vsh6xgd"
   },
   "stable": {
    "version": [
@@ -71298,14 +71344,14 @@
   "repo": "ReanGD/emacs-multi-compile",
   "unstable": {
    "version": [
-    20211027,
-    1954
+    20211113,
+    2119
    ],
    "deps": [
     "dash"
    ],
-   "commit": "3f936abeb3e910cd6221f99ced30004b41bd9ffa",
-   "sha256": "0hk0mxwza04vqxmr4c8z5l1mbwy3kmffkn7mw75k005fl9apj56x"
+   "commit": "360e44b200d07da379c906856d37613d0f06a9ae",
+   "sha256": "0z2b26qr712j4745wlnqisc53fhh2gh088j6024b00n006fr1lzq"
   }
  },
  {
@@ -71491,14 +71537,14 @@
   "repo": "magnars/multiple-cursors.el",
   "unstable": {
    "version": [
-    20210323,
-    1128
+    20211112,
+    2223
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "588daf8c520f4545323e36b8900f02693ddcf5d3",
-   "sha256": "0yinp3148sa72ckmaycgfy7sw3pccz6h5bl7kiz5j54hfk66hsxk"
+   "commit": "8a60fc7ef0ae6e5ca089a7c95264cd0ae83e7274",
+   "sha256": "14yayh8hmv00f27kgz5y57z035ccv94cmsgqpyl15p1vnwiq2if3"
   },
   "stable": {
    "version": [
@@ -72992,11 +73038,11 @@
   "repo": "m-cat/nimbus-theme",
   "unstable": {
    "version": [
-    20211014,
-    1848
+    20211115,
+    430
    ],
-   "commit": "b9e383b4fcc7a3232f9943aed29586a760602a1d",
-   "sha256": "1kmcpndqh4072nkkji2vxd2br0wyp4ih3b7r4rx90mrimpdvcbrm"
+   "commit": "fe8ebe24cecb0181f49446de0a0faf3cd7630747",
+   "sha256": "1c7y0b880572sxjqqsqf521yhb1jfhl4i7sm4nfysa85bnn6k5n2"
   }
  },
  {
@@ -73010,8 +73056,8 @@
     20181024,
     1439
    ],
-   "commit": "0cd88287a4cd77d11c92c7a9b44bb15fb787a1ee",
-   "sha256": "0c93b83zc1x22bq04fnka497qi0v4bs57nvsz9gbanqxng4b4gf7"
+   "commit": "e5935b63757f3a788bc56d2c7afd9e390daf2f07",
+   "sha256": "0arrxdpf4mcbr3mhl5955xiyw8772r571hvamacdln3cz044lr3p"
   },
   "stable": {
    "version": [
@@ -73109,14 +73155,14 @@
   "repo": "NixOS/nix-mode",
   "unstable": {
    "version": [
-    20211019,
-    1523
+    20211109,
+    1805
    ],
    "deps": [
     "magit-section"
    ],
-   "commit": "1ac42cd103ba11c37e8566e240a2272966e6f813",
-   "sha256": "11s98jjqkk7pfmqb4a99ilvp6w3m8vqr1df65lpwjirlyf2lvw2y"
+   "commit": "e7bf2e4cc49e7a12265714dfaf5e286bfbc1e87f",
+   "sha256": "0ym70i1jndm12av9jzq5qq3vr2d5cjh5q95vq22whiah0svbbpxy"
   },
   "stable": {
    "version": [
@@ -73241,15 +73287,15 @@
   "repo": "hlissner/emacs-nlinum-hl",
   "unstable": {
    "version": [
-    20190301,
-    2117
+    20211112,
+    1241
    ],
    "deps": [
     "cl-lib",
     "nlinum"
    ],
-   "commit": "dc6b365a58e06c7d637a76a31c71a40b20da8b56",
-   "sha256": "1fvvyc77iggil9mzy8hd4vx8xw96bkfx6pmlb9ami428qp8r45g7"
+   "commit": "22f8d75ecdaab67e0d6d0d2da4766358456ca4f5",
+   "sha256": "18gpanlv7cfjzbd952a987ac3i9wn5ss7myvxz798al3jrivv9dv"
   },
   "stable": {
    "version": [
@@ -73347,8 +73393,8 @@
   "repo": "dickmao/nnreddit",
   "unstable": {
    "version": [
-    20210912,
-    236
+    20211116,
+    1718
    ],
    "deps": [
     "anaphora",
@@ -73358,8 +73404,8 @@
     "s",
     "virtualenvwrapper"
    ],
-   "commit": "cb22a8480e9688f16f3764953cebebe64df31ccf",
-   "sha256": "0qpy3xymzryncbiz4cay4bzmmarbs575dgh3db2iibaffwb4qb0x"
+   "commit": "7347ad1f3db7351c2e7f9a06d2ca8873130dbbfb",
+   "sha256": "178sq7rsghqhmhjdxixrybls00g7mp6wbmsx9lzg8c0ywpr9n332"
   }
  },
  {
@@ -73405,14 +73451,14 @@
   "repo": "emacscollective/no-littering",
   "unstable": {
    "version": [
-    20211103,
-    1646
+    20211110,
+    1900
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "3a30eb7aa7db56072652c43b1b27595ff8c52a32",
-   "sha256": "0xgz2hsiy1z0vv69xkls2mbqw6361sqb8vp9ljbyrx42616ziq28"
+   "commit": "4a7bcaf077d049931120255edf476f34ced8c73d",
+   "sha256": "0p8jm5fms4krij7ydhrj2jwayyx6979bdq2w7v88ybk6b0md9yw1"
   },
   "stable": {
    "version": [
@@ -73710,11 +73756,11 @@
   "repo": "MetroWind/notink-theme",
   "unstable": {
    "version": [
-    20210816,
-    2337
+    20211109,
+    2122
    ],
-   "commit": "ede878ee06d4f94b5819ed3ccffe121823fbcf44",
-   "sha256": "0iyxdbdgv1d3hflndfrbp3zbafa2zn3kpwj2lp32rm9sh3bcp79c"
+   "commit": "fa26294a43431ac7b42931c44c10e22813fe1ce3",
+   "sha256": "0wnkjncgdhak3j34b3rmnz0n06f4yx35khajjzlzyh91j2f14j6m"
   }
  },
  {
@@ -73728,8 +73774,8 @@
     20211030,
     1819
    ],
-   "commit": "78416a3e97fd19df5c89cdaf564c76be0edea740",
-   "sha256": "1m8x5q9q1q5lzfjjxvyqvm36wh7s0csr38hb3qidy75jg707p0py"
+   "commit": "fc3c79dd37d4bae938a5d0a1d7773bea48dd09b4",
+   "sha256": "02bv1fvbww9gk3phpd7ifzxfzjxm17k7ssd3ddizr6yvmkpsz7h0"
   },
   "stable": {
    "version": [
@@ -74066,37 +74112,6 @@
   }
  },
  {
-  "ename": "nroam",
-  "commit": "55bc37011ae1754549b910be84fa25ca28a8e6fe",
-  "sha256": "0g6d4nhj08hr6b6aiy1mlszz1k90vk3bw4kgnwzxmlmv43qxbcx4",
-  "fetcher": "github",
-  "repo": "NicolasPetton/nroam",
-  "unstable": {
-   "version": [
-    20210325,
-    2015
-   ],
-   "deps": [
-    "org",
-    "org-roam"
-   ],
-   "commit": "9a76f16d3fdd49a1733e5f2777036f1f83068a40",
-   "sha256": "1lf56iq7iy545q8pcq4scvk8ialkw8nxc7gn97jyihpkxfhq7fi3"
-  },
-  "stable": {
-   "version": [
-    0,
-    9,
-    0
-   ],
-   "deps": [
-    "org-roam"
-   ],
-   "commit": "c150603a25445d65b7b08d658793a6019fd763ea",
-   "sha256": "0qip0vhyvif5az7zph1m41gwamz84v01ay9qzicydzbizhzp4n5i"
-  }
- },
- {
   "ename": "ns-auto-titlebar",
   "commit": "d22ebb5ef16df0c56d6031cb1c7f312dca514482",
   "sha256": "1wk4y2jwl65z18cv57m8zkcg31wp9by74z2zvccxzl7mwlhy7kqg",
@@ -74532,8 +74547,8 @@
    "deps": [
     "axiom-environment"
    ],
-   "commit": "7d72e6319b98b334f74b78f3d4151e92fb7dcbad",
-   "sha256": "1hwcndb1x3i51l0kvzk4mj6sil8h10mxmazic9zvwjhia9qz9hz3"
+   "commit": "3266c5b2e4865337da86043b53a4e6609dbc8308",
+   "sha256": "11k53vvw5df66f54mh3zkghspmi7zsgls3mlkfvl19hz2z1pyhwq"
   }
  },
  {
@@ -75005,8 +75020,8 @@
    "deps": [
     "julia-vterm"
    ],
-   "commit": "3e7ff901687c320869c5e17e3273185af68e8cd6",
-   "sha256": "0i155p3k2xf0p00xazqjw4llylb13svgad9a9m6as6lcvrvc0zsp"
+   "commit": "e04ee53d67cbd715c2d84fe5bc367526edfadc74",
+   "sha256": "18866agjrkx2gv38zr14mhf3rlvjdjvn3i8hxg12lrbv6q4rn8aq"
   },
   "stable": {
    "version": [
@@ -75174,6 +75189,24 @@
   }
  },
  {
+  "ename": "ob-php",
+  "commit": "a3ac7a1d9390785abbd006956846d4f67f89dd9f",
+  "sha256": "0n6m6rpd0rsk6idhxs9qf5pb6p9ch2immczj5br7h5xf1bc7x2fp",
+  "fetcher": "github",
+  "repo": "stardiviner/ob-php",
+  "unstable": {
+   "version": [
+    20211109,
+    146
+   ],
+   "deps": [
+    "org"
+   ],
+   "commit": "3699808eb1ba56268ccc2e366151183e91e8c711",
+   "sha256": "0m0qgssa0rxh7apcxr7lz0wi5vsrgnsysjw0zj2mk6fz1drg02dw"
+  }
+ },
+ {
   "ename": "ob-prolog",
   "commit": "fb87868cd74325f0a4a38c5542c264501000951d",
   "sha256": "0ki8yd20yk5xwn0zpk06zjxzgrsf8paydif9n98svb9s2l9wrh1s",
@@ -75198,6 +75231,24 @@
   }
  },
  {
+  "ename": "ob-redis",
+  "commit": "a3ac7a1d9390785abbd006956846d4f67f89dd9f",
+  "sha256": "1xsz4cc8cqx03ckpcwi7dc3l6v4c5mdbby37a9i0n5q6wd4r92mm",
+  "fetcher": "github",
+  "repo": "stardiviner/ob-redis",
+  "unstable": {
+   "version": [
+    20210527,
+    1336
+   ],
+   "deps": [
+    "org"
+   ],
+   "commit": "ad31bf482a081b9c595a02ee6053c1426e3d8faf",
+   "sha256": "1w8wbiwzi8b3gm376yyynvc833skkvgylmrn803pnqsa1ij77jni"
+  }
+ },
+ {
   "ename": "ob-restclient",
   "commit": "28c1d3af3f8b2f598b80b03b64de5d15cbb3f13d",
   "sha256": "0nv2wsqmpschym6ch8fr4a79hlnpz31jc8y2flsygaqj0annjkfk",
@@ -75280,6 +75331,25 @@
   }
  },
  {
+  "ename": "ob-smiles",
+  "commit": "a3ac7a1d9390785abbd006956846d4f67f89dd9f",
+  "sha256": "0d07ph6mlbcwmw0rd18yfd35bx9w3f5mb3nifczjg7xwlm8gd7jb",
+  "fetcher": "github",
+  "repo": "stardiviner/ob-smiles",
+  "unstable": {
+   "version": [
+    20210527,
+    1401
+   ],
+   "deps": [
+    "org",
+    "smiles-mode"
+   ],
+   "commit": "9f1fed213eb194924ab7d12b9d6e1074578a791c",
+   "sha256": "1x0rq9l9j3khp47q2j9bnyhhj2xrs4zggw9p8rmmai165drh1i9r"
+  }
+ },
+ {
   "ename": "ob-sml",
   "commit": "d1b0fbe1198fa624771c2f61249db502de57942a",
   "sha256": "04qvzhwjr8ipvq3znnhn0wbl4pbb1rwxi90iidavzk3phbkpaskn",
@@ -75309,6 +75379,38 @@
   }
  },
  {
+  "ename": "ob-spice",
+  "commit": "a3ac7a1d9390785abbd006956846d4f67f89dd9f",
+  "sha256": "0nhdcvq7yvprz4323836k507w0g1lh3rdfr6dqrbj29yvsqfw0x2",
+  "fetcher": "github",
+  "repo": "stardiviner/ob-spice",
+  "unstable": {
+   "version": [
+    20210527,
+    1355
+   ],
+   "deps": [
+    "org",
+    "spice-mode"
+   ],
+   "commit": "3c77144ecb059411441730bb47f6d5892b62d13d",
+   "sha256": "00cnym62hp0masikr3ndk2a0mpafjw0cjx0xavcq486w2xi7r8rm"
+  },
+  "stable": {
+   "version": [
+    0,
+    4,
+    2
+   ],
+   "deps": [
+    "org",
+    "spice-mode"
+   ],
+   "commit": "790faa67b0c57ca76e8814a1fa60b4dd774412c0",
+   "sha256": "0rn3j88ry38500vfaj0myx148nd5kh1jwja6j221ydd6v5wqws6d"
+  }
+ },
+ {
   "ename": "ob-sql-mode",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "143agagkmwqwdqc0mbdsqp6v02y12q437v4x6dlh81yihif56rdk",
@@ -75605,8 +75707,8 @@
     20210923,
     1348
    ],
-   "commit": "54f41596355394cd0ce08435c21c3cc3d1f7eda3",
-   "sha256": "15f3ix73jjw41jcvnz70lgyrm0bh3287i1rcnl5x95wk0czkmhnj"
+   "commit": "f2f50d6fb0371b85bde2eda15c440b68d46059ac",
+   "sha256": "01ac3k1kq6hy2n332775jlh2rg1pmqs8gvkx4qskxmpga87753m7"
   },
   "stable": {
    "version": [
@@ -76708,26 +76810,30 @@
   "repo": "eyeinsky/org-anki",
   "unstable": {
    "version": [
-    20210816,
-    2047
+    20211108,
+    751
    ],
    "deps": [
+    "dash",
+    "promise",
     "request"
    ],
-   "commit": "4e70c6869181f020c6989f91f5e916e085ba73df",
-   "sha256": "12iwllz9mbcv7q652v4bc1wkaml065wr7gvqm08kjds8hmc6f1pl"
+   "commit": "e6221b1654d34bc3a06500ae4706419bc176b575",
+   "sha256": "1xnqih87sipqd6q5cvgvw2mpn5m4j605bxhlbmpr4kzhni9vd9sh"
   },
   "stable": {
    "version": [
     0,
     0,
-    6
+    7
    ],
    "deps": [
+    "dash",
+    "promise",
     "request"
    ],
-   "commit": "c86394d5fd8933d1b6cafbc1dbc36bf61bcc871e",
-   "sha256": "0jg00hw5k6n7jf19vz1gf9599ad7skm399ng115hpywhas9ly01i"
+   "commit": "e6221b1654d34bc3a06500ae4706419bc176b575",
+   "sha256": "1xnqih87sipqd6q5cvgvw2mpn5m4j605bxhlbmpr4kzhni9vd9sh"
   }
  },
  {
@@ -76806,14 +76912,14 @@
   "repo": "yilkalargaw/org-auto-tangle",
   "unstable": {
    "version": [
-    20211010,
-    958
+    20211115,
+    543
    ],
    "deps": [
     "async"
    ],
-   "commit": "50292af50d275846baa28e52d94eb8ef69c8d00b",
-   "sha256": "0n0divfnk4635aanjm0b3swdjkcj4qxr0x95q05pdlb67s6lfp5d"
+   "commit": "ad3c332f062b5830e88b2ab13287a096ae434657",
+   "sha256": "05yrw59zrzxj1p8n65sk6mvy7jzik812mp9i2nsimwhlhn3si1pj"
   },
   "stable": {
    "version": [
@@ -77956,16 +78062,16 @@
   "repo": "marcIhm/org-index",
   "unstable": {
    "version": [
-    20211029,
-    1604
+    20211110,
+    1423
    ],
    "deps": [
     "dash",
     "org",
     "s"
    ],
-   "commit": "450dbacacfc0828e40a76a48a5933db60ec7d197",
-   "sha256": "1aqn97lqisa4v48pg3zs877ws9cqivby7mrzqacr7n29q44kvmmn"
+   "commit": "399020d435d296014f92fa5f632d7481ee002661",
+   "sha256": "01q8w49dh9fpr2sc70p92cxjm66fnrrgnk4ba321aq9dlfmly2zg"
   },
   "stable": {
    "version": [
@@ -77983,6 +78089,35 @@
   }
  },
  {
+  "ename": "org-inline-anim",
+  "commit": "340b9cfda110987a9306cc579dc7c2b53eeb605e",
+  "sha256": "1z245pws6y6z0gw7zwnljllg03jn2payv95fnriswymb86cdsdj0",
+  "fetcher": "github",
+  "repo": "shg/org-inline-anim.el",
+  "unstable": {
+   "version": [
+    20211101,
+    413
+   ],
+   "deps": [
+    "org"
+   ],
+   "commit": "ea7feb924c991f3a2cdc4a70fb176eaceae87938",
+   "sha256": "1ai7zgx4sr7lzxnbkgj0dzd326dj18dzf0nqm12bza7bqbnck2dv"
+  },
+  "stable": {
+   "version": [
+    0,
+    2
+   ],
+   "deps": [
+    "org"
+   ],
+   "commit": "1808574ff04ed66b7382247f3f13815fae2a4929",
+   "sha256": "1h1ha5njzv2ibp11dbka8lqx6d3q4hqjz11vzi4yi4x4ksiczqrc"
+  }
+ },
+ {
   "ename": "org-inline-pdf",
   "commit": "d069aa75232fff5d8b5db485f037191181d8c4b6",
   "sha256": "00f8gd34lsp96j20s6sax4hjwqsnrz4647xdchzxav7cpqjmky8m",
@@ -78039,16 +78174,16 @@
   "repo": "ahungry/org-jira",
   "unstable": {
    "version": [
-    20211002,
-    344
+    20211114,
+    1616
    ],
    "deps": [
     "cl-lib",
     "dash",
     "request"
    ],
-   "commit": "24f2d83bc2f6a2b88b084090f877814e36dcf4da",
-   "sha256": "0f5bij9gvgv8954v80xymvgnwf2ayxg7q4khmfd2djc5sbhj9ch3"
+   "commit": "01e6a7c17e210dac0608154dd69d637e9733498d",
+   "sha256": "19nljq73gnhjk7zz8y5wgap8j41jd7zifjcmfddrj27kmprw2h5z"
   },
   "stable": {
    "version": [
@@ -79341,8 +79476,8 @@
   "repo": "jkitchin/org-ref",
   "unstable": {
    "version": [
-    20211103,
-    1318
+    20211110,
+    1229
    ],
    "deps": [
     "avy",
@@ -79355,8 +79490,8 @@
     "parsebib",
     "s"
    ],
-   "commit": "4a465be9f8a4093a4afa22abc77a2012624f5e90",
-   "sha256": "16pnx1j1zg90yawsw29nxqq97sjigc9vmaxgc3aw18rnhardv0s3"
+   "commit": "c87b4155cd2f60ca3a9bed2e6e366c1fa47aec33",
+   "sha256": "1idshb4g1d7ghdwwfyglvqqdjbdi3lrigkgq2rsbhrv7lpxcb8vn"
   },
   "stable": {
    "version": [
@@ -79389,15 +79524,15 @@
   "repo": "alezost/org-ref-prettify.el",
   "unstable": {
    "version": [
-    20210920,
-    634
+    20211111,
+    742
    ],
    "deps": [
     "bibtex-completion",
     "org-ref"
    ],
-   "commit": "29e05416f102ceca50ac8b118a19a16f9fe7eb2f",
-   "sha256": "1215hrinfggvwz89i15lhpqraa3rhafnqx8iwvfzb0p9fyqfgwg5"
+   "commit": "0cecd7b2611bd9d282876ab46d490ce3e635ba86",
+   "sha256": "0jhspfp2mm69q7p1n986pal88ywm5zm9a6f2q073slnpiv4qwvz2"
   }
  },
  {
@@ -79503,8 +79638,8 @@
   "repo": "org-roam/org-roam",
   "unstable": {
    "version": [
-    20211101,
-    639
+    20211114,
+    913
    ],
    "deps": [
     "dash",
@@ -79514,8 +79649,8 @@
     "magit-section",
     "org"
    ],
-   "commit": "3e47f198c7b6c3254944d98357e41840e5e1b102",
-   "sha256": "1bfrpljx95bqk2gwabsf80igp206nlb6d7b4dr0mlsj8rlzwv96s"
+   "commit": "d93423d4e11da95bcf177b2bc3c74cb1d1acf807",
+   "sha256": "1az6i7031ff63gxz3wfdg00w1b57r10j12a6s5w3vgchsz896skm"
   },
   "stable": {
    "version": [
@@ -79543,16 +79678,16 @@
   "repo": "org-roam/org-roam-bibtex",
   "unstable": {
    "version": [
-    20211001,
-    1038
+    20211117,
+    1225
    ],
    "deps": [
     "bibtex-completion",
     "org-ref",
     "org-roam"
    ],
-   "commit": "ed35826fdefda8b5a3f7156c19e892e5e2984ea4",
-   "sha256": "135g8grk7dh0mcn76d7h35larm9z38dqjajs4kclzxkvsrmmfhxb"
+   "commit": "f399b85f5c38bd52f6eb41da18fccfb971a04fe1",
+   "sha256": "1da5yv204qvnw5rrczyi5k2982a03l9lygkqh4nbpknm8i7nhrbv"
   },
   "stable": {
    "version": [
@@ -79570,6 +79705,44 @@
   }
  },
  {
+  "ename": "org-roam-timestamps",
+  "commit": "5141a8f5505427e8d5cb898015587972c2eb2f34",
+  "sha256": "060sjq9icpabdvi5dz0im7acdc8k21iprhpa6mga6zynpqhshsjs",
+  "fetcher": "github",
+  "repo": "ThomasFKJorna/org-roam-timestamps",
+  "unstable": {
+   "version": [
+    20211108,
+    943
+   ],
+   "deps": [
+    "org-roam"
+   ],
+   "commit": "f4de72c09cd2cace275ede19c39a56b68ca56b83",
+   "sha256": "050jnyqdnx4l946hl9cw08l4sk8z70c2063z08m4qh2sxrdh3nzw"
+  }
+ },
+ {
+  "ename": "org-roam-ui",
+  "commit": "eb639f7da134200de36c7f82431c200a5d01344b",
+  "sha256": "15i68kxmhl7iv10f4abamm4yg9qp5mafwinvv88clpa62yiv62i5",
+  "fetcher": "github",
+  "repo": "org-roam/org-roam-ui",
+  "unstable": {
+   "version": [
+    20211117,
+    1208
+   ],
+   "deps": [
+    "org-roam",
+    "simple-httpd",
+    "websocket"
+   ],
+   "commit": "2b167cd03f29714267057e4c0b437a4d6a01b299",
+   "sha256": "0k6i69afzswqvg4zl6b4m5gl7rrrr15yli2kn0g8nlfg0z2ay6dm"
+  }
+ },
+ {
   "ename": "org-rtm",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "1hdcwmiv2qivdr2g78xz9fl38wn45vj0bn55dbsdj3qx7k7wgfx6",
@@ -80110,15 +80283,15 @@
   "repo": "stardiviner/org-tag-beautify",
   "unstable": {
    "version": [
-    20210729,
-    929
+    20210904,
+    1643
    ],
    "deps": [
     "all-the-icons",
     "org-pretty-tags"
    ],
-   "commit": "69e7dcb50278ff0d7b220cda9562d4fe7e4db0ec",
-   "sha256": "0wyqjzb2ph7092ghrnq0gxaf4r57mvcm0007kqpzqvknc3byd38d"
+   "commit": "bdf438847e05f1f9c08c69e93c3d5e717b589074",
+   "sha256": "09k7zmdcyy5mymij4a2wq6s6r60njkxrmiybbwvln322wl0ldgsh"
   }
  },
  {
@@ -80238,14 +80411,14 @@
   "repo": "Fuco1/org-timeline",
   "unstable": {
    "version": [
-    20210210,
-    2306
+    20211110,
+    1952
    ],
    "deps": [
     "dash"
    ],
-   "commit": "af1b44e18048278a116da89faf138310f09c74c6",
-   "sha256": "05gp5hqfwx668a0qvpx1wn8957qgn6g9jhrhiwgscnnxch2dp0c0"
+   "commit": "2b300abc8adc9955418fa2334f55e0610bff79f5",
+   "sha256": "09girkfkddn5xl5h6ji2hmsp2asip14cqrp8l9k9dpyhc4r9qp7g"
   },
   "stable": {
    "version": [
@@ -80615,16 +80788,16 @@
   "repo": "marcIhm/org-working-set",
   "unstable": {
    "version": [
-    20210802,
-    1435
+    20211112,
+    1600
    ],
    "deps": [
     "dash",
     "org",
     "s"
    ],
-   "commit": "bced50755c45047565a3ab395c3b5e59ab15cc8e",
-   "sha256": "155gxp0ysfwgiykw0zjzrm86pd9f2nz5whlcjm51apqd0439jjv9"
+   "commit": "729445496d94ea0050706007391817ef84dc0226",
+   "sha256": "0xa545wbh7kjbpry74x2bkw6rs9dshlajb5i17zc6v8zf400ds4r"
   },
   "stable": {
    "version": [
@@ -81392,11 +81565,11 @@
   "repo": "raghavgautam/osx-lib",
   "unstable": {
    "version": [
-    20191121,
-    1440
+    20211113,
+    1849
    ],
-   "commit": "01cba80ccc20412759f87b8f7531580bb04ec9c1",
-   "sha256": "0izkifcxk6cp9y4xcmpkhpd2vv1rqapxxa74ks12a55sflyxx36f"
+   "commit": "06744dae53b4ade99b0cd733823e1c8f6b0aa2c4",
+   "sha256": "0rfb9nh5xvfqpnk8k0hxaiv7ywzzzn8dpx3gxx6d2jn25glwp8ql"
   }
  },
  {
@@ -82064,8 +82237,8 @@
    "deps": [
     "org"
    ],
-   "commit": "9438efc34f3837ed18da5a97bb705e945b234bff",
-   "sha256": "01zgyawwqsq4w29w8da3kff0r8qyzh5zmmpm63b6zrb71dxx5yzg"
+   "commit": "3442d8cf1f60f28cf28daaca06f524dd660681f8",
+   "sha256": "123zg67bribf86i98rzvha1fyh72a12bkjrcgn06vph5vm5m08q1"
   },
   "stable": {
    "version": [
@@ -82316,23 +82489,22 @@
  },
  {
   "ename": "ox-pandoc",
-  "commit": "ca17de8cdd53bb32a9d3faaeb38f19f92b18ee38",
-  "sha256": "0wy6yvwd4vyq6xalkrshnfjjxlh1p24y52z49894nz5fl63b74xc",
+  "commit": "864fce840ab2ebad3e1d5952b14a33019da3732b",
+  "sha256": "08xv4dp0ycchqfwr8syvf54r0575nivvy2x80h723plrq3faddvi",
   "fetcher": "github",
-  "repo": "kawabata/ox-pandoc",
+  "repo": "emacsorphanage/ox-pandoc",
   "unstable": {
    "version": [
-    20180510,
-    1338
+    20211009,
+    1414
    ],
    "deps": [
-    "cl-lib",
     "dash",
     "ht",
     "org"
    ],
-   "commit": "aa37dc7e94213d4ebedb85c384c1ba35007da18e",
-   "sha256": "0iibxplgdp34bpq1yll2gmqjd8d8lnqn4mqjvx6cdf0y438yr4jz"
+   "commit": "e76324ecf1b9be6353bf22ff5e13652ea2714674",
+   "sha256": "1x1klhj4570mzcnrdlj56qs9hi41nvdmghgj6ddwg6n0lm2kglys"
   },
   "stable": {
    "version": [
@@ -82418,14 +82590,14 @@
   "repo": "yjwen/org-reveal",
   "unstable": {
    "version": [
-    20211030,
-    838
+    20211114,
+    1307
    ],
    "deps": [
     "org"
    ],
-   "commit": "c06c88812bb2db267366c2bb95123235e20aa5bc",
-   "sha256": "0lsxrgbpgac9hclcnrk49nhllyvjfqs0fxik9mxsf22bl1vdds1z"
+   "commit": "2adca68b2be22bcc05d5136b571472667ffab4fd",
+   "sha256": "1x0ksafnq2fsqg7vls2qdhnk189bfk3184303whircbs0rgiz6md"
   }
  },
  {
@@ -82899,15 +83071,15 @@
   "repo": "purcell/package-lint",
   "unstable": {
    "version": [
-    20210528,
-    2348
+    20211107,
+    1614
    ],
    "deps": [
     "cl-lib",
     "let-alist"
    ],
-   "commit": "10b6f3aab4f7c014ce339694255cf2c6dfd2bdea",
-   "sha256": "0ps3v3v4279rbma8fscrpm13dimv2d93hgbq3fqcq4j9kfd25jzq"
+   "commit": "786d8b5f382ee5f254a783378e904305cc41367f",
+   "sha256": "19mrzb2ligkz8gyihlrqvb3wbzmsqkpn58kfcnx6dldvk4s2ykdn"
   },
   "stable": {
    "version": [
@@ -82936,8 +83108,8 @@
    "deps": [
     "package-lint"
    ],
-   "commit": "10b6f3aab4f7c014ce339694255cf2c6dfd2bdea",
-   "sha256": "0ps3v3v4279rbma8fscrpm13dimv2d93hgbq3fqcq4j9kfd25jzq"
+   "commit": "786d8b5f382ee5f254a783378e904305cc41367f",
+   "sha256": "19mrzb2ligkz8gyihlrqvb3wbzmsqkpn58kfcnx6dldvk4s2ykdn"
   },
   "stable": {
    "version": [
@@ -84463,15 +84635,15 @@
   "repo": "vedang/pdf-tools",
   "unstable": {
    "version": [
-    20211004,
-    514
+    20211110,
+    513
    ],
    "deps": [
     "let-alist",
     "tablist"
    ],
-   "commit": "f68899cf0646255ca763f1144f7a9520e7cd46db",
-   "sha256": "13f0c0a9cyhc2snshjqw8dl0hdnhb89fba6ffcv7avb2cwnxdpk7"
+   "commit": "a8847b75d3487d60e27762816bdbdd23b6dc1c11",
+   "sha256": "1dv244rxlgb56fzx1d1w9ngdjdrc7bgssshvkrfkxbwy69i803b3"
   },
   "stable": {
    "version": [
@@ -85343,8 +85515,8 @@
     20210808,
     1745
    ],
-   "commit": "535aec81739e8e766e0420fda616efc8846f2911",
-   "sha256": "1z4fds5priq8dsr8gm845ykk8blghm5kz5sspnpzclgk3prwkx26"
+   "commit": "d66b4986117f621c143bc295205619e036f291d5",
+   "sha256": "0jj0xmmb65shi8x5l32c0piin4dbiz94fsixzcn13x6ljsv8kd21"
   },
   "stable": {
    "version": [
@@ -87216,6 +87388,40 @@
   }
  },
  {
+  "ename": "pomm",
+  "commit": "01cad9c9e0b9277160fbb7a5139157a1573ae641",
+  "sha256": "1jdinqimn7ybcwb61dwvpv9hizjkrbp0c59kh2nppw4m1lyw9ar6",
+  "fetcher": "github",
+  "repo": "SqrtMinusOne/pomm.el",
+  "unstable": {
+   "version": [
+    20211110,
+    1040
+   ],
+   "deps": [
+    "alert",
+    "seq",
+    "transient"
+   ],
+   "commit": "62832704ba72613af8dbe0a6bf6d4daa89a21e12",
+   "sha256": "06if507c163fia28zzax735r7mwlpa5vi0mmgddyn3vxsirnh4qw"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    2
+   ],
+   "deps": [
+    "alert",
+    "seq",
+    "transient"
+   ],
+   "commit": "62832704ba72613af8dbe0a6bf6d4daa89a21e12",
+   "sha256": "06if507c163fia28zzax735r7mwlpa5vi0mmgddyn3vxsirnh4qw"
+  }
+ },
+ {
   "ename": "pomodoro",
   "commit": "0b5c2c50eb87952d01c1b338b7d3e4b3a4546555",
   "sha256": "075sbypas8xlhsw8wg3mgi3fn5yf7xb3klyjgyy8wfkgdz0269f8",
@@ -87374,11 +87580,11 @@
   "repo": "karthink/popper",
   "unstable": {
    "version": [
-    20211011,
-    435
+    20211116,
+    624
    ],
-   "commit": "1ffc269afa46a9e7a5c1e5511752e49cfcb3aad4",
-   "sha256": "1hpx2qi4ybh1fxjzkfkddj350r3rqrbjazjwas3nvqxwrs9ksqbr"
+   "commit": "4d58a6dbba5d488ff9ac9318e202d84da505e691",
+   "sha256": "0l4y8f6j6sfr91rqcdv0lx6bgzskpsamd4w4fb7lp6qghmm8iyvk"
   },
   "stable": {
    "version": [
@@ -87642,11 +87848,11 @@
   "repo": "tumashu/posframe",
   "unstable": {
    "version": [
-    20211104,
-    512
+    20211110,
+    40
    ],
-   "commit": "c153c288a462e10fc468d7474f0082e6c8f5c527",
-   "sha256": "1wg1w7h0nzi2gbwyvhi93mnnzz71b415j7amnpv8migd81p6g3sa"
+   "commit": "66b16a20a7b43f19c27487c475799200ad81b3bd",
+   "sha256": "06n9zwbz6hk3k49hw9xjnizaadvgl2s5aqmaaijzfxxm0h0gqh43"
   },
   "stable": {
    "version": [
@@ -88055,16 +88261,16 @@
   "url": "https://gitee.com/shaqxu/prettify-math.git",
   "unstable": {
    "version": [
-    20211102,
-    610
+    20211107,
+    38
    ],
    "deps": [
     "dash",
     "jsonrpc",
     "s"
    ],
-   "commit": "491bdd6764afeaf3211dd0199e19a06b7bbb7e0a",
-   "sha256": "1v6qdkcwrnns22vlzxywv1rxkblbm3z6ms849fwzmabjvcbfaq1b"
+   "commit": "b766824d60e95720e28917b648e4957d7923370b",
+   "sha256": "0rq75pzbklgk0bq6ah7xrsb2czq1vryfvavvi81iqpp89nik2nrh"
   }
  },
  {
@@ -88486,8 +88692,8 @@
     20211013,
     1954
    ],
-   "commit": "e411432a33cd82f8a9ff95471c91e9fe1833841c",
-   "sha256": "03aiv70shxhcjcldahny7xxclnqdw5bf37f8496dxmzz0zx0v98j"
+   "commit": "69d44e5495185587ee8577f8b9d616063d6bd7f8",
+   "sha256": "1rv5zgbg003zhhjvikyv92pwjgl191ja14sba7hncs0pk580v075"
   }
  },
  {
@@ -88608,11 +88814,11 @@
   "repo": "bbatsov/projectile",
   "unstable": {
    "version": [
-    20211103,
-    2050
+    20211116,
+    700
    ],
-   "commit": "584ff420b2c5637b05be5c4808754d6e947ab6c1",
-   "sha256": "1vw392iv4nsdifhq8bf6bsw9mc15pvz05b6wg316j0rrjibmci6p"
+   "commit": "31069dc31469e0d5cddb53126a2993432a22399b",
+   "sha256": "1l86gm0kkszkyi4srknc7vjn589x2pkqdcralw44zwhppx7fcy35"
   },
   "stable": {
    "version": [
@@ -88873,16 +89079,15 @@
   "repo": "waymondo/projector.el",
   "unstable": {
    "version": [
-    20210421,
-    1728
+    20211112,
+    1514
    ],
    "deps": [
     "alert",
-    "cl-lib",
-    "projectile"
+    "cl-lib"
    ],
-   "commit": "7bbee0ef70817d52339119d4517dbbcbab930de6",
-   "sha256": "0zmng37fl8df1d3i66fbkjssv0x0hq74x68p1j01gb8sfayw4dgf"
+   "commit": "1d0f2d307591ea50888d31dcae7e463e2ada1316",
+   "sha256": "0psmb4bsnm9wws8g3v2n78hkih6b80lzbv5v52640v94w74hfdp5"
   }
  },
  {
@@ -89015,11 +89220,11 @@
   "repo": "ProofGeneral/PG",
   "unstable": {
    "version": [
-    20211013,
-    1911
+    20211109,
+    1442
    ],
-   "commit": "fd04605af1b07684da522c32d83ac346050926bb",
-   "sha256": "017j3vcwlg6k2h76wbads6jxmnmxj19g4c42zs3mi2vwqhfvgdqx"
+   "commit": "2145c23f44a0951a14240d3b85a1a3d08aade9bb",
+   "sha256": "0pilv79a9mqgv2j7915b2lbl3ir1hhaj7xjysliwn6h7rb4b1csg"
   },
   "stable": {
    "version": [
@@ -89122,8 +89327,8 @@
     20211013,
     1726
    ],
-   "commit": "7ccf4d8f67878a6ceb2184df279478cb3314372b",
-   "sha256": "1fqf7vvha45dzgqcban2zd3kvf5w5nz69jlcw7ad7qg6kf97150l"
+   "commit": "edc8a3182811cc39272549ff894793e1fff4aaab",
+   "sha256": "08yfcnra0c9jx3fkicxl558vzll7cnx5qn847lxqsjv4f1ms37m1"
   },
   "stable": {
    "version": [
@@ -89435,14 +89640,14 @@
   "repo": "hlissner/emacs-pug-mode",
   "unstable": {
    "version": [
-    20210503,
-    147
+    20211114,
+    1645
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "d08090485eb8c0488a7d2fbf63680dc0880c7d2f",
-   "sha256": "1f6bhdr1a72x94dlz2i1fwwln8crc2mbpc2iq23hvsbsfmj7xfzp"
+   "commit": "73f8c2f95eba695f701df20c8436f49abadebdc1",
+   "sha256": "0kjjwyxdbaaagjd0zmav2xj4075c8qcs33x29zpyqfxwj4410gp3"
   },
   "stable": {
    "version": [
@@ -90028,15 +90233,15 @@
   "repo": "tumashu/pyim",
   "unstable": {
    "version": [
-    20211020,
-    612
+    20211117,
+    158
    ],
    "deps": [
     "async",
     "xr"
    ],
-   "commit": "778a1eaff3dbb71692939da1fba7daf4ceb22abc",
-   "sha256": "10w0bydn4r8pjn1ygqnxcd39kxwgz397xzamdpb9ayyy72182h4c"
+   "commit": "a66e999435d9697a0d732576addf3c182fd363f7",
+   "sha256": "06pfpi2z48jhqanwlnq5d55xsnpmqhhrk64x15x7h01haf0wqy64"
   },
   "stable": {
    "version": [
@@ -90213,8 +90418,8 @@
     20210411,
     1931
    ],
-   "commit": "65b552a7ce6734dc7bfe53a14342853750cc92a1",
-   "sha256": "1pshp0q3iv8jzmpyfiwb1myb1xw82hga1wnqm7x5vzdcrdmzc3ip"
+   "commit": "b91cc8dbb47ce622b73c766b3a53da270bdb24e9",
+   "sha256": "0w7bc2lcrr4axs9s8mgymjy8gwdafc3dl4fl9amaqfbph0xm0arl"
   },
   "stable": {
    "version": [
@@ -90457,6 +90662,29 @@
   }
  },
  {
+  "ename": "python-insert-docstring",
+  "commit": "520c410e04bc7c60bd8d2a4d5507ed0be0720030",
+  "sha256": "1hh95nhrpggmpqapkpnwgn7sdzvyfxr64smz6p2v2sn3q7lkrkqk",
+  "fetcher": "github",
+  "repo": "macurovc/insert-docstring",
+  "unstable": {
+   "version": [
+    20211101,
+    1653
+   ],
+   "commit": "4d729f5b574ffa3fce41ccbeee7b8bdb9d005174",
+   "sha256": "0gn12bm3w7819j67bnh1m3jkqqb37pdmkagbcwqp4mc74zbpf01m"
+  },
+  "stable": {
+   "version": [
+    2,
+    0
+   ],
+   "commit": "4d729f5b574ffa3fce41ccbeee7b8bdb9d005174",
+   "sha256": "0gn12bm3w7819j67bnh1m3jkqqb37pdmkagbcwqp4mc74zbpf01m"
+  }
+ },
+ {
   "ename": "python-isort",
   "commit": "8b359787b5f0113793714fd9710fde831e7afee3",
   "sha256": "0svkcb68r3x1ajhrhhlnj71v33qp3pliv3if1mww19x970r69lmy",
@@ -90518,8 +90746,8 @@
   "repo": "wbolster/emacs-python-pytest",
   "unstable": {
    "version": [
-    20210219,
-    1947
+    20211111,
+    1912
    ],
    "deps": [
     "dash",
@@ -90527,24 +90755,23 @@
     "s",
     "transient"
    ],
-   "commit": "31ae5e0e6813de8d889103f7b8dde252b04b1ae4",
-   "sha256": "1kf62adlm5nf7r3qar8h1cx11xxrz95bfqii62i9xqdi3i8z7b2l"
+   "commit": "e77469fcb727f1b63f0d921ed15b1631a6bd0cae",
+   "sha256": "1dgk8s4wdjckaiv20gnlj3p6xbxp8g9i7q26lmmzbf40ri2qq7hk"
   },
   "stable": {
    "version": [
     3,
-    0,
+    2,
     0
    ],
    "deps": [
     "dash",
-    "dash-functional",
     "projectile",
     "s",
     "transient"
    ],
-   "commit": "10ad9afc840ac2d9d5616abf4bd92ab8fee2ce48",
-   "sha256": "1lc5qlsznzw8hdcdwjwn8fcgfmqjvb1wplsr2gaxwvm8rbw22g1l"
+   "commit": "02cf74617cf54d85bd58c75b8fe64b6f8ea36aba",
+   "sha256": "1l7lyni2vjzgqsnysf4dgww0adhhsfmjc07dn1l65m9jjsr99x2g"
   }
  },
  {
@@ -91138,11 +91365,11 @@
   "repo": "greghendershott/racket-mode",
   "unstable": {
    "version": [
-    20211103,
-    112
+    20211114,
+    1656
    ],
-   "commit": "d78c7381bd47bae8e5f9ae14681935f08206240a",
-   "sha256": "0g80y1hg7jk5291nf0yw6708lf17lwi8ka15a5y2lgrnahq8pd0g"
+   "commit": "6f94ac6e67c3ee00454e8b7e6d96ab5e9614cdb8",
+   "sha256": "01d2jkg32c7gsh39gil0kjh615fw125dl4nqilfcg23zfc8wlaf2"
   }
  },
  {
@@ -91161,8 +91388,8 @@
     "projectile",
     "yaml"
    ],
-   "commit": "86be9e70f6fe90484f88d6c68c2f337f6ecd5651",
-   "sha256": "0z6icgg3hkn141yg7asnpdlir8nlmr4kcrddy2drclgn431pdl5l"
+   "commit": "5d7a3e46d801668f53efc4c974b5f46b2cd28a0c",
+   "sha256": "1r4x4j5d0i4v27mj0cdx6s3qs3vk9v6blxmgnldmbv2ychyxzrnr"
   }
  },
  {
@@ -91181,6 +91408,25 @@
   }
  },
  {
+  "ename": "rails-routes",
+  "commit": "46ceb4276966bee63c91ee02d3cd66fdfdb7a312",
+  "sha256": "0wgs6jp9rkchdjri924r81rrk13z6midhi4x8bd9hjph138j95jz",
+  "fetcher": "github",
+  "repo": "otavioschwanck/rails-routes.el",
+  "unstable": {
+   "version": [
+    20211108,
+    347
+   ],
+   "deps": [
+    "inflections",
+    "projectile"
+   ],
+   "commit": "b1326e9f4ede6b3da0fada29697fa7f797d7576d",
+   "sha256": "017fcrnjhqp591q8j51b67qbb6idimy7w3mvlkshbj3pmxl0hzb2"
+  }
+ },
+ {
   "ename": "railscasts-reloaded-theme",
   "commit": "9817851bd06cbae30fb8f429401f1bbc0dc7be09",
   "sha256": "1iy30mnm3s7p7qigrm3lvv7xjgwvinwg6yg0hry2aifwn88cnwmz",
@@ -91275,14 +91521,14 @@
   "repo": "stardiviner/emacs-rainbow-fart",
   "unstable": {
    "version": [
-    20210803,
-    922
+    20211114,
+    905
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "57fe85c0f03917f6867833636a5617cbfa663a29",
-   "sha256": "1y97a876gsva2pr75b4psfs8hd26vd2drfsbfg79hazcqvr51c5j"
+   "commit": "aaaec8e20b3bde3a567baa501623c451f796a46a",
+   "sha256": "1mrq585wq4c23jv6fvphh03y4s8wjrh02dhd0l2369axl6bdslz7"
   }
  },
  {
@@ -91854,16 +92100,16 @@
   "repo": "realgud/realgud",
   "unstable": {
    "version": [
-    20210522,
-    2151
+    20211107,
+    2210
    ],
    "deps": [
     "load-relative",
     "loc-changes",
     "test-simple"
    ],
-   "commit": "7a70b27614c488be274898d0141ec82feb3a8d5a",
-   "sha256": "116f94sslg1cd5cy5w25ygazdwrrlh85pfib7692a180vk6kz8g6"
+   "commit": "978b455d7da4dc41995192bfabc32092622651dd",
+   "sha256": "00kjkc8fpvcjapnrk2fmnxspn9p3z9b3niyrqnyzif3kzmdsqz1i"
   },
   "stable": {
    "version": [
@@ -92314,11 +92560,11 @@
   "repo": "ideasman42/emacs-recomplete",
   "unstable": {
    "version": [
-    20211104,
-    51
+    20211108,
+    2240
    ],
-   "commit": "7288211d9dd5bae411cc697f7782dc3e01ac0b04",
-   "sha256": "038wzg76spaqd6a766l9vr1lx1plkhbai7srbdasr0r7a464c746"
+   "commit": "9d64b65855464bd92ccecf93c19db8b1fc12d7a3",
+   "sha256": "1fixdmrpa9jbjmpqf201420lpg6wcgngzddz7h5c4j68gw1a7jd0"
   }
  },
  {
@@ -92398,6 +92644,30 @@
   }
  },
  {
+  "ename": "recur",
+  "commit": "c59ae78dc09225b8def8757d52c52988708638fa",
+  "sha256": "0xss7rd8n4wwbn2ryb3anh5nxwz6zby834mgbqblsvll4dcfkdxz",
+  "fetcher": "github",
+  "repo": "ROCKTAKEY/recur",
+  "unstable": {
+   "version": [
+    20211108,
+    219
+   ],
+   "commit": "627d88f2695336245527fcc77f5728575ecf742b",
+   "sha256": "1di685jq65g7f8s8j6lflqj6mkp05hpi10y1vfnqh1xln2pijapc"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    0
+   ],
+   "commit": "46d213633d5325113e857b1c212f2b2937cf29d5",
+   "sha256": "1p9phplk6pa6qdvgpbrya5b6jn7hbbbcs565f6jlswd26vjc087v"
+  }
+ },
+ {
   "ename": "recursion-indicator",
   "commit": "2c8ad93fcf71be990ab1b97c4fbe7526ce66ca69",
   "sha256": "1nnbzl3a32hk721j37x3s865036j2m48xy13sdh8cxfhd6q4jwbv",
@@ -93116,11 +93386,11 @@
   "repo": "tkf/emacs-request",
   "unstable": {
    "version": [
-    20210816,
-    200
+    20211107,
+    1907
    ],
-   "commit": "68003b3f859724de621d0e5a8b0aae51ce708d1e",
-   "sha256": "1xqxrr2law67zm68gxylxrhivashzl8prq21kl01hs4a4q87slja"
+   "commit": "3336eaa97de923f74b90dda3e35985e122d40805",
+   "sha256": "0jckwy5zhz95d6l3lz8b9b34pppcjjzy97fg1wn8mqzhf3h460ac"
   },
   "stable": {
    "version": [
@@ -93147,8 +93417,8 @@
     "deferred",
     "request"
    ],
-   "commit": "68003b3f859724de621d0e5a8b0aae51ce708d1e",
-   "sha256": "1xqxrr2law67zm68gxylxrhivashzl8prq21kl01hs4a4q87slja"
+   "commit": "3336eaa97de923f74b90dda3e35985e122d40805",
+   "sha256": "0jckwy5zhz95d6l3lz8b9b34pppcjjzy97fg1wn8mqzhf3h460ac"
   },
   "stable": {
    "version": [
@@ -93294,8 +93564,8 @@
     20210923,
     2234
    ],
-   "commit": "94d2e8421fa14d0e3307d70e1d1e2db9d43b2f95",
-   "sha256": "0c9z6316pdi30w63a4zqn3b84ciqgxfi7mal6rd3micxg6qpv27c"
+   "commit": "f59a7f5abf366145a2c9c1e9f0a2184139d2adce",
+   "sha256": "0war99vbim62l010gxq3l68ac5w13gs5lh24yn1rpnq2jfp4jn3r"
   }
  },
  {
@@ -93313,8 +93583,8 @@
     "helm",
     "restclient"
    ],
-   "commit": "94d2e8421fa14d0e3307d70e1d1e2db9d43b2f95",
-   "sha256": "0c9z6316pdi30w63a4zqn3b84ciqgxfi7mal6rd3micxg6qpv27c"
+   "commit": "f59a7f5abf366145a2c9c1e9f0a2184139d2adce",
+   "sha256": "0war99vbim62l010gxq3l68ac5w13gs5lh24yn1rpnq2jfp4jn3r"
   }
  },
  {
@@ -93570,15 +93840,15 @@
   "repo": "dajva/rg.el",
   "unstable": {
    "version": [
-    20210912,
-    1227
+    20211113,
+    1958
    ],
    "deps": [
     "transient",
     "wgrep"
    ],
-   "commit": "fa7293df75e1a3f2fb26add6bc96058000e6fbe3",
-   "sha256": "0a9xhfs1knxxqilpbpw3li8vipg248nqhpqq5d6sqqn7gfz4zmjb"
+   "commit": "47bda7ee2f3c14082f9dd468063d45667a9d5256",
+   "sha256": "0m1ykfx2yfhqbzv1ppj2p2dbi7c3kck7p1k7s8z6c955wnday5xc"
   },
   "stable": {
    "version": [
@@ -94746,11 +95016,11 @@
   "repo": "rust-lang/rust-mode",
   "unstable": {
    "version": [
-    20211029,
-    1133
+    20211116,
+    2008
    ],
-   "commit": "3b81e81097463e7161de047ad340e4fe572dcc2a",
-   "sha256": "0i05hhfdqg4p4f7l0ylqcw4b0wj9ni3s412d1fp04lpminb74sv3"
+   "commit": "aadd1dd8f0780692aea1637569aeadfa8f78fd5a",
+   "sha256": "18qqwm05rhbw6bbkg6iifh2xhjww1psah32d7dzjjyc42kswj2ab"
   },
   "stable": {
    "version": [
@@ -94793,8 +95063,8 @@
   "repo": "brotzeit/rustic",
   "unstable": {
    "version": [
-    20211103,
-    1558
+    20211112,
+    1404
    ],
    "deps": [
     "dash",
@@ -94808,13 +95078,13 @@
     "spinner",
     "xterm-color"
    ],
-   "commit": "fc2b1057ad848521a28631f049a1d95d7f088ad8",
-   "sha256": "1zj254rvizlzh96fvpxa1fkw86i0n5h2fv9zr75q9ysj1qrh31yg"
+   "commit": "28b9b6a69ba67e9715b7feb6b3ed56e00ac08acb",
+   "sha256": "0q2695hwrjw3jzy4wg96ma5z8f7ijw08ssvmkbcn57a77wh1xk6v"
   },
   "stable": {
    "version": [
     2,
-    0
+    1
    ],
    "deps": [
     "dash",
@@ -94828,8 +95098,8 @@
     "spinner",
     "xterm-color"
    ],
-   "commit": "ac0cb72de118b143d9a24584073550a7ab5ef9fe",
-   "sha256": "1x06lp0c656zm07n28lnkqp678y4f9zkd9n5m0lramndllrpk3x2"
+   "commit": "814775bc7c0ca2cf9041b6d012bf656df7eb554b",
+   "sha256": "0nklqpd24s83ng34xrm4rp80sbylajikj6svz1c6j721pz9crxg9"
   }
  },
  {
@@ -95318,8 +95588,8 @@
     20200830,
     301
    ],
-   "commit": "caadce26d0e6ed7039e7ba76ad05397aaa5a17f4",
-   "sha256": "02pwqgl0k7xq08rnz74xgha4w226qsds576z1kr106d3gz7mhscv"
+   "commit": "fc669b449c836d66dc9d542dad766e568952c986",
+   "sha256": "1i9aak2k8zzj2i1wj7xhi750rn8c4wsmcp95w3zabprwxwr790hh"
   }
  },
  {
@@ -96354,15 +96624,15 @@
   "repo": "twlz0ne/separedit.el",
   "unstable": {
    "version": [
-    20210930,
-    1319
+    20211116,
+    326
    ],
    "deps": [
     "dash",
     "edit-indirect"
    ],
-   "commit": "62c037e2ab1bfcce79ea3316b2fb70ffff291b3d",
-   "sha256": "0a82mds1l7hnfkifirjq6mp2cdfdfkaxvz6dw4i8sqzygw1dn7dl"
+   "commit": "0a2dc1a22955fdd065f04dfdd5242f1b61b4a303",
+   "sha256": "1j1yd9d5hb5ryv0yx02lga0drgyfhkqwli5zrkrhili8h43g522d"
   },
   "stable": {
    "version": [
@@ -97153,8 +97423,8 @@
     20211103,
     1010
    ],
-   "commit": "8e12d366ca371fc259294485047a431a7c610605",
-   "sha256": "09w57wq9mw3yjklxsqm87xl2q229qwqp48ssxlp5xpwhwljgwd2j"
+   "commit": "5b9a400cafbf4778cdb4ab26f7718f8cb0c84705",
+   "sha256": "143b5np4d8vmpdyw1pzxl6xgh6pzfp0phhli0j4wsly83ivcf7w2"
   },
   "stable": {
    "version": [
@@ -98337,15 +98607,15 @@
   "repo": "slime/slime",
   "unstable": {
    "version": [
-    20211021,
-    807
+    20211108,
+    2224
    ],
    "deps": [
     "cl-lib",
     "macrostep"
    ],
-   "commit": "1378aa718781ec6d359845f0116e12865261b2ca",
-   "sha256": "0h0bqmvwnddqj0b18kcmn990mmngpnq118h28w28lzr65aa33m2r"
+   "commit": "9005cdaac4c0adaa8e26ee5285c7b155762c0ce5",
+   "sha256": "18xywimwhfnqbsr4x9bs8v78qkc287ka3by022aqgpfasr1bi7ff"
   },
   "stable": {
    "version": [
@@ -98577,11 +98847,11 @@
   "repo": "joaotavora/sly",
   "unstable": {
    "version": [
-    20210729,
-    1613
+    20211114,
+    1021
    ],
-   "commit": "540a8c5b9a04af0a6907e07cb070f1fed8a76f48",
-   "sha256": "13m15gcsqmagxmjvn28kd5rhh0ly7d4p4malhg5m7cbbms4svv68"
+   "commit": "8b1b968651c6d1a8699d16c3a03d0d1e83ecca3d",
+   "sha256": "10yx6mhfdd79nl3qz5bj275i400hnnr5r951h84xif0hclhr1bxn"
   },
   "stable": {
    "version": [
@@ -99811,14 +100081,14 @@
   "repo": "hlissner/emacs-solaire-mode",
   "unstable": {
    "version": [
-    20210927,
-    1622
+    20211114,
+    1644
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "46408f4a105e216c3c2d88659b8b28601d37d80e",
-   "sha256": "0wq5ckwx3wv4c4l8f9hz3ak6v5wy4lg5yh8xlsgn1h1x6yf8afpp"
+   "commit": "87c2efd11b4b71e000d8a464eb694852e22aa0e7",
+   "sha256": "058cflb2199yb2qpzhf5hckz4cknsxqpglmz4nvnfv6k2xbnijpb"
   },
   "stable": {
    "version": [
@@ -99841,11 +100111,11 @@
   "repo": "bbatsov/solarized-emacs",
   "unstable": {
    "version": [
-    20210827,
-    859
+    20211114,
+    807
    ],
-   "commit": "874694ed8569ae98959262cfb0c66a6528a60367",
-   "sha256": "1j6728229rrpamh4nn2v5mmlbb111i6ar7zh0g9d922k7vqr2nam"
+   "commit": "f34a171ff0e39549972edf533120f0b556f0b5ad",
+   "sha256": "07zxrf4xbh85d4sfxch6mcjgd6ga4a079k5fwqdm72pmi07659hf"
   },
   "stable": {
    "version": [
@@ -99877,8 +100147,8 @@
     "flycheck",
     "solidity-mode"
    ],
-   "commit": "9c77b390eab999e5e54dc5c1068f57201e6628bf",
-   "sha256": "0i6kjvd82bq3djh4makf4czdbmg3sb5q74wbdfhdyikx6kkzfj0m"
+   "commit": "bac439dbd2097664df45e9fac0ce57e23462c14c",
+   "sha256": "1vs64gwm6zn47fl4nvaizkwh8zwnqh764yqcmggyz4awsxsxg6ym"
   },
   "stable": {
    "version": [
@@ -99902,11 +100172,11 @@
   "repo": "ethereum/emacs-solidity",
   "unstable": {
    "version": [
-    20211004,
-    1910
+    20211112,
+    1959
    ],
-   "commit": "9c77b390eab999e5e54dc5c1068f57201e6628bf",
-   "sha256": "0i6kjvd82bq3djh4makf4czdbmg3sb5q74wbdfhdyikx6kkzfj0m"
+   "commit": "bac439dbd2097664df45e9fac0ce57e23462c14c",
+   "sha256": "1vs64gwm6zn47fl4nvaizkwh8zwnqh764yqcmggyz4awsxsxg6ym"
   },
   "stable": {
    "version": [
@@ -100653,11 +100923,11 @@
   "repo": "ideasman42/emacs-spell-fu",
   "unstable": {
    "version": [
-    20211103,
-    328
+    20211108,
+    203
    ],
-   "commit": "1159eeec13acbba5ecfc24aa8f6aa620c1274d17",
-   "sha256": "1fm40dkh0albrw2cv6wkkgssp4aka2gamxczkgnvwa4ifkf7p3i0"
+   "commit": "570ccd84edddb60e6fc0f6bde5a9fb9b07ed2aa0",
+   "sha256": "0n9b3b8lgr9g4xc5md11agbpr1b7ahpdxphnwy473vw1fzgnj1fl"
   }
  },
  {
@@ -101245,11 +101515,11 @@
   "repo": "srfi-explorations/emacs-srfi",
   "unstable": {
    "version": [
-    20210902,
-    626
+    20211116,
+    1936
    ],
-   "commit": "021239f0e2bcc60257b72916db9cdd110588ec28",
-   "sha256": "0v79z2d9l824j6chsviffdsfb4m9w93kgwcwdaksdb5rsfmryigp"
+   "commit": "8874e933643b91d9c545fd4ca3f0ea986561da31",
+   "sha256": "1s0ivhg6rbk5k9yzy8gy589ybba7dnc9cksz4wwsgcsm931sx9fz"
   },
   "stable": {
    "version": [
@@ -101673,8 +101943,8 @@
     20200606,
     1308
    ],
-   "commit": "16a65055f92497b035d866fa4b39d1786c4f4b8c",
-   "sha256": "0dkg4ddj0bjn8drvx49ffb4y6q84r27cbh8dxrwi9ikcwqb61b6w"
+   "commit": "d5bef96e847b50bd436725fa3b102f0c41b56bae",
+   "sha256": "1x2fyh6xyd1xzyhk1pk5x23j3if11rm8zpl75izkc3y6vw37haa3"
   },
   "stable": {
    "version": [
@@ -102401,20 +102671,18 @@
   "repo": "tlikonen/suomalainen-kalenteri",
   "unstable": {
    "version": [
-    20200830,
-    1107
+    20211108,
+    1333
    ],
-   "commit": "5b209ff7b7d3dcd09b623915aba1e137c875fa0e",
-   "sha256": "0ym0rfyrnj4f6c6nhz0yfvl1n1fsdb2n20gksw4blqg94ccafqh1"
+   "commit": "56927306d8046f2ba38b8cadabde47c5b6851262",
+   "sha256": "03y5hh2al8m75bdjxwa052nqa3iryp08dkhvmaaa9b0i2fq233z5"
   },
   "stable": {
    "version": [
-    2020,
-    8,
-    30
+    2021
    ],
-   "commit": "99fd77d25fc12c0a9f1fc75f0b83b31774d493bd",
-   "sha256": "12b2534cz9qqc923cf4nj76gmx3l19wrqmha077rlgl5pqlgqh6b"
+   "commit": "56927306d8046f2ba38b8cadabde47c5b6851262",
+   "sha256": "03y5hh2al8m75bdjxwa052nqa3iryp08dkhvmaaa9b0i2fq233z5"
   }
  },
  {
@@ -102634,26 +102902,25 @@
   "repo": "thblt/sway.el",
   "unstable": {
    "version": [
-    20210501,
-    2201
+    20211109,
+    1601
    ],
    "deps": [
     "dash"
    ],
-   "commit": "8a4d9cc1a469efa707cf67b57b752f28547e331e",
-   "sha256": "0x5w3f07dsgbl7qlcqpmpm3831lrv5jx59g7xnv25giwc3w21d2d"
+   "commit": "d84adab82ca5f84847702671dd60c0377c82ccd9",
+   "sha256": "1xqlflk0k1zcsblydsx583mrh5zxpjbah8h1jb1lrfzwrbx0m627"
   },
   "stable": {
    "version": [
     0,
-    2,
-    4
+    3
    ],
    "deps": [
     "dash"
    ],
-   "commit": "8a4d9cc1a469efa707cf67b57b752f28547e331e",
-   "sha256": "0x5w3f07dsgbl7qlcqpmpm3831lrv5jx59g7xnv25giwc3w21d2d"
+   "commit": "d84adab82ca5f84847702671dd60c0377c82ccd9",
+   "sha256": "1xqlflk0k1zcsblydsx583mrh5zxpjbah8h1jb1lrfzwrbx0m627"
   }
  },
  {
@@ -103127,11 +103394,11 @@
   "repo": "lassik/emacs-symbolist",
   "unstable": {
    "version": [
-    20210503,
-    1220
+    20211107,
+    1615
    ],
-   "commit": "f600e07fe06c19b67f917a8839bbcd6c78f1fbd4",
-   "sha256": "02x71kdnkhyzscc2bxayv55qfanqy0hm7rckq4mqhxbryjz7qcab"
+   "commit": "92b712734941a45da7d47fd61b95e4013ff53481",
+   "sha256": "0033qxn1zx90lws6a8ibg7xx5xxpiwzr08fj86k5w84nj6nvwras"
   }
  },
  {
@@ -103168,8 +103435,8 @@
   "repo": "countvajhula/symex.el",
   "unstable": {
    "version": [
-    20211016,
-    51
+    20211115,
+    2045
    ],
    "deps": [
     "evil",
@@ -103181,8 +103448,8 @@
     "seq",
     "undo-tree"
    ],
-   "commit": "6dab41cf72fb5f25e0de30fde64fee960944a604",
-   "sha256": "1p8x7q1hf3bbblm43b4w3kns8ns6zjsz008x7pgvinqwi78a6nfs"
+   "commit": "ce33a7858481da2a1a07558b0932b19328d3449b",
+   "sha256": "017a6bmacfcwqy7x89pzpgkqpipl8i5hbp429cqpw7xdhjwgc2in"
   },
   "stable": {
    "version": [
@@ -104045,15 +104312,15 @@
   "repo": "zevlg/telega.el",
   "unstable": {
    "version": [
-    20211102,
-    1327
+    20211116,
+    1246
    ],
    "deps": [
     "rainbow-identifiers",
     "visual-fill-column"
    ],
-   "commit": "7829e605467a3177e143f5c6ff9e55ac00803c8f",
-   "sha256": "0v7pmj2y7d8pidlais20kk7qi5kksq6pc7pn2fsb5q90p2mdlw9q"
+   "commit": "9bc087dab6d2503da41881132664f5c0c979f4b6",
+   "sha256": "1s3p9ndwiv08wh30i9rgdm2lz3a4xj9in2y4rrhywq4gnd5zbz7d"
   },
   "stable": {
    "version": [
@@ -105151,18 +105418,18 @@
     20200212,
     1903
    ],
-   "commit": "0d838c46aeb771ec5c1e3108faeb82cd3da935aa",
-   "sha256": "02drmjh4ay8krimf7bm32f72n5d6929ylc2znpnp70vihn40ybjr"
+   "commit": "c0cc1a6b7273feb1049206f58da5f469e28b56a9",
+   "sha256": "0pkwa42r33l30ddnmy8hkflwirf3xnv4fi5a6zxsm3ibi7z649fm"
   },
   "stable": {
    "version": [
     2021,
     11,
-    1,
+    15,
     0
    ],
-   "commit": "bea461a963aae123322e893bc3a03ba1ad0657d5",
-   "sha256": "0y9jsq8lmz1xj0r3ybs4qbqwfvc3jbawpd3h4516zw1k5nwgf7d4"
+   "commit": "7f44dce741f17712a5671b09f495059bd1f68d09",
+   "sha256": "1jldrq95cb2g27my88k98c8p33kbk04l0rc8vpwlyyxr602cx7k9"
   }
  },
  {
@@ -105218,8 +105485,8 @@
    "deps": [
     "haskell-mode"
    ],
-   "commit": "cff017c60a92d446f1c7f0eaf65b9b63a0224800",
-   "sha256": "0xfm3hniijpd3wky62khg57il1gfxza0byr64v1aa6drsw9ygc4i"
+   "commit": "be7c02a4df03d695c8f8dca80817a736905ecf47",
+   "sha256": "1lh92rzafapx6yi7r24yzrxgv2v6wqvzg62j0pd3zqa6s499v4k9"
   },
   "stable": {
    "version": [
@@ -105467,11 +105734,11 @@
   "repo": "aimebertrand/timu-spacegrey-theme",
   "unstable": {
    "version": [
-    20211101,
-    1649
+    20211115,
+    2323
    ],
-   "commit": "3da96d529c09dc1000de425f937380895ab9efa6",
-   "sha256": "0k2l15lkk3b5y7qfzhjid8l1clam5j9nhm635a1qmhjgcdln18x3"
+   "commit": "2934363d32ba6e817e789d5ecf5e68a51cfc0e8d",
+   "sha256": "001h23yhqys90dpqka4m3zcdnwbfxvjii5lxmj67shblslx5f4sl"
   },
   "stable": {
    "version": [
@@ -106072,14 +106339,14 @@
   "repo": "trueroad/tr-emacs-ime-module",
   "unstable": {
    "version": [
-    20210202,
-    1057
+    20211114,
+    440
    ],
    "deps": [
     "w32-ime"
    ],
-   "commit": "92591f7c0b94f8b1875f1078d1ba3be40848f0b8",
-   "sha256": "0r5cmj8ih8n7m37fqwyymmd0swyxr6g124cw9cz24ri0dyiwi73k"
+   "commit": "c35be849f2cf5470e9d9cc40ff54e285e5170e93",
+   "sha256": "0sy33f8c9l0189qhm8q2whb6yrsir52fqqq3wh54qkbqc8vvg7py"
   },
   "stable": {
    "version": [
@@ -106251,11 +106518,11 @@
   "repo": "magit/transient",
   "unstable": {
    "version": [
-    20211104,
-    143
+    20211105,
+    100
    ],
-   "commit": "202271f755497bacb50a1f2b3c93566e816f447e",
-   "sha256": "1y0rir7w12h85jagjdnww9wgwi1aazmm22ry7gz9wiax6mm1pcdn"
+   "commit": "349116159f707a474926b47e5f6b6240e8997a4d",
+   "sha256": "1yzjdr9rdxax8gcd0k978v9akb1wk2ff14wfigiaqkvqs3sd8zxy"
   },
   "stable": {
    "version": [
@@ -106488,6 +106755,29 @@
   }
  },
  {
+  "ename": "tree-edit",
+  "commit": "43726f8e4c4f7f673ca892ec17329471dba77b3e",
+  "sha256": "0537g2m5k3hwdisbag9724nkzx97x45ry602gjpqr9dzywd30g65",
+  "fetcher": "github",
+  "repo": "ethan-leba/tree-edit",
+  "unstable": {
+   "version": [
+    20211116,
+    1613
+   ],
+   "deps": [
+    "dash",
+    "reazon",
+    "s",
+    "tree-sitter",
+    "tree-sitter-langs",
+    "tsc"
+   ],
+   "commit": "6fd445dbeb158d05d785965077cc594aeeb73a61",
+   "sha256": "0h1zjdqxynxxlqdc9yxhmkjwarx4vn9anasv9i68fcmmnq7c0aw9"
+  }
+ },
+ {
   "ename": "tree-mode",
   "commit": "84f836338818946a6bb31d35d6ae959571128ed5",
   "sha256": "1b15xgh96j4qas1kh4ghczcn7hb1ri86wnjgn9wz2d6bw3c6077b",
@@ -106635,8 +106925,8 @@
   "repo": "Alexander-Miller/treemacs",
   "unstable": {
    "version": [
-    20211101,
-    1223
+    20211115,
+    2031
    ],
    "deps": [
     "ace-window",
@@ -106648,8 +106938,8 @@
     "pfuture",
     "s"
    ],
-   "commit": "e4b15841c9671f9b26f370a8cbaa61632b459db4",
-   "sha256": "030k0pbzsnjwm2q0na7f5rfp2avrabf7rmanp3a4cxgf8dvdgm5c"
+   "commit": "d00cc19cab8df4fec7ed6608e00bd16fe797369a",
+   "sha256": "167jn29vqx5q5nd2ja9bi1srz623zmq7jpd79al0s98ngnw8hpr7"
   },
   "stable": {
    "version": [
@@ -106679,15 +106969,15 @@
   "repo": "Alexander-Miller/treemacs",
   "unstable": {
    "version": [
-    20211102,
-    2155
+    20211107,
+    1818
    ],
    "deps": [
     "all-the-icons",
     "treemacs"
    ],
-   "commit": "e4b15841c9671f9b26f370a8cbaa61632b459db4",
-   "sha256": "030k0pbzsnjwm2q0na7f5rfp2avrabf7rmanp3a4cxgf8dvdgm5c"
+   "commit": "d00cc19cab8df4fec7ed6608e00bd16fe797369a",
+   "sha256": "167jn29vqx5q5nd2ja9bi1srz623zmq7jpd79al0s98ngnw8hpr7"
   },
   "stable": {
    "version": [
@@ -106718,8 +107008,8 @@
     "evil",
     "treemacs"
    ],
-   "commit": "e4b15841c9671f9b26f370a8cbaa61632b459db4",
-   "sha256": "030k0pbzsnjwm2q0na7f5rfp2avrabf7rmanp3a4cxgf8dvdgm5c"
+   "commit": "d00cc19cab8df4fec7ed6608e00bd16fe797369a",
+   "sha256": "167jn29vqx5q5nd2ja9bi1srz623zmq7jpd79al0s98ngnw8hpr7"
   },
   "stable": {
    "version": [
@@ -106749,8 +107039,8 @@
    "deps": [
     "treemacs"
    ],
-   "commit": "e4b15841c9671f9b26f370a8cbaa61632b459db4",
-   "sha256": "030k0pbzsnjwm2q0na7f5rfp2avrabf7rmanp3a4cxgf8dvdgm5c"
+   "commit": "d00cc19cab8df4fec7ed6608e00bd16fe797369a",
+   "sha256": "167jn29vqx5q5nd2ja9bi1srz623zmq7jpd79al0s98ngnw8hpr7"
   },
   "stable": {
    "version": [
@@ -106781,8 +107071,8 @@
     "pfuture",
     "treemacs"
    ],
-   "commit": "e4b15841c9671f9b26f370a8cbaa61632b459db4",
-   "sha256": "030k0pbzsnjwm2q0na7f5rfp2avrabf7rmanp3a4cxgf8dvdgm5c"
+   "commit": "d00cc19cab8df4fec7ed6608e00bd16fe797369a",
+   "sha256": "167jn29vqx5q5nd2ja9bi1srz623zmq7jpd79al0s98ngnw8hpr7"
   },
   "stable": {
    "version": [
@@ -106815,8 +107105,8 @@
     "persp-mode",
     "treemacs"
    ],
-   "commit": "e4b15841c9671f9b26f370a8cbaa61632b459db4",
-   "sha256": "030k0pbzsnjwm2q0na7f5rfp2avrabf7rmanp3a4cxgf8dvdgm5c"
+   "commit": "d00cc19cab8df4fec7ed6608e00bd16fe797369a",
+   "sha256": "167jn29vqx5q5nd2ja9bi1srz623zmq7jpd79al0s98ngnw8hpr7"
   },
   "stable": {
    "version": [
@@ -106849,8 +107139,8 @@
     "perspective",
     "treemacs"
    ],
-   "commit": "e4b15841c9671f9b26f370a8cbaa61632b459db4",
-   "sha256": "030k0pbzsnjwm2q0na7f5rfp2avrabf7rmanp3a4cxgf8dvdgm5c"
+   "commit": "d00cc19cab8df4fec7ed6608e00bd16fe797369a",
+   "sha256": "167jn29vqx5q5nd2ja9bi1srz623zmq7jpd79al0s98ngnw8hpr7"
   },
   "stable": {
    "version": [
@@ -106882,8 +107172,8 @@
     "projectile",
     "treemacs"
    ],
-   "commit": "e4b15841c9671f9b26f370a8cbaa61632b459db4",
-   "sha256": "030k0pbzsnjwm2q0na7f5rfp2avrabf7rmanp3a4cxgf8dvdgm5c"
+   "commit": "d00cc19cab8df4fec7ed6608e00bd16fe797369a",
+   "sha256": "167jn29vqx5q5nd2ja9bi1srz623zmq7jpd79al0s98ngnw8hpr7"
   },
   "stable": {
    "version": [
@@ -107622,24 +107912,6 @@
   }
  },
  {
-  "ename": "typoscript-mode",
-  "commit": "701de09cb97cbfa49a3a81aaeb9577817566efa2",
-  "sha256": "18i2wwbn8vj5dbgxp2ds29n12v8ldvxjd1zb6h1g9lfh8iyrnjmx",
-  "fetcher": "github",
-  "repo": "ksjogo/typoscript-mode",
-  "unstable": {
-   "version": [
-    20170126,
-    912
-   ],
-   "deps": [
-    "use-package"
-   ],
-   "commit": "44e7567e921573c4f33c537b827f71fb1f565c32",
-   "sha256": "0i7l9s3lhxnld32mqyrvasiv1hilhwnp2fwvpdv2cx9r902q6kc8"
-  }
- },
- {
   "ename": "ubuntu-theme",
   "commit": "091dcc3775ec2137cb61d66df4e72aca4900897a",
   "sha256": "160z59aaxb2v6c24nki6bn7pjm9r4jl1mgxs4h4sivzxkaw811s2",
@@ -109573,8 +109845,8 @@
     20211103,
     1927
    ],
-   "commit": "f9ea5780ec65e6f30451514b72ce99619dd8457f",
-   "sha256": "1l38ax1ms7s2qwjnqd0djf2gcy5jpqha55d17vyvkx1kgwjapja7"
+   "commit": "6250360b3b06f590dd37885f3c33a451a3eab5d3",
+   "sha256": "07xdl2ng435iy9zqrq1wgrmwygarc91kqmz6ck1ngvn4mh86ndxk"
   },
   "stable": {
    "version": [
@@ -109650,8 +109922,8 @@
   "repo": "mihaiolteanu/versuri",
   "unstable": {
    "version": [
-    20211102,
-    1142
+    20211104,
+    1301
    ],
    "deps": [
     "anaphora",
@@ -109661,8 +109933,8 @@
     "request",
     "s"
    ],
-   "commit": "eafc925e3089aa80cefd6ceeb0cb87abce5490a9",
-   "sha256": "1gqbd6iwfpicqrpigyki402jy73a58nx0k3akzybzgljdgw7xg9p"
+   "commit": "c8ea562304194f3379ed8f9c6a785ce8ee72898e",
+   "sha256": "1ak5f6g9sqd2dwplipnacg6kknkpf1j6df5am0hqcmlsk052d12s"
   }
  },
  {
@@ -110060,17 +110332,17 @@
  },
  {
   "ename": "visual-fill-column",
-  "commit": "c7628c805840c4687686d0b9dc5007342864721e",
-  "sha256": "19y0pwaybjal2rc7migdbnafpi4dfbxvrzgfqr8dlvd9q68v08y5",
-  "fetcher": "github",
-  "repo": "joostkremers/visual-fill-column",
+  "commit": "39ada1dc39158e956a1251cd41cfa2259b51da21",
+  "sha256": "1bbly6sd77cnxl1c4n24039cgfwn0mcq6l3jgyh8z7bk6lnsjfw2",
+  "fetcher": "git",
+  "url": "https://codeberg.org/joostkremers/visual-fill-column",
   "unstable": {
    "version": [
-    20211014,
-    2141
+    20211110,
+    2317
    ],
-   "commit": "2df643827a4fd82b732ea93042916c61078d4206",
-   "sha256": "1j8x044s4xzmfmqrsabim9gv435scj2yhym3f3p9bf5vq5ds2smj"
+   "commit": "ae4edc225acea12a035c0586185847306ecb06ef",
+   "sha256": "18qac66mpvgmp1pw0lvarjngwh9cx75an44n1pg2msbxkkm98zkj"
   },
   "stable": {
    "version": [
@@ -110500,8 +110772,8 @@
   "repo": "mihaiolteanu/vuiet",
   "unstable": {
    "version": [
-    20210715,
-    907
+    20211116,
+    1109
    ],
    "deps": [
     "bind-key",
@@ -110510,8 +110782,8 @@
     "s",
     "versuri"
    ],
-   "commit": "b327a5224ab45f6689ce635878301e54ca753b3b",
-   "sha256": "1sq2nmmw8ga4jhkgb3a0mkps7v8ma1jrrz8c1vbypfn1b3amvj3b"
+   "commit": "ddfd4be99b46ddc042139028980ad8dd616b7d45",
+   "sha256": "10wjzx8vq8k16dwcjppnr28pkiilxl2ak78h60h68flakmdzibmg"
   },
   "stable": {
    "version": [
@@ -110537,16 +110809,16 @@
   "repo": "d12frosted/vulpea",
   "unstable": {
    "version": [
-    20211028,
-    704
+    20211115,
+    1433
    ],
    "deps": [
     "org",
     "org-roam",
     "s"
    ],
-   "commit": "a1cdaf43649e133e1d571b597195e2d17c7c5928",
-   "sha256": "0qqz7xy6yfscjac05klckf81pcmfwgl4jhd5i4g873xmrclmfzwi"
+   "commit": "0c16e1c1adb45e8aaa32f06edc604e18d39179eb",
+   "sha256": "1217gni713nc5y37wfspnc5b790chri96an4hzv1jra33lazn49y"
   },
   "stable": {
    "version": [
@@ -110709,11 +110981,11 @@
   "repo": "wakatime/wakatime-mode",
   "unstable": {
    "version": [
-    20210818,
-    1556
+    20211104,
+    1455
    ],
-   "commit": "8dfe67c1581a0f3688c572dfdb5f8f71d3f874a0",
-   "sha256": "1rpl2hj1413kcxvxl27jycjl40js8cybf2qrhvjfwfhxncpwacxv"
+   "commit": "0f94ac2dd4fa125fc5f152700779edce75a6b03b",
+   "sha256": "1iqmd763gik32blrc8ki9rikm3k5iksm0xg12rffmilawc2vn480"
   }
  },
  {
@@ -110724,11 +110996,11 @@
   "repo": "darkstego/wakib-keys",
   "unstable": {
    "version": [
-    20210903,
-    1619
+    20211116,
+    2049
    ],
-   "commit": "627e94389fe754da9802a8c93e4a3d1a1831967b",
-   "sha256": "0i0a9imkpz0aq4r340vd2li22m1wnv7p83s4bcaihl1z8axfa611"
+   "commit": "b2a62fb74f2fdfd00fd56ff8343651fa0a079f50",
+   "sha256": "0j47xxch74j09xxi2v2m42cyzcfa6zbvb6wpyjk9dif6pjn1q3n8"
   }
  },
  {
@@ -110857,16 +111129,16 @@
   "repo": "wanderlust/wanderlust",
   "unstable": {
    "version": [
-    20211028,
-    1330
+    20211115,
+    1206
    ],
    "deps": [
     "apel",
     "flim",
     "semi"
    ],
-   "commit": "475514f22c0869d7b84cdf0b957f9ae75a45605b",
-   "sha256": "050dglv2l5z7pgrkzpmplzjm5mx3b4yg4zaqp2ghd9ddd19kn3y8"
+   "commit": "aef23d6e50b7e29ff4ff11d288f36f6ba03f29ac",
+   "sha256": "06rj754ygv0455hkyb62ihqk844jx6cx18n5vixjmcws6hvpi9al"
   }
  },
  {
@@ -112375,8 +112647,8 @@
     20211028,
     2105
    ],
-   "commit": "521f75e3f37c7fe204bddb8a29ce862cae8f59bd",
-   "sha256": "0my9zbrzgn4h6wxl172iw6mn2dvcn3r85bdcl3pyv0hc5n7lkzxz"
+   "commit": "cfe70f43c551852125bc139df467e28e1b6087df",
+   "sha256": "0i38y7kw0fpb1ii8bfiidh5xkinldzzz1c0i33zvwym76a28birb"
   },
   "stable": {
    "version": [
@@ -113677,6 +113949,21 @@
   }
  },
  {
+  "ename": "xwiki-mode",
+  "commit": "3288cf8d5b62e01c64ce9ab572275df5ab58a27f",
+  "sha256": "0ykgs5hnil5837x59x31xjf86l8l5fi9bf8jg71bmq61qvhxfkvi",
+  "fetcher": "github",
+  "repo": "ackerleytng/xwiki-mode",
+  "unstable": {
+   "version": [
+    20211112,
+    511
+   ],
+   "commit": "580e65296ca0ffb20270610ef16bfeb8850fc7c8",
+   "sha256": "0izsj9krl4lhm33w9hh6gjihns4lrgaf40qiiif43n05jha7fj0z"
+  }
+ },
+ {
   "ename": "xwwp",
   "commit": "83c34ae5023410cc31f93255275d6465b6152a10",
   "sha256": "07r62haa1ks2xvfh4zkqadpsjdhk6kbafk1fmvcim3m13ma6gch1",
@@ -114178,25 +114465,25 @@
   "repo": "mineo/yatemplate",
   "unstable": {
    "version": [
-    20200625,
-    1336
+    20211115,
+    1208
    ],
    "deps": [
     "yasnippet"
    ],
-   "commit": "399564fc1afa100aa6049ac6de11fb065882d230",
-   "sha256": "0gvysijv659z843r692wzfjz5p8j2dr79m8fzcnajnrpim9jf2j8"
+   "commit": "275745ce1482edc08efb0b7807bc86d832bcc734",
+   "sha256": "1dkxzvsmz193nwybi3wi00k0wwhkbpnj4yi7gxdrgix6kxbpjd9i"
   },
   "stable": {
    "version": [
-    4,
+    5,
     0
    ],
    "deps": [
     "yasnippet"
    ],
-   "commit": "bfee45cfc179d6b7fbc3ff06c9f79b76dc7fbf58",
-   "sha256": "0h2fc9vjwb94n3nklq35s3dy9i4ihrqffp2556cmsaq7gzlipb81"
+   "commit": "275745ce1482edc08efb0b7807bc86d832bcc734",
+   "sha256": "1dkxzvsmz193nwybi3wi00k0wwhkbpnj4yi7gxdrgix6kxbpjd9i"
   }
  },
  {
@@ -114562,14 +114849,14 @@
   "repo": "zv/z3-mode",
   "unstable": {
    "version": [
-    20151120,
-    2255
+    20211116,
+    138
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "163dc01d59e9880b4dc188d4e1ad84d6c0c852e1",
-   "sha256": "1k7m3xk5ksbr2s3ypz5yqafz9sfav1m0qk2jz1xyi3fdaw2j0w2z"
+   "commit": "0356cbe1e1e2b780ba0ddb4aaa055fa246a67931",
+   "sha256": "0jlnxxzh9p7285m16w33l5529iglg5cihs6gqwnb6y34wpzwyar6"
   }
  },
  {
@@ -114712,10 +114999,10 @@
  },
  {
   "ename": "zeno-theme",
-  "commit": "8aef13a70809ee1fc00f0e8c2853936380b22422",
-  "sha256": "1hq3yx0l6v2wwgmmsq5c7h5chbila9flpvsr1a9fpq09lbq2yq7g",
+  "commit": "e6f007367d181005ebd1a4d73085d73e807d3583",
+  "sha256": "01kp0j27q9v62d45ail65al9zzfxpx7d7bj6gdzilbmwk3k7lxq5",
   "fetcher": "github",
-  "repo": "zenobharat/zeno-theme",
+  "repo": "zenobht/zeno-theme",
   "unstable": {
    "version": [
     20181027,
@@ -114819,14 +115106,14 @@
   "repo": "NicolasPetton/zerodark-theme",
   "unstable": {
    "version": [
-    20210216,
-    1640
+    20211115,
+    841
    ],
    "deps": [
     "all-the-icons"
    ],
-   "commit": "ee49ea9e875d7a3da63386880ca3a9e10b1051e5",
-   "sha256": "06q1v0fkxyxadrpgy28gh85j19vi4ars2xrbbm1bz28xrcbnps04"
+   "commit": "b463528704f6eb00684c0ee003fbd8e42901cde0",
+   "sha256": "1ajgz5mbvzv92p1g3k6p94v11z3xyj5w81fpfiwhlvh30imx6z9q"
   },
   "stable": {
    "version": [
diff --git a/pkgs/applications/editors/lite-xl/default.nix b/pkgs/applications/editors/lite-xl/default.nix
new file mode 100644
index 0000000000000..3b38004eddbac
--- /dev/null
+++ b/pkgs/applications/editors/lite-xl/default.nix
@@ -0,0 +1,65 @@
+{ agg
+, fetchFromGitHub
+, fetchpatch
+, Foundation
+, freetype
+, lib
+, lua5_2
+, meson
+, ninja
+, pcre2
+, pkg-config
+, reproc
+, SDL2
+, stdenv
+}:
+
+stdenv.mkDerivation rec {
+  pname = "lite-xl";
+  version = "2.0.1";
+
+  src = fetchFromGitHub {
+    owner = "lite-xl";
+    repo = "lite-xl";
+    rev = "v${version}";
+    sha256 = "sha256-+RbmT6H/5Ldhv3qOClxMjCSGMudbkGtkjo2SpGqExao=";
+  };
+
+  patches = [
+    # Fixes compatibility with Lua5.2, remove patch when PR merged
+    # https://github.com/lite-xl/lite-xl/pull/435
+    (fetchpatch {
+      name = "0001-replace-unpack-with-table.unpack.patch";
+      url = "https://github.com/lite-xl/lite-xl/commit/30ccde896d1ffe37cbd8990e9b8aaef275e18935.patch";
+      sha256 = "sha256-IAe3jIyD3OtZtu1V7MtPR4QzFKvU/aV/nLQ4U9nHyIQ=";
+    })
+    # Lets meson fallback to the system reproc if available.
+    # remove patch when 2.0.2 is proposed.
+    (fetchpatch {
+      name = "0002-use-dependency-fallbacks-use-system-reproc-if-available.patch";
+      url = "https://github.com/lite-xl/lite-xl/commit/973acb787aacb0164b2f4ae6fe335d250ba80a7b.patch";
+      sha256 = "sha256-GmgATsRlj1FePmw3+AoWEMZIo2eujHYewKQCx583qbU=";
+    })
+  ];
+
+  nativeBuildInputs = [ meson ninja pkg-config ];
+
+  buildInputs = [
+    agg
+    freetype
+    lua5_2
+    pcre2
+    reproc
+    SDL2
+  ] ++ lib.optionals stdenv.isDarwin [
+    Foundation
+  ];
+
+  meta = with lib; {
+    description = "A lightweight text editor written in Lua";
+    homepage = "https://github.com/lite-xl/lite-xl";
+    license = licenses.mit;
+    maintainers = with maintainers; [ boppyt ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/graphics/ImageMagick/7.0.nix b/pkgs/applications/graphics/ImageMagick/7.0.nix
index a07cf38c0eba6..257206b4f27e8 100644
--- a/pkgs/applications/graphics/ImageMagick/7.0.nix
+++ b/pkgs/applications/graphics/ImageMagick/7.0.nix
@@ -18,13 +18,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "imagemagick";
-  version = "7.1.0-13";
+  version = "7.1.0-14";
 
   src = fetchFromGitHub {
     owner = "ImageMagick";
     repo = "ImageMagick";
     rev = version;
-    sha256 = "sha256-W/XqgYOlSailHQdNBYsvf2P9go9sblWayDLrQQlekro=";
+    sha256 = "sha256-w4h4KEfmDC/dDgtk7xgEnIYvSfPlKfsvdFhx43Tn9GA=";
   };
 
   outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big
diff --git a/pkgs/applications/graphics/menyoki/default.nix b/pkgs/applications/graphics/menyoki/default.nix
index c454fc2ad611b..afaa681437cc2 100644
--- a/pkgs/applications/graphics/menyoki/default.nix
+++ b/pkgs/applications/graphics/menyoki/default.nix
@@ -6,6 +6,7 @@
 , stdenv
 , libX11
 , libXrandr
+, AppKit
 , withSki ? true
 }:
 
@@ -25,9 +26,10 @@ rustPlatform.buildRustPackage rec {
   nativeBuildInputs = [ installShellFiles ]
     ++ lib.optional stdenv.isLinux pkg-config;
 
-  buildInputs = lib.optionals stdenv.isLinux [ libX11 libXrandr ];
+  buildInputs = lib.optionals stdenv.isLinux [ libX11 libXrandr ]
+    ++ lib.optional stdenv.isDarwin AppKit;
 
-  cargoBuildFlags = lib.optional (!withSki) "--no-default-features";
+  buildNoDefaultFeatures = !withSki;
 
   postInstall = ''
     installManPage man/*
diff --git a/pkgs/applications/misc/cardpeek/default.nix b/pkgs/applications/misc/cardpeek/default.nix
index 1d5baf9f6b348..adabcdac9542d 100644
--- a/pkgs/applications/misc/cardpeek/default.nix
+++ b/pkgs/applications/misc/cardpeek/default.nix
@@ -1,29 +1,50 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, autoreconfHook,
-  glib, gtk3, pcsclite, lua5_2, curl, readline }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, pkg-config
+, autoreconfHook
+, glib
+, gtk3
+, pcsclite
+, lua5_2
+, curl
+, readline
+, PCSC
+, xcbuild
+}:
 let
   version = "0.8.4";
 in
-  stdenv.mkDerivation {
-    pname = "cardpeek";
-    inherit version;
+stdenv.mkDerivation {
+  pname = "cardpeek";
+  inherit version;
 
-    src = fetchFromGitHub {
-      owner = "L1L1";
-      repo = "cardpeek";
-      rev = "cardpeek-${version}";
-      sha256 = "1ighpl7nvcvwnsd6r5h5n9p95kclwrq99hq7bry7s53yr57l6588";
-    };
+  src = fetchFromGitHub {
+    owner = "L1L1";
+    repo = "cardpeek";
+    rev = "cardpeek-${version}";
+    sha256 = "1ighpl7nvcvwnsd6r5h5n9p95kclwrq99hq7bry7s53yr57l6588";
+  };
 
-    nativeBuildInputs = [ pkg-config autoreconfHook ];
-    buildInputs = [ glib gtk3 pcsclite lua5_2 curl readline ];
+  postPatch = lib.optionalString stdenv.isDarwin ''
+    # replace xcode check and hard-coded PCSC framework path
+    substituteInPlace configure.ac \
+      --replace 'if test ! -e "/Applications/Xcode.app/"; then' 'if test yes != yes; then' \
+      --replace 'PCSC_HEADERS=`ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/*.sdk/System/Library/Frameworks/PCSC.framework/Versions/Current/Headers/ | sort | head -1`' 'PCSC_HEADERS=${PCSC}/Library/Frameworks/PCSC.framework/Headers'
+  '';
 
-    enableParallelBuilding = true;
+  nativeBuildInputs = [ pkg-config autoreconfHook ];
+  buildInputs = [ glib gtk3 lua5_2 curl readline ]
+    ++ lib.optional stdenv.isDarwin PCSC
+    ++ lib.optional stdenv.isLinux pcsclite;
 
-    meta = with lib; {
-      homepage = "https://github.com/L1L1/cardpeek";
-      description = "A tool to read the contents of ISO7816 smart cards";
-      license = licenses.gpl3Plus;
-      platforms = with platforms; linux ++ darwin;
-      maintainers = with maintainers; [ embr ];
-    };
-  }
+  enableParallelBuilding = true;
+
+  meta = with lib; {
+    homepage = "https://github.com/L1L1/cardpeek";
+    description = "A tool to read the contents of ISO7816 smart cards";
+    license = licenses.gpl3Plus;
+    platforms = with platforms; linux ++ darwin;
+    maintainers = with maintainers; [ embr ];
+  };
+}
diff --git a/pkgs/applications/misc/clipcat/default.nix b/pkgs/applications/misc/clipcat/default.nix
index b28b33d56c917..38c0c103943a9 100644
--- a/pkgs/applications/misc/clipcat/default.nix
+++ b/pkgs/applications/misc/clipcat/default.nix
@@ -35,7 +35,7 @@ rustPlatform.buildRustPackage rec {
   ];
   buildInputs = [ xorg.libxcb ];
 
-  cargoBuildFlags = [ "--features=all" ];
+  buildFeatures = [ "all" ];
 
   postInstall = ''
     installShellCompletion --bash completions/bash-completion/completions/*
diff --git a/pkgs/applications/misc/cloak/default.nix b/pkgs/applications/misc/cloak/default.nix
index cb33aa595a466..7b25018412627 100644
--- a/pkgs/applications/misc/cloak/default.nix
+++ b/pkgs/applications/misc/cloak/default.nix
@@ -1,4 +1,4 @@
-{ lib, rustPlatform, fetchFromGitHub }:
+{ lib, stdenv, rustPlatform, fetchFromGitHub, Security }:
 
 rustPlatform.buildRustPackage rec {
   pname = "cloak";
@@ -13,6 +13,8 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "0af38wgwmsamnx63dwfm2nrkd8wmky3ai7zwy0knmifgkn4b7yyj";
 
+  buildInputs = lib.optionals stdenv.isDarwin [ Security ];
+
   meta = with lib; {
     homepage = "https://github.com/evansmurithi/cloak";
     description = "Command-line OTP authenticator application";
diff --git a/pkgs/applications/misc/gpxsee/default.nix b/pkgs/applications/misc/gpxsee/default.nix
index 85fef2cbb00d6..84651b78121ae 100644
--- a/pkgs/applications/misc/gpxsee/default.nix
+++ b/pkgs/applications/misc/gpxsee/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "gpxsee";
-  version = "9.11";
+  version = "9.12";
 
   src = fetchFromGitHub {
     owner = "tumic0";
     repo = "GPXSee";
     rev = version;
-    sha256 = "sha256-5FGdcmkVOxjDngVQIlXnH3OPRMjaixqJ2Xb239usUuo=";
+    sha256 = "sha256-hIDphwmS4UNSTvE+Icupipo6AmT2fiPdaufT/I3EeJ4=";
   };
 
   patches = (substituteAll {
@@ -23,7 +23,7 @@ mkDerivation rec {
     lrelease gpxsee.pro
   '';
 
-  postInstall = with stdenv; lib.optionalString isDarwin ''
+  postInstall = lib.optionalString stdenv.isDarwin ''
     mkdir -p $out/Applications
     mv GPXSee.app $out/Applications
   '';
diff --git a/pkgs/applications/misc/logseq/default.nix b/pkgs/applications/misc/logseq/default.nix
index 4fb05b25c063a..3dca98c2cc773 100644
--- a/pkgs/applications/misc/logseq/default.nix
+++ b/pkgs/applications/misc/logseq/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "logseq";
-  version = "0.4.5";
+  version = "0.4.6";
 
   src = fetchurl {
     url = "https://github.com/logseq/logseq/releases/download/${version}/logseq-linux-x64-${version}.AppImage";
-    sha256 = "EMybZH3heUWeCP74KdFr6zJY1R3hePo6RssbJXrkd9g=";
+    sha256 = "fGRPuv98sr3wcVbkVCJr2yKxBZ/IiQP854T9NBf/vCk=";
     name = "${pname}-${version}.AppImage";
   };
 
diff --git a/pkgs/applications/misc/lscolors/default.nix b/pkgs/applications/misc/lscolors/default.nix
index f29fdfda6c181..70804ef1fddbf 100644
--- a/pkgs/applications/misc/lscolors/default.nix
+++ b/pkgs/applications/misc/lscolors/default.nix
@@ -2,19 +2,22 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "lscolors";
-  version = "0.8.0";
+  version = "0.8.1";
 
   src = fetchCrate {
     inherit version pname;
-    sha256 = "sha256-dwtrs9NlhJ+km2/146HMnDirWRB5Ur5LTmWdKAK03v0=";
+    sha256 = "sha256-74KNnERhyiZamVyS9yzDNVf33KMqDiSfPb5BCTKFuHA=";
   };
 
-  cargoSha256 = "sha256-vQnrLt+VSDPr61VMkYFtjSDnEt+NmWBZUd4qLzPzQBU=";
+  cargoSha256 = "sha256-mjGZ/q9BByndwfnFGk6k5KD9ctY0X0/oaEugiOJY8Ms=";
+
+  # setid is not allowed in the sandbox
+  checkFlags = [ "--skip=tests::style_for_setid" ];
 
   meta = with lib; {
     description = "Rust library and tool to colorize paths using LS_COLORS";
     homepage = "https://github.com/sharkdp/lscolors";
-    license = with licenses; [ asl20 mit ];
+    license = with licenses; [ asl20 /* or */ mit ];
     maintainers = with maintainers; [ SuperSandro2000 ];
   };
 }
diff --git a/pkgs/applications/misc/osmscout-server/default.nix b/pkgs/applications/misc/osmscout-server/default.nix
index a3815dae00fc3..d6041554705e2 100644
--- a/pkgs/applications/misc/osmscout-server/default.nix
+++ b/pkgs/applications/misc/osmscout-server/default.nix
@@ -1,6 +1,6 @@
 { lib, mkDerivation, fetchFromGitHub, fetchpatch, pkg-config
 , qmake, qttools, kirigami2, qtquickcontrols2, qtlocation
-, libosmscout, mapnik, valhalla, libpostal, osrm-backend, protobuf
+, libosmscout, valhalla, libpostal, osrm-backend, protobuf
 , libmicrohttpd_0_9_70, sqlite, marisa, kyotocabinet, boost
 }:
 
@@ -41,7 +41,7 @@ mkDerivation rec {
   nativeBuildInputs = [ qmake pkg-config qttools ];
   buildInputs = [
     kirigami2 qtquickcontrols2 qtlocation
-    mapnik valhalla libosmscout osrm-backend libmicrohttpd_0_9_70
+    valhalla libosmscout osrm-backend libmicrohttpd_0_9_70
     libpostal sqlite marisa kyotocabinet boost protobuf date
   ];
 
@@ -52,8 +52,10 @@ mkDerivation rec {
     mv data/valhalla.json-3.1 data/valhalla.json
   '';
 
-  # Choose to build the kirigami UI variant
-  qmakeFlags = [ "SCOUT_FLAVOR=kirigami" ];
+  qmakeFlags = [
+    "SCOUT_FLAVOR=kirigami" # Choose to build the kirigami UI variant
+    "CONFIG+=disable_mapnik" # Disable the optional mapnik backend
+  ];
 
   meta = with lib; {
     description = "Maps server providing tiles, geocoder, and router";
diff --git a/pkgs/applications/misc/todiff/default.nix b/pkgs/applications/misc/todiff/default.nix
index 752ab35461ea7..14f03cdc8cef1 100644
--- a/pkgs/applications/misc/todiff/default.nix
+++ b/pkgs/applications/misc/todiff/default.nix
@@ -13,7 +13,7 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "0vrn1vc3rwabv6l2r1qb7mkcxbp75q79bfl3rxhyi51ra3ij507r";
 
-  checkPhase = "cargo test --features=integration_tests";
+  checkFeatures = [ "integration_tests" ];
 
   meta = with lib; {
     description = "Human-readable diff for todo.txt files";
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.json b/pkgs/applications/networking/browsers/chromium/upstream-info.json
index ca73b620cfbb6..313a03d0dd2fe 100644
--- a/pkgs/applications/networking/browsers/chromium/upstream-info.json
+++ b/pkgs/applications/networking/browsers/chromium/upstream-info.json
@@ -31,9 +31,9 @@
     }
   },
   "dev": {
-    "version": "97.0.4692.8",
-    "sha256": "0n47jfxs05g55p69f5939jf5pgyw88n4cpg78k019n3zr2vlv1qf",
-    "sha256bin64": "1gisqc6dz7yfigj0dji7cnx5jdcjz0gmn248cp2a6zs9mfvwwbqv",
+    "version": "97.0.4692.20",
+    "sha256": "1njgfz3kz1pyyaaskqc47ldy2gzc3c9a8mjib81nalzrqbmd3372",
+    "sha256bin64": "06vsmzz8nvmx7hfqwvqfmq4h000dw22srxdrgrdfgh7mry0yvf4a",
     "deps": {
       "gn": {
         "version": "2021-11-03",
diff --git a/pkgs/applications/networking/cluster/krane/Gemfile.lock b/pkgs/applications/networking/cluster/krane/Gemfile.lock
index 7cc11b1af60fd..c70d4b79e1449 100644
--- a/pkgs/applications/networking/cluster/krane/Gemfile.lock
+++ b/pkgs/applications/networking/cluster/krane/Gemfile.lock
@@ -55,13 +55,13 @@ GEM
     http-form_data (2.3.0)
     http-parser (1.2.3)
       ffi-compiler (>= 1.0, < 2.0)
-    i18n (1.8.10)
+    i18n (1.8.11)
       concurrent-ruby (~> 1.0)
     jsonpath (0.9.9)
       multi_json
       to_regexp (~> 0.2.1)
     jwt (2.3.0)
-    krane (2.3.0)
+    krane (2.3.1)
       activesupport (>= 5.0)
       colorize (~> 0.8)
       concurrent-ruby (~> 1.1)
@@ -77,15 +77,15 @@ GEM
       recursive-open-struct (~> 1.1, >= 1.1.1)
       rest-client (~> 2.0)
     memoist (0.16.2)
-    mime-types (3.3.1)
+    mime-types (3.4.0)
       mime-types-data (~> 3.2015)
-    mime-types-data (3.2021.0901)
+    mime-types-data (3.2021.1115)
     minitest (5.14.4)
     multi_json (1.15.0)
     multipart-post (2.1.1)
     netrc (0.11.0)
-    oj (3.13.8)
-    os (1.1.1)
+    oj (3.13.9)
+    os (1.1.4)
     public_suffix (4.0.6)
     rake (13.0.6)
     recursive-open-struct (1.1.3)
@@ -108,7 +108,7 @@ GEM
     unf (0.1.4)
       unf_ext
     unf_ext (0.0.8)
-    zeitwerk (2.4.2)
+    zeitwerk (2.5.1)
 
 PLATFORMS
   ruby
@@ -117,4 +117,4 @@ DEPENDENCIES
   krane
 
 BUNDLED WITH
-   2.2.20
+   2.2.24
diff --git a/pkgs/applications/networking/cluster/krane/gemset.nix b/pkgs/applications/networking/cluster/krane/gemset.nix
index 13163c193e36f..a9a8620911d93 100644
--- a/pkgs/applications/networking/cluster/krane/gemset.nix
+++ b/pkgs/applications/networking/cluster/krane/gemset.nix
@@ -244,10 +244,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0g2fnag935zn2ggm5cn6k4s4xvv53v2givj1j90szmvavlpya96a";
+      sha256 = "0vdd1kii40qhbr9n8qx71k2gskq6rkl8ygy8hw5hfj8bb5a364xf";
       type = "gem";
     };
-    version = "1.8.10";
+    version = "1.8.11";
   };
   jsonpath = {
     dependencies = ["multi_json" "to_regexp"];
@@ -276,10 +276,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1r4sfyapdqcgqns4skxwkxd9v7a4f0h7y7zrgyz7za1p56jmx9sr";
+      sha256 = "0k1lwg0d2phs9n9zdx7nv5rv2p2vipm9jgzalr8x9nrq1is6wgvr";
       type = "gem";
     };
-    version = "2.3.0";
+    version = "2.3.1";
   };
   kubeclient = {
     dependencies = ["http" "recursive-open-struct" "rest-client"];
@@ -308,20 +308,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1zj12l9qk62anvk9bjvandpa6vy4xslil15wl6wlivyf51z773vh";
+      sha256 = "1wvbwlkf6i17xvxx70cffw26ijvcc400vfhpbnvd8mmx556cnb4g";
       type = "gem";
     };
-    version = "3.3.1";
+    version = "3.4.0";
   };
   mime-types-data = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1z5wvk6qi4ws1kjh7xn1rfirqw5m72bwvqacck1fjpbh33pcrwxv";
+      sha256 = "03m3fkix2haah20kvh1jgv262yg9jlzn6wq0y31kafxk8fysfy27";
       type = "gem";
     };
-    version = "3.2021.0901";
+    version = "3.2021.1115";
   };
   minitest = {
     groups = ["default"];
@@ -368,20 +368,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wk5vk0py65aqp3xrs8s8qkj8pw6xny5z5p9dx16qdx6j3zw5a6g";
+      sha256 = "1hcmczbp9afxijzg0gvp9milyzk15phfmbpmmsj5ppmziwkdls16";
       type = "gem";
     };
-    version = "3.13.8";
+    version = "3.13.9";
   };
   os = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12fli64wz5j9868gpzv5wqsingk1jk457qyqksv9ksmq9b0zpc9x";
+      sha256 = "0gwd20smyhxbm687vdikfh1gpi96h8qb1x28s2pdcysf6dm6v0ap";
       type = "gem";
     };
-    version = "1.1.1";
+    version = "1.1.4";
   };
   public_suffix = {
     groups = ["default"];
@@ -512,9 +512,9 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1746czsjarixq0x05f7p3hpzi38ldg6wxnxxw74kbjzh1sdjgmpl";
+      sha256 = "18l4r6layck0d80ydc692mv1lxak5xbf6w2paj1x7m2ggbggzxgj";
       type = "gem";
     };
-    version = "2.4.2";
+    version = "2.5.1";
   };
 }
diff --git a/pkgs/applications/networking/cluster/spacegun/node-composition.nix b/pkgs/applications/networking/cluster/spacegun/node-composition.nix
index 7cbb2328ae731..9d532a3861a1e 100644
--- a/pkgs/applications/networking/cluster/spacegun/node-composition.nix
+++ b/pkgs/applications/networking/cluster/spacegun/node-composition.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json
index 3023bb6c7ac15..2f2e143af7594 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/providers.json
+++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json
@@ -229,12 +229,13 @@
     "version": "0.1.0"
   },
   "consul": {
-    "owner": "terraform-providers",
+    "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/consul",
     "repo": "terraform-provider-consul",
-    "rev": "v2.8.0",
-    "sha256": "1brd0fp9ksc3x8cygxm0k2q1sh4v5x89298pnidg6xirn41lvcr4",
-    "version": "2.8.0"
+    "rev": "v2.14.0",
+    "sha256": "19kmjjg4f74askwwwslbh5wvi5ndcr4wzm0374qr8gc57qiwxkpy",
+    "vendorSha256": null,
+    "version": "2.14.0"
   },
   "ct": {
     "owner": "poseidon",
@@ -362,11 +363,13 @@
     "version": "1.1.0"
   },
   "github": {
-    "owner": "terraform-providers",
+    "owner": "integrations",
+    "provider-source-address": "registry.terraform.io/integrations/github",
     "repo": "terraform-provider-github",
-    "rev": "v3.1.0",
-    "sha256": "1xl4fd1lfbn1vnrdmg2xljnv8hy6rmf0iv7g8pzbnzbvj2pi7w3b",
-    "version": "3.1.0"
+    "rev": "v4.18.0",
+    "sha256": "0vr7vxlpq1lbp85qm2084w7mqkz5yp7gxj5ln29plhm7xjpd87bp",
+    "vendorSha256": null,
+    "version": "4.18.0"
   },
   "gitlab": {
     "owner": "gitlabhq",
@@ -687,11 +690,13 @@
     "version": "0.0.1"
   },
   "nomad": {
-    "owner": "terraform-providers",
+    "owner": "hashicorp",
+    "provider-source-address": "registry.terraform.io/hashicorp/nomad",
     "repo": "terraform-provider-nomad",
-    "rev": "v1.4.5",
-    "sha256": "1sccm4mspjn92ky6nscsrmbb573mx53wzsvvapsf2p4119h9s30i",
-    "version": "1.4.5"
+    "rev": "v1.4.15",
+    "sha256": "18rrvp7h27f51di8hajl2jb53v7wadqv4241rxdx1d180fas69k1",
+    "vendorSha256": "1y5wpilnqn17zbi88z23159gx2p57a9c10ajb7gn9isbxfdqj9mb",
+    "version": "1.4.15"
   },
   "ns1": {
     "owner": "terraform-providers",
@@ -1109,8 +1114,8 @@
     "repo": "terraform-provider-vault",
     "rev": "v2.24.1",
     "sha256": "1xk14q06js774lqyylkbp53dnlsbgh3vi38mqqmndh80xigs6d99",
-    "version": "2.24.1",
-    "vendorSha256": "1ksla455qfgxpk2dmq3pg52nyyw3v0bg6fm5s60j6cb0lzvjbq48"
+    "vendorSha256": "1ksla455qfgxpk2dmq3pg52nyyw3v0bg6fm5s60j6cb0lzvjbq48",
+    "version": "2.24.1"
   },
   "vcd": {
     "owner": "terraform-providers",
diff --git a/pkgs/applications/networking/cluster/terraform-providers/update-provider b/pkgs/applications/networking/cluster/terraform-providers/update-provider
index f97bbce83faac..03d92452ebc21 100755
--- a/pkgs/applications/networking/cluster/terraform-providers/update-provider
+++ b/pkgs/applications/networking/cluster/terraform-providers/update-provider
@@ -165,7 +165,7 @@ if [[ -z "$vendorSha256" ]]; then
     vendorSha256=$(echo "${BASH_REMATCH[1]#sha256:}" | head -n 1)
     # Deal with nix unstable
     if [[ $vendorSha256 = sha256-* ]]; then
-      vendorSha256=$(nix to-base32 "$vendorSha256")
+      vendorSha256=$(nix --extra-experimental-features nix-command hash to-base32 "$vendorSha256")
     fi
   fi
 fi
diff --git a/pkgs/applications/networking/cluster/tgswitch/default.nix b/pkgs/applications/networking/cluster/tgswitch/default.nix
new file mode 100644
index 0000000000000..9a1652f25d365
--- /dev/null
+++ b/pkgs/applications/networking/cluster/tgswitch/default.nix
@@ -0,0 +1,21 @@
+{ buildGoPackage, lib, fetchFromGitHub }:
+buildGoPackage rec {
+  pname = "tgswitch";
+  version = "0.5.378";
+
+  src = fetchFromGitHub {
+    owner = "warrensbox";
+    repo = "tgswitch";
+    rev = version;
+    sha256 = "0q2aqh75acbpkmvkws0rl3d5dzq3sisy637c0x6cnc88h34g3n3i";
+  };
+
+  goPackagePath = "github.com/warrensbox/tgswitch";
+
+  meta = with lib; {
+    description = "A command line tool to switch between different versions of terragrunt";
+    homepage = "https://github.com/warrensbox/tgswitch";
+    license = licenses.mit;
+    maintainers = with maintainers; [ psibi ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix b/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix
index a359f0a4ac0f4..cd29268bec68f 100644
--- a/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix
@@ -3,6 +3,7 @@
 , electron
 , esbuild
 , fetchFromGitHub
+, fetchpatch
 , libdeltachat
 , makeDesktopItem
 , makeWrapper
@@ -14,6 +15,33 @@
 }:
 
 let
+  libdeltachat' = libdeltachat.overrideAttrs (old: rec {
+    version = "1.60.0";
+    src = fetchFromGitHub {
+      owner = "deltachat";
+      repo = "deltachat-core-rust";
+      rev = version;
+      sha256 = "1agm5xyaib4ynmw4mhgmkhh4lnxs91wv0q9i1zfihv2vkckfm2s2";
+    };
+    cargoDeps = rustPlatform.fetchCargoTarball {
+      inherit src;
+      name = "${old.pname}-${version}";
+      sha256 = "09d3mw2hb1gmqg7smaqwnfm7izw40znl0h1dz7s2imms2cnkjws1";
+    };
+    patches = [
+      # https://github.com/deltachat/deltachat-core-rust/pull/2589
+      (fetchpatch {
+        url = "https://github.com/deltachat/deltachat-core-rust/commit/408467e85d04fbbfd6bed5908d84d9e995943487.patch";
+        sha256 = "1j2ywaazglgl6370js34acrg0wrh0b7krqg05dfjf65n527lzn59";
+      })
+      ./no-static-lib.patch
+      # https://github.com/deltachat/deltachat-core-rust/pull/2660
+      (fetchpatch {
+        url = "https://github.com/deltachat/deltachat-core-rust/commit/8fb5e038a97d8ae68564c885d61b93127a68366d.patch";
+        sha256 = "088pzfrrkgfi4646dc72404s3kykcpni7hgkppalwlzg0p4is41x";
+      })
+    ];
+  });
   electronExec = if stdenv.isDarwin then
     "${electron}/Applications/Electron.app/Contents/MacOS/Electron"
   else
@@ -38,7 +66,7 @@ in nodePackages.deltachat-desktop.override rec {
   ];
 
   buildInputs = [
-    libdeltachat
+    libdeltachat'
   ] ++ lib.optionals stdenv.isDarwin [
     CoreServices
   ];
diff --git a/pkgs/applications/networking/instant-messengers/deltachat-desktop/no-static-lib.patch b/pkgs/applications/networking/instant-messengers/deltachat-desktop/no-static-lib.patch
new file mode 100644
index 0000000000000..95238cf885242
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/deltachat-desktop/no-static-lib.patch
@@ -0,0 +1,39 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index fe7abe08..acdbe0d6 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -13,7 +13,6 @@ find_program(CARGO cargo)
+ 
+ add_custom_command(
+ 	OUTPUT
+-	"target/release/libdeltachat.a"
+ 	"target/release/libdeltachat.${DYNAMIC_EXT}"
+ 	"target/release/pkgconfig/deltachat.pc"
+         COMMAND
+@@ -38,13 +37,11 @@ add_custom_target(
+ 	lib_deltachat
+ 	ALL
+ 	DEPENDS
+-	"target/release/libdeltachat.a"
+ 	"target/release/libdeltachat.${DYNAMIC_EXT}"
+ 	"target/release/pkgconfig/deltachat.pc"
+ )
+ 
+ include(GNUInstallDirs)
+ install(FILES "deltachat-ffi/deltachat.h" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+-install(FILES "target/release/libdeltachat.a" DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ install(FILES "target/release/libdeltachat.${DYNAMIC_EXT}" DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ install(FILES "target/release/pkgconfig/deltachat.pc" DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+diff --git a/deltachat-ffi/Cargo.toml b/deltachat-ffi/Cargo.toml
+index a34a27ba..cf354abb 100644
+--- a/deltachat-ffi/Cargo.toml
++++ b/deltachat-ffi/Cargo.toml
+@@ -12,7 +12,7 @@ categories = ["cryptography", "std", "email"]
+ 
+ [lib]
+ name = "deltachat"
+-crate-type = ["cdylib", "staticlib"]
++crate-type = ["cdylib"]
+ 
+ [dependencies]
+ deltachat = { path = "../", default-features = false }
diff --git a/pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh b/pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh
index 162de501e6175..dbe249d56dae6 100755
--- a/pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh
+++ b/pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh
@@ -1,5 +1,5 @@
 #! /usr/bin/env nix-shell
-#! nix-shell -i bash -p curl jq nix-prefetch
+#! nix-shell -i bash -p coreutils curl gnused jq moreutils nix-prefetch
 
 set -euo pipefail
 cd "$(dirname "$0")"
@@ -13,7 +13,7 @@ rev=$(
     jq 'map(select(.prerelease | not)) | .[0].tag_name' --raw-output
 )
 ver=$(echo "$rev" | sed 's/^v//')
-old_ver=$(sed -n 's/.*\bversion = "\(.*\)".*/\1/p' default.nix)
+old_ver=$(tac default.nix | sed -n 's/.*\bversion = "\(.*\)".*/\1/p' | head -1)
 if [ "$ver" = "$old_ver" ]; then
     echo "Up to date: $ver"
     exit
@@ -21,9 +21,12 @@ fi
 echo "$old_ver -> $ver"
 
 sha256=$(nix-prefetch -f "$nixpkgs" deltachat-desktop --rev "$rev")
-sed -e "s#\\bversion = \".*\"#version = \"$ver\"#" \
-    -e "s#\\bsha256 = \".*\"#sha256 = \"$sha256\"#" \
-    -i default.nix
+tac default.nix \
+    | sed -e "0,/version = \".*\"/s//version = \"$ver\"/" \
+          -e "0,/sha256 = \".*\"/s//sha256 = \"$sha256\"/" \
+    | tac \
+    | sponge default.nix
+
 src=$(nix-build "$nixpkgs" -A deltachat-desktop.src --no-out-link)
 
 jq '{ name, version, dependencies: (.dependencies + (.devDependencies | del(.["@typescript-eslint/eslint-plugin","@typescript-eslint/parser","esbuild","electron-builder","electron-devtools-installer","electron-notarize","esbuild","eslint","eslint-config-prettier","eslint-plugin-react-hooks","hallmark","prettier","tape","testcafe","testcafe-browser-provider-electron","testcafe-react-selectors","walk"]))) }' \
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-googlechat/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-googlechat/default.nix
new file mode 100644
index 0000000000000..b274b55ac228a
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-googlechat/default.nix
@@ -0,0 +1,27 @@
+{ lib, stdenv, fetchFromGitHub, pidgin, glib, json-glib, protobuf, protobufc }:
+
+stdenv.mkDerivation {
+  pname = "purple-googlechat";
+  version = "unstable-2021-10-18";
+
+  src = fetchFromGitHub {
+    owner = "EionRobb";
+    repo = "purple-googlechat";
+    rev = "56ba7f79883eca67d37629d365776f6c0b40abdc";
+    sha256 = "sha256-iTYVgYI9+6rqqBl5goeEAXpK8FgHDv0MmPsV/82reWA=";
+  };
+
+  nativeBuildInputs = [ protobufc ];
+  buildInputs = [ pidgin glib json-glib protobuf ];
+
+  PKG_CONFIG_PURPLE_PLUGINDIR = "${placeholder "out"}/lib/purple-2";
+  PKG_CONFIG_PURPLE_DATADIR = "${placeholder "out"}/share";
+
+  meta = with lib; {
+    homepage = "https://github.com/EionRobb/purple-googlechat";
+    description = "Native Google Chat support for pidgin";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
diff --git a/pkgs/applications/networking/irc/tiny/default.nix b/pkgs/applications/networking/irc/tiny/default.nix
index fde521c53d585..e102b1077a388 100644
--- a/pkgs/applications/networking/irc/tiny/default.nix
+++ b/pkgs/applications/networking/irc/tiny/default.nix
@@ -21,11 +21,11 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "05q3f1wp48mwkz8n0102rwb6jzrgpx3dlbxzf3zcw8r1mblgzim1";
 
-  cargoBuildFlags = lib.optionals stdenv.isLinux [ "--features=desktop-notifications" ];
-
   nativeBuildInputs = lib.optional stdenv.isLinux pkg-config;
   buildInputs = lib.optionals stdenv.isLinux [ dbus openssl ] ++ lib.optional stdenv.isDarwin Foundation;
 
+  buildFeatures = lib.optional stdenv.isLinux "desktop-notifications";
+
   meta = with lib; {
     description = "A console IRC client";
     homepage = "https://github.com/osa1/tiny";
diff --git a/pkgs/applications/networking/mailreaders/electron-mail/default.nix b/pkgs/applications/networking/mailreaders/electron-mail/default.nix
index 1f7d663cf8e53..b6dca7e70b6b5 100644
--- a/pkgs/applications/networking/mailreaders/electron-mail/default.nix
+++ b/pkgs/applications/networking/mailreaders/electron-mail/default.nix
@@ -1,13 +1,13 @@
-{ appimageTools, lib, fetchurl }:
+{ appimageTools, lib, fetchurl, libsecret }:
 
 let
   pname = "electron-mail";
-  version = "4.12.2";
+  version = "4.12.7";
   name = "ElectronMail-${version}";
 
   src = fetchurl {
     url = "https://github.com/vladimiry/ElectronMail/releases/download/v${version}/electron-mail-${version}-linux-x86_64.AppImage";
-    sha256 = "D+0qoIb0EwUVbgKOiKQpqoLDgm8l/UKDWm/BjhW4MYU=";
+    sha256 = "42d0b49a2feba628f4845940ffd9607739bd5fcdbe6ba37e15f993c511d21e46";
   };
 
   appimageContents = appimageTools.extract { inherit name src; };
@@ -16,13 +16,16 @@ in appimageTools.wrapType2 {
 
   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
   '';
 
+  extraPkgs = pkgs: with pkgs; [
+    libsecret
+  ];
+
   meta = with lib; {
     description = "ElectronMail is an Electron-based unofficial desktop client for ProtonMail";
     homepage = "https://github.com/vladimiry/ElectronMail";
diff --git a/pkgs/applications/networking/mailreaders/meli/default.nix b/pkgs/applications/networking/mailreaders/meli/default.nix
index d0575b60653b1..d4076c88bb8f4 100644
--- a/pkgs/applications/networking/mailreaders/meli/default.nix
+++ b/pkgs/applications/networking/mailreaders/meli/default.nix
@@ -25,14 +25,14 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "sha256-ZE653OtXyZ9454bKPApmuL2kVko/hGBWEAya1L1KIoc=";
 
-  cargoBuildFlags = lib.optional withNotmuch "--features=notmuch";
-
   nativeBuildInputs = [ pkg-config gzip makeWrapper ];
 
   buildInputs = [ openssl dbus sqlite ] ++ lib.optional withNotmuch notmuch;
 
   checkInputs = [ file ];
 
+  buildFeatures = lib.optional withNotmuch [ "notmuch" ];
+
   postInstall = ''
     mkdir -p $out/share/man/man1
     gzip < docs/meli.1 > $out/share/man/man1/meli.1.gz
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
index 4bae5387255df..30770390e6cd6 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
@@ -10,12 +10,12 @@ in
 rec {
   thunderbird = common rec {
     pname = "thunderbird";
-    version = "91.3.0";
+    version = "91.3.1";
     application = "comm/mail";
     binaryName = pname;
     src = fetchurl {
       url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
-      sha512 = "938de817ed2cad90f665559da1dfc266f34b6ca2e688ee364112edfdb1167183a8225132ed50b672ceb14402be933be82fd1ef8b46f103cdf1534a403fb472d9";
+      sha512 = "4938f676ddeeba37da1f2086d76a2ef2c870738169f7e10b35b83e4ed772df634825ee25c28232df1ac1e3a18a9466e97dc7ee318abbf43f1f4ce6479a13975b";
     };
     patches = [
     ];
diff --git a/pkgs/applications/networking/mhost/default.nix b/pkgs/applications/networking/mhost/default.nix
index f6aad5eaa081c..beed066e65e98 100644
--- a/pkgs/applications/networking/mhost/default.nix
+++ b/pkgs/applications/networking/mhost/default.nix
@@ -1,4 +1,4 @@
-{ fetchFromGitHub, rustPlatform, lib }:
+{ lib, stdenv, fetchFromGitHub, rustPlatform, Security }:
 
 rustPlatform.buildRustPackage rec {
   pname = "mhost";
@@ -13,6 +13,8 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "0gqrya0bpdd67k2sxib7f4npnrx84d9r4hjq2sg2xz4j8pmgs018";
 
+  buildInputs = lib.optional stdenv.isDarwin Security;
+
   CARGO_CRATE_NAME = "mhost";
 
   doCheck = false;
diff --git a/pkgs/applications/networking/p2p/ncdc/default.nix b/pkgs/applications/networking/p2p/ncdc/default.nix
index dd7f4a7bb60fe..053f1d67882b4 100644
--- a/pkgs/applications/networking/p2p/ncdc/default.nix
+++ b/pkgs/applications/networking/p2p/ncdc/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, ncurses, zlib, bzip2, sqlite, pkg-config, glib, gnutls }:
+{ lib, stdenv, fetchurl, fetchpatch, ncurses, zlib, bzip2, sqlite, pkg-config, glib, gnutls }:
 
 stdenv.mkDerivation rec {
   pname = "ncdc";
@@ -9,6 +9,15 @@ stdenv.mkDerivation rec {
     sha256 = "1bdgqd07f026qk6vpbxqsin536znd33931m3b4z44prlm9wd6pyi";
   };
 
+  patches = [
+    # Upstream fix for ncurses-6.3 support:
+    (fetchpatch {
+      name = "ncurses-6.3.patch";
+      url = "https://g.blicky.net/ncdc.git/patch/?id=4126dd51e90deb9e22dfd139cc4518a7812fcad6";
+      sha256 = "13hqkmhmbazj6cllb5b2ccgf51vsn5lri7jqkqc5xwivgcisfrij";
+    })
+  ];
+
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ ncurses zlib bzip2 sqlite glib gnutls ];
 
diff --git a/pkgs/applications/networking/synology-drive/default.nix b/pkgs/applications/networking/synology-drive/default.nix
new file mode 100644
index 0000000000000..20b0f1168cb36
--- /dev/null
+++ b/pkgs/applications/networking/synology-drive/default.nix
@@ -0,0 +1,45 @@
+{ lib, mkDerivation, fetchurl, autoPatchelfHook, dpkg, glibc, gnome }:
+
+mkDerivation rec {
+  pname = "synology-drive";
+  subVersion = "12674";
+  version = "3.0.1-${subVersion}";
+
+  src = fetchurl {
+    url = "https://global.download.synology.com/download/Utility/SynologyDriveClient/${version}/Ubuntu/Installer/x86_64/synology-drive-client-${subVersion}.x86_64.deb";
+    sha256 = "1yyv6zgszsym22kf4jvlan7n9lw09fw24fyrh7c8pzbb2029gp8a";
+  };
+
+  nativeBuildInputs = [ autoPatchelfHook dpkg ];
+
+  buildInputs = [ glibc gnome.nautilus ];
+
+  unpackPhase = ''
+    mkdir -p $out
+    dpkg -x $src $out
+  '';
+
+  installPhase = ''
+    # synology-drive executable
+    cp -av $out/usr/* $out
+    rm -rf $out/usr
+
+    runHook postInstall
+  '';
+
+  postInstall = ''
+    substituteInPlace $out/bin/synology-drive --replace /opt $out/opt
+  '';
+
+  meta = with lib; {
+    homepage = "https://www.synology.com/";
+    description = "Synchronize files between client and Synology NAS.";
+    longDescription = ''
+      Drive for PC, the desktop utility of the DSM add-on package.
+      Drive, allows you to sync and share files owned by you or shared by others between a centralized Synology NAS and multiple client computers.
+    '';
+    license = licenses.unfree;
+    maintainers = with maintainers; [ MoritzBoehme ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/science/astronomy/gildas/default.nix b/pkgs/applications/science/astronomy/gildas/default.nix
index b716b0f2f90fc..beb3bd92ea5e0 100644
--- a/pkgs/applications/science/astronomy/gildas/default.nix
+++ b/pkgs/applications/science/astronomy/gildas/default.nix
@@ -7,8 +7,8 @@ let
 in
 
 stdenv.mkDerivation rec {
-  srcVersion = "sep20a";
-  version = "20200901_a";
+  srcVersion = "nov21a";
+  version = "20211101_a";
   pname = "gildas";
 
   src = fetchurl {
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     # source code of the previous release to a different directory
     urls = [ "http://www.iram.fr/~gildas/dist/gildas-src-${srcVersion}.tar.xz"
       "http://www.iram.fr/~gildas/dist/archive/gildas/gildas-src-${srcVersion}.tar.xz" ];
-    sha256 = "9faa0b3e674b5ffe5b1aee88027d7401a46ae28cd0b306595300547605d6222a";
+    sha256 = "0fb6iqwh4hm7v7sib7sx98vxdavn3d6q2gq6y6vxg2z29g31f8g2";
   };
 
   nativeBuildInputs = [ pkg-config groff perl getopt gfortran which ];
diff --git a/pkgs/applications/science/logic/elan/default.nix b/pkgs/applications/science/logic/elan/default.nix
index cc4f0680de3ed..4326c5b0d6b9e 100644
--- a/pkgs/applications/science/logic/elan/default.nix
+++ b/pkgs/applications/science/logic/elan/default.nix
@@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ curl zlib openssl ]
     ++ lib.optional stdenv.isDarwin libiconv;
 
-  cargoBuildFlags = [ "--features no-self-update" ];
+  buildFeatures = [ "no-self-update" ];
 
   patches = lib.optionals stdenv.isLinux [
     # Run patchelf on the downloaded binaries.
diff --git a/pkgs/applications/science/machine-learning/finalfusion-utils/default.nix b/pkgs/applications/science/machine-learning/finalfusion-utils/default.nix
index 77dbbd7cdd1e7..19e6219fc04a4 100644
--- a/pkgs/applications/science/machine-learning/finalfusion-utils/default.nix
+++ b/pkgs/applications/science/machine-learning/finalfusion-utils/default.nix
@@ -22,12 +22,6 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "sha256-/rLv2/bcVsmWw+ZfyumDcj0ptHPQBCCYR9O/lVlV+G0=";
 
-  # Enables build against a generic BLAS.
-  cargoBuildFlags = [
-    "--features"
-    "netlib"
-  ];
-
   nativeBuildInputs = [ installShellFiles ];
 
   buildInputs = [
@@ -38,6 +32,9 @@ rustPlatform.buildRustPackage rec {
     Security
   ];
 
+  # Enables build against a generic BLAS.
+  buildFeatures = [ "netlib" ];
+
   postInstall = ''
     # Install shell completions
     for shell in bash fish zsh; do
diff --git a/pkgs/applications/science/math/R/default.nix b/pkgs/applications/science/math/R/default.nix
index 0a9a976f18a39..815d108ce4125 100644
--- a/pkgs/applications/science/math/R/default.nix
+++ b/pkgs/applications/science/math/R/default.nix
@@ -33,11 +33,15 @@ stdenv.mkDerivation rec {
     ./no-usr-local-search-paths.patch
   ];
 
+  # Test of the examples for package 'tcltk' fails in Darwin sandbox. See:
+  # https://github.com/NixOS/nixpkgs/issues/146131
   prePatch = lib.optionalString stdenv.isDarwin ''
     substituteInPlace configure \
       --replace "-install_name libRblas.dylib" "-install_name $out/lib/R/lib/libRblas.dylib" \
       --replace "-install_name libRlapack.dylib" "-install_name $out/lib/R/lib/libRlapack.dylib" \
       --replace "-install_name libR.dylib" "-install_name $out/lib/R/lib/libR.dylib"
+    substituteInPlace tests/Examples/Makefile.in \
+      --replace "test-Examples: test-Examples-Base" "test-Examples:" # do not test the examples
   '';
 
   dontDisableStatic = static;
diff --git a/pkgs/applications/version-management/commitizen/generate-dependencies.sh b/pkgs/applications/version-management/commitizen/generate-dependencies.sh
index 7111289d29098..9855e2d41d1ad 100755
--- a/pkgs/applications/version-management/commitizen/generate-dependencies.sh
+++ b/pkgs/applications/version-management/commitizen/generate-dependencies.sh
@@ -1,5 +1,5 @@
 #!/usr/bin/env nix-shell
-#! nix-shell -i bash -p nodePackages.node2nix
+#! nix-shell -I nixpkgs=../../../.. -i bash -p nodePackages.node2nix
 
 node2nix \
   --node-env node-env.nix \
diff --git a/pkgs/applications/version-management/commitizen/node-composition.nix b/pkgs/applications/version-management/commitizen/node-composition.nix
index 0769168a78fa3..53bdef1f98646 100644
--- a/pkgs/applications/version-management/commitizen/node-composition.nix
+++ b/pkgs/applications/version-management/commitizen/node-composition.nix
@@ -1,4 +1,4 @@
-# This file has been generated by node2nix 1.8.0. Do not edit!
+# This file has been generated by node2nix 1.9.0. Do not edit!
 
 {pkgs ? import <nixpkgs> {
     inherit system;
@@ -6,12 +6,12 @@
 
 let
   nodeEnv = import ./node-env.nix {
-    inherit (pkgs) lib stdenv python2 util-linux runCommand writeTextFile;
-    inherit nodejs;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
+    inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
 in
 import ./node-packages.nix {
-  inherit (pkgs) fetchurl fetchgit;
+  inherit (pkgs) fetchurl nix-gitignore stdenv lib fetchgit;
   inherit nodeEnv;
 }
diff --git a/pkgs/applications/version-management/commitizen/node-env.nix b/pkgs/applications/version-management/commitizen/node-env.nix
index 262df27e464fe..5f055785791ba 100644
--- a/pkgs/applications/version-management/commitizen/node-env.nix
+++ b/pkgs/applications/version-management/commitizen/node-env.nix
@@ -1,8 +1,11 @@
 # This file originates from node2nix
 
-{lib, stdenv, nodejs, python2, util-linux, libtool, runCommand, writeTextFile}:
+{lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile, writeShellScript}:
 
 let
+  # Workaround to cope with utillinux in Nixpkgs 20.09 and util-linux in Nixpkgs master
+  utillinux = if pkgs ? utillinux then pkgs.utillinux else pkgs.util-linux;
+
   python = if nodejs ? python then nodejs.python else python2;
 
   # Create a tar wrapper that filters all the 'Ignoring unknown extended header keyword' noise
@@ -37,36 +40,22 @@ let
       '';
     };
 
-  includeDependencies = {dependencies}:
-    lib.optionalString (dependencies != [])
-      (lib.concatMapStrings (dependency:
-        ''
-          # Bundle the dependencies of the package
-          mkdir -p node_modules
-          cd node_modules
+  # Common shell logic
+  installPackage = writeShellScript "install-package" ''
+    installPackage() {
+      local packageName=$1 src=$2
 
-          # Only include dependencies if they don't exist. They may also be bundled in the package.
-          if [ ! -e "${dependency.name}" ]
-          then
-              ${composePackage dependency}
-          fi
+      local strippedName
 
-          cd ..
-        ''
-      ) dependencies);
-
-  # Recursively composes the dependencies of a package
-  composePackage = { name, packageName, src, dependencies ? [], ... }@args:
-    builtins.addErrorContext "while evaluating node package '${packageName}'" ''
-      DIR=$(pwd)
+      local DIR=$PWD
       cd $TMPDIR
 
-      unpackFile ${src}
+      unpackFile $src
 
       # Make the base dir in which the target dependency resides first
-      mkdir -p "$(dirname "$DIR/${packageName}")"
+      mkdir -p "$(dirname "$DIR/$packageName")"
 
-      if [ -f "${src}" ]
+      if [ -f "$src" ]
       then
           # Figure out what directory has been unpacked
           packageDir="$(find . -maxdepth 1 -type d | tail -1)"
@@ -76,28 +65,53 @@ let
           chmod -R u+w "$packageDir"
 
           # Move the extracted tarball into the output folder
-          mv "$packageDir" "$DIR/${packageName}"
-      elif [ -d "${src}" ]
+          mv "$packageDir" "$DIR/$packageName"
+      elif [ -d "$src" ]
       then
           # Get a stripped name (without hash) of the source directory.
           # On old nixpkgs it's already set internally.
           if [ -z "$strippedName" ]
           then
-              strippedName="$(stripHash ${src})"
+              strippedName="$(stripHash $src)"
           fi
 
           # Restore write permissions to make building work
           chmod -R u+w "$strippedName"
 
           # Move the extracted directory into the output folder
-          mv "$strippedName" "$DIR/${packageName}"
+          mv "$strippedName" "$DIR/$packageName"
       fi
 
-      # Unset the stripped name to not confuse the next unpack step
-      unset strippedName
+      # Change to the package directory to install dependencies
+      cd "$DIR/$packageName"
+    }
+  '';
 
-      # Include the dependencies of the package
-      cd "$DIR/${packageName}"
+  # Bundle the dependencies of the package
+  #
+  # Only include dependencies if they don't exist. They may also be bundled in the package.
+  includeDependencies = {dependencies}:
+    lib.optionalString (dependencies != []) (
+      ''
+        mkdir -p node_modules
+        cd node_modules
+      ''
+      + (lib.concatMapStrings (dependency:
+        ''
+          if [ ! -e "${dependency.name}" ]; then
+              ${composePackage dependency}
+          fi
+        ''
+      ) dependencies)
+      + ''
+        cd ..
+      ''
+    );
+
+  # Recursively composes the dependencies of a package
+  composePackage = { name, packageName, src, dependencies ? [], ... }@args:
+    builtins.addErrorContext "while evaluating node package '${packageName}'" ''
+      installPackage "${packageName}" "${src}"
       ${includeDependencies { inherit dependencies; }}
       cd ..
       ${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
@@ -242,8 +256,8 @@ let
       if(fs.existsSync("./package-lock.json")) {
           var packageLock = JSON.parse(fs.readFileSync("./package-lock.json"));
 
-          if(packageLock.lockfileVersion !== 1) {
-             process.stderr.write("Sorry, I only understand lock file version 1!\n");
+          if(![1, 2].includes(packageLock.lockfileVersion)) {
+             process.stderr.write("Sorry, I only understand lock file versions 1 and 2!\n");
              process.exit(1);
           }
 
@@ -388,15 +402,16 @@ let
     , dontStrip ? true
     , unpackPhase ? "true"
     , buildPhase ? "true"
+    , meta ? {}
     , ... }@args:
 
     let
-      extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" ];
+      extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" "meta" ];
     in
     stdenv.mkDerivation ({
-      name = "node_${name}-${version}";
+      name = "${name}-${version}";
       buildInputs = [ tarWrapper python nodejs ]
-        ++ lib.optional (stdenv.isLinux) util-linux
+        ++ lib.optional (stdenv.isLinux) utillinux
         ++ lib.optional (stdenv.isDarwin) libtool
         ++ buildInputs;
 
@@ -411,6 +426,8 @@ let
       passAsFile = [ "compositionScript" "pinpointDependenciesScript" ];
 
       installPhase = ''
+        source ${installPackage}
+
         # Create and enter a root node_modules/ folder
         mkdir -p $out/lib/node_modules
         cd $out/lib/node_modules
@@ -443,10 +460,15 @@ let
         # Run post install hook, if provided
         runHook postInstall
       '';
+
+      meta = {
+        # default to Node.js' platforms
+        platforms = nodejs.meta.platforms;
+      } // meta;
     } // extraArgs);
 
-  # Builds a development shell
-  buildNodeShell =
+  # Builds a node environment (a node_modules folder and a set of binaries)
+  buildNodeDependencies =
     { name
     , packageName
     , version
@@ -465,12 +487,12 @@ let
 
     let
       extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" ];
-
-      nodeDependencies = stdenv.mkDerivation ({
+    in
+      stdenv.mkDerivation ({
         name = "node-dependencies-${name}-${version}";
 
         buildInputs = [ tarWrapper python nodejs ]
-          ++ lib.optional (stdenv.isLinux) util-linux
+          ++ lib.optional (stdenv.isLinux) utillinux
           ++ lib.optional (stdenv.isDarwin) libtool
           ++ buildInputs;
 
@@ -483,6 +505,8 @@ let
         passAsFile = [ "includeScript" "pinpointDependenciesScript" ];
 
         installPhase = ''
+          source ${installPackage}
+
           mkdir -p $out/${packageName}
           cd $out/${packageName}
 
@@ -512,11 +536,32 @@ let
           ln -s $out/lib/node_modules/.bin $out/bin
         '';
       } // extraArgs);
+
+  # Builds a development shell
+  buildNodeShell =
+    { name
+    , packageName
+    , version
+    , src
+    , dependencies ? []
+    , buildInputs ? []
+    , production ? true
+    , npmFlags ? ""
+    , dontNpmInstall ? false
+    , bypassCache ? false
+    , reconstructLock ? false
+    , dontStrip ? true
+    , unpackPhase ? "true"
+    , buildPhase ? "true"
+    , ... }@args:
+
+    let
+      nodeDependencies = buildNodeDependencies args;
     in
     stdenv.mkDerivation {
       name = "node-shell-${name}-${version}";
 
-      buildInputs = [ python nodejs ] ++ lib.optional (stdenv.isLinux) util-linux ++ buildInputs;
+      buildInputs = [ python nodejs ] ++ lib.optional (stdenv.isLinux) utillinux ++ buildInputs;
       buildCommand = ''
         mkdir -p $out/bin
         cat > $out/bin/shell <<EOF
@@ -538,5 +583,6 @@ in
 {
   buildNodeSourceDist = lib.makeOverridable buildNodeSourceDist;
   buildNodePackage = lib.makeOverridable buildNodePackage;
+  buildNodeDependencies = lib.makeOverridable buildNodeDependencies;
   buildNodeShell = lib.makeOverridable buildNodeShell;
 }
diff --git a/pkgs/applications/version-management/commitizen/node-packages.nix b/pkgs/applications/version-management/commitizen/node-packages.nix
index bee45d1727ce1..b8767125feece 100644
--- a/pkgs/applications/version-management/commitizen/node-packages.nix
+++ b/pkgs/applications/version-management/commitizen/node-packages.nix
@@ -1,6 +1,6 @@
-# This file has been generated by node2nix 1.8.0. Do not edit!
+# This file has been generated by node2nix 1.9.0. Do not edit!
 
-{nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}:
+{nodeEnv, fetchurl, fetchgit, nix-gitignore, stdenv, lib, globalBuildInputs ? []}:
 
 let
   sources = {
@@ -13,22 +13,22 @@ let
         sha512 = "+w7BZCvkewSmaRM6H4L2QM3RL90teqEIHDIFXAmrW33+0jhlymnDAEdqVeCZATvxhQuio1ifoGVlJJbIiH9Ffg==";
       };
     };
-    "@babel/code-frame-7.10.4" = {
+    "@babel/code-frame-7.15.8" = {
       name = "_at_babel_slash_code-frame";
       packageName = "@babel/code-frame";
-      version = "7.10.4";
+      version = "7.15.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz";
-        sha512 = "vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==";
+        url = "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.15.8.tgz";
+        sha512 = "2IAnmn8zbvC/jKYhq5Ki9I+DwjlrtMPUCH/CpHvqI4dNnlwHwsxoIhlc8WcYY5LSYknXQtAlFYuHfqAFCvQ4Wg==";
       };
     };
-    "@babel/compat-data-7.11.0" = {
+    "@babel/compat-data-7.15.0" = {
       name = "_at_babel_slash_compat-data";
       packageName = "@babel/compat-data";
-      version = "7.11.0";
+      version = "7.15.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.11.0.tgz";
-        sha512 = "TPSvJfv73ng0pfnEOh17bYMPQbI95+nGWc71Ss4vZdRBHTDqmM9Z8ZV4rYz8Ks7sfzc95n30k6ODIq5UGnXcYQ==";
+        url = "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz";
+        sha512 = "0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA==";
       };
     };
     "@babel/core-7.11.6" = {
@@ -40,319 +40,310 @@ let
         sha512 = "Wpcv03AGnmkgm6uS6k8iwhIwTrcP0m17TL1n1sy7qD0qelDu4XNeW0dN0mHfa+Gei211yDaLoEe/VlbXQzM4Bg==";
       };
     };
-    "@babel/generator-7.11.6" = {
+    "@babel/generator-7.15.8" = {
       name = "_at_babel_slash_generator";
       packageName = "@babel/generator";
-      version = "7.11.6";
+      version = "7.15.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.11.6.tgz";
-        sha512 = "DWtQ1PV3r+cLbySoHrwn9RWEgKMBLLma4OBQloPRyDYvc5msJM9kvTLo1YnlJd1P/ZuKbdli3ijr5q3FvAF3uA==";
+        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.15.8.tgz";
+        sha512 = "ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g==";
       };
     };
-    "@babel/helper-annotate-as-pure-7.10.4" = {
+    "@babel/helper-annotate-as-pure-7.15.4" = {
       name = "_at_babel_slash_helper-annotate-as-pure";
       packageName = "@babel/helper-annotate-as-pure";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz";
-        sha512 = "XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA==";
+        url = "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.15.4.tgz";
+        sha512 = "QwrtdNvUNsPCj2lfNQacsGSQvGX8ee1ttrBrcozUP2Sv/jylewBP/8QFe6ZkBsC8T/GYWonNAWJV4aRR9AL2DA==";
       };
     };
-    "@babel/helper-builder-binary-assignment-operator-visitor-7.10.4" = {
+    "@babel/helper-builder-binary-assignment-operator-visitor-7.15.4" = {
       name = "_at_babel_slash_helper-builder-binary-assignment-operator-visitor";
       packageName = "@babel/helper-builder-binary-assignment-operator-visitor";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz";
-        sha512 = "L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg==";
+        url = "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.15.4.tgz";
+        sha512 = "P8o7JP2Mzi0SdC6eWr1zF+AEYvrsZa7GSY1lTayjF5XJhVH0kjLYUZPvTMflP7tBgZoe9gIhTa60QwFpqh/E0Q==";
       };
     };
-    "@babel/helper-compilation-targets-7.10.4" = {
+    "@babel/helper-compilation-targets-7.15.4" = {
       name = "_at_babel_slash_helper-compilation-targets";
       packageName = "@babel/helper-compilation-targets";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz";
-        sha512 = "a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ==";
+        url = "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz";
+        sha512 = "rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ==";
       };
     };
-    "@babel/helper-create-class-features-plugin-7.10.5" = {
+    "@babel/helper-create-class-features-plugin-7.15.4" = {
       name = "_at_babel_slash_helper-create-class-features-plugin";
       packageName = "@babel/helper-create-class-features-plugin";
-      version = "7.10.5";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.5.tgz";
-        sha512 = "0nkdeijB7VlZoLT3r/mY3bUkw3T8WG/hNw+FATs/6+pG2039IJWjTYL0VTISqsNHMUTEnwbVnc89WIJX9Qed0A==";
+        url = "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.15.4.tgz";
+        sha512 = "7ZmzFi+DwJx6A7mHRwbuucEYpyBwmh2Ca0RvI6z2+WLZYCqV0JOaLb+u0zbtmDicebgKBZgqbYfLaKNqSgv5Pw==";
       };
     };
-    "@babel/helper-create-regexp-features-plugin-7.10.4" = {
+    "@babel/helper-create-regexp-features-plugin-7.14.5" = {
       name = "_at_babel_slash_helper-create-regexp-features-plugin";
       packageName = "@babel/helper-create-regexp-features-plugin";
-      version = "7.10.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz";
-        sha512 = "2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g==";
-      };
-    };
-    "@babel/helper-define-map-7.10.5" = {
-      name = "_at_babel_slash_helper-define-map";
-      packageName = "@babel/helper-define-map";
-      version = "7.10.5";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz";
-        sha512 = "fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ==";
+        url = "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.5.tgz";
+        sha512 = "TLawwqpOErY2HhWbGJ2nZT5wSkR192QpN+nBg1THfBfftrlvOh+WbhrxXCH4q4xJ9Gl16BGPR/48JA+Ryiho/A==";
       };
     };
-    "@babel/helper-explode-assignable-expression-7.11.4" = {
+    "@babel/helper-explode-assignable-expression-7.15.4" = {
       name = "_at_babel_slash_helper-explode-assignable-expression";
       packageName = "@babel/helper-explode-assignable-expression";
-      version = "7.11.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.11.4.tgz";
-        sha512 = "ux9hm3zR4WV1Y3xXxXkdG/0gxF9nvI0YVmKVhvK9AfMoaQkemL3sJpXw+Xbz65azo8qJiEz2XVDUpK3KYhH3ZQ==";
+        url = "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.15.4.tgz";
+        sha512 = "J14f/vq8+hdC2KoWLIQSsGrC9EFBKE4NFts8pfMpymfApds+fPqR30AOUWc4tyr56h9l/GA1Sxv2q3dLZWbQ/g==";
       };
     };
-    "@babel/helper-function-name-7.10.4" = {
+    "@babel/helper-function-name-7.15.4" = {
       name = "_at_babel_slash_helper-function-name";
       packageName = "@babel/helper-function-name";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz";
-        sha512 = "YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==";
+        url = "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz";
+        sha512 = "Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw==";
       };
     };
-    "@babel/helper-get-function-arity-7.10.4" = {
+    "@babel/helper-get-function-arity-7.15.4" = {
       name = "_at_babel_slash_helper-get-function-arity";
       packageName = "@babel/helper-get-function-arity";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz";
-        sha512 = "EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==";
+        url = "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz";
+        sha512 = "1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA==";
       };
     };
-    "@babel/helper-hoist-variables-7.10.4" = {
+    "@babel/helper-hoist-variables-7.15.4" = {
       name = "_at_babel_slash_helper-hoist-variables";
       packageName = "@babel/helper-hoist-variables";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.4.tgz";
-        sha512 = "wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA==";
+        url = "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz";
+        sha512 = "VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA==";
       };
     };
-    "@babel/helper-member-expression-to-functions-7.11.0" = {
+    "@babel/helper-member-expression-to-functions-7.15.4" = {
       name = "_at_babel_slash_helper-member-expression-to-functions";
       packageName = "@babel/helper-member-expression-to-functions";
-      version = "7.11.0";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz";
-        sha512 = "JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q==";
+        url = "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz";
+        sha512 = "cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA==";
       };
     };
-    "@babel/helper-module-imports-7.10.4" = {
+    "@babel/helper-module-imports-7.15.4" = {
       name = "_at_babel_slash_helper-module-imports";
       packageName = "@babel/helper-module-imports";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz";
-        sha512 = "nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==";
+        url = "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz";
+        sha512 = "jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA==";
       };
     };
-    "@babel/helper-module-transforms-7.11.0" = {
+    "@babel/helper-module-transforms-7.15.8" = {
       name = "_at_babel_slash_helper-module-transforms";
       packageName = "@babel/helper-module-transforms";
-      version = "7.11.0";
+      version = "7.15.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz";
-        sha512 = "02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg==";
+        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.8.tgz";
+        sha512 = "DfAfA6PfpG8t4S6npwzLvTUpp0sS7JrcuaMiy1Y5645laRJIp/LiLGIBbQKaXSInK8tiGNI7FL7L8UvB8gdUZg==";
       };
     };
-    "@babel/helper-optimise-call-expression-7.10.4" = {
+    "@babel/helper-optimise-call-expression-7.15.4" = {
       name = "_at_babel_slash_helper-optimise-call-expression";
       packageName = "@babel/helper-optimise-call-expression";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz";
-        sha512 = "n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==";
+        url = "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz";
+        sha512 = "E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw==";
       };
     };
-    "@babel/helper-plugin-utils-7.10.4" = {
+    "@babel/helper-plugin-utils-7.14.5" = {
       name = "_at_babel_slash_helper-plugin-utils";
       packageName = "@babel/helper-plugin-utils";
-      version = "7.10.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz";
-        sha512 = "O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==";
-      };
-    };
-    "@babel/helper-regex-7.10.5" = {
-      name = "_at_babel_slash_helper-regex";
-      packageName = "@babel/helper-regex";
-      version = "7.10.5";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.10.5.tgz";
-        sha512 = "68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg==";
+        url = "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz";
+        sha512 = "/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==";
       };
     };
-    "@babel/helper-remap-async-to-generator-7.11.4" = {
+    "@babel/helper-remap-async-to-generator-7.15.4" = {
       name = "_at_babel_slash_helper-remap-async-to-generator";
       packageName = "@babel/helper-remap-async-to-generator";
-      version = "7.11.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.11.4.tgz";
-        sha512 = "tR5vJ/vBa9wFy3m5LLv2faapJLnDFxNWff2SAYkSE4rLUdbp7CdObYFgI7wK4T/Mj4UzpjPwzR8Pzmr5m7MHGA==";
+        url = "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.15.4.tgz";
+        sha512 = "v53MxgvMK/HCwckJ1bZrq6dNKlmwlyRNYM6ypaRTdXWGOE2c1/SCa6dL/HimhPulGhZKw9W0QhREM583F/t0vQ==";
       };
     };
-    "@babel/helper-replace-supers-7.10.4" = {
+    "@babel/helper-replace-supers-7.15.4" = {
       name = "_at_babel_slash_helper-replace-supers";
       packageName = "@babel/helper-replace-supers";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz";
-        sha512 = "sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A==";
+        url = "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz";
+        sha512 = "/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw==";
       };
     };
-    "@babel/helper-simple-access-7.10.4" = {
+    "@babel/helper-simple-access-7.15.4" = {
       name = "_at_babel_slash_helper-simple-access";
       packageName = "@babel/helper-simple-access";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz";
-        sha512 = "0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw==";
+        url = "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz";
+        sha512 = "UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg==";
       };
     };
-    "@babel/helper-skip-transparent-expression-wrappers-7.11.0" = {
+    "@babel/helper-skip-transparent-expression-wrappers-7.15.4" = {
       name = "_at_babel_slash_helper-skip-transparent-expression-wrappers";
       packageName = "@babel/helper-skip-transparent-expression-wrappers";
-      version = "7.11.0";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.11.0.tgz";
-        sha512 = "0XIdiQln4Elglgjbwo9wuJpL/K7AGCY26kmEt0+pRP0TAj4jjyNq1MjoRvikrTVqKcx4Gysxt4cXvVFXP/JO2Q==";
+        url = "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.15.4.tgz";
+        sha512 = "BMRLsdh+D1/aap19TycS4eD1qELGrCBJwzaY9IE8LrpJtJb+H7rQkPIdsfgnMtLBA6DJls7X9z93Z4U8h7xw0A==";
       };
     };
-    "@babel/helper-split-export-declaration-7.11.0" = {
+    "@babel/helper-split-export-declaration-7.15.4" = {
       name = "_at_babel_slash_helper-split-export-declaration";
       packageName = "@babel/helper-split-export-declaration";
-      version = "7.11.0";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz";
-        sha512 = "74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==";
+        url = "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz";
+        sha512 = "HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw==";
       };
     };
-    "@babel/helper-validator-identifier-7.10.4" = {
+    "@babel/helper-validator-identifier-7.15.7" = {
       name = "_at_babel_slash_helper-validator-identifier";
       packageName = "@babel/helper-validator-identifier";
-      version = "7.10.4";
+      version = "7.15.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz";
+        sha512 = "K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==";
+      };
+    };
+    "@babel/helper-validator-option-7.14.5" = {
+      name = "_at_babel_slash_helper-validator-option";
+      packageName = "@babel/helper-validator-option";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz";
-        sha512 = "3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==";
+        url = "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz";
+        sha512 = "OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==";
       };
     };
-    "@babel/helper-wrap-function-7.10.4" = {
+    "@babel/helper-wrap-function-7.15.4" = {
       name = "_at_babel_slash_helper-wrap-function";
       packageName = "@babel/helper-wrap-function";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz";
-        sha512 = "6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug==";
+        url = "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.15.4.tgz";
+        sha512 = "Y2o+H/hRV5W8QhIfTpRIBwl57y8PrZt6JM3V8FOo5qarjshHItyH5lXlpMfBfmBefOqSCpKZs/6Dxqp0E/U+uw==";
       };
     };
-    "@babel/helpers-7.10.4" = {
+    "@babel/helpers-7.15.4" = {
       name = "_at_babel_slash_helpers";
       packageName = "@babel/helpers";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.4.tgz";
-        sha512 = "L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA==";
+        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.4.tgz";
+        sha512 = "V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ==";
       };
     };
-    "@babel/highlight-7.10.4" = {
+    "@babel/highlight-7.14.5" = {
       name = "_at_babel_slash_highlight";
       packageName = "@babel/highlight";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz";
-        sha512 = "i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==";
+        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz";
+        sha512 = "qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==";
       };
     };
-    "@babel/parser-7.11.5" = {
+    "@babel/parser-7.15.8" = {
       name = "_at_babel_slash_parser";
       packageName = "@babel/parser";
-      version = "7.11.5";
+      version = "7.15.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.11.5.tgz";
-        sha512 = "X9rD8qqm695vgmeaQ4fvz/o3+Wk4ZzQvSHkDBgpYKxpD4qTAUm88ZKtHkVqIOsYFFbIQ6wQYhC6q7pjqVK0E0Q==";
+        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.15.8.tgz";
+        sha512 = "BRYa3wcQnjS/nqI8Ac94pYYpJfojHVvVXJ97+IDCImX4Jc8W8Xv1+47enbruk+q1etOpsQNwnfFcNGw+gtPGxA==";
       };
     };
-    "@babel/plugin-proposal-async-generator-functions-7.10.5" = {
+    "@babel/plugin-proposal-async-generator-functions-7.15.8" = {
       name = "_at_babel_slash_plugin-proposal-async-generator-functions";
       packageName = "@babel/plugin-proposal-async-generator-functions";
-      version = "7.10.5";
+      version = "7.15.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.5.tgz";
-        sha512 = "cNMCVezQbrRGvXJwm9fu/1sJj9bHdGAgKodZdLqOQIpfoH3raqmRPBM17+lh7CzhiKRRBrGtZL9WcjxSoGYUSg==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.15.8.tgz";
+        sha512 = "2Z5F2R2ibINTc63mY7FLqGfEbmofrHU9FitJW1Q7aPaKFhiPvSq6QEt/BoWN5oME3GVyjcRuNNSRbb9LC0CSWA==";
       };
     };
-    "@babel/plugin-proposal-class-properties-7.10.4" = {
+    "@babel/plugin-proposal-class-properties-7.14.5" = {
       name = "_at_babel_slash_plugin-proposal-class-properties";
       packageName = "@babel/plugin-proposal-class-properties";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz";
-        sha512 = "vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz";
+        sha512 = "q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg==";
       };
     };
-    "@babel/plugin-proposal-dynamic-import-7.10.4" = {
+    "@babel/plugin-proposal-dynamic-import-7.14.5" = {
       name = "_at_babel_slash_plugin-proposal-dynamic-import";
       packageName = "@babel/plugin-proposal-dynamic-import";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz";
-        sha512 = "up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.14.5.tgz";
+        sha512 = "ExjiNYc3HDN5PXJx+bwC50GIx/KKanX2HiggnIUAYedbARdImiCU4RhhHfdf0Kd7JNXGpsBBBCOm+bBVy3Gb0g==";
       };
     };
-    "@babel/plugin-proposal-export-namespace-from-7.10.4" = {
+    "@babel/plugin-proposal-export-namespace-from-7.14.5" = {
       name = "_at_babel_slash_plugin-proposal-export-namespace-from";
       packageName = "@babel/plugin-proposal-export-namespace-from";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.10.4.tgz";
-        sha512 = "aNdf0LY6/3WXkhh0Fdb6Zk9j1NMD8ovj3F6r0+3j837Pn1S1PdNtcwJ5EG9WkVPNHPxyJDaxMaAOVq4eki0qbg==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.14.5.tgz";
+        sha512 = "g5POA32bXPMmSBu5Dx/iZGLGnKmKPc5AiY7qfZgurzrCYgIztDlHFbznSNCoQuv57YQLnQfaDi7dxCtLDIdXdA==";
       };
     };
-    "@babel/plugin-proposal-json-strings-7.10.4" = {
+    "@babel/plugin-proposal-json-strings-7.14.5" = {
       name = "_at_babel_slash_plugin-proposal-json-strings";
       packageName = "@babel/plugin-proposal-json-strings";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz";
-        sha512 = "fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.14.5.tgz";
+        sha512 = "NSq2fczJYKVRIsUJyNxrVUMhB27zb7N7pOFGQOhBKJrChbGcgEAqyZrmZswkPk18VMurEeJAaICbfm57vUeTbQ==";
       };
     };
-    "@babel/plugin-proposal-logical-assignment-operators-7.11.0" = {
+    "@babel/plugin-proposal-logical-assignment-operators-7.14.5" = {
       name = "_at_babel_slash_plugin-proposal-logical-assignment-operators";
       packageName = "@babel/plugin-proposal-logical-assignment-operators";
-      version = "7.11.0";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.11.0.tgz";
-        sha512 = "/f8p4z+Auz0Uaf+i8Ekf1iM7wUNLcViFUGiPxKeXvxTSl63B875YPiVdUDdem7hREcI0E0kSpEhS8tF5RphK7Q==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.5.tgz";
+        sha512 = "YGn2AvZAo9TwyhlLvCCWxD90Xq8xJ4aSgaX3G5D/8DW94L8aaT+dS5cSP+Z06+rCJERGSr9GxMBZ601xoc2taw==";
       };
     };
-    "@babel/plugin-proposal-nullish-coalescing-operator-7.10.4" = {
+    "@babel/plugin-proposal-nullish-coalescing-operator-7.14.5" = {
       name = "_at_babel_slash_plugin-proposal-nullish-coalescing-operator";
       packageName = "@babel/plugin-proposal-nullish-coalescing-operator";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz";
-        sha512 = "wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.5.tgz";
+        sha512 = "gun/SOnMqjSb98Nkaq2rTKMwervfdAoz6NphdY0vTfuzMfryj+tDGb2n6UkDKwez+Y8PZDhE3D143v6Gepp4Hg==";
       };
     };
-    "@babel/plugin-proposal-numeric-separator-7.10.4" = {
+    "@babel/plugin-proposal-numeric-separator-7.14.5" = {
       name = "_at_babel_slash_plugin-proposal-numeric-separator";
       packageName = "@babel/plugin-proposal-numeric-separator";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz";
-        sha512 = "73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.14.5.tgz";
+        sha512 = "yiclALKe0vyZRZE0pS6RXgjUOt87GWv6FYa5zqj15PvhOGFO69R5DusPlgK/1K5dVnCtegTiWu9UaBSrLLJJBg==";
       };
     };
     "@babel/plugin-proposal-object-rest-spread-7.11.0" = {
@@ -364,49 +355,40 @@ let
         sha512 = "wzch41N4yztwoRw0ak+37wxwJM2oiIiy6huGCoqkvSTA9acYWcPfn9Y4aJqmFFJ70KTJUu29f3DQ43uJ9HXzEA==";
       };
     };
-    "@babel/plugin-proposal-object-rest-spread-7.9.0" = {
-      name = "_at_babel_slash_plugin-proposal-object-rest-spread";
-      packageName = "@babel/plugin-proposal-object-rest-spread";
-      version = "7.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.9.0.tgz";
-        sha512 = "UgqBv6bjq4fDb8uku9f+wcm1J7YxJ5nT7WO/jBr0cl0PLKb7t1O6RNR1kZbjgx2LQtsDI9hwoQVmn0yhXeQyow==";
-      };
-    };
-    "@babel/plugin-proposal-optional-catch-binding-7.10.4" = {
+    "@babel/plugin-proposal-optional-catch-binding-7.14.5" = {
       name = "_at_babel_slash_plugin-proposal-optional-catch-binding";
       packageName = "@babel/plugin-proposal-optional-catch-binding";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz";
-        sha512 = "LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.5.tgz";
+        sha512 = "3Oyiixm0ur7bzO5ybNcZFlmVsygSIQgdOa7cTfOYCMY+wEPAYhZAJxi3mixKFCTCKUhQXuCTtQ1MzrpL3WT8ZQ==";
       };
     };
-    "@babel/plugin-proposal-optional-chaining-7.11.0" = {
+    "@babel/plugin-proposal-optional-chaining-7.14.5" = {
       name = "_at_babel_slash_plugin-proposal-optional-chaining";
       packageName = "@babel/plugin-proposal-optional-chaining";
-      version = "7.11.0";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.11.0.tgz";
-        sha512 = "v9fZIu3Y8562RRwhm1BbMRxtqZNFmFA2EG+pT2diuU8PT3H6T/KXoZ54KgYisfOFZHV6PfvAiBIZ9Rcz+/JCxA==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.5.tgz";
+        sha512 = "ycz+VOzo2UbWNI1rQXxIuMOzrDdHGrI23fRiz/Si2R4kv2XZQ1BK8ccdHwehMKBlcH/joGW/tzrUmo67gbJHlQ==";
       };
     };
-    "@babel/plugin-proposal-private-methods-7.10.4" = {
+    "@babel/plugin-proposal-private-methods-7.14.5" = {
       name = "_at_babel_slash_plugin-proposal-private-methods";
       packageName = "@babel/plugin-proposal-private-methods";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz";
-        sha512 = "wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.14.5.tgz";
+        sha512 = "838DkdUA1u+QTCplatfq4B7+1lnDa/+QMI89x5WZHBcnNv+47N8QEj2k9I2MUU9xIv8XJ4XvPCviM/Dj7Uwt9g==";
       };
     };
-    "@babel/plugin-proposal-unicode-property-regex-7.10.4" = {
+    "@babel/plugin-proposal-unicode-property-regex-7.14.5" = {
       name = "_at_babel_slash_plugin-proposal-unicode-property-regex";
       packageName = "@babel/plugin-proposal-unicode-property-regex";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz";
-        sha512 = "H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.14.5.tgz";
+        sha512 = "6axIeOU5LnY471KenAB9vI8I5j7NQ2d652hIYwVyRfgaZT5UpiqFKCuVXCDMSrU+3VFafnu2c5m3lrWIlr6A5Q==";
       };
     };
     "@babel/plugin-syntax-async-generators-7.8.4" = {
@@ -418,13 +400,13 @@ let
         sha512 = "tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==";
       };
     };
-    "@babel/plugin-syntax-class-properties-7.10.4" = {
+    "@babel/plugin-syntax-class-properties-7.12.13" = {
       name = "_at_babel_slash_plugin-syntax-class-properties";
       packageName = "@babel/plugin-syntax-class-properties";
-      version = "7.10.4";
+      version = "7.12.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz";
-        sha512 = "GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA==";
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz";
+        sha512 = "fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==";
       };
     };
     "@babel/plugin-syntax-dynamic-import-7.8.3" = {
@@ -508,301 +490,301 @@ let
         sha512 = "KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==";
       };
     };
-    "@babel/plugin-syntax-top-level-await-7.10.4" = {
+    "@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.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz";
-        sha512 = "ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ==";
+        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-transform-arrow-functions-7.10.4" = {
+    "@babel/plugin-transform-arrow-functions-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-arrow-functions";
       packageName = "@babel/plugin-transform-arrow-functions";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz";
-        sha512 = "9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.14.5.tgz";
+        sha512 = "KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A==";
       };
     };
-    "@babel/plugin-transform-async-to-generator-7.10.4" = {
+    "@babel/plugin-transform-async-to-generator-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-async-to-generator";
       packageName = "@babel/plugin-transform-async-to-generator";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz";
-        sha512 = "F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz";
+        sha512 = "szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==";
       };
     };
-    "@babel/plugin-transform-block-scoped-functions-7.10.4" = {
+    "@babel/plugin-transform-block-scoped-functions-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-block-scoped-functions";
       packageName = "@babel/plugin-transform-block-scoped-functions";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz";
-        sha512 = "WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.14.5.tgz";
+        sha512 = "dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ==";
       };
     };
-    "@babel/plugin-transform-block-scoping-7.11.1" = {
+    "@babel/plugin-transform-block-scoping-7.15.3" = {
       name = "_at_babel_slash_plugin-transform-block-scoping";
       packageName = "@babel/plugin-transform-block-scoping";
-      version = "7.11.1";
+      version = "7.15.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.11.1.tgz";
-        sha512 = "00dYeDE0EVEHuuM+26+0w/SCL0BH2Qy7LwHuI4Hi4MH5gkC8/AqMN5uWFJIsoXZrAphiMm1iXzBw6L2T+eA0ew==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.15.3.tgz";
+        sha512 = "nBAzfZwZb4DkaGtOes1Up1nOAp9TDRRFw4XBzBBSG9QK7KVFmYzgj9o9sbPv7TX5ofL4Auq4wZnxCoPnI/lz2Q==";
       };
     };
-    "@babel/plugin-transform-classes-7.10.4" = {
+    "@babel/plugin-transform-classes-7.15.4" = {
       name = "_at_babel_slash_plugin-transform-classes";
       packageName = "@babel/plugin-transform-classes";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz";
-        sha512 = "2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.15.4.tgz";
+        sha512 = "Yjvhex8GzBmmPQUvpXRPWQ9WnxXgAFuZSrqOK/eJlOGIXwvv8H3UEdUigl1gb/bnjTrln+e8bkZUYCBt/xYlBg==";
       };
     };
-    "@babel/plugin-transform-computed-properties-7.10.4" = {
+    "@babel/plugin-transform-computed-properties-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-computed-properties";
       packageName = "@babel/plugin-transform-computed-properties";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz";
-        sha512 = "JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.14.5.tgz";
+        sha512 = "pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg==";
       };
     };
-    "@babel/plugin-transform-destructuring-7.10.4" = {
+    "@babel/plugin-transform-destructuring-7.14.7" = {
       name = "_at_babel_slash_plugin-transform-destructuring";
       packageName = "@babel/plugin-transform-destructuring";
-      version = "7.10.4";
+      version = "7.14.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz";
-        sha512 = "+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.7.tgz";
+        sha512 = "0mDE99nK+kVh3xlc5vKwB6wnP9ecuSj+zQCa/n0voENtP/zymdT4HH6QEb65wjjcbqr1Jb/7z9Qp7TF5FtwYGw==";
       };
     };
-    "@babel/plugin-transform-dotall-regex-7.10.4" = {
+    "@babel/plugin-transform-dotall-regex-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-dotall-regex";
       packageName = "@babel/plugin-transform-dotall-regex";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz";
-        sha512 = "ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.14.5.tgz";
+        sha512 = "loGlnBdj02MDsFaHhAIJzh7euK89lBrGIdM9EAtHFo6xKygCUGuuWe07o1oZVk287amtW1n0808sQM99aZt3gw==";
       };
     };
-    "@babel/plugin-transform-duplicate-keys-7.10.4" = {
+    "@babel/plugin-transform-duplicate-keys-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-duplicate-keys";
       packageName = "@babel/plugin-transform-duplicate-keys";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz";
-        sha512 = "GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.14.5.tgz";
+        sha512 = "iJjbI53huKbPDAsJ8EmVmvCKeeq21bAze4fu9GBQtSLqfvzj2oRuHVx4ZkDwEhg1htQ+5OBZh/Ab0XDf5iBZ7A==";
       };
     };
-    "@babel/plugin-transform-exponentiation-operator-7.10.4" = {
+    "@babel/plugin-transform-exponentiation-operator-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-exponentiation-operator";
       packageName = "@babel/plugin-transform-exponentiation-operator";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz";
-        sha512 = "S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.14.5.tgz";
+        sha512 = "jFazJhMBc9D27o9jDnIE5ZErI0R0m7PbKXVq77FFvqFbzvTMuv8jaAwLZ5PviOLSFttqKIW0/wxNSDbjLk0tYA==";
       };
     };
-    "@babel/plugin-transform-for-of-7.10.4" = {
+    "@babel/plugin-transform-for-of-7.15.4" = {
       name = "_at_babel_slash_plugin-transform-for-of";
       packageName = "@babel/plugin-transform-for-of";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz";
-        sha512 = "ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.15.4.tgz";
+        sha512 = "DRTY9fA751AFBDh2oxydvVm4SYevs5ILTWLs6xKXps4Re/KG5nfUkr+TdHCrRWB8C69TlzVgA9b3RmGWmgN9LA==";
       };
     };
-    "@babel/plugin-transform-function-name-7.10.4" = {
+    "@babel/plugin-transform-function-name-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-function-name";
       packageName = "@babel/plugin-transform-function-name";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz";
-        sha512 = "OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.14.5.tgz";
+        sha512 = "vbO6kv0fIzZ1GpmGQuvbwwm+O4Cbm2NrPzwlup9+/3fdkuzo1YqOZcXw26+YUJB84Ja7j9yURWposEHLYwxUfQ==";
       };
     };
-    "@babel/plugin-transform-literals-7.10.4" = {
+    "@babel/plugin-transform-literals-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-literals";
       packageName = "@babel/plugin-transform-literals";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz";
-        sha512 = "Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.14.5.tgz";
+        sha512 = "ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A==";
       };
     };
-    "@babel/plugin-transform-member-expression-literals-7.10.4" = {
+    "@babel/plugin-transform-member-expression-literals-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-member-expression-literals";
       packageName = "@babel/plugin-transform-member-expression-literals";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz";
-        sha512 = "0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.14.5.tgz";
+        sha512 = "WkNXxH1VXVTKarWFqmso83xl+2V3Eo28YY5utIkbsmXoItO8Q3aZxN4BTS2k0hz9dGUloHK26mJMyQEYfkn/+Q==";
       };
     };
-    "@babel/plugin-transform-modules-amd-7.10.5" = {
+    "@babel/plugin-transform-modules-amd-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-modules-amd";
       packageName = "@babel/plugin-transform-modules-amd";
-      version = "7.10.5";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.5.tgz";
-        sha512 = "elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.5.tgz";
+        sha512 = "3lpOU8Vxmp3roC4vzFpSdEpGUWSMsHFreTWOMMLzel2gNGfHE5UWIh/LN6ghHs2xurUp4jRFYMUIZhuFbody1g==";
       };
     };
-    "@babel/plugin-transform-modules-commonjs-7.10.4" = {
+    "@babel/plugin-transform-modules-commonjs-7.15.4" = {
       name = "_at_babel_slash_plugin-transform-modules-commonjs";
       packageName = "@babel/plugin-transform-modules-commonjs";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz";
-        sha512 = "Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.15.4.tgz";
+        sha512 = "qg4DPhwG8hKp4BbVDvX1s8cohM8a6Bvptu4l6Iingq5rW+yRUAhe/YRup/YcW2zCOlrysEWVhftIcKzrEZv3sA==";
       };
     };
-    "@babel/plugin-transform-modules-systemjs-7.10.5" = {
+    "@babel/plugin-transform-modules-systemjs-7.15.4" = {
       name = "_at_babel_slash_plugin-transform-modules-systemjs";
       packageName = "@babel/plugin-transform-modules-systemjs";
-      version = "7.10.5";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.5.tgz";
-        sha512 = "f4RLO/OL14/FP1AEbcsWMzpbUz6tssRaeQg11RH1BP/XnPpRoVwgeYViMFacnkaw4k4wjRSjn3ip1Uw9TaXuMw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.15.4.tgz";
+        sha512 = "fJUnlQrl/mezMneR72CKCgtOoahqGJNVKpompKwzv3BrEXdlPspTcyxrZ1XmDTIr9PpULrgEQo3qNKp6dW7ssw==";
       };
     };
-    "@babel/plugin-transform-modules-umd-7.10.4" = {
+    "@babel/plugin-transform-modules-umd-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-modules-umd";
       packageName = "@babel/plugin-transform-modules-umd";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz";
-        sha512 = "mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.14.5.tgz";
+        sha512 = "RfPGoagSngC06LsGUYyM9QWSXZ8MysEjDJTAea1lqRjNECE3y0qIJF/qbvJxc4oA4s99HumIMdXOrd+TdKaAAA==";
       };
     };
-    "@babel/plugin-transform-named-capturing-groups-regex-7.10.4" = {
+    "@babel/plugin-transform-named-capturing-groups-regex-7.14.9" = {
       name = "_at_babel_slash_plugin-transform-named-capturing-groups-regex";
       packageName = "@babel/plugin-transform-named-capturing-groups-regex";
-      version = "7.10.4";
+      version = "7.14.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz";
-        sha512 = "V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.14.9.tgz";
+        sha512 = "l666wCVYO75mlAtGFfyFwnWmIXQm3kSH0C3IRnJqWcZbWkoihyAdDhFm2ZWaxWTqvBvhVFfJjMRQ0ez4oN1yYA==";
       };
     };
-    "@babel/plugin-transform-new-target-7.10.4" = {
+    "@babel/plugin-transform-new-target-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-new-target";
       packageName = "@babel/plugin-transform-new-target";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz";
-        sha512 = "YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.14.5.tgz";
+        sha512 = "Nx054zovz6IIRWEB49RDRuXGI4Gy0GMgqG0cII9L3MxqgXz/+rgII+RU58qpo4g7tNEx1jG7rRVH4ihZoP4esQ==";
       };
     };
-    "@babel/plugin-transform-object-super-7.10.4" = {
+    "@babel/plugin-transform-object-super-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-object-super";
       packageName = "@babel/plugin-transform-object-super";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz";
-        sha512 = "5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.14.5.tgz";
+        sha512 = "MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg==";
       };
     };
-    "@babel/plugin-transform-parameters-7.10.5" = {
+    "@babel/plugin-transform-parameters-7.15.4" = {
       name = "_at_babel_slash_plugin-transform-parameters";
       packageName = "@babel/plugin-transform-parameters";
-      version = "7.10.5";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.5.tgz";
-        sha512 = "xPHwUj5RdFV8l1wuYiu5S9fqWGM2DrYc24TMvUiRrPVm+SM3XeqU9BcokQX/kEUe+p2RBwy+yoiR1w/Blq6ubw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.15.4.tgz";
+        sha512 = "9WB/GUTO6lvJU3XQsSr6J/WKvBC2hcs4Pew8YxZagi6GkTdniyqp8On5kqdK8MN0LMeu0mGbhPN+O049NV/9FQ==";
       };
     };
-    "@babel/plugin-transform-property-literals-7.10.4" = {
+    "@babel/plugin-transform-property-literals-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-property-literals";
       packageName = "@babel/plugin-transform-property-literals";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz";
-        sha512 = "ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.14.5.tgz";
+        sha512 = "r1uilDthkgXW8Z1vJz2dKYLV1tuw2xsbrp3MrZmD99Wh9vsfKoob+JTgri5VUb/JqyKRXotlOtwgu4stIYCmnw==";
       };
     };
-    "@babel/plugin-transform-regenerator-7.10.4" = {
+    "@babel/plugin-transform-regenerator-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-regenerator";
       packageName = "@babel/plugin-transform-regenerator";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz";
-        sha512 = "3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.14.5.tgz";
+        sha512 = "NVIY1W3ITDP5xQl50NgTKlZ0GrotKtLna08/uGY6ErQt6VEQZXla86x/CTddm5gZdcr+5GSsvMeTmWA5Ii6pkg==";
       };
     };
-    "@babel/plugin-transform-reserved-words-7.10.4" = {
+    "@babel/plugin-transform-reserved-words-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-reserved-words";
       packageName = "@babel/plugin-transform-reserved-words";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz";
-        sha512 = "hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.14.5.tgz";
+        sha512 = "cv4F2rv1nD4qdexOGsRQXJrOcyb5CrgjUH9PKrrtyhSDBNWGxd0UIitjyJiWagS+EbUGjG++22mGH1Pub8D6Vg==";
       };
     };
-    "@babel/plugin-transform-shorthand-properties-7.10.4" = {
+    "@babel/plugin-transform-shorthand-properties-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-shorthand-properties";
       packageName = "@babel/plugin-transform-shorthand-properties";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz";
-        sha512 = "AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.14.5.tgz";
+        sha512 = "xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g==";
       };
     };
-    "@babel/plugin-transform-spread-7.11.0" = {
+    "@babel/plugin-transform-spread-7.15.8" = {
       name = "_at_babel_slash_plugin-transform-spread";
       packageName = "@babel/plugin-transform-spread";
-      version = "7.11.0";
+      version = "7.15.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.11.0.tgz";
-        sha512 = "UwQYGOqIdQJe4aWNyS7noqAnN2VbaczPLiEtln+zPowRNlD+79w3oi2TWfYe0eZgd+gjZCbsydN7lzWysDt+gw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.15.8.tgz";
+        sha512 = "/daZ8s2tNaRekl9YJa9X4bzjpeRZLt122cpgFnQPLGUe61PH8zMEBmYqKkW5xF5JUEh5buEGXJoQpqBmIbpmEQ==";
       };
     };
-    "@babel/plugin-transform-sticky-regex-7.10.4" = {
+    "@babel/plugin-transform-sticky-regex-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-sticky-regex";
       packageName = "@babel/plugin-transform-sticky-regex";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz";
-        sha512 = "Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.14.5.tgz";
+        sha512 = "Z7F7GyvEMzIIbwnziAZmnSNpdijdr4dWt+FJNBnBLz5mwDFkqIXU9wmBcWWad3QeJF5hMTkRe4dAq2sUZiG+8A==";
       };
     };
-    "@babel/plugin-transform-template-literals-7.10.5" = {
+    "@babel/plugin-transform-template-literals-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-template-literals";
       packageName = "@babel/plugin-transform-template-literals";
-      version = "7.10.5";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.5.tgz";
-        sha512 = "V/lnPGIb+KT12OQikDvgSuesRX14ck5FfJXt6+tXhdkJ+Vsd0lDCVtF6jcB4rNClYFzaB2jusZ+lNISDk2mMMw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.14.5.tgz";
+        sha512 = "22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg==";
       };
     };
-    "@babel/plugin-transform-typeof-symbol-7.10.4" = {
+    "@babel/plugin-transform-typeof-symbol-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-typeof-symbol";
       packageName = "@babel/plugin-transform-typeof-symbol";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz";
-        sha512 = "QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.14.5.tgz";
+        sha512 = "lXzLD30ffCWseTbMQzrvDWqljvZlHkXU+CnseMhkMNqU1sASnCsz3tSzAaH3vCUXb9PHeUb90ZT1BdFTm1xxJw==";
       };
     };
-    "@babel/plugin-transform-unicode-escapes-7.10.4" = {
+    "@babel/plugin-transform-unicode-escapes-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-unicode-escapes";
       packageName = "@babel/plugin-transform-unicode-escapes";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz";
-        sha512 = "y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.14.5.tgz";
+        sha512 = "crTo4jATEOjxj7bt9lbYXcBAM3LZaUrbP2uUdxb6WIorLmjNKSpHfIybgY4B8SRpbf8tEVIWH3Vtm7ayCrKocA==";
       };
     };
-    "@babel/plugin-transform-unicode-regex-7.10.4" = {
+    "@babel/plugin-transform-unicode-regex-7.14.5" = {
       name = "_at_babel_slash_plugin-transform-unicode-regex";
       packageName = "@babel/plugin-transform-unicode-regex";
-      version = "7.10.4";
+      version = "7.14.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz";
-        sha512 = "wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.14.5.tgz";
+        sha512 = "UygduJpC5kHeCiRw/xDVzC+wj8VaYSoKl5JNVmbP7MadpNinAm3SvZCxZ42H37KZBKztz46YC73i9yV34d0Tzw==";
       };
     };
     "@babel/preset-env-7.11.5" = {
@@ -832,76 +814,85 @@ let
         sha512 = "CAml0ioKX+kOAvBQDHa/+t1fgOt3qkTIz0TrRtRAT6XY0m5qYZXR85k6/sLCNPMGhYDlCFHCYuU0ybTJbvlC6w==";
       };
     };
-    "@babel/runtime-7.11.2" = {
+    "@babel/runtime-7.15.4" = {
       name = "_at_babel_slash_runtime";
       packageName = "@babel/runtime";
-      version = "7.11.2";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.11.2.tgz";
-        sha512 = "TeWkU52so0mPtDcaCTxNBI/IHiz0pZgr8VEFqXFtZWpYD08ZB6FaSwVAS8MKRQAP3bYKiVjwysOJgMFY28o6Tw==";
+        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.4.tgz";
+        sha512 = "99catp6bHCaxr4sJ/DbTGgHS4+Rs2RVd2g7iOap6SLGPDknRK9ztKNsE/Fg6QhSeh1FGE5f6gHGQmvvn3I3xhw==";
       };
     };
-    "@babel/template-7.10.4" = {
+    "@babel/template-7.15.4" = {
       name = "_at_babel_slash_template";
       packageName = "@babel/template";
-      version = "7.10.4";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz";
-        sha512 = "ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==";
+        url = "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz";
+        sha512 = "UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==";
       };
     };
-    "@babel/traverse-7.11.5" = {
+    "@babel/traverse-7.15.4" = {
       name = "_at_babel_slash_traverse";
       packageName = "@babel/traverse";
-      version = "7.11.5";
+      version = "7.15.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.5.tgz";
-        sha512 = "EjiPXt+r7LiCZXEfRpSJd+jUMnBd4/9OUv7Nx3+0u9+eimMwJmG0Q98lw4/289JCoxSE8OolDMNZaaF/JZ69WQ==";
+        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.4.tgz";
+        sha512 = "W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA==";
       };
     };
-    "@babel/types-7.11.5" = {
+    "@babel/types-7.15.6" = {
       name = "_at_babel_slash_types";
       packageName = "@babel/types";
-      version = "7.11.5";
+      version = "7.15.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/types/-/types-7.11.5.tgz";
-        sha512 = "bvM7Qz6eKnJVFIn+1LPtjlBFPVN5jNDc1XmN15vWe7Q3DPBufWWsLiIvUu7xW87uTG6QoggpIDnUgLQvPheU+Q==";
+        url = "https://registry.npmjs.org/@babel/types/-/types-7.15.6.tgz";
+        sha512 = "BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig==";
       };
     };
-    "@commitlint/execute-rule-11.0.0" = {
+    "@commitlint/execute-rule-13.2.0" = {
       name = "_at_commitlint_slash_execute-rule";
       packageName = "@commitlint/execute-rule";
-      version = "11.0.0";
+      version = "13.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-11.0.0.tgz";
-        sha512 = "g01p1g4BmYlZ2+tdotCavrMunnPFPhTzG1ZiLKTCYrooHRbmvqo42ZZn4QMStUEIcn+jfLb6BRZX3JzIwA1ezQ==";
+        url = "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-13.2.0.tgz";
+        sha512 = "6nPwpN0hwTYmsH3WM4hCdN+NrMopgRIuQ0aqZa+jnwMoS/g6ljliQNYfL+m5WO306BaIu1W3yYpbW5aI8gEr0g==";
       };
     };
-    "@commitlint/load-11.0.0" = {
+    "@commitlint/load-13.2.1" = {
       name = "_at_commitlint_slash_load";
       packageName = "@commitlint/load";
-      version = "11.0.0";
+      version = "13.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@commitlint/load/-/load-11.0.0.tgz";
-        sha512 = "t5ZBrtgvgCwPfxmG811FCp39/o3SJ7L+SNsxFL92OR4WQxPcu6c8taD0CG2lzOHGuRyuMxZ7ps3EbngT2WpiCg==";
+        url = "https://registry.npmjs.org/@commitlint/load/-/load-13.2.1.tgz";
+        sha512 = "qlaJkj0hfa9gtWRfCfbgFBTK3GYQRmjZhba4l9mUu4wV9lEZ4ICFlrLtd/8kaLXf/8xbrPhkAPkVFOAqM0YwUQ==";
       };
     };
-    "@commitlint/resolve-extends-11.0.0" = {
+    "@commitlint/resolve-extends-13.2.0" = {
       name = "_at_commitlint_slash_resolve-extends";
       packageName = "@commitlint/resolve-extends";
-      version = "11.0.0";
+      version = "13.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-11.0.0.tgz";
-        sha512 = "WinU6Uv6L7HDGLqn/To13KM1CWvZ09VHZqryqxXa1OY+EvJkfU734CwnOEeNlSCK7FVLrB4kmodLJtL1dkEpXw==";
+        url = "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-13.2.0.tgz";
+        sha512 = "HLCMkqMKtvl1yYLZ1Pm0UpFvd0kYjsm1meLOGZ7VkOd9G/XX+Fr1S2G5AT2zeiDw7WUVYK8lGVMNa319bnV+aw==";
       };
     };
-    "@commitlint/types-11.0.0" = {
+    "@commitlint/types-13.2.0" = {
       name = "_at_commitlint_slash_types";
       packageName = "@commitlint/types";
-      version = "11.0.0";
+      version = "13.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@commitlint/types/-/types-13.2.0.tgz";
+        sha512 = "RRVHEqmk1qn/dIaSQhvuca6k/6Z54G+r/KyimZ8gnAFielGiGUpsFRhIY3qhd5rXClVxDaa3nlcyTWckSccotQ==";
+      };
+    };
+    "@endemolshinegroup/cosmiconfig-typescript-loader-3.0.2" = {
+      name = "_at_endemolshinegroup_slash_cosmiconfig-typescript-loader";
+      packageName = "@endemolshinegroup/cosmiconfig-typescript-loader";
+      version = "3.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@commitlint/types/-/types-11.0.0.tgz";
-        sha512 = "VoNqai1vR5anRF5Tuh/+SWDFk7xi7oMwHrHrbm1BprYXjB2RJsWLhUrStMssDxEl5lW/z3EUdg8RvH/IUBccSQ==";
+        url = "https://registry.npmjs.org/@endemolshinegroup/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-3.0.2.tgz";
+        sha512 = "QRVtqJuS1mcT56oHpVegkKBlgtWjXw/gHNWO3eL9oyB5Sc7HBoc2OLG/nYpVfT/Jejvo3NUrD0Udk7XgoyDKkA==";
       };
     };
     "@istanbuljs/load-nyc-config-1.1.0" = {
@@ -922,58 +913,67 @@ let
         sha512 = "cWcUCqHOYB+Mpumsv03uaE7rMvtmJn7pZ3llc+9gyqMFC93IVcUuuJ/mknoWsiuajcEjRCqKmhGaiAaXG6kzLA==";
       };
     };
-    "@istanbuljs/schema-0.1.2" = {
+    "@istanbuljs/schema-0.1.3" = {
       name = "_at_istanbuljs_slash_schema";
       packageName = "@istanbuljs/schema";
-      version = "0.1.2";
+      version = "0.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz";
-        sha512 = "tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==";
+        url = "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz";
+        sha512 = "ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==";
       };
     };
-    "@nodelib/fs.scandir-2.1.3" = {
+    "@nodelib/fs.scandir-2.1.5" = {
       name = "_at_nodelib_slash_fs.scandir";
       packageName = "@nodelib/fs.scandir";
-      version = "2.1.3";
+      version = "2.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz";
-        sha512 = "eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==";
+        url = "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz";
+        sha512 = "vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==";
       };
     };
-    "@nodelib/fs.stat-2.0.3" = {
+    "@nodelib/fs.stat-2.0.5" = {
       name = "_at_nodelib_slash_fs.stat";
       packageName = "@nodelib/fs.stat";
-      version = "2.0.3";
+      version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz";
-        sha512 = "bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==";
+        url = "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz";
+        sha512 = "RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==";
       };
     };
-    "@nodelib/fs.walk-1.2.4" = {
+    "@nodelib/fs.walk-1.2.8" = {
       name = "_at_nodelib_slash_fs.walk";
       packageName = "@nodelib/fs.walk";
-      version = "1.2.4";
+      version = "1.2.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz";
-        sha512 = "1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==";
+        url = "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz";
+        sha512 = "oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==";
       };
     };
-    "@octokit/auth-token-2.4.2" = {
+    "@octokit/auth-token-2.5.0" = {
       name = "_at_octokit_slash_auth-token";
       packageName = "@octokit/auth-token";
-      version = "2.4.2";
+      version = "2.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.4.2.tgz";
-        sha512 = "jE/lE/IKIz2v1+/P0u4fJqv0kYwXOTujKemJMFr6FeopsxlIK3+wKDCJGnysg81XID5TgZQbIfuJ5J0lnTiuyQ==";
+        url = "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz";
+        sha512 = "r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==";
       };
     };
-    "@octokit/endpoint-6.0.6" = {
+    "@octokit/endpoint-6.0.12" = {
       name = "_at_octokit_slash_endpoint";
       packageName = "@octokit/endpoint";
-      version = "6.0.6";
+      version = "6.0.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.6.tgz";
-        sha512 = "7Cc8olaCoL/mtquB7j/HTbPM+sY6Ebr4k2X2y4JoXpVKQ7r5xB4iGQE0IoO58wIPsUk4AzoT65AMEpymSbWTgQ==";
+        url = "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz";
+        sha512 = "lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==";
+      };
+    };
+    "@octokit/openapi-types-11.2.0" = {
+      name = "_at_octokit_slash_openapi-types";
+      packageName = "@octokit/openapi-types";
+      version = "11.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-11.2.0.tgz";
+        sha512 = "PBsVO+15KSlGmiI8QAzaqvsNlZlrDlyAJYcrXBCvVUxCp7VnXjkwPoFHgjEJXx3WF9BAwkA6nfCUA7i9sODzKA==";
       };
     };
     "@octokit/plugin-paginate-rest-1.1.2" = {
@@ -985,13 +985,13 @@ let
         sha512 = "jbsSoi5Q1pj63sC16XIUboklNw+8tL9VOnJsWycWYR78TKss5PVpIPb1TUUcMQ+bBh7cY579cVAWmf5qG+dw+Q==";
       };
     };
-    "@octokit/plugin-request-log-1.0.0" = {
+    "@octokit/plugin-request-log-1.0.4" = {
       name = "_at_octokit_slash_plugin-request-log";
       packageName = "@octokit/plugin-request-log";
-      version = "1.0.0";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.0.tgz";
-        sha512 = "ywoxP68aOT3zHCLgWZgwUJatiENeHE7xJzYjfz8WI0goynp96wETBF+d95b8g/uL4QmS6owPVlaxiz3wyMAzcw==";
+        url = "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz";
+        sha512 = "mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==";
       };
     };
     "@octokit/plugin-rest-endpoint-methods-2.4.0" = {
@@ -1003,13 +1003,13 @@ let
         sha512 = "EZi/AWhtkdfAYi01obpX0DF7U6b1VRr30QNQ5xSFPITMdLSfhcBqjamE3F+sKcxPbD7eZuMHu3Qkk2V+JGxBDQ==";
       };
     };
-    "@octokit/request-5.4.8" = {
+    "@octokit/request-5.6.2" = {
       name = "_at_octokit_slash_request";
       packageName = "@octokit/request";
-      version = "5.4.8";
+      version = "5.6.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/request/-/request-5.4.8.tgz";
-        sha512 = "mWbxjsARJzAq5xp+ZrQfotc+MHFz3/Am2qATJwflv4PZ1TjhgIJnr60PCVdZT9Z/tl+uPXooaVgeviy1KkDlLQ==";
+        url = "https://registry.npmjs.org/@octokit/request/-/request-5.6.2.tgz";
+        sha512 = "je66CvSEVf0jCpRISxkUcCa0UkxmFs6eGDRSbfJtAVwbLH5ceqF+YEyC8lj8ystKyZTy8adWr0qmkY52EfOeLA==";
       };
     };
     "@octokit/request-error-1.2.1" = {
@@ -1021,13 +1021,13 @@ let
         sha512 = "+6yDyk1EES6WK+l3viRDElw96MvwfJxCt45GvmjDUKWjYIb3PJZQkq3i46TwGwoPD4h8NmTrENmtyA1FwbmhRA==";
       };
     };
-    "@octokit/request-error-2.0.2" = {
+    "@octokit/request-error-2.1.0" = {
       name = "_at_octokit_slash_request-error";
       packageName = "@octokit/request-error";
-      version = "2.0.2";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.0.2.tgz";
-        sha512 = "2BrmnvVSV1MXQvEkrb9zwzP0wXFNbPJij922kYBTLIlIafukrGOb+ABBT2+c6wZiuyWDH1K1zmjGQ0toN/wMWw==";
+        url = "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz";
+        sha512 = "1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==";
       };
     };
     "@octokit/rest-16.43.2" = {
@@ -1048,13 +1048,13 @@ let
         sha512 = "O75k56TYvJ8WpAakWwYRN8Bgu60KrmX0z1KqFp1kNiFNkgW+JW+9EBKZ+S33PU6SLvbihqd+3drvPxKK68Ee8Q==";
       };
     };
-    "@octokit/types-5.4.1" = {
+    "@octokit/types-6.34.0" = {
       name = "_at_octokit_slash_types";
       packageName = "@octokit/types";
-      version = "5.4.1";
+      version = "6.34.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/types/-/types-5.4.1.tgz";
-        sha512 = "OlMlSySBJoJ6uozkr/i03nO5dlYQyE05vmQNZhAh9MyO4DPBP88QlwsDVLmVjIMFssvIZB6WO0ctIGMRG+xsJQ==";
+        url = "https://registry.npmjs.org/@octokit/types/-/types-6.34.0.tgz";
+        sha512 = "s1zLBjWhdEI2zwaoSgyOFoKSl109CUcVBCc7biPJ3aAf6LGLU6szDvi31JPU7bxfla2lqfhjbbg/5DdFNxOwHw==";
       };
     };
     "@semantic-release/commit-analyzer-6.3.3" = {
@@ -1102,13 +1102,13 @@ let
         sha512 = "LGjgPBGjjmjap/76O0Md3wc04Y7IlLnzZceLsAkcYRwGQdRPTTFUJKqDQTuieWTs7zfHzQoZqsqPfFxEN+g2+Q==";
       };
     };
-    "@sinonjs/commons-1.8.1" = {
+    "@sinonjs/commons-1.8.3" = {
       name = "_at_sinonjs_slash_commons";
       packageName = "@sinonjs/commons";
-      version = "1.8.1";
+      version = "1.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz";
-        sha512 = "892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==";
+        url = "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz";
+        sha512 = "xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==";
       };
     };
     "@sinonjs/formatio-3.2.2" = {
@@ -1147,58 +1147,49 @@ let
         sha512 = "+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==";
       };
     };
-    "@types/color-name-1.1.1" = {
-      name = "_at_types_slash_color-name";
-      packageName = "@types/color-name";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz";
-        sha512 = "rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==";
-      };
-    };
-    "@types/glob-7.1.3" = {
+    "@types/glob-7.2.0" = {
       name = "_at_types_slash_glob";
       packageName = "@types/glob";
-      version = "7.1.3";
+      version = "7.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz";
-        sha512 = "SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==";
+        url = "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz";
+        sha512 = "ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==";
       };
     };
-    "@types/minimatch-3.0.3" = {
+    "@types/minimatch-3.0.5" = {
       name = "_at_types_slash_minimatch";
       packageName = "@types/minimatch";
-      version = "3.0.3";
+      version = "3.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz";
-        sha512 = "tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==";
+        url = "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz";
+        sha512 = "Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==";
       };
     };
-    "@types/minimist-1.2.0" = {
+    "@types/minimist-1.2.2" = {
       name = "_at_types_slash_minimist";
       packageName = "@types/minimist";
-      version = "1.2.0";
+      version = "1.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz";
-        sha1 = "69a23a3ad29caf0097f06eda59b361ee2f0639f6";
+        url = "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz";
+        sha512 = "jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==";
       };
     };
-    "@types/node-14.10.0" = {
+    "@types/node-16.11.1" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "14.10.0";
+      version = "16.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-14.10.0.tgz";
-        sha512 = "SOIyrdADB4cq6eY1F+9iU48iIomFAPltu11LCvA9PKcyEwHadjCFzNVPotAR+oEJA0bCP4Xvvgy+vwu1ZjVh8g==";
+        url = "https://registry.npmjs.org/@types/node/-/node-16.11.1.tgz";
+        sha512 = "PYGcJHL9mwl1Ek3PLiYgyEKtwTMmkMw4vbiyz/ps3pfdRYLVv+SN7qHVAImrjdAXxgluDEw6Ph4lyv+m9UpRmA==";
       };
     };
-    "@types/normalize-package-data-2.4.0" = {
+    "@types/normalize-package-data-2.4.1" = {
       name = "_at_types_slash_normalize-package-data";
       packageName = "@types/normalize-package-data";
-      version = "2.4.0";
+      version = "2.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz";
-        sha512 = "f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==";
+        url = "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz";
+        sha512 = "Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==";
       };
     };
     "@types/parse-json-4.0.0" = {
@@ -1210,13 +1201,13 @@ let
         sha512 = "//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==";
       };
     };
-    "@types/retry-0.12.0" = {
+    "@types/retry-0.12.1" = {
       name = "_at_types_slash_retry";
       packageName = "@types/retry";
-      version = "0.12.0";
+      version = "0.12.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz";
-        sha512 = "wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==";
+        url = "https://registry.npmjs.org/@types/retry/-/retry-0.12.1.tgz";
+        sha512 = "xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==";
       };
     };
     "JSONStream-1.3.5" = {
@@ -1309,13 +1300,13 @@ let
         sha512 = "1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==";
       };
     };
-    "ansi-regex-5.0.0" = {
+    "ansi-regex-5.0.1" = {
       name = "ansi-regex";
       packageName = "ansi-regex";
-      version = "5.0.0";
+      version = "5.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz";
-        sha512 = "bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==";
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz";
+        sha512 = "quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==";
       };
     };
     "ansi-styles-3.2.1" = {
@@ -1327,13 +1318,13 @@ let
         sha512 = "VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==";
       };
     };
-    "ansi-styles-4.2.1" = {
+    "ansi-styles-4.3.0" = {
       name = "ansi-styles";
       packageName = "ansi-styles";
-      version = "4.2.1";
+      version = "4.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz";
-        sha512 = "9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==";
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz";
+        sha512 = "zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==";
       };
     };
     "ansicolors-0.3.2" = {
@@ -1372,6 +1363,15 @@ let
         sha1 = "f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40";
       };
     };
+    "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-1.0.10" = {
       name = "argparse";
       packageName = "argparse";
@@ -1570,13 +1570,13 @@ let
         sha512 = "5LphC0USA8t4i1zCtjbbNb6jJj/9+X6P37Qfirc/70EQ34xKlMW+a1RHGwxGI+SwWpNwZ27HqvzAobeqaXwiZw==";
       };
     };
-    "balanced-match-1.0.0" = {
+    "balanced-match-1.0.2" = {
       name = "balanced-match";
       packageName = "balanced-match";
-      version = "1.0.0";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz";
-        sha1 = "89b4d199ab2bee49de164ea02b89ce462d71b767";
+        url = "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz";
+        sha512 = "3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==";
       };
     };
     "base-0.11.2" = {
@@ -1588,13 +1588,13 @@ let
         sha512 = "5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==";
       };
     };
-    "before-after-hook-2.1.0" = {
+    "before-after-hook-2.2.2" = {
       name = "before-after-hook";
       packageName = "before-after-hook";
-      version = "2.1.0";
+      version = "2.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.1.0.tgz";
-        sha512 = "IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A==";
+        url = "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.2.tgz";
+        sha512 = "3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ==";
       };
     };
     "binary-extensions-1.13.1" = {
@@ -1687,13 +1687,13 @@ let
         sha512 = "qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==";
       };
     };
-    "browserslist-4.14.2" = {
+    "browserslist-4.17.4" = {
       name = "browserslist";
       packageName = "browserslist";
-      version = "4.14.2";
+      version = "4.17.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.14.2.tgz";
-        sha512 = "HI4lPveGKUR0x2StIz+2FXfDk9SfVMrxn6PLh1JeGUwcuoDkdKZebWiyLRJ68iIPDpMI4JLVDf7S7XzslgWOhw==";
+        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.17.4.tgz";
+        sha512 = "Zg7RpbZpIJRW3am9Lyckue7PLytvVxxhJj1CaJVlCWENsGEAOlnlt8X0ZxGRPp7Bt9o8tIRM5SEXy4BCPMJjLQ==";
       };
     };
     "btoa-lite-1.0.0" = {
@@ -1705,13 +1705,13 @@ let
         sha1 = "337766da15801210fdd956c22e9c6891ab9d0337";
       };
     };
-    "buffer-from-1.1.1" = {
+    "buffer-from-1.1.2" = {
       name = "buffer-from";
       packageName = "buffer-from";
-      version = "1.1.1";
+      version = "1.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz";
-        sha512 = "MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==";
+        url = "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz";
+        sha512 = "E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==";
       };
     };
     "cache-base-1.0.1" = {
@@ -1741,31 +1741,13 @@ let
         sha512 = "kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==";
       };
     };
-    "caller-callsite-2.0.0" = {
-      name = "caller-callsite";
-      packageName = "caller-callsite";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz";
-        sha1 = "847e0fce0a223750a9a027c54b33731ad3154134";
-      };
-    };
-    "caller-path-2.0.0" = {
-      name = "caller-path";
-      packageName = "caller-path";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz";
-        sha1 = "468f83044e369ab2010fac5f06ceee15bb2cb1f4";
-      };
-    };
-    "callsites-2.0.0" = {
-      name = "callsites";
-      packageName = "callsites";
-      version = "2.0.0";
+    "call-bind-1.0.2" = {
+      name = "call-bind";
+      packageName = "call-bind";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz";
-        sha1 = "06eb84f00eea413da86affefacbffb36093b3c50";
+        url = "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz";
+        sha512 = "7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==";
       };
     };
     "callsites-3.1.0" = {
@@ -1804,13 +1786,13 @@ let
         sha512 = "YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==";
       };
     };
-    "caniuse-lite-1.0.30001125" = {
+    "caniuse-lite-1.0.30001270" = {
       name = "caniuse-lite";
       packageName = "caniuse-lite";
-      version = "1.0.30001125";
+      version = "1.0.30001270";
       src = fetchurl {
-        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001125.tgz";
-        sha512 = "9f+r7BW8Qli917mU3j0fUaTweT3f3vnX/Lcs+1C73V+RADmFme+Ih0Br8vONQi3X0lseOe6ZHfsZLCA8MSjxUA==";
+        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001270.tgz";
+        sha512 = "TcIC7AyNWXhcOmv2KftOl1ShFAaHQYcB/EPL/hEyMrcS7ZX0/DvV1aoy6BzV0+16wTpoAyTMGDNAJfSqS/rz7A==";
       };
     };
     "capture-stack-trace-1.0.1" = {
@@ -1840,13 +1822,13 @@ let
         sha1 = "8167c1ab8397fb5bb95f96d28e5a81c50f247ac4";
       };
     };
-    "chai-4.2.0" = {
+    "chai-4.1.2" = {
       name = "chai";
       packageName = "chai";
-      version = "4.2.0";
+      version = "4.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz";
-        sha512 = "XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==";
+        url = "https://registry.npmjs.org/chai/-/chai-4.1.2.tgz";
+        sha1 = "0f64584ba642f0f2ace2806279f4f06ca23ad73c";
       };
     };
     "chalk-2.4.2" = {
@@ -1858,13 +1840,13 @@ let
         sha512 = "Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==";
       };
     };
-    "chalk-4.1.0" = {
+    "chalk-4.1.2" = {
       name = "chalk";
       packageName = "chalk";
-      version = "4.1.0";
+      version = "4.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz";
-        sha512 = "qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==";
+        url = "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz";
+        sha512 = "oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==";
       };
     };
     "chardet-0.7.0" = {
@@ -1948,13 +1930,13 @@ let
         sha1 = "b35dac376479facc3e94747d41d0d0f5238ffcb5";
       };
     };
-    "cli-table-0.3.1" = {
+    "cli-table-0.3.6" = {
       name = "cli-table";
       packageName = "cli-table";
-      version = "0.3.1";
+      version = "0.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cli-table/-/cli-table-0.3.1.tgz";
-        sha1 = "f53b05266a8b1a0b934b3d0821e6e2dc5914ae23";
+        url = "https://registry.npmjs.org/cli-table/-/cli-table-0.3.6.tgz";
+        sha512 = "ZkNZbnZjKERTY5NwC2SeMeLeifSPq/pubeRoTpdr3WchLlnZg6hEgvHkK5zL7KNFdd9PmHN8lxrENUwI3cE8vQ==";
       };
     };
     "cli-width-2.2.1" = {
@@ -2101,13 +2083,13 @@ let
         sha512 = "NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==";
       };
     };
-    "commitizen-4.2.1" = {
+    "commitizen-4.2.4" = {
       name = "commitizen";
       packageName = "commitizen";
-      version = "4.2.1";
+      version = "4.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/commitizen/-/commitizen-4.2.1.tgz";
-        sha512 = "nZsp8IThkDu7C+93BFD/mLShb9Gd6Wsaf90tpKE3x/6u5y/Q52kzanIJpGr0qvIsJ5bCMpgKtr3Lbu3miEJfaA==";
+        url = "https://registry.npmjs.org/commitizen/-/commitizen-4.2.4.tgz";
+        sha512 = "LlZChbDzg3Ir3O2S7jSo/cgWp5/QwylQVr59K4xayVq8S4/RdKzSyJkghAiZZHfhh5t4pxunUoyeg0ml1q/7aw==";
       };
     };
     "commondir-1.0.1" = {
@@ -2155,22 +2137,31 @@ let
         sha512 = "nlOhI4+fdzoK5xmJ+NY+1gZK56bwEaWZr8fYuXohZ9Vkc1o3a4T/R3M+yE/w7x/ZVJ1zF8c+oaOvF0dztdUgmA==";
       };
     };
-    "conventional-changelog-angular-5.0.11" = {
+    "conventional-changelog-angular-5.0.13" = {
       name = "conventional-changelog-angular";
       packageName = "conventional-changelog-angular";
-      version = "5.0.11";
+      version = "5.0.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.11.tgz";
-        sha512 = "nSLypht/1yEflhuTogC03i7DX7sOrXGsRn14g131Potqi6cbGbGEE9PSDEHKldabB6N76HiSyw9Ph+kLmC04Qw==";
+        url = "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz";
+        sha512 = "i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA==";
       };
     };
-    "conventional-changelog-writer-4.0.17" = {
+    "conventional-changelog-conventionalcommits-4.4.0" = {
+      name = "conventional-changelog-conventionalcommits";
+      packageName = "conventional-changelog-conventionalcommits";
+      version = "4.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.4.0.tgz";
+        sha512 = "ybvx76jTh08tpaYrYn/yd0uJNLt5yMrb1BphDe4WBredMlvPisvMghfpnJb6RmRNcqXeuhR6LfGZGewbkRm9yA==";
+      };
+    };
+    "conventional-changelog-writer-4.1.0" = {
       name = "conventional-changelog-writer";
       packageName = "conventional-changelog-writer";
-      version = "4.0.17";
+      version = "4.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.0.17.tgz";
-        sha512 = "IKQuK3bib/n032KWaSb8YlBFds+aLmzENtnKtxJy3+HqDq5kohu3g/UdNbIHeJWygfnEbZjnCKFxAW0y7ArZAw==";
+        url = "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.1.0.tgz";
+        sha512 = "WwKcUp7WyXYGQmkLsX4QmU42AZ1lqlvRW9mqoyiQzdD+rJWbTepdWoKJuwXTS+yq79XKnQNa93/roViPQrAQgw==";
       };
     };
     "conventional-commit-types-2.3.0" = {
@@ -2191,31 +2182,31 @@ let
         sha512 = "SmmCYnOniSsAa9GqWOeLqc179lfr5TRu5b4QFDkbsrJ5TZjPJx85wtOr3zn+1dbeNiXDKGPbZ72IKbPhLXh/Lg==";
       };
     };
-    "conventional-commits-filter-2.0.6" = {
+    "conventional-commits-filter-2.0.7" = {
       name = "conventional-commits-filter";
       packageName = "conventional-commits-filter";
-      version = "2.0.6";
+      version = "2.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.6.tgz";
-        sha512 = "4g+sw8+KA50/Qwzfr0hL5k5NWxqtrOVw4DDk3/h6L85a9Gz0/Eqp3oP+CWCNfesBvZZZEFHF7OTEbRe+yYSyKw==";
+        url = "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz";
+        sha512 = "ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA==";
       };
     };
-    "conventional-commits-parser-3.1.0" = {
+    "conventional-commits-parser-3.2.2" = {
       name = "conventional-commits-parser";
       packageName = "conventional-commits-parser";
-      version = "3.1.0";
+      version = "3.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.1.0.tgz";
-        sha512 = "RSo5S0WIwXZiRxUGTPuYFbqvrR4vpJ1BDdTlthFgvHt5kEdnd1+pdvwWphWn57/oIl4V72NMmOocFqqJ8mFFhA==";
+        url = "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.2.tgz";
+        sha512 = "Jr9KAKgqAkwXMRHjxDwO/zOCDKod1XdAESHAGuJX38iZ7ZzVti/tvVoysO0suMsdAObp9NQ2rHSsSbnAqZ5f5g==";
       };
     };
-    "convert-source-map-1.7.0" = {
+    "convert-source-map-1.8.0" = {
       name = "convert-source-map";
       packageName = "convert-source-map";
-      version = "1.7.0";
+      version = "1.8.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz";
-        sha512 = "4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==";
+        url = "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz";
+        sha512 = "+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==";
       };
     };
     "copy-descriptor-0.1.1" = {
@@ -2227,40 +2218,40 @@ let
         sha1 = "676f6eb3c39997c2ee1ac3a924fd6124748f578d";
       };
     };
-    "core-js-compat-3.6.5" = {
+    "core-js-compat-3.18.3" = {
       name = "core-js-compat";
       packageName = "core-js-compat";
-      version = "3.6.5";
+      version = "3.18.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz";
-        sha512 = "7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==";
+        url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.18.3.tgz";
+        sha512 = "4zP6/y0a2RTHN5bRGT7PTq9lVt3WzvffTNjqnTKsXhkAYNDTkdCLOIfAdOLcQ/7TDdyRj3c+NeHe1NmF1eDScw==";
       };
     };
-    "core-util-is-1.0.2" = {
+    "core-util-is-1.0.3" = {
       name = "core-util-is";
       packageName = "core-util-is";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz";
-        sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
+        url = "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz";
+        sha512 = "ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==";
       };
     };
-    "cosmiconfig-5.2.1" = {
+    "cosmiconfig-6.0.0" = {
       name = "cosmiconfig";
       packageName = "cosmiconfig";
-      version = "5.2.1";
+      version = "6.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz";
-        sha512 = "H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==";
+        url = "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz";
+        sha512 = "xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==";
       };
     };
-    "cosmiconfig-7.0.0" = {
+    "cosmiconfig-7.0.1" = {
       name = "cosmiconfig";
       packageName = "cosmiconfig";
-      version = "7.0.0";
+      version = "7.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz";
-        sha512 = "pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==";
+        url = "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz";
+        sha512 = "a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==";
       };
     };
     "create-error-class-3.0.2" = {
@@ -2272,6 +2263,15 @@ let
         sha1 = "06be7abef947a3f14a30fd610671d401bca8b7b6";
       };
     };
+    "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-5.1.0" = {
       name = "cross-spawn";
       packageName = "cross-spawn";
@@ -2389,13 +2389,22 @@ let
         sha512 = "mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==";
       };
     };
-    "debug-4.2.0" = {
+    "debug-3.2.7" = {
       name = "debug";
       packageName = "debug";
-      version = "4.2.0";
+      version = "3.2.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz";
+        sha512 = "CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==";
+      };
+    };
+    "debug-4.3.2" = {
+      name = "debug";
+      packageName = "debug";
+      version = "4.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz";
-        sha512 = "IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==";
+        url = "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz";
+        sha512 = "mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==";
       };
     };
     "decamelize-1.2.0" = {
@@ -2560,6 +2569,15 @@ let
         sha512 = "A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==";
       };
     };
+    "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==";
+      };
+    };
     "dir-glob-3.0.1" = {
       name = "dir-glob";
       packageName = "dir-glob";
@@ -2614,13 +2632,13 @@ let
         sha1 = "ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2";
       };
     };
-    "electron-to-chromium-1.3.565" = {
+    "electron-to-chromium-1.3.873" = {
       name = "electron-to-chromium";
       packageName = "electron-to-chromium";
-      version = "1.3.565";
+      version = "1.3.873";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.565.tgz";
-        sha512 = "me5dGlHFd8Q7mKhqbWRLIYnKjw4i0fO6hmW0JBxa7tM87fBfNEjWokRnDF7V+Qme/9IYpwhfMn+soWs40tXWqg==";
+        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.873.tgz";
+        sha512 = "TiHlCgl2uP26Z0c67u442c0a2MZCWZNCRnPTQDPhVJ4h9G6z2zU0lApD9H0K9R5yFL5SfdaiVsVD2izOY24xBQ==";
       };
     };
     "emoji-regex-7.0.3" = {
@@ -2668,13 +2686,13 @@ let
         sha512 = "7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==";
       };
     };
-    "es-abstract-1.17.6" = {
+    "es-abstract-1.19.1" = {
       name = "es-abstract";
       packageName = "es-abstract";
-      version = "1.17.6";
+      version = "1.19.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz";
-        sha512 = "Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==";
+        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz";
+        sha512 = "2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==";
       };
     };
     "es-to-primitive-1.2.1" = {
@@ -2695,13 +2713,13 @@ let
         sha512 = "Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==";
       };
     };
-    "escalade-3.0.2" = {
+    "escalade-3.1.1" = {
       name = "escalade";
       packageName = "escalade";
-      version = "3.0.2";
+      version = "3.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz";
-        sha512 = "gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==";
+        url = "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz";
+        sha512 = "k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==";
       };
     };
     "escape-string-regexp-1.0.5" = {
@@ -2812,22 +2830,22 @@ let
         sha512 = "Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==";
       };
     };
-    "fast-glob-3.2.4" = {
+    "fast-glob-3.2.7" = {
       name = "fast-glob";
       packageName = "fast-glob";
-      version = "3.2.4";
+      version = "3.2.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz";
-        sha512 = "kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==";
+        url = "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz";
+        sha512 = "rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==";
       };
     };
-    "fastq-1.8.0" = {
+    "fastq-1.13.0" = {
       name = "fastq";
       packageName = "fastq";
-      version = "1.8.0";
+      version = "1.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz";
-        sha512 = "SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==";
+        url = "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz";
+        sha512 = "YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==";
       };
     };
     "figures-2.0.0" = {
@@ -2893,22 +2911,22 @@ let
         sha512 = "Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==";
       };
     };
-    "find-cache-dir-3.3.1" = {
+    "find-cache-dir-3.3.2" = {
       name = "find-cache-dir";
       packageName = "find-cache-dir";
-      version = "3.3.1";
+      version = "3.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz";
-        sha512 = "t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==";
+        url = "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz";
+        sha512 = "wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==";
       };
     };
-    "find-node-modules-2.0.0" = {
+    "find-node-modules-2.1.2" = {
       name = "find-node-modules";
       packageName = "find-node-modules";
-      version = "2.0.0";
+      version = "2.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/find-node-modules/-/find-node-modules-2.0.0.tgz";
-        sha512 = "8MWIBRgJi/WpjjfVXumjPKCtmQ10B+fjx6zmSA+770GMJirLhWIzg8l763rhjl9xaeaHbnxPNRQKq2mgMhr+aw==";
+        url = "https://registry.npmjs.org/find-node-modules/-/find-node-modules-2.1.2.tgz";
+        sha512 = "x+3P4mbtRPlSiVE1Qco0Z4YLU8WFiFcuWTf3m75OV9Uzcfs2Bg+O9N+r/K0AnmINBW06KpfqKwYJbFlFq4qNug==";
       };
     };
     "find-root-1.1.0" = {
@@ -2965,22 +2983,22 @@ let
         sha1 = "8ad929a3393bac627957a7e5de4623b06b0e2ceb";
       };
     };
-    "findup-sync-3.0.0" = {
+    "findup-sync-4.0.0" = {
       name = "findup-sync";
       packageName = "findup-sync";
-      version = "3.0.0";
+      version = "4.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz";
-        sha512 = "YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==";
+        url = "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz";
+        sha512 = "6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==";
       };
     };
-    "flat-4.1.0" = {
+    "flat-4.1.1" = {
       name = "flat";
       packageName = "flat";
-      version = "4.1.0";
+      version = "4.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz";
-        sha512 = "Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==";
+        url = "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz";
+        sha512 = "FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==";
       };
     };
     "follow-redirects-1.5.10" = {
@@ -3046,13 +3064,13 @@ let
         sha1 = "8bfb5502bde4a4d36cfdeea007fcca21d7e382af";
       };
     };
-    "fromentries-1.2.1" = {
+    "fromentries-1.3.2" = {
       name = "fromentries";
       packageName = "fromentries";
-      version = "1.2.1";
+      version = "1.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fromentries/-/fromentries-1.2.1.tgz";
-        sha512 = "Xu2Qh8yqYuDhQGOhD5iJGninErSfI9A3FrriD3tjUgV5VbJFeH8vfgZ9HnC6jWN80QDVNQK5vmxRAmEAp7Mevw==";
+        url = "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz";
+        sha512 = "cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==";
       };
     };
     "fs-extra-8.1.0" = {
@@ -3100,13 +3118,13 @@ let
         sha512 = "yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==";
       };
     };
-    "gensync-1.0.0-beta.1" = {
+    "gensync-1.0.0-beta.2" = {
       name = "gensync";
       packageName = "gensync";
-      version = "1.0.0-beta.1";
+      version = "1.0.0-beta.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz";
-        sha512 = "r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==";
+        url = "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz";
+        sha512 = "3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==";
       };
     };
     "get-caller-file-1.0.3" = {
@@ -3136,6 +3154,15 @@ let
         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==";
+      };
+    };
     "get-package-type-0.1.0" = {
       name = "get-package-type";
       packageName = "get-package-type";
@@ -3172,6 +3199,15 @@ let
         sha512 = "nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==";
       };
     };
+    "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==";
+      };
+    };
     "get-value-2.0.6" = {
       name = "get-value";
       packageName = "get-value";
@@ -3217,13 +3253,13 @@ let
         sha512 = "hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==";
       };
     };
-    "glob-7.1.6" = {
+    "glob-7.2.0" = {
       name = "glob";
       packageName = "glob";
-      version = "7.1.6";
+      version = "7.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz";
-        sha512 = "LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==";
+        url = "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz";
+        sha512 = "lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==";
       };
     };
     "glob-parent-3.1.0" = {
@@ -3235,13 +3271,13 @@ let
         sha1 = "9e6af6299d8d3bd2bd40430832bd113df906c5ae";
       };
     };
-    "glob-parent-5.1.1" = {
+    "glob-parent-5.1.2" = {
       name = "glob-parent";
       packageName = "glob-parent";
-      version = "5.1.1";
+      version = "5.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz";
-        sha512 = "FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==";
+        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz";
+        sha512 = "AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==";
       };
     };
     "global-dirs-0.1.1" = {
@@ -3298,13 +3334,13 @@ let
         sha1 = "240cd05785a9a18e561dc1b44b41c763ef1e8db0";
       };
     };
-    "graceful-fs-4.2.4" = {
+    "graceful-fs-4.2.8" = {
       name = "graceful-fs";
       packageName = "graceful-fs";
-      version = "4.2.4";
+      version = "4.2.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz";
-        sha512 = "WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==";
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz";
+        sha512 = "qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==";
       };
     };
     "graceful-readlink-1.0.1" = {
@@ -3325,13 +3361,13 @@ let
         sha512 = "qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==";
       };
     };
-    "handlebars-4.7.6" = {
+    "handlebars-4.7.7" = {
       name = "handlebars";
       packageName = "handlebars";
-      version = "4.7.6";
+      version = "4.7.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz";
-        sha512 = "1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==";
+        url = "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz";
+        sha512 = "aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==";
       };
     };
     "hard-rejection-2.1.0" = {
@@ -3352,6 +3388,15 @@ let
         sha512 = "f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==";
       };
     };
+    "has-bigints-1.0.1" = {
+      name = "has-bigints";
+      packageName = "has-bigints";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz";
+        sha512 = "LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==";
+      };
+    };
     "has-flag-2.0.0" = {
       name = "has-flag";
       packageName = "has-flag";
@@ -3379,13 +3424,22 @@ let
         sha512 = "EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==";
       };
     };
-    "has-symbols-1.0.1" = {
+    "has-symbols-1.0.2" = {
       name = "has-symbols";
       packageName = "has-symbols";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz";
-        sha512 = "PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==";
+        url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz";
+        sha512 = "chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==";
+      };
+    };
+    "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==";
       };
     };
     "has-value-0.3.1" = {
@@ -3424,13 +3478,13 @@ let
         sha1 = "95b0b63fec2146619a6fe57fe75628d5a39efe4f";
       };
     };
-    "hasha-5.2.0" = {
+    "hasha-5.2.2" = {
       name = "hasha";
       packageName = "hasha";
-      version = "5.2.0";
+      version = "5.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hasha/-/hasha-5.2.0.tgz";
-        sha512 = "2W+jKdQbAdSIrggA8Q35Br8qKadTrqCTC8+XZvBWepKDK6m9XkX6Iz1a2yh2KP01kzAR/dpuMeUnocoLYDcskw==";
+        url = "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz";
+        sha512 = "Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==";
       };
     };
     "hawk-1.1.1" = {
@@ -3478,13 +3532,31 @@ let
         sha512 = "zZ6T5WcuBMIUVh49iPQS9t977t7C0l7OtHrpeMb5uk48JdflRX0NSFvCekfYNmGQETnLq9W/isMyHl69kxGi8g==";
       };
     };
-    "hosted-git-info-2.8.8" = {
+    "hosted-git-info-2.8.9" = {
+      name = "hosted-git-info";
+      packageName = "hosted-git-info";
+      version = "2.8.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz";
+        sha512 = "mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==";
+      };
+    };
+    "hosted-git-info-3.0.8" = {
       name = "hosted-git-info";
       packageName = "hosted-git-info";
-      version = "2.8.8";
+      version = "3.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz";
-        sha512 = "f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==";
+        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz";
+        sha512 = "aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==";
+      };
+    };
+    "hosted-git-info-4.0.2" = {
+      name = "hosted-git-info";
+      packageName = "hosted-git-info";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz";
+        sha512 = "c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==";
       };
     };
     "html-escaper-2.0.2" = {
@@ -3559,22 +3631,13 @@ let
         sha1 = "48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09";
       };
     };
-    "import-fresh-2.0.0" = {
-      name = "import-fresh";
-      packageName = "import-fresh";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz";
-        sha1 = "d81355c15612d386c61f9ddd3922d4304822a546";
-      };
-    };
-    "import-fresh-3.2.1" = {
+    "import-fresh-3.3.0" = {
       name = "import-fresh";
       packageName = "import-fresh";
-      version = "3.2.1";
+      version = "3.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz";
-        sha512 = "6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==";
+        url = "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz";
+        sha512 = "veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==";
       };
     };
     "import-from-3.0.0" = {
@@ -3604,13 +3667,13 @@ let
         sha1 = "9218b9b2b928a238b13dc4fb6b6d576f231453ea";
       };
     };
-    "in-publish-2.0.1" = {
+    "in-publish-2.0.0" = {
       name = "in-publish";
       packageName = "in-publish";
-      version = "2.0.1";
+      version = "2.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz";
-        sha512 = "oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==";
+        url = "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz";
+        sha1 = "e20ff5e3a2afc2690320b6dc552682a9c7fadf51";
       };
     };
     "indent-string-4.0.0" = {
@@ -3640,13 +3703,13 @@ let
         sha512 = "k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==";
       };
     };
-    "ini-1.3.5" = {
+    "ini-1.3.8" = {
       name = "ini";
       packageName = "ini";
-      version = "1.3.5";
+      version = "1.3.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz";
-        sha512 = "RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==";
+        url = "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz";
+        sha512 = "JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==";
       };
     };
     "inquirer-6.5.2" = {
@@ -3658,6 +3721,15 @@ let
         sha512 = "cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==";
       };
     };
+    "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==";
+      };
+    };
     "into-stream-5.1.1" = {
       name = "into-stream";
       packageName = "into-stream";
@@ -3712,6 +3784,15 @@ let
         sha1 = "77c99840527aa8ecb1a8ba697b80645a7a926a9d";
       };
     };
+    "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-1.0.1" = {
       name = "is-binary-path";
       packageName = "is-binary-path";
@@ -3721,6 +3802,15 @@ let
         sha1 = "75f16642b480f187a711c814161fd3a4a7655898";
       };
     };
+    "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-buffer-1.1.6" = {
       name = "is-buffer";
       packageName = "is-buffer";
@@ -3730,22 +3820,22 @@ let
         sha512 = "NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==";
       };
     };
-    "is-buffer-2.0.4" = {
+    "is-buffer-2.0.5" = {
       name = "is-buffer";
       packageName = "is-buffer";
-      version = "2.0.4";
+      version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz";
-        sha512 = "Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==";
+        url = "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz";
+        sha512 = "i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==";
       };
     };
-    "is-callable-1.2.1" = {
+    "is-callable-1.2.4" = {
       name = "is-callable";
       packageName = "is-callable";
-      version = "1.2.1";
+      version = "1.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-callable/-/is-callable-1.2.1.tgz";
-        sha512 = "wliAfSzx6V+6WfMOmus1xy0XvSgf/dlStkvTfq7F0g4bOIW0PSUbnyse3NhDwdyYS1ozfUtAAySqTws3z9Eqgg==";
+        url = "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz";
+        sha512 = "nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==";
       };
     };
     "is-ci-1.2.1" = {
@@ -3757,6 +3847,15 @@ let
         sha512 = "s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==";
       };
     };
+    "is-core-module-2.8.0" = {
+      name = "is-core-module";
+      packageName = "is-core-module";
+      version = "2.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz";
+        sha512 = "vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==";
+      };
+    };
     "is-data-descriptor-0.1.4" = {
       name = "is-data-descriptor";
       packageName = "is-data-descriptor";
@@ -3775,13 +3874,13 @@ let
         sha512 = "jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==";
       };
     };
-    "is-date-object-1.0.2" = {
+    "is-date-object-1.0.5" = {
       name = "is-date-object";
       packageName = "is-date-object";
-      version = "1.0.2";
+      version = "1.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz";
-        sha512 = "USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==";
+        url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz";
+        sha512 = "9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==";
       };
     };
     "is-descriptor-0.1.6" = {
@@ -3802,15 +3901,6 @@ let
         sha512 = "2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==";
       };
     };
-    "is-directory-0.3.1" = {
-      name = "is-directory";
-      packageName = "is-directory";
-      version = "0.3.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz";
-        sha1 = "61339b6f2475fc772fd9c9d83f5c8575dc154ae1";
-      };
-    };
     "is-extendable-0.1.1" = {
       name = "is-extendable";
       packageName = "is-extendable";
@@ -3874,13 +3964,13 @@ let
         sha1 = "7ba5ae24217804ac70707b96922567486cc3e84a";
       };
     };
-    "is-glob-4.0.1" = {
+    "is-glob-4.0.3" = {
       name = "is-glob";
       packageName = "is-glob";
-      version = "4.0.1";
+      version = "4.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz";
-        sha512 = "5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==";
+        url = "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz";
+        sha512 = "xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==";
       };
     };
     "is-installed-globally-0.1.0" = {
@@ -3892,6 +3982,15 @@ let
         sha1 = "0dfd98f5a9111716dd535dda6492f67bf3d25a80";
       };
     };
+    "is-negative-zero-2.0.1" = {
+      name = "is-negative-zero";
+      packageName = "is-negative-zero";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz";
+        sha512 = "2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==";
+      };
+    };
     "is-npm-1.0.0" = {
       name = "is-npm";
       packageName = "is-npm";
@@ -3919,6 +4018,15 @@ let
         sha512 = "41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==";
       };
     };
+    "is-number-object-1.0.6" = {
+      name = "is-number-object";
+      packageName = "is-number-object";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz";
+        sha512 = "bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==";
+      };
+    };
     "is-obj-1.0.1" = {
       name = "is-obj";
       packageName = "is-obj";
@@ -3937,13 +4045,13 @@ let
         sha512 = "drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==";
       };
     };
-    "is-object-1.0.1" = {
+    "is-object-1.0.2" = {
       name = "is-object";
       packageName = "is-object";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz";
-        sha1 = "8952688c5ec2ffd6b03ecc85e769e02903083470";
+        url = "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz";
+        sha512 = "2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==";
       };
     };
     "is-path-inside-1.0.1" = {
@@ -3991,13 +4099,13 @@ let
         sha1 = "1d03dded53bd8db0f30c26e4f95d36fc7c87dc24";
       };
     };
-    "is-regex-1.1.1" = {
+    "is-regex-1.1.4" = {
       name = "is-regex";
       packageName = "is-regex";
-      version = "1.1.1";
+      version = "1.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz";
-        sha512 = "1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==";
+        url = "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz";
+        sha512 = "kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==";
       };
     };
     "is-retry-allowed-1.2.0" = {
@@ -4009,6 +4117,15 @@ let
         sha512 = "RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==";
       };
     };
+    "is-shared-array-buffer-1.0.1" = {
+      name = "is-shared-array-buffer";
+      packageName = "is-shared-array-buffer";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz";
+        sha512 = "IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==";
+      };
+    };
     "is-stream-1.1.0" = {
       name = "is-stream";
       packageName = "is-stream";
@@ -4018,22 +4135,31 @@ let
         sha1 = "12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44";
       };
     };
-    "is-stream-2.0.0" = {
+    "is-stream-2.0.1" = {
       name = "is-stream";
       packageName = "is-stream";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz";
-        sha512 = "XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==";
+        url = "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz";
+        sha512 = "hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==";
       };
     };
-    "is-symbol-1.0.3" = {
+    "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.3";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz";
-        sha512 = "OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==";
+        url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz";
+        sha512 = "C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==";
       };
     };
     "is-text-path-1.0.1" = {
@@ -4063,6 +4189,15 @@ let
         sha1 = "4b0da1442104d1b336340e80797e865cf39f7d72";
       };
     };
+    "is-weakref-1.0.1" = {
+      name = "is-weakref";
+      packageName = "is-weakref";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.1.tgz";
+        sha512 = "b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ==";
+      };
+    };
     "is-windows-1.0.2" = {
       name = "is-windows";
       packageName = "is-windows";
@@ -4135,13 +4270,13 @@ let
         sha512 = "8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==";
       };
     };
-    "istanbul-lib-coverage-3.0.0" = {
+    "istanbul-lib-coverage-3.2.0" = {
       name = "istanbul-lib-coverage";
       packageName = "istanbul-lib-coverage";
-      version = "3.0.0";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz";
-        sha512 = "UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==";
+        url = "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz";
+        sha512 = "eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==";
       };
     };
     "istanbul-lib-hook-3.0.0" = {
@@ -4189,22 +4324,22 @@ let
         sha512 = "wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==";
       };
     };
-    "istanbul-lib-source-maps-4.0.0" = {
+    "istanbul-lib-source-maps-4.0.1" = {
       name = "istanbul-lib-source-maps";
       packageName = "istanbul-lib-source-maps";
-      version = "4.0.0";
+      version = "4.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz";
-        sha512 = "c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==";
+        url = "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz";
+        sha512 = "n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==";
       };
     };
-    "istanbul-reports-3.0.2" = {
+    "istanbul-reports-3.0.5" = {
       name = "istanbul-reports";
       packageName = "istanbul-reports";
-      version = "3.0.2";
+      version = "3.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz";
-        sha512 = "9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==";
+        url = "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.5.tgz";
+        sha512 = "5+19PlhnGabNWB7kOFnuxT8H3T/iIyQzIbQMxXsURmmvKg86P2sbkrGOT77VnHw0Qr0gc2XzRaRfMZYYbSQCJQ==";
       };
     };
     "java-properties-1.0.2" = {
@@ -4279,13 +4414,13 @@ let
         sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
       };
     };
-    "json5-2.1.3" = {
+    "json5-2.2.0" = {
       name = "json5";
       packageName = "json5";
-      version = "2.1.3";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz";
-        sha512 = "KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==";
+        url = "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz";
+        sha512 = "f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==";
       };
     };
     "jsonfile-4.0.0" = {
@@ -4315,13 +4450,13 @@ let
         sha1 = "3f4dae4a91fac315f71062f8521cc239f1366280";
       };
     };
-    "just-extend-4.1.0" = {
+    "just-extend-4.2.1" = {
       name = "just-extend";
       packageName = "just-extend";
-      version = "4.1.0";
+      version = "4.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/just-extend/-/just-extend-4.1.0.tgz";
-        sha512 = "ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA==";
+        url = "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz";
+        sha512 = "g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==";
       };
     };
     "kind-of-3.2.2" = {
@@ -4441,13 +4576,13 @@ let
         sha512 = "t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==";
       };
     };
-    "lodash-4.17.20" = {
+    "lodash-4.17.21" = {
       name = "lodash";
       packageName = "lodash";
-      version = "4.17.20";
+      version = "4.17.21";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz";
-        sha512 = "PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==";
+        url = "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz";
+        sha512 = "v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==";
       };
     };
     "lodash._baseclone-4.5.7" = {
@@ -4558,15 +4693,6 @@ let
         sha1 = "d8757b1da807dde24816b0d6a84bea1a76230b23";
       };
     };
-    "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";
-      };
-    };
     "lodash.uniq-4.5.0" = {
       name = "lodash.uniq";
       packageName = "lodash.uniq";
@@ -4657,13 +4783,22 @@ let
         sha512 = "sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==";
       };
     };
-    "macos-release-2.4.1" = {
+    "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==";
+      };
+    };
+    "macos-release-2.5.0" = {
       name = "macos-release";
       packageName = "macos-release";
-      version = "2.4.1";
+      version = "2.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/macos-release/-/macos-release-2.4.1.tgz";
-        sha512 = "H/QHeBIN1fIGJX517pvK8IEK53yQOW7YcEI55oYtgjDdoCQQz7eJS94qt5kNrscReEyuD/JcdFCm2XBEcGOITg==";
+        url = "https://registry.npmjs.org/macos-release/-/macos-release-2.5.0.tgz";
+        sha512 = "EIgv+QZ9r+814gjJj0Bt5vSLJLzswGmSUbUpbi9AIr/fsN2IWFBl2NucV9PAiek+U1STK468tEkxmVYUtuAN3g==";
       };
     };
     "make-dir-1.3.0" = {
@@ -4693,6 +4828,15 @@ let
         sha512 = "g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==";
       };
     };
+    "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==";
+      };
+    };
     "manage-path-2.0.0" = {
       name = "manage-path";
       packageName = "manage-path";
@@ -4729,13 +4873,13 @@ let
         sha1 = "d933ceb9205d82bdcf4886f6742bdc2b4dea146d";
       };
     };
-    "map-obj-4.1.0" = {
+    "map-obj-4.3.0" = {
       name = "map-obj";
       packageName = "map-obj";
-      version = "4.1.0";
+      version = "4.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz";
-        sha512 = "glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==";
+        url = "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz";
+        sha512 = "hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==";
       };
     };
     "map-visit-1.0.0" = {
@@ -4747,13 +4891,13 @@ let
         sha1 = "ecdca8f13144e660f1b5bd41f12f3479d98dfb8f";
       };
     };
-    "marked-0.6.3" = {
+    "marked-0.7.0" = {
       name = "marked";
       packageName = "marked";
-      version = "0.6.3";
+      version = "0.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/marked/-/marked-0.6.3.tgz";
-        sha512 = "Fqa7eq+UaxfMriqzYLayfqAE40WN03jf+zHjT18/uXNuzjq3TY0XTbrAoPeqSJrAmPz11VuUA+kBPYOhHt9oOQ==";
+        url = "https://registry.npmjs.org/marked/-/marked-0.7.0.tgz";
+        sha512 = "c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg==";
       };
     };
     "marked-terminal-3.3.0" = {
@@ -4783,22 +4927,22 @@ let
         sha512 = "qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==";
       };
     };
-    "meow-7.1.1" = {
+    "meow-8.1.2" = {
       name = "meow";
       packageName = "meow";
-      version = "7.1.1";
+      version = "8.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/meow/-/meow-7.1.1.tgz";
-        sha512 = "GWHvA5QOcS412WCo8vwKDlTelGLsCGBVevQB5Kva961rmNfun0PCbv5+xta2kUMFJyR8/oWnn7ddeKdosbAPbA==";
+        url = "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz";
+        sha512 = "r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==";
       };
     };
-    "merge-1.2.1" = {
+    "merge-2.1.1" = {
       name = "merge";
       packageName = "merge";
-      version = "1.2.1";
+      version = "2.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz";
-        sha512 = "VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ==";
+        url = "https://registry.npmjs.org/merge/-/merge-2.1.1.tgz";
+        sha512 = "jz+Cfrg9GWOZbQAnDQ4hlVnQky+341Yk5ru8bZSe6sIDTCIg8n9i/u7hSQGSVOF3C7lH6mGtqjkiT9G4wFLL0w==";
       };
     };
     "merge-descriptors-1.0.1" = {
@@ -4837,13 +4981,13 @@ let
         sha512 = "MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==";
       };
     };
-    "micromatch-4.0.2" = {
+    "micromatch-4.0.4" = {
       name = "micromatch";
       packageName = "micromatch";
-      version = "4.0.2";
+      version = "4.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz";
-        sha512 = "y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==";
+        url = "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz";
+        sha512 = "pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==";
       };
     };
     "mime-1.2.11" = {
@@ -4855,13 +4999,13 @@ let
         sha1 = "58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10";
       };
     };
-    "mime-2.4.6" = {
+    "mime-2.5.2" = {
       name = "mime";
       packageName = "mime";
-      version = "2.4.6";
+      version = "2.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz";
-        sha512 = "RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==";
+        url = "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz";
+        sha512 = "tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==";
       };
     };
     "mime-types-1.0.2" = {
@@ -4963,13 +5107,13 @@ let
         sha512 = "qwfFgY+7EKAAUAdv7VYMZQknI7YJSGesxHyhn6qD52DV8UcSZs5XwCifcZGMVIE4a5fbmhvbotxC0DLQ0oKohQ==";
       };
     };
-    "mocha-junit-reporter-1.23.3" = {
+    "mocha-junit-reporter-1.18.0" = {
       name = "mocha-junit-reporter";
       packageName = "mocha-junit-reporter";
-      version = "1.23.3";
+      version = "1.18.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mocha-junit-reporter/-/mocha-junit-reporter-1.23.3.tgz";
-        sha512 = "ed8LqbRj1RxZfjt/oC9t12sfrWsjZ3gNnbhV1nuj9R/Jb5/P3Xb4duv2eCfCDMYH+fEu0mqca7m4wsiVjsxsvA==";
+        url = "https://registry.npmjs.org/mocha-junit-reporter/-/mocha-junit-reporter-1.18.0.tgz";
+        sha512 = "y3XuqKa2+HRYtg0wYyhW/XsLm2Ps+pqf9HaTAt7+MVUAKFJaNAHOrNseTZo9KCxjfIbxUWwckP5qCDDPUmjSWA==";
       };
     };
     "mocha-multi-reporters-1.1.7" = {
@@ -5026,6 +5170,15 @@ let
         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==";
+      };
+    };
     "mute-stream-0.0.7" = {
       name = "mute-stream";
       packageName = "mute-stream";
@@ -5035,13 +5188,13 @@ let
         sha1 = "3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab";
       };
     };
-    "nan-2.14.1" = {
+    "nan-2.15.0" = {
       name = "nan";
       packageName = "nan";
-      version = "2.14.1";
+      version = "2.15.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz";
-        sha512 = "isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==";
+        url = "https://registry.npmjs.org/nan/-/nan-2.15.0.tgz";
+        sha512 = "8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==";
       };
     };
     "nanomatch-1.2.13" = {
@@ -5089,13 +5242,13 @@ let
         sha512 = "Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==";
       };
     };
-    "node-emoji-1.10.0" = {
+    "node-emoji-1.11.0" = {
       name = "node-emoji";
       packageName = "node-emoji";
-      version = "1.10.0";
+      version = "1.11.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-emoji/-/node-emoji-1.10.0.tgz";
-        sha512 = "Yt3384If5H6BYGVHiHwTL+99OzJKHhgp82S8/dktEK73T26BazdgZ4JZh92xSVtGNJvz9UbXdNAc5hcrXV42vw==";
+        url = "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz";
+        sha512 = "wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==";
       };
     };
     "node-environment-flags-1.0.5" = {
@@ -5107,13 +5260,13 @@ let
         sha512 = "VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ==";
       };
     };
-    "node-fetch-2.6.1" = {
+    "node-fetch-2.6.5" = {
       name = "node-fetch";
       packageName = "node-fetch";
-      version = "2.6.1";
+      version = "2.6.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz";
-        sha512 = "V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==";
+        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.5.tgz";
+        sha512 = "mmlIVHJEu5rnIxgEgez6b9GgWXbkZj5YZ7fx+2r94a2E+Uirsp6HsPTPlomfdHtpt/B0cdKviwkoaM6pyvUOpQ==";
       };
     };
     "node-modules-regexp-1.0.0" = {
@@ -5134,13 +5287,13 @@ let
         sha512 = "RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==";
       };
     };
-    "node-releases-1.1.61" = {
+    "node-releases-2.0.0" = {
       name = "node-releases";
       packageName = "node-releases";
-      version = "1.1.61";
+      version = "2.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-releases/-/node-releases-1.1.61.tgz";
-        sha512 = "DD5vebQLg8jLCOzwupn954fbIiZht05DAZs0k2u8NStSe6h9XdsuIQL8hSRKYiU8WUQRznmSDrKGbv3ObOmC7g==";
+        url = "https://registry.npmjs.org/node-releases/-/node-releases-2.0.0.tgz";
+        sha512 = "aA87l0flFYMzCHpTM3DERFSYxc6lv/BltdbRTOMZuxZ0cwZCD3mejE5n9vLhSJCN++/eOqr77G1IO5uXxlQYWA==";
       };
     };
     "node-uuid-1.4.8" = {
@@ -5179,6 +5332,15 @@ let
         sha512 = "/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==";
       };
     };
+    "normalize-package-data-3.0.3" = {
+      name = "normalize-package-data";
+      packageName = "normalize-package-data";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz";
+        sha512 = "p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==";
+      };
+    };
     "normalize-path-2.1.1" = {
       name = "normalize-path";
       packageName = "normalize-path";
@@ -5197,22 +5359,22 @@ let
         sha512 = "6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==";
       };
     };
-    "normalize-url-4.5.0" = {
+    "normalize-url-4.5.1" = {
       name = "normalize-url";
       packageName = "normalize-url";
-      version = "4.5.0";
+      version = "4.5.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz";
-        sha512 = "2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==";
+        url = "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz";
+        sha512 = "9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==";
       };
     };
-    "npm-6.14.8" = {
+    "npm-6.14.15" = {
       name = "npm";
       packageName = "npm";
-      version = "6.14.8";
+      version = "6.14.15";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm/-/npm-6.14.8.tgz";
-        sha512 = "HBZVBMYs5blsj94GTeQZel7s9odVuuSUHy1+AlZh7rPVux1os2ashvEGLy/STNK7vUjbrCg5Kq9/GXisJgdf6A==";
+        url = "https://registry.npmjs.org/npm/-/npm-6.14.15.tgz";
+        sha512 = "dkcQc4n+DiJAMYG2haNAMyJbmuvevjXz+WC9dCUzodw8EovwTIc6CATSsTEplCY6c0jG4OshxFGFJsrnKJguWA==";
       };
     };
     "npm-run-path-2.0.2" = {
@@ -5269,13 +5431,13 @@ let
         sha1 = "7e7d858b781bd7c991a41ba975ed3812754e998c";
       };
     };
-    "object-inspect-1.8.0" = {
+    "object-inspect-1.11.0" = {
       name = "object-inspect";
       packageName = "object-inspect";
-      version = "1.8.0";
+      version = "1.11.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz";
-        sha512 = "jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==";
+        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz";
+        sha512 = "jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==";
       };
     };
     "object-keys-1.1.1" = {
@@ -5305,13 +5467,22 @@ let
         sha512 = "exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==";
       };
     };
-    "object.getownpropertydescriptors-2.1.0" = {
+    "object.assign-4.1.2" = {
+      name = "object.assign";
+      packageName = "object.assign";
+      version = "4.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz";
+        sha512 = "ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==";
+      };
+    };
+    "object.getownpropertydescriptors-2.1.3" = {
       name = "object.getownpropertydescriptors";
       packageName = "object.getownpropertydescriptors";
-      version = "2.1.0";
+      version = "2.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz";
-        sha512 = "Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==";
+        url = "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz";
+        sha512 = "VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw==";
       };
     };
     "object.pick-1.3.0" = {
@@ -5521,13 +5692,13 @@ let
         sha512 = "2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==";
       };
     };
-    "p-retry-4.2.0" = {
+    "p-retry-4.6.1" = {
       name = "p-retry";
       packageName = "p-retry";
-      version = "4.2.0";
+      version = "4.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/p-retry/-/p-retry-4.2.0.tgz";
-        sha512 = "jPH38/MRh263KKcq0wBNOGFJbm+U6784RilTmHjB/HM9kH9V8WlCpVUcdOmip9cjXOh6MxZ5yk1z2SjDUJfWmA==";
+        url = "https://registry.npmjs.org/p-retry/-/p-retry-4.6.1.tgz";
+        sha512 = "e2xXGNhZOZ0lfgR9kL34iGlU8N/KO0xZnQxVEwdeOvpqNDQfdnxIYizvWtK8RglUa3bGqI8g0R/BdfzLMxRkiA==";
       };
     };
     "p-try-1.0.0" = {
@@ -5593,13 +5764,13 @@ let
         sha1 = "be35f5425be1f7f6c747184f98a788cb99477ee0";
       };
     };
-    "parse-json-5.1.0" = {
+    "parse-json-5.2.0" = {
       name = "parse-json";
       packageName = "parse-json";
-      version = "5.1.0";
+      version = "5.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz";
-        sha512 = "+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==";
+        url = "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz";
+        sha512 = "ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==";
       };
     };
     "parse-passwd-1.0.0" = {
@@ -5683,13 +5854,13 @@ let
         sha512 = "ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==";
       };
     };
-    "path-parse-1.0.6" = {
+    "path-parse-1.0.7" = {
       name = "path-parse";
       packageName = "path-parse";
-      version = "1.0.6";
+      version = "1.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz";
-        sha512 = "GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==";
+        url = "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz";
+        sha512 = "LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==";
       };
     };
     "path-to-regexp-1.8.0" = {
@@ -5719,22 +5890,31 @@ let
         sha512 = "gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==";
       };
     };
-    "pathval-1.1.0" = {
+    "pathval-1.1.1" = {
       name = "pathval";
       packageName = "pathval";
-      version = "1.1.0";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz";
+        sha512 = "Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==";
+      };
+    };
+    "picocolors-1.0.0" = {
+      name = "picocolors";
+      packageName = "picocolors";
+      version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz";
-        sha1 = "b942e6d4bde653005ef6b71361def8727d0645e0";
+        url = "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz";
+        sha512 = "1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==";
       };
     };
-    "picomatch-2.2.2" = {
+    "picomatch-2.3.0" = {
       name = "picomatch";
       packageName = "picomatch";
-      version = "2.2.2";
+      version = "2.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz";
-        sha512 = "q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==";
+        url = "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz";
+        sha512 = "lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==";
       };
     };
     "pify-3.0.0" = {
@@ -5827,13 +6007,13 @@ let
         sha512 = "1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==";
       };
     };
-    "proxyquire-2.1.3" = {
+    "proxyquire-2.1.0" = {
       name = "proxyquire";
       packageName = "proxyquire";
-      version = "2.1.3";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/proxyquire/-/proxyquire-2.1.3.tgz";
-        sha512 = "BQWfCqYM+QINd+yawJz23tbBM40VIGXOdDw3X344KcclI/gtBbdWF6SlQ4nK/bYhF9d27KYug9WzljHC6B9Ysg==";
+        url = "https://registry.npmjs.org/proxyquire/-/proxyquire-2.1.0.tgz";
+        sha512 = "kptdFArCfGRtQFv3Qwjr10lwbEV0TBJYvfqzhwucyfEXqVgmnAkyEw/S3FYzR5HI9i5QOq4rcqQjZ6AlknlCDQ==";
       };
     };
     "pseudomap-1.0.2" = {
@@ -5899,6 +6079,15 @@ let
         sha1 = "19b57ff24dc2a99ce1f8bdf6afcda59f8ef61f88";
       };
     };
+    "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-4.0.1" = {
       name = "quick-lru";
       packageName = "quick-lru";
@@ -5944,15 +6133,6 @@ let
         sha512 = "6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==";
       };
     };
-    "read-pkg-up-6.0.0" = {
-      name = "read-pkg-up";
-      packageName = "read-pkg-up";
-      version = "6.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-6.0.0.tgz";
-        sha512 = "odtTvLl+EXo1eTsMnoUHRmg/XmXdTkwXVxy4VFE9Kp6cCq7b3l7QMdBndND3eAFzrbSAXC/WCUOQQ9rLjifKZw==";
-      };
-    };
     "read-pkg-up-7.0.1" = {
       name = "read-pkg-up";
       packageName = "read-pkg-up";
@@ -5980,6 +6160,15 @@ let
         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-2.2.1" = {
       name = "readdirp";
       packageName = "readdirp";
@@ -6007,31 +6196,31 @@ let
         sha1 = "8984b5815d99cb220469c99eeeffe38913e6cc0b";
       };
     };
-    "regenerate-1.4.1" = {
+    "regenerate-1.4.2" = {
       name = "regenerate";
       packageName = "regenerate";
-      version = "1.4.1";
+      version = "1.4.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/regenerate/-/regenerate-1.4.1.tgz";
-        sha512 = "j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A==";
+        url = "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz";
+        sha512 = "zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==";
       };
     };
-    "regenerate-unicode-properties-8.2.0" = {
+    "regenerate-unicode-properties-9.0.0" = {
       name = "regenerate-unicode-properties";
       packageName = "regenerate-unicode-properties";
-      version = "8.2.0";
+      version = "9.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz";
-        sha512 = "F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==";
+        url = "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-9.0.0.tgz";
+        sha512 = "3E12UeNSPfjrgwjkR81m5J7Aw/T55Tu7nUyZVQYCKEOs+2dkxEY+DpPtZzO4YruuiPb7NkYLVcyJC4+zCbk5pA==";
       };
     };
-    "regenerator-runtime-0.13.7" = {
+    "regenerator-runtime-0.13.9" = {
       name = "regenerator-runtime";
       packageName = "regenerator-runtime";
-      version = "0.13.7";
+      version = "0.13.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz";
-        sha512 = "a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==";
+        url = "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz";
+        sha512 = "p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==";
       };
     };
     "regenerator-transform-0.14.5" = {
@@ -6052,13 +6241,13 @@ let
         sha512 = "J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==";
       };
     };
-    "regexpu-core-4.7.0" = {
+    "regexpu-core-4.8.0" = {
       name = "regexpu-core";
       packageName = "regexpu-core";
-      version = "4.7.0";
+      version = "4.8.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz";
-        sha512 = "TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==";
+        url = "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.8.0.tgz";
+        sha512 = "1F6bYsoYiz6is+oz70NWur2Vlh9KWtswuRuzJOfeYUrfPX2o8n74AnUVaOGDbUqVGO9fNHu48/pjJO4sNVwsOg==";
       };
     };
     "registry-auth-token-3.4.0" = {
@@ -6070,13 +6259,13 @@ let
         sha512 = "4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==";
       };
     };
-    "registry-auth-token-4.2.0" = {
+    "registry-auth-token-4.2.1" = {
       name = "registry-auth-token";
       packageName = "registry-auth-token";
-      version = "4.2.0";
+      version = "4.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.0.tgz";
-        sha512 = "P+lWzPrsgfN+UEpDS3U8AQKg/UjZX6mQSJueZj3EK+vNESoqBSpBUD3gmu4sF9lOsjXWjF11dQKUqemf3veq1w==";
+        url = "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz";
+        sha512 = "6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==";
       };
     };
     "registry-url-3.1.0" = {
@@ -6097,13 +6286,13 @@ let
         sha512 = "OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==";
       };
     };
-    "regjsparser-0.6.4" = {
+    "regjsparser-0.7.0" = {
       name = "regjsparser";
       packageName = "regjsparser";
-      version = "0.6.4";
+      version = "0.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz";
-        sha512 = "64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==";
+        url = "https://registry.npmjs.org/regjsparser/-/regjsparser-0.7.0.tgz";
+        sha512 = "A4pcaORqmNMDVwUjWoTzuhwMGpP+NykpfqAsEgI1FSH/EzC7lrN5TMd+kN8YCovX+jMpu8eaqXgXPCa0g8FQNQ==";
       };
     };
     "release-zalgo-1.0.0" = {
@@ -6124,13 +6313,13 @@ let
         sha1 = "c24bce2a283adad5bc3f58e0d48249b92379d8ef";
       };
     };
-    "repeat-element-1.1.3" = {
+    "repeat-element-1.1.4" = {
       name = "repeat-element";
       packageName = "repeat-element";
-      version = "1.1.3";
+      version = "1.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz";
-        sha512 = "ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==";
+        url = "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz";
+        sha512 = "LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==";
       };
     };
     "repeat-string-1.6.1" = {
@@ -6178,13 +6367,22 @@ let
         sha512 = "NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==";
       };
     };
-    "resolve-1.17.0" = {
+    "resolve-1.20.0" = {
       name = "resolve";
       packageName = "resolve";
-      version = "1.17.0";
+      version = "1.20.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz";
-        sha512 = "ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==";
+        url = "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz";
+        sha512 = "wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==";
+      };
+    };
+    "resolve-1.8.1" = {
+      name = "resolve";
+      packageName = "resolve";
+      version = "1.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz";
+        sha512 = "AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==";
       };
     };
     "resolve-dir-1.0.1" = {
@@ -6196,15 +6394,6 @@ let
         sha1 = "79a40644c362be82f26effe739c9bb5382046f43";
       };
     };
-    "resolve-from-3.0.0" = {
-      name = "resolve-from";
-      packageName = "resolve-from";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz";
-        sha1 = "b22c7af7d9d6881bc8b6e653335eebcb0a188748";
-      };
-    };
     "resolve-from-4.0.0" = {
       name = "resolve-from";
       packageName = "resolve-from";
@@ -6268,13 +6457,13 @@ let
         sha512 = "TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==";
       };
     };
-    "retry-0.12.0" = {
+    "retry-0.13.1" = {
       name = "retry";
       packageName = "retry";
-      version = "0.12.0";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz";
-        sha1 = "1b42a6266a21f07421d1b0b54b7dc167b01c013b";
+        url = "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz";
+        sha512 = "XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==";
       };
     };
     "reusify-1.0.4" = {
@@ -6313,22 +6502,22 @@ let
         sha512 = "tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==";
       };
     };
-    "run-parallel-1.1.9" = {
+    "run-parallel-1.2.0" = {
       name = "run-parallel";
       packageName = "run-parallel";
-      version = "1.1.9";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz";
-        sha512 = "DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==";
+        url = "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz";
+        sha512 = "5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==";
       };
     };
-    "rxjs-6.6.3" = {
+    "rxjs-6.6.7" = {
       name = "rxjs";
       packageName = "rxjs";
-      version = "6.6.3";
+      version = "6.6.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz";
-        sha512 = "trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==";
+        url = "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz";
+        sha512 = "hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==";
       };
     };
     "safe-buffer-5.1.2" = {
@@ -6358,13 +6547,13 @@ let
         sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
       };
     };
-    "semantic-release-15.13.18" = {
+    "semantic-release-15.14.0" = {
       name = "semantic-release";
       packageName = "semantic-release";
-      version = "15.13.18";
+      version = "15.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/semantic-release/-/semantic-release-15.13.18.tgz";
-        sha512 = "JtfdrhF1zRm91nJH/Rg3taftbWGwktJqqrJJdbmZGKYx63cfC4PoaS0jxRifGJUdmmgW/Kxz8f5bhtB+p1bu8A==";
+        url = "https://registry.npmjs.org/semantic-release/-/semantic-release-15.14.0.tgz";
+        sha512 = "Cn43W35AOLY0RMcDbtwhJODJmWg6YCs1+R5jRQsTmmkEGzkV4B2F/QXkjVZpl4UbH91r93GGH0xhoq9kh7I5PA==";
       };
     };
     "semver-5.7.1" = {
@@ -6394,6 +6583,15 @@ let
         sha512 = "+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==";
       };
     };
+    "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==";
+      };
+    };
     "semver-diff-2.1.0" = {
       name = "semver-diff";
       packageName = "semver-diff";
@@ -6466,13 +6664,22 @@ let
         sha512 = "7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==";
       };
     };
-    "signal-exit-3.0.3" = {
+    "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.5" = {
       name = "signal-exit";
       packageName = "signal-exit";
-      version = "3.0.3";
+      version = "3.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz";
-        sha512 = "VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==";
+        url = "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz";
+        sha512 = "KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==";
       };
     };
     "signale-1.4.0" = {
@@ -6484,13 +6691,13 @@ let
         sha512 = "iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==";
       };
     };
-    "sinon-6.3.5" = {
+    "sinon-6.3.4" = {
       name = "sinon";
       packageName = "sinon";
-      version = "6.3.5";
+      version = "6.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sinon/-/sinon-6.3.5.tgz";
-        sha512 = "xgoZ2gKjyVRcF08RrIQc+srnSyY1JDJtxu3Nsz07j1ffjgXoY6uPLf/qja6nDBZgzYYEovVkFryw2+KiZz11xQ==";
+        url = "https://registry.npmjs.org/sinon/-/sinon-6.3.4.tgz";
+        sha512 = "NIaR56Z1mefuRBXYrf4otqBxkWiKveX+fvqs3HzFq2b07HcgpkMgIwmQM/owNjNFAHkx0kJXW+Q0mDthiuslXw==";
       };
     };
     "slash-2.0.0" = {
@@ -6574,22 +6781,22 @@ let
         sha512 = "Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==";
       };
     };
-    "source-map-support-0.5.19" = {
+    "source-map-support-0.5.20" = {
       name = "source-map-support";
       packageName = "source-map-support";
-      version = "0.5.19";
+      version = "0.5.20";
       src = fetchurl {
-        url = "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz";
-        sha512 = "Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==";
+        url = "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz";
+        sha512 = "n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==";
       };
     };
-    "source-map-url-0.4.0" = {
+    "source-map-url-0.4.1" = {
       name = "source-map-url";
       packageName = "source-map-url";
-      version = "0.4.0";
+      version = "0.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz";
-        sha1 = "3e935d7ddd73631b97659956d55128e87b5084a3";
+        url = "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz";
+        sha512 = "cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==";
       };
     };
     "spawn-command-0.0.2" = {
@@ -6655,13 +6862,13 @@ let
         sha512 = "cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==";
       };
     };
-    "spdx-license-ids-3.0.5" = {
+    "spdx-license-ids-3.0.10" = {
       name = "spdx-license-ids";
       packageName = "spdx-license-ids";
-      version = "3.0.5";
+      version = "3.0.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz";
-        sha512 = "J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==";
+        url = "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz";
+        sha512 = "oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA==";
       };
     };
     "split-0.2.10" = {
@@ -6700,13 +6907,13 @@ let
         sha1 = "52e2e221d88c75f9a73f90556e263ff96772b314";
       };
     };
-    "split2-2.2.0" = {
+    "split2-3.2.2" = {
       name = "split2";
       packageName = "split2";
-      version = "2.2.0";
+      version = "3.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz";
-        sha512 = "RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==";
+        url = "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz";
+        sha512 = "9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==";
       };
     };
     "sprintf-js-1.0.3" = {
@@ -6772,31 +6979,31 @@ let
         sha512 = "vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==";
       };
     };
-    "string-width-4.2.0" = {
+    "string-width-4.2.3" = {
       name = "string-width";
       packageName = "string-width";
-      version = "4.2.0";
+      version = "4.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz";
-        sha512 = "zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==";
+        url = "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz";
+        sha512 = "wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==";
       };
     };
-    "string.prototype.trimend-1.0.1" = {
+    "string.prototype.trimend-1.0.4" = {
       name = "string.prototype.trimend";
       packageName = "string.prototype.trimend";
-      version = "1.0.1";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz";
-        sha512 = "LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==";
+        url = "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz";
+        sha512 = "y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==";
       };
     };
-    "string.prototype.trimstart-1.0.1" = {
+    "string.prototype.trimstart-1.0.4" = {
       name = "string.prototype.trimstart";
       packageName = "string.prototype.trimstart";
-      version = "1.0.1";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz";
-        sha512 = "XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==";
+        url = "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz";
+        sha512 = "jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==";
       };
     };
     "string_decoder-0.10.31" = {
@@ -6853,13 +7060,13 @@ let
         sha512 = "DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==";
       };
     };
-    "strip-ansi-6.0.0" = {
+    "strip-ansi-6.0.1" = {
       name = "strip-ansi";
       packageName = "strip-ansi";
-      version = "6.0.0";
+      version = "6.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz";
-        sha512 = "AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==";
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz";
+        sha512 = "Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==";
       };
     };
     "strip-bom-3.0.0" = {
@@ -7042,13 +7249,13 @@ let
         sha512 = "/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==";
       };
     };
-    "through2-3.0.2" = {
+    "through2-4.0.2" = {
       name = "through2";
       packageName = "through2";
-      version = "3.0.2";
+      version = "4.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz";
-        sha512 = "enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==";
+        url = "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz";
+        sha512 = "iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==";
       };
     };
     "timed-out-4.0.1" = {
@@ -7132,6 +7339,15 @@ let
         sha512 = "tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==";
       };
     };
+    "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";
+        sha1 = "8184fd347dac9cdc185992f3a6622e14b9d9ab6a";
+      };
+    };
     "traverse-0.6.6" = {
       name = "traverse";
       packageName = "traverse";
@@ -7141,31 +7357,40 @@ let
         sha1 = "cbdf560fd7b9af632502fed40f918c157ea97137";
       };
     };
-    "trim-newlines-3.0.0" = {
+    "trim-newlines-3.0.1" = {
       name = "trim-newlines";
       packageName = "trim-newlines";
-      version = "3.0.0";
+      version = "3.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz";
-        sha512 = "C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==";
+        url = "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz";
+        sha512 = "c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==";
       };
     };
-    "trim-off-newlines-1.0.1" = {
-      name = "trim-off-newlines";
-      packageName = "trim-off-newlines";
-      version = "1.0.1";
+    "ts-node-9.1.1" = {
+      name = "ts-node";
+      packageName = "ts-node";
+      version = "9.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz";
-        sha1 = "9f9ba9d9efa8764c387698bcbfeb2c848f11adb3";
+        url = "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz";
+        sha512 = "hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==";
       };
     };
-    "tslib-1.13.0" = {
+    "tslib-1.14.1" = {
       name = "tslib";
       packageName = "tslib";
-      version = "1.13.0";
+      version = "1.14.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz";
-        sha512 = "i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==";
+        url = "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz";
+        sha512 = "Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==";
+      };
+    };
+    "tslib-2.3.1" = {
+      name = "tslib";
+      packageName = "tslib";
+      version = "2.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz";
+        sha512 = "77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==";
       };
     };
     "tunnel-agent-0.4.3" = {
@@ -7186,13 +7411,13 @@ let
         sha512 = "0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==";
       };
     };
-    "type-fest-0.13.1" = {
+    "type-fest-0.18.1" = {
       name = "type-fest";
       packageName = "type-fest";
-      version = "0.13.1";
+      version = "0.18.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz";
-        sha512 = "34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==";
+        url = "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz";
+        sha512 = "OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==";
       };
     };
     "type-fest-0.3.1" = {
@@ -7204,15 +7429,6 @@ let
         sha512 = "cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==";
       };
     };
-    "type-fest-0.5.2" = {
-      name = "type-fest";
-      packageName = "type-fest";
-      version = "0.5.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/type-fest/-/type-fest-0.5.2.tgz";
-        sha512 = "DWkS49EQKVX//Tbupb9TFa19c7+MK1XmzkrZUR8TAktmE/DizXoaoJV6TZ/tSIPXipqNiRI6CyAe7x69Jb6RSw==";
-      };
-    };
     "type-fest-0.6.0" = {
       name = "type-fest";
       packageName = "type-fest";
@@ -7240,58 +7456,76 @@ let
         sha512 = "zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==";
       };
     };
-    "uglify-js-3.10.4" = {
+    "typescript-4.4.4" = {
+      name = "typescript";
+      packageName = "typescript";
+      version = "4.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz";
+        sha512 = "DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==";
+      };
+    };
+    "uglify-js-3.14.2" = {
       name = "uglify-js";
       packageName = "uglify-js";
-      version = "3.10.4";
+      version = "3.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.10.4.tgz";
-        sha512 = "kBFT3U4Dcj4/pJ52vfjCSfyLyvG9VYYuGYPmrPvAxRw/i7xHiT4VvCev+uiEMcEEiu6UNB6KgWmGtSUYIWScbw==";
+        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.2.tgz";
+        sha512 = "rtPMlmcO4agTUfz10CbgJ1k6UAoXM2gWb3GoMPPZB/+/Ackf8lNWk11K4rYi2D0apgoFRLtQOZhb+/iGNJq26A==";
       };
     };
-    "undefsafe-2.0.3" = {
+    "unbox-primitive-1.0.1" = {
+      name = "unbox-primitive";
+      packageName = "unbox-primitive";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz";
+        sha512 = "tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==";
+      };
+    };
+    "undefsafe-2.0.5" = {
       name = "undefsafe";
       packageName = "undefsafe";
-      version = "2.0.3";
+      version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.3.tgz";
-        sha512 = "nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A==";
+        url = "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz";
+        sha512 = "WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==";
       };
     };
-    "unicode-canonical-property-names-ecmascript-1.0.4" = {
+    "unicode-canonical-property-names-ecmascript-2.0.0" = {
       name = "unicode-canonical-property-names-ecmascript";
       packageName = "unicode-canonical-property-names-ecmascript";
-      version = "1.0.4";
+      version = "2.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz";
-        sha512 = "jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==";
+        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-1.0.4" = {
+    "unicode-match-property-ecmascript-2.0.0" = {
       name = "unicode-match-property-ecmascript";
       packageName = "unicode-match-property-ecmascript";
-      version = "1.0.4";
+      version = "2.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz";
-        sha512 = "L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==";
+        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-1.2.0" = {
+    "unicode-match-property-value-ecmascript-2.0.0" = {
       name = "unicode-match-property-value-ecmascript";
       packageName = "unicode-match-property-value-ecmascript";
-      version = "1.2.0";
+      version = "2.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz";
-        sha512 = "wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==";
+        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-1.1.0" = {
+    "unicode-property-aliases-ecmascript-2.0.0" = {
       name = "unicode-property-aliases-ecmascript";
       packageName = "unicode-property-aliases-ecmascript";
-      version = "1.1.0";
+      version = "2.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz";
-        sha512 = "PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==";
+        url = "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz";
+        sha512 = "5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==";
       };
     };
     "union-value-1.0.1" = {
@@ -7429,15 +7663,6 @@ let
         sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf";
       };
     };
-    "uuid-3.3.2" = {
-      name = "uuid";
-      packageName = "uuid";
-      version = "3.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz";
-        sha512 = "yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==";
-      };
-    };
     "uuid-3.4.0" = {
       name = "uuid";
       packageName = "uuid";
@@ -7456,6 +7681,24 @@ let
         sha512 = "DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==";
       };
     };
+    "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";
+        sha1 = "24534275e2a7bc6be7bc86611cc16ae0a5654871";
+      };
+    };
+    "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";
+        sha1 = "966454e8765462e37644d3626f6742ce8b70965d";
+      };
+    };
     "which-1.3.1" = {
       name = "which";
       packageName = "which";
@@ -7474,6 +7717,15 @@ let
         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==";
+      };
+    };
     "which-module-2.0.0" = {
       name = "which-module";
       packageName = "which-module";
@@ -7600,13 +7852,13 @@ let
         sha512 = "LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==";
       };
     };
-    "y18n-4.0.0" = {
+    "y18n-4.0.3" = {
       name = "y18n";
       packageName = "y18n";
-      version = "4.0.0";
+      version = "4.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz";
-        sha512 = "r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==";
+        url = "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz";
+        sha512 = "JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==";
       };
     };
     "yallist-2.1.2" = {
@@ -7618,13 +7870,22 @@ let
         sha1 = "1c11f9218f076089a47dd512f93c6699a6a81d52";
       };
     };
-    "yaml-1.10.0" = {
+    "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.0";
+      version = "1.10.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz";
-        sha512 = "yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==";
+        url = "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz";
+        sha512 = "r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==";
       };
     };
     "yargs-12.0.5" = {
@@ -7681,6 +7942,15 @@ let
         sha512 = "o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==";
       };
     };
+    "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==";
+      };
+    };
     "yargs-unparser-1.5.0" = {
       name = "yargs-unparser";
       packageName = "yargs-unparser";
@@ -7690,78 +7960,87 @@ let
         sha512 = "HK25qidFTCVuj/D1VfNiEndpLIeJN78aqgR23nL3y4N0U/91cOAzqfHlF8n2BvoNDcZmJKin3ddNSvOxSr8flw==";
       };
     };
+    "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==";
+      };
+    };
   };
 in
 {
   commitizen = nodeEnv.buildNodePackage {
     name = "commitizen";
     packageName = "commitizen";
-    version = "4.2.1";
+    version = "4.2.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/commitizen/-/commitizen-4.2.1.tgz";
-      sha512 = "nZsp8IThkDu7C+93BFD/mLShb9Gd6Wsaf90tpKE3x/6u5y/Q52kzanIJpGr0qvIsJ5bCMpgKtr3Lbu3miEJfaA==";
+      url = "https://registry.npmjs.org/commitizen/-/commitizen-4.2.4.tgz";
+      sha512 = "LlZChbDzg3Ir3O2S7jSo/cgWp5/QwylQVr59K4xayVq8S4/RdKzSyJkghAiZZHfhh5t4pxunUoyeg0ml1q/7aw==";
     };
     dependencies = [
-      sources."@babel/cli-7.11.6"
-      sources."@babel/code-frame-7.10.4"
-      (sources."@babel/compat-data-7.11.0" // {
+      (sources."@babel/cli-7.11.6" // {
         dependencies = [
-          sources."semver-5.7.1"
+          sources."source-map-0.5.7"
         ];
       })
+      sources."@babel/code-frame-7.15.8"
+      sources."@babel/compat-data-7.15.0"
       (sources."@babel/core-7.11.6" // {
         dependencies = [
-          sources."debug-4.2.0"
+          sources."debug-4.3.2"
           sources."ms-2.1.2"
           sources."semver-5.7.1"
+          sources."source-map-0.5.7"
         ];
       })
-      sources."@babel/generator-7.11.6"
-      sources."@babel/helper-annotate-as-pure-7.10.4"
-      sources."@babel/helper-builder-binary-assignment-operator-visitor-7.10.4"
-      (sources."@babel/helper-compilation-targets-7.10.4" // {
+      (sources."@babel/generator-7.15.8" // {
         dependencies = [
-          sources."semver-5.7.1"
+          sources."source-map-0.5.7"
         ];
       })
-      sources."@babel/helper-create-class-features-plugin-7.10.5"
-      sources."@babel/helper-create-regexp-features-plugin-7.10.4"
-      sources."@babel/helper-define-map-7.10.5"
-      sources."@babel/helper-explode-assignable-expression-7.11.4"
-      sources."@babel/helper-function-name-7.10.4"
-      sources."@babel/helper-get-function-arity-7.10.4"
-      sources."@babel/helper-hoist-variables-7.10.4"
-      sources."@babel/helper-member-expression-to-functions-7.11.0"
-      sources."@babel/helper-module-imports-7.10.4"
-      sources."@babel/helper-module-transforms-7.11.0"
-      sources."@babel/helper-optimise-call-expression-7.10.4"
-      sources."@babel/helper-plugin-utils-7.10.4"
-      sources."@babel/helper-regex-7.10.5"
-      sources."@babel/helper-remap-async-to-generator-7.11.4"
-      sources."@babel/helper-replace-supers-7.10.4"
-      sources."@babel/helper-simple-access-7.10.4"
-      sources."@babel/helper-skip-transparent-expression-wrappers-7.11.0"
-      sources."@babel/helper-split-export-declaration-7.11.0"
-      sources."@babel/helper-validator-identifier-7.10.4"
-      sources."@babel/helper-wrap-function-7.10.4"
-      sources."@babel/helpers-7.10.4"
-      sources."@babel/highlight-7.10.4"
-      sources."@babel/parser-7.11.5"
-      sources."@babel/plugin-proposal-async-generator-functions-7.10.5"
-      sources."@babel/plugin-proposal-class-properties-7.10.4"
-      sources."@babel/plugin-proposal-dynamic-import-7.10.4"
-      sources."@babel/plugin-proposal-export-namespace-from-7.10.4"
-      sources."@babel/plugin-proposal-json-strings-7.10.4"
-      sources."@babel/plugin-proposal-logical-assignment-operators-7.11.0"
-      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.10.4"
-      sources."@babel/plugin-proposal-numeric-separator-7.10.4"
-      sources."@babel/plugin-proposal-object-rest-spread-7.9.0"
-      sources."@babel/plugin-proposal-optional-catch-binding-7.10.4"
-      sources."@babel/plugin-proposal-optional-chaining-7.11.0"
-      sources."@babel/plugin-proposal-private-methods-7.10.4"
-      sources."@babel/plugin-proposal-unicode-property-regex-7.10.4"
+      sources."@babel/helper-annotate-as-pure-7.15.4"
+      sources."@babel/helper-builder-binary-assignment-operator-visitor-7.15.4"
+      sources."@babel/helper-compilation-targets-7.15.4"
+      sources."@babel/helper-create-class-features-plugin-7.15.4"
+      sources."@babel/helper-create-regexp-features-plugin-7.14.5"
+      sources."@babel/helper-explode-assignable-expression-7.15.4"
+      sources."@babel/helper-function-name-7.15.4"
+      sources."@babel/helper-get-function-arity-7.15.4"
+      sources."@babel/helper-hoist-variables-7.15.4"
+      sources."@babel/helper-member-expression-to-functions-7.15.4"
+      sources."@babel/helper-module-imports-7.15.4"
+      sources."@babel/helper-module-transforms-7.15.8"
+      sources."@babel/helper-optimise-call-expression-7.15.4"
+      sources."@babel/helper-plugin-utils-7.14.5"
+      sources."@babel/helper-remap-async-to-generator-7.15.4"
+      sources."@babel/helper-replace-supers-7.15.4"
+      sources."@babel/helper-simple-access-7.15.4"
+      sources."@babel/helper-skip-transparent-expression-wrappers-7.15.4"
+      sources."@babel/helper-split-export-declaration-7.15.4"
+      sources."@babel/helper-validator-identifier-7.15.7"
+      sources."@babel/helper-validator-option-7.14.5"
+      sources."@babel/helper-wrap-function-7.15.4"
+      sources."@babel/helpers-7.15.4"
+      sources."@babel/highlight-7.14.5"
+      sources."@babel/parser-7.15.8"
+      sources."@babel/plugin-proposal-async-generator-functions-7.15.8"
+      sources."@babel/plugin-proposal-class-properties-7.14.5"
+      sources."@babel/plugin-proposal-dynamic-import-7.14.5"
+      sources."@babel/plugin-proposal-export-namespace-from-7.14.5"
+      sources."@babel/plugin-proposal-json-strings-7.14.5"
+      sources."@babel/plugin-proposal-logical-assignment-operators-7.14.5"
+      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.14.5"
+      sources."@babel/plugin-proposal-numeric-separator-7.14.5"
+      sources."@babel/plugin-proposal-object-rest-spread-7.11.0"
+      sources."@babel/plugin-proposal-optional-catch-binding-7.14.5"
+      sources."@babel/plugin-proposal-optional-chaining-7.14.5"
+      sources."@babel/plugin-proposal-private-methods-7.14.5"
+      sources."@babel/plugin-proposal-unicode-property-regex-7.14.5"
       sources."@babel/plugin-syntax-async-generators-7.8.4"
-      sources."@babel/plugin-syntax-class-properties-7.10.4"
+      sources."@babel/plugin-syntax-class-properties-7.12.13"
       sources."@babel/plugin-syntax-dynamic-import-7.8.3"
       sources."@babel/plugin-syntax-export-namespace-from-7.8.3"
       sources."@babel/plugin-syntax-json-strings-7.8.3"
@@ -7771,69 +8050,78 @@ in
       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-top-level-await-7.10.4"
-      sources."@babel/plugin-transform-arrow-functions-7.10.4"
-      sources."@babel/plugin-transform-async-to-generator-7.10.4"
-      sources."@babel/plugin-transform-block-scoped-functions-7.10.4"
-      sources."@babel/plugin-transform-block-scoping-7.11.1"
-      sources."@babel/plugin-transform-classes-7.10.4"
-      sources."@babel/plugin-transform-computed-properties-7.10.4"
-      sources."@babel/plugin-transform-destructuring-7.10.4"
-      sources."@babel/plugin-transform-dotall-regex-7.10.4"
-      sources."@babel/plugin-transform-duplicate-keys-7.10.4"
-      sources."@babel/plugin-transform-exponentiation-operator-7.10.4"
-      sources."@babel/plugin-transform-for-of-7.10.4"
-      sources."@babel/plugin-transform-function-name-7.10.4"
-      sources."@babel/plugin-transform-literals-7.10.4"
-      sources."@babel/plugin-transform-member-expression-literals-7.10.4"
-      sources."@babel/plugin-transform-modules-amd-7.10.5"
-      sources."@babel/plugin-transform-modules-commonjs-7.10.4"
-      sources."@babel/plugin-transform-modules-systemjs-7.10.5"
-      sources."@babel/plugin-transform-modules-umd-7.10.4"
-      sources."@babel/plugin-transform-named-capturing-groups-regex-7.10.4"
-      sources."@babel/plugin-transform-new-target-7.10.4"
-      sources."@babel/plugin-transform-object-super-7.10.4"
-      sources."@babel/plugin-transform-parameters-7.10.5"
-      sources."@babel/plugin-transform-property-literals-7.10.4"
-      sources."@babel/plugin-transform-regenerator-7.10.4"
-      sources."@babel/plugin-transform-reserved-words-7.10.4"
-      sources."@babel/plugin-transform-shorthand-properties-7.10.4"
-      sources."@babel/plugin-transform-spread-7.11.0"
-      sources."@babel/plugin-transform-sticky-regex-7.10.4"
-      sources."@babel/plugin-transform-template-literals-7.10.5"
-      sources."@babel/plugin-transform-typeof-symbol-7.10.4"
-      sources."@babel/plugin-transform-unicode-escapes-7.10.4"
-      sources."@babel/plugin-transform-unicode-regex-7.10.4"
+      sources."@babel/plugin-syntax-top-level-await-7.14.5"
+      sources."@babel/plugin-transform-arrow-functions-7.14.5"
+      sources."@babel/plugin-transform-async-to-generator-7.14.5"
+      sources."@babel/plugin-transform-block-scoped-functions-7.14.5"
+      sources."@babel/plugin-transform-block-scoping-7.15.3"
+      sources."@babel/plugin-transform-classes-7.15.4"
+      sources."@babel/plugin-transform-computed-properties-7.14.5"
+      sources."@babel/plugin-transform-destructuring-7.14.7"
+      sources."@babel/plugin-transform-dotall-regex-7.14.5"
+      sources."@babel/plugin-transform-duplicate-keys-7.14.5"
+      sources."@babel/plugin-transform-exponentiation-operator-7.14.5"
+      sources."@babel/plugin-transform-for-of-7.15.4"
+      sources."@babel/plugin-transform-function-name-7.14.5"
+      sources."@babel/plugin-transform-literals-7.14.5"
+      sources."@babel/plugin-transform-member-expression-literals-7.14.5"
+      sources."@babel/plugin-transform-modules-amd-7.14.5"
+      sources."@babel/plugin-transform-modules-commonjs-7.15.4"
+      sources."@babel/plugin-transform-modules-systemjs-7.15.4"
+      sources."@babel/plugin-transform-modules-umd-7.14.5"
+      sources."@babel/plugin-transform-named-capturing-groups-regex-7.14.9"
+      sources."@babel/plugin-transform-new-target-7.14.5"
+      sources."@babel/plugin-transform-object-super-7.14.5"
+      sources."@babel/plugin-transform-parameters-7.15.4"
+      sources."@babel/plugin-transform-property-literals-7.14.5"
+      sources."@babel/plugin-transform-regenerator-7.14.5"
+      sources."@babel/plugin-transform-reserved-words-7.14.5"
+      sources."@babel/plugin-transform-shorthand-properties-7.14.5"
+      sources."@babel/plugin-transform-spread-7.15.8"
+      sources."@babel/plugin-transform-sticky-regex-7.14.5"
+      sources."@babel/plugin-transform-template-literals-7.14.5"
+      sources."@babel/plugin-transform-typeof-symbol-7.14.5"
+      sources."@babel/plugin-transform-unicode-escapes-7.14.5"
+      sources."@babel/plugin-transform-unicode-regex-7.14.5"
       (sources."@babel/preset-env-7.11.5" // {
         dependencies = [
-          sources."@babel/plugin-proposal-object-rest-spread-7.11.0"
           sources."semver-5.7.1"
         ];
       })
       sources."@babel/preset-modules-0.1.4"
       sources."@babel/register-7.11.5"
-      sources."@babel/runtime-7.11.2"
-      sources."@babel/template-7.10.4"
-      (sources."@babel/traverse-7.11.5" // {
+      sources."@babel/runtime-7.15.4"
+      sources."@babel/template-7.15.4"
+      (sources."@babel/traverse-7.15.4" // {
         dependencies = [
-          sources."debug-4.2.0"
+          sources."debug-4.3.2"
           sources."ms-2.1.2"
         ];
       })
-      sources."@babel/types-7.11.5"
-      sources."@commitlint/execute-rule-11.0.0"
-      (sources."@commitlint/load-11.0.0" // {
+      sources."@babel/types-7.15.6"
+      sources."@commitlint/execute-rule-13.2.0"
+      (sources."@commitlint/load-13.2.1" // {
         dependencies = [
-          sources."ansi-styles-4.2.1"
-          sources."chalk-4.1.0"
+          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."@commitlint/resolve-extends-11.0.0"
-      sources."@commitlint/types-11.0.0"
+      sources."@commitlint/resolve-extends-13.2.0"
+      (sources."@commitlint/types-13.2.0" // {
+        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."@endemolshinegroup/cosmiconfig-typescript-loader-3.0.2"
       (sources."@istanbuljs/load-nyc-config-1.1.0" // {
         dependencies = [
           sources."find-up-4.1.0"
@@ -7843,31 +8131,32 @@ in
         ];
       })
       sources."@istanbuljs/nyc-config-babel-2.1.1"
-      sources."@istanbuljs/schema-0.1.2"
-      sources."@nodelib/fs.scandir-2.1.3"
-      sources."@nodelib/fs.stat-2.0.3"
-      sources."@nodelib/fs.walk-1.2.4"
-      sources."@octokit/auth-token-2.4.2"
-      (sources."@octokit/endpoint-6.0.6" // {
+      sources."@istanbuljs/schema-0.1.3"
+      sources."@nodelib/fs.scandir-2.1.5"
+      sources."@nodelib/fs.stat-2.0.5"
+      sources."@nodelib/fs.walk-1.2.8"
+      sources."@octokit/auth-token-2.5.0"
+      (sources."@octokit/endpoint-6.0.12" // {
         dependencies = [
           sources."is-plain-object-5.0.0"
           sources."universal-user-agent-6.0.0"
         ];
       })
+      sources."@octokit/openapi-types-11.2.0"
       (sources."@octokit/plugin-paginate-rest-1.1.2" // {
         dependencies = [
           sources."@octokit/types-2.16.2"
         ];
       })
-      sources."@octokit/plugin-request-log-1.0.0"
+      sources."@octokit/plugin-request-log-1.0.4"
       (sources."@octokit/plugin-rest-endpoint-methods-2.4.0" // {
         dependencies = [
           sources."@octokit/types-2.16.2"
         ];
       })
-      (sources."@octokit/request-5.4.8" // {
+      (sources."@octokit/request-5.6.2" // {
         dependencies = [
-          sources."@octokit/request-error-2.0.2"
+          sources."@octokit/request-error-2.1.0"
           sources."is-plain-object-5.0.0"
           sources."universal-user-agent-6.0.0"
         ];
@@ -7878,18 +8167,18 @@ in
         ];
       })
       sources."@octokit/rest-16.43.2"
-      sources."@octokit/types-5.4.1"
+      sources."@octokit/types-6.34.0"
       (sources."@semantic-release/commit-analyzer-6.3.3" // {
         dependencies = [
-          sources."debug-4.2.0"
+          sources."debug-4.3.2"
           sources."ms-2.1.2"
         ];
       })
       sources."@semantic-release/error-2.2.0"
       (sources."@semantic-release/github-5.5.8" // {
         dependencies = [
-          sources."debug-4.2.0"
-          sources."mime-2.4.6"
+          sources."debug-4.3.2"
+          sources."mime-2.5.2"
           sources."ms-2.1.2"
         ];
       })
@@ -7898,14 +8187,14 @@ in
           sources."cross-spawn-7.0.3"
           sources."execa-3.4.0"
           sources."get-stream-5.2.0"
-          sources."is-stream-2.0.0"
+          sources."is-stream-2.0.1"
           sources."mimic-fn-2.1.0"
           sources."npm-run-path-4.0.1"
           sources."onetime-5.1.2"
           sources."p-finally-2.0.1"
           sources."path-key-3.1.1"
           sources."read-pkg-5.2.0"
-          sources."registry-auth-token-4.2.0"
+          sources."registry-auth-token-4.2.1"
           sources."shebang-command-2.0.0"
           sources."shebang-regex-3.0.0"
           sources."type-fest-0.6.0"
@@ -7914,7 +8203,7 @@ in
       })
       (sources."@semantic-release/release-notes-generator-7.3.5" // {
         dependencies = [
-          sources."debug-4.2.0"
+          sources."debug-4.3.2"
           sources."find-up-4.1.0"
           sources."get-stream-5.2.0"
           sources."locate-path-5.0.0"
@@ -7926,7 +8215,7 @@ in
           sources."type-fest-0.6.0"
         ];
       })
-      sources."@sinonjs/commons-1.8.1"
+      sources."@sinonjs/commons-1.8.3"
       (sources."@sinonjs/formatio-3.2.2" // {
         dependencies = [
           sources."@sinonjs/samsam-3.3.3"
@@ -7934,14 +8223,13 @@ in
       })
       sources."@sinonjs/samsam-2.1.3"
       sources."@sinonjs/text-encoding-0.7.1"
-      sources."@types/color-name-1.1.1"
-      sources."@types/glob-7.1.3"
-      sources."@types/minimatch-3.0.3"
-      sources."@types/minimist-1.2.0"
-      sources."@types/node-14.10.0"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@types/glob-7.2.0"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/minimist-1.2.2"
+      sources."@types/node-16.11.1"
+      sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
-      sources."@types/retry-0.12.0"
+      sources."@types/retry-0.12.1"
       sources."JSONStream-1.3.5"
       sources."abbrev-1.1.1"
       sources."agent-base-5.1.1"
@@ -7954,11 +8242,29 @@ in
       sources."ansicolors-0.3.2"
       (sources."anymatch-2.0.0" // {
         dependencies = [
+          (sources."braces-2.3.2" // {
+            dependencies = [
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          (sources."fill-range-4.0.0" // {
+            dependencies = [
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          (sources."is-number-3.0.0" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."micromatch-3.1.10"
           sources."normalize-path-2.1.1"
+          sources."to-regex-range-2.1.1"
         ];
       })
       sources."append-transform-2.0.0"
       sources."archy-1.0.0"
+      sources."arg-4.1.3"
       sources."argparse-1.0.10"
       sources."argv-formatter-1.0.0"
       sources."arr-diff-4.0.0"
@@ -7980,18 +8286,18 @@ in
       sources."aws-sign2-0.5.0"
       (sources."axios-0.19.0" // {
         dependencies = [
-          sources."is-buffer-2.0.4"
+          sources."is-buffer-2.0.5"
         ];
       })
       sources."babel-plugin-dynamic-import-node-2.3.3"
       sources."babel-plugin-istanbul-5.2.0"
-      sources."balanced-match-1.0.0"
+      sources."balanced-match-1.0.2"
       (sources."base-0.11.2" // {
         dependencies = [
           sources."define-property-1.0.0"
         ];
       })
-      sources."before-after-hook-2.1.0"
+      sources."before-after-hook-2.2.2"
       sources."binary-extensions-1.13.1"
       sources."bindings-1.5.0"
       (sources."bl-0.9.5" // {
@@ -8009,15 +8315,11 @@ in
         ];
       })
       sources."brace-expansion-1.1.11"
-      (sources."braces-2.3.2" // {
-        dependencies = [
-          sources."extend-shallow-2.0.1"
-        ];
-      })
+      sources."braces-3.0.2"
       sources."browser-stdout-1.3.1"
-      sources."browserslist-4.14.2"
+      sources."browserslist-4.17.4"
       sources."btoa-lite-1.0.0"
-      sources."buffer-from-1.1.1"
+      sources."buffer-from-1.1.2"
       sources."cache-base-1.0.1"
       sources."cachedir-2.2.0"
       (sources."caching-transform-4.0.0" // {
@@ -8026,25 +8328,29 @@ in
           sources."write-file-atomic-3.0.3"
         ];
       })
-      (sources."caller-callsite-2.0.0" // {
-        dependencies = [
-          sources."callsites-2.0.0"
-        ];
-      })
-      sources."caller-path-2.0.0"
+      sources."call-bind-1.0.2"
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."caniuse-lite-1.0.30001125"
+      sources."caniuse-lite-1.0.30001270"
       sources."capture-stack-trace-1.0.1"
       sources."cardinal-2.1.1"
       sources."caseless-0.6.0"
-      sources."chai-4.2.0"
+      sources."chai-4.1.2"
       sources."chalk-2.4.2"
       sources."chardet-0.7.0"
       sources."charenc-0.0.2"
       sources."check-error-1.0.2"
-      sources."chokidar-2.1.8"
+      (sources."chokidar-2.1.8" // {
+        dependencies = [
+          sources."braces-2.3.2"
+          sources."extend-shallow-2.0.1"
+          sources."fill-range-4.0.0"
+          sources."is-number-3.0.0"
+          sources."kind-of-3.2.2"
+          sources."to-regex-range-2.1.1"
+        ];
+      })
       sources."ci-info-1.6.0"
       (sources."class-utils-0.3.6" // {
         dependencies = [
@@ -8066,7 +8372,7 @@ in
       sources."clean-stack-2.2.0"
       sources."cli-boxes-1.0.0"
       sources."cli-cursor-2.1.0"
-      (sources."cli-table-0.3.1" // {
+      (sources."cli-table-0.3.6" // {
         dependencies = [
           sources."colors-1.0.3"
         ];
@@ -8085,41 +8391,40 @@ in
       sources."colors-0.6.2"
       sources."combined-stream-0.0.7"
       sources."commander-4.1.1"
-      sources."commitizen-4.2.1"
+      sources."commitizen-4.2.4"
       sources."commondir-1.0.1"
-      (sources."compare-func-2.0.0" // {
-        dependencies = [
-          sources."dot-prop-5.3.0"
-          sources."is-obj-2.0.0"
-        ];
-      })
+      sources."compare-func-2.0.0"
       sources."component-emitter-1.3.0"
       sources."concat-map-0.0.1"
       (sources."configstore-3.1.5" // {
         dependencies = [
+          sources."dot-prop-4.2.1"
+          sources."is-obj-1.0.1"
           sources."make-dir-1.3.0"
           sources."pify-3.0.0"
         ];
       })
-      sources."conventional-changelog-angular-5.0.11"
-      (sources."conventional-changelog-writer-4.0.17" // {
+      sources."conventional-changelog-angular-5.0.13"
+      sources."conventional-changelog-conventionalcommits-4.4.0"
+      (sources."conventional-changelog-writer-4.1.0" // {
         dependencies = [
           sources."split-1.0.1"
         ];
       })
       sources."conventional-commit-types-3.0.0"
-      sources."conventional-commits-filter-2.0.6"
-      sources."conventional-commits-parser-3.1.0"
-      sources."convert-source-map-1.7.0"
+      sources."conventional-commits-filter-2.0.7"
+      sources."conventional-commits-parser-3.2.2"
+      sources."convert-source-map-1.8.0"
       sources."copy-descriptor-0.1.1"
-      (sources."core-js-compat-3.6.5" // {
+      (sources."core-js-compat-3.18.3" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
       })
-      sources."core-util-is-1.0.2"
-      sources."cosmiconfig-7.0.0"
+      sources."core-util-is-1.0.3"
+      sources."cosmiconfig-7.0.1"
       sources."create-error-class-3.0.2"
+      sources."create-require-1.1.1"
       (sources."cross-spawn-6.0.5" // {
         dependencies = [
           sources."semver-5.7.1"
@@ -8157,13 +8462,13 @@ in
       sources."deprecation-2.3.1"
       sources."detect-file-1.0.0"
       sources."detect-indent-6.0.0"
-      sources."diff-3.5.0"
+      sources."diff-4.0.2"
       sources."dir-glob-3.0.1"
-      sources."dot-prop-4.2.1"
+      sources."dot-prop-5.3.0"
       sources."duplexer-0.1.2"
       sources."duplexer2-0.1.4"
       sources."duplexer3-0.1.4"
-      sources."electron-to-chromium-1.3.565"
+      sources."electron-to-chromium-1.3.873"
       sources."emoji-regex-7.0.3"
       sources."end-of-stream-1.4.4"
       (sources."env-ci-4.5.2" // {
@@ -8171,7 +8476,7 @@ in
           sources."cross-spawn-7.0.3"
           sources."execa-3.4.0"
           sources."get-stream-5.2.0"
-          sources."is-stream-2.0.0"
+          sources."is-stream-2.0.1"
           sources."mimic-fn-2.1.0"
           sources."npm-run-path-4.0.1"
           sources."onetime-5.1.2"
@@ -8183,10 +8488,10 @@ in
         ];
       })
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.17.6"
+      sources."es-abstract-1.19.1"
       sources."es-to-primitive-1.2.1"
       sources."es6-error-4.1.1"
-      sources."escalade-3.0.2"
+      sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-4.0.1"
       sources."esutils-2.0.3"
@@ -8222,27 +8527,18 @@ in
           sources."extend-shallow-2.0.1"
         ];
       })
-      (sources."fast-glob-3.2.4" // {
+      (sources."fast-glob-3.2.7" // {
         dependencies = [
-          sources."braces-3.0.2"
-          sources."fill-range-7.0.1"
-          sources."glob-parent-5.1.1"
-          sources."is-number-7.0.0"
-          sources."micromatch-4.0.2"
-          sources."to-regex-range-5.0.1"
+          sources."glob-parent-5.1.2"
         ];
       })
-      sources."fastq-1.8.0"
+      sources."fastq-1.13.0"
       sources."figures-2.0.0"
       sources."file-uri-to-path-1.0.0"
       sources."fill-keys-1.0.2"
-      (sources."fill-range-4.0.0" // {
-        dependencies = [
-          sources."extend-shallow-2.0.1"
-        ];
-      })
+      sources."fill-range-7.0.1"
       sources."find-cache-dir-2.1.0"
-      sources."find-node-modules-2.0.0"
+      sources."find-node-modules-2.1.2"
       sources."find-root-1.1.0"
       sources."find-up-3.0.0"
       sources."find-versions-3.2.0"
@@ -8251,10 +8547,10 @@ in
           sources."commander-2.1.0"
         ];
       })
-      sources."findup-sync-3.0.0"
-      (sources."flat-4.1.0" // {
+      sources."findup-sync-4.0.0"
+      (sources."flat-4.1.1" // {
         dependencies = [
-          sources."is-buffer-2.0.4"
+          sources."is-buffer-2.0.5"
         ];
       })
       (sources."follow-redirects-1.5.10" // {
@@ -8276,17 +8572,19 @@ in
       sources."form-data-0.1.4"
       sources."fragment-cache-0.2.1"
       sources."from2-2.3.0"
-      sources."fromentries-1.2.1"
+      sources."fromentries-1.3.2"
       sources."fs-extra-8.1.0"
       sources."fs-readdir-recursive-1.1.0"
       sources."fs.realpath-1.0.0"
       sources."fsevents-1.2.13"
       sources."function-bind-1.1.1"
-      sources."gensync-1.0.0-beta.1"
+      sources."gensync-1.0.0-beta.2"
       sources."get-caller-file-2.0.5"
       sources."get-func-name-2.0.0"
+      sources."get-intrinsic-1.1.1"
       sources."get-package-type-0.1.0"
       sources."get-stream-4.1.0"
+      sources."get-symbol-description-1.0.0"
       sources."get-value-2.0.6"
       sources."ghooks-2.0.4"
       (sources."git-log-parser-1.2.0" // {
@@ -8315,27 +8613,30 @@ in
           sources."get-stream-3.0.0"
         ];
       })
-      sources."graceful-fs-4.2.4"
+      sources."graceful-fs-4.2.8"
       sources."graceful-readlink-1.0.1"
       sources."growl-1.10.5"
-      (sources."handlebars-4.7.6" // {
-        dependencies = [
-          sources."source-map-0.6.1"
-        ];
-      })
+      sources."handlebars-4.7.7"
       sources."hard-rejection-2.1.0"
       sources."has-1.0.3"
+      sources."has-bigints-1.0.1"
       sources."has-flag-3.0.0"
-      sources."has-symbols-1.0.1"
+      sources."has-symbols-1.0.2"
+      sources."has-tostringtag-1.0.0"
       sources."has-value-1.0.0"
       (sources."has-values-1.0.0" // {
         dependencies = [
+          (sources."is-number-3.0.0" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
           sources."kind-of-4.0.0"
         ];
       })
-      (sources."hasha-5.2.0" // {
+      (sources."hasha-5.2.2" // {
         dependencies = [
-          sources."is-stream-2.0.0"
+          sources."is-stream-2.0.1"
         ];
       })
       sources."hawk-1.1.1"
@@ -8343,18 +8644,18 @@ in
       sources."hoek-0.9.1"
       sources."homedir-polyfill-1.0.3"
       sources."hook-std-2.0.0"
-      sources."hosted-git-info-2.8.8"
+      sources."hosted-git-info-2.8.9"
       sources."html-escaper-2.0.2"
       (sources."http-proxy-agent-3.0.0" // {
         dependencies = [
-          sources."debug-4.2.0"
+          sources."debug-4.3.2"
           sources."ms-2.1.2"
         ];
       })
       sources."http-signature-0.10.1"
       (sources."https-proxy-agent-4.0.0" // {
         dependencies = [
-          sources."debug-4.2.0"
+          sources."debug-4.3.2"
           sources."ms-2.1.2"
         ];
       })
@@ -8362,7 +8663,7 @@ in
       sources."iconv-lite-0.4.24"
       sources."ignore-5.1.8"
       sources."ignore-by-default-1.0.1"
-      (sources."import-fresh-3.2.1" // {
+      (sources."import-fresh-3.3.0" // {
         dependencies = [
           sources."resolve-from-4.0.0"
         ];
@@ -8370,12 +8671,13 @@ in
       sources."import-from-3.0.0"
       sources."import-lazy-2.1.0"
       sources."imurmurhash-0.1.4"
-      sources."in-publish-2.0.1"
+      sources."in-publish-2.0.0"
       sources."indent-string-4.0.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."ini-1.3.5"
+      sources."ini-1.3.8"
       sources."inquirer-6.5.2"
+      sources."internal-slot-1.0.3"
       (sources."into-stream-5.1.1" // {
         dependencies = [
           sources."p-is-promise-3.0.0"
@@ -8385,38 +8687,41 @@ in
       sources."invert-kv-2.0.0"
       sources."is-accessor-descriptor-1.0.0"
       sources."is-arrayish-0.2.1"
+      sources."is-bigint-1.0.4"
       sources."is-binary-path-1.0.1"
+      sources."is-boolean-object-1.1.2"
       sources."is-buffer-1.1.6"
-      sources."is-callable-1.2.1"
+      sources."is-callable-1.2.4"
       sources."is-ci-1.2.1"
+      sources."is-core-module-2.8.0"
       sources."is-data-descriptor-1.0.0"
-      sources."is-date-object-1.0.2"
+      sources."is-date-object-1.0.5"
       sources."is-descriptor-1.0.2"
-      sources."is-directory-0.3.1"
       sources."is-extendable-0.1.1"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-2.0.0"
-      sources."is-glob-4.0.1"
+      sources."is-glob-4.0.3"
       sources."is-installed-globally-0.1.0"
+      sources."is-negative-zero-2.0.1"
       sources."is-npm-1.0.0"
-      (sources."is-number-3.0.0" // {
-        dependencies = [
-          sources."kind-of-3.2.2"
-        ];
-      })
-      sources."is-obj-1.0.1"
-      sources."is-object-1.0.1"
+      sources."is-number-7.0.0"
+      sources."is-number-object-1.0.6"
+      sources."is-obj-2.0.0"
+      sources."is-object-1.0.2"
       sources."is-path-inside-1.0.1"
       sources."is-plain-obj-1.1.0"
       sources."is-plain-object-2.0.4"
       sources."is-redirect-1.0.0"
-      sources."is-regex-1.1.1"
+      sources."is-regex-1.1.4"
       sources."is-retry-allowed-1.2.0"
+      sources."is-shared-array-buffer-1.0.1"
       sources."is-stream-1.1.0"
-      sources."is-symbol-1.0.3"
+      sources."is-string-1.0.7"
+      sources."is-symbol-1.0.4"
       sources."is-text-path-1.0.1"
       sources."is-typedarray-1.0.0"
       sources."is-utf8-0.2.1"
+      sources."is-weakref-1.0.1"
       sources."is-windows-1.0.2"
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
@@ -8428,32 +8733,30 @@ in
       (sources."istanbul-lib-processinfo-2.0.2" // {
         dependencies = [
           sources."cross-spawn-7.0.3"
-          sources."istanbul-lib-coverage-3.0.0"
+          sources."istanbul-lib-coverage-3.2.0"
           sources."make-dir-3.1.0"
           sources."path-key-3.1.1"
           sources."shebang-command-2.0.0"
           sources."shebang-regex-3.0.0"
-          sources."uuid-3.4.0"
           sources."which-2.0.2"
         ];
       })
       (sources."istanbul-lib-report-3.0.0" // {
         dependencies = [
           sources."has-flag-4.0.0"
-          sources."istanbul-lib-coverage-3.0.0"
+          sources."istanbul-lib-coverage-3.2.0"
           sources."make-dir-3.1.0"
           sources."supports-color-7.2.0"
         ];
       })
-      (sources."istanbul-lib-source-maps-4.0.0" // {
+      (sources."istanbul-lib-source-maps-4.0.1" // {
         dependencies = [
-          sources."debug-4.2.0"
-          sources."istanbul-lib-coverage-3.0.0"
+          sources."debug-4.3.2"
+          sources."istanbul-lib-coverage-3.2.0"
           sources."ms-2.1.2"
-          sources."source-map-0.6.1"
         ];
       })
-      sources."istanbul-reports-3.0.2"
+      sources."istanbul-reports-3.0.5"
       sources."java-properties-1.0.2"
       sources."js-tokens-4.0.0"
       sources."js-yaml-3.13.1"
@@ -8461,11 +8764,11 @@ in
       sources."json-parse-better-errors-1.0.2"
       sources."json-parse-even-better-errors-2.3.1"
       sources."json-stringify-safe-5.0.1"
-      sources."json5-2.1.3"
+      sources."json5-2.2.0"
       sources."jsonfile-4.0.0"
       sources."jsonify-0.0.0"
       sources."jsonparse-1.3.1"
-      sources."just-extend-4.1.0"
+      sources."just-extend-4.2.1"
       sources."kind-of-6.0.3"
       sources."latest-version-3.1.0"
       sources."lcid-2.0.0"
@@ -8480,7 +8783,7 @@ in
         ];
       })
       sources."locate-path-3.0.0"
-      sources."lodash-4.17.20"
+      sources."lodash-4.17.21"
       sources."lodash._baseclone-4.5.7"
       sources."lodash.capitalize-4.2.1"
       sources."lodash.clone-4.5.0"
@@ -8492,7 +8795,6 @@ in
       sources."lodash.isstring-4.0.1"
       sources."lodash.map-4.6.0"
       sources."lodash.set-4.3.2"
-      sources."lodash.toarray-4.4.0"
       sources."lodash.uniq-4.5.0"
       sources."lodash.uniqby-4.7.0"
       sources."log-symbols-2.2.0"
@@ -8501,18 +8803,19 @@ in
       sources."loose-envify-1.4.0"
       sources."lowercase-keys-1.0.1"
       sources."lru-cache-4.1.5"
-      sources."macos-release-2.4.1"
+      sources."macos-release-2.5.0"
       (sources."make-dir-2.1.0" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
       })
+      sources."make-error-1.3.6"
       sources."manage-path-2.0.0"
       sources."map-age-cleaner-0.1.3"
       sources."map-cache-0.2.2"
-      sources."map-obj-4.1.0"
+      sources."map-obj-4.3.0"
       sources."map-visit-1.0.0"
-      sources."marked-0.6.3"
+      sources."marked-0.7.0"
       sources."marked-terminal-3.3.0"
       sources."md5-2.3.0"
       (sources."mem-4.3.0" // {
@@ -8520,14 +8823,20 @@ in
           sources."mimic-fn-2.1.0"
         ];
       })
-      (sources."meow-7.1.1" // {
+      (sources."meow-8.1.2" // {
         dependencies = [
           sources."find-up-4.1.0"
+          sources."hosted-git-info-4.0.2"
           sources."locate-path-5.0.0"
+          sources."lru-cache-6.0.0"
+          sources."normalize-package-data-3.0.3"
           sources."p-locate-4.1.0"
           sources."path-exists-4.0.0"
           (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"
             ];
           })
@@ -8536,15 +8845,17 @@ in
               sources."type-fest-0.8.1"
             ];
           })
-          sources."type-fest-0.13.1"
-          sources."yargs-parser-18.1.3"
+          sources."semver-7.3.5"
+          sources."type-fest-0.18.1"
+          sources."yallist-4.0.0"
+          sources."yargs-parser-20.2.9"
         ];
       })
-      sources."merge-1.2.1"
+      sources."merge-2.1.1"
       sources."merge-descriptors-1.0.1"
       sources."merge-stream-2.0.0"
       sources."merge2-1.4.1"
-      sources."micromatch-3.1.10"
+      sources."micromatch-4.0.4"
       sources."mime-1.2.11"
       sources."mime-types-1.0.2"
       sources."mimic-fn-1.2.0"
@@ -8565,28 +8876,30 @@ in
       (sources."mocha-6.2.0" // {
         dependencies = [
           sources."debug-3.2.6"
+          sources."diff-3.5.0"
           sources."glob-7.1.3"
           sources."ms-2.1.1"
+          sources."object.assign-4.1.0"
           sources."strip-json-comments-2.0.1"
           sources."supports-color-6.0.0"
         ];
       })
-      (sources."mocha-junit-reporter-1.23.3" // {
+      (sources."mocha-junit-reporter-1.18.0" // {
         dependencies = [
           sources."strip-ansi-4.0.0"
         ];
       })
       (sources."mocha-multi-reporters-1.1.7" // {
         dependencies = [
-          sources."debug-3.2.6"
-          sources."ms-2.1.2"
+          sources."debug-3.2.7"
+          sources."ms-2.1.3"
         ];
       })
       sources."modify-values-1.0.1"
       sources."module-not-found-error-1.0.1"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.7"
-      sources."nan-2.14.1"
+      sources."nan-2.15.0"
       sources."nanomatch-1.2.13"
       sources."neo-async-2.6.2"
       sources."nerf-dart-1.0.0"
@@ -8596,21 +8909,21 @@ in
           sources."lolex-5.1.2"
         ];
       })
-      sources."node-emoji-1.10.0"
+      sources."node-emoji-1.11.0"
       (sources."node-environment-flags-1.0.5" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
       })
-      sources."node-fetch-2.6.1"
+      sources."node-fetch-2.6.5"
       sources."node-modules-regexp-1.0.0"
       sources."node-preload-0.2.1"
-      sources."node-releases-1.1.61"
+      sources."node-releases-2.0.0"
       sources."node-uuid-1.4.8"
       (sources."nodemon-1.19.1" // {
         dependencies = [
-          sources."debug-3.2.6"
-          sources."ms-2.1.2"
+          sources."debug-3.2.7"
+          sources."ms-2.1.3"
           sources."semver-5.7.1"
         ];
       })
@@ -8621,31 +8934,31 @@ in
         ];
       })
       sources."normalize-path-3.0.0"
-      sources."normalize-url-4.5.0"
-      sources."npm-6.14.8"
+      sources."normalize-url-4.5.1"
+      sources."npm-6.14.15"
       sources."npm-run-path-2.0.2"
       sources."number-is-nan-1.0.1"
       (sources."nyc-15.1.0" // {
         dependencies = [
-          sources."ansi-regex-5.0.0"
-          sources."ansi-styles-4.2.1"
+          sources."ansi-regex-5.0.1"
+          sources."ansi-styles-4.3.0"
           sources."cliui-6.0.0"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."emoji-regex-8.0.0"
-          sources."find-cache-dir-3.3.1"
+          sources."find-cache-dir-3.3.2"
           sources."find-up-4.1.0"
-          sources."glob-7.1.6"
+          sources."glob-7.2.0"
           sources."is-fullwidth-code-point-3.0.0"
-          sources."istanbul-lib-coverage-3.0.0"
+          sources."istanbul-lib-coverage-3.2.0"
           sources."istanbul-lib-instrument-4.0.3"
           sources."locate-path-5.0.0"
           sources."make-dir-3.1.0"
           sources."p-locate-4.1.0"
           sources."path-exists-4.0.0"
           sources."pkg-dir-4.2.0"
-          sources."string-width-4.2.0"
-          sources."strip-ansi-6.0.0"
+          sources."string-width-4.2.3"
+          sources."strip-ansi-6.0.1"
           sources."test-exclude-6.0.0"
           sources."wrap-ansi-6.2.0"
           sources."yargs-15.4.1"
@@ -8666,11 +8979,11 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.8.0"
+      sources."object-inspect-1.11.0"
       sources."object-keys-1.1.1"
       sources."object-visit-1.0.1"
-      sources."object.assign-4.1.0"
-      sources."object.getownpropertydescriptors-2.1.0"
+      sources."object.assign-4.1.2"
+      sources."object.getownpropertydescriptors-2.1.3"
       sources."object.pick-1.3.0"
       sources."octokit-pagination-methods-1.1.0"
       sources."once-1.4.0"
@@ -8697,7 +9010,7 @@ in
       sources."p-locate-3.0.0"
       sources."p-map-3.0.0"
       sources."p-reduce-2.1.0"
-      sources."p-retry-4.2.0"
+      sources."p-retry-4.6.1"
       sources."p-try-2.2.0"
       sources."package-hash-4.0.0"
       (sources."package-json-4.0.1" // {
@@ -8707,7 +9020,7 @@ in
       })
       sources."pad-right-0.2.2"
       sources."parent-module-1.0.1"
-      sources."parse-json-5.1.0"
+      sources."parse-json-5.2.0"
       sources."parse-passwd-1.0.0"
       sources."pascalcase-0.1.1"
       sources."path-dirname-1.0.2"
@@ -8715,15 +9028,16 @@ in
       sources."path-is-absolute-1.0.1"
       sources."path-is-inside-1.0.2"
       sources."path-key-2.0.1"
-      sources."path-parse-1.0.6"
+      sources."path-parse-1.0.7"
       (sources."path-to-regexp-1.8.0" // {
         dependencies = [
           sources."isarray-0.0.1"
         ];
       })
       sources."path-type-4.0.0"
-      sources."pathval-1.1.0"
-      sources."picomatch-2.2.2"
+      sources."pathval-1.1.1"
+      sources."picocolors-1.0.0"
+      sources."picomatch-2.3.0"
       sources."pify-4.0.1"
       sources."pirates-4.0.1"
       (sources."pkg-conf-2.1.0" // {
@@ -8740,7 +9054,11 @@ in
       sources."prepend-http-1.0.4"
       sources."process-nextick-args-2.0.1"
       sources."process-on-spawn-1.0.0"
-      sources."proxyquire-2.1.3"
+      (sources."proxyquire-2.1.0" // {
+        dependencies = [
+          sources."resolve-1.8.1"
+        ];
+      })
       sources."pseudomap-1.0.2"
       sources."psl-1.8.0"
       sources."pstree.remy-1.1.8"
@@ -8748,6 +9066,7 @@ in
       sources."punycode-2.1.1"
       sources."q-1.5.1"
       sources."qs-1.2.2"
+      sources."queue-microtask-1.2.3"
       sources."quick-lru-4.0.1"
       (sources."rc-1.2.8" // {
         dependencies = [
@@ -8762,31 +9081,41 @@ in
       })
       sources."read-pkg-up-4.0.0"
       sources."readable-stream-2.3.7"
-      sources."readdirp-2.2.1"
+      (sources."readdirp-2.2.1" // {
+        dependencies = [
+          sources."braces-2.3.2"
+          sources."extend-shallow-2.0.1"
+          sources."fill-range-4.0.0"
+          sources."is-number-3.0.0"
+          sources."kind-of-3.2.2"
+          sources."micromatch-3.1.10"
+          sources."to-regex-range-2.1.1"
+        ];
+      })
       sources."redent-3.0.0"
       sources."redeyed-2.1.1"
-      sources."regenerate-1.4.1"
-      sources."regenerate-unicode-properties-8.2.0"
-      sources."regenerator-runtime-0.13.7"
+      sources."regenerate-1.4.2"
+      sources."regenerate-unicode-properties-9.0.0"
+      sources."regenerator-runtime-0.13.9"
       sources."regenerator-transform-0.14.5"
       sources."regex-not-1.0.2"
-      sources."regexpu-core-4.7.0"
+      sources."regexpu-core-4.8.0"
       sources."registry-auth-token-3.4.0"
       sources."registry-url-3.1.0"
       sources."regjsgen-0.5.2"
-      (sources."regjsparser-0.6.4" // {
+      (sources."regjsparser-0.7.0" // {
         dependencies = [
           sources."jsesc-0.5.0"
         ];
       })
       sources."release-zalgo-1.0.0"
       sources."remove-trailing-separator-1.1.0"
-      sources."repeat-element-1.1.3"
+      sources."repeat-element-1.1.4"
       sources."repeat-string-1.6.1"
       sources."request-2.42.0"
       sources."require-directory-2.1.1"
       sources."require-main-filename-2.0.0"
-      sources."resolve-1.17.0"
+      sources."resolve-1.20.0"
       sources."resolve-dir-1.0.1"
       sources."resolve-from-5.0.0"
       sources."resolve-global-1.0.0"
@@ -8794,41 +9123,60 @@ in
       sources."restore-cursor-2.0.0"
       sources."resumer-0.0.0"
       sources."ret-0.1.15"
-      sources."retry-0.12.0"
+      sources."retry-0.13.1"
       sources."reusify-1.0.4"
       sources."right-pad-1.0.1"
       sources."rimraf-3.0.2"
       sources."run-async-2.4.1"
-      sources."run-parallel-1.1.9"
-      sources."rxjs-6.6.3"
+      sources."run-parallel-1.2.0"
+      (sources."rxjs-6.6.7" // {
+        dependencies = [
+          sources."tslib-1.14.1"
+        ];
+      })
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
-      (sources."semantic-release-15.13.18" // {
+      (sources."semantic-release-15.14.0" // {
         dependencies = [
-          sources."cosmiconfig-5.2.1"
-          sources."debug-4.2.0"
+          sources."ansi-regex-5.0.1"
+          sources."ansi-styles-4.3.0"
+          sources."cliui-6.0.0"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."cosmiconfig-6.0.0"
+          sources."cross-spawn-7.0.3"
+          sources."debug-4.3.2"
+          sources."emoji-regex-8.0.0"
+          sources."execa-3.4.0"
           sources."figures-3.2.0"
           sources."find-up-4.1.0"
           sources."get-stream-5.2.0"
-          (sources."import-fresh-2.0.0" // {
-            dependencies = [
-              sources."resolve-from-3.0.0"
-            ];
-          })
+          sources."hosted-git-info-3.0.8"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."is-stream-2.0.1"
           sources."locate-path-5.0.0"
+          sources."lru-cache-6.0.0"
+          sources."mimic-fn-2.1.0"
           sources."ms-2.1.2"
+          sources."npm-run-path-4.0.1"
+          sources."onetime-5.1.2"
+          sources."p-finally-2.0.1"
           sources."p-locate-4.1.0"
-          sources."parse-json-4.0.0"
           sources."path-exists-4.0.0"
-          (sources."read-pkg-5.2.0" // {
-            dependencies = [
-              sources."parse-json-5.1.0"
-              sources."type-fest-0.6.0"
-            ];
-          })
-          sources."read-pkg-up-6.0.0"
-          sources."type-fest-0.5.2"
+          sources."path-key-3.1.1"
+          sources."read-pkg-5.2.0"
+          sources."read-pkg-up-7.0.1"
+          sources."shebang-command-2.0.0"
+          sources."shebang-regex-3.0.0"
+          sources."string-width-4.2.3"
+          sources."strip-ansi-6.0.1"
+          sources."type-fest-0.6.0"
+          sources."which-2.0.2"
+          sources."wrap-ansi-6.2.0"
+          sources."yallist-4.0.0"
+          sources."yargs-15.4.1"
+          sources."yargs-parser-18.1.3"
         ];
       })
       sources."semver-6.3.0"
@@ -8846,9 +9194,14 @@ in
       })
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
-      sources."signal-exit-3.0.3"
+      sources."side-channel-1.0.4"
+      sources."signal-exit-3.0.5"
       sources."signale-1.4.0"
-      sources."sinon-6.3.5"
+      (sources."sinon-6.3.4" // {
+        dependencies = [
+          sources."diff-3.5.0"
+        ];
+      })
       sources."slash-2.0.0"
       (sources."snapdragon-0.8.2" // {
         dependencies = [
@@ -8866,6 +9219,7 @@ in
           })
           sources."is-descriptor-0.1.6"
           sources."kind-of-5.1.0"
+          sources."source-map-0.5.7"
         ];
       })
       (sources."snapdragon-node-2.1.1" // {
@@ -8879,14 +9233,10 @@ in
         ];
       })
       sources."sntp-0.2.4"
-      sources."source-map-0.5.7"
+      sources."source-map-0.6.1"
       sources."source-map-resolve-0.5.3"
-      (sources."source-map-support-0.5.19" // {
-        dependencies = [
-          sources."source-map-0.6.1"
-        ];
-      })
-      sources."source-map-url-0.4.0"
+      sources."source-map-support-0.5.20"
+      sources."source-map-url-0.4.1"
       sources."spawn-command-0.0.2"
       sources."spawn-error-forwarder-1.0.0"
       (sources."spawn-wrap-2.0.0" // {
@@ -8898,12 +9248,12 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.5"
+      sources."spdx-license-ids-3.0.10"
       sources."split-0.2.10"
       sources."split-string-3.1.0"
-      (sources."split2-2.2.0" // {
+      (sources."split2-3.2.2" // {
         dependencies = [
-          sources."through2-2.0.5"
+          sources."readable-stream-3.6.0"
         ];
       })
       sources."sprintf-js-1.0.3"
@@ -8931,8 +9281,8 @@ in
           sources."strip-ansi-4.0.0"
         ];
       })
-      sources."string.prototype.trimend-1.0.1"
-      sources."string.prototype.trimstart-1.0.1"
+      sources."string.prototype.trimend-1.0.4"
+      sources."string.prototype.trimstart-1.0.4"
       sources."string_decoder-1.1.1"
       sources."stringstream-0.0.6"
       (sources."strip-ansi-5.2.0" // {
@@ -8968,7 +9318,11 @@ in
       sources."test-exclude-5.2.3"
       sources."text-extensions-1.9.0"
       sources."through-2.3.8"
-      sources."through2-3.0.2"
+      (sources."through2-4.0.2" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
       sources."timed-out-4.0.1"
       sources."tmp-0.0.33"
       sources."to-fast-properties-2.0.0"
@@ -8978,23 +9332,26 @@ in
         ];
       })
       sources."to-regex-3.0.2"
-      sources."to-regex-range-2.1.1"
+      sources."to-regex-range-5.0.1"
       sources."touch-3.1.0"
       sources."tough-cookie-4.0.0"
+      sources."tr46-0.0.3"
       sources."traverse-0.6.6"
-      sources."trim-newlines-3.0.0"
-      sources."trim-off-newlines-1.0.1"
-      sources."tslib-1.13.0"
+      sources."trim-newlines-3.0.1"
+      sources."ts-node-9.1.1"
+      sources."tslib-2.3.1"
       sources."tunnel-agent-0.4.3"
       sources."type-detect-4.0.8"
       sources."type-fest-0.8.1"
       sources."typedarray-to-buffer-3.1.5"
-      sources."uglify-js-3.10.4"
-      sources."undefsafe-2.0.3"
-      sources."unicode-canonical-property-names-ecmascript-1.0.4"
-      sources."unicode-match-property-ecmascript-1.0.4"
-      sources."unicode-match-property-value-ecmascript-1.2.0"
-      sources."unicode-property-aliases-ecmascript-1.1.0"
+      sources."typescript-4.4.4"
+      sources."uglify-js-3.14.2"
+      sources."unbox-primitive-1.0.1"
+      sources."undefsafe-2.0.5"
+      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.0.0"
       sources."union-value-1.0.1"
       sources."unique-string-1.0.0"
       sources."universal-user-agent-4.0.1"
@@ -9018,9 +9375,12 @@ in
       sources."urlgrey-0.4.0"
       sources."use-3.1.1"
       sources."util-deprecate-1.0.2"
-      sources."uuid-3.3.2"
+      sources."uuid-3.4.0"
       sources."validate-npm-package-license-3.0.4"
+      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-module-2.0.0"
       sources."wide-align-1.1.3"
       sources."widest-line-2.0.1"
@@ -9040,9 +9400,9 @@ in
       sources."xdg-basedir-3.0.0"
       sources."xml-1.0.1"
       sources."xtend-4.0.2"
-      sources."y18n-4.0.0"
+      sources."y18n-4.0.3"
       sources."yallist-2.1.2"
-      sources."yaml-1.10.0"
+      sources."yaml-1.10.2"
       (sources."yargs-13.2.2" // {
         dependencies = [
           sources."string-width-3.1.0"
@@ -9057,6 +9417,7 @@ in
           sources."yargs-parser-11.1.1"
         ];
       })
+      sources."yn-3.1.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
diff --git a/pkgs/applications/version-management/git-and-tools/lucky-commit/default.nix b/pkgs/applications/version-management/git-and-tools/lucky-commit/default.nix
index b58e192e391e9..7d91fb7754255 100644
--- a/pkgs/applications/version-management/git-and-tools/lucky-commit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/lucky-commit/default.nix
@@ -22,7 +22,7 @@ rustPlatform.buildRustPackage rec {
 
   buildInputs = lib.optional withOpenCL (if stdenv.isDarwin then OpenCL else ocl-icd);
 
-  cargoBuildFlags = lib.optional (!withOpenCL) "--no-default-features";
+  buildNoDefaultFeatures = !withOpenCL;
 
   # disable tests that require gpu
   checkNoDefaultFeatures = true;
diff --git a/pkgs/applications/version-management/pijul/default.nix b/pkgs/applications/version-management/pijul/default.nix
index 32126c7ce663f..f558eab6b61fe 100644
--- a/pkgs/applications/version-management/pijul/default.nix
+++ b/pkgs/applications/version-management/pijul/default.nix
@@ -22,8 +22,6 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "sha256-j9xf97qPdhtakIwhAql0/Go5fPxlyWKAVLk5CMBfAbs=";
 
-  cargoBuildFlags = lib.optional gitImportSupport "--features=git";
-
   doCheck = false;
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ openssl libsodium xxHash zstd ]
@@ -32,6 +30,8 @@ rustPlatform.buildRustPackage rec {
       CoreServices Security SystemConfiguration
     ]));
 
+  buildFeatures = lib.optional gitImportSupport "git";
+
   meta = with lib; {
     description = "A distributed version control system";
     homepage = "https://pijul.org";
diff --git a/pkgs/applications/video/ccextractor/default.nix b/pkgs/applications/video/ccextractor/default.nix
index 5bb13e116174a..905034091a297 100644
--- a/pkgs/applications/video/ccextractor/default.nix
+++ b/pkgs/applications/video/ccextractor/default.nix
@@ -23,7 +23,12 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-usVAKBkdd8uz9cD5eLd0hnwGonOJLscRdc+iWDlNXVc=";
   };
 
-  sourceRoot = "source/src";
+  postPatch = lib.optionalString stdenv.isDarwin ''
+    substituteInPlace src/CMakeLists.txt \
+    --replace 'add_definitions(-DGPAC_CONFIG_LINUX)' 'add_definitions(-DGPAC_CONFIG_DARWIN)'
+  '';
+
+  cmakeDir = "../src";
 
   nativeBuildInputs = [ pkg-config cmake makeWrapper ];
 
diff --git a/pkgs/applications/video/streamlink/default.nix b/pkgs/applications/video/streamlink/default.nix
index 4abc2b6546aa1..c82cfb47cc321 100644
--- a/pkgs/applications/video/streamlink/default.nix
+++ b/pkgs/applications/video/streamlink/default.nix
@@ -1,17 +1,16 @@
 { lib
 , python3Packages
-, rtmpdump
 , ffmpeg
 , fetchpatch
 }:
 
 python3Packages.buildPythonApplication rec {
   pname = "streamlink";
-  version = "2.4.0";
+  version = "3.0.1";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "e95588e222d1a7bd51e3171cd4bce84fd6f646418537aff37993d40f597810af";
+    sha256 = "sha256-GDbUlu5tRL5mdT7KrIdmxCbeAtYL1xvZXyZFwiuvKXo=";
   };
 
   checkInputs = with python3Packages; [
@@ -22,26 +21,20 @@ python3Packages.buildPythonApplication rec {
   ];
 
   propagatedBuildInputs = (with python3Packages; [
+    isodate
+    lxml
+    pycountry
     pycryptodome
+    pysocks
     requests
-    iso-639
-    iso3166
     websocket-client
-    isodate
-    lxml
   ]) ++ [
-    rtmpdump
     ffmpeg
   ];
 
-  patches = [
-    # Patch failing tests to expect correct Accept-Encoding as generated by Requests
-    (fetchpatch {
-      url = "https://github.com/streamlink/streamlink/commit/ae747a113199c119bced4613d33edcc67a222bb9.patch";
-      includes = [ "tests/test_stream_json.py" ];
-      sha256 = "sha256-KEgyWdh5DNgNktmLSvKQowUQO9p9Q7zP4NbCQJPNgKw=";
-    })
-  ];
+  postPatch = ''
+    substituteInPlace setup.cfg --replace 'lxml >=4.6.4,<5.0' 'lxml'
+  '';
 
   meta = with lib; {
     homepage = "https://streamlink.github.io/";
diff --git a/pkgs/applications/window-managers/eww/default.nix b/pkgs/applications/window-managers/eww/default.nix
index c2cc2f23cdb89..a987c6c2e0e5d 100644
--- a/pkgs/applications/window-managers/eww/default.nix
+++ b/pkgs/applications/window-managers/eww/default.nix
@@ -25,10 +25,10 @@ rustPlatform.buildRustPackage rec {
 
   buildInputs = [ gtk3 ] ++ lib.optional withWayland gtk-layer-shell;
 
-  cargoBuildFlags = [ "--bin" "eww" ] ++ lib.optionals withWayland [
-    "--no-default-features"
-    "--features=wayland"
-  ];
+  buildNoDefaultFeatures = withWayland;
+  buildFeatures = lib.optional withWayland "wayland";
+
+  cargoBuildFlags = [ "--bin" "eww" ];
 
   cargoTestFlags = cargoBuildFlags;
 
diff --git a/pkgs/applications/window-managers/i3/status-rust.nix b/pkgs/applications/window-managers/i3/status-rust.nix
index defb44f0f35d6..a285c4b5a54a5 100644
--- a/pkgs/applications/window-managers/i3/status-rust.nix
+++ b/pkgs/applications/window-managers/i3/status-rust.nix
@@ -27,10 +27,10 @@ rustPlatform.buildRustPackage rec {
 
   buildInputs = [ dbus libpulseaudio notmuch openssl ];
 
-  cargoBuildFlags = [
-    "--features=notmuch"
-    "--features=maildir"
-    "--features=pulseaudio"
+  buildFeatures = [
+    "notmuch"
+    "maildir"
+    "pulseaudio"
   ];
 
   prePatch = ''
diff --git a/pkgs/applications/window-managers/i3/wmfocus.nix b/pkgs/applications/window-managers/i3/wmfocus.nix
index 6756afb4a5c5b..9c33c555353c3 100644
--- a/pkgs/applications/window-managers/i3/wmfocus.nix
+++ b/pkgs/applications/window-managers/i3/wmfocus.nix
@@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec {
   # For now, this is the only available featureset. This is also why the file is
   # in the i3 folder, even though it might be useful for more than just i3
   # users.
-  cargoBuildFlags = [ "--features i3" ];
+  buildFeatures = [ "i3" ];
 
   meta = with lib; {
     description = "Visually focus windows by label";
diff --git a/pkgs/applications/window-managers/ion-3/default.nix b/pkgs/applications/window-managers/ion-3/default.nix
index 4794de1d5f845..45d56194bede9 100644
--- a/pkgs/applications/window-managers/ion-3/default.nix
+++ b/pkgs/applications/window-managers/ion-3/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "3-20090110";
 
   src = fetchurl {
-    url = "http://tuomov.iki.fi/software/dl/ion-${version}.tar.gz";
+    url = "https://tuomov.iki.fi/software/ion/dl/ion-${version}.tar.gz";
     sha256 = "1nkks5a95986nyfkxvg2rik6zmwx0lh7szd5fji7yizccwzc9xns";
   };
 
@@ -13,6 +13,11 @@ stdenv.mkDerivation rec {
 
   buildFlags = [ "LUA_DIR=${lua}" "X11_PREFIX=/no-such-path" "PREFIX=\${out}" ];
 
+  # Build system is missing depends for autogenerated export headers:
+  #   luac -o mod_tiling.lc mod_tiling.lua
+  #   main.c:21:10: fatal error: exports.h: No such file or directory
+  enableParallelBuilding = false;
+
   installFlags = [ "PREFIX=\${out}" ];
 
   meta = with lib; {
diff --git a/pkgs/build-support/fetchgithub/default.nix b/pkgs/build-support/fetchgithub/default.nix
index ea95bbb479314..d40a0478baba4 100644
--- a/pkgs/build-support/fetchgithub/default.nix
+++ b/pkgs/build-support/fetchgithub/default.nix
@@ -8,7 +8,7 @@
 }@args:
 let
   baseUrl = "https://${githubBase}/${owner}/${repo}";
-  passthruAttrs = removeAttrs args [ "owner" "repo" "rev" "fetchSubmodules" "private" "githubBase" "varPrefix" ];
+  passthruAttrs = removeAttrs args [ "owner" "repo" "rev" "fetchSubmodules" "forceFetchGit" "private" "githubBase" "varPrefix" ];
   varBase = "NIX${if varPrefix == null then "" else "_${varPrefix}"}_GITHUB_PRIVATE_";
   useFetchGit = fetchSubmodules || (leaveDotGit == true) || deepClone || forceFetchGit;
   # We prefer fetchzip in cases we don't need submodules as the hash
diff --git a/pkgs/build-support/rust/import-cargo-lock.nix b/pkgs/build-support/rust/import-cargo-lock.nix
index fe070e9638d4c..fd3608741ea33 100644
--- a/pkgs/build-support/rust/import-cargo-lock.nix
+++ b/pkgs/build-support/rust/import-cargo-lock.nix
@@ -125,20 +125,31 @@ let
         };
       in runCommand "${pkg.name}-${pkg.version}" {} ''
         tree=${tree}
-        if grep --quiet '\[workspace\]' "$tree/Cargo.toml"; then
-          # If the target package is in a workspace, find the crate path
-          # using `cargo metadata`.
-          crateCargoTOML=$(${cargo}/bin/cargo metadata --format-version 1 --no-deps --manifest-path $tree/Cargo.toml | \
-            ${jq}/bin/jq -r '.packages[] | select(.name == "${pkg.name}") | .manifest_path')
 
+        # If the target package is in a workspace, or if it's the top-level
+        # crate, we should find the crate path using `cargo metadata`.
+        crateCargoTOML=$(${cargo}/bin/cargo metadata --format-version 1 --no-deps --manifest-path $tree/Cargo.toml | \
+          ${jq}/bin/jq -r '.packages[] | select(.name == "${pkg.name}") | .manifest_path')
+
+        # If the repository is not a workspace the package might be in a subdirectory.
+        if [[ -z $crateCargoTOML ]]; then
+          for manifest in $(find $tree -name "Cargo.toml"); do
+            echo Looking at $manifest
+            crateCargoTOML=$(${cargo}/bin/cargo metadata --format-version 1 --no-deps --manifest-path "$manifest" | ${jq}/bin/jq -r '.packages[] | select(.name == "${pkg.name}") | .manifest_path' || :)
             if [[ ! -z $crateCargoTOML ]]; then
-              tree=$(dirname $crateCargoTOML)
-            else
-              >&2 echo "Cannot find path for crate '${pkg.name}-${pkg.version}' in the Cargo workspace in: $tree"
-              exit 1
+              break
             fi
+          done
+
+          if [[ -z $crateCargoTOML ]]; then
+            >&2 echo "Cannot find path for crate '${pkg.name}-${pkg.version}' in the tree in: $tree"
+            exit 1
+          fi
         fi
 
+        echo Found crate ${pkg.name} at $crateCargoTOML
+        tree=$(dirname $crateCargoTOML)
+
         cp -prvd "$tree/" $out
         chmod u+w $out
 
diff --git a/pkgs/build-support/rust/test/import-cargo-lock/default.nix b/pkgs/build-support/rust/test/import-cargo-lock/default.nix
index 24e07099c0581..c5c7b2f1c931b 100644
--- a/pkgs/build-support/rust/test/import-cargo-lock/default.nix
+++ b/pkgs/build-support/rust/test/import-cargo-lock/default.nix
@@ -7,6 +7,7 @@
   basicDynamic = callPackage ./basic-dynamic { };
   gitDependency = callPackage ./git-dependency { };
   gitDependencyRev = callPackage ./git-dependency-rev { };
+  gitDependencyRevNonWorkspaceNestedCrate = callPackage ./git-dependency-rev-non-workspace-nested-crate { };
   gitDependencyTag = callPackage ./git-dependency-tag { };
   gitDependencyBranch = callPackage ./git-dependency-branch { };
   maturin = callPackage ./maturin { };
diff --git a/pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/Cargo.lock b/pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/Cargo.lock
new file mode 100644
index 0000000000000..63ff1b3c113c8
--- /dev/null
+++ b/pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/Cargo.lock
@@ -0,0 +1,638 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "adler"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+[[package]]
+name = "anyhow"
+version = "1.0.44"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "61604a8f862e1d5c3229fdd78f8b02c68dcf73a4c4b05fd636d12240aaa242c1"
+
+[[package]]
+name = "autocfg"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
+
+[[package]]
+name = "bitflags"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+[[package]]
+name = "cargo-test-macro"
+version = "0.1.0"
+source = "git+https://github.com/rust-lang/cargo?branch=rust-1.53.0#4369396ce7d270972955d876eaa4954bea56bcd9"
+
+[[package]]
+name = "cargo-test-support"
+version = "0.1.0"
+source = "git+https://github.com/rust-lang/cargo?branch=rust-1.53.0#4369396ce7d270972955d876eaa4954bea56bcd9"
+dependencies = [
+ "anyhow",
+ "cargo-test-macro",
+ "cargo-util",
+ "filetime",
+ "flate2",
+ "git2",
+ "glob",
+ "lazy_static",
+ "remove_dir_all",
+ "serde_json",
+ "tar",
+ "toml",
+ "url",
+]
+
+[[package]]
+name = "cargo-util"
+version = "0.1.0"
+source = "git+https://github.com/rust-lang/cargo?branch=rust-1.53.0#4369396ce7d270972955d876eaa4954bea56bcd9"
+dependencies = [
+ "anyhow",
+ "core-foundation",
+ "crypto-hash",
+ "filetime",
+ "hex 0.4.3",
+ "jobserver",
+ "libc",
+ "log",
+ "miow",
+ "same-file",
+ "shell-escape",
+ "tempfile",
+ "walkdir",
+ "winapi",
+]
+
+[[package]]
+name = "cc"
+version = "1.0.71"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "79c2681d6594606957bbb8631c4b90a7fcaaa72cdb714743a437b156d6a7eedd"
+dependencies = [
+ "jobserver",
+]
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "commoncrypto"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d056a8586ba25a1e4d61cb090900e495952c7886786fc55f909ab2f819b69007"
+dependencies = [
+ "commoncrypto-sys",
+]
+
+[[package]]
+name = "commoncrypto-sys"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1fed34f46747aa73dfaa578069fd8279d2818ade2b55f38f22a9401c7f4083e2"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "core-foundation"
+version = "0.9.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6888e10551bb93e424d8df1d07f1a8b4fceb0001a3a4b048bfc47554946f47b3"
+dependencies = [
+ "core-foundation-sys",
+ "libc",
+]
+
+[[package]]
+name = "core-foundation-sys"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
+
+[[package]]
+name = "crc32fast"
+version = "1.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "81156fece84ab6a9f2afdb109ce3ae577e42b1228441eded99bd77f627953b1a"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "crypto-hash"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a77162240fd97248d19a564a565eb563a3f592b386e4136fb300909e67dddca"
+dependencies = [
+ "commoncrypto",
+ "hex 0.3.2",
+ "openssl",
+ "winapi",
+]
+
+[[package]]
+name = "filetime"
+version = "0.2.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "975ccf83d8d9d0d84682850a38c8169027be83368805971cc4f238c2b245bc98"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "redox_syscall",
+ "winapi",
+]
+
+[[package]]
+name = "flate2"
+version = "1.0.22"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e6988e897c1c9c485f43b47a529cef42fde0547f9d8d41a7062518f1d8fc53f"
+dependencies = [
+ "cfg-if",
+ "crc32fast",
+ "libc",
+ "libz-sys",
+ "miniz_oxide",
+]
+
+[[package]]
+name = "foreign-types"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+dependencies = [
+ "foreign-types-shared",
+]
+
+[[package]]
+name = "foreign-types-shared"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+
+[[package]]
+name = "form_urlencoded"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"
+dependencies = [
+ "matches",
+ "percent-encoding",
+]
+
+[[package]]
+name = "getrandom"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "wasi",
+]
+
+[[package]]
+name = "git-dependency-rev-non-workspace-nested-crate"
+version = "0.1.0"
+dependencies = [
+ "cargo-test-support",
+]
+
+[[package]]
+name = "git2"
+version = "0.13.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2a8057932925d3a9d9e4434ea016570d37420ddb1ceed45a174d577f24ed6700"
+dependencies = [
+ "bitflags",
+ "libc",
+ "libgit2-sys",
+ "log",
+ "openssl-probe",
+ "openssl-sys",
+ "url",
+]
+
+[[package]]
+name = "glob"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
+
+[[package]]
+name = "hex"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77"
+
+[[package]]
+name = "hex"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
+
+[[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 = "itoa"
+version = "0.4.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
+
+[[package]]
+name = "jobserver"
+version = "0.1.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa"
+dependencies = [
+ "libc",
+]
+
+[[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.105"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "869d572136620d55835903746bcb5cdc54cb2851fd0aeec53220b4bb65ef3013"
+
+[[package]]
+name = "libgit2-sys"
+version = "0.12.24+1.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ddbd6021eef06fb289a8f54b3c2acfdd85ff2a585dfbb24b8576325373d2152c"
+dependencies = [
+ "cc",
+ "libc",
+ "libssh2-sys",
+ "libz-sys",
+ "openssl-sys",
+ "pkg-config",
+]
+
+[[package]]
+name = "libssh2-sys"
+version = "0.2.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b094a36eb4b8b8c8a7b4b8ae43b2944502be3e59cd87687595cf6b0a71b3f4ca"
+dependencies = [
+ "cc",
+ "libc",
+ "libz-sys",
+ "openssl-sys",
+ "pkg-config",
+ "vcpkg",
+]
+
+[[package]]
+name = "libz-sys"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "de5435b8549c16d423ed0c03dbaafe57cf6c3344744f1242520d59c9d8ecec66"
+dependencies = [
+ "cc",
+ "libc",
+ "pkg-config",
+ "vcpkg",
+]
+
+[[package]]
+name = "log"
+version = "0.4.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "matches"
+version = "0.1.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
+
+[[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 = "miow"
+version = "0.3.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "once_cell"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56"
+
+[[package]]
+name = "openssl"
+version = "0.10.36"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8d9facdb76fec0b73c406f125d44d86fdad818d66fef0531eec9233ca425ff4a"
+dependencies = [
+ "bitflags",
+ "cfg-if",
+ "foreign-types",
+ "libc",
+ "once_cell",
+ "openssl-sys",
+]
+
+[[package]]
+name = "openssl-probe"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "28988d872ab76095a6e6ac88d99b54fd267702734fd7ffe610ca27f533ddb95a"
+
+[[package]]
+name = "openssl-sys"
+version = "0.9.67"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "69df2d8dfc6ce3aaf44b40dec6f487d5a886516cf6879c49e98e0710f310a058"
+dependencies = [
+ "autocfg",
+ "cc",
+ "libc",
+ "pkg-config",
+ "vcpkg",
+]
+
+[[package]]
+name = "percent-encoding"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
+
+[[package]]
+name = "pkg-config"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "10e2fcbb64ecbe64c8e040a386c3104d384583af58b956d870aaaf229df6e66d"
+
+[[package]]
+name = "ppv-lite86"
+version = "0.2.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c3ca011bd0129ff4ae15cd04c4eef202cadf6c51c21e47aba319b4e0501db741"
+
+[[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 = "remove_dir_all"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "ryu"
+version = "1.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
+
+[[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 = "serde"
+version = "1.0.130"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f12d06de37cf59146fbdecab66aa99f9fe4f78722e3607577a5375d66bd0c913"
+
+[[package]]
+name = "serde_json"
+version = "1.0.68"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0f690853975602e1bfe1ccbf50504d67174e3bcf340f23b5ea9992e0587a52d8"
+dependencies = [
+ "itoa",
+ "ryu",
+ "serde",
+]
+
+[[package]]
+name = "shell-escape"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "45bb67a18fa91266cc7807181f62f9178a6873bfad7dc788c42e6430db40184f"
+
+[[package]]
+name = "tar"
+version = "0.4.37"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d6f5515d3add52e0bbdcad7b83c388bb36ba7b754dda3b5f5bc2d38640cdba5c"
+dependencies = [
+ "filetime",
+ "libc",
+]
+
+[[package]]
+name = "tempfile"
+version = "3.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "rand",
+ "redox_syscall",
+ "remove_dir_all",
+ "winapi",
+]
+
+[[package]]
+name = "tinyvec"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f83b2a3d4d9091d0abd7eba4dc2710b1718583bd4d8992e2190720ea38f391f7"
+dependencies = [
+ "tinyvec_macros",
+]
+
+[[package]]
+name = "tinyvec_macros"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
+
+[[package]]
+name = "toml"
+version = "0.5.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa"
+dependencies = [
+ "serde",
+]
+
+[[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 = "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 = "vcpkg"
+version = "0.2.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
+
+[[package]]
+name = "walkdir"
+version = "2.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
+dependencies = [
+ "same-file",
+ "winapi",
+ "winapi-util",
+]
+
+[[package]]
+name = "wasi"
+version = "0.10.2+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
+
+[[package]]
+name = "winapi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+dependencies = [
+ "winapi-i686-pc-windows-gnu",
+ "winapi-x86_64-pc-windows-gnu",
+]
+
+[[package]]
+name = "winapi-i686-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+[[package]]
+name = "winapi-util"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "winapi-x86_64-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
diff --git a/pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/Cargo.toml b/pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/Cargo.toml
new file mode 100644
index 0000000000000..61f1a08dbe4f4
--- /dev/null
+++ b/pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/Cargo.toml
@@ -0,0 +1,8 @@
+[package]
+name = "git-dependency-rev-non-workspace-nested-crate"
+version = "0.1.0"
+authors = ["Stefan Junker <mail@stefanjunker.de>"]
+edition = "2018"
+
+[dependencies]
+cargo-test-support = { git = "https://github.com/rust-lang/cargo", branch = "rust-1.53.0" }
diff --git a/pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/default.nix b/pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/default.nix
new file mode 100644
index 0000000000000..dcf1e601c31c1
--- /dev/null
+++ b/pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/default.nix
@@ -0,0 +1,31 @@
+{ rustPlatform, pkg-config, openssl, lib, darwin, stdenv }:
+
+rustPlatform.buildRustPackage {
+  pname = "git-dependency-rev-non-workspace-nested-crate";
+  version = "0.1.0";
+
+  src = ./.;
+
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
+  buildInputs = [
+    openssl
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.Security
+  ];
+
+  cargoLock = {
+    lockFile = ./Cargo.lock;
+    outputHashes = {
+      "cargo-test-macro-0.1.0" = "1yy1y1d523xdzwg1gc77pigbcwsbawmy4b7vw8v21m7q957sk0c4";
+    };
+  };
+
+  doInstallCheck = true;
+
+  installCheckPhase = ''
+    $out/bin/git-dependency-rev-non-workspace-nested-crate
+  '';
+}
diff --git a/pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/src/main.rs b/pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/src/main.rs
new file mode 100644
index 0000000000000..cb4bfb5d928b5
--- /dev/null
+++ b/pkgs/build-support/rust/test/import-cargo-lock/git-dependency-rev-non-workspace-nested-crate/src/main.rs
@@ -0,0 +1,3 @@
+fn main() {
+    println!("{}", cargo_test_support::t!(Result::<&str, &str>::Ok("msg")));
+}
diff --git a/pkgs/build-support/setup-hooks/copy-desktop-items.sh b/pkgs/build-support/setup-hooks/copy-desktop-items.sh
index f96a10f33d5cb..b5c5ed81eb970 100644
--- a/pkgs/build-support/setup-hooks/copy-desktop-items.sh
+++ b/pkgs/build-support/setup-hooks/copy-desktop-items.sh
@@ -30,8 +30,8 @@ copyDesktopItems() {
 
     for desktopItem in $desktopItems; do
         if [[ -f "$desktopItem" ]]; then
-            echo "Copying '$f' into '$out/share/applications'"
-            install -D -m 444 -t "$out"/share/applications "$f"
+            echo "Copying '$desktopItem' into '$out/share/applications'"
+            install -D -m 444 -t "$out"/share/applications "$desktopItem"
         else
             for f in "$desktopItem"/share/applications/*.desktop; do
                 echo "Copying '$f' into '$out/share/applications'"
diff --git a/pkgs/data/icons/la-capitaine-icon-theme/default.nix b/pkgs/data/icons/la-capitaine-icon-theme/default.nix
new file mode 100644
index 0000000000000..b7febabacd5f4
--- /dev/null
+++ b/pkgs/data/icons/la-capitaine-icon-theme/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, breeze-icons
+, elementary-icon-theme
+, gnome-icon-theme
+, hicolor-icon-theme
+}:
+
+stdenv.mkDerivation rec {
+  pname = "la-capitaine-icon-theme";
+  version = "0.6.2";
+
+  src = fetchFromGitHub {
+    owner = "keeferrourke";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0id2dddx6rl71472l47vafx968wnklmq6b980br68w82kcvqczzs";
+  };
+
+  propagatedBuildInputs = [
+    breeze-icons
+    elementary-icon-theme
+    gnome-icon-theme
+    hicolor-icon-theme
+  ];
+
+  dontDropIconThemeCache = true;
+
+  postPatch = ''
+    patchShebangs configure
+
+    substituteInPlace configure \
+      --replace 'DISTRO=$(format "$(lsb_release -si 2>/dev/null)")' 'DISTRO=nixos'
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/share/icons/$pname
+    cp -a * $out/share/icons/$pname
+    rm $out/share/icons/$pname/{configure,COPYING,LICENSE,*.md}
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Icon theme inspired by macOS and Google's Material Design";
+    homepage = "https://github.com/keeferrourke/la-capitaine-icon-theme";
+    license = with licenses; [ gpl3Plus mit ];
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/data/misc/hackage/pin.json b/pkgs/data/misc/hackage/pin.json
index 996e993d80034..ba70f6f76ad0a 100644
--- a/pkgs/data/misc/hackage/pin.json
+++ b/pkgs/data/misc/hackage/pin.json
@@ -1,6 +1,6 @@
 {
-  "commit": "da98cdcb5ec11aea3b1979174b3b1cab24014908",
-  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/da98cdcb5ec11aea3b1979174b3b1cab24014908.tar.gz",
-  "sha256": "14qdmvlqkaixv331g1lfr8hghrvzdx45xhn69fz1g7zhv4w88jix",
-  "msg": "Update from Hackage at 2021-11-05T06:34:09Z"
+  "commit": "f38385b8e3e064360be513204f114418ea0206de",
+  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/f38385b8e3e064360be513204f114418ea0206de.tar.gz",
+  "sha256": "08yrxx2cslwbbrcrjn13va2vbynjrwfbkc3fs4mf9qc17bdvxmgj",
+  "msg": "Update from Hackage at 2021-11-12T03:22:57Z"
 }
diff --git a/pkgs/data/themes/gtk-theme-framework/default.nix b/pkgs/data/themes/gtk-theme-framework/default.nix
new file mode 100644
index 0000000000000..99b9edfc3aca9
--- /dev/null
+++ b/pkgs/data/themes/gtk-theme-framework/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchFromGitHub, theme, lib }:
+
+stdenv.mkDerivation rec {
+  pname = "gtk-theme-framework";
+  version = "0.2.3";
+
+  src = fetchFromGitHub {
+    owner = "jaxwilko";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1z5s5rsgiypanf2z0avaisbflnvwrc8aiy5qskrsvbbaja63jy3s";
+  };
+
+  postPatch = ''
+    substituteInPlace main.sh \
+      --replace "#!/usr/bin/env bash" "#!/bin/sh"
+
+    substituteInPlace scripts/install.sh \
+      --replace "#!/usr/bin/env bash" "#!/bin/sh"
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/themes
+    ./main.sh -i -t ${theme} -d $out/share/themes
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/jaxwilko/gtk-theme-framework";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ flexagoon ];
+  };
+}
diff --git a/pkgs/desktops/gnome/extensions/sound-output-device-chooser/default.nix b/pkgs/desktops/gnome/extensions/sound-output-device-chooser/default.nix
index e439e5b5a50a8..cf4b916b20105 100644
--- a/pkgs/desktops/gnome/extensions/sound-output-device-chooser/default.nix
+++ b/pkgs/desktops/gnome/extensions/sound-output-device-chooser/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-sound-output-device-chooser";
-  version = "38";
+  version = "39";
 
   src = fetchFromGitHub {
     owner = "kgshank";
     repo = "gse-sound-output-device-chooser";
     rev = version;
-    sha256 = "sha256-LZ+C9iK+j7+DEscYCIObxXc0Bn0Z0xSsEFMZxc8REWA=";
+    sha256 = "sha256-RFdBdpKsz2MjdzxWX4UFwah+e68dqrkvm7ql0RAZZwg=";
   };
 
   patches = [
diff --git a/pkgs/development/compilers/elm/packages/node-composition.nix b/pkgs/development/compilers/elm/packages/node-composition.nix
index 4b662bd072b4f..10952aff94b6d 100644
--- a/pkgs/development/compilers/elm/packages/node-composition.nix
+++ b/pkgs/development/compilers/elm/packages/node-composition.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../../node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/development/compilers/flutter/flutter.nix b/pkgs/development/compilers/flutter/flutter.nix
index e0ede49b09197..376e0f529874f 100644
--- a/pkgs/development/compilers/flutter/flutter.nix
+++ b/pkgs/development/compilers/flutter/flutter.nix
@@ -156,7 +156,10 @@ runCommand drvName
   '';
   preferLocalBuild = true;
   allowSubstitutes = false;
-  passthru = { unwrapped = flutter; };
+  passthru = {
+    unwrapped = flutter;
+    inherit dart;
+  };
   meta = with lib; {
     description = "Flutter is Google's SDK for building mobile, web and desktop with Dart";
     longDescription = ''
diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix
index 9c0dd63f1b9d4..cb56087fe1b2c 100644
--- a/pkgs/development/compilers/ghc/head.nix
+++ b/pkgs/development/compilers/ghc/head.nix
@@ -41,7 +41,7 @@
 , # Whether to build terminfo.
   enableTerminfo ? !stdenv.targetPlatform.isWindows
 
-, version ? "9.3.20210913"
+, version ? "9.3.20211111"
 , # What flavour to build. An empty string indicates no
   # specific flavour and falls back to ghc default values.
   ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
@@ -160,8 +160,8 @@ stdenv.mkDerivation (rec {
 
   src = fetchgit {
     url = "https://gitlab.haskell.org/ghc/ghc.git/";
-    rev = "64923cf295ea914db458547432237a5ed1eff571";
-    sha256 = "1s9sm4gf4r71lk0s7h9v217rxfwjf435q1jji90hlxz23wvmhr6d";
+    rev = "cc635da167fdec2dead0603b0026cb841f0aa645";
+    sha256 = "1lj76l546zriwkcn2r7i5a4j35bx9fh5iggwfz2xvhh8aq8j2i46";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/ghcjs/8.10/default.nix b/pkgs/development/compilers/ghcjs/8.10/default.nix
index 6b8a251197d8c..b6c2f7e72ee01 100644
--- a/pkgs/development/compilers/ghcjs/8.10/default.nix
+++ b/pkgs/development/compilers/ghcjs/8.10/default.nix
@@ -3,7 +3,7 @@
 , callPackage
 , fetchgit
 , ghcjsSrcJson ? null
-, ghcjsSrc ? fetchgit lib.importJSON ghcjsSrcJson
+, ghcjsSrc ? fetchgit (lib.importJSON ghcjsSrcJson)
 , bootPkgs
 , stage0
 , haskellLib
diff --git a/pkgs/development/compilers/kotlin/default.nix b/pkgs/development/compilers/kotlin/default.nix
index 9f2efdb409b93..4a92fd87f2676 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.5.31";
+  version = "1.6.0";
 
   src = fetchurl {
     url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip";
-    sha256 = "sha256-ZhERKG8+WsBqrzqUA9hp2alqF2tisUGBS+YmpHJJ/p4=";
+    sha256 = "sha256-F0yS4SpUwJAf2fC62s8VFMKLUZepVlTk2rF3UpPd4dw=";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/pkgs/development/compilers/kotlin/native.nix b/pkgs/development/compilers/kotlin/native.nix
index 34f38b3a8e9e8..b1a50cdcf40fa 100644
--- a/pkgs/development/compilers/kotlin/native.nix
+++ b/pkgs/development/compilers/kotlin/native.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "kotlin-native";
-  version = "1.5.31";
+  version = "1.6.0";
 
   src = let
     getArch = {
@@ -20,9 +20,9 @@ stdenv.mkDerivation rec {
       "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-native-${arch}-${version}.tar.gz";
 
     getHash = arch: {
-      "macos-aarch64" = "sha256-+9AF42AlPn1/8c14t8u+NN8FkoEmdt6tpmIKU9Rp2AM=";
-      "macos-x86_64" = "sha256-/eciSo4Eps2TTsv1XU1Rlm+KBmgQT0MWp2s/OAYtGt4=";
-      "linux-x86_64" = "sha256-Y2t+nlTu+j+h0oRneo7CJx0PmLAkqKYBJ+8go7rargM=";
+      "macos-aarch64" = "sha256-HLI6E3Y8l/5vAgjT39ezBCEYhCGV3pdjx1B1fL57qO4=";
+      "macos-x86_64" = "sha256-cJV+dP9/pJHlJx55HMqd7KC/OIWEzPXKmobCZLBZ+ec=";
+      "linux-x86_64" = "sha256-C5R2hdPg1cOA9WcSZYkN22Ca3/pslEcp554tuy/HxnQ=";
     }.${arch};
   in
     fetchurl {
diff --git a/pkgs/development/compilers/seexpr/default.nix b/pkgs/development/compilers/seexpr/default.nix
index 5dfa08c457278..f13ec5174d5ae 100644
--- a/pkgs/development/compilers/seexpr/default.nix
+++ b/pkgs/development/compilers/seexpr/default.nix
@@ -1,22 +1,35 @@
-{ lib, stdenv, fetchFromGitHub, cmake, libpng, zlib, qt4,
-bison, flex, libGLU, python2Packages
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, libpng
+, zlib
+, qt4
+, bison
+, flex
+, libGLU
+, python3Packages
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "seexpr";
-  version = "2.11";
+  version = "3.0.1";
+
   src = fetchFromGitHub {
-    owner  = "wdas";
-    repo   = "SeExpr";
-    rev    = "v2.11";
-    sha256 = "0a44k56jf6dl36fwgg4zpc252wq5lf9cblg74mp73k82hxw439l4";
+    owner = "wdas";
+    repo = "SeExpr";
+    rev = "v${version}";
+    sha256 = "sha256-r6mgyb/FGz4KYZOgLDgmIqjO+PSmneD3KUWjymZXtEk=";
   };
 
+  cmakeFlags = [ "-DENABLE_SSE4=OFF" ];
+
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ libGLU libpng zlib qt4 python2Packages.pyqt4 bison flex ];
+  buildInputs = [ libGLU libpng zlib qt4 python3Packages.pyqt4 python3Packages.boost bison flex ];
+
   meta = with lib; {
     description = "Embeddable expression evaluation engine from Disney Animation";
-    homepage = "https://www.disneyanimation.com/technology/seexpr.html";
+    homepage = "https://wdas.github.io/SeExpr/";
     maintainers = with maintainers; [ hodapp ];
     license = licenses.asl20;
     platforms = platforms.linux;
diff --git a/pkgs/development/coq-modules/coq-bits/default.nix b/pkgs/development/coq-modules/coq-bits/default.nix
index 410280925dccb..1da0a0d17ea99 100644
--- a/pkgs/development/coq-modules/coq-bits/default.nix
+++ b/pkgs/development/coq-modules/coq-bits/default.nix
@@ -4,10 +4,23 @@ with lib; mkCoqDerivation {
   pname = "coq-bits";
   repo = "bits";
   inherit version;
-  defaultVersion = if versions.isGe "8.7" coq.version then "20190812" else null;
+  defaultVersion =
+    if versions.isGe "8.10" coq.version
+    then "1.1.0"
+    else if versions.isGe "8.7" coq.version
+    then "1.0.0"
+    else null;
 
-  release."20190812".rev    = "1.0.0";
-  release."20190812".sha256 = "0nv5mdgrd075dpd8bc7h0xc5i95v0pkm0bfyq5rj6ii1s54dwcjl";
+  release = {
+    "1.0.0" = {
+      rev = "1.0.0";
+      sha256 = "0nv5mdgrd075dpd8bc7h0xc5i95v0pkm0bfyq5rj6ii1s54dwcjl";
+    };
+    "1.1.0" = {
+      rev = "1.1.0";
+      sha256 = "sha256-TCw1kSXeW0ysIdLeNr+EGmpGumEE9i8tinEMp57UXaE=";
+    };
+  };
 
   propagatedBuildInputs = [ mathcomp.algebra ];
 
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 8622debdf5859..83e9ea32509fd 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -15,6 +15,9 @@ with haskellLib;
 
 self: super: {
 
+  # There are numerical tests on random data, that may fail occasionally
+  lapack = dontCheck super.lapack;
+
   # Arion's test suite needs a Nixpkgs, which is cumbersome to do from Nixpkgs
   # itself. For instance, pkgs.path has dirty sources and puts a huge .git in the
   # store. Testing is done upstream.
@@ -60,7 +63,7 @@ self: super: {
 
   # The Hackage tarball is purposefully broken, because it's not intended to be, like, useful.
   # https://git-annex.branchable.com/bugs/bash_completion_file_is_missing_in_the_6.20160527_tarball_on_hackage/
-  git-annex = (overrideSrc {
+  git-annex = overrideCabal (drv: {
     src = pkgs.fetchgit {
       name = "git-annex-${super.git-annex.version}-src";
       url = "git://git-annex.branchable.com/";
@@ -74,11 +77,15 @@ self: super: {
         rm -r $out/doc/?ndroid*
       '';
     };
-  } super.git-annex).override {
-    dbus = if pkgs.stdenv.isLinux then self.dbus else null;
-    fdo-notify = if pkgs.stdenv.isLinux then self.fdo-notify else null;
-    hinotify = if pkgs.stdenv.isLinux then self.hinotify else self.fsnotify;
-  };
+    patches = [
+      # Allows compilation with git-lfs 1.2.0
+      (pkgs.fetchpatch {
+        url = "https://git.joeyh.name/index.cgi/git-annex.git/patch/?id=f3326b8b5ae4d1caa5c6e3e192c58c6e064c425a";
+        sha256 = "1nzg4mna462ndylisyy3nfih49aznhzzf7b3krb4p9p0j1zrcy2s";
+        excludes = [ "doc/**" "CHANGELOG" ];
+      })
+    ] ++ (drv.patches or []);
+  }) super.git-annex;
 
   # Fix test trying to access /home directory
   shell-conduit = overrideCabal (drv: {
@@ -844,7 +851,7 @@ self: super: {
 
   # hledger-lib 1.23 depends on doctest >= 0.18
   hledger-lib_1_23 = super.hledger-lib_1_23.override {
-    doctest = self.doctest_0_18_1;
+    doctest = self.doctest_0_18_2;
   };
 
   # Copy hledger man pages from data directory into the proper place. This code
@@ -1338,21 +1345,21 @@ self: super: {
     resource-pool = self.hasura-resource-pool;
     ekg-core = self.hasura-ekg-core;
     ekg-json = self.hasura-ekg-json;
-    hspec = dontCheck self.hspec_2_8_3;
-    hspec-core = dontCheck self.hspec-core_2_8_3;
-    hspec-discover = dontCheck super.hspec-discover_2_8_3;
+    hspec = dontCheck self.hspec_2_8_4;
+    hspec-core = dontCheck self.hspec-core_2_8_4;
+    hspec-discover = dontCheck super.hspec-discover_2_8_4;
     tasty-hspec = self.tasty-hspec_1_2;
   }));
   hasura-ekg-core = super.hasura-ekg-core.overrideScope (self: super: {
-    hspec = dontCheck self.hspec_2_8_3;
-    hspec-core = dontCheck self.hspec-core_2_8_3;
-    hspec-discover = dontCheck super.hspec-discover_2_8_3;
+    hspec = dontCheck self.hspec_2_8_4;
+    hspec-core = dontCheck self.hspec-core_2_8_4;
+    hspec-discover = dontCheck super.hspec-discover_2_8_4;
   });
   hasura-ekg-json = super.hasura-ekg-json.overrideScope (self: super: {
     ekg-core = self.hasura-ekg-core;
-    hspec = dontCheck self.hspec_2_8_3;
-    hspec-core = dontCheck self.hspec-core_2_8_3;
-    hspec-discover = dontCheck super.hspec-discover_2_8_3;
+    hspec = dontCheck self.hspec_2_8_4;
+    hspec-core = dontCheck self.hspec-core_2_8_4;
+    hspec-discover = dontCheck super.hspec-discover_2_8_4;
   });
   pg-client = overrideCabal (drv: {
     librarySystemDepends = with pkgs; [ postgresql krb5.dev openssl.dev ];
@@ -1427,9 +1434,10 @@ self: super: {
   # 2021-09-14: Tests are broken because of undeterministic variable names
   hls-tactics-plugin = dontCheck super.hls-tactics-plugin;
 
-  # 2021-03-21 Test hangs
+  # 2021-03-21: Test hangs
   # https://github.com/haskell/haskell-language-server/issues/1562
-  ghcide = dontCheck super.ghcide;
+  # 2021-11-13: Too strict upper bound on implicit-hie-cradle
+  ghcide = doJailbreak (dontCheck super.ghcide);
 
   data-tree-print = doJailbreak super.data-tree-print;
 
@@ -2070,15 +2078,13 @@ EOT
   # file revision on hackage was gifted CRLF line endings
   gogol-core = appendPatch ./patches/gogol-core-144.patch super.gogol-core;
 
-  # 2021-11-05: patch to permit our language-docker version
-  # This is based on c931c0a9689cd6dff4d2083fa002414c1f08a586 from
-  # language-docker upstream
-  hadolint = appendPatch (pkgs.fetchpatch {
-    url = "https://github.com/hadolint/hadolint/commit/c931c0a9689cd6dff4d2083fa002414c1f08a586.patch";
-    sha256 = "1kv06hfn7lgrcrg56q8lq0pvdffqvmjbshazg3prlhl3kjs541f8";
-    excludes = [ "stack.yaml" "package.yaml" "hadolint.cabal" ];
-  }) (super.hadolint.override {
+  # Jailbreak isn't sufficient, but this is ok as it's a leaf package.
+  hadolint = super.hadolint.overrideScope (self: super: {
     language-docker = self.language-docker_10_3_0;
+    hspec = dontCheck self.hspec_2_8_4;
+    hspec-core = dontCheck self.hspec-core_2_8_4;
+    hspec-discover = dontCheck self.hspec-discover_2_8_4;
+    colourista = doJailbreak super.colourista;
   });
 
   # These should be updated in lockstep
@@ -2086,4 +2092,9 @@ EOT
     hledger-lib = self.hledger-lib_1_23;
   };
 
+  # Needs brick > 0.64
+  nix-tree = super.nix-tree.override {
+    brick = self.brick_0_64_2;
+  };
+
 } // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix
index b461b45af02d3..6aae6f1c63851 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix
@@ -92,7 +92,7 @@ self: super: {
     url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/fe192e12b88b09499d4aff0e562713e820544bd6/patches/alex-3.2.6.patch";
     sha256 = "1rzs764a0nhx002v4fadbys98s6qblw4kx4g46galzjf5f7n2dn4";
   }) (dontCheck super.alex);
-  doctest = dontCheck (doJailbreak super.doctest_0_18_1);
+  doctest = dontCheck (doJailbreak super.doctest_0_18_2);
   language-haskell-extract = appendPatch (pkgs.fetchpatch {
     url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/language-haskell-extract-0.2.4.patch";
     sha256 = "0rgzrq0513nlc1vw7nw4km4bcwn4ivxcgi33jly4a7n3c1r32v1f";
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 ffe7f0868cf04..e2fca5199a61a 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix
@@ -66,11 +66,6 @@ self: super: {
     sha256 = "0c8n2krz827cv87p3vb1vpl3v0k255aysjx9lq44gz3z1dhxd64z";
   }) super.basement);
 
-  cereal = appendPatch (pkgs.fetchpatch {
-    url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/cereal-0.5.8.1.patch";
-    sha256 = "03v4nxwz9y6viaa8anxcmp4zdf2clczv4pf9fqq6lnpplpz5i128";
-  }) (doJailbreak super.cereal);
-
   # Tests fail because of typechecking changes
   conduit = dontCheck super.conduit;
 
@@ -84,10 +79,7 @@ self: super: {
     Cabal = self.Cabal_3_6_2_0;
   });
 
-  doctest = appendPatch (pkgs.fetchpatch {
-    url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/doctest-0.18.1.patch";
-    sha256 = "030kdsk0fg08cgdcjpyv6z8ym1vkkrbd34aacs91y5hqzc9g79y1";
-  }) (dontCheck (doJailbreak super.doctest_0_18_1));
+  doctest = dontCheck (doJailbreak super.doctest_0_18_2);
 
   # Tests fail in GHC 9.2
   extra = dontCheck super.extra;
@@ -115,7 +107,7 @@ self: super: {
   ghc-lib-parser-ex = self.ghc-lib-parser-ex_9_2_0_1;
   hackage-security = doJailbreak super.hackage-security;
   hashable = super.hashable_1_4_0_0;
-  hashable-time = doJailbreak super.hashable-time;
+  hashable-time = doJailbreak super.hashable-time_0_3;
   hedgehog = doJailbreak super.hedgehog;
   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);
@@ -142,7 +134,7 @@ self: super: {
   tasty-hspec = doJailbreak super.tasty-hspec;
   th-desugar = self.th-desugar_1_13;
   these = doJailbreak super.these;
-  time-compat = doJailbreak super.time-compat;
+  time-compat = doJailbreak super.time-compat_1_9_6_1;
   type-equality = doJailbreak super.type-equality;
   unordered-containers = doJailbreak super.unordered-containers;
   vector = doJailbreak (dontCheck super.vector);
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
index 34592e29dd6b0..951047fb54fd6 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
@@ -834,6 +834,7 @@ broken-packages:
   - contstuff-monads-tf
   - contstuff-transformers
   - convert-annotation
+  - copilot-core
   - copilot-sbv
   - copr
   - COrdering
@@ -1841,7 +1842,6 @@ broken-packages:
   - haddock-cheatsheet
   - haddock-leksah
   - haddock-test
-  - hadolint
   - hadoop-formats
   - hadoop-rpc
   - hafar
@@ -2790,7 +2790,7 @@ broken-packages:
   - language-typescript
   - language-vhdl
   - language-webidl
-  - lapack
+  - lapack-hmatrix
   - LargeCardinalHierarchy
   - Lastik
   - latest-npm-version
@@ -2918,10 +2918,8 @@ broken-packages:
   - llsd
   - llvm-base
   - llvm-ffi
-  - llvm-ffi-tools
   - llvm-general-pure
   - llvm-ht
-  - llvm-pkg-config
   - llvm-pretty
   - lmonad
   - load-balancing
@@ -3205,6 +3203,7 @@ broken-packages:
   - morfette
   - morfeusz
   - morpheus-graphql-cli
+  - morpheus-graphql-code-gen
   - morphisms-functors
   - morphisms-objects
   - morte
@@ -4034,6 +4033,7 @@ broken-packages:
   - read-bounded
   - read-ctags
   - read-io
+  - readline-in-other-words
   - readline-statevar
   - readme-lhs
   - readshp
@@ -4792,7 +4792,6 @@ broken-packages:
   - syntax-trees
   - syntax-trees-fork-bairyn
   - synthesizer
-  - synthesizer-alsa
   - Sysmon
   - sys-process
   - system-canonicalpath
@@ -5354,6 +5353,7 @@ broken-packages:
   - web-encodings
   - WeberLogic
   - webfinger-client
+  - webkitgtk3
   - webkit-javascriptcore
   - webmention
   - web-output
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
index c95eb289f6c5e..7c106393dd9fc 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
@@ -98,6 +98,9 @@ default-package-overrides:
   - futhark < 0.20.6
   # 2021-11-09: ghc-bignum is bundled starting with 9.0.1; only 1.0 builds with GHCs prior to 9.2.1
   - ghc-bignum == 1.0
+  # 2021-11-18: lucid-{alpine, htmx} are not in stackage, so we need to downgrade them
+  - lucid-alpine == 0.1.0.2
+  - lucid-htmx == 0.1.0.2
 
 extra-packages:
   - base16-bytestring < 1               # required for cabal-install etc.
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
index 09e2a314977e7..858eeac1e297e 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
@@ -1,4 +1,4 @@
-# Stackage LTS 18.15
+# Stackage LTS 18.16
 # This file is auto-generated by
 # maintainers/scripts/haskell/update-stackage.sh
 default-package-overrides:
@@ -363,7 +363,7 @@ default-package-overrides:
   - cborg-json ==0.2.3.0
   - cdar-mBound ==0.1.0.4
   - c-enum ==0.1.0.1
-  - cereal ==0.5.8.1
+  - cereal ==0.5.8.2
   - cereal-conduit ==0.8.0
   - cereal-text ==0.1.0.2
   - cereal-vector ==0.2.0.1
@@ -716,7 +716,7 @@ default-package-overrides:
   - event-list ==0.1.2
   - eventstore ==1.4.1
   - every ==0.0.1
-  - exact-combinatorics ==0.2.0.10
+  - exact-combinatorics ==0.2.0.11
   - exact-pi ==0.5.0.1
   - exception-hierarchy ==0.1.0.4
   - exception-mtl ==0.4.0.1
@@ -835,7 +835,7 @@ default-package-overrides:
   - gd ==3000.7.3
   - gdp ==0.0.3.0
   - general-games ==1.1.1
-  - generic-aeson ==0.2.0.12
+  - generic-aeson ==0.2.0.13
   - generic-arbitrary ==0.1.0
   - generic-constraints ==1.1.1.1
   - generic-data ==0.9.2.1
@@ -1090,7 +1090,7 @@ default-package-overrides:
   - hruby ==0.3.8.1
   - hsass ==0.8.0
   - hs-bibutils ==6.10.0.0
-  - hsc2hs ==0.68.7
+  - hsc2hs ==0.68.8
   - hscolour ==1.24.4
   - hsdns ==1.8
   - hsebaysdk ==0.4.1.0
@@ -1269,7 +1269,7 @@ default-package-overrides:
   - io-streams-haproxy ==1.0.1.0
   - ip6addr ==1.0.2
   - ipa ==0.3.1.1
-  - iproute ==1.7.11
+  - iproute ==1.7.12
   - IPv6Addr ==2.0.3
   - ipynb ==0.1.0.2
   - ipython-kernel ==0.10.2.1
@@ -1313,7 +1313,7 @@ default-package-overrides:
   - jwt ==0.10.0
   - kan-extensions ==5.2.3
   - kanji ==3.4.1
-  - katip ==0.8.6.0
+  - katip ==0.8.7.0
   - katip-logstash ==0.1.0.0
   - kawhi ==0.3.0
   - kazura-queue ==0.1.0.4
@@ -1458,7 +1458,7 @@ default-package-overrides:
   - mathexpr ==0.3.0.0
   - math-extras ==0.1.1.0
   - math-functions ==0.3.4.2
-  - matplotlib ==0.7.5
+  - matplotlib ==0.7.6
   - matrices ==0.5.0
   - matrix ==0.3.6.1
   - matrix-as-xyz ==0.1.2.2
@@ -1875,7 +1875,7 @@ default-package-overrides:
   - protocol-radius-test ==0.1.0.1
   - protolude ==0.3.0
   - proxied ==0.3.1
-  - psqueues ==0.2.7.2
+  - psqueues ==0.2.7.3
   - ptr-poker ==0.1.1.4
   - publicsuffix ==0.20200526
   - pulse-simple ==0.1.14
@@ -1946,7 +1946,7 @@ default-package-overrides:
   - reanimate ==1.1.4.0
   - reanimate-svg ==0.13.0.1
   - rebase ==1.13.0.1
-  - record-dot-preprocessor ==0.2.12
+  - record-dot-preprocessor ==0.2.13
   - record-hasfield ==1.0
   - records-sop ==0.1.1.0
   - record-wrangler ==0.1.1.0
@@ -2386,7 +2386,7 @@ default-package-overrides:
   - th-constraint-compat ==0.0.1.0
   - th-data-compat ==0.1.0.0
   - th-desugar ==1.11
-  - th-env ==0.1.0.2
+  - th-env ==0.1.0.3
   - these ==1.1.1.1
   - these-lens ==1.0.1.2
   - these-optics ==1.0.1.2
@@ -2520,7 +2520,7 @@ default-package-overrides:
   - universe-reverse-instances ==1.1.1
   - universe-some ==1.2.1
   - universum ==1.7.2
-  - unix-bytestring ==0.3.7.5
+  - unix-bytestring ==0.3.7.6
   - unix-compat ==0.5.3
   - unix-time ==0.4.7
   - unliftio ==0.2.20
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
index 3afd15cb44840..505358dd4c400 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
@@ -822,6 +822,7 @@ dont-distribute-packages:
  - convertible-text
  - coordinate
  - copilot
+ - copilot-c99
  - copilot-cbmc
  - copilot-language
  - copilot-libraries
@@ -948,6 +949,7 @@ dont-distribute-packages:
  - diagrams-pgf
  - diagrams-reflex
  - diagrams-wx
+ - dialog
  - difference-monoid
  - digestive-functors-hsp
  - dingo-core
@@ -1222,6 +1224,7 @@ dont-distribute-packages:
  - ghc-mod
  - ghc-tags-plugin
  - ghci-pretty
+ - ghcjs-dom-webkit
  - ghcjs-hplay
  - ght
  - gi-cairo-again
@@ -1485,6 +1488,8 @@ dont-distribute-packages:
  - hbb
  - hbcd
  - hbf
+ - hbro
+ - hbro-contrib
  - hcg-minus-cairo
  - hcheat
  - hcheckers
@@ -1570,7 +1575,6 @@ dont-distribute-packages:
  - hmeap
  - hmeap-utils
  - hmep
- - hmm-lapack
  - hmm-lapack_0_4_1
  - hmt
  - hmt-diagrams
@@ -1917,7 +1921,7 @@ dont-distribute-packages:
  - language-python-colour
  - language-qux
  - language-spelling
- - lapack-hmatrix
+ - lapack_0_4
  - lat
  - latex-formulae-hakyll
  - latex-formulae-pandoc
@@ -1962,8 +1966,6 @@ dont-distribute-packages:
  - lightstep-haskell
  - lighttpd-conf
  - lighttpd-conf-qq
- - linear-circuit
- - linear-circuit_0_1_0_3
  - linearmap-category
  - linearscan-hoopl
  - linkchk
@@ -2043,8 +2045,6 @@ dont-distribute-packages:
  - macosx-make-standalone
  - magic-wormhole
  - magicbane
- - magico
- - magico_0_0_2_2
  - mahoro
  - maid
  - mail-pool
@@ -2122,6 +2122,7 @@ dont-distribute-packages:
  - mmark-cli
  - mmark-cli_0_0_5_1
  - mmark-ext
+ - mmark-ext_0_2_1_4
  - mmtl-base
  - moan
  - modify-fasta
@@ -2143,6 +2144,8 @@ dont-distribute-packages:
  - moo-nad
  - morley
  - morloc
+ - morpheus-graphql-client_0_18_0
+ - morpheus-graphql_0_18_0
  - morphisms-functors-inventory
  - mosaico-lib
  - motor-diagrams
@@ -2333,6 +2336,7 @@ dont-distribute-packages:
  - persona-idp
  - peyotls
  - peyotls-codec
+ - pg-entity
  - pgsql-simple
  - phonetic-languages-examples
  - phonetic-languages-general
@@ -2577,8 +2581,6 @@ dont-distribute-packages:
  - replicant
  - repr
  - representable-tries
- - resistor-cube
- - resistor-cube_0_0_1_3
  - resource-pool-catchio
  - resource-simple
  - respond
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index fb08481a39de0..67224af62b392 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -155,6 +155,7 @@ self: super: builtins.intersectAttrs super {
   github-types = dontCheck super.github-types;          # http://hydra.cryp.to/build/1114046/nixlog/1/raw
   hadoop-rpc = dontCheck super.hadoop-rpc;              # http://hydra.cryp.to/build/527461/nixlog/2/raw
   hasql = dontCheck super.hasql;                        # http://hydra.cryp.to/build/502489/nixlog/4/raw
+  hasql-interpolate = dontCheck super.hasql-interpolate; # wants to connect to postgresql
   hasql-transaction = dontCheck super.hasql-transaction; # wants to connect to postgresql
   hjsonschema = overrideCabal (drv: { testTarget = "local"; }) super.hjsonschema;
   marmalade-upload = dontCheck super.marmalade-upload;  # http://hydra.cryp.to/build/501904/nixlog/1/raw
@@ -516,25 +517,30 @@ self: super: builtins.intersectAttrs super {
       })
       (addBuildTools (with pkgs.buildPackages; [makeWrapper python3Packages.sphinx]) super.futhark);
 
-  git-annex = with pkgs;
-    if (!stdenv.isLinux) then
-      let path = lib.makeBinPath [ coreutils ];
-      in overrideCabal (_drv: {
-        # This is an instance of https://github.com/NixOS/nix/pull/1085
-        # Fails with:
-        #   gpg: can't connect to the agent: File name too long
-        postPatch = lib.optionalString stdenv.isDarwin ''
-          substituteInPlace Test.hs \
-            --replace ', testCase "crypto" test_crypto' ""
-        '';
-        # On Darwin, git-annex mis-detects options to `cp`, so we wrap the
-        # binary to ensure it uses Nixpkgs' coreutils.
-        postFixup = ''
-          wrapProgram $out/bin/git-annex \
-            --prefix PATH : "${path}"
-        '';
-      }) (addBuildTool buildPackages.makeWrapper super.git-annex)
-    else super.git-annex;
+  git-annex = let
+    pathForDarwin = pkgs.lib.makeBinPath [ pkgs.coreutils ];
+  in overrideCabal (drv: pkgs.lib.optionalAttrs (!pkgs.stdenv.isLinux) {
+    # This is an instance of https://github.com/NixOS/nix/pull/1085
+    # Fails with:
+    #   gpg: can't connect to the agent: File name too long
+    postPatch = pkgs.lib.optionalString pkgs.stdenv.isDarwin ''
+      substituteInPlace Test.hs \
+        --replace ', testCase "crypto" test_crypto' ""
+    '' + (drv.postPatch or "");
+    # On Darwin, git-annex mis-detects options to `cp`, so we wrap the
+    # binary to ensure it uses Nixpkgs' coreutils.
+    postFixup = ''
+      wrapProgram $out/bin/git-annex \
+        --prefix PATH : "${pathForDarwin}"
+    '' + (drv.postFixup or "");
+    buildTools = [
+      pkgs.buildPackages.makeWrapper
+    ] ++ (drv.buildTools or []);
+  }) (super.git-annex.override {
+    dbus = if pkgs.stdenv.isLinux then self.dbus else null;
+    fdo-notify = if pkgs.stdenv.isLinux then self.fdo-notify else null;
+    hinotify = if pkgs.stdenv.isLinux then self.hinotify else self.fsnotify;
+  });
 
   # The test suite has undeclared dependencies on git.
   githash = dontCheck super.githash;
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 93fb82954d570..d35033dff8fe9 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -7320,6 +7320,29 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "Glob_0_10_2" = callPackage
+    ({ mkDerivation, base, containers, directory, dlist, filepath
+     , HUnit, QuickCheck, test-framework, test-framework-hunit
+     , test-framework-quickcheck2, transformers, transformers-compat
+     }:
+     mkDerivation {
+       pname = "Glob";
+       version = "0.10.2";
+       sha256 = "1h3kh46qds4nqvixm4myy1kb5slg53f44hfn8aymrlr7hjn75xka";
+       libraryHaskellDepends = [
+         base containers directory dlist filepath transformers
+         transformers-compat
+       ];
+       testHaskellDepends = [
+         base containers directory dlist filepath HUnit QuickCheck
+         test-framework test-framework-hunit test-framework-quickcheck2
+         transformers transformers-compat
+       ];
+       description = "Globbing library";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "GlomeTrace" = callPackage
     ({ mkDerivation, array, base, GlomeVec }:
      mkDerivation {
@@ -10906,8 +10929,8 @@ self: {
        pname = "HsYAML";
        version = "0.2.1.0";
        sha256 = "10qzhsg789h37q22hm9p27dx4rhbykcbxp7p3pvkws8fr7ajgxv0";
-       revision = "2";
-       editedCabalFile = "0f7867jfzlmlqnkv3fjrzjvvfzjlvhbm10kmg7n0qk69ic8grkbc";
+       revision = "3";
+       editedCabalFile = "0qj6180459mx08v3m8x8nw2a8a7srw2q48dh4d9qgwd1rl499a5i";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -10939,6 +10962,25 @@ self: {
        license = lib.licenses.gpl2Plus;
      }) {};
 
+  "HsYAML-aeson_0_2_0_1" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, HsYAML, mtl
+     , scientific, text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "HsYAML-aeson";
+       version = "0.2.0.1";
+       sha256 = "139hqd07hkr8ykvrgmcshh9f3vp9dnrj6ks5nl8hgrpi990jsy5r";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers HsYAML mtl scientific text
+         unordered-containers vector
+       ];
+       description = "JSON to YAML Adapter";
+       license = lib.licenses.gpl2Plus;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "Hsed" = callPackage
     ({ mkDerivation, array, base, bytestring, cmdargs, data-accessor
      , data-accessor-template, data-accessor-transformers, directory
@@ -17107,6 +17149,24 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "Rattus_0_5_0_1" = callPackage
+    ({ mkDerivation, base, Cabal, containers, ghc, ghc-prim
+     , simple-affine-space, transformers
+     }:
+     mkDerivation {
+       pname = "Rattus";
+       version = "0.5.0.1";
+       sha256 = "1rj29wbhk9bn7mazhrqcgas8m7rnfcak10krimsn08v2nzw2af79";
+       setupHaskellDepends = [ base Cabal ];
+       libraryHaskellDepends = [
+         base containers ghc ghc-prim simple-affine-space transformers
+       ];
+       testHaskellDepends = [ base containers ];
+       description = "A modal FRP language";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "ReadArgs" = callPackage
     ({ mkDerivation, base, hspec, system-filepath, text }:
      mkDerivation {
@@ -17356,8 +17416,8 @@ self: {
      }:
      mkDerivation {
        pname = "RtMidi";
-       version = "0.5.0.1";
-       sha256 = "13fzqfq47zx3anpc1y9ypfa2h7bxzzj95zd7hpm3niykjrl9zadr";
+       version = "0.5.0.2";
+       sha256 = "1mlb611ilamjd884da57zy5c2jga4d5nbjy2yphnn0fcn7lzymyk";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base deepseq unliftio-core vector ];
@@ -18326,6 +18386,34 @@ self: {
        license = lib.licenses.gpl3Only;
      }) {};
 
+  "ShellCheck_0_8_0" = callPackage
+    ({ mkDerivation, aeson, array, base, bytestring, containers
+     , deepseq, Diff, directory, filepath, mtl, parsec, process
+     , QuickCheck, regex-tdfa
+     }:
+     mkDerivation {
+       pname = "ShellCheck";
+       version = "0.8.0";
+       sha256 = "05jlapp4m997w36h2wszdxz9gvczdczaylypsbn14jqpb650w232";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson array base bytestring containers deepseq Diff directory
+         filepath mtl parsec process QuickCheck regex-tdfa
+       ];
+       executableHaskellDepends = [
+         aeson array base bytestring containers deepseq Diff directory
+         filepath mtl parsec QuickCheck regex-tdfa
+       ];
+       testHaskellDepends = [
+         aeson array base bytestring containers deepseq Diff directory
+         filepath mtl parsec QuickCheck regex-tdfa
+       ];
+       description = "Shell script analysis tool";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "Shellac" = callPackage
     ({ mkDerivation, base, directory, mtl, unix }:
      mkDerivation {
@@ -20915,8 +21003,8 @@ self: {
     ({ mkDerivation, base, bytestring, transformers, vector, vulkan }:
      mkDerivation {
        pname = "VulkanMemoryAllocator";
-       version = "0.7.3";
-       sha256 = "0ff8ik1y4cxf408kwpasqrkdimh3afvjhpbsjd40zf8h3aywv10b";
+       version = "0.7.4";
+       sha256 = "0rzvishkjp4vjwc64a12knj1kr7c793ncpgf9x54l2xj6q7a9mrj";
        libraryHaskellDepends = [
          base bytestring transformers vector vulkan
        ];
@@ -21275,12 +21363,12 @@ self: {
        platforms = lib.platforms.none;
      }) {};
 
-  "Win32_2_13_0_0" = callPackage
+  "Win32_2_13_1_0" = callPackage
     ({ mkDerivation }:
      mkDerivation {
        pname = "Win32";
-       version = "2.13.0.0";
-       sha256 = "0i4ws3d7s94vv6gh3cjj9nr0l88rwx7bwjk9jk0grzvw734dd9a2";
+       version = "2.13.1.0";
+       sha256 = "1a86hmkba4gd1qqfanl06vi2r77ip53l3dcbgvjp7wlp6rjampvc";
        description = "A binding to Windows Win32 API";
        license = lib.licenses.bsd3;
        platforms = lib.platforms.none;
@@ -24104,6 +24192,25 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "ad_4_5" = callPackage
+    ({ mkDerivation, adjunctions, array, base, comonad, containers
+     , criterion, data-reify, erf, free, nats, reflection, semigroups
+     , transformers
+     }:
+     mkDerivation {
+       pname = "ad";
+       version = "4.5";
+       sha256 = "1v37ckxcav3aicv4vv7y77mmvinfwd8mxzcnm672mmxq1d29vpsc";
+       libraryHaskellDepends = [
+         adjunctions array base comonad containers data-reify erf free nats
+         reflection semigroups transformers
+       ];
+       benchmarkHaskellDepends = [ base criterion erf ];
+       description = "Automatic Differentiation";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "ad-delcont" = callPackage
     ({ mkDerivation, base, transformers }:
      mkDerivation {
@@ -26703,8 +26810,8 @@ self: {
      }:
      mkDerivation {
        pname = "algorithmic-composition-basic";
-       version = "0.4.0.0";
-       sha256 = "17kajlfr02kq82g281i1bm6x171106wyqz797p6j3iq3jxwp3x91";
+       version = "0.4.1.0";
+       sha256 = "1k5rsz1c67zzdxh56w9rr1mgnv7jmwbfn4z2ysq1ny1vgyi4m7ry";
        libraryHaskellDepends = [
          base bytestring directory foldable-ix mmsyn2-array mmsyn3 mmsyn7l
          mmsyn7ukr-common process process-sequential
@@ -30567,8 +30674,8 @@ self: {
      }:
      mkDerivation {
        pname = "ansi-terminal-game";
-       version = "1.4.0.0";
-       sha256 = "0pxkqjv6xqqyn98y2vpsyyx6n91cjsdwxpx9y636l5n3lk8iq14z";
+       version = "1.5.0.0";
+       sha256 = "161n02iywllrr49b1mzpa8lav9w41cmng7ca5vfhpxjjydd5rcbx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -32772,8 +32879,8 @@ self: {
      }:
      mkDerivation {
        pname = "arduino-copilot";
-       version = "1.5.5";
-       sha256 = "0g2zw7xngaz5xhp4zrnhrkscnyck0474mngvp2j14p87sc7qn20w";
+       version = "1.5.6";
+       sha256 = "06aqavds6lh4iazrlz62dhdxim0q8xqdgafj7y3f8nnmv8w37g41";
        libraryHaskellDepends = [
          base containers copilot copilot-c99 copilot-language directory
          filepath mtl optparse-applicative temporary
@@ -32849,8 +32956,8 @@ self: {
      }:
      mkDerivation {
        pname = "argo";
-       version = "0.2021.11.2";
-       sha256 = "1jlh8m03ncwx5pckdbi6c620xc45pg1phspp0cmvqgrvy6wkiyjz";
+       version = "0.2021.11.7";
+       sha256 = "1lmx938ydl94rmzifk5jbgmfx0p64chkl7dfp1rfxwvbmlp1aydy";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -34541,6 +34648,8 @@ self: {
        pname = "async";
        version = "2.2.4";
        sha256 = "09d7w3krfhnmf9dp6yffa9wykinhw541wibnjgnlyv77w1dzhka8";
+       revision = "1";
+       editedCabalFile = "1w3hlcaq444qid3iqizb8sdl08jxwjmcfgfxqs2dw81mllsfqgdq";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base hashable stm ];
@@ -38262,11 +38371,11 @@ self: {
     ({ mkDerivation, base, hspec, HUnit, QuickCheck, time }:
      mkDerivation {
        pname = "bank-holiday-usa";
-       version = "0.1.1";
-       sha256 = "12s473bjbv5wgsxwi5vf6ffh9z72dw7fbnih0i9ifry8kim4pgaz";
+       version = "0.2.0";
+       sha256 = "03zh4cg7sghryb1d06szvn69c5lsbmsg068j00xbpk3w4xrgphjk";
        libraryHaskellDepends = [ base time ];
        testHaskellDepends = [ base hspec HUnit QuickCheck time ];
-       description = "A library for determining US bank holidays";
+       description = "US bank holidays";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
        broken = true;
@@ -38342,6 +38451,8 @@ self: {
        pname = "barbies-th";
        version = "0.1.9";
        sha256 = "1brikm7qr2yi3426vgwjjxjrvw060sb0v7jbxrhazjps28f6aa3n";
+       revision = "1";
+       editedCabalFile = "0iij1y72q28wvj8hfx000cpckl1wlcgj050380lx526cmwavy151";
        libraryHaskellDepends = [ barbies base split template-haskell ];
        testHaskellDepends = [ barbies base ];
        description = "Create strippable HKD via TH";
@@ -40044,6 +40155,35 @@ self: {
        broken = true;
      }) {};
 
+  "bech32_1_1_2" = callPackage
+    ({ mkDerivation, array, base, base58-bytestring, bytestring
+     , containers, deepseq, extra, hspec, hspec-discover, memory
+     , optparse-applicative, process, QuickCheck, text, vector
+     }:
+     mkDerivation {
+       pname = "bech32";
+       version = "1.1.2";
+       sha256 = "1iyjnyy7l0jf2azbgg6lc5k7n25h1r41fyyqfagyaz79vhi1k7j8";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array base bytestring containers extra text
+       ];
+       executableHaskellDepends = [
+         base base58-bytestring bytestring extra memory optparse-applicative
+         text
+       ];
+       testHaskellDepends = [
+         base base58-bytestring bytestring containers deepseq extra hspec
+         memory process QuickCheck text vector
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Implementation of the Bech32 cryptocurrency address format (BIP 0173)";
+       license = lib.licenses.asl20;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "bech32-th" = callPackage
     ({ mkDerivation, base, bech32, hspec, hspec-discover
      , template-haskell, text
@@ -42968,8 +43108,8 @@ self: {
      }:
      mkDerivation {
        pname = "bishbosh";
-       version = "0.1.1.0";
-       sha256 = "0raryshzgahldn03dzpin6hi9vyq4w81dxgmgcq34z7h2salia5m";
+       version = "0.1.2.0";
+       sha256 = "1ldzl2f93nqaxs9wbf3s9w8wjrx1fx69w95y5fz7rla7szhrckdq";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -43511,6 +43651,18 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "bits_0_6" = callPackage
+    ({ mkDerivation, base, bytes, mtl, transformers }:
+     mkDerivation {
+       pname = "bits";
+       version = "0.6";
+       sha256 = "18s2aa99cwcshcws2zl2ll7xgqn9dpznpkv1nplamc9h4vmqqs93";
+       libraryHaskellDepends = [ base bytes mtl transformers ];
+       description = "Various bit twiddling and bitwise serialization primitives";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "bits-atomic" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -44846,6 +44998,8 @@ self: {
        pname = "bloomfilter";
        version = "2.0.1.0";
        sha256 = "03vrmncg1c10a2wcg5skq30m1yiknn7nwxz2gblyyfaxglshspkc";
+       revision = "1";
+       editedCabalFile = "1dqlwmmcy7s6gsjqcm4xhk3cgbam0hyzpry2ha4064xvdb4rlks3";
        libraryHaskellDepends = [ array base bytestring deepseq ];
        testHaskellDepends = [
          base bytestring QuickCheck random test-framework
@@ -46002,6 +46156,31 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "bound_2_0_4" = callPackage
+    ({ mkDerivation, base, bifunctors, binary, bytes, cereal, comonad
+     , deepseq, deriving-compat, hashable, mmorph, profunctors
+     , template-haskell, th-abstraction, transformers
+     , transformers-compat, vector, void
+     }:
+     mkDerivation {
+       pname = "bound";
+       version = "2.0.4";
+       sha256 = "06wyjiswi5fnnw7ndjdln3fkfgab5c8qh9v1d1s0f0s6rzlb85xs";
+       revision = "1";
+       editedCabalFile = "008i9lm53p0vwahrl61lfpv33yjchi6jyby7j37rlw9shr4h06qg";
+       libraryHaskellDepends = [
+         base bifunctors binary bytes cereal comonad deepseq hashable mmorph
+         profunctors template-haskell th-abstraction transformers
+         transformers-compat
+       ];
+       testHaskellDepends = [
+         base deriving-compat transformers transformers-compat vector void
+       ];
+       description = "Making de Bruijn Succ Less";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "bound-extras" = callPackage
     ({ mkDerivation, base, bound, containers, deepseq, filepath
      , hashable, pretty, tasty, tasty-golden, text-short, transformers
@@ -48208,6 +48387,8 @@ self: {
        pname = "bytes";
        version = "0.17.1";
        sha256 = "1qmps8vvg98wfm9xm734hwzi56bsk8r1zc6vx20rlhc79krv5s9s";
+       revision = "2";
+       editedCabalFile = "1gayyk4sgd8r48x2cgil8392wlxir0qq059m5k966jrwrqdqg2m4";
        libraryHaskellDepends = [
          base binary binary-orphans bytestring cereal containers hashable
          mtl scientific text time transformers transformers-compat
@@ -49468,6 +49649,18 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "cabal-doctest_1_0_9" = callPackage
+    ({ mkDerivation, base, Cabal, directory, filepath }:
+     mkDerivation {
+       pname = "cabal-doctest";
+       version = "1.0.9";
+       sha256 = "0wxs0xkspc80h0g8ks792lrzldxvcnhc9rja1j0k678ijs20hmjm";
+       libraryHaskellDepends = [ base Cabal directory filepath ];
+       description = "A Setup.hs helper for running doctests";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "cabal-edit" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, directory
      , filepath, Glob, hackage-db, optparse-applicative, process, store
@@ -52605,8 +52798,8 @@ self: {
        pname = "cassava";
        version = "0.5.2.0";
        sha256 = "01h1zrdqb313cjd4rqm1107azzx4czqi018c2djf66a5i7ajl3dk";
-       revision = "4";
-       editedCabalFile = "19rkq41r5vj8drnj850b1wqnc54mxpw0x5z54brq0nvyww5f8ai8";
+       revision = "5";
+       editedCabalFile = "0d2zfs9a5rzljaz2dr47rypsj7aamgsfqn0gs0pwjhkwi8p1504y";
        configureFlags = [ "-f-bytestring--lt-0_10_4" ];
        libraryHaskellDepends = [
          array attoparsec base bytestring containers deepseq hashable Only
@@ -53492,27 +53685,6 @@ self: {
      }:
      mkDerivation {
        pname = "cereal";
-       version = "0.5.8.1";
-       sha256 = "1mqvd1iwzr50az4y24332x3g3wsrzw8j1iwph02vr7jbjfn8i7id";
-       revision = "1";
-       editedCabalFile = "02v1nivac478nzzykjbq3rawnqskxjc4sb54m6s5jcgbigfnb2x0";
-       libraryHaskellDepends = [
-         array base bytestring containers ghc-prim
-       ];
-       testHaskellDepends = [
-         base bytestring QuickCheck test-framework
-         test-framework-quickcheck2
-       ];
-       description = "A binary serialization library";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "cereal_0_5_8_2" = callPackage
-    ({ mkDerivation, array, base, bytestring, containers, ghc-prim
-     , QuickCheck, test-framework, test-framework-quickcheck2
-     }:
-     mkDerivation {
-       pname = "cereal";
        version = "0.5.8.2";
        sha256 = "0kvnlm22qdmb7g2jz7imsvh799q4nvms1ni0cbba5vigp5ai64hp";
        libraryHaskellDepends = [
@@ -53524,7 +53696,6 @@ self: {
        ];
        description = "A binary serialization library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "cereal-conduit" = callPackage
@@ -54011,47 +54182,40 @@ self: {
      }) {};
 
   "chakra" = callPackage
-    ({ mkDerivation, aeson, ansi-terminal, base, bytestring, cryptonite
-     , data-default, data-has, dotenv, envy, fast-logger, hspec
-     , http-types, iproute, jose, lens, mtl, network, network-uri
-     , options, optparse-simple, prometheus-client
+    ({ mkDerivation, aeson, base, bytestring, cryptonite, data-default
+     , data-has, dotenv, envy, fast-logger, hspec, http-types, iproute
+     , jose, network, network-uri, optparse-simple, prometheus-client
      , prometheus-metrics-ghc, rio, servant-auth, servant-auth-server
-     , servant-server, streaming-commons, string-conversions, text, time
-     , transformers, unordered-containers, wai, wai-cli, wai-extra
-     , wai-middleware-prometheus, warp
+     , servant-server, transformers, unordered-containers, wai, wai-cli
+     , wai-extra, wai-middleware-prometheus, warp
      }:
      mkDerivation {
        pname = "chakra";
-       version = "0.1.0";
-       sha256 = "00ygnyvif8z8x9xasa3s9yahsawdmkjg43afczd5i0p3clfg6385";
+       version = "0.1.2";
+       sha256 = "0fnq9djvsphnrmlds97mjw9idp2s448vqbk1lhj3m6bfhsdx5mdr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson ansi-terminal base bytestring cryptonite data-default
-         data-has dotenv envy fast-logger http-types iproute jose lens mtl
-         network network-uri options prometheus-client
-         prometheus-metrics-ghc rio servant-auth servant-auth-server
-         servant-server streaming-commons string-conversions text time
-         transformers unordered-containers wai wai-cli wai-extra
-         wai-middleware-prometheus warp
+         aeson base bytestring cryptonite data-default data-has envy
+         fast-logger http-types iproute jose network network-uri
+         prometheus-client prometheus-metrics-ghc rio servant-auth
+         servant-auth-server servant-server transformers wai wai-cli
+         wai-extra wai-middleware-prometheus warp
        ];
        executableHaskellDepends = [
-         aeson ansi-terminal base bytestring cryptonite data-default
-         data-has dotenv envy fast-logger http-types iproute jose lens mtl
-         network network-uri options optparse-simple prometheus-client
-         prometheus-metrics-ghc rio servant-auth servant-auth-server
-         servant-server streaming-commons string-conversions text time
-         transformers unordered-containers wai wai-cli wai-extra
+         aeson base bytestring cryptonite data-default data-has dotenv envy
+         fast-logger http-types iproute jose network network-uri
+         optparse-simple prometheus-client prometheus-metrics-ghc rio
+         servant-auth servant-auth-server servant-server transformers
+         unordered-containers wai wai-cli wai-extra
          wai-middleware-prometheus warp
        ];
        testHaskellDepends = [
-         aeson ansi-terminal base bytestring cryptonite data-default
-         data-has dotenv envy fast-logger hspec http-types iproute jose lens
-         mtl network network-uri options prometheus-client
-         prometheus-metrics-ghc rio servant-auth servant-auth-server
-         servant-server streaming-commons string-conversions text time
-         transformers unordered-containers wai wai-cli wai-extra
-         wai-middleware-prometheus warp
+         aeson base bytestring cryptonite data-default data-has envy
+         fast-logger hspec http-types iproute jose network network-uri
+         prometheus-client prometheus-metrics-ghc rio servant-auth
+         servant-auth-server servant-server transformers wai wai-cli
+         wai-extra wai-middleware-prometheus warp
        ];
        description = "A REST Web Api server template for building (micro)services";
        license = lib.licenses.mit;
@@ -56734,6 +56898,8 @@ self: {
        pname = "classy-prelude";
        version = "1.5.0";
        sha256 = "1nm4lygxqb1wq503maki6dsah2gpn5rd22jmbwjxfwyzgyqy9fnk";
+       revision = "1";
+       editedCabalFile = "1jivh1bmcvqn6bhh5z8x69v93zjcriklljm7gx342d8k5d5rsf4s";
        libraryHaskellDepends = [
          async base basic-prelude bifunctors bytestring chunked-data
          containers deepseq dlist ghc-prim hashable mono-traversable
@@ -63848,6 +64014,27 @@ self: {
        pname = "constraints";
        version = "0.13.1";
        sha256 = "0j10sn0i1pk0dsxnf728v0mjg9bcxblkhd8f4fm8rgi32v2sby6k";
+       revision = "1";
+       editedCabalFile = "115n8pqc26gqxgvvf4h4y1wkf3gw6nb3jfjfmdb4svlnk4jlyjm9";
+       libraryHaskellDepends = [
+         base binary deepseq ghc-prim hashable mtl transformers
+         transformers-compat type-equality
+       ];
+       testHaskellDepends = [ base hspec ];
+       testToolDepends = [ hspec-discover ];
+       description = "Constraint manipulation";
+       license = lib.licenses.bsd2;
+     }) {};
+
+  "constraints_0_13_2" = callPackage
+    ({ mkDerivation, base, binary, deepseq, ghc-prim, hashable, hspec
+     , hspec-discover, mtl, transformers, transformers-compat
+     , type-equality
+     }:
+     mkDerivation {
+       pname = "constraints";
+       version = "0.13.2";
+       sha256 = "1zfijh3jpdfrh8nwn5xv2z05jnxyf0ciqlfaja6g6ls654svrj70";
        libraryHaskellDepends = [
          base binary deepseq ghc-prim hashable mtl transformers
          transformers-compat type-equality
@@ -63856,6 +64043,7 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Constraint manipulation";
        license = lib.licenses.bsd2;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "constraints-deriving" = callPackage
@@ -63952,8 +64140,8 @@ self: {
      }:
      mkDerivation {
        pname = "constructible";
-       version = "0.1.1";
-       sha256 = "19g62i3cv39fww55xcayrzh1v7flghg43ygj41g9cq6qsbq345wr";
+       version = "0.1.2";
+       sha256 = "1fdxbw33rjyh0gmknzng8sl8gcbz99ib3ks5rq3kjvqn4ibmyqpf";
        libraryHaskellDepends = [
          base binary-search complex-generic integer-roots
        ];
@@ -65017,8 +65205,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot";
-       version = "3.5";
-       sha256 = "1cia936fm14bzkd8qh8g8zri2lfx7n0jfbjqiqwpwhpgmxvfhznj";
+       version = "3.6";
+       sha256 = "0h43slh084wj7kwn2rdn0s63pqzy930h6z2vk38kn6yqic8d9s9y";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -65037,14 +65225,15 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-c99";
-       version = "3.5";
-       sha256 = "1svcshxqrqp9m7pj7k77vfxzmzkanj0zyjq4ry985zzhcqgzcank";
+       version = "3.6";
+       sha256 = "18p7pijx2f7bw61bzfs5994xpkygghf7hvwpklhp72jkshjdjj1m";
        libraryHaskellDepends = [
          base containers copilot-core directory filepath language-c99
          language-c99-simple language-c99-util mtl pretty
        ];
        description = "A compiler for Copilot targeting C99";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "copilot-cbmc" = callPackage
@@ -65065,14 +65254,22 @@ self: {
      }) {};
 
   "copilot-core" = callPackage
-    ({ mkDerivation, base, dlist, mtl, pretty }:
+    ({ mkDerivation, base, dlist, HUnit, mtl, pretty, QuickCheck
+     , test-framework, test-framework-hunit, test-framework-quickcheck2
+     }:
      mkDerivation {
        pname = "copilot-core";
-       version = "3.5";
-       sha256 = "0i5jj4hzk0gqsjx24xswjna9cdwxbyv5hln5jsmhdhgw05c4z5g4";
+       version = "3.6";
+       sha256 = "00v8la4q15qj27wyqcbsv0h7m5k5ln98y4zkdzpng3z5gw4mpkm9";
        libraryHaskellDepends = [ base dlist mtl pretty ];
+       testHaskellDepends = [
+         base HUnit pretty QuickCheck test-framework test-framework-hunit
+         test-framework-quickcheck2
+       ];
        description = "An intermediate representation for Copilot";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "copilot-language" = callPackage
@@ -65081,8 +65278,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-language";
-       version = "3.5";
-       sha256 = "0s1yn4la8pbdwlcfrlx79031anagp235dbapm3c715mv67dgcs2b";
+       version = "3.6";
+       sha256 = "0b1cl4v5w54nx007mmnsx49hh3zxjm55ninlzkd78balnyah8nlk";
        libraryHaskellDepends = [
          array base containers copilot-core copilot-theorem data-reify mtl
        ];
@@ -65097,8 +65294,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-libraries";
-       version = "3.5";
-       sha256 = "1glz1x00abyavyca7kz19ji7jipl5fjxwqi47mql4b3wr9ksc0y4";
+       version = "3.6";
+       sha256 = "0s6y1is91nbvlrb9fdp9xhaq9wx3j5pm67gjrlajiik4029a2dxd";
        libraryHaskellDepends = [
          array base containers copilot-language data-reify mtl parsec
        ];
@@ -65132,8 +65329,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-theorem";
-       version = "3.5";
-       sha256 = "0cb22695jp502iilyjkfhr8lzl97rdrpjvs9fbknrr0zbwn1m7p9";
+       version = "3.6";
+       sha256 = "17l8xq4zd9jfih5p21l6xkahdgrfbmpy8wxc38w88w98qmz5ix59";
        libraryHaskellDepends = [
          ansi-terminal base bimap bv-sized containers copilot-core
          data-default directory filepath libBF mtl panic parameterized-utils
@@ -65296,7 +65493,7 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "core-program_0_3_4_0" = callPackage
+  "core-program_0_3_4_1" = callPackage
     ({ mkDerivation, async, base, bytestring, chronologique, core-data
      , core-text, directory, exceptions, filepath, fsnotify, hashable
      , hourglass, mtl, prettyprinter, safe-exceptions, stm
@@ -65305,8 +65502,8 @@ self: {
      }:
      mkDerivation {
        pname = "core-program";
-       version = "0.3.4.0";
-       sha256 = "079wiijdgr2vy7i8n4590p0rfakrmsxk4vx50dg992r2gfjlfzfa";
+       version = "0.3.4.1";
+       sha256 = "01yk1dyr6z1g541v0y7cpnilbnqwvcn5si38r8flzq35svrk1bjn";
        libraryHaskellDepends = [
          async base bytestring chronologique core-data core-text directory
          exceptions filepath fsnotify hashable hourglass mtl prettyprinter
@@ -69285,6 +69482,19 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "czipwith_1_0_1_4" = callPackage
+    ({ mkDerivation, base, template-haskell, transformers }:
+     mkDerivation {
+       pname = "czipwith";
+       version = "1.0.1.4";
+       sha256 = "0zvi7wmbh09ngbyvavvhn6s3vz1pnps59fl1sq3vih6s03s0zmai";
+       libraryHaskellDepends = [ base template-haskell ];
+       testHaskellDepends = [ base transformers ];
+       description = "CZipWith class and deriving via TH";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "d-bus" = callPackage
     ({ mkDerivation, async, attoparsec, base, binary, blaze-builder
      , bytestring, conduit, conduit-extra, containers
@@ -73488,14 +73698,14 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
-  "deepseq_1_4_5_0" = callPackage
+  "deepseq_1_4_6_0" = callPackage
     ({ mkDerivation, array, base, ghc-prim, HUnit, test-framework
      , test-framework-hunit
      }:
      mkDerivation {
        pname = "deepseq";
-       version = "1.4.5.0";
-       sha256 = "0d3yw95xkyx7wwx3anfj1fqb10080xykqic483xpl7rvi1mik6js";
+       version = "1.4.6.0";
+       sha256 = "0j6pxm9q3xanhxrdmxgzkfdlnpilnlvnnvazq61szl1q9d3mn6ql";
        libraryHaskellDepends = [ array base ];
        testHaskellDepends = [
          array base ghc-prim HUnit test-framework test-framework-hunit
@@ -74132,16 +74342,14 @@ self: {
 
   "dependent-literals" = callPackage
     ({ mkDerivation, base, fin-int, numeric-kinds, sint, snumber
-     , tagged, wrapped
+     , tagged, type-compare, wrapped
      }:
      mkDerivation {
        pname = "dependent-literals";
-       version = "0.1.1.0";
-       sha256 = "0dw2xc5l8cmhsmr2akyyhyfj8m3qx02pz81fn52ii9mkhzs6rcjb";
-       revision = "5";
-       editedCabalFile = "1z2afnvgdkw6swvc1mavd8rzqcq1s124n0j13n7zd9pcjha9i4nb";
+       version = "0.2.0";
+       sha256 = "1i3mzijqk2pf7am9kh1ydhrw9qj1ijfq8kwvxhrqcx28kaz63rvd";
        libraryHaskellDepends = [
-         base fin-int numeric-kinds sint snumber tagged wrapped
+         base fin-int numeric-kinds sint snumber tagged type-compare wrapped
        ];
        description = "Library for dependent-literals-plugin";
        license = lib.licenses.asl20;
@@ -74153,10 +74361,8 @@ self: {
      }:
      mkDerivation {
        pname = "dependent-literals-plugin";
-       version = "0.1.0.1";
-       sha256 = "1rpjlcv3g150rcmxidn48n25xxv2ghdz4x9jnap1swkz0fb10i3a";
-       revision = "4";
-       editedCabalFile = "1330hiqvcvl73y8pd3wpsqicvysl8l0mizkr8my7a628fwh6018p";
+       version = "0.1.0.2";
+       sha256 = "0bllcf19psak7sfhlqh78lbrdgx3ylqislrvdhjc9syvhaw5khq1";
        libraryHaskellDepends = [ base ghc syb ];
        testHaskellDepends = [
          base dependent-literals fin-int numeric-kinds short-vec sint
@@ -74637,6 +74843,19 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "deriving-aeson_0_2_8" = callPackage
+    ({ mkDerivation, aeson, base, bytestring }:
+     mkDerivation {
+       pname = "deriving-aeson";
+       version = "0.2.8";
+       sha256 = "0f59ar4cax7g0h6wrk8ckni7i4gw5wls5ybzbrji2a0qpd7q5lrd";
+       libraryHaskellDepends = [ aeson base ];
+       testHaskellDepends = [ aeson base bytestring ];
+       description = "Type driven generic aeson instance customisation";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "deriving-compat" = callPackage
     ({ mkDerivation, base, base-compat, base-orphans, containers
      , ghc-boot-th, ghc-prim, hspec, hspec-discover, QuickCheck, tagged
@@ -75339,8 +75558,8 @@ self: {
        pname = "dhall";
        version = "1.40.1";
        sha256 = "0m2fw9ak9l6fz8ylpbi0cdihf2j66jlnd5j3vf56r7wlqgbkxhi1";
-       revision = "2";
-       editedCabalFile = "0vywq222wyy8rs4114d0pq70yji7xh440i0ilqbmfywjfj2gm1pj";
+       revision = "5";
+       editedCabalFile = "1dp9byzmjd2kvydc0q5s3mv59a131jqwhc9cl22jgbhp0whq9jgc";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -75710,8 +75929,8 @@ self: {
        pname = "dhall-nixpkgs";
        version = "1.0.6";
        sha256 = "12sfxz7n86m69m1xbnrrr1ybggh70rfwmr4maflq522bhkc2hgvk";
-       revision = "1";
-       editedCabalFile = "0xy1g9ab355mdkcq30z091rr33sfw98jqjldmawrcq0yxb2gb2s6";
+       revision = "2";
+       editedCabalFile = "13i04l52jb8xyhqa48r8rlr0d4p657aarfhsxm407ziph5pi60vk";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -75733,8 +75952,8 @@ self: {
        pname = "dhall-openapi";
        version = "1.0.2";
        sha256 = "1p678nn1gfj2xp0kmw8i5pzsv6s5bpnsmyng45adb9pnpiyxbcyj";
-       revision = "1";
-       editedCabalFile = "1mbl9ximmblz1cdm07sk8lwsxdxknhlipx91amd155xpqs72i8jg";
+       revision = "2";
+       editedCabalFile = "0gkxzfadkpz4dcmcfbyf66s2xa656lf2vw0n282qnc1rsy74ra85";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -75885,6 +76104,8 @@ self: {
        pname = "dhall-yaml";
        version = "1.2.8";
        sha256 = "1p766ybwib3f2i5h7m1hh71vc255ahvf7237bpprdapqw3ag8nak";
+       revision = "1";
+       editedCabalFile = "06jr2b5zj82zcsq7dp6d8v9rfarkpqkp6m1s61d76vlzv9kc2pp2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -76310,10 +76531,8 @@ self: {
      }:
      mkDerivation {
        pname = "diagrams-haddock";
-       version = "0.4.1";
-       sha256 = "0p978saxsfad6d8wkjnp6i300cf58ps02yw7a1zzhjfgk5ih2qlb";
-       revision = "1";
-       editedCabalFile = "063j6drlybzbm6bf9yfix86hs3hvgb98sgh4rzgrqkq9kvarj2ij";
+       version = "0.4.1.1";
+       sha256 = "1azc42pr0hb5qamgf8i0kpkvpzxqlgc9npmi21sxnsw66bnzxw7i";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -80053,7 +80272,7 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "doctest_0_18_1" = callPackage
+  "doctest_0_18_2" = callPackage
     ({ mkDerivation, base, base-compat, code-page, deepseq, directory
      , exceptions, filepath, ghc, ghc-paths, hspec, hspec-core, HUnit
      , mockery, process, QuickCheck, setenv, silently, stringbuilder
@@ -80061,8 +80280,8 @@ self: {
      }:
      mkDerivation {
        pname = "doctest";
-       version = "0.18.1";
-       sha256 = "07w77cik8p3kpcl5vx4l3cr93r1dhk3wc98k1g50l9pby5argrzb";
+       version = "0.18.2";
+       sha256 = "0c48dpxa8i3q5xh2shd2p2xxhrsy7wdil6dg4mayr3lkk1dlwbfp";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -80137,6 +80356,8 @@ self: {
        pname = "doctest-driver-gen";
        version = "0.3.0.4";
        sha256 = "1fbqi4s4ajxhyv4a7nbh3v98limla0z8rfqlh02pwc1a90qpwy1a";
+       revision = "1";
+       editedCabalFile = "19xaynf2zzrvls6l57jzzxp3862d0d2q43amsgsch5ri8479m4dn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base ];
@@ -88762,23 +88983,11 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "exact-combinatorics";
-       version = "0.2.0.10";
-       sha256 = "08xdn2dl9r1zkphm9ja3lp4qin9cn889q184lsmk432icbvw5r2h";
-       libraryHaskellDepends = [ base ];
-       description = "Efficient exact computation of combinatoric functions";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "exact-combinatorics_0_2_0_11" = callPackage
-    ({ mkDerivation, base }:
-     mkDerivation {
-       pname = "exact-combinatorics";
        version = "0.2.0.11";
        sha256 = "0qrhgd468ljpnfciaxzimmn1rhvapcrrsy4wb2r08hn3vjflmd3n";
        libraryHaskellDepends = [ base ];
        description = "Efficient exact computation of combinatoric functions";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "exact-cover" = callPackage
@@ -90399,8 +90608,8 @@ self: {
      }:
      mkDerivation {
        pname = "extralife";
-       version = "0.1.1.0";
-       sha256 = "0kw5lqfldncl1ci6x6izgs16hl0brrlaxin2yis279a5q4kh8xpz";
+       version = "0.2.0.0";
+       sha256 = "0bpaz123qg91rw4b97p528w4l7wbb17x4h61dmy1v2sr01l82q58";
        libraryHaskellDepends = [
          aeson base bytestring http-client http-client-tls text time
        ];
@@ -97526,14 +97735,15 @@ self: {
      , http-link-header, http-types, immortal, iproute, lens, lens-aeson
      , load-env, monad-control, monad-logger, MonadRandom, mtl, network
      , network-uri, persistent, persistent-postgresql, postgresql-simple
-     , primitive, process, resource-pool, retry, rio, temporary, text
-     , time, transformers, transformers-base, unliftio, unliftio-core
-     , unordered-containers, wai, wai-extra, yaml, yesod, yesod-core
+     , primitive, process, resource-pool, retry, rio, template-haskell
+     , temporary, text, time, transformers, transformers-base, unliftio
+     , unliftio-core, unordered-containers, wai, wai-extra, yaml, yesod
+     , yesod-core
      }:
      mkDerivation {
        pname = "freckle-app";
-       version = "1.0.1.0";
-       sha256 = "1lak6iyid14wxydzs77jlwrayrwcg3n4favrf3qf3yd46306a2f3";
+       version = "1.0.2.0";
+       sha256 = "060yspa1qb0qp7yf7s71pfkq6jdd7bn9xy5kll45d8rvjazf10y6";
        libraryHaskellDepends = [
          aeson ansi-terminal base bytestring case-insensitive conduit
          data-default datadog doctest ekg-core errors exceptions fast-logger
@@ -97542,9 +97752,9 @@ self: {
          http-types immortal iproute lens load-env monad-control
          monad-logger MonadRandom mtl network network-uri persistent
          persistent-postgresql postgresql-simple primitive process
-         resource-pool retry rio text time transformers transformers-base
-         unliftio unliftio-core unordered-containers wai wai-extra yaml
-         yesod yesod-core
+         resource-pool retry rio template-haskell text time transformers
+         transformers-base unliftio unliftio-core unordered-containers wai
+         wai-extra yaml yesod yesod-core
        ];
        testHaskellDepends = [
          aeson base bytestring directory hspec http-types lens lens-aeson
@@ -101431,24 +101641,6 @@ self: {
      }:
      mkDerivation {
        pname = "generic-aeson";
-       version = "0.2.0.12";
-       sha256 = "17br2dl9gd2hyflgp0fzqs5ghp4my4l234pjfvvnhk9n4szxzcr3";
-       revision = "1";
-       editedCabalFile = "0nd40p8iqr6bk7py9rblpis2s8i4p5wgg6kfp607mpp4y17xq1dr";
-       libraryHaskellDepends = [
-         aeson attoparsec base generic-deriving mtl tagged text
-         unordered-containers vector
-       ];
-       description = "Derivation of Aeson instances using GHC generics";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "generic-aeson_0_2_0_13" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, generic-deriving, mtl
-     , tagged, text, unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "generic-aeson";
        version = "0.2.0.13";
        sha256 = "0w5xp1rfg3r90ja1f0s48i4x7yyynfv52p6b9ncsdqyrq3y9qvl0";
        libraryHaskellDepends = [
@@ -101457,7 +101649,6 @@ self: {
        ];
        description = "Derivation of Aeson instances using GHC generics";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "generic-arbitrary" = callPackage
@@ -101915,6 +102106,8 @@ self: {
        pname = "generic-random";
        version = "1.4.0.0";
        sha256 = "12rvb1dzrfjc46n9vdcw3yv773iih8vwhrac3hpzq70yp2z77jdw";
+       revision = "1";
+       editedCabalFile = "0k8hk2fpm53x5788nvqy8pd1vgpdwidbz5syryf8imhqqq0837w1";
        libraryHaskellDepends = [ base QuickCheck ];
        testHaskellDepends = [ base deepseq QuickCheck ];
        description = "Generic random generators for QuickCheck";
@@ -101927,6 +102120,8 @@ self: {
        pname = "generic-random";
        version = "1.5.0.0";
        sha256 = "033cs5vkx57ny035ngndhg3n32jbzyp98li9559gyiz8glp79pzg";
+       revision = "1";
+       editedCabalFile = "0p0im7py1hrarad8pg5vcggz52d702p749nvx3h5glcygzlag14v";
        libraryHaskellDepends = [ base QuickCheck ];
        testHaskellDepends = [ base deepseq QuickCheck ];
        description = "Generic random generators for QuickCheck";
@@ -104932,6 +105127,32 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "ghc-typelits-presburger_0_6_1_0" = callPackage
+    ({ mkDerivation, base, containers, equational-reasoning, ghc
+     , ghc-tcplugins-extra, mtl, pretty, reflection, syb, tasty
+     , tasty-discover, tasty-expected-failure, tasty-hunit, text
+     , transformers
+     }:
+     mkDerivation {
+       pname = "ghc-typelits-presburger";
+       version = "0.6.1.0";
+       sha256 = "1k9mh0w1xaz85jkdvwm5pxkqzwzrjmhzn1sj2nmilhbnhgfwm9vd";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers ghc ghc-tcplugins-extra mtl pretty reflection syb
+         transformers
+       ];
+       testHaskellDepends = [
+         base equational-reasoning tasty tasty-discover
+         tasty-expected-failure tasty-hunit text
+       ];
+       testToolDepends = [ tasty-discover ];
+       description = "Presburger Arithmetic Solver for GHC Type-level natural numbers";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "ghc-usage" = callPackage
     ({ mkDerivation, base, containers, ghc, ghc-paths, unix }:
      mkDerivation {
@@ -107369,8 +107590,8 @@ self: {
      }:
      mkDerivation {
        pname = "git-lfs";
-       version = "1.1.2";
-       sha256 = "1kfrlpq54s5z84l5sk19vmvlqrybnyqg2nwgh452bdh13z67scmw";
+       version = "1.2.0";
+       sha256 = "1iv3s1c7gwmsima9z3rsphjligpnf7h3vc5c96zgq9b71cx81lba";
        libraryHaskellDepends = [
          aeson base bytestring case-insensitive containers http-client
          http-types network-uri text
@@ -113897,6 +114118,29 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "greskell_1_2_0_2" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, doctest, doctest-discover
+     , exceptions, greskell-core, hashable, hint, hspec, hspec-discover
+     , semigroups, text, transformers, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "greskell";
+       version = "1.2.0.2";
+       sha256 = "0zqxln8gcjb3i88b9x156rv3v4d0zlrkca11w1bmbjly8zpgrl4x";
+       libraryHaskellDepends = [
+         aeson base exceptions greskell-core hashable semigroups text
+         transformers unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring doctest doctest-discover greskell-core hint
+         hspec text unordered-containers
+       ];
+       testToolDepends = [ doctest-discover hspec-discover ];
+       description = "Haskell binding for Gremlin graph query language";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "greskell-core" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, doctest
      , doctest-discover, hashable, hspec, hspec-discover, QuickCheck
@@ -113919,6 +114163,29 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "greskell-core_0_1_3_7" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, doctest
+     , doctest-discover, hashable, hspec, hspec-discover, QuickCheck
+     , scientific, semigroups, text, unordered-containers, uuid, vector
+     }:
+     mkDerivation {
+       pname = "greskell-core";
+       version = "0.1.3.7";
+       sha256 = "1lffgrc4q9iwfdgn7qfxyhk459x47fl2fg6rvgqr4jqz1xp7x9cy";
+       libraryHaskellDepends = [
+         aeson base containers hashable scientific semigroups text
+         unordered-containers uuid vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring doctest doctest-discover hspec QuickCheck
+         text unordered-containers vector
+       ];
+       testToolDepends = [ doctest-discover hspec-discover ];
+       description = "Haskell binding for Gremlin graph query language - core data types and tools";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "greskell-websocket" = callPackage
     ({ mkDerivation, aeson, async, base, base64-bytestring, bytestring
      , greskell-core, hashtables, hspec, safe-exceptions, stm, text
@@ -113941,6 +114208,30 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "greskell-websocket_0_1_2_6" = callPackage
+    ({ mkDerivation, aeson, async, base, base64-bytestring, bytestring
+     , greskell-core, hashtables, hspec, hspec-discover, safe-exceptions
+     , stm, text, unordered-containers, uuid, vector, websockets
+     }:
+     mkDerivation {
+       pname = "greskell-websocket";
+       version = "0.1.2.6";
+       sha256 = "1wjfvx25k603ymsalvgzrpnyw20mliky5mclrx6caxqyh0plqdak";
+       libraryHaskellDepends = [
+         aeson async base base64-bytestring bytestring greskell-core
+         hashtables safe-exceptions stm text unordered-containers uuid
+         vector websockets
+       ];
+       testHaskellDepends = [
+         aeson base bytestring greskell-core hspec unordered-containers uuid
+         vector
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Haskell client for Gremlin Server using WebSocket serializer";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "grid" = callPackage
     ({ mkDerivation, base, containers, QuickCheck, test-framework
      , test-framework-quickcheck2
@@ -117210,36 +117501,36 @@ self: {
 
   "hadolint" = callPackage
     ({ mkDerivation, aeson, base, bytestring, Cabal, colourista
-     , containers, cryptonite, deepseq, directory, email-validate
-     , filepath, foldl, gitrev, hspec, HsYAML, HUnit, ilist
-     , language-docker, megaparsec, mtl, network-uri
-     , optparse-applicative, parallel, parsec, semver, ShellCheck, spdx
-     , split, text, time, timerep, void
+     , containers, cryptonite, data-default, deepseq, directory
+     , email-validate, filepath, foldl, gitrev, hspec, HsYAML, HUnit
+     , ilist, language-docker, megaparsec, mtl, network-uri
+     , optparse-applicative, parallel, parsec, prettyprinter, semver
+     , ShellCheck, silently, spdx, split, text, time, timerep, void
      }:
      mkDerivation {
        pname = "hadolint";
-       version = "2.7.0";
-       sha256 = "11jpqx6i7qbg4yjh8rbdz7zqjmp9r9ch9z299h72af48wrwr16fl";
+       version = "2.8.0";
+       sha256 = "07dqm4jcglshwqyvp17773xd07bhk5mdybn4ax5ff4xrvg4pj9ah";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson base bytestring Cabal colourista containers cryptonite
-         deepseq directory email-validate filepath foldl HsYAML ilist
-         language-docker megaparsec mtl network-uri parallel parsec semver
+         data-default deepseq directory email-validate filepath foldl gitrev
+         HsYAML ilist language-docker megaparsec mtl network-uri
+         optparse-applicative parallel parsec prettyprinter semver
          ShellCheck spdx split text time timerep void
        ];
        executableHaskellDepends = [
-         base containers gitrev language-docker megaparsec
-         optparse-applicative text
+         base containers data-default language-docker megaparsec
+         optparse-applicative prettyprinter text
        ];
        testHaskellDepends = [
-         aeson base bytestring containers foldl hspec HsYAML HUnit
-         language-docker megaparsec ShellCheck split text
+         aeson base bytestring containers data-default foldl hspec HsYAML
+         HUnit language-docker megaparsec optparse-applicative ShellCheck
+         silently split text
        ];
        description = "Dockerfile Linter JavaScript API";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "hadoop-formats" = callPackage
@@ -125052,6 +125343,28 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "hasql-interpolate" = callPackage
+    ({ mkDerivation, aeson, array, base, bytestring, containers
+     , haskell-src-meta, hasql, megaparsec, mtl, scientific, tasty
+     , tasty-hunit, template-haskell, text, time, transformers, uuid
+     , vector
+     }:
+     mkDerivation {
+       pname = "hasql-interpolate";
+       version = "0.1.0.0";
+       sha256 = "0l9gpkkwkypvz3020p5khvxzrq6x62z3i1xjrbzal7yj0gic4klg";
+       libraryHaskellDepends = [
+         aeson array base bytestring containers haskell-src-meta hasql
+         megaparsec mtl scientific template-haskell text time transformers
+         uuid vector
+       ];
+       testHaskellDepends = [
+         base hasql tasty tasty-hunit template-haskell text
+       ];
+       description = "QuasiQuoter that supports expression interpolation for hasql";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "hasql-migration" = callPackage
     ({ mkDerivation, base, bytestring, contravariant, cryptonite
      , directory, hasql, hasql-transaction, hspec, memory, text, time
@@ -126227,6 +126540,7 @@ self: {
        platforms = [
          "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
        ];
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hbro-contrib" = callPackage
@@ -126262,6 +126576,7 @@ self: {
        platforms = [
          "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
        ];
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hburg" = callPackage
@@ -134309,7 +134624,6 @@ self: {
        testHaskellDepends = [ base QuickCheck ];
        description = "Hidden Markov Models using LAPACK primitives";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hmm-lapack_0_4_1" = callPackage
@@ -137064,18 +137378,16 @@ self: {
      , cryptohash, deepseq, exceptions, extra, fields-json, hpqtypes
      , lifted-base, log-base, monad-control, mtl, QuickCheck, safe
      , semigroups, tasty, tasty-bench, tasty-hunit, text, text-show
-     , time, transformers, uuid-types
+     , time, transformers, transformers-base, uuid-types
      }:
      mkDerivation {
        pname = "hpqtypes-extras";
-       version = "1.12.0.1";
-       sha256 = "0qpydy2hg6fmwhwg0azgraxhjijfarns3syrv2an4ynfqcxrds9k";
-       revision = "2";
-       editedCabalFile = "0xbflhmnibji9sj1yhsm9xzy0rd9k9mhyw41ixlbdvz70jjmjykb";
+       version = "1.13.0.0";
+       sha256 = "07pma23i8cy8153g3grb1jr4sasaaczlqym1jv9q5vzb03mdqcaw";
        libraryHaskellDepends = [
          base base16-bytestring bytestring containers cryptohash exceptions
          extra fields-json hpqtypes lifted-base log-base monad-control mtl
-         safe semigroups text text-show
+         safe semigroups text text-show transformers-base
        ];
        testHaskellDepends = [
          base exceptions hpqtypes lifted-base log-base monad-control
@@ -138931,27 +139243,6 @@ self: {
      }) {};
 
   "hsc2hs" = callPackage
-    ({ mkDerivation, base, containers, directory, filepath, process
-     , tasty, tasty-hspec
-     }:
-     mkDerivation {
-       pname = "hsc2hs";
-       version = "0.68.7";
-       sha256 = "0jl94cr2jhjmvz7l9idpr352vwxlsanyiq7ya1vvrlry3vj1aygx";
-       revision = "1";
-       editedCabalFile = "0nzmlx0kdsq5231m6dbvdb5zssj1h4lkqplp8rb28z3yl5h6h3sa";
-       isLibrary = false;
-       isExecutable = true;
-       enableSeparateDataOutput = true;
-       executableHaskellDepends = [
-         base containers directory filepath process
-       ];
-       testHaskellDepends = [ base tasty tasty-hspec ];
-       description = "A preprocessor that helps with writing Haskell bindings to C code";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "hsc2hs_0_68_8" = callPackage
     ({ mkDerivation, base, containers, directory, filepath, HUnit
      , process, test-framework, test-framework-hunit
      }:
@@ -138970,7 +139261,6 @@ self: {
        ];
        description = "A preprocessor that helps with writing Haskell bindings to C code";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hsc3" = callPackage
@@ -141107,14 +141397,14 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "hspec_2_8_3" = callPackage
+  "hspec_2_8_4" = callPackage
     ({ mkDerivation, base, hspec-core, hspec-discover
      , hspec-expectations, QuickCheck
      }:
      mkDerivation {
        pname = "hspec";
-       version = "2.8.3";
-       sha256 = "1ryv1qad2rw40ak6n7agfd0sib1xk2iyqpz0qhgyxwp3kkjhrn49";
+       version = "2.8.4";
+       sha256 = "08br1ln5drvw1b9sf9cpxbz31v88p9b7b3hb00qn9vcim5yridz1";
        libraryHaskellDepends = [
          base hspec-core hspec-discover hspec-expectations QuickCheck
        ];
@@ -141205,7 +141495,7 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "hspec-core_2_8_3" = callPackage
+  "hspec-core_2_8_4" = callPackage
     ({ mkDerivation, ansi-terminal, array, base, call-stack, clock
      , deepseq, directory, filepath, hspec-expectations, hspec-meta
      , HUnit, process, QuickCheck, quickcheck-io, random, setenv
@@ -141213,8 +141503,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-core";
-       version = "2.8.3";
-       sha256 = "0khq0xa6agqcvbngzlxnvd9xwh7dmp4rsb2nzvfwsaknw2674i0k";
+       version = "2.8.4";
+       sha256 = "11iii063vhsr3qpcadwllmgfhyvykkh1chzpm3bzqfjm1n00vy6d";
        libraryHaskellDepends = [
          ansi-terminal array base call-stack clock deepseq directory
          filepath hspec-expectations HUnit QuickCheck quickcheck-io random
@@ -141271,14 +141561,16 @@ self: {
        maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
-  "hspec-discover_2_8_3" = callPackage
+  "hspec-discover_2_8_4" = callPackage
     ({ mkDerivation, base, directory, filepath, hspec-meta, mockery
      , QuickCheck
      }:
      mkDerivation {
        pname = "hspec-discover";
-       version = "2.8.3";
-       sha256 = "09rjrq289si08cza48gcp29780rv21rs0b12xglkmbd6vfqzp6cs";
+       version = "2.8.4";
+       sha256 = "0nwayx09i7dfqc56gxq6pq629gnwy10bbn3px7lrq4rkbz3l86y6";
+       revision = "1";
+       editedCabalFile = "1wi0lq9zhgd5v9zavlw65dhzyw7hyivp8rv3i2ik54pk4j5gp36q";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base directory filepath ];
@@ -150091,8 +150383,8 @@ self: {
      }:
      mkDerivation {
        pname = "implicit-hie-cradle";
-       version = "0.3.0.5";
-       sha256 = "0c8pyw5nx8b05wqdczy892n0knsniysrxllg2y8q5905mns8h7pc";
+       version = "0.4.0.1";
+       sha256 = "07k0d2lda4kj20121h8lzbjl074s90cnhbins1dvgngxbz0ddxa2";
        libraryHaskellDepends = [
          base base16-bytestring bytestring containers directory extra
          filepath hie-bios hslogger implicit-hie process temporary text time
@@ -150290,8 +150582,8 @@ self: {
      }:
      mkDerivation {
        pname = "in-other-words";
-       version = "0.2.0.0";
-       sha256 = "0adl539jilc3rnwx9ir39y97f6h60xavzhhc8pa9vc6gqp1v4g20";
+       version = "0.2.1.0";
+       sha256 = "0cm0fxf3snk4ah3jvb9g6f711gs6zg1l7avdj51rgqnlxhsbycqb";
        libraryHaskellDepends = [
          async base exceptions monad-control mtl stm transformers
          transformers-base
@@ -150389,6 +150681,8 @@ self: {
        pname = "inchworm";
        version = "1.1.1.2";
        sha256 = "1dsrx48srmrqcw4y60prgnzxzr7nc7vyzjv0nnr2vaay3j6pxkii";
+       revision = "1";
+       editedCabalFile = "0xdak2ngj44p0p40k7pavq52f9x6yfglpixz2dp4a7sjw9hk1cxy";
        libraryHaskellDepends = [ base ];
        description = "Simple parser combinators for lexical analysis";
        license = lib.licenses.mit;
@@ -151929,6 +152223,24 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "integer-roots_1_0_1_0" = callPackage
+    ({ mkDerivation, base, doctest, integer-gmp, smallcheck, tasty
+     , tasty-hunit, tasty-quickcheck, tasty-smallcheck
+     }:
+     mkDerivation {
+       pname = "integer-roots";
+       version = "1.0.1.0";
+       sha256 = "13x74gdh5wh9cr1yfx5l57p06aslcb3pncf8rhn6ihsfk2ni1sm4";
+       libraryHaskellDepends = [ base integer-gmp ];
+       testHaskellDepends = [
+         base doctest smallcheck tasty tasty-hunit tasty-quickcheck
+         tasty-smallcheck
+       ];
+       description = "Integer roots and perfect powers";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "integer-simple" = callPackage
     ({ mkDerivation, ghc-prim }:
      mkDerivation {
@@ -152145,6 +152457,8 @@ self: {
        pname = "intern";
        version = "0.9.4";
        sha256 = "00c74apc2ap1pjxmzk1c975zzqrc94p69l7v1fvfakv87mbrg8j0";
+       revision = "1";
+       editedCabalFile = "0xkv6g1aadm5biiqvbfp8f9jsr75prs5aqbhmcskq7s475p1fglp";
        libraryHaskellDepends = [
          array base bytestring hashable text unordered-containers
        ];
@@ -153364,25 +153678,6 @@ self: {
      }:
      mkDerivation {
        pname = "iproute";
-       version = "1.7.11";
-       sha256 = "12wa59b1zgjqp8dmygq2x44ml0cb89fhn1k0zkj4aqz7rhkwsp90";
-       libraryHaskellDepends = [
-         appar base byteorder bytestring containers network
-       ];
-       testHaskellDepends = [
-         appar base byteorder bytestring containers doctest hspec network
-         QuickCheck safe
-       ];
-       description = "IP Routing Table";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "iproute_1_7_12" = callPackage
-    ({ mkDerivation, appar, base, byteorder, bytestring, containers
-     , doctest, hspec, network, QuickCheck, safe
-     }:
-     mkDerivation {
-       pname = "iproute";
        version = "1.7.12";
        sha256 = "0qvb4d7nw8f6j4s09cnpn6z1rdwcwknwklfrhsgivg7wg4aisxgi";
        libraryHaskellDepends = [
@@ -153394,7 +153689,6 @@ self: {
        ];
        description = "IP Routing Table";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "iptables-helpers" = callPackage
@@ -157459,6 +157753,22 @@ self: {
        license = lib.licenses.gpl3Only;
      }) {};
 
+  "jsonrpc-tinyclient" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, exceptions, http-client
+     , http-client-tls, mtl, random, text, websockets
+     }:
+     mkDerivation {
+       pname = "jsonrpc-tinyclient";
+       version = "1.0.0.0";
+       sha256 = "02xhijk3rk4c9yqh1ghs8gvi1r7fwbxba0h21nb23545wflg0bz9";
+       libraryHaskellDepends = [
+         aeson base bytestring exceptions http-client http-client-tls mtl
+         random text websockets
+       ];
+       description = "Tiny JSON-RPC client for Haskell Web3 library";
+       license = lib.licenses.asl20;
+     }) {};
+
   "jsons-to-schema" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, conduit
      , conduit-combinators, containers, Glob, hjsonschema, hspec
@@ -158463,8 +158773,8 @@ self: {
      }:
      mkDerivation {
        pname = "katip";
-       version = "0.8.6.0";
-       sha256 = "02rq2rl9cgxfay6bnxzh7r354x20hj8zdc60pfhvh3l8naslyk5z";
+       version = "0.8.7.0";
+       sha256 = "1m74n6fyxczfgg3swkkgr6864mzji1l0dpwpxk5zd93488zrij9v";
        libraryHaskellDepends = [
          aeson async auto-update base bytestring containers either hostname
          microlens microlens-th monad-control mtl old-locale resourcet
@@ -159564,27 +159874,27 @@ self: {
      , blaze-builder, bytestring, case-insensitive, conduit
      , conduit-extra, containers, data-default, directory, filepath
      , fsnotify, hspec, http-client, http-conduit, http-reverse-proxy
-     , http-types, HUnit, lifted-base, mtl, network, process, random
-     , regex-tdfa, stm, tar, template-haskell, text, time, tls
-     , tls-session-manager, transformers, unix, unix-compat
-     , unordered-containers, vector, wai, wai-app-static, wai-extra
-     , warp, warp-tls, yaml, zlib
+     , http-types, HUnit, indexed-traversable, lifted-base, mtl, network
+     , optparse-applicative, process, random, regex-tdfa, stm, tar
+     , template-haskell, text, time, tls, tls-session-manager
+     , transformers, unix, unix-compat, unordered-containers, vector
+     , wai, wai-app-static, wai-extra, warp, warp-tls, yaml, zlib
      }:
      mkDerivation {
        pname = "keter";
-       version = "1.5";
-       sha256 = "0ifz4la1hxv53cz21p3b6cn2mj4ivqj77y5ppyy47dfsbsr1ihal";
+       version = "1.6";
+       sha256 = "1adqib4zk0a32hi3i0cxf3z0ljx12hymzxh5mag6sr0mx64qcsr1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson array async attoparsec base blaze-builder bytestring
          case-insensitive conduit conduit-extra containers data-default
          directory filepath fsnotify http-client http-conduit
-         http-reverse-proxy http-types lifted-base mtl network process
-         random regex-tdfa stm tar template-haskell text time tls
-         tls-session-manager transformers unix unix-compat
-         unordered-containers vector wai wai-app-static wai-extra warp
-         warp-tls yaml zlib
+         http-reverse-proxy http-types indexed-traversable lifted-base mtl
+         network optparse-applicative process random regex-tdfa stm tar
+         template-haskell text time tls tls-session-manager transformers
+         unix unix-compat unordered-containers vector wai wai-app-static
+         wai-extra warp warp-tls yaml zlib
        ];
        executableHaskellDepends = [ base data-default filepath ];
        testHaskellDepends = [
@@ -159740,6 +160050,8 @@ self: {
        pname = "keys";
        version = "3.12.3";
        sha256 = "0ik6wsff306dnbz0v3gpiajlj5b558hrk9176fzcb2fclf4447nm";
+       revision = "1";
+       editedCabalFile = "18fapd53nby46p5103y1m2hwpixn5p12mbyvb8va71pk4b77qlcy";
        libraryHaskellDepends = [
          array base comonad containers free hashable semigroupoids
          semigroups tagged transformers transformers-compat
@@ -160956,8 +161268,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "lacroix";
-       version = "0.1.0.0";
-       sha256 = "0d65dqvbfrrvgdnagjyiq8xf7635rd46wda722g85dxzxr1l7mbn";
+       version = "0.2.0.0";
+       sha256 = "131h3fnr8wxvbr8b7qqf82zjxnidpq4v6qx1bimcnby366nc7val";
        libraryHaskellDepends = [ base ];
        description = "fizzy n dizzy";
        license = lib.licenses.mit;
@@ -163291,8 +163603,6 @@ self: {
        ];
        description = "Numerical Linear Algebra using LAPACK";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lapack_0_4" = callPackage
@@ -163324,7 +163634,6 @@ self: {
        description = "Numerical Linear Algebra using LAPACK";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lapack-carray" = callPackage
@@ -163410,6 +163719,7 @@ self: {
        description = "Conversion of objects between 'lapack' and 'hmatrix'";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "large-hashable" = callPackage
@@ -165116,6 +165426,19 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "lens-family-th_0_5_2_1" = callPackage
+    ({ mkDerivation, base, hspec, template-haskell, transformers }:
+     mkDerivation {
+       pname = "lens-family-th";
+       version = "0.5.2.1";
+       sha256 = "1w8k68a1lyfd79xkc4fbf6z7p5gpriq4pjgb4n9p58az6awnn7dh";
+       libraryHaskellDepends = [ base template-haskell ];
+       testHaskellDepends = [ base hspec template-haskell transformers ];
+       description = "Generate lens-family style lenses";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "lens-filesystem" = callPackage
     ({ mkDerivation, base, directory, filepath, hspec, lens
      , lens-action
@@ -166040,8 +166363,8 @@ self: {
        pname = "libfuse3";
        version = "0.1.2.0";
        sha256 = "0a59b4xag5vzisrnvf4v1zkdsdzky96h8w2mdj6cip3vgr196frb";
-       revision = "3";
-       editedCabalFile = "1w59kyc8hvlmbq8n6i7nz8cg8mkzzhfizfpgcm17adxlh6a68ana";
+       revision = "4";
+       editedCabalFile = "1ra0c9yaihppggv1qy66iy8lhswlyd58qql49v3gwmzb81cccmjp";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -167080,6 +167403,8 @@ self: {
        pname = "lift-generics";
        version = "0.2.1";
        sha256 = "1qkzq8hcb6j15cslv577bmhjcxmljzsrryysdgd7r99kr3q445b4";
+       revision = "1";
+       editedCabalFile = "0i0qxm2fi34bnpnwk5k61yjx72pc9j8jhbx44xk176pw7y2pinxd";
        libraryHaskellDepends = [
          base generic-deriving ghc-prim template-haskell th-compat
        ];
@@ -167260,6 +167585,8 @@ self: {
        pname = "lifx-lan";
        version = "0.5.0.1";
        sha256 = "0rww31gcp5asbc0zb6fz7ddgw3dih6l2mc0rln7nf3qd04hplk6v";
+       revision = "2";
+       editedCabalFile = "0k4lm2qbqq4xb5rxb0nik5sc898g4w7k050j4gs1ri4xbz32z7cn";
        libraryHaskellDepends = [
          base binary bytestring composition containers extra monad-loops mtl
          network random safe text time transformers
@@ -167766,7 +168093,6 @@ self: {
        ];
        description = "Compute resistance of linear electrical circuits";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "linear-circuit_0_1_0_3" = callPackage
@@ -167824,8 +168150,8 @@ self: {
      }:
      mkDerivation {
        pname = "linear-generics";
-       version = "0.1.0.1";
-       sha256 = "0ck7gx1chrxyyn7lwbv4gn15zxgfgg7ai0i6404jprvvh72j7b8r";
+       version = "0.2";
+       sha256 = "16l117m3zblla1cn5866mknvhc1s9737qhld6bym4xsyqsgvh2sz";
        libraryHaskellDepends = [
          base containers ghc-prim template-haskell th-abstraction
        ];
@@ -169835,6 +170161,8 @@ self: {
        pname = "llvm-ffi-tools";
        version = "0.0.0.1";
        sha256 = "0nicgcdlywb8w5fr7hi5hgayv9phwslp5s47p2c30kavj7c3f3zk";
+       revision = "1";
+       editedCabalFile = "1wmwrhjs732izgbihbbb7l856pgxa1q5f32z06935ykwfwy160x7";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -169842,8 +170170,6 @@ self: {
        ];
        description = "Tools for maintaining the llvm-ffi package";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-general" = callPackage
@@ -170019,8 +170345,6 @@ self: {
        ];
        description = "Generate Pkg-Config configuration file for LLVM";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "llvm-pretty" = callPackage
@@ -171915,8 +172239,8 @@ self: {
     ({ mkDerivation, base, lua, tasty, tasty-hunit }:
      mkDerivation {
        pname = "lpeg";
-       version = "1.0.0";
-       sha256 = "01502izg6fkkp93vc2sr4csx7crqlx7zxgk85rm5kfdx7vh7qjfs";
+       version = "1.0.1";
+       sha256 = "0zhg7d85s6rx1dh3mndpjjy3k8b5ixyz28wl6i8zvn2mxyx40y98";
        libraryHaskellDepends = [ base lua ];
        testHaskellDepends = [ base lua tasty tasty-hunit ];
        description = "LPeg – Parsing Expression Grammars For Lua";
@@ -172468,15 +172792,17 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "lucid_2_10_0" = callPackage
+  "lucid_2_11_0" = callPackage
     ({ mkDerivation, base, bifunctors, blaze-builder, bytestring
      , containers, criterion, deepseq, hashable, hspec, HUnit, mmorph
      , mtl, parsec, text, transformers, unordered-containers
      }:
      mkDerivation {
        pname = "lucid";
-       version = "2.10.0";
-       sha256 = "1xzrb31n1kx6ym8za32ggy0cxmm2pcv9vm5czzsip5va6p5411yg";
+       version = "2.11.0";
+       sha256 = "1m1f13vxn3pwc7wvhx0czzxlx2ws8lzdgxlxd1707cx79jyib5sl";
+       revision = "1";
+       editedCabalFile = "0ai0rxiyni9cxzad3ix50vkxqqmgxfd1vpqzfrmmll1swxpicd8q";
        libraryHaskellDepends = [
          base blaze-builder bytestring containers hashable mmorph mtl text
          transformers unordered-containers
@@ -172507,6 +172833,22 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "lucid-alpine_0_1_0_4" = callPackage
+    ({ mkDerivation, base, lucid, text }:
+     mkDerivation {
+       pname = "lucid-alpine";
+       version = "0.1.0.4";
+       sha256 = "1pr2fg5r43jvgh694lhqbmwl1dida9ymgw161j16dcj66jx8fjk6";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base lucid text ];
+       executableHaskellDepends = [ base lucid text ];
+       testHaskellDepends = [ base lucid text ];
+       description = "Use Alpine.js in your lucid templates";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "lucid-cdn" = callPackage
     ({ mkDerivation, base, lucid }:
      mkDerivation {
@@ -172574,6 +172916,19 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "lucid-htmx_0_1_0_3" = callPackage
+    ({ mkDerivation, base, lucid, servant, text }:
+     mkDerivation {
+       pname = "lucid-htmx";
+       version = "0.1.0.3";
+       sha256 = "1fgb4gika5f3bbba2as4bkg6m8nn2w25k17m45b389rwmhyg6syj";
+       libraryHaskellDepends = [ base lucid servant text ];
+       testHaskellDepends = [ base lucid servant text ];
+       description = "Use htmx in your lucid templates";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "lucid-svg" = callPackage
     ({ mkDerivation, base, blaze-builder, lucid, text, transformers }:
      mkDerivation {
@@ -173803,7 +174158,6 @@ self: {
        ];
        description = "Compute solutions for Magico puzzle";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "magico_0_0_2_2" = callPackage
@@ -176016,8 +176370,8 @@ self: {
      }:
      mkDerivation {
        pname = "matplotlib";
-       version = "0.7.5";
-       sha256 = "0iyjr6j5jp7lqrk9rqqvxz3rx8221hwz56p82zqkj3aarrvy21cs";
+       version = "0.7.6";
+       sha256 = "0wykzz4d6a55x3bxn9r01bvgvz26yvldgyrnz87rqncxymdawmd4";
        libraryHaskellDepends = [
          aeson base bytestring containers deepseq filepath process split
          temporary
@@ -176030,7 +176384,7 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "matplotlib_0_7_6" = callPackage
+  "matplotlib_0_7_7" = callPackage
     ({ mkDerivation, ad, aeson, base, bytestring, containers, deepseq
      , directory, filepath, process, random, raw-strings-qq, split
      , tasty, tasty-expected-failure, tasty-golden, tasty-hunit
@@ -176038,8 +176392,8 @@ self: {
      }:
      mkDerivation {
        pname = "matplotlib";
-       version = "0.7.6";
-       sha256 = "0wykzz4d6a55x3bxn9r01bvgvz26yvldgyrnz87rqncxymdawmd4";
+       version = "0.7.7";
+       sha256 = "08qwqnsdch7hzyy0jiz6yvirf0gqm9xx24i3ikm5q993prsdpi2h";
        libraryHaskellDepends = [
          aeson base bytestring containers deepseq filepath process split
          temporary
@@ -176283,8 +176637,8 @@ self: {
      }:
      mkDerivation {
        pname = "matterhorn";
-       version = "50200.14.0";
-       sha256 = "0x0f7s4pz0ds1vg8v8qycafmg2i21542p8bmhhrzzwj2m99bgx5d";
+       version = "50200.14.1";
+       sha256 = "0bxz54881pypwwr2acxarsk362708vwii2krq1ya0kg2ybhcxh72";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -177858,8 +178212,8 @@ self: {
        pname = "mercury-api";
        version = "0.1.0.2";
        sha256 = "0ybpc1kai85rflgdr80jd8cvwxaxmbphv82nz2p17502jrmdfkhg";
-       revision = "6";
-       editedCabalFile = "03d71mfq8nvqjr7hcpkh1q25fi1avqj35mfrrf7rkm13fr49bi7i";
+       revision = "7";
+       editedCabalFile = "1qgcph7cmdxijxfgpwwszbyh07kwalnqli4fp85s7z1fxqfwl5n8";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -178620,8 +178974,8 @@ self: {
        pname = "microaeson";
        version = "0.1.0.0";
        sha256 = "1hbpyz6p9snnd85h2y0pdqp20svxrggavbv0q8z33sc5i4p8b7iz";
-       revision = "3";
-       editedCabalFile = "09fbsmxlhcjazd99r05n1cla9akficbnfylszg9jkpic7g0p5pa3";
+       revision = "4";
+       editedCabalFile = "0rrdyk6clik8g3biv40rpg50qzfacb9yrd45ah85xpmk8flbzcfx";
        libraryHaskellDepends = [
          array base bytestring containers deepseq text
        ];
@@ -178867,6 +179221,23 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "microlens-platform_0_4_2_1" = callPackage
+    ({ mkDerivation, base, hashable, microlens, microlens-ghc
+     , microlens-mtl, microlens-th, text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "microlens-platform";
+       version = "0.4.2.1";
+       sha256 = "0z8snyzy18kqj32fb89mzgscjrg6w2z0jkkj4b9vl2jvbps0gkg6";
+       libraryHaskellDepends = [
+         base hashable microlens microlens-ghc microlens-mtl microlens-th
+         text unordered-containers vector
+       ];
+       description = "microlens + all batteries included (best for apps)";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "microlens-process" = callPackage
     ({ mkDerivation, base, Cabal, cabal-doctest, doctest, filepath
      , microlens, process
@@ -179208,8 +179579,8 @@ self: {
      }:
      mkDerivation {
        pname = "mighttpd2";
-       version = "4.0.1";
-       sha256 = "1vgdva68dmkmfchgf3lpa2lrs7di2v3s7snpaxbpyjbr9zrqw6gn";
+       version = "4.0.2";
+       sha256 = "0q09adyhaa9mxajj5fg3fsdpckdh3icp2bvm1f64l1m3jqxw8k8x";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -180008,6 +180379,18 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "mintty_0_1_3" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "mintty";
+       version = "0.1.3";
+       sha256 = "07gy5w0zbx9q64kdr6rzkwdxrgxh2h188bkdvbbgxwk86m9q9i7x";
+       libraryHaskellDepends = [ base ];
+       description = "A reliable way to detect the presence of a MinTTY console on Windows";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "mios" = callPackage
     ({ mkDerivation, base, bytestring, ghc-prim, gitrev, hspec
      , primitive, vector
@@ -180692,6 +181075,27 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "mmark-ext_0_2_1_4" = callPackage
+    ({ mkDerivation, base, foldl, ghc-syntax-highlighter, hspec
+     , hspec-discover, lucid, microlens, mmark, modern-uri, skylighting
+     , text
+     }:
+     mkDerivation {
+       pname = "mmark-ext";
+       version = "0.2.1.4";
+       sha256 = "02ygx0kkp69gd2n4bnqjzbwzhs9ksqm148jf6zfgn3z8w1p9glzh";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base foldl ghc-syntax-highlighter lucid microlens mmark modern-uri
+         skylighting text
+       ];
+       testHaskellDepends = [ base hspec lucid mmark skylighting text ];
+       testToolDepends = [ hspec-discover ];
+       description = "Commonly useful extensions for the MMark markdown processor";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "mmorph_1_1_3" = callPackage
     ({ mkDerivation, base, mtl, transformers, transformers-compat }:
      mkDerivation {
@@ -180838,8 +181242,8 @@ self: {
      }:
      mkDerivation {
        pname = "mmsyn6ukr-array";
-       version = "0.3.0.0";
-       sha256 = "16niig3irz25g8lpx4bg6mf3i74n5162pv7555rkraxd91wy7hhw";
+       version = "0.3.1.0";
+       sha256 = "1xmi3qbifk4hw9lgm33ldh6cfrwhppr7kg0cimlv2vmzpcz2ski2";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -182679,12 +183083,12 @@ self: {
      }) {};
 
   "monad-tree" = callPackage
-    ({ mkDerivation, base }:
+    ({ mkDerivation, base, mtl, transformers }:
      mkDerivation {
        pname = "monad-tree";
-       version = "0.1.0";
-       sha256 = "1rjrcai2wqz3qkn3sk1fj6c0vvzk58gmghzwp9w9xvr09kd7zyd2";
-       libraryHaskellDepends = [ base ];
+       version = "0.2.0.0";
+       sha256 = "1k3vbxc4z03inryalw725nwgb9xh92lwdw31746irzhwgbvrfqjk";
+       libraryHaskellDepends = [ base mtl transformers ];
        description = "Tree data structure for nondeterministic computations";
        license = lib.licenses.mit;
      }) {};
@@ -183341,6 +183745,24 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "mono-traversable-keys_0_2_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, hashable, keys
+     , mono-traversable, text, transformers, unordered-containers
+     , vector, vector-instances
+     }:
+     mkDerivation {
+       pname = "mono-traversable-keys";
+       version = "0.2.0";
+       sha256 = "0v0bh73l6fa3bvyfakm2sbp9qi7bd8aw468kr8d51zsl8r0b6nil";
+       libraryHaskellDepends = [
+         base bytestring containers hashable keys mono-traversable text
+         transformers unordered-containers vector vector-instances
+       ];
+       description = "Type-classes for interacting with monomorphic containers with a key";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "mono-traversable-wrapper" = callPackage
     ({ mkDerivation, base, mono-traversable }:
      mkDerivation {
@@ -184043,6 +184465,36 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "morpheus-graphql_0_18_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers
+     , 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, unordered-containers
+     , vector
+     }:
+     mkDerivation {
+       pname = "morpheus-graphql";
+       version = "0.18.0";
+       sha256 = "1358hjnxla83v7rkn49r07cs8n49czm5shfdpc3avl564w1bzmzi";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers morpheus-graphql-app
+         morpheus-graphql-code-gen morpheus-graphql-core mtl relude
+         template-haskell text transformers unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers 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
+         unordered-containers vector
+       ];
+       description = "Morpheus GraphQL";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "morpheus-graphql-app" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
      , hashable, megaparsec, morpheus-graphql-core, mtl, relude
@@ -184069,6 +184521,34 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "morpheus-graphql-app_0_18_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, directory
+     , hashable, megaparsec, morpheus-graphql-core
+     , morpheus-graphql-tests, mtl, relude, scientific, tasty
+     , tasty-hunit, template-haskell, text, th-lift-instances
+     , transformers, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "morpheus-graphql-app";
+       version = "0.18.0";
+       sha256 = "1s9v87pgn7fdnyx1776y4nvf0kx0ry08r5522dyqgwzfgd4s059z";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers hashable megaparsec
+         morpheus-graphql-core mtl relude scientific template-haskell text
+         th-lift-instances transformers unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers directory hashable megaparsec
+         morpheus-graphql-core morpheus-graphql-tests mtl relude scientific
+         tasty tasty-hunit template-haskell text th-lift-instances
+         transformers unordered-containers vector
+       ];
+       description = "Morpheus GraphQL App";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "morpheus-graphql-cli" = callPackage
     ({ mkDerivation, base, bytestring, filepath, morpheus-graphql
      , optparse-applicative
@@ -184114,6 +184594,58 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "morpheus-graphql-client_0_18_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, directory
+     , morpheus-graphql-code-gen, morpheus-graphql-core, mtl, relude
+     , tasty, tasty-hunit, template-haskell, text, transformers
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "morpheus-graphql-client";
+       version = "0.18.0";
+       sha256 = "0i8f932gq3p1ybh764pkr189iisbjqcjcq92awqyzxgpj39j0gg0";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson base bytestring morpheus-graphql-code-gen
+         morpheus-graphql-core mtl relude template-haskell text transformers
+         unordered-containers
+       ];
+       testHaskellDepends = [
+         aeson base bytestring directory morpheus-graphql-code-gen
+         morpheus-graphql-core mtl relude tasty tasty-hunit template-haskell
+         text transformers unordered-containers
+       ];
+       description = "Morpheus GraphQL Client";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "morpheus-graphql-code-gen" = callPackage
+    ({ mkDerivation, base, bytestring, containers, filepath
+     , morpheus-graphql-core, optparse-applicative, prettyprinter
+     , relude, template-haskell, text, unordered-containers
+     }:
+     mkDerivation {
+       pname = "morpheus-graphql-code-gen";
+       version = "0.18.0";
+       sha256 = "1965y2wd813y82mllzrnhiyjk2mp0vi7j6x7phwlmpabmsij5x0f";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring containers morpheus-graphql-core prettyprinter
+         relude template-haskell text unordered-containers
+       ];
+       executableHaskellDepends = [
+         base bytestring containers filepath morpheus-graphql-core
+         optparse-applicative prettyprinter relude template-haskell text
+         unordered-containers
+       ];
+       description = "Morpheus GraphQL CLI";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "morpheus-graphql-core" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
      , hashable, megaparsec, mtl, relude, scientific, tasty, tasty-hunit
@@ -184139,6 +184671,33 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "morpheus-graphql-core_0_18_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, directory
+     , hashable, megaparsec, morpheus-graphql-tests, mtl, relude
+     , scientific, tasty, tasty-hunit, template-haskell, text
+     , th-lift-instances, transformers, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "morpheus-graphql-core";
+       version = "0.18.0";
+       sha256 = "07j3i5dfc245l9gil3dk6c5sd7853m5923dxa993fj4gd564mwfd";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers hashable megaparsec mtl relude
+         scientific template-haskell text th-lift-instances transformers
+         unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers directory hashable megaparsec
+         morpheus-graphql-tests mtl relude scientific tasty tasty-hunit
+         template-haskell text th-lift-instances transformers
+         unordered-containers vector
+       ];
+       description = "Morpheus GraphQL Core";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "morpheus-graphql-subscriptions" = callPackage
     ({ mkDerivation, aeson, base, bytestring, directory
      , morpheus-graphql-app, morpheus-graphql-core, mtl, relude, tasty
@@ -184163,6 +184722,47 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "morpheus-graphql-subscriptions_0_18_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, directory
+     , morpheus-graphql-app, morpheus-graphql-core, mtl, relude, tasty
+     , tasty-hunit, text, transformers, unliftio-core
+     , unordered-containers, uuid, websockets
+     }:
+     mkDerivation {
+       pname = "morpheus-graphql-subscriptions";
+       version = "0.18.0";
+       sha256 = "02xpnrvd8wydp1b7jvk2pqcrx6ldn8nvffz22g0l5xrrpcvhg9s4";
+       libraryHaskellDepends = [
+         aeson base bytestring morpheus-graphql-app morpheus-graphql-core
+         mtl relude text transformers unliftio-core unordered-containers
+         uuid websockets
+       ];
+       testHaskellDepends = [
+         aeson base bytestring directory morpheus-graphql-app
+         morpheus-graphql-core mtl relude tasty tasty-hunit text
+         transformers unliftio-core unordered-containers uuid websockets
+       ];
+       description = "Morpheus GraphQL Subscriptions";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "morpheus-graphql-tests" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, directory, relude, tasty
+     , tasty-hunit, text, unordered-containers
+     }:
+     mkDerivation {
+       pname = "morpheus-graphql-tests";
+       version = "0.18.0";
+       sha256 = "0l89mmsl09ph412l8f9xjlyx8yp5g69ffmajynxcqvj501n21s9z";
+       libraryHaskellDepends = [
+         aeson base bytestring directory relude tasty tasty-hunit text
+         unordered-containers
+       ];
+       description = "Morpheus GraphQL Test";
+       license = lib.licenses.mit;
+     }) {};
+
   "morphisms" = callPackage
     ({ mkDerivation }:
      mkDerivation {
@@ -188597,8 +189197,8 @@ self: {
        pname = "nats";
        version = "1.1.2";
        sha256 = "1v40drmhixck3pz3mdfghamh73l4rp71mzcviipv1y8jhrfxilmr";
-       revision = "3";
-       editedCabalFile = "02ww45nskca28fsbh74iy0z4rm0yshws7lrxld45y053hrn1jdzc";
+       revision = "4";
+       editedCabalFile = "0qccypqkfs7hi0v2bsjfqfhpi2jgsnpfwi9vmcqh7jxk5g08njk0";
        doHaddock = false;
        description = "Natural numbers";
        license = lib.licenses.bsd3;
@@ -190858,6 +191458,8 @@ self: {
        pname = "network-transport";
        version = "0.5.4";
        sha256 = "0izcqi3zl7ynav0qqrrfmiax8vziqwrhflprddhjj6x6nkzhp1sv";
+       revision = "1";
+       editedCabalFile = "03parnmzh2mffs6fadqbf4lw1d5bsmvr347rzamp230s303nr6yc";
        libraryHaskellDepends = [
          base binary bytestring deepseq hashable transformers
        ];
@@ -190952,6 +191554,8 @@ self: {
        pname = "network-transport-tests";
        version = "0.3.0";
        sha256 = "1552mgccfyyvvnplhflkfxgg3246jgx9iiv71a0gwblllbsh5y8p";
+       revision = "1";
+       editedCabalFile = "0kk8kib742s3iiah6d9g94ma776m4nyh14syvibsssfj1immf3jd";
        libraryHaskellDepends = [
          ansi-terminal base bytestring containers mtl network-transport
          random
@@ -191984,19 +192588,19 @@ self: {
      }) {};
 
   "nix-diff" = callPackage
-    ({ mkDerivation, attoparsec, base, containers, directory, mtl
-     , nix-derivation, optparse-applicative, patience, text, unix
-     , vector
+    ({ mkDerivation, attoparsec, base, containers, directory, filepath
+     , mtl, nix-derivation, optparse-applicative, patience, process
+     , text, unix, vector
      }:
      mkDerivation {
        pname = "nix-diff";
-       version = "1.0.15";
-       sha256 = "0sjnihdhiib45chc04hr38g12sgp9rmjx2fibha9qsqla3rjnx3y";
+       version = "1.0.16";
+       sha256 = "1l6d43d4pr9ql4lbcslk9cjw1lxj9y0bbgxdfqxrj46lg9w63h6g";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         attoparsec base containers directory mtl nix-derivation
-         optparse-applicative patience text unix vector
+         attoparsec base containers directory filepath mtl nix-derivation
+         optparse-applicative patience process text unix vector
        ];
        description = "Explain why two Nix derivations differ";
        license = lib.licenses.bsd3;
@@ -192174,8 +192778,8 @@ self: {
      }:
      mkDerivation {
        pname = "nix-tree";
-       version = "0.1.8";
-       sha256 = "0bbisb0n7jg5ng17qyh92rbx1qphvd8w4gr6v773j8m72j24vj0c";
+       version = "0.1.9";
+       sha256 = "1xgb7f735afq0x7y3lsdciv9mk7cf9szbazn9fksb7fxf437w27m";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -193062,6 +193666,8 @@ self: {
        pname = "normalization-insensitive";
        version = "2.0.2";
        sha256 = "1rr12rrij64hi6jkd42h4x2m86k1ra10ykzpzc38n6rfdhyiswpn";
+       revision = "1";
+       editedCabalFile = "0q5h2017r0zwgi2xdrznhq2llljz9bslqnhq1l5zczrm9xs3304x";
        libraryHaskellDepends = [
          base bytestring deepseq hashable text unicode-transforms
        ];
@@ -193974,14 +194580,12 @@ self: {
      }) {};
 
   "numeric-kinds" = callPackage
-    ({ mkDerivation, base }:
+    ({ mkDerivation, base, type-compare }:
      mkDerivation {
        pname = "numeric-kinds";
-       version = "0.1.0.0";
-       sha256 = "0rdx39wa7kklx9a7i5rdwf541fxpz9v3n32rvy2fa6i7n4hr64s4";
-       revision = "2";
-       editedCabalFile = "1zlgarjmhp9mhlp8l1cygk570l0bc3yabid4c2bi1xm4ckii8cyc";
-       libraryHaskellDepends = [ base ];
+       version = "0.2.0";
+       sha256 = "0ba882bjp7gzqdfy15jgi8kbls2cjbp7860vzc7winzlsf0zqdy1";
+       libraryHaskellDepends = [ base type-compare ];
        description = "Type-level numeric types and classes";
        license = lib.licenses.asl20;
      }) {};
@@ -196005,6 +196609,36 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "opaleye_0_7_6_2" = callPackage
+    ({ mkDerivation, aeson, base, base16-bytestring, bytestring
+     , case-insensitive, containers, contravariant, dotenv, hspec
+     , hspec-discover, multiset, postgresql-simple, pretty
+     , product-profunctors, profunctors, QuickCheck, scientific
+     , semigroups, text, time, time-compat, time-locale-compat
+     , transformers, uuid, void
+     }:
+     mkDerivation {
+       pname = "opaleye";
+       version = "0.7.6.2";
+       sha256 = "0dln0r4qk5k4gmjg06275zgbzgivwxw471sd0y4l01j3x7ix3q46";
+       libraryHaskellDepends = [
+         aeson base base16-bytestring bytestring case-insensitive
+         contravariant postgresql-simple pretty product-profunctors
+         profunctors scientific semigroups text time-compat
+         time-locale-compat transformers uuid void
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers contravariant dotenv hspec
+         hspec-discover multiset postgresql-simple product-profunctors
+         profunctors QuickCheck semigroups text time time-compat
+         transformers uuid
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "An SQL-generating DSL targeting PostgreSQL";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "opaleye-classy" = callPackage
     ({ mkDerivation, base, bytestring, lens, mtl, opaleye
      , postgresql-simple, product-profunctors, transformers
@@ -196372,8 +197006,8 @@ self: {
        pname = "openapi3";
        version = "3.1.0";
        sha256 = "011754qyxxw5mn06hdmxalvsiff7a4x4k2yb2r6ylzr6zhyz818z";
-       revision = "1";
-       editedCabalFile = "1rbsfjwraizp0b6j2zaimz63b46k7d8abfxw7jyb7j1cv6jkcll1";
+       revision = "2";
+       editedCabalFile = "0hjczkslbn7m9vpn6vqxsr0b8aqa6im8pms3jbfcd7pfkp810z2s";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal cabal-doctest ];
@@ -197262,8 +197896,8 @@ self: {
      }:
      mkDerivation {
        pname = "opentracing";
-       version = "0.2.0";
-       sha256 = "1yl3hhg32npj4ncqc9j5gl2jikzvczkpnrwp124nk45mzi13aszq";
+       version = "0.2.1";
+       sha256 = "0p2y996cl5hfw85kdr0majymxccv2d1ka15wbyc2qxgskz3dy9cq";
        libraryHaskellDepends = [
          aeson async base base64-bytestring bytestring case-insensitive
          clock containers http-types iproute lens mtl mwc-random network
@@ -197441,6 +198075,21 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "operational_0_2_4_1" = callPackage
+    ({ mkDerivation, base, mtl, random }:
+     mkDerivation {
+       pname = "operational";
+       version = "0.2.4.1";
+       sha256 = "0aa1pxymvkhbs0x03ikfiap2skzyf2z7307kz5adkmb3qmykcqa2";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base mtl ];
+       executableHaskellDepends = [ base mtl random ];
+       description = "Implementation of difficult monads made easy with operational semantics";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "operational-alacarte" = callPackage
     ({ mkDerivation, base, mtl }:
      mkDerivation {
@@ -198008,6 +198657,25 @@ self: {
        maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
+  "optparse-generic_1_4_7" = callPackage
+    ({ mkDerivation, base, bytestring, Only, optparse-applicative
+     , system-filepath, text, time, transformers, transformers-compat
+     , void
+     }:
+     mkDerivation {
+       pname = "optparse-generic";
+       version = "1.4.7";
+       sha256 = "03s6iwfr2iiypnx3wmnrb37zz7kflk40dj38v8j4ccqxkkf9h0kk";
+       libraryHaskellDepends = [
+         base bytestring Only optparse-applicative system-filepath text time
+         transformers transformers-compat void
+       ];
+       description = "Auto-generate a command-line parser for your datatype";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
+     }) {};
+
   "optparse-helper" = callPackage
     ({ mkDerivation, base, optparse-applicative }:
      mkDerivation {
@@ -198617,8 +199285,8 @@ self: {
      }:
      mkDerivation {
        pname = "orthotope";
-       version = "0.1.0.0";
-       sha256 = "0nx97r1svhzayf0f4chj8mprqp524hliffnw5y612lwsx41c671k";
+       version = "0.1.1.0";
+       sha256 = "0hjhy9i73r223s3p9xnbw2ac34dvnanrsdnnl6c9707ymjhy57jq";
        libraryHaskellDepends = [
          base deepseq dlist pretty QuickCheck vector
        ];
@@ -198630,6 +199298,17 @@ self: {
        license = lib.licenses.asl20;
      }) {};
 
+  "orthotope-hmatrix" = callPackage
+    ({ mkDerivation, base, hmatrix, orthotope }:
+     mkDerivation {
+       pname = "orthotope-hmatrix";
+       version = "0.1.0.1";
+       sha256 = "0xibg10wx0adchksxfr8087lrbp0h384lddq0dmvpk9hvc5j2qhl";
+       libraryHaskellDepends = [ base hmatrix orthotope ];
+       description = "Some algorithms from hmatrix";
+       license = lib.licenses.asl20;
+     }) {};
+
   "ory-hydra-client" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, bytestring
      , case-insensitive, containers, deepseq, exceptions, hspec
@@ -199885,10 +200564,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc-crossref";
-       version = "0.3.12.0";
-       sha256 = "0y991lp6bgjiz67b1w6jywhwzwq5kf385pzl91s4g22lfnhwc7sz";
-       revision = "2";
-       editedCabalFile = "1gms6jaj21sycg3r1yc61xb2p1a5x2cd1z29y6jcjrh02n96g3g4";
+       version = "0.3.12.1";
+       sha256 = "036lw5qa23bg292hgfj3ybfykbqj80fb2f8a26rnivj5pfqblm3w";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -205714,6 +206391,31 @@ self: {
        broken = true;
      }) {};
 
+  "pg-entity" = callPackage
+    ({ mkDerivation, base, bytestring, colourista, exceptions, hspec
+     , hspec-expectations-lifted, hspec-pg-transact, monad-control
+     , parsec, pg-transact, postgresql-simple
+     , postgresql-simple-migration, resource-pool, safe-exceptions
+     , template-haskell, text, text-manipulate, time, uuid, vector
+     }:
+     mkDerivation {
+       pname = "pg-entity";
+       version = "0.0.1.0";
+       sha256 = "0njmlxxisigza4k6v5ci36xm6mpf5jdls2mrlarlw91agxiz8zd9";
+       libraryHaskellDepends = [
+         base bytestring colourista exceptions monad-control parsec
+         pg-transact postgresql-simple resource-pool safe-exceptions
+         template-haskell text text-manipulate time uuid vector
+       ];
+       testHaskellDepends = [
+         base hspec hspec-expectations-lifted hspec-pg-transact pg-transact
+         postgresql-simple postgresql-simple-migration text time uuid vector
+       ];
+       description = "A pleasant PostgreSQL layer";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "pg-extras" = callPackage
     ({ mkDerivation, base, bytestring, HUnit, postgresql-simple
      , raw-strings-qq, text, time
@@ -206371,8 +207073,8 @@ self: {
      }:
      mkDerivation {
        pname = "phonetic-languages-simplified-base";
-       version = "0.4.0.0";
-       sha256 = "1hifw367zc5zkrka4lpjl412ka9zsbdlmn58v2hmbm3j4c09phmj";
+       version = "0.4.1.0";
+       sha256 = "0jwwa1xj1k2bj9iw89lpks04q62zg6sp5ixfhlbs83zwhfz2jplb";
        libraryHaskellDepends = [
          base phonetic-languages-permutations-array subG
        ];
@@ -206409,8 +207111,8 @@ self: {
      }:
      mkDerivation {
        pname = "phonetic-languages-simplified-examples-array";
-       version = "0.14.1.0";
-       sha256 = "170r88sys7xzdxmrq2l31a6g0pwzpwg601aj827f3gn5c0rm3l2p";
+       version = "0.15.1.0";
+       sha256 = "1y9i8278737dqil8gx8m27c8fwlzi949wb86z31r9v8k8irsx3p1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -206561,8 +207263,8 @@ self: {
      }:
      mkDerivation {
        pname = "phonetic-languages-simplified-properties-array";
-       version = "0.11.0.0";
-       sha256 = "1aazfaqvaf7sjidsnvs54nw4bbsnkygv1i3fw0xvcqqzygzns9gk";
+       version = "0.12.0.0";
+       sha256 = "1m4ficmkzp3k6xsg9dby8ch8k8zlc4jvgxxr76pnhy29dkgs8yxp";
        libraryHaskellDepends = [
          base phonetic-languages-rhythmicity
          phonetic-languages-simplified-base ukrainian-phonetics-basic-array
@@ -209808,6 +210510,8 @@ self: {
        pname = "pointed";
        version = "5.0.3";
        sha256 = "0999bba0gbb2qhk1ydaslmdf7ca17ip751psi4phi1lhb250fl8b";
+       revision = "1";
+       editedCabalFile = "00x5chjb3l43n35g7amaj3x32ahlwffp7v5khc1qmzxfqz6z50mv";
        libraryHaskellDepends = [
          base comonad containers data-default-class hashable kan-extensions
          semigroupoids semigroups stm tagged transformers
@@ -210505,8 +211209,8 @@ self: {
      }:
      mkDerivation {
        pname = "polysemy-RandomFu";
-       version = "0.4.3.0";
-       sha256 = "054v54kwkrg13nx9kznkclnmjnynh9j48bk2fjylwd9xqrj1r63a";
+       version = "0.4.4.0";
+       sha256 = "0mh6iiyz859446l8r54bqg8hmaig40kdapq9k4niry35nba6fdr1";
        libraryHaskellDepends = [
          base polysemy polysemy-plugin polysemy-zoo random-fu random-source
        ];
@@ -212513,10 +213217,8 @@ self: {
      }:
      mkDerivation {
        pname = "postgresql-migration";
-       version = "0.2.1.2";
-       sha256 = "168da2n2ky17mygrxnh9z95nwscw2b769xhykmg9d398mnz9a188";
-       revision = "1";
-       editedCabalFile = "09vzsig1jm9n6i6h7ybqlg3ffmgzyg7cpjlwaha9p7w70afjvmgh";
+       version = "0.2.1.3";
+       sha256 = "1qxkan5f328rv3nl31pvhz305k7b4ah98s0j1bc4hcaa5g5d3052";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -217720,6 +218422,8 @@ self: {
        pname = "pseudo-boolean";
        version = "0.1.10.0";
        sha256 = "1p9w1d80d2kp7wp7wp6xf9dz1iv9knhy8b75mklz7zq3cf5gvnrh";
+       revision = "1";
+       editedCabalFile = "05jvm2bhvzsxwiazsvgk6xwzjg1isabqnx8grx1v9hrxr6hjhlap";
        libraryHaskellDepends = [
          attoparsec base bytestring bytestring-builder containers deepseq
          dlist hashable megaparsec parsec void
@@ -217805,10 +218509,8 @@ self: {
      }:
      mkDerivation {
        pname = "psqueues";
-       version = "0.2.7.2";
-       sha256 = "1yckx2csqswghiy9nfj03cybmza8104nmnpbpcc9ngwlbmakn9i6";
-       revision = "1";
-       editedCabalFile = "0d0mm3c8x31dasfzp1884r2irkm3c9irvvbahjzfr1bzzxfb7vyv";
+       version = "0.2.7.3";
+       sha256 = "1cmz7spfzx7niglmsphnndh0m4b8njkn0fhb9nshbnbq6nx515yh";
        libraryHaskellDepends = [ base deepseq ghc-prim hashable ];
        testHaskellDepends = [
          array base deepseq ghc-prim hashable HUnit QuickCheck tagged tasty
@@ -218868,6 +219570,28 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "pusher-http-haskell_2_1_0_6" = callPackage
+    ({ mkDerivation, aeson, base, base16-bytestring, bytestring
+     , cryptonite, hashable, hspec, http-client, http-client-tls
+     , http-types, memory, QuickCheck, text, time, unordered-containers
+     }:
+     mkDerivation {
+       pname = "pusher-http-haskell";
+       version = "2.1.0.6";
+       sha256 = "029pxzidmflsa19417bcx82hbxj3yq1khzb6skf97xbzzf3hs6ki";
+       libraryHaskellDepends = [
+         aeson base base16-bytestring bytestring cryptonite hashable
+         http-client http-client-tls http-types memory text time
+         unordered-containers
+       ];
+       testHaskellDepends = [
+         aeson base bytestring hspec QuickCheck text unordered-containers
+       ];
+       description = "Haskell client library for the Pusher Channels HTTP API";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "pusher-ws" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, deepseq
      , hashable, http-conduit, lens, lens-aeson, network, scientific
@@ -221254,8 +221978,8 @@ self: {
      }:
      mkDerivation {
        pname = "r-glpk-phonetic-languages-ukrainian-durations";
-       version = "0.4.0.0";
-       sha256 = "0rw9scbxhk5v61b7d4hwvwv4jxkkglsnzphslwashalhcfxc39p7";
+       version = "0.4.1.0";
+       sha256 = "1zgxr7c2szzmwk9n9hdir2nfg4gzpzwk4jgzlb95m5wlpagsz3fl";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -223875,8 +224599,8 @@ self: {
      }:
      mkDerivation {
        pname = "readline-in-other-words";
-       version = "0.1.0.0";
-       sha256 = "180arjxnwz6gp4ccjk7kjhyhmic4hgcbcc8klrl79c9vqjjp6hnq";
+       version = "0.1.0.2";
+       sha256 = "1wldgk1dfq4kalxi3mmsyja39mvk2hb40fl83cwqbvhn39brfmq9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -223889,6 +224613,8 @@ self: {
        ];
        description = "Readline effect for in-other-words";
        license = lib.licenses.bsd2;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "readline-statevar" = callPackage
@@ -224135,6 +224861,28 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "rebase_1_13_1" = callPackage
+    ({ mkDerivation, base, bifunctors, bytestring, comonad, containers
+     , contravariant, deepseq, dlist, either, hashable, hashable-time
+     , mtl, profunctors, scientific, selective, semigroupoids, stm, text
+     , time, transformers, unordered-containers, uuid-types, vector
+     , vector-instances, void
+     }:
+     mkDerivation {
+       pname = "rebase";
+       version = "1.13.1";
+       sha256 = "1ffl4lxan27g6fkhyddbgf7n0b57l4zbzngrz0fajdfp96xklsn4";
+       libraryHaskellDepends = [
+         base bifunctors bytestring comonad containers contravariant deepseq
+         dlist either hashable hashable-time mtl profunctors scientific
+         selective semigroupoids stm text time transformers
+         unordered-containers uuid-types vector vector-instances void
+       ];
+       description = "A more progressive alternative to the \"base\" package";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "rebindable" = callPackage
     ({ mkDerivation, base, data-default-class, indexed }:
      mkDerivation {
@@ -224212,23 +224960,6 @@ self: {
      }:
      mkDerivation {
        pname = "record-dot-preprocessor";
-       version = "0.2.12";
-       sha256 = "02vyfcfanf09nd33q37jmnq0wbncvkfjn4hx4yzr62dkmh47bkkf";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [ base extra ghc uniplate ];
-       executableHaskellDepends = [ base extra ];
-       testHaskellDepends = [ base extra filepath record-hasfield ];
-       description = "Preprocessor to allow record.field syntax";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "record-dot-preprocessor_0_2_13" = callPackage
-    ({ mkDerivation, base, extra, filepath, ghc, record-hasfield
-     , uniplate
-     }:
-     mkDerivation {
-       pname = "record-dot-preprocessor";
        version = "0.2.13";
        sha256 = "0kqk8iiqhpqrr0b0bxcy0vqp159cnsf9zri45hbp4npqm2lvcw37";
        isLibrary = true;
@@ -224238,7 +224969,6 @@ self: {
        testHaskellDepends = [ base extra filepath record-hasfield ];
        description = "Preprocessor to allow record.field syntax";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "record-encode" = callPackage
@@ -224807,6 +225537,8 @@ self: {
        pname = "reducers";
        version = "3.12.4";
        sha256 = "0hsycdir52jdijnnvc77jj971fjrrc722v952wr62ivrvx2zarn0";
+       revision = "1";
+       editedCabalFile = "0i5mvhfp5b6dmmk8l93492cyjxn6n9dncmijpbp4hbqi40pr9g47";
        libraryHaskellDepends = [
          array base bytestring containers fingertree hashable semigroupoids
          text transformers unordered-containers
@@ -228564,6 +229296,18 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "rerebase_1_13_1" = callPackage
+    ({ mkDerivation, rebase }:
+     mkDerivation {
+       pname = "rerebase";
+       version = "1.13.1";
+       sha256 = "1g3lwnkykl4np2fzylhi7469y10a3vpxxn1i5mqhm0mmx5lwrhw3";
+       libraryHaskellDepends = [ rebase ];
+       description = "Reexports from \"base\" with a bunch of other standard libraries";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "reroute" = callPackage
     ({ mkDerivation, base, criterion, deepseq, graph-core, hashable
      , hspec, http-api-data, hvect, mtl, random, regex-compat, text
@@ -228682,7 +229426,6 @@ self: {
        executableHaskellDepends = [ base comfort-array lapack ];
        description = "Compute total resistance of a cube of resistors";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "resistor-cube_0_0_1_3" = callPackage
@@ -233712,8 +234455,8 @@ self: {
        pname = "salak";
        version = "0.3.6";
        sha256 = "00qyd09az0ldfidfgcki8z3r9gcpxmss3iyr99as5bky29rlz9n3";
-       revision = "5";
-       editedCabalFile = "1dqanr95rrmjxfw882fa6as7n999883gfsy2765f3rprl7wlmigl";
+       revision = "6";
+       editedCabalFile = "1wrq2rdrxk96an5k1igcn09cma3dz9y2yp58xjlg2lh22djm297m";
        libraryHaskellDepends = [
          base bytestring containers data-default directory dlist exceptions
          filepath hashable heaps megaparsec mtl scientific text time
@@ -234466,8 +235209,8 @@ self: {
      }:
      mkDerivation {
        pname = "satyros";
-       version = "0.2.0.0";
-       sha256 = "12mk86a46i5k4ng8r3f7s3ccs2p9kz345v3b8p8hrmmcgksimkds";
+       version = "0.3.1.3";
+       sha256 = "1d0x3cm0wf4bpncb73b3mzmpcwdnwyf3pi7848hr3blnz5v3aj2b";
        libraryHaskellDepends = [
          base containers extra free lens mtl random vector
        ];
@@ -237765,8 +238508,8 @@ self: {
        pname = "semigroupoids";
        version = "5.3.6";
        sha256 = "0glhqc9x8i5z3bdg23xvl2lfns95msid3h3x0jksna7i6c8j869n";
-       revision = "1";
-       editedCabalFile = "0inbks8x588bpcw7kyap69iy0zrkygycp8hwgrd9yhbxlvj9hmh9";
+       revision = "2";
+       editedCabalFile = "0gnkd1kf1s412p7g4c1l1d1yykhl5hlvdnnn1c85c0h8pi19y4an";
        libraryHaskellDepends = [
          base base-orphans bifunctors comonad containers contravariant
          distributive hashable tagged template-haskell transformers
@@ -238014,8 +238757,8 @@ self: {
      }:
      mkDerivation {
        pname = "sensei";
-       version = "0.5.0";
-       sha256 = "011lck879q12npszqf2cjsxyjrcyfhrs77dh8kbififm53dfglf4";
+       version = "0.6.0";
+       sha256 = "19hbm83v3bn2ximfd5bqjzq1xb079ajxbw1kc8gkm9ds4mg7aw0b";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -240010,8 +240753,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-lucid";
-       version = "0.9.0.2";
-       sha256 = "0l68dffx746j3p2l5x59cj5cdng2dw6vjq5x5h44m0ccbsmlckpz";
+       version = "0.9.0.3";
+       sha256 = "10g7radhkh50hpwf97syh3kpdacw096bnawni0hwwbi6rfgz38nm";
        libraryHaskellDepends = [ base http-media lucid servant text ];
        testHaskellDepends = [ base lucid servant-server wai warp ];
        description = "Servant support for lucid";
@@ -244417,6 +245160,19 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "silently_1_2_5_2" = callPackage
+    ({ mkDerivation, base, deepseq, directory, nanospec, temporary }:
+     mkDerivation {
+       pname = "silently";
+       version = "1.2.5.2";
+       sha256 = "15dnp83b0wj7m5v4r2yfrwxg9g6szv94ldcb74fpidninrqgqns6";
+       libraryHaskellDepends = [ base deepseq directory ];
+       testHaskellDepends = [ base deepseq directory nanospec temporary ];
+       description = "Prevent or capture writing to stdout and other handles";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "silkscreen" = callPackage
     ({ mkDerivation, base, prettyprinter }:
      mkDerivation {
@@ -245936,6 +246692,24 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "singletons-presburger_0_6_1_0" = callPackage
+    ({ mkDerivation, base, ghc-typelits-presburger, mtl, reflection
+     , singletons
+     }:
+     mkDerivation {
+       pname = "singletons-presburger";
+       version = "0.6.1.0";
+       sha256 = "1s12g1qcdz035y2lzjivw2m2jm9hqvbwvgmxvahn4a2j89f4zgky";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base ghc-typelits-presburger mtl reflection singletons
+       ];
+       description = "Presburger Arithmetic Solver for GHC Type-level natural numbers with Singletons package";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "singletons-th" = callPackage
     ({ mkDerivation, base, containers, ghc-boot-th, mtl, singletons
      , syb, template-haskell, th-desugar, th-orphans, transformers
@@ -249704,14 +250478,12 @@ self: {
      }) {};
 
   "snumber" = callPackage
-    ({ mkDerivation, base, numeric-kinds }:
+    ({ mkDerivation, base, numeric-kinds, type-compare }:
      mkDerivation {
        pname = "snumber";
-       version = "0.2.0";
-       sha256 = "0q1xswnh1rymnyi3jpn4fn6fwj36haamwri7ifd4f7jm2a9v1isx";
-       revision = "1";
-       editedCabalFile = "1ai6syqkwa0rl23f23hv6wkqg274lrdsh6jqyy9xiklcl8j3bz5w";
-       libraryHaskellDepends = [ base numeric-kinds ];
+       version = "0.3.0";
+       sha256 = "16kgy0chysxws8n4651qq6bfwyk184v67iv2h2kbiyxl8wqsjq4l";
+       libraryHaskellDepends = [ base numeric-kinds type-compare ];
        description = "Integer singletons with flexible representation";
        license = lib.licenses.asl20;
      }) {};
@@ -251185,6 +251957,8 @@ self: {
        pname = "special-values";
        version = "0.1.0.0";
        sha256 = "1kkdw2c4d2hha99v9f89ahmifjxp7fxmxyfwq9a8xk6s0h9xs51w";
+       revision = "1";
+       editedCabalFile = "10pbx4px4kmg6nwb78bayi26dlzbzvji5zv9fa6f45rk19p2sdlc";
        libraryHaskellDepends = [
          base bytestring ieee754 scientific text
        ];
@@ -256205,6 +256979,29 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "streaming-commons_0_2_2_2" = callPackage
+    ({ mkDerivation, array, async, base, bytestring, deepseq, directory
+     , gauge, hspec, network, process, QuickCheck, random, stm, text
+     , transformers, unix, zlib
+     }:
+     mkDerivation {
+       pname = "streaming-commons";
+       version = "0.2.2.2";
+       sha256 = "0j1hwqadczg4rw9pmiv21qs9kvqxarxqg4dv4cpcrxx72b4xssvq";
+       libraryHaskellDepends = [
+         array async base bytestring directory network process random stm
+         text transformers unix zlib
+       ];
+       testHaskellDepends = [
+         array async base bytestring deepseq hspec network QuickCheck text
+         unix zlib
+       ];
+       benchmarkHaskellDepends = [ base bytestring deepseq gauge text ];
+       description = "Common lower-level functions needed by various streaming data libraries";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "streaming-concurrency" = callPackage
     ({ mkDerivation, base, exceptions, hspec, HUnit, lifted-async
      , monad-control, QuickCheck, quickcheck-instances, stm, streaming
@@ -259669,6 +260466,39 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "swagger2_2_7" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, base, base-compat-batteries
+     , bytestring, Cabal, cabal-doctest, containers, cookie, doctest
+     , generics-sop, Glob, hashable, hspec, hspec-discover, http-media
+     , HUnit, insert-ordered-containers, lens, mtl, network, optics-core
+     , optics-th, QuickCheck, quickcheck-instances, scientific
+     , template-haskell, text, time, transformers, unordered-containers
+     , utf8-string, uuid-types, vector
+     }:
+     mkDerivation {
+       pname = "swagger2";
+       version = "2.7";
+       sha256 = "1p3vi90siylgg94s7izmdvp2i36g017q2hnl90d1rpphi0nd1f6b";
+       setupHaskellDepends = [ base Cabal cabal-doctest ];
+       libraryHaskellDepends = [
+         aeson aeson-pretty base base-compat-batteries bytestring containers
+         cookie generics-sop hashable http-media insert-ordered-containers
+         lens mtl network optics-core optics-th QuickCheck scientific
+         template-haskell text time transformers unordered-containers
+         uuid-types vector
+       ];
+       testHaskellDepends = [
+         aeson base base-compat-batteries bytestring containers doctest Glob
+         hashable hspec HUnit insert-ordered-containers lens mtl QuickCheck
+         quickcheck-instances template-haskell text time
+         unordered-containers utf8-string vector
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Swagger 2.0 data model";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "swapper" = callPackage
     ({ mkDerivation, base, binary, bytestring, deepseq, happstack-data
      , happstack-state, parallel, tokyocabinet
@@ -259786,15 +260616,44 @@ self: {
        license = lib.licenses.lgpl21Only;
      }) {};
 
+  "swish_0_10_0_8" = callPackage
+    ({ mkDerivation, base, containers, directory, filepath, hashable
+     , HUnit, intern, mtl, network-uri, old-locale, polyparse
+     , semigroups, test-framework, test-framework-hunit, text, time
+     }:
+     mkDerivation {
+       pname = "swish";
+       version = "0.10.0.8";
+       sha256 = "1a7iz3d78r00mgkq370zy5fxjkb5x34c9iq3kc3gbl6hs6m6l579";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base containers directory filepath hashable intern mtl network-uri
+         old-locale polyparse text time
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base containers hashable HUnit network-uri old-locale semigroups
+         test-framework test-framework-hunit text time
+       ];
+       description = "A semantic web toolkit";
+       license = lib.licenses.lgpl21Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "swiss-ephemeris" = callPackage
     ({ mkDerivation, base, directory, hspec, hspec-discover, QuickCheck
+     , random, time, vector
      }:
      mkDerivation {
        pname = "swiss-ephemeris";
-       version = "1.3.0.2";
-       sha256 = "0p8fzkd4wqvmc5fjlsb0ri6645n1rg304m8nm9085ipy1svi7sn0";
-       libraryHaskellDepends = [ base ];
-       testHaskellDepends = [ base directory hspec QuickCheck ];
+       version = "1.4.0.0";
+       sha256 = "0ss502h2083qbiprspylwv02lbgidqgi106qs6k4s6jppgay34gx";
+       libraryHaskellDepends = [ base time vector ];
+       testHaskellDepends = [
+         base directory hspec QuickCheck random time vector
+       ];
        testToolDepends = [ hspec-discover ];
        description = "Haskell bindings for the Swiss Ephemeris C library";
        license = lib.licenses.agpl3Only;
@@ -261283,8 +262142,6 @@ self: {
        platforms = [
          "aarch64-linux" "armv7l-linux" "i686-linux" "x86_64-linux"
        ];
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "synthesizer-core" = callPackage
@@ -262890,13 +263747,18 @@ self: {
      }) {};
 
   "tangle" = callPackage
-    ({ mkDerivation, base, transformers }:
+    ({ mkDerivation, barbies, base, containers, lens, transformers }:
      mkDerivation {
        pname = "tangle";
-       version = "0";
-       sha256 = "1ylv73v6ydf39zfks9762dsz27sxr7sbmmk7k628yqc9czj3nj60";
-       libraryHaskellDepends = [ base transformers ];
-       description = "HKD record builder";
+       version = "0.1";
+       sha256 = "0gx8zcshi465wxxrmjrl40l8bph0md764fkjzqrq7w517x8cxdhb";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ barbies base transformers ];
+       executableHaskellDepends = [
+         barbies base containers lens transformers
+       ];
+       description = "Heterogenous memoisation monad";
        license = lib.licenses.bsd3;
      }) {};
 
@@ -267436,6 +268298,25 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "text-printer_0_5_0_2" = callPackage
+    ({ mkDerivation, base, bytestring, pretty, QuickCheck
+     , test-framework, test-framework-quickcheck2, text, text-latin1
+     }:
+     mkDerivation {
+       pname = "text-printer";
+       version = "0.5.0.2";
+       sha256 = "1qzmgqcr1bmz34h24gvnfaxaqr3c7z727xv676sd1x51y2qjj2dl";
+       libraryHaskellDepends = [
+         base bytestring pretty text text-latin1
+       ];
+       testHaskellDepends = [
+         base QuickCheck test-framework test-framework-quickcheck2
+       ];
+       description = "Abstract interface for text builders/printers";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "text-regex-replace" = callPackage
     ({ mkDerivation, attoparsec, base, hspec, QuickCheck, smallcheck
      , text, text-icu
@@ -268230,19 +269111,6 @@ self: {
      }) {};
 
   "th-env" = callPackage
-    ({ mkDerivation, base, markdown-unlit, template-haskell }:
-     mkDerivation {
-       pname = "th-env";
-       version = "0.1.0.2";
-       sha256 = "13rs6p5mq92am9i80c829dcmsrpbihdq8ds6ad7rdl2d23i9pln0";
-       libraryHaskellDepends = [ base template-haskell ];
-       testHaskellDepends = [ base markdown-unlit ];
-       testToolDepends = [ markdown-unlit ];
-       description = "Template Haskell splice that expands to an environment variable";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "th-env_0_1_0_3" = callPackage
     ({ mkDerivation, base, markdown-unlit, template-haskell, th-compat
      }:
      mkDerivation {
@@ -268254,7 +269122,6 @@ self: {
        testToolDepends = [ markdown-unlit ];
        description = "Template Haskell splice that expands to an environment variable";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "th-expand-syns" = callPackage
@@ -268641,6 +269508,26 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "th-test-utils_1_1_1" = callPackage
+    ({ mkDerivation, base, bytestring, tasty, tasty-golden, tasty-hunit
+     , template-haskell, th-orphans, transformers
+     }:
+     mkDerivation {
+       pname = "th-test-utils";
+       version = "1.1.1";
+       sha256 = "03qpszfhb58nmm673zhbkvsmw1ynjr2h19qpggyay2fk5zgq7n3q";
+       libraryHaskellDepends = [
+         base template-haskell th-orphans transformers
+       ];
+       testHaskellDepends = [
+         base bytestring tasty tasty-golden tasty-hunit template-haskell
+         th-orphans transformers
+       ];
+       description = "Utility functions for testing Template Haskell code";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "th-to-exp" = callPackage
     ({ mkDerivation, base, hspec, template-haskell }:
      mkDerivation {
@@ -269269,8 +270156,8 @@ self: {
        pname = "threepenny-gui";
        version = "0.9.1.0";
        sha256 = "00sjkfa9qfnnwqfdw68yb8hq6nm1y5qv9896rzn5aachr7mlfpx2";
-       revision = "2";
-       editedCabalFile = "0pbdkl9gvs6jrwfhrkfyrzra5mw8zy8pycp49czbhghwck51bf8i";
+       revision = "3";
+       editedCabalFile = "0pk2vy2lqifjdm3cw9lhl5nx7aw4ff4g8p6l8p7yc9x7h9m6va16";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -270589,13 +271476,13 @@ self: {
      }) {};
 
   "timers-tick" = callPackage
-    ({ mkDerivation, base, hspec }:
+    ({ mkDerivation, base, hspec, QuickCheck }:
      mkDerivation {
        pname = "timers-tick";
-       version = "0.4.3.0";
-       sha256 = "02qsla7az60ch515hns1nychpdb35xlz2g4iy7jp2d5ak6jzma5r";
+       version = "0.5.0.0";
+       sha256 = "0j4nf3l939dwn35q2qan58pxs4v82s1nh6zm5jgbpq38bhxvjvmc";
        libraryHaskellDepends = [ base ];
-       testHaskellDepends = [ base hspec ];
+       testHaskellDepends = [ base hspec QuickCheck ];
        description = "tick based timers";
        license = lib.licenses.bsd3;
      }) {};
@@ -272095,16 +272982,16 @@ self: {
        license = lib.licenses.mpl20;
      }) {};
 
-  "tomland_1_3_3_0" = callPackage
+  "tomland_1_3_3_1" = callPackage
     ({ mkDerivation, base, bytestring, containers, deepseq, directory
      , hashable, hedgehog, hspec, hspec-hedgehog, hspec-megaparsec
-     , markdown-unlit, megaparsec, mtl, parser-combinators, text, time
-     , transformers, unordered-containers, validation-selective
+     , megaparsec, mtl, parser-combinators, text, time, transformers
+     , unordered-containers, validation-selective
      }:
      mkDerivation {
        pname = "tomland";
-       version = "1.3.3.0";
-       sha256 = "1masnbr5x75727k2rmgcmxqm91139v9wy434ml5a4c3dsry7xyhv";
+       version = "1.3.3.1";
+       sha256 = "1hg6hx9ak43gzzn3h643z54jkp5x0wjad313j8299fsi31768wgg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -272112,10 +272999,6 @@ self: {
          parser-combinators text time transformers unordered-containers
          validation-selective
        ];
-       executableHaskellDepends = [
-         base bytestring containers hashable text time unordered-containers
-       ];
-       executableToolDepends = [ markdown-unlit ];
        testHaskellDepends = [
          base bytestring containers directory hashable hedgehog hspec
          hspec-hedgehog hspec-megaparsec megaparsec text time
@@ -276318,6 +277201,17 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "type-compare" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "type-compare";
+       version = "0.1.1";
+       sha256 = "0k0mb43cx87i7gp6w391gvsnqzfcxdyzmn3fnwqp7nn5vy8x851c";
+       libraryHaskellDepends = [ base ];
+       description = "Type-level Ord compatibility layer";
+       license = lib.licenses.asl20;
+     }) {};
+
   "type-digits" = callPackage
     ({ mkDerivation, base, template-haskell, type-spine }:
      mkDerivation {
@@ -277448,8 +278342,8 @@ self: {
      }:
      mkDerivation {
        pname = "typesafe-precure";
-       version = "0.8.0.1";
-       sha256 = "05rsyiksmw3gilr944hr1q12alinsy842qwzvc444iwyvc4f0i17";
+       version = "0.8.1.1";
+       sha256 = "10siihvba8c4zbwvw247zrx9z5v5sgr8vswjbbiw9gn7qdiq8ppa";
        libraryHaskellDepends = [
          aeson aeson-pretty autoexporter base bytestring dlist
          monad-skeleton template-haskell text th-data-compat
@@ -278147,8 +279041,8 @@ self: {
     ({ mkDerivation, base, bytestring, mmsyn2-array, mmsyn5 }:
      mkDerivation {
        pname = "ukrainian-phonetics-basic-array";
-       version = "0.4.1.0";
-       sha256 = "09gs3d37njv5acr6nqcw899y0pycy4qxnqc36d7f4r8ny4w8lvp5";
+       version = "0.4.2.0";
+       sha256 = "1qw75wp493bnzwcbmhaifm4m7dj71f5q16xcscmgsysf1lj2y3m3";
        libraryHaskellDepends = [ base bytestring mmsyn2-array mmsyn5 ];
        description = "A library to work with the basic Ukrainian phonetics and syllable segmentation";
        license = lib.licenses.mit;
@@ -278769,6 +279663,34 @@ self: {
        license = lib.licenses.bsd2;
      }) {};
 
+  "unicode-collation_0_1_3_1" = callPackage
+    ({ mkDerivation, base, binary, bytestring, containers, parsec
+     , QuickCheck, quickcheck-instances, tasty, tasty-bench, tasty-hunit
+     , tasty-quickcheck, template-haskell, text, text-icu
+     , th-lift-instances, unicode-transforms
+     }:
+     mkDerivation {
+       pname = "unicode-collation";
+       version = "0.1.3.1";
+       sha256 = "1b04ml07ghfsh9cmp6b0l8c6ywxrn3c4xs7swvlmxx64asmicf3i";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base binary bytestring containers parsec template-haskell text
+         th-lift-instances
+       ];
+       testHaskellDepends = [
+         base bytestring tasty tasty-hunit tasty-quickcheck text
+         unicode-transforms
+       ];
+       benchmarkHaskellDepends = [
+         base QuickCheck quickcheck-instances tasty-bench text text-icu
+       ];
+       description = "Haskell implementation of the Unicode Collation Algorithm";
+       license = lib.licenses.bsd2;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "unicode-data" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -278864,6 +279786,20 @@ self: {
        broken = true;
      }) {};
 
+  "unicode-show_0_1_0_5" = callPackage
+    ({ mkDerivation, base, hspec, QuickCheck }:
+     mkDerivation {
+       pname = "unicode-show";
+       version = "0.1.0.5";
+       sha256 = "0iq2fivi6fclra32y5yqc6p18pd7qlyxb042hkc082pvgmj8b40v";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base hspec QuickCheck ];
+       description = "print and show in unicode";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "unicode-symbols" = callPackage
     ({ mkDerivation, base, containers }:
      mkDerivation {
@@ -279134,8 +280070,8 @@ self: {
        pname = "union";
        version = "0.1.2";
        sha256 = "1i4fvlwkw1wx64a6l8342aqfqsdq7fqa4p24g3i5gn5704lxrsb3";
-       revision = "6";
-       editedCabalFile = "1n1innjiqksancaazsczryyjfr7905q1iq9radwqq5ngl8xi83wz";
+       revision = "7";
+       editedCabalFile = "1xcm1v2dipdahd4c6hki0fx9a7vg52q3wz5aa8nw5lxjkc4s3xn8";
        libraryHaskellDepends = [
          base deepseq hashable profunctors tagged vinyl
        ];
@@ -279262,6 +280198,8 @@ self: {
        pname = "unique";
        version = "0.0.1";
        sha256 = "1dgln2dr64ma1isqskj1qnjslg9smmr7jssg8hmk68wp36i3rwkd";
+       revision = "1";
+       editedCabalFile = "0l95cgs8hbvakrcqzqk5l9rkz3cr3jnnszq7pgjnxrqfhgsp58r7";
        libraryHaskellDepends = [ base hashable ];
        description = "Fully concurrent unique identifiers";
        license = lib.licenses.bsd3;
@@ -279896,23 +280834,11 @@ self: {
     ({ mkDerivation, base, bytestring }:
      mkDerivation {
        pname = "unix-bytestring";
-       version = "0.3.7.5";
-       sha256 = "003003nh00aww2k8wdygjp0z7f61z8nz8840iinww83xph5wsih5";
-       libraryHaskellDepends = [ base bytestring ];
-       description = "Unix/Posix-specific functions for ByteStrings";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "unix-bytestring_0_3_7_6" = callPackage
-    ({ mkDerivation, base, bytestring }:
-     mkDerivation {
-       pname = "unix-bytestring";
        version = "0.3.7.6";
        sha256 = "1f9hf7blxy8ckakd0klrs16q0hfvxfarbjgyrc7azgbb86m1skb3";
        libraryHaskellDepends = [ base bytestring ];
        description = "Unix/Posix-specific functions for ByteStrings";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "unix-compat" = callPackage
@@ -280321,6 +281247,29 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "unordered-containers_0_2_15_0" = callPackage
+    ({ mkDerivation, base, bytestring, ChasingBottoms, containers
+     , deepseq, gauge, hashable, hashmap, HUnit, mtl, QuickCheck, random
+     , test-framework, test-framework-hunit, test-framework-quickcheck2
+     }:
+     mkDerivation {
+       pname = "unordered-containers";
+       version = "0.2.15.0";
+       sha256 = "0s6kmkz0p5iw5bkmbv4fhgd6cb7v8a75wkv7h5acxp52h3qfm4kc";
+       libraryHaskellDepends = [ base deepseq hashable ];
+       testHaskellDepends = [
+         base ChasingBottoms containers hashable HUnit QuickCheck random
+         test-framework test-framework-hunit test-framework-quickcheck2
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring containers deepseq gauge hashable hashmap mtl
+         random
+       ];
+       description = "Efficient hashing-based container types";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "unordered-containers-rematch" = callPackage
     ({ mkDerivation, base, hashable, hspec, HUnit, rematch
      , unordered-containers
@@ -283963,6 +284912,21 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "vector-th-unbox_0_2_2" = callPackage
+    ({ mkDerivation, base, data-default, template-haskell, vector }:
+     mkDerivation {
+       pname = "vector-th-unbox";
+       version = "0.2.2";
+       sha256 = "0j81m09xxv24zziv0nanfppckzmas5184jr3npjhc9w49r3cm94a";
+       revision = "1";
+       editedCabalFile = "1kwjmjmp5pk9n9hps2y8kzjz4p42mcmzki8mypfhc0360n97r0wn";
+       libraryHaskellDepends = [ base template-haskell vector ];
+       testHaskellDepends = [ base data-default vector ];
+       description = "Deriver for Data.Vector.Unboxed using Template Haskell";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "vectortiles" = callPackage
     ({ mkDerivation, base, bytestring, containers, criterion, deepseq
      , hashable, microlens, microlens-platform, mtl, protocol-buffers
@@ -284016,8 +284980,8 @@ self: {
      }:
      mkDerivation {
        pname = "venzone";
-       version = "1.0.0.6";
-       sha256 = "1x0034ww13apr1g6mscncacri3nvnmjll7spsip1dnc70ilffk77";
+       version = "1.1.0.0";
+       sha256 = "19ivc72skzl8h06h5bfl6lfnph3knd9zz7842rsarjknbmszrgqg";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -285421,8 +286385,8 @@ self: {
      }:
      mkDerivation {
        pname = "vulkan";
-       version = "3.13.1";
-       sha256 = "1z5a7flk0c68p70l4mqc8ws45l4yqj4rfrcqshbbfqq54dwc5nlx";
+       version = "3.13.2";
+       sha256 = "1bbqz5xpd3jw71m70pdg6nifi63m0s42jvnldf55nj2ms0mzjmhr";
        libraryHaskellDepends = [ base bytestring transformers vector ];
        libraryPkgconfigDepends = [ vulkan ];
        testHaskellDepends = [
@@ -289014,6 +289978,7 @@ self: {
        description = "Binding to the Webkit library";
        license = lib.licenses.lgpl21Only;
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {inherit (pkgs) webkitgtk;};
 
   "webkitgtk3-javascriptcore" = callPackage
@@ -290266,6 +291231,8 @@ self: {
        pname = "witherable";
        version = "0.4.2";
        sha256 = "0121ic4xkv3k568j23zp22a5lrv0k11h94fq7cbijd18fjr2n3br";
+       revision = "1";
+       editedCabalFile = "1mwmnc4pdsw0v8p9bh8n49xjjmbyf5bd0kvlg970iyq3cqik546f";
        libraryHaskellDepends = [
          base base-orphans containers hashable indexed-traversable
          indexed-traversable-instances transformers unordered-containers
@@ -293832,8 +294799,8 @@ self: {
      }:
      mkDerivation {
        pname = "xmobar";
-       version = "0.39";
-       sha256 = "1k1n3ff0ikdmfq0mi8r2vpqg1iq6hsw1drvxps6k98rvvn87pws6";
+       version = "0.40";
+       sha256 = "1mrdiblm8vilkm1w23pz6xbi16zh1b1lvql26czjzw5k79vd67sf";
        configureFlags = [
          "-fwith_alsa" "-fwith_conduit" "-fwith_datezone" "-fwith_dbus"
          "-fwith_inotify" "-fwith_iwlib" "-fwith_mpd" "-fwith_mpris"
diff --git a/pkgs/development/interpreters/erlang/R24.nix b/pkgs/development/interpreters/erlang/R24.nix
index 589a836967c05..544bfbec5305a 100644
--- a/pkgs/development/interpreters/erlang/R24.nix
+++ b/pkgs/development/interpreters/erlang/R24.nix
@@ -3,6 +3,6 @@
 # How to obtain `sha256`:
 # nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz
 mkDerivation {
-  version = "24.1.4";
-  sha256 = "sha256-QE2VRayIswVrAOv9/bq+ebv3xxIL3fFMnfm5u1Wh8j4=";
+  version = "24.1.6";
+  sha256 = "sha256-Jh9w3+ft1RZjmb4PriCmHPj0tgkx8LBFjsg1s4BGojs=";
 }
diff --git a/pkgs/development/interpreters/wasmer/default.nix b/pkgs/development/interpreters/wasmer/default.nix
index 4dcb70bd3ec7e..6c714bc3de5fb 100644
--- a/pkgs/development/interpreters/wasmer/default.nix
+++ b/pkgs/development/interpreters/wasmer/default.nix
@@ -22,20 +22,18 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [ cmake pkg-config ];
 
+  # cranelift+jit works everywhere, see:
+  # https://github.com/wasmerio/wasmer/blob/master/Makefile#L22
+  buildFeatures = [ "cranelift" "jit" ];
   cargoBuildFlags = [
-    # cranelift+jit works everywhere, see:
-    # https://github.com/wasmerio/wasmer/blob/master/Makefile#L22
-    "--features" "cranelift,jit"
     # must target manifest and desired output bin, otherwise output is empty
     "--manifest-path" "lib/cli/Cargo.toml"
     "--bin" "wasmer"
   ];
 
-  cargoTestFlags = [
-    "--features" "test-cranelift"
-    # Can't use test-jit :
-    # error: Package `wasmer-workspace v2.0.0 (/build/source)` does not have the feature `test-jit`
-  ];
+  # Can't use test-jit:
+  # error: Package `wasmer-workspace v2.0.0 (/build/source)` does not have the feature `test-jit`
+  checkFeatures = [ "test-cranelift" ];
 
   LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
 
diff --git a/pkgs/development/libraries/agg/default.nix b/pkgs/development/libraries/agg/default.nix
index 39e27c909b50a..e5ce7537f250a 100644
--- a/pkgs/development/libraries/agg/default.nix
+++ b/pkgs/development/libraries/agg/default.nix
@@ -8,8 +8,18 @@ stdenv.mkDerivation rec {
     url = "https://www.antigrain.com/${pname}-${version}.tar.gz";
     sha256 = "07wii4i824vy9qsvjsgqxppgqmfdxq0xa87i5yk53fijriadq7mb";
   };
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ autoconf automake libtool freetype SDL libX11 ];
+  nativeBuildInputs = [
+    pkg-config
+    autoconf
+    automake
+    libtool
+  ];
+  buildInputs = [
+    freetype
+    SDL
+  ] ++ lib.optionals stdenv.isLinux [
+    libX11
+  ];
 
   postPatch = ''
     substituteInPlace include/agg_renderer_outline_aa.h \
@@ -22,7 +32,11 @@ stdenv.mkDerivation rec {
     sh autogen.sh
   '';
 
-  configureFlags = [ "--x-includes=${libX11.dev}/include" "--x-libraries=${libX11.out}/lib" "--enable-examples=no" ];
+  configureFlags = lib.optionals stdenv.isLinux [
+    "--x-includes=${lib.getDev libX11}/include"
+    "--x-libraries=${lib.getLib libX11}/lib"
+    "--enable-examples=no"
+  ];
 
   # libtool --tag=CXX --mode=link g++ -g -O2 libexamples.la ../src/platform/X11/libaggplatformX11.la ../src/libagg.la -o alpha_mask2 alpha_mask2.o
   # libtool: error: cannot find the library 'libexamples.la'
@@ -43,6 +57,6 @@ stdenv.mkDerivation rec {
 
     license = lib.licenses.gpl2Plus;
     homepage = "http://www.antigrain.com/";
-    platforms = lib.platforms.linux;
+    platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/faudio/default.nix b/pkgs/development/libraries/faudio/default.nix
index 4082ccfb1d0e1..baf2b10243796 100644
--- a/pkgs/development/libraries/faudio/default.nix
+++ b/pkgs/development/libraries/faudio/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "faudio";
-  version = "21.09";
+  version = "21.10";
 
   src = fetchFromGitHub {
     owner = "FNA-XNA";
     repo = "FAudio";
     rev = version;
-    sha256 = "sha256-/hc++LEqH7vg2IK/x6sVP5864QF+3xd++HK/tIp0IRA=";
+    sha256 = "sha256-gh/QYH25j9A+XalW6ajRjs+yOYEfkZmw11CHjR6LK1E=";
   };
 
   nativeBuildInputs = [cmake];
diff --git a/pkgs/development/libraries/igraph/default.nix b/pkgs/development/libraries/igraph/default.nix
index 03573716fa351..159943d8db4bd 100644
--- a/pkgs/development/libraries/igraph/default.nix
+++ b/pkgs/development/libraries/igraph/default.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "igraph";
-  version = "0.9.4";
+  version = "0.9.5";
 
   src = fetchFromGitHub {
     owner = "igraph";
     repo = pname;
     rev = version;
-    sha256 = "sha256-tF+cnJRv125bSpZIpABTIHAfJO4TNfSBHjnzpNTbFgk=";
+    sha256 = "sha256-R5v1nbfYyIOzdw7LmkGQE4yVxpTVs6YF62jkfFrA1z8=";
   };
 
   # Normally, igraph wants us to call bootstrap.sh, which will call
diff --git a/pkgs/development/libraries/iqueue/default.nix b/pkgs/development/libraries/iqueue/default.nix
new file mode 100644
index 0000000000000..04fd7202d1d16
--- /dev/null
+++ b/pkgs/development/libraries/iqueue/default.nix
@@ -0,0 +1,22 @@
+{ lib, stdenv, fetchurl, pkg-config, libbsd, microsoft_gsl }:
+
+stdenv.mkDerivation rec {
+  pname = "iqueue";
+  version = "0.1.0";
+  src = fetchurl {
+    url = "https://github.com/twosigma/iqueue/releases/download/v${version}/iqueue-${version}.tar.gz";
+    sha256 = "0049fnr02k15gr21adav33swrwxrpbananilnrp63vp5zs5v9m4x";
+  };
+
+  doCheck = true;
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ libbsd microsoft_gsl ];
+
+  meta = with lib; {
+    homepage = "https://github.com/twosigma/iqueue";
+    description = "Indexed queue";
+    license = licenses.asl20;
+    platforms = [ "x86_64-linux" ];
+    maintainers = [ maintainers.catern ];
+  };
+}
diff --git a/pkgs/development/libraries/java/mockobjects/builder.sh b/pkgs/development/libraries/java/mockobjects/builder.sh
deleted file mode 100755
index fd5d1a20869c6..0000000000000
--- a/pkgs/development/libraries/java/mockobjects/builder.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-set -e
-source $stdenv/setup
-
-tar xvf $src
-mkdir -p $out
-mv * $out
diff --git a/pkgs/development/libraries/java/mockobjects/default.nix b/pkgs/development/libraries/java/mockobjects/default.nix
index e20d7e707e717..3780ef4abed2d 100644
--- a/pkgs/development/libraries/java/mockobjects/default.nix
+++ b/pkgs/development/libraries/java/mockobjects/default.nix
@@ -2,13 +2,24 @@
 
 stdenv.mkDerivation {
   name = "mockobjects-0.09";
-  builder = ./builder.sh;
 
   src = fetchurl {
     url = "mirror://sourceforge/mockobjects/mockobjects-bin-0.09.tar";
     sha256 = "18rnyqfcyh0s3dwkkaszdd50ssyjx5fa1y3ii309ldqg693lfgnz";
   };
 
+  # Work around the "unpacker appears to have produced no directories"
+  setSourceRoot = "sourceRoot=`pwd`";
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/java
+    cp mockobjects-*.jar $out/share/java
+
+    runHook postInstall
+  '';
+
   meta = with lib; {
     description = "Generic unit testing framework and methodology for testing any kind of code";
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/java/smack/builder.sh b/pkgs/development/libraries/java/smack/builder.sh
deleted file mode 100644
index c97259e6a17ea..0000000000000
--- a/pkgs/development/libraries/java/smack/builder.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-source $stdenv/setup
-
-mkdir smack
-cd smack
-tar xfvz $src
-mkdir -p $out/share/java
-cp libs/smack-*.jar $out/share/java
diff --git a/pkgs/development/libraries/java/smack/default.nix b/pkgs/development/libraries/java/smack/default.nix
index f831bfc8b9338..c5d6098a3cde2 100644
--- a/pkgs/development/libraries/java/smack/default.nix
+++ b/pkgs/development/libraries/java/smack/default.nix
@@ -2,13 +2,23 @@
 
 stdenv.mkDerivation {
   name = "smack-4.1.9";
-  builder = ./builder.sh;
 
   src = fetchurl {
     url = "http://www.igniterealtime.org/downloadServlet?filename=smack/smack_4_1_9.tar.gz";
     sha256 = "009x0qcxd4dkvwcjz2nla470pwbabwvg37wc21pslpw42ldi0bzp";
   };
 
+  sourceRoot = ".";
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/java
+    cp libs/smack-*.jar $out/share/java
+
+    runHook postInstall
+  '';
+
   meta = {
     description = "A XMPP (Jabber) client library for instant messaging and presence";
     homepage = "http://www.igniterealtime.org/projects/smack/";
diff --git a/pkgs/development/libraries/libdeltachat/default.nix b/pkgs/development/libraries/libdeltachat/default.nix
index c401240f7d506..8f6beb01ea39b 100644
--- a/pkgs/development/libraries/libdeltachat/default.nix
+++ b/pkgs/development/libraries/libdeltachat/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libdeltachat";
-  version = "1.64.0";
+  version = "1.65.0";
 
   src = fetchFromGitHub {
     owner = "deltachat";
     repo = "deltachat-core-rust";
     rev = version;
-    sha256 = "04a1ncikapx53jjrx0ac1qi907wlj6javylz4aksg4nfbph6y9j4";
+    sha256 = "1k906pll4k8bc2xc9qd9g7q10rikbij2sy0w2wg9mf335rfym6z4";
   };
 
   patches = [
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    sha256 = "0skrzxn99c1gqil7z0dv0xhg883k98v6mh96nycf7whl2d25965x";
+    sha256 = "0jc9kyn5h3cn2ni5h3km47sfprpxr7hc96ca01yal2zyksm7zqxn";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libinput/default.nix b/pkgs/development/libraries/libinput/default.nix
index baee67cb826da..54843486e1372 100644
--- a/pkgs/development/libraries/libinput/default.nix
+++ b/pkgs/development/libraries/libinput/default.nix
@@ -3,6 +3,7 @@
 , documentationSupport ? false, doxygen, graphviz # Documentation
 , eventGUISupport ? false, cairo, glib, gtk3 # GUI event viewer support
 , testsSupport ? false, check, valgrind, python3
+, nixosTests
 }:
 
 let
@@ -76,6 +77,10 @@ stdenv.mkDerivation rec {
 
   doCheck = testsSupport && stdenv.hostPlatform == stdenv.buildPlatform;
 
+  passthru.tests = {
+    libinput-module = nixosTests.libinput;
+  };
+
   meta = with lib; {
     description = "Handles input devices in Wayland compositors and provides a generic X.Org input driver";
     homepage    = "https://www.freedesktop.org/wiki/Software/libinput/";
diff --git a/pkgs/development/libraries/mapnik/default.nix b/pkgs/development/libraries/mapnik/default.nix
index 6fff0c1e1bbcf..14eb3c047e2a4 100644
--- a/pkgs/development/libraries/mapnik/default.nix
+++ b/pkgs/development/libraries/mapnik/default.nix
@@ -93,7 +93,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "An open source toolkit for developing mapping applications";
     homepage = "https://mapnik.org";
-    maintainers = with maintainers; [ hrdinka ];
+    maintainers = with maintainers; [ hrdinka erictapen ];
     license = licenses.lgpl21;
     platforms = platforms.all;
     # https://github.com/mapnik/mapnik/issues/4232
diff --git a/pkgs/development/libraries/mumlib/default.nix b/pkgs/development/libraries/mumlib/default.nix
deleted file mode 100644
index 02f0cd671f280..0000000000000
--- a/pkgs/development/libraries/mumlib/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ stdenv, lib, fetchFromGitHub, cmake, pkg-config
-, boost, openssl, log4cpp, libopus, protobuf }:
-with lib; stdenv.mkDerivation {
-  pname = "mumlib";
-  version = "unstable-2018-12-12";
-
-  src = fetchFromGitHub {
-    owner = "slomkowski";
-    repo = "mumlib";
-    rev = "f91720de264c0ab5e02bb30deafc5c4b2c245eac";
-    sha256 = "0p29z8379dp2ra0420x8xjp4d3r2mf680lj38xmlc8npdzqjqjdp";
-  };
-
-  buildInputs = [ boost openssl libopus protobuf log4cpp ];
-  nativeBuildInputs = [ cmake pkg-config ];
-  installPhase = ''
-    install -Dm555 libmumlib.so $out/lib/libmumlib.so
-    cp -a ../include $out
-  '';
-
-  meta = {
-    description = "Fairy simple Mumble library written in C++, using boost::asio asynchronous networking framework";
-    homepage = "https://github.com/slomkowski/mumlib";
-    maintainers = with maintainers; [ das_j ];
-    license = licenses.gpl2;
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/proj/default.nix b/pkgs/development/libraries/proj/default.nix
index 134532308c882..7ab64cf59c578 100644
--- a/pkgs/development/libraries/proj/default.nix
+++ b/pkgs/development/libraries/proj/default.nix
@@ -42,6 +42,11 @@ stdenv.mkDerivation rec {
     "-DRUN_NETWORK_DEPENDENT_TESTS=OFF"
   ];
 
+  preCheck = ''
+    export HOME=$TMPDIR
+    export TMP=$TMPDIR
+  '';
+
   doCheck = true;
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/science/math/scs/default.nix b/pkgs/development/libraries/science/math/scs/default.nix
index 96f543e430f0c..10ea82f93d268 100644
--- a/pkgs/development/libraries/science/math/scs/default.nix
+++ b/pkgs/development/libraries/science/math/scs/default.nix
@@ -4,13 +4,13 @@ assert (!blas.isILP64) && (!lapack.isILP64);
 
 stdenv.mkDerivation rec {
   pname = "scs";
-  version = "2.1.1";
+  version = "3.0.0";
 
   src = fetchFromGitHub {
     owner = "cvxgrp";
     repo = "scs";
     rev = version;
-    sha256 = "14g5m3lcvrbwpq1bq0liq00jh0gm1947lg3z4jfsp43f6p5alb20";
+    sha256 = "sha256-Lly28KDDZ5hJyiMOhiX/3VaKs0iPcSqizOurZevhfCo=";
   };
 
   # Actually link and add libgfortran to the rpath
diff --git a/pkgs/development/libraries/sqlite/default.nix b/pkgs/development/libraries/sqlite/default.nix
index 96028009e2cbf..acfce3d2e77af 100644
--- a/pkgs/development/libraries/sqlite/default.nix
+++ b/pkgs/development/libraries/sqlite/default.nix
@@ -1,10 +1,8 @@
-{ lib, stdenv, fetchurl, zlib, interactive ? false, readline ? null, ncurses ? null
+{ lib, stdenv, fetchurl, zlib, interactive ? false, readline, ncurses
 , python3Packages
 , enableDeserialize ? false
 }:
 
-assert interactive -> readline != null && ncurses != null;
-
 with lib;
 
 let
@@ -93,6 +91,7 @@ stdenv.mkDerivation rec {
     downloadPage = "https://sqlite.org/download.html";
     homepage = "https://www.sqlite.org/";
     license = licenses.publicDomain;
+    mainProgram = "sqlite3";
     maintainers = with maintainers; [ eelco np ];
     platforms = platforms.unix ++ platforms.windows;
   };
diff --git a/pkgs/development/libraries/stxxl/default.nix b/pkgs/development/libraries/stxxl/default.nix
index 5cc0e6037a23d..391424ee2c93d 100644
--- a/pkgs/development/libraries/stxxl/default.nix
+++ b/pkgs/development/libraries/stxxl/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchFromGitHub
 , cmake
-, parallel ? true
+, parallelSupport ? (!stdenv.isDarwin)
 }:
 
 let
@@ -25,11 +25,12 @@ stdenv.mkDerivation rec {
   cmakeFlags = [
     "-DBUILD_SHARED_LIBS=ON"
     "-DBUILD_STATIC_LIBS=OFF"
-    (mkFlag parallel "USE_GNU_PARALLEL")
+    (mkFlag parallelSupport "USE_GNU_PARALLEL")
+    (mkFlag parallelSupport "USE_OPENMP")
   ];
 
   passthru = {
-    inherit parallel;
+    inherit parallelSupport;
   };
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/unicorn/default.nix b/pkgs/development/libraries/unicorn/default.nix
index 0a760c07a97e5..2be3c95082914 100644
--- a/pkgs/development/libraries/unicorn/default.nix
+++ b/pkgs/development/libraries/unicorn/default.nix
@@ -2,20 +2,22 @@
 , fetchFromGitHub
 , pkg-config
 , cmake
+, IOKit
 }:
 
 stdenv.mkDerivation rec {
   pname = "unicorn";
-  version = "1.0.3";
+  version = "2.0.0-rc4";
 
   src = fetchFromGitHub {
     owner = "unicorn-engine";
     repo = pname;
     rev = version;
-    sha256 = "079azb1df4nwsnsck36b200rnf03aqilw30h3fiaqi1ixash957k";
+    sha256 = "sha256-dNBebXp8HVmmY1RVRYuRFoJ3PStCf4taNTeYKi2lhQM=";
   };
 
   nativeBuildInputs = [ pkg-config cmake ];
+  buildInputs = lib.optionals stdenv.isDarwin [ IOKit ];
 
   meta = with lib; {
     description = "Lightweight multi-platform CPU emulator library";
diff --git a/pkgs/development/misc/google-clasp/google-clasp.nix b/pkgs/development/misc/google-clasp/google-clasp.nix
index baacee29ff201..6bb4ea8fbd67c 100644
--- a/pkgs/development/misc/google-clasp/google-clasp.nix
+++ b/pkgs/development/misc/google-clasp/google-clasp.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/development/mobile/androidenv/emulator.nix b/pkgs/development/mobile/androidenv/emulator.nix
index 2746a60247bfe..eec99498a1602 100644
--- a/pkgs/development/mobile/androidenv/emulator.nix
+++ b/pkgs/development/mobile/androidenv/emulator.nix
@@ -3,7 +3,7 @@
 deployAndroidPackage {
   inherit package os;
   buildInputs = [ autoPatchelfHook makeWrapper ]
-  ++ lib.optional (os == "linux") [
+  ++ lib.optionals (os == "linux") [
     pkgs.glibc
     pkgs.xorg.libX11
     pkgs.xorg.libXext
@@ -18,6 +18,7 @@ deployAndroidPackage {
     pkgs.libcxx
     pkgs.libGL
     pkgs.libpulseaudio
+    pkgs.libuuid
     pkgs.zlib
     pkgs.ncurses5
     pkgs.stdenv.cc.cc
diff --git a/pkgs/development/node-packages/composition.nix b/pkgs/development/node-packages/composition.nix
index 64326c6b21602..53bdef1f98646 100644
--- a/pkgs/development/node-packages/composition.nix
+++ b/pkgs/development/node-packages/composition.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ./node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/development/node-packages/default.nix b/pkgs/development/node-packages/default.nix
index ea5ab3eadae81..45c566b0d6016 100644
--- a/pkgs/development/node-packages/default.nix
+++ b/pkgs/development/node-packages/default.nix
@@ -243,6 +243,11 @@ let
             url = "https://github.com/svanderburg/node2nix/commit/58736093161f2d237c17e75a96529b018cd0ac64.patch";
             sha256 = "0sif7803c9g6gjmmdniw5qxrq5igiz9nqdmdrcf1hxfi5x43a32h";
           })
+          # Extract common logic from composePackage to a shell function
+          (fetchpatch {
+            url = "https://github.com/svanderburg/node2nix/commit/e4c951971df6c9f9584c7252971c13b55c369916.patch";
+            sha256 = "0w8fcyr12g2340rn06isv40jkmz2khmak81c95zpkjgipzx7hp7w";
+          })
         ];
       };
       postInstall = ''
diff --git a/pkgs/development/node-packages/node-env.nix b/pkgs/development/node-packages/node-env.nix
index 21089c4d5459e..5f055785791ba 100644
--- a/pkgs/development/node-packages/node-env.nix
+++ b/pkgs/development/node-packages/node-env.nix
@@ -1,6 +1,6 @@
 # This file originates from node2nix
 
-{lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile}:
+{lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile, writeShellScript}:
 
 let
   # Workaround to cope with utillinux in Nixpkgs 20.09 and util-linux in Nixpkgs master
@@ -40,36 +40,22 @@ let
       '';
     };
 
-  includeDependencies = {dependencies}:
-    lib.optionalString (dependencies != [])
-      (lib.concatMapStrings (dependency:
-        ''
-          # Bundle the dependencies of the package
-          mkdir -p node_modules
-          cd node_modules
-
-          # Only include dependencies if they don't exist. They may also be bundled in the package.
-          if [ ! -e "${dependency.name}" ]
-          then
-              ${composePackage dependency}
-          fi
+  # Common shell logic
+  installPackage = writeShellScript "install-package" ''
+    installPackage() {
+      local packageName=$1 src=$2
 
-          cd ..
-        ''
-      ) dependencies);
+      local strippedName
 
-  # Recursively composes the dependencies of a package
-  composePackage = { name, packageName, src, dependencies ? [], ... }@args:
-    builtins.addErrorContext "while evaluating node package '${packageName}'" ''
-      DIR=$(pwd)
+      local DIR=$PWD
       cd $TMPDIR
 
-      unpackFile ${src}
+      unpackFile $src
 
       # Make the base dir in which the target dependency resides first
-      mkdir -p "$(dirname "$DIR/${packageName}")"
+      mkdir -p "$(dirname "$DIR/$packageName")"
 
-      if [ -f "${src}" ]
+      if [ -f "$src" ]
       then
           # Figure out what directory has been unpacked
           packageDir="$(find . -maxdepth 1 -type d | tail -1)"
@@ -79,28 +65,53 @@ let
           chmod -R u+w "$packageDir"
 
           # Move the extracted tarball into the output folder
-          mv "$packageDir" "$DIR/${packageName}"
-      elif [ -d "${src}" ]
+          mv "$packageDir" "$DIR/$packageName"
+      elif [ -d "$src" ]
       then
           # Get a stripped name (without hash) of the source directory.
           # On old nixpkgs it's already set internally.
           if [ -z "$strippedName" ]
           then
-              strippedName="$(stripHash ${src})"
+              strippedName="$(stripHash $src)"
           fi
 
           # Restore write permissions to make building work
           chmod -R u+w "$strippedName"
 
           # Move the extracted directory into the output folder
-          mv "$strippedName" "$DIR/${packageName}"
+          mv "$strippedName" "$DIR/$packageName"
       fi
 
-      # Unset the stripped name to not confuse the next unpack step
-      unset strippedName
+      # Change to the package directory to install dependencies
+      cd "$DIR/$packageName"
+    }
+  '';
 
-      # Include the dependencies of the package
-      cd "$DIR/${packageName}"
+  # Bundle the dependencies of the package
+  #
+  # Only include dependencies if they don't exist. They may also be bundled in the package.
+  includeDependencies = {dependencies}:
+    lib.optionalString (dependencies != []) (
+      ''
+        mkdir -p node_modules
+        cd node_modules
+      ''
+      + (lib.concatMapStrings (dependency:
+        ''
+          if [ ! -e "${dependency.name}" ]; then
+              ${composePackage dependency}
+          fi
+        ''
+      ) dependencies)
+      + ''
+        cd ..
+      ''
+    );
+
+  # Recursively composes the dependencies of a package
+  composePackage = { name, packageName, src, dependencies ? [], ... }@args:
+    builtins.addErrorContext "while evaluating node package '${packageName}'" ''
+      installPackage "${packageName}" "${src}"
       ${includeDependencies { inherit dependencies; }}
       cd ..
       ${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
@@ -415,6 +426,8 @@ let
       passAsFile = [ "compositionScript" "pinpointDependenciesScript" ];
 
       installPhase = ''
+        source ${installPackage}
+
         # Create and enter a root node_modules/ folder
         mkdir -p $out/lib/node_modules
         cd $out/lib/node_modules
@@ -492,6 +505,8 @@ let
         passAsFile = [ "includeScript" "pinpointDependenciesScript" ];
 
         installPhase = ''
+          source ${installPackage}
+
           mkdir -p $out/${packageName}
           cd $out/${packageName}
 
diff --git a/pkgs/development/node-packages/node-packages.nix b/pkgs/development/node-packages/node-packages.nix
index 17d137e36bd68..955b684a9ff76 100644
--- a/pkgs/development/node-packages/node-packages.nix
+++ b/pkgs/development/node-packages/node-packages.nix
@@ -22,6 +22,15 @@ let
         sha512 = "t4WmWoGV9gyzypwG3y3JlcK2t8fKLtvzBA7xEoFTj9SMPvOuLsf13uh4ikK0RRaaa9RPPWLgFUdOyIRaQvCpwQ==";
       };
     };
+    "@alexbosworth/fiat-1.0.0" = {
+      name = "_at_alexbosworth_slash_fiat";
+      packageName = "@alexbosworth/fiat";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@alexbosworth/fiat/-/fiat-1.0.0.tgz";
+        sha512 = "GN8uppujBmlSI38NTj1pG8gX1bstwn9exELArqeKvFoLuzuK1nizKjY7Re+1zbt0tXa5BZ6H3JVl7JRlxL8OuQ==";
+      };
+    };
     "@alexbosworth/html2unicode-1.1.5" = {
       name = "_at_alexbosworth_slash_html2unicode";
       packageName = "@alexbosworth/html2unicode";
@@ -2812,31 +2821,31 @@ let
         sha512 = "82cpyJyKRoQoRi+14ibCeGPu0CwypgtBAdBhq1WfvagpCZNKqwXbKwXllYSMG91DhmG4jt9gN8eP6lGOtozuaw==";
       };
     };
-    "@gitbeaker/core-34.5.0" = {
+    "@gitbeaker/core-34.6.0" = {
       name = "_at_gitbeaker_slash_core";
       packageName = "@gitbeaker/core";
-      version = "34.5.0";
+      version = "34.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@gitbeaker/core/-/core-34.5.0.tgz";
-        sha512 = "MfBwD3W79/nhmrwYyfw7R8FmVNS3CsoCulNfhySY38LT3w1GLMnDOIDTpELySTwoIWVXYT/QHdEPlGIG6nPXOg==";
+        url = "https://registry.npmjs.org/@gitbeaker/core/-/core-34.6.0.tgz";
+        sha512 = "yKF+oxffPyzOnyuHCqLGJrBHhcFHuGHtcmqKhGKtnYPfqcNYA8rt4INAHaE5wMz4ILua9b4sB8p42fki+xn6WA==";
       };
     };
-    "@gitbeaker/node-34.5.0" = {
+    "@gitbeaker/node-34.6.0" = {
       name = "_at_gitbeaker_slash_node";
       packageName = "@gitbeaker/node";
-      version = "34.5.0";
+      version = "34.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@gitbeaker/node/-/node-34.5.0.tgz";
-        sha512 = "klm9PI7r6OpCmkS3Q26nPnVUwTb/VfF/IdOYv02/8SguEI3gMWfmR8PNvD99nsKN7lvL6ZoHl79gMGbgr65fHg==";
+        url = "https://registry.npmjs.org/@gitbeaker/node/-/node-34.6.0.tgz";
+        sha512 = "gVV4Wuev43Jbyoy1fszC885+bkvWH4zWiUhtIu0PSAm628j/OxO7idLIqUEMV0hDf6wm/PE/vOSP6PhjE0N+fA==";
       };
     };
-    "@gitbeaker/requester-utils-34.5.0" = {
+    "@gitbeaker/requester-utils-34.6.0" = {
       name = "_at_gitbeaker_slash_requester-utils";
       packageName = "@gitbeaker/requester-utils";
-      version = "34.5.0";
+      version = "34.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@gitbeaker/requester-utils/-/requester-utils-34.5.0.tgz";
-        sha512 = "fgMGE/A5sOLjuhRPRCyiwLOCBqbhlDpVjo6nooizyQcOH5K4c4EZNgGD5AQshg6U5r3xdLNCKHYFu36pbR91uQ==";
+        url = "https://registry.npmjs.org/@gitbeaker/requester-utils/-/requester-utils-34.6.0.tgz";
+        sha512 = "H8utxbSP1kEdX0KcyVYrTDTT0A3UcPwrIV1ahyufX9ZLybYSUsA56B8Wx5kJSbWGFT1ffu2f8H2YDMwNCKKsBg==";
       };
     };
     "@google-cloud/paginator-3.0.6" = {
@@ -3559,22 +3568,22 @@ let
         sha512 = "s0jhnq/1X1IQQpKcAoUAd3KZ6X58nEjIi+vL4aC0iyDW6v2pmt8J5G/ilUZSbvplyJ2GdTMYi7NOCz2f3QAGZA==";
       };
     };
-    "@jsii/check-node-1.43.0" = {
+    "@jsii/check-node-1.44.0" = {
       name = "_at_jsii_slash_check-node";
       packageName = "@jsii/check-node";
-      version = "1.43.0";
+      version = "1.44.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@jsii/check-node/-/check-node-1.43.0.tgz";
-        sha512 = "9+bZhSZB5Mz4yQb0y+sJTbFugtUmVyEaRNRoaptc31w8xERiOXr1SJNQe3JCOckArf5KfeeGHVbXB9ZMBcBSkg==";
+        url = "https://registry.npmjs.org/@jsii/check-node/-/check-node-1.44.0.tgz";
+        sha512 = "f5yHUWdhPWav5Bf3O0BtT89LYg1YjLQib6LzroHXJOwCgQZdK9A+eZZ0bTmtWSEKd5UDhZmrN1JCXpZ7UzgpnA==";
       };
     };
-    "@jsii/spec-1.43.0" = {
+    "@jsii/spec-1.44.0" = {
       name = "_at_jsii_slash_spec";
       packageName = "@jsii/spec";
-      version = "1.43.0";
+      version = "1.44.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@jsii/spec/-/spec-1.43.0.tgz";
-        sha512 = "4FZmzdBdVO64VEq1dQ6vXvBIWWHnUjP8bz7jAIjwSTE6iyJnSz2XT32tJpNg57RpBHRDdUuZGCgYa+xl06iGcA==";
+        url = "https://registry.npmjs.org/@jsii/spec/-/spec-1.44.0.tgz";
+        sha512 = "q0hbiXrDqQ2FsM4RA/aKyB8Zy8oi7ukDBJt/kEMO8rN9RC5uQ5uxFoR6UTS3d3raQpyzXpAkfs7UQldvi65B3w==";
       };
     };
     "@kwsites/file-exists-1.1.1" = {
@@ -5629,13 +5638,13 @@ let
         sha512 = "y9qNj0//tZtWB2jfXNK3BX18BSBp9zNR7KE7lMysVHwbZtY392OJCjm6Rb/h4UHH2r1AqjNEHFD6bRn+DqU9Mw==";
       };
     };
-    "@redocly/openapi-core-1.0.0-beta.67" = {
+    "@redocly/openapi-core-1.0.0-beta.68" = {
       name = "_at_redocly_slash_openapi-core";
       packageName = "@redocly/openapi-core";
-      version = "1.0.0-beta.67";
+      version = "1.0.0-beta.68";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.67.tgz";
-        sha512 = "xH9Dl4D2VbXh7qMv1x7oQPfE9FpQsSjjJCe8QzRBF6aiTQFcxCB9LG4msa3Ym5KQuGkCDMyQXuA5oPTtzDooRQ==";
+        url = "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.68.tgz";
+        sha512 = "ocvDC13Fr8USbBlBUgl8wQlRFBCNEqz6gVTNlQ8IFOglCKxmOeu4JqnFENNGow3ycKTl35c891clfCw1vPyPcQ==";
       };
     };
     "@redocly/react-dropdown-aria-2.0.12" = {
@@ -6673,13 +6682,13 @@ let
         sha512 = "qNjVXcrp+1sS8YpRUa714r0pgzOwESdW5UjHL7D/2ZFdBX0BXUXtg1LUrp+ylvqbvMcMWUy73YpRoxPN2VoKAQ==";
       };
     };
-    "@types/eslint-7.28.2" = {
+    "@types/eslint-7.29.0" = {
       name = "_at_types_slash_eslint";
       packageName = "@types/eslint";
-      version = "7.28.2";
+      version = "7.29.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/eslint/-/eslint-7.28.2.tgz";
-        sha512 = "KubbADPkfoU75KgKeKLsFHXnU4ipH7wYg0TRT33NK3N3yiu7jlFAAoygIWBV+KbuHx/G+AvuGX6DllnK35gfJA==";
+        url = "https://registry.npmjs.org/@types/eslint/-/eslint-7.29.0.tgz";
+        sha512 = "VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng==";
       };
     };
     "@types/eslint-scope-3.7.1" = {
@@ -7060,13 +7069,13 @@ let
         sha512 = "EP6O3Jkr7bXvZZSZYlsgt5DIjiGr0dXP1/jVEwVLTFgg0d+3lWVQkRavYVQszV7dYUwvg0B8R0MBDpcmXg7XIA==";
       };
     };
-    "@types/lodash-4.14.176" = {
+    "@types/lodash-4.14.177" = {
       name = "_at_types_slash_lodash";
       packageName = "@types/lodash";
-      version = "4.14.176";
+      version = "4.14.177";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.176.tgz";
-        sha512 = "xZmuPTa3rlZoIbtDUyJKZQimJV3bxCmzMIO2c9Pz9afyDro6kr7R79GwcB6mRhuoPmV2p1Vb66WOJH7F886WKQ==";
+        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.177.tgz";
+        sha512 = "0fDwydE2clKe9MNfvXHBHF9WEahRuj+msTuQqOmAApNORFvhMYZKNGGJdCzuhheVjMps/ti0Ak/iJPACMaevvw==";
       };
     };
     "@types/long-4.0.1" = {
@@ -7456,13 +7465,13 @@ let
         sha512 = "eEQ6Hq0K0VShe00iDzG1DKxA5liTsk7jgcR5eDZ5d5cnivLjPqqcDgqurS5NlQJNfgTNg51dp7zFGWHomr5NJQ==";
       };
     };
-    "@types/react-16.14.20" = {
+    "@types/react-16.14.21" = {
       name = "_at_types_slash_react";
       packageName = "@types/react";
-      version = "16.14.20";
+      version = "16.14.21";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/react/-/react-16.14.20.tgz";
-        sha512 = "SV7TaVc8e9E/5Xuv6TIyJ5VhQpZoVFJqX6IZgj5HZoFCtIDCArE3qXkcHlc6O/Ud4UwcMoX+tlvDA95YrKdLgA==";
+        url = "https://registry.npmjs.org/@types/react/-/react-16.14.21.tgz";
+        sha512 = "rY4DzPKK/4aohyWiDRHS2fotN5rhBSK6/rz1X37KzNna9HJyqtaGAbq9fVttrEPWF5ywpfIP1ITL8Xi2QZn6Eg==";
       };
     };
     "@types/react-dom-16.9.14" = {
@@ -7717,13 +7726,13 @@ let
         sha512 = "awrJu8yML4E/xTwr2EMatC+HBnHGoDxc2+ImA9QyeUELI1S7dOCIZcyjki1rkwoA8P2D2NVgLAJLjnclkdLtAw==";
       };
     };
-    "@types/url-parse-1.4.4" = {
+    "@types/url-parse-1.4.5" = {
       name = "_at_types_slash_url-parse";
       packageName = "@types/url-parse";
-      version = "1.4.4";
+      version = "1.4.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/url-parse/-/url-parse-1.4.4.tgz";
-        sha512 = "KtQLad12+4T/NfSxpoDhmr22+fig3T7/08QCgmutYA6QSznSRmEtuL95GrhVV40/0otTEdFc+etRcCTqhh1q5Q==";
+        url = "https://registry.npmjs.org/@types/url-parse/-/url-parse-1.4.5.tgz";
+        sha512 = "8Wje3itJpk/FX+QItca9vjNLjGx5jlEYBw/CpMi03Fphk2DSVeZDUqWTE81BeCI5Bl6Z+zmA1O9L/8e3ZUSeLg==";
       };
     };
     "@types/vfile-3.0.2" = {
@@ -7762,13 +7771,13 @@ let
         sha512 = "iGlQJ1w5e3qPUryroO6v4lxg3ql1ztdTCwQW3xEwFawdyPLoeUSv48SYfMwc7kQA7h6ThUqflZIjgKAykeF9oA==";
       };
     };
-    "@types/webpack-4.41.31" = {
+    "@types/webpack-4.41.32" = {
       name = "_at_types_slash_webpack";
       packageName = "@types/webpack";
-      version = "4.41.31";
+      version = "4.41.32";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.31.tgz";
-        sha512 = "/i0J7sepXFIp1ZT7FjUGi1eXMCg8HCCzLJEQkKsOtbJFontsJLolBcDC+3qxn5pPwiCt1G0ZdRmYRzNBtvpuGQ==";
+        url = "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.32.tgz";
+        sha512 = "cb+0ioil/7oz5//7tZUSwbrSAN/NWHrQylz5cW8G0dWTcF/g+/dSdMlKVZspBYuMAN1+WnwHrkxiRrLcwd0Heg==";
       };
     };
     "@types/webpack-sources-3.2.0" = {
@@ -8122,31 +8131,31 @@ let
         sha512 = "B4Rc4wGgxTAOivy0tmBEuPAbSYeTzv3dusoQUOW1CVT3N5zYkEuxVj8OXmUQ1YECWaK+IjvQQMFkBuXt//lp7g==";
       };
     };
-    "@vue/compiler-core-3.2.21" = {
+    "@vue/compiler-core-3.2.22" = {
       name = "_at_vue_slash_compiler-core";
       packageName = "@vue/compiler-core";
-      version = "3.2.21";
+      version = "3.2.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.21.tgz";
-        sha512 = "NhhiQZNG71KNq1h5pMW/fAXdTF7lJRaSI7LDm2edhHXVz1ROMICo8SreUmQnSf4Fet0UPBVqJ988eF4+936iDQ==";
+        url = "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.22.tgz";
+        sha512 = "uAkovrVeTcjzpiM4ECmVaMrv/bjdgAaLzvjcGqQPBEyUrcqsCgccT9fHJ/+hWVGhyMahmBwLqcn4guULNx7sdw==";
       };
     };
-    "@vue/compiler-dom-3.2.21" = {
+    "@vue/compiler-dom-3.2.22" = {
       name = "_at_vue_slash_compiler-dom";
       packageName = "@vue/compiler-dom";
-      version = "3.2.21";
+      version = "3.2.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.21.tgz";
-        sha512 = "gsJD3DpYZSYquiA7UIPsMDSlAooYWDvHPq9VRsqzJEk2PZtFvLvHPb4aaMD8Ufd62xzYn32cnnkzsEOJhyGilA==";
+        url = "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.22.tgz";
+        sha512 = "VZdsw/VuO1ODs8K7NQwnMQzKITDkIFlYYC03SVnunuf6eNRxBPEonSyqbWNoo6qNaHAEBTG6VVcZC5xC9bAx1g==";
       };
     };
-    "@vue/shared-3.2.21" = {
+    "@vue/shared-3.2.22" = {
       name = "_at_vue_slash_shared";
       packageName = "@vue/shared";
-      version = "3.2.21";
+      version = "3.2.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/shared/-/shared-3.2.21.tgz";
-        sha512 = "5EQmIPK6gw4UVYUbM959B0uPsJ58+xoMESCZs3N89XyvJ9e+fX4pqEPrOGV8OroIk3SbEvJcC+eYc8BH9JQrHA==";
+        url = "https://registry.npmjs.org/@vue/shared/-/shared-3.2.22.tgz";
+        sha512 = "qWVav014mpjEtbWbEgl0q9pEyrrIySKum8UVYjwhC6njrKzknLZPvfuYdQyVbApsqr94tf/3dP4pCuZmmjdCWQ==";
       };
     };
     "@webassemblyjs/ast-1.11.1" = {
@@ -11866,13 +11875,13 @@ let
         sha1 = "00f35b2d27ac91b1f0d3ef2084c98cf1d1f0adc3";
       };
     };
-    "aws-sdk-2.1028.0" = {
+    "aws-sdk-2.1029.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.1028.0";
+      version = "2.1029.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1028.0.tgz";
-        sha512 = "OmR0NcpU8zsDcUOZhM+eZ6CzlUFtuaEuRyjm6mxDO0KI7lJAp7/NzB6tcellRrgWxL+NO7b5TSxi+m28qu5ocQ==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1029.0.tgz";
+        sha512 = "nCmaMPkJr3EATXaeqR3JeNC0GTDH2lJZ3Xq/ZCAW+yrfaPQWv8HqJJHBCNGtmk3FmcCoxc7ed/gEB8XSl0tocA==";
       };
     };
     "aws-sdk-2.920.0" = {
@@ -13999,13 +14008,13 @@ let
         sha1 = "4d67dc2602c0cc16dd9bce7ebf87e948290f5812";
       };
     };
-    "bower-1.8.12" = {
+    "bower-1.8.13" = {
       name = "bower";
       packageName = "bower";
-      version = "1.8.12";
+      version = "1.8.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bower/-/bower-1.8.12.tgz";
-        sha512 = "u1xy9SrwwoPlgjuHNjhV+YUPVdqyBj2ALBxuzeIUKXaPI2i2xypGgxqXkuHcITGdi5yBj5JuXgyMvgiWiS1S3Q==";
+        url = "https://registry.npmjs.org/bower/-/bower-1.8.13.tgz";
+        sha512 = "8eWko16JlCTdaZZG70kddHPed17pHEbH8/IjfP4IFkQsfEqRsyNM09Dc8cDBFkSvtQ/2lTea7A+bMhRggG2a+Q==";
       };
     };
     "bower-endpoint-parser-0.2.1" = {
@@ -14413,13 +14422,13 @@ let
         sha512 = "HI4lPveGKUR0x2StIz+2FXfDk9SfVMrxn6PLh1JeGUwcuoDkdKZebWiyLRJ68iIPDpMI4JLVDf7S7XzslgWOhw==";
       };
     };
-    "browserslist-4.18.0" = {
+    "browserslist-4.18.1" = {
       name = "browserslist";
       packageName = "browserslist";
-      version = "4.18.0";
+      version = "4.18.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.18.0.tgz";
-        sha512 = "ER2M0g5iAR84fS/zjBDqEgU6iO5fS9JI2EkHr5zxDxYEFk3LjhU9Vpp/INb6RMQphxko7PDV1FH38H/qVP5yCA==";
+        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.18.1.tgz";
+        sha512 = "8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ==";
       };
     };
     "brq-0.1.8" = {
@@ -15116,6 +15125,15 @@ let
         sha512 = "zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==";
       };
     };
+    "bytes-3.1.1" = {
+      name = "bytes";
+      packageName = "bytes";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz";
+        sha512 = "dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==";
+      };
+    };
     "bytesish-0.4.4" = {
       name = "bytesish";
       packageName = "bytesish";
@@ -15422,6 +15440,15 @@ let
         sha512 = "c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==";
       };
     };
+    "camelcase-6.2.1" = {
+      name = "camelcase";
+      packageName = "camelcase";
+      version = "6.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camelcase/-/camelcase-6.2.1.tgz";
+        sha512 = "tVI4q5jjFV5CavAU8DXfza/TJcZutVKo/5Foskmsqcm0MsL91moHvwiGNnqaa2o6PF/7yT5ikDRcVcl8Rj6LCA==";
+      };
+    };
     "camelcase-keys-2.1.0" = {
       name = "camelcase-keys";
       packageName = "camelcase-keys";
@@ -15647,22 +15674,22 @@ let
         sha512 = "eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==";
       };
     };
-    "cdk8s-1.1.33" = {
+    "cdk8s-1.1.35" = {
       name = "cdk8s";
       packageName = "cdk8s";
-      version = "1.1.33";
+      version = "1.1.35";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cdk8s/-/cdk8s-1.1.33.tgz";
-        sha512 = "+ts6ksmpPxryb7MB6hlNF1NNqLy/n2D/DzqW/dcB4ymML7iaXDrCwkWWOqaQCIE5SL1rm37uBnX/pyjDOtsn8A==";
+        url = "https://registry.npmjs.org/cdk8s/-/cdk8s-1.1.35.tgz";
+        sha512 = "6hhAP+XivkMFKiqenOuBX+7D+5Ae6s+X8KF0TEoiwrrRFa1Wt5LvM7JGsJT7F7+jMNF+UAF53kxpffNZMCpOJA==";
       };
     };
-    "cdk8s-plus-22-1.0.0-beta.40" = {
+    "cdk8s-plus-22-1.0.0-beta.42" = {
       name = "cdk8s-plus-22";
       packageName = "cdk8s-plus-22";
-      version = "1.0.0-beta.40";
+      version = "1.0.0-beta.42";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cdk8s-plus-22/-/cdk8s-plus-22-1.0.0-beta.40.tgz";
-        sha512 = "5BMhOy2wJyruukF9cKkqXgrVlI6UiZZaEnBmLwEoOMWi/v3NoQPcsHT9CVTauUEfSFlzBb0iFcuqrafYWIpYaw==";
+        url = "https://registry.npmjs.org/cdk8s-plus-22/-/cdk8s-plus-22-1.0.0-beta.42.tgz";
+        sha512 = "aC9H+ulFxXIafMhIj5w5KxTY3Fknjxztc2/uEPWZqB9K+aUozhfTTeVcBsmFuOw3p6LvI6Xbs6cJuJ2h7zCiDQ==";
       };
     };
     "cdktf-0.7.0" = {
@@ -17294,13 +17321,13 @@ let
         sha512 = "3WQV/Fpa77nvzjUlc+0u53uIroJyyMB2Qwl++aXpAiDIsrsiAQq4uCURwdRBRX+eLkOTIAmT0L4qna3T7+2pUg==";
       };
     };
-    "codemaker-1.43.0" = {
+    "codemaker-1.44.0" = {
       name = "codemaker";
       packageName = "codemaker";
-      version = "1.43.0";
+      version = "1.44.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/codemaker/-/codemaker-1.43.0.tgz";
-        sha512 = "6FA4syN+22H9V0Dfadk9xbQ894kkeIhOH6HleiLRL0lU6Ts3nMB4lM01cHtnY/5YhLBr+XrHboV5Bi5xVFf4sg==";
+        url = "https://registry.npmjs.org/codemaker/-/codemaker-1.44.0.tgz";
+        sha512 = "GrUjFBFDbMyykrmL9aGf7Viv2I+wAH9mnkW/5qCHsZw51LuZKAidBHp5nS3oT1mdkcIorjqUJjRSJ3LzslgFEQ==";
       };
     };
     "codepage-1.4.0" = {
@@ -19887,13 +19914,13 @@ let
         sha512 = "AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==";
       };
     };
-    "csstype-3.0.9" = {
+    "csstype-3.0.10" = {
       name = "csstype";
       packageName = "csstype";
-      version = "3.0.9";
+      version = "3.0.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/csstype/-/csstype-3.0.9.tgz";
-        sha512 = "rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw==";
+        url = "https://registry.npmjs.org/csstype/-/csstype-3.0.10.tgz";
+        sha512 = "2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA==";
       };
     };
     "csurf-1.11.0" = {
@@ -23604,13 +23631,13 @@ let
         sha512 = "U9dKi10V9w/BdIVB8a8dTKYLK3Q1d2WZ+Yo5qfM3XX/O4jI7KpnwgvWgGoVv0jTWPC2NlebF00ffWS/8NfUAtA==";
       };
     };
-    "electron-to-chromium-1.3.896" = {
+    "electron-to-chromium-1.3.899" = {
       name = "electron-to-chromium";
       packageName = "electron-to-chromium";
-      version = "1.3.896";
+      version = "1.3.899";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.896.tgz";
-        sha512 = "NcGkBVXePiuUrPLV8IxP43n1EOtdg+dudVjrfVEUd/bOqpQUFZ2diL5PPYzbgEhZFEltdXV3AcyKwGnEQ5lhMA==";
+        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.899.tgz";
+        sha512 = "w16Dtd2zl7VZ4N4Db+FIa7n36sgPGCKjrKvUUmp5ialsikvcQLjcJR9RWnlYNxIyEHLdHaoIZEqKsPxU9MdyBg==";
       };
     };
     "electrum-client-git://github.com/janoside/electrum-client" = {
@@ -28214,31 +28241,31 @@ let
         sha1 = "cbed2d20a40c1f5679a35908e2b9415733e78db9";
       };
     };
-    "gatsby-core-utils-3.1.2" = {
+    "gatsby-core-utils-3.1.3" = {
       name = "gatsby-core-utils";
       packageName = "gatsby-core-utils";
-      version = "3.1.2";
+      version = "3.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-3.1.2.tgz";
-        sha512 = "l3LUdGNDlM3fLrdxRUGnsd/Szu9e8yLEL/pZIV2LuhTHMNwjOStiycEQivezsUhHNPobep1r5t4yWzP6r2cw/Q==";
+        url = "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-3.1.3.tgz";
+        sha512 = "+pg2i3DYVLzmJ/67SVGM+zVxerilGCbcgVxDoN58Y+Htv5TwogUWzPymfoFrJEsWGhlVKlYq7I8jVWSXPzwMHw==";
       };
     };
-    "gatsby-recipes-1.1.2" = {
+    "gatsby-recipes-1.1.3" = {
       name = "gatsby-recipes";
       packageName = "gatsby-recipes";
-      version = "1.1.2";
+      version = "1.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gatsby-recipes/-/gatsby-recipes-1.1.2.tgz";
-        sha512 = "r6FSPM2eKH+rlC6JX0SgVYBFxBXJW5J/MwFtsP8N+C6Yvr7Cosi9OlMreMx/SBza4HYMXxIoDBYvX68qbBQrhg==";
+        url = "https://registry.npmjs.org/gatsby-recipes/-/gatsby-recipes-1.1.3.tgz";
+        sha512 = "AdO9Y7vtpa0VSWXe3gZIeIUDJ6/j/MeAkpkuJHbbU8hix9gtbVPoOcmF8VFJUMALNRzhhFsgqRN2mK6jXJlang==";
       };
     };
-    "gatsby-telemetry-3.1.2" = {
+    "gatsby-telemetry-3.1.3" = {
       name = "gatsby-telemetry";
       packageName = "gatsby-telemetry";
-      version = "3.1.2";
+      version = "3.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-3.1.2.tgz";
-        sha512 = "uz8J+cGkQ1vgIc5BCrR5Jm/cF/kKF+Ys+tqXofn4ah95ezT94U+g+m3FPPB49cut7H4OZsONCXeLyLRzdIx7EQ==";
+        url = "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-3.1.3.tgz";
+        sha512 = "vZSj67F4vzoqqK5CyNIRTDTWOqhBYkMey+i6swY3H51tehGTHRyzzOhJorQOJa76cQOcOMXr1/vvxX1T84Y96g==";
       };
     };
     "gauge-1.2.7" = {
@@ -31410,6 +31437,15 @@ let
         sha512 = "4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A==";
       };
     };
+    "http-errors-1.8.1" = {
+      name = "http-errors";
+      packageName = "http-errors";
+      version = "1.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz";
+        sha512 = "Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==";
+      };
+    };
     "http-headers-3.0.2" = {
       name = "http-headers";
       packageName = "http-headers";
@@ -35651,13 +35687,13 @@ let
         sha512 = "M+opnlcNb1Ne5igms/OJn/e2ZyQgcCwmqqljuOsHXBMFm7vMOVLSjEUcBYcW7ifJeM1+XYg8+wfuAoZhqY1zCg==";
       };
     };
-    "jsii-1.43.0" = {
+    "jsii-1.44.0" = {
       name = "jsii";
       packageName = "jsii";
-      version = "1.43.0";
+      version = "1.44.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii/-/jsii-1.43.0.tgz";
-        sha512 = "2GsSiwbX++/f6BE/fnT9s0iBQtT+MSsnFBZdpyw4sV50gEg9gbD1rPO/ewSLuUh83mrztPtdiurxsBpYGj17Nw==";
+        url = "https://registry.npmjs.org/jsii/-/jsii-1.44.0.tgz";
+        sha512 = "6CRoO+swOmTyvuYbMzZJ89pCn3cbCLUUo8qLN9JLZhT5Pc8uJgCdCn67rK9Vu5LRgwI7thOKP2ij9TG+8Ejyng==";
       };
     };
     "jsii-pacmak-1.37.0" = {
@@ -35669,40 +35705,40 @@ let
         sha512 = "cXLXAOyCqd/QNBy+OfcmMgj8UdNVbJJsKoM/C3SvRgdi+fpQlxh1iDTOcKUwd3/QgMuDMDLvKCCpLmq/YRjreA==";
       };
     };
-    "jsii-pacmak-1.43.0" = {
+    "jsii-pacmak-1.44.0" = {
       name = "jsii-pacmak";
       packageName = "jsii-pacmak";
-      version = "1.43.0";
+      version = "1.44.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-pacmak/-/jsii-pacmak-1.43.0.tgz";
-        sha512 = "GrvEz/Rbiwu+O3HWNiDybXV+homhzSZH0DgBkfCvmPvPUJPmSn1u3cU586F77gESGTOy9bOXJOkGfXpq9PZO4Q==";
+        url = "https://registry.npmjs.org/jsii-pacmak/-/jsii-pacmak-1.44.0.tgz";
+        sha512 = "m6x3xQM20vi0jIXCpW4lIOYK4dS8jdOIi4mQNQcreraoskYSsrv9d2G2THXGPojF5ozNjnPBNgsIXaH4XdkZKw==";
       };
     };
-    "jsii-reflect-1.43.0" = {
+    "jsii-reflect-1.44.0" = {
       name = "jsii-reflect";
       packageName = "jsii-reflect";
-      version = "1.43.0";
+      version = "1.44.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-reflect/-/jsii-reflect-1.43.0.tgz";
-        sha512 = "UoEK0c2CO0LPvb53TkedFFyAKBXbrb35vs65HJhfBzBqyZBcPQ3+mm6lFA38oTtsDFNBJe0Eyg0cuFaWzWDllg==";
+        url = "https://registry.npmjs.org/jsii-reflect/-/jsii-reflect-1.44.0.tgz";
+        sha512 = "mgyCUYXqLbOxkNgiENDuRnDB0S0pIKZvqFZPW7fMBTOU8XxVPhZD3DhFGEIj6cPtbTUbz18Kc5qKk3l8mEkmfg==";
       };
     };
-    "jsii-rosetta-1.43.0" = {
+    "jsii-rosetta-1.44.0" = {
       name = "jsii-rosetta";
       packageName = "jsii-rosetta";
-      version = "1.43.0";
+      version = "1.44.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-rosetta/-/jsii-rosetta-1.43.0.tgz";
-        sha512 = "AjJ0tlrnBatJB7OJ/cn9sFaLpM4Ra7fSkxLlHNWsVE1KFAUnCLIcDloXaytaDmBXY/emxi3/XbWwGUIqbjbCIw==";
+        url = "https://registry.npmjs.org/jsii-rosetta/-/jsii-rosetta-1.44.0.tgz";
+        sha512 = "6loHTZdcNLYs4JNi2Uwe9xY9caFGpKC/OPtj5Je1+zLx/MyiJeAhd448T+Tg8SXRRIZ549ZZ6Xn4COYZQVU+AA==";
       };
     };
-    "jsii-srcmak-0.1.398" = {
+    "jsii-srcmak-0.1.400" = {
       name = "jsii-srcmak";
       packageName = "jsii-srcmak";
-      version = "0.1.398";
+      version = "0.1.400";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-srcmak/-/jsii-srcmak-0.1.398.tgz";
-        sha512 = "owTEb9AENT/MQQoHIIiAWvD/sTJtooHwlsNTnM3GaBmEZdntsCjYrDbWGZG1baZjRq2d6PBPqVs7EfxHMIUXjA==";
+        url = "https://registry.npmjs.org/jsii-srcmak/-/jsii-srcmak-0.1.400.tgz";
+        sha512 = "7FVK/c8VBb33mqUYDHJ5JnnW6xmGFyf7Z5LWf2yVAD1FXk3kj4BYpcnJ5K7eDHpY60PtNeivEzM8vJrrDqPIpQ==";
       };
     };
     "json-bigint-1.0.0" = {
@@ -35993,13 +36029,13 @@ let
         sha512 = "0/4Lv6IenJV0qj2oBdgPIAmFiKKnh8qh7bmLFJ+/ZZHLjSeiL3fKKGX3UryvKPbxFbhV+JcYo9KUC19GJ/Z/4A==";
       };
     };
-    "json2jsii-0.2.51" = {
+    "json2jsii-0.2.53" = {
       name = "json2jsii";
       packageName = "json2jsii";
-      version = "0.2.51";
+      version = "0.2.53";
       src = fetchurl {
-        url = "https://registry.npmjs.org/json2jsii/-/json2jsii-0.2.51.tgz";
-        sha512 = "r/pye6PVthtdz3wW8vAwL3t0xUt40FIhqlY5bkZJ6OR2jM2WBJWgBuCoLs3YhKxwNRR7uDsfHTAhexX8ga0tUA==";
+        url = "https://registry.npmjs.org/json2jsii/-/json2jsii-0.2.53.tgz";
+        sha512 = "mofX4sQEkIJWtFn6ZLZZwOpPd/T0KLgiVCN8jFgSxYiED36xp9CXkU+UV3lPRiUMGhDmo/brXRuQ8U7vRutgCg==";
       };
     };
     "json3-3.2.6" = {
@@ -41808,6 +41844,15 @@ let
         sha512 = "USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==";
       };
     };
+    "mime-3.0.0" = {
+      name = "mime";
+      packageName = "mime";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz";
+        sha512 = "jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==";
+      };
+    };
     "mime-db-1.33.0" = {
       name = "mime-db";
       packageName = "mime-db";
@@ -43888,13 +43933,13 @@ let
         sha512 = "/2D0wOQPgaUWzVSVgRMx+trKJRC2UG4SUc4oCJoXx9Uxjtp0Vy3/kt7zcbxHF8+Z/pK3UloLWzBISg72brfy1w==";
       };
     };
-    "node-abi-3.3.0" = {
+    "node-abi-3.5.0" = {
       name = "node-abi";
       packageName = "node-abi";
-      version = "3.3.0";
+      version = "3.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-abi/-/node-abi-3.3.0.tgz";
-        sha512 = "/+2sCVPXmj07GY/l0ggRr7+trqzX7F9d4QVfSArqIVYmRzc/LkXKr5FlRO6U8uZ/gVVclDDaBxBNITj1z1Z/Zw==";
+        url = "https://registry.npmjs.org/node-abi/-/node-abi-3.5.0.tgz";
+        sha512 = "LtHvNIBgOy5mO8mPEUtkCW/YCRWYEKshIvqhe1GHHyXEHEB5mgICyYnAcl4qan3uFeRROErKGzatFHPf6kDxWw==";
       };
     };
     "node-addon-api-1.7.2" = {
@@ -45771,13 +45816,13 @@ let
         sha512 = "fvaSZRzprpwLFge/mcwE0CItfniNisVNamDdMK1FQUjh4ArQZ8ZWSkDaJbZc3XaANKZHq0xIa8NJpZ2HSe3oXA==";
       };
     };
-    "oo-ascii-tree-1.43.0" = {
+    "oo-ascii-tree-1.44.0" = {
       name = "oo-ascii-tree";
       packageName = "oo-ascii-tree";
-      version = "1.43.0";
+      version = "1.44.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/oo-ascii-tree/-/oo-ascii-tree-1.43.0.tgz";
-        sha512 = "OjCQZnEi/ssOj5f7d3oILcTrzpKN9eWIWEpoEdRr+8NOdcLBGiXDdUYotIx/ajcjmRPjuoRtRT7NE6cKWWT/fA==";
+        url = "https://registry.npmjs.org/oo-ascii-tree/-/oo-ascii-tree-1.44.0.tgz";
+        sha512 = "31f6M3ID8HKIOOAlyQWlURL0koXyEgjF0U1fiu2BuV8TepwCUDUy6MnKHE/72H9cXAwnBXpJHf0dun4B8D3AlA==";
       };
     };
     "opal-runtime-1.0.11" = {
@@ -45978,13 +46023,13 @@ let
         sha512 = "Su8jA45PhegUgJnEAT15DYt2spPJgvjyTtXqg+Lw5AtGePfcQskV6ACEzsL0XPoAXIFf09Vx6sBor9pek+tl+Q==";
       };
     };
-    "openapi-sampler-1.1.0" = {
+    "openapi-sampler-1.1.1" = {
       name = "openapi-sampler";
       packageName = "openapi-sampler";
-      version = "1.1.0";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.1.0.tgz";
-        sha512 = "/LhZYKNBWphLEpbAG5BdpBZbIbmLgC4vTiTj8N/MV0LF9ptmKOiJ2nETVlacNjXHt7iqDgZDELJCIoZ3q5ZG6A==";
+        url = "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.1.1.tgz";
+        sha512 = "WAFsl5SPYuhQwaMTDFOcKhnEY1G1rmamrMiPmJdqwfl1lr81g63/befcsN9BNi0w5/R0L+hfcUj13PANEBeLgg==";
       };
     };
     "openapi-schema-validator-3.0.3" = {
@@ -50056,15 +50101,6 @@ let
         sha512 = "7PtVymN48hGcO4fGjybyBSIWDsLU4H4XlvOHfq91pz9kkGlonzwTfYkaIEwiRg/dAJF9YlbsduBAgtYLi+8cFg==";
       };
     };
-    "prettier-2.3.2" = {
-      name = "prettier";
-      packageName = "prettier";
-      version = "2.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/prettier/-/prettier-2.3.2.tgz";
-        sha512 = "lnJzDfJ66zkMy58OL5/NY5zp70S7Nz6KqcKkXYzn2tMVrNxvbqaBpg7H3qHaLxCJ5lNMsGuM8+ohS7cZrthdLQ==";
-      };
-    };
     "prettier-2.4.1" = {
       name = "prettier";
       packageName = "prettier";
@@ -50101,13 +50137,13 @@ let
         sha512 = "2UzApPuxi2yRoyMlXMazgR6UcH9DKJhNgCviIwY3ixZ9THWSSrUww5vkiZ3C48WvpFl1M1y/oU63deSy1puWEA==";
       };
     };
-    "prettier-plugin-svelte-2.4.0" = {
+    "prettier-plugin-svelte-2.5.0" = {
       name = "prettier-plugin-svelte";
       packageName = "prettier-plugin-svelte";
-      version = "2.4.0";
+      version = "2.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-2.4.0.tgz";
-        sha512 = "JwJ9bOz4XHLQtiLnX4mTSSDUdhu12WH8sTwy/XTDCSyPlah6IcV7NWeYBZscPEcceu2YnW8Y9sJCP40Z2UH9GA==";
+        url = "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-2.5.0.tgz";
+        sha512 = "+iHY2uGChOngrgKielJUnqo74gIL/EO5oeWm8MftFWjEi213lq9QYTOwm1pv4lI1nA61tdgf80CF2i5zMcu1kw==";
       };
     };
     "prettier-stylelint-0.4.2" = {
@@ -50722,13 +50758,13 @@ let
         sha1 = "212d5bfe1318306a420f6402b8e26ff39647a849";
       };
     };
-    "proto3-json-serializer-0.1.5" = {
+    "proto3-json-serializer-0.1.6" = {
       name = "proto3-json-serializer";
       packageName = "proto3-json-serializer";
-      version = "0.1.5";
+      version = "0.1.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-0.1.5.tgz";
-        sha512 = "G395jcZkgNXNeS+6FGqd09TsXeoCs9wmBWByDiwFy7Yd7HD8pyfyvf6q+rGh7PhT4AshRpG4NowzoKYUtkNjKg==";
+        url = "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-0.1.6.tgz";
+        sha512 = "tGbV6m6Kad8NqxMh5hw87euPS0YoZSAOIfvR01zYkQV8Gpx1V/8yU/0gCKCvfCkhAJsjvzzhnnsdQxA1w7PSog==";
       };
     };
     "protobufjs-3.8.2" = {
@@ -54808,6 +54844,15 @@ let
         sha512 = "y3cj3wDwpXTE1boMco/nsquHj2noK0mtnXwBC8FJ/CtU06y66jOBWX1kLknluBl06pYbxtx1ypAOHKvjgT4vsA==";
       };
     };
+    "remark-mdx-2.0.0-rc.2" = {
+      name = "remark-mdx";
+      packageName = "remark-mdx";
+      version = "2.0.0-rc.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/remark-mdx/-/remark-mdx-2.0.0-rc.2.tgz";
+        sha512 = "TMgFSEVx42/YzJWjDY+GKw7CGSbp3XKqBraXPxFS27r8iD9U6zuOZKXH4MoLl9JqiTOmQi0M1zJwT2YhPs32ug==";
+      };
+    };
     "remark-mdxjs-2.0.0-next.8" = {
       name = "remark-mdxjs";
       packageName = "remark-mdxjs";
@@ -55348,13 +55393,13 @@ let
         sha512 = "YanoyJjykPxGHii0fZP0uUPEXpvqfBDxWV7s6GKAiiOsiqhX6vHNyW3Qzdmqp/iq/ExbhaGbVrjB4ruEVSM4GQ==";
       };
     };
-    "reselect-4.1.2" = {
+    "reselect-4.1.3" = {
       name = "reselect";
       packageName = "reselect";
-      version = "4.1.2";
+      version = "4.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/reselect/-/reselect-4.1.2.tgz";
-        sha512 = "wg60ebcPOtxcptIUfrr7Jt3h4BR86cCW3R7y4qt65lnNb4yz4QgrXcbSioVsIOYguyz42+XTHIyJ5TEruzkFgQ==";
+        url = "https://registry.npmjs.org/reselect/-/reselect-4.1.3.tgz";
+        sha512 = "TVpMknnmdSRNhLPgTDSCQKw32zt1ZIJtEcSxfL/ihtDqShEMUs2X2UY/g96YAVynUXxqLWSXObLGIcqKHQObHw==";
       };
     };
     "reserved-words-0.1.2" = {
@@ -56131,13 +56176,13 @@ let
         sha1 = "6f04063a2d04eba3303a1bbc6765eef63037cf3d";
       };
     };
-    "router-1.3.5" = {
+    "router-1.3.6" = {
       name = "router";
       packageName = "router";
-      version = "1.3.5";
+      version = "1.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/router/-/router-1.3.5.tgz";
-        sha512 = "kozCJZUhuSJ5VcLhSb3F8fsmGXy+8HaDbKCAerR1G6tq3mnMZFMuSohbFvGv1c5oMFipijDjRZuuN/Sq5nMf3g==";
+        url = "https://registry.npmjs.org/router/-/router-1.3.6.tgz";
+        sha512 = "gsjhou+LFApzkIP8VDrouG6Z4pqkeF11n3o5orlwPPvPTl0x7c+dbF71itKOhDoFHygmc3N3uqm55Uq/gIDUwg==";
       };
     };
     "router-ips-1.0.0" = {
@@ -59011,15 +59056,6 @@ let
         sha512 = "cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==";
       };
     };
-    "spdx-license-ids-3.0.10" = {
-      name = "spdx-license-ids";
-      packageName = "spdx-license-ids";
-      version = "3.0.10";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz";
-        sha512 = "oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA==";
-      };
-    };
     "spdx-license-ids-3.0.11" = {
       name = "spdx-license-ids";
       packageName = "spdx-license-ids";
@@ -59722,13 +59758,13 @@ let
         sha512 = "zZ/Q1M+9ZWlrchgh4QauD/MEUFa6eC6H6FYq6T8Of/y82JqsQBLwN6YlzbO09evE7Rx6x0oliXDCnQSjwGwQRA==";
       };
     };
-    "sscaff-1.2.127" = {
+    "sscaff-1.2.129" = {
       name = "sscaff";
       packageName = "sscaff";
-      version = "1.2.127";
+      version = "1.2.129";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sscaff/-/sscaff-1.2.127.tgz";
-        sha512 = "lmfLzIKLeolLAujyn2yNcUkg2ia31j7NHVgGEiIe+YqhYomSXzjQxM/k1G0cNvMYNPWvkBakS4Um/ppe2/Zrog==";
+        url = "https://registry.npmjs.org/sscaff/-/sscaff-1.2.129.tgz";
+        sha512 = "S9j7nQ83ETJv+NV9nV6Dr5gOAD/gnzMwlf9LLzDEPuwvDolXkIN9kFnzi+Sqxb0zoHxev7t+2342qbcsU0ORgg==";
       };
     };
     "ssh-config-1.1.6" = {
@@ -61486,13 +61522,13 @@ let
         sha512 = "EQS/oRZzMtYdAprppZxY3HcysKh11w54MgA63ybtL+TAZ4hVqYOnhw41JVJjWN9dhPnNjjLzvbZ2tMhTsla1Og==";
       };
     };
-    "svelte2tsx-0.4.8" = {
+    "svelte2tsx-0.4.9" = {
       name = "svelte2tsx";
       packageName = "svelte2tsx";
-      version = "0.4.8";
+      version = "0.4.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/svelte2tsx/-/svelte2tsx-0.4.8.tgz";
-        sha512 = "FSaJW/PW40XIV3zrHsW4aX6fBDPUu19gl1+zupCqOeT7wRip2RBxxt5ENDsPx/U5EuQC5+ultlYDGhSi6276wQ==";
+        url = "https://registry.npmjs.org/svelte2tsx/-/svelte2tsx-0.4.9.tgz";
+        sha512 = "FXly9uQTzdLFliTF86mfkT8MgR1DGJ3yvRC/jv2t2RoRLKNgLaXBv8DP2o2RcJL+NQ2X4kRD3IQsf9/99KZ5mg==";
       };
     };
     "sver-compat-1.5.0" = {
@@ -62360,13 +62396,13 @@ let
         sha512 = "EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==";
       };
     };
-    "terser-5.9.0" = {
+    "terser-5.10.0" = {
       name = "terser";
       packageName = "terser";
-      version = "5.9.0";
+      version = "5.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz";
-        sha512 = "h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ==";
+        url = "https://registry.npmjs.org/terser/-/terser-5.10.0.tgz";
+        sha512 = "AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA==";
       };
     };
     "terser-webpack-plugin-1.4.5" = {
@@ -63206,6 +63242,15 @@ let
         sha512 = "yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==";
       };
     };
+    "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==";
+      };
+    };
     "toiletdb-1.4.1" = {
       name = "toiletdb";
       packageName = "toiletdb";
@@ -67536,15 +67581,6 @@ let
         sha512 = "jWi+297PJUUWTHwlcrZz0zIuEXuHOBJIQMapXmEzbosWGv/gMnNSAMV4hTKnl5wzxvZKZzV6j+WFdrSlKQ5qnw==";
       };
     };
-    "vscode-css-languageservice-5.0.0" = {
-      name = "vscode-css-languageservice";
-      packageName = "vscode-css-languageservice";
-      version = "5.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-css-languageservice/-/vscode-css-languageservice-5.0.0.tgz";
-        sha512 = "DTMa8QbVmujFPvD3NxoC5jjIXCyCG+cvn3hNzwQRhvhsk8LblNymBZBwzfcDdgEtqsi4O/2AB5HnMIRzxhzEzg==";
-      };
-    };
     "vscode-css-languageservice-5.1.8" = {
       name = "vscode-css-languageservice";
       packageName = "vscode-css-languageservice";
@@ -67581,13 +67617,13 @@ let
         sha512 = "X4pzcrJ8dE7M3ArFuySF5fgipKDd/EauXkiJwtjBIVRWpVNq0tF9+lNCyuC7iDUwP3Oq7ow/TGssD3GdG96Jow==";
       };
     };
-    "vscode-emmet-helper-2.1.2" = {
+    "vscode-emmet-helper-2.6.4" = {
       name = "vscode-emmet-helper";
       packageName = "vscode-emmet-helper";
-      version = "2.1.2";
+      version = "2.6.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-emmet-helper/-/vscode-emmet-helper-2.1.2.tgz";
-        sha512 = "Fy6UNawSgxE3Kuqi54vSXohf03iOIrp1A74ReAgzvGP9Yt7fUAvkqF6No2WAc34/w0oWAHAeqoBNqmKKWh6U5w==";
+        url = "https://registry.npmjs.org/vscode-emmet-helper/-/vscode-emmet-helper-2.6.4.tgz";
+        sha512 = "fP0nunW1RUWEKGf4gqiYLOVNFFGXSRHjCl0pikxtwCFlty8WwimM+RBJ5o0aIiwerrYD30HqeaVyvDW027Sseg==";
       };
     };
     "vscode-html-languageservice-2.1.12" = {
@@ -67599,15 +67635,6 @@ let
         sha512 = "mIb5VMXM5jI97HzCk2eadI1K//rCEZXte0wBqA7PGXsyJH4KTyJUaYk9MR+mbfpUl2vMi3HZw9GUOLGYLc6l5w==";
       };
     };
-    "vscode-html-languageservice-4.0.0" = {
-      name = "vscode-html-languageservice";
-      packageName = "vscode-html-languageservice";
-      version = "4.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-html-languageservice/-/vscode-html-languageservice-4.0.0.tgz";
-        sha512 = "UmC+GS0IqBeZnOAmdtQvaDzoH1c5/un+b7qALUziu/Y4SOPXso5dF+YkJeTqsde6YU2pLm78RtMDzl9BParwbw==";
-      };
-    };
     "vscode-html-languageservice-4.1.1" = {
       name = "vscode-html-languageservice";
       packageName = "vscode-html-languageservice";
@@ -68454,13 +68481,13 @@ let
         sha512 = "8G0xBj05hqZybCqBtW7RPZ/hWEtP3DiLTauQzGJZuZYfVRgw7qj7iaZ+8djNqJ4VPrdOO+pS2dR1JsTbsLxdYg==";
       };
     };
-    "web3-utils-1.6.0" = {
+    "web3-utils-1.6.1" = {
       name = "web3-utils";
       packageName = "web3-utils";
-      version = "1.6.0";
+      version = "1.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/web3-utils/-/web3-utils-1.6.0.tgz";
-        sha512 = "bgCAWAeQnJF035YTFxrcHJ5mGEfTi/McsjqldZiXRwlHK7L1PyOqvXiQLE053dlzvy1kdAxWl/sSSfLMyNUAXg==";
+        url = "https://registry.npmjs.org/web3-utils/-/web3-utils-1.6.1.tgz";
+        sha512 = "RidGKv5kOkcerI6jQqDFDoTllQQqV+rPhTzZHhmbqtFObbYpU93uc+yG1LHivRTQhA6llIx67iudc/vzisgO+w==";
       };
     };
     "webassemblyjs-1.11.1" = {
@@ -68571,13 +68598,13 @@ let
         sha512 = "3S6e9Vo1W2ijk4F4PPWRIu6D/uGgqaPmqw+av3W3jLDujuNkdxX5h5c+RQ6GkjVR+WwIPOfgY8av+j5j4tMqJw==";
       };
     };
-    "webpack-5.64.0" = {
+    "webpack-5.64.1" = {
       name = "webpack";
       packageName = "webpack";
-      version = "5.64.0";
+      version = "5.64.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack/-/webpack-5.64.0.tgz";
-        sha512 = "UclnN24m054HaPC45nmDEosX6yXWD+UGC12YtUs5i356DleAUGMDC9LBAw37xRRfgPKYIdCYjGA7RZ1AA+ZnGg==";
+        url = "https://registry.npmjs.org/webpack/-/webpack-5.64.1.tgz";
+        sha512 = "b4FHmRgaaAjP+aVOVz41a9Qa5SmkUPQ+u8FntTQ1roPHahSComB6rXnLwc976VhUY4CqTaLu5mCswuHiNhOfVw==";
       };
     };
     "webpack-bundle-analyzer-3.9.0" = {
@@ -68715,13 +68742,13 @@ let
         sha512 = "lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==";
       };
     };
-    "webpack-sources-3.2.1" = {
+    "webpack-sources-3.2.2" = {
       name = "webpack-sources";
       packageName = "webpack-sources";
-      version = "3.2.1";
+      version = "3.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.1.tgz";
-        sha512 = "t6BMVLQ0AkjBOoRTZgqrWm7xbXMBzD+XDq2EZ96+vMfn3qKgsvdXZhbPZ4ElUOpdv4u+iiGe+w3+J75iy/bYGA==";
+        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.2.tgz";
+        sha512 = "cp5qdmHnu5T8wRg2G3vZZHoJPN14aqQ89SyQ11NpGH5zEMDCclt49rzo+MaRazk7/UeILhAI+/sEtcM+7Fr0nw==";
       };
     };
     "webpack-stream-6.1.0" = {
@@ -70291,6 +70318,15 @@ let
         sha512 = "QaYgJZMfWD6fKN/EYMk6w1oLWPCr1xj9QaPSZW5qkDb3y8nGCXhy2Ono+AF4F+CSL/vGcqswcAT0BaS//pgD2A==";
       };
     };
+    "yaml-2.0.0-9" = {
+      name = "yaml";
+      packageName = "yaml";
+      version = "2.0.0-9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yaml/-/yaml-2.0.0-9.tgz";
+        sha512 = "Bf2KowHjyVkIIiGMt7+fbhmlvKOaE8DWuD07bnL4+FQ9sPmEl/5IzGpBpoxPqOaHuyasBjJhyXDcISpJWfhCGw==";
+      };
+    };
     "yaml-ast-parser-0.0.43" = {
       name = "yaml-ast-parser";
       packageName = "yaml-ast-parser";
@@ -71816,7 +71852,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."split2-3.2.2"
       sources."string-width-4.2.3"
       sources."string_decoder-1.3.0"
@@ -71948,7 +71984,7 @@ in
           sources."string_decoder-0.10.31"
         ];
       })
-      sources."bytes-3.1.0"
+      sources."bytes-3.1.1"
       sources."call-bind-1.0.2"
       sources."call-me-maybe-1.0.1"
       sources."camelcase-5.3.1"
@@ -73447,7 +73483,7 @@ in
         ];
       })
       sources."@nestjs/schematics-8.0.4"
-      sources."@types/eslint-7.28.2"
+      sources."@types/eslint-7.29.0"
       sources."@types/eslint-scope-3.7.1"
       sources."@types/estree-0.0.50"
       sources."@types/json-schema-7.0.9"
@@ -73488,7 +73524,7 @@ in
       sources."bl-4.1.0"
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."buffer-5.7.1"
       sources."buffer-from-1.1.2"
       sources."callsites-3.1.0"
@@ -73511,7 +73547,7 @@ in
       sources."cross-spawn-7.0.3"
       sources."deepmerge-4.2.2"
       sources."defaults-1.0.3"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       (sources."enhanced-resolve-5.8.3" // {
@@ -73675,7 +73711,7 @@ in
       sources."supports-color-7.2.0"
       sources."symbol-observable-4.0.0"
       sources."tapable-1.1.3"
-      (sources."terser-5.9.0" // {
+      (sources."terser-5.10.0" // {
         dependencies = [
           sources."commander-2.20.3"
         ];
@@ -73715,7 +73751,7 @@ in
         ];
       })
       sources."webpack-node-externals-3.0.0"
-      sources."webpack-sources-3.2.1"
+      sources."webpack-sources-3.2.2"
       sources."which-2.0.2"
       sources."windows-release-4.0.0"
       sources."wrappy-1.0.2"
@@ -74003,13 +74039,13 @@ in
       })
       sources."@vue/cli-ui-addon-webpack-4.5.15"
       sources."@vue/cli-ui-addon-widgets-4.5.15"
-      (sources."@vue/compiler-core-3.2.21" // {
+      (sources."@vue/compiler-core-3.2.22" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
       })
-      sources."@vue/compiler-dom-3.2.21"
-      sources."@vue/shared-3.2.21"
+      sources."@vue/compiler-dom-3.2.22"
+      sources."@vue/shared-3.2.22"
       sources."@wry/equality-0.1.11"
       sources."accepts-1.3.7"
       sources."aggregate-error-3.1.0"
@@ -74091,6 +74127,7 @@ in
           sources."inherits-2.0.3"
           sources."qs-6.7.0"
           sources."setprototypeof-1.1.1"
+          sources."toidentifier-1.0.0"
         ];
       })
       (sources."boxen-4.2.0" // {
@@ -74106,7 +74143,7 @@ in
       })
       sources."brace-expansion-1.1.11"
       sources."braces-2.3.2"
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."buffer-5.7.1"
       sources."buffer-alloc-1.2.0"
       sources."buffer-alloc-unsafe-1.1.0"
@@ -74253,7 +74290,7 @@ in
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
       sources."ejs-2.7.4"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."emoji-regex-8.0.0"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
@@ -74415,7 +74452,7 @@ in
       sources."homedir-polyfill-1.0.3"
       sources."hosted-git-info-2.8.9"
       sources."http-cache-semantics-3.8.1"
-      sources."http-errors-1.8.0"
+      sources."http-errors-1.8.1"
       sources."http-signature-1.2.0"
       sources."human-signals-1.1.1"
       sources."iconv-lite-0.4.24"
@@ -74703,6 +74740,7 @@ in
           sources."http-errors-1.7.2"
           sources."inherits-2.0.3"
           sources."setprototypeof-1.1.1"
+          sources."toidentifier-1.0.0"
         ];
       })
       sources."read-pkg-5.2.0"
@@ -74766,6 +74804,7 @@ in
           sources."http-errors-1.7.3"
           sources."ms-2.1.1"
           sources."setprototypeof-1.1.1"
+          sources."toidentifier-1.0.0"
         ];
       })
       sources."serve-static-1.14.1"
@@ -74822,7 +74861,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       (sources."split-string-3.1.0" // {
         dependencies = [
           sources."extend-shallow-3.0.2"
@@ -74919,7 +74958,7 @@ in
         ];
       })
       sources."to-regex-range-2.1.1"
-      sources."toidentifier-1.0.0"
+      sources."toidentifier-1.0.1"
       sources."tough-cookie-2.5.0"
       sources."tr46-0.0.3"
       sources."trim-repeated-1.0.0"
@@ -75284,7 +75323,7 @@ in
           sources."pump-3.0.0"
         ];
       })
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       sources."camelcase-keys-7.0.1"
       sources."ccount-2.0.1"
       sources."chalk-2.4.2"
@@ -75581,7 +75620,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."split-0.2.10"
       (sources."split-transform-stream-0.1.1" // {
         dependencies = [
@@ -75750,7 +75789,7 @@ in
       sources."async-3.2.2"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."caniuse-lite-1.0.30001280"
       sources."chalk-2.4.2"
       sources."color-convert-1.9.3"
@@ -75761,7 +75800,7 @@ in
       sources."convert-source-map-1.8.0"
       sources."debug-4.3.2"
       sources."ejs-3.1.6"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."ensure-posix-path-1.1.1"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
@@ -75890,9 +75929,9 @@ in
       sha512 = "7FdJ1ONtwzV1G43GDD0kpVMn/qbiNqyOPMFTX5nRffI+7vgWoFEc6DcXOxHJxrWNDXrZh18eDsZjvZGUljSRGA==";
     };
     dependencies = [
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."caniuse-lite-1.0.30001280"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."escalade-3.1.1"
       sources."fraction.js-4.1.2"
       sources."node-releases-2.0.1"
@@ -75927,7 +75966,7 @@ in
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-4.3.0"
       sources."ast-types-0.13.4"
-      (sources."aws-sdk-2.1028.0" // {
+      (sources."aws-sdk-2.1029.0" // {
         dependencies = [
           sources."uuid-3.3.2"
         ];
@@ -76154,7 +76193,7 @@ in
       sources."@nodelib/fs.walk-1.2.8"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/eslint-7.28.2"
+      sources."@types/eslint-7.29.0"
       sources."@types/estree-0.0.50"
       sources."@types/json-schema-7.0.9"
       sources."@types/mdast-3.0.10"
@@ -76447,7 +76486,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       (sources."string-width-4.2.3" // {
         dependencies = [
           sources."emoji-regex-8.0.0"
@@ -76548,12 +76587,13 @@ in
   balanceofsatoshis = nodeEnv.buildNodePackage {
     name = "balanceofsatoshis";
     packageName = "balanceofsatoshis";
-    version = "11.11.0";
+    version = "11.12.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/balanceofsatoshis/-/balanceofsatoshis-11.11.0.tgz";
-      sha512 = "jmJjvAB00rF+zKthCDzCOIz8IxJah2cjgcBHSjLqgV7AYbyyDEUNiFZhSlymEfmGc2pJI2/JhetYEVu9PpDl3Q==";
+      url = "https://registry.npmjs.org/balanceofsatoshis/-/balanceofsatoshis-11.12.0.tgz";
+      sha512 = "wb6LDwuSA5UGHb7yIRZK3YAk9odlPkV5e4qwswwlKTOj0BV2gawClTsJ1uE27WIWFIu7OQaoB1TxUiL1jKQueQ==";
     };
     dependencies = [
+      sources."@alexbosworth/fiat-1.0.0"
       sources."@alexbosworth/html2unicode-1.1.5"
       sources."@alexbosworth/node-fetch-2.6.2"
       sources."@alexbosworth/saxophone-0.6.2"
@@ -76672,7 +76712,7 @@ in
           sources."lowercase-keys-2.0.0"
         ];
       })
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       (sources."caporal-1.4.0" // {
         dependencies = [
           sources."colorette-1.4.0"
@@ -77485,10 +77525,10 @@ in
   bower = nodeEnv.buildNodePackage {
     name = "bower";
     packageName = "bower";
-    version = "1.8.12";
+    version = "1.8.13";
     src = fetchurl {
-      url = "https://registry.npmjs.org/bower/-/bower-1.8.12.tgz";
-      sha512 = "u1xy9SrwwoPlgjuHNjhV+YUPVdqyBj2ALBxuzeIUKXaPI2i2xypGgxqXkuHcITGdi5yBj5JuXgyMvgiWiS1S3Q==";
+      url = "https://registry.npmjs.org/bower/-/bower-1.8.13.tgz";
+      sha512 = "8eWko16JlCTdaZZG70kddHPed17pHEbH8/IjfP4IFkQsfEqRsyNM09Dc8cDBFkSvtQ/2lTea7A+bMhRggG2a+Q==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -77512,7 +77552,7 @@ in
       sources."argparse-1.0.4"
       sources."array-find-index-1.0.2"
       sources."balanced-match-1.0.2"
-      sources."bower-1.8.12"
+      sources."bower-1.8.13"
       sources."bower-endpoint-parser-0.2.1"
       sources."bower-json-0.6.0"
       sources."bower-logger-0.2.1"
@@ -77610,7 +77650,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."sprintf-js-1.0.3"
       sources."strip-bom-2.0.0"
       sources."strip-indent-1.0.1"
@@ -78506,7 +78546,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."sprintf-js-1.0.3"
       sources."sshpk-1.16.1"
       sources."standard-error-1.1.0"
@@ -78919,7 +78959,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."speedometer-0.1.4"
       sources."srt2vtt-1.3.1"
       sources."sshpk-1.16.1"
@@ -79478,7 +79518,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."split-on-first-1.1.0"
       sources."split-string-3.1.0"
       (sources."static-extend-0.1.2" // {
@@ -79596,14 +79636,14 @@ in
   cdk8s-cli = nodeEnv.buildNodePackage {
     name = "cdk8s-cli";
     packageName = "cdk8s-cli";
-    version = "1.0.29";
+    version = "1.0.31";
     src = fetchurl {
-      url = "https://registry.npmjs.org/cdk8s-cli/-/cdk8s-cli-1.0.29.tgz";
-      sha512 = "hvQr4muvZ5mM//MpTH7IK8bSKRl/c3s/8GXx4BghWI+noG0/O06XxaN4ZeQuIdXHuZ4/7Qi2YA6a7qgifnetyQ==";
+      url = "https://registry.npmjs.org/cdk8s-cli/-/cdk8s-cli-1.0.31.tgz";
+      sha512 = "xaViO1Divm4/4v+oTlYV28MohHaoT4vNI2T4M9I/6oAHF1yNiSJWWd76mjOICVIoAi7OpjBj5YtyBrXcmq9pzA==";
     };
     dependencies = [
-      sources."@jsii/check-node-1.43.0"
-      sources."@jsii/spec-1.43.0"
+      sources."@jsii/check-node-1.44.0"
+      sources."@jsii/spec-1.44.0"
       sources."@types/node-12.20.37"
       sources."@xmldom/xmldom-0.7.5"
       sources."ajv-8.8.0"
@@ -79612,14 +79652,14 @@ in
       sources."at-least-node-1.0.0"
       sources."available-typed-arrays-1.0.5"
       sources."call-bind-1.0.2"
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       sources."case-1.6.3"
-      sources."cdk8s-1.1.33"
-      sources."cdk8s-plus-22-1.0.0-beta.40"
+      sources."cdk8s-1.1.35"
+      sources."cdk8s-plus-22-1.0.0-beta.42"
       sources."chalk-4.1.2"
       sources."cliui-7.0.4"
       sources."clone-2.1.2"
-      (sources."codemaker-1.43.0" // {
+      (sources."codemaker-1.44.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
         ];
@@ -79684,38 +79724,38 @@ in
       sources."is-weakref-1.0.1"
       sources."is-weakset-2.0.1"
       sources."isarray-2.0.5"
-      (sources."jsii-1.43.0" // {
+      (sources."jsii-1.44.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-pacmak-1.43.0" // {
+      (sources."jsii-pacmak-1.44.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-reflect-1.43.0" // {
+      (sources."jsii-reflect-1.44.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-rosetta-1.43.0" // {
+      (sources."jsii-rosetta-1.44.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-srcmak-0.1.398" // {
+      (sources."jsii-srcmak-0.1.400" // {
         dependencies = [
           sources."fs-extra-9.1.0"
         ];
       })
       sources."json-schema-0.4.0"
       sources."json-schema-traverse-1.0.0"
-      sources."json2jsii-0.2.51"
+      sources."json2jsii-0.2.53"
       sources."jsonfile-6.1.0"
       sources."jsonschema-1.4.0"
       sources."locate-path-5.0.0"
@@ -79731,7 +79771,7 @@ in
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
-      sources."oo-ascii-tree-1.43.0"
+      sources."oo-ascii-tree-1.44.0"
       sources."p-limit-2.3.0"
       sources."p-locate-4.1.0"
       sources."p-try-2.2.0"
@@ -79753,7 +79793,7 @@ in
       sources."snake-case-3.0.4"
       sources."sort-json-2.0.0"
       sources."spdx-license-list-6.4.0"
-      sources."sscaff-1.2.127"
+      sources."sscaff-1.2.129"
       (sources."streamroller-2.2.4" // {
         dependencies = [
           sources."date-format-2.1.0"
@@ -79779,7 +79819,7 @@ in
       sources."xmlbuilder-15.1.1"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      sources."yaml-2.0.0-8"
+      sources."yaml-2.0.0-9"
       (sources."yargs-15.4.1" // {
         dependencies = [
           sources."camelcase-5.3.1"
@@ -79875,8 +79915,8 @@ in
       })
       sources."@graphql-typed-document-node/core-3.1.0"
       sources."@josephg/resolvable-1.0.1"
-      sources."@jsii/check-node-1.43.0"
-      sources."@jsii/spec-1.43.0"
+      sources."@jsii/check-node-1.44.0"
+      sources."@jsii/spec-1.44.0"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
@@ -79987,7 +80027,7 @@ in
       sources."bytes-3.1.0"
       sources."call-bind-1.0.2"
       sources."camel-case-4.1.2"
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       (sources."camelcase-keys-6.2.2" // {
         dependencies = [
           sources."camelcase-5.3.1"
@@ -80222,19 +80262,19 @@ in
       (sources."jsii-pacmak-1.37.0" // {
         dependencies = [
           sources."@jsii/check-node-1.37.0"
-          sources."codemaker-1.43.0"
+          sources."codemaker-1.44.0"
           sources."escape-string-regexp-4.0.0"
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-reflect-1.43.0" // {
+      (sources."jsii-reflect-1.44.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-rosetta-1.43.0" // {
+      (sources."jsii-rosetta-1.44.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
@@ -80301,7 +80341,7 @@ in
       sources."on-finished-2.3.0"
       sources."once-1.4.0"
       sources."onetime-5.1.2"
-      sources."oo-ascii-tree-1.43.0"
+      sources."oo-ascii-tree-1.44.0"
       sources."open-7.4.2"
       sources."optimism-0.16.1"
       sources."ora-5.4.1"
@@ -80394,7 +80434,7 @@ in
       sources."sort-json-2.0.0"
       sources."source-map-0.5.7"
       sources."spdx-license-list-6.4.0"
-      sources."sscaff-1.2.127"
+      sources."sscaff-1.2.129"
       (sources."stack-utils-2.0.5" // {
         dependencies = [
           sources."escape-string-regexp-2.0.0"
@@ -80545,7 +80585,7 @@ in
       sources."ansi-styles-3.2.1"
       sources."arch-2.2.0"
       sources."arrify-1.0.1"
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       sources."camelcase-keys-7.0.1"
       sources."chalk-2.4.2"
       sources."clipboardy-3.0.0"
@@ -80610,7 +80650,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."strip-final-newline-2.0.0"
       sources."strip-indent-4.0.0"
       sources."supports-color-5.5.0"
@@ -81134,7 +81174,7 @@ in
       sources."bser-2.1.1"
       sources."buffer-indexof-polyfill-1.0.2"
       sources."buffers-0.1.1"
-      sources."bytes-3.1.0"
+      sources."bytes-3.1.1"
       sources."call-bind-1.0.2"
       sources."chainsaw-0.1.0"
       sources."chownr-2.0.0"
@@ -81513,7 +81553,7 @@ in
       sources."domutils-1.7.0"
       sources."dot-prop-5.3.0"
       sources."duplexer3-0.1.4"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."enquirer-2.3.6"
@@ -82107,7 +82147,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."specificity-0.3.2"
       sources."split-string-3.1.0"
       sources."sprintf-js-1.0.3"
@@ -82391,10 +82431,10 @@ in
   coc-rust-analyzer = nodeEnv.buildNodePackage {
     name = "coc-rust-analyzer";
     packageName = "coc-rust-analyzer";
-    version = "0.54.0";
+    version = "0.55.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-rust-analyzer/-/coc-rust-analyzer-0.54.0.tgz";
-      sha512 = "pj7VGs/Fzi50vWsF2VlmjmZDE1IScxEMO9TKgpaj8Fi/eGczFz8WxAnbGiAjDzVHYqyaCq/eQtU0Ix7bm1V3Bw==";
+      url = "https://registry.npmjs.org/coc-rust-analyzer/-/coc-rust-analyzer-0.55.0.tgz";
+      sha512 = "qTlCHI6qpMsRLK6Wt4OfC8NxUbZxZ2bVaq/7oan0LR2N2gh3KvQToe8aq2IlrGmRBM8CdnuiD7Wz8uPB5QelpQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -82523,7 +82563,7 @@ in
         ];
       })
       sources."braces-3.0.2"
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
@@ -82564,7 +82604,7 @@ in
       sources."domelementtype-1.3.1"
       sources."domhandler-2.4.2"
       sources."domutils-1.7.0"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."emoji-regex-8.0.0"
       sources."entities-1.1.2"
       sources."error-ex-1.3.2"
@@ -82742,7 +82782,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."specificity-0.4.1"
       sources."string-width-4.2.3"
       (sources."string_decoder-1.3.0" // {
@@ -83830,7 +83870,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."split-1.0.1"
       sources."split2-3.2.2"
       sources."string-width-4.2.3"
@@ -84387,7 +84427,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."sshpk-1.16.1"
       sources."ssri-8.0.1"
       sources."statuses-1.5.0"
@@ -84789,7 +84829,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."split-string-3.1.0"
       (sources."static-extend-0.1.2" // {
         dependencies = [
@@ -85388,7 +85428,7 @@ in
       sources."buffer-fill-1.0.0"
       sources."buffer-from-1.1.2"
       sources."bulk-write-stream-1.1.4"
-      sources."bytes-3.1.0"
+      sources."bytes-3.1.1"
       sources."cache-base-1.0.1"
       sources."call-me-maybe-1.0.1"
       sources."camelcase-4.1.0"
@@ -86150,12 +86190,12 @@ in
       sources."@types/node-fetch-2.5.12"
       sources."@types/prop-types-15.7.4"
       sources."@types/rc-1.2.0"
-      sources."@types/react-16.14.20"
+      sources."@types/react-16.14.21"
       sources."@types/react-dom-16.9.14"
       sources."@types/react-window-1.8.5"
       sources."@types/react-window-infinite-loader-1.0.5"
       sources."@types/scheduler-0.16.2"
-      sources."@types/url-parse-1.4.4"
+      sources."@types/url-parse-1.4.5"
       sources."ansi-styles-3.2.1"
       (sources."anymatch-2.0.0" // {
         dependencies = [
@@ -86192,7 +86232,7 @@ in
           sources."extend-shallow-2.0.1"
         ];
       })
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."buffer-crc32-0.2.13"
       sources."buffer-from-1.1.2"
       sources."cache-base-1.0.1"
@@ -86252,7 +86292,7 @@ in
       sources."core-util-is-1.0.3"
       sources."crypto-random-string-1.0.0"
       sources."csscolorparser-1.0.3"
-      sources."csstype-3.0.9"
+      sources."csstype-3.0.10"
       sources."debounce-1.2.1"
       sources."debug-4.3.2"
       sources."decode-uri-component-0.2.0"
@@ -86270,7 +86310,7 @@ in
       sources."duplexer3-0.1.4"
       sources."earcut-2.2.3"
       sources."electron-13.6.1"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."emoji-js-clean-4.0.0"
       sources."emoji-mart-3.0.1"
       sources."emoji-regex-9.2.2"
@@ -86868,7 +86908,7 @@ in
       sources."big.js-5.2.2"
       sources."buffer-4.9.2"
       sources."buffer-queue-1.0.0"
-      sources."bytes-3.1.0"
+      sources."bytes-3.1.1"
       sources."caseless-0.12.0"
       sources."combined-stream-1.0.8"
       sources."core-util-is-1.0.2"
@@ -87393,7 +87433,7 @@ in
       sources."mute-stream-0.0.8"
       sources."negotiator-0.6.2"
       sources."nice-try-1.0.5"
-      sources."node-abi-3.3.0"
+      sources."node-abi-3.5.0"
       sources."node-addon-api-3.2.1"
       sources."node-api-version-0.1.4"
       sources."node-fetch-2.6.6"
@@ -87527,7 +87567,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."speedometer-0.1.4"
       sources."sprintf-js-1.1.2"
       sources."sshpk-1.16.1"
@@ -87713,7 +87753,7 @@ in
       sources."auto-bind-4.0.0"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."caller-callsite-2.0.0"
       sources."caller-path-2.0.0"
       sources."callsites-2.0.0"
@@ -87748,7 +87788,7 @@ in
         ];
       })
       sources."dot-prop-5.3.0"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."emoji-regex-8.0.0"
       sources."emojilib-2.4.0"
       sources."end-of-stream-1.4.4"
@@ -87915,7 +87955,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       (sources."stack-utils-2.0.5" // {
         dependencies = [
           sources."escape-string-regexp-2.0.0"
@@ -89363,7 +89403,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."split-string-3.1.0"
       sources."split2-3.2.2"
       sources."sprintf-js-1.0.3"
@@ -89448,7 +89488,7 @@ in
           sources."yallist-3.1.1"
         ];
       })
-      (sources."terser-5.9.0" // {
+      (sources."terser-5.10.0" // {
         dependencies = [
           sources."source-map-0.7.3"
         ];
@@ -89793,10 +89833,10 @@ in
   eslint_d = nodeEnv.buildNodePackage {
     name = "eslint_d";
     packageName = "eslint_d";
-    version = "11.0.0";
+    version = "11.1.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/eslint_d/-/eslint_d-11.0.0.tgz";
-      sha512 = "eR6yaJepLQ8hMGIfW2Bj41e4ZnxbsbMZvYjDxWl98YnUlqn46qoUi20N3VB0xq9mv1IKsOO+Rqfnjov5Y93zLg==";
+      url = "https://registry.npmjs.org/eslint_d/-/eslint_d-11.1.0.tgz";
+      sha512 = "uhrQhFPG7L/81j90+QKaDImDJriqCdPY4ZcN9exFs9sdeF28Cdv/vD2XuRhjD5FxVbA/nNpFL37QsTSQwtjdjA==";
     };
     dependencies = [
       sources."@babel/code-frame-7.12.11"
@@ -90151,7 +90191,7 @@ in
           sources."source-map-0.6.1"
         ];
       })
-      (sources."@types/webpack-4.41.31" // {
+      (sources."@types/webpack-4.41.32" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
@@ -90340,7 +90380,7 @@ in
           sources."tslib-2.3.1"
         ];
       })
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       sources."caniuse-api-3.0.0"
       sources."caniuse-lite-1.0.30001280"
       sources."caseless-0.12.0"
@@ -90600,7 +90640,7 @@ in
       sources."duplexify-3.7.1"
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -92254,7 +92294,7 @@ in
       sources."base64-js-1.5.1"
       sources."bl-4.1.0"
       sources."brace-expansion-1.1.11"
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."buffer-5.7.1"
       sources."buffer-crc32-0.2.13"
       sources."caller-callsite-2.0.0"
@@ -92286,7 +92326,7 @@ in
       })
       sources."delay-5.0.0"
       sources."devtools-protocol-0.0.869402"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."error-ex-1.3.2"
@@ -92419,7 +92459,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       (sources."stack-utils-2.0.5" // {
         dependencies = [
           sources."escape-string-regexp-2.0.0"
@@ -92596,7 +92636,7 @@ in
           sources."lowercase-keys-1.0.0"
         ];
       })
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       sources."cardinal-2.1.1"
       sources."caseless-0.12.0"
       (sources."chalk-4.1.2" // {
@@ -93577,7 +93617,7 @@ in
       sources."promise-breaker-5.0.0"
       sources."promise-inflight-1.0.1"
       sources."promise-retry-2.0.1"
-      sources."proto3-json-serializer-0.1.5"
+      sources."proto3-json-serializer-0.1.6"
       sources."protobufjs-6.11.2"
       sources."proxy-addr-2.0.7"
       (sources."proxy-agent-5.0.0" // {
@@ -93613,7 +93653,7 @@ in
       sources."retry-0.12.0"
       sources."retry-request-4.2.2"
       sources."rimraf-3.0.2"
-      (sources."router-1.3.5" // {
+      (sources."router-1.3.6" // {
         dependencies = [
           sources."array-flatten-3.0.0"
           sources."debug-2.6.9"
@@ -93766,7 +93806,7 @@ in
       (sources."update-notifier-5.1.0" // {
         dependencies = [
           sources."boxen-5.1.2"
-          sources."camelcase-6.2.0"
+          sources."camelcase-6.2.1"
           sources."chalk-4.1.2"
           sources."global-dirs-3.0.0"
           sources."has-flag-4.0.0"
@@ -93912,7 +93952,7 @@ in
       sources."base64-js-1.5.1"
       sources."bl-4.1.0"
       sources."buffer-5.7.1"
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       (sources."camelcase-keys-7.0.1" // {
         dependencies = [
           sources."type-fest-1.4.0"
@@ -94060,7 +94100,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."string-width-5.0.1"
       sources."string_decoder-1.3.0"
       sources."strip-ansi-7.0.1"
@@ -94295,7 +94335,7 @@ in
       sources."util-deprecate-1.0.2"
       sources."uuid-3.4.0"
       sources."verror-1.10.0"
-      sources."web3-utils-1.6.0"
+      sources."web3-utils-1.6.1"
       sources."webidl-conversions-3.0.1"
       sources."whatwg-url-5.0.0"
       sources."which-module-2.0.0"
@@ -94807,10 +94847,10 @@ in
   gatsby-cli = nodeEnv.buildNodePackage {
     name = "gatsby-cli";
     packageName = "gatsby-cli";
-    version = "4.1.3";
+    version = "4.1.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/gatsby-cli/-/gatsby-cli-4.1.3.tgz";
-      sha512 = "GKOKnNXNMCJ/FDTieZ0eAVbOWoDRzSbbUU1+QQzbSvWl2fBtWXvpz9Grrk66gkHlu1KtqzuN9zR11AIa12dEzw==";
+      url = "https://registry.npmjs.org/gatsby-cli/-/gatsby-cli-4.1.4.tgz";
+      sha512 = "B8PYO0FPZMuaEJnvLDPPfEO+xHci7pWoS0NnEKKd+12kneObi4doQp0vqqAG+PS3oNtBRGy1nLglf8BTpCex8Q==";
     };
     dependencies = [
       (sources."@ardatan/aggregate-error-0.0.6" // {
@@ -94956,7 +94996,7 @@ in
       sources."boxen-5.1.2"
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."bytes-3.1.0"
       sources."cacheable-lookup-5.0.4"
       (sources."cacheable-request-7.0.2" // {
@@ -94966,7 +95006,7 @@ in
       })
       sources."call-bind-1.0.2"
       sources."camel-case-4.1.2"
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       sources."caniuse-lite-1.0.30001280"
       sources."ccount-1.1.0"
       (sources."chalk-4.1.2" // {
@@ -95072,7 +95112,7 @@ in
       sources."dotenv-8.6.0"
       sources."duplexer3-0.1.4"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."emoji-regex-8.0.0"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
@@ -95144,13 +95184,13 @@ in
       sources."fs.realpath-1.0.0"
       sources."fsevents-2.3.2"
       sources."function-bind-1.1.1"
-      sources."gatsby-core-utils-3.1.2"
-      (sources."gatsby-recipes-1.1.2" // {
+      sources."gatsby-core-utils-3.1.3"
+      (sources."gatsby-recipes-1.1.3" // {
         dependencies = [
           sources."strip-ansi-6.0.1"
         ];
       })
-      (sources."gatsby-telemetry-3.1.2" // {
+      (sources."gatsby-telemetry-3.1.3" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."boxen-4.2.0"
@@ -95447,7 +95487,7 @@ in
       sources."regenerator-runtime-0.13.9"
       sources."registry-auth-token-4.2.1"
       sources."registry-url-5.1.0"
-      sources."remark-mdx-2.0.0-rc.1"
+      sources."remark-mdx-2.0.0-rc.2"
       (sources."remark-mdxjs-2.0.0-next.8" // {
         dependencies = [
           sources."@babel/core-7.10.5"
@@ -95793,7 +95833,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       (sources."string-width-2.1.1" // {
         dependencies = [
           sources."ansi-regex-3.0.0"
@@ -96119,15 +96159,15 @@ in
   "@gitbeaker/cli" = nodeEnv.buildNodePackage {
     name = "_at_gitbeaker_slash_cli";
     packageName = "@gitbeaker/cli";
-    version = "34.5.0";
+    version = "34.6.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@gitbeaker/cli/-/cli-34.5.0.tgz";
-      sha512 = "lOagLq2JwEbAnppLKWZlh1wfZv2r+FJfIvOgxtf+sy+t+CtQNIXuyPzBhzqgEKhpDDKqfSF7L9diEXVPXsISEA==";
+      url = "https://registry.npmjs.org/@gitbeaker/cli/-/cli-34.6.0.tgz";
+      sha512 = "CztjBIMUgD/2RbcHjDDDqKfduBARokquYnF6pUql/9v1iodq5ch4DdBqVJuLbXehyOE/UkF/RsAtnAiKy0qbxQ==";
     };
     dependencies = [
-      sources."@gitbeaker/core-34.5.0"
-      sources."@gitbeaker/node-34.5.0"
-      sources."@gitbeaker/requester-utils-34.5.0"
+      sources."@gitbeaker/core-34.6.0"
+      sources."@gitbeaker/node-34.6.0"
+      sources."@gitbeaker/requester-utils-34.6.0"
       sources."@sindresorhus/is-4.2.0"
       sources."@szmarczak/http-timer-4.0.6"
       sources."@types/cacheable-request-6.0.2"
@@ -96183,6 +96223,7 @@ in
       sources."li-1.3.0"
       sources."log-symbols-5.0.0"
       sources."lowercase-keys-2.0.0"
+      sources."mime-3.0.0"
       sources."mime-db-1.51.0"
       sources."mime-types-2.1.34"
       sources."mimic-fn-2.1.0"
@@ -96265,7 +96306,7 @@ in
       sources."bl-4.1.0"
       (sources."boxen-5.1.2" // {
         dependencies = [
-          sources."camelcase-6.2.0"
+          sources."camelcase-6.2.1"
           sources."type-fest-0.20.2"
         ];
       })
@@ -96526,7 +96567,7 @@ in
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
-      sources."spdx-license-ids-3.0.10"
+      sources."spdx-license-ids-3.0.11"
       sources."statuses-1.5.0"
       sources."string-width-4.2.3"
       sources."string_decoder-1.3.0"
@@ -98956,7 +98997,7 @@ in
       sources."assert-plus-1.0.0"
       sources."async-2.6.3"
       sources."asynckit-0.4.0"
-      sources."aws-sdk-2.1028.0"
+      sources."aws-sdk-2.1029.0"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.11.0"
       sources."base64-js-1.5.1"
@@ -99151,10 +99192,10 @@ in
   ijavascript = nodeEnv.buildNodePackage {
     name = "ijavascript";
     packageName = "ijavascript";
-    version = "5.2.0";
+    version = "5.2.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/ijavascript/-/ijavascript-5.2.0.tgz";
-      sha512 = "MIV3R9d2o9uucTmNH5IU5bvXcevljsOrsH7Sv3rmf/uoXjl/iXb8hx4ZnymBpdt48f7U2m0iKmpWlQzxjthtjw==";
+      url = "https://registry.npmjs.org/ijavascript/-/ijavascript-5.2.1.tgz";
+      sha512 = "kH7hudp+S+8++ngjUXbiyHOhp3qa4oDVUkmf6p7+7s15PIBDv5zx878pxNRdGcWhYGy5TT683EOqeKMQw8jrFA==";
     };
     dependencies = [
       sources."jmp-2.0.0"
@@ -100486,7 +100527,7 @@ in
       sources."async-mutex-0.1.4"
       sources."asynckit-0.4.0"
       sources."atob-2.1.2"
-      (sources."aws-sdk-2.1028.0" // {
+      (sources."aws-sdk-2.1029.0" // {
         dependencies = [
           sources."sax-1.2.1"
           sources."uuid-3.3.2"
@@ -100729,7 +100770,7 @@ in
       sources."html-encoding-sniffer-1.0.2"
       sources."html-entities-1.4.0"
       sources."html-minifier-3.5.21"
-      sources."http-errors-1.8.0"
+      sources."http-errors-1.8.1"
       sources."http-signature-1.2.0"
       sources."iconv-lite-0.4.24"
       sources."ieee754-1.1.13"
@@ -101002,7 +101043,7 @@ in
         ];
       })
       sources."requires-port-1.0.0"
-      sources."reselect-4.1.2"
+      sources."reselect-4.1.3"
       sources."resolve-url-0.2.1"
       sources."retry-0.10.1"
       sources."rimraf-2.7.1"
@@ -101106,7 +101147,7 @@ in
         ];
       })
       sources."to-regex-range-5.0.1"
-      sources."toidentifier-1.0.0"
+      sources."toidentifier-1.0.1"
       sources."tough-cookie-3.0.1"
       sources."tr46-1.0.1"
       sources."tree-kit-0.7.4"
@@ -101467,7 +101508,7 @@ in
           sources."lowercase-keys-2.0.0"
         ];
       })
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       sources."chalk-4.1.2"
       sources."ci-info-2.0.0"
       sources."cli-boxes-2.2.1"
@@ -102799,7 +102840,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."browser-or-node-1.3.0"
       sources."browser-process-hrtime-1.0.0"
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."buffer-from-1.1.2"
       sources."bytes-3.1.0"
       sources."bytesish-0.4.4"
@@ -102855,7 +102896,7 @@ in
       })
       sources."dotenv-8.6.0"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."emoji-regex-8.0.0"
       sources."encodeurl-1.0.2"
       sources."enquirer-2.3.6"
@@ -105690,7 +105731,7 @@ in
         ];
       })
       sources."browserify-zlib-0.2.0"
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."bser-2.1.1"
       sources."buffer-5.2.1"
       sources."buffer-from-1.1.2"
@@ -105829,7 +105870,7 @@ in
       sources."duplexer2-0.1.4"
       sources."duplexify-3.7.1"
       sources."ecc-jsbn-0.1.2"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -107649,7 +107690,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
       sources."browser-stdout-1.3.1"
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       (sources."chalk-4.1.2" // {
         dependencies = [
           sources."supports-color-7.2.0"
@@ -109107,7 +109148,7 @@ in
           sources."lowercase-keys-2.0.0"
         ];
       })
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       (sources."chalk-4.1.2" // {
         dependencies = [
           sources."has-flag-4.0.0"
@@ -109289,7 +109330,7 @@ in
       sources."balanced-match-1.0.2"
       (sources."boxen-5.1.2" // {
         dependencies = [
-          sources."camelcase-6.2.0"
+          sources."camelcase-6.2.1"
           sources."type-fest-0.20.2"
           sources."wrap-ansi-7.0.0"
         ];
@@ -109842,7 +109883,7 @@ in
           sources."lowercase-keys-2.0.0"
         ];
       })
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       sources."chalk-4.1.2"
       sources."chownr-2.0.0"
       sources."ci-info-2.0.0"
@@ -110560,7 +110601,7 @@ in
           sources."pako-1.0.11"
         ];
       })
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       (sources."buffer-4.9.2" // {
         dependencies = [
           sources."isarray-1.0.0"
@@ -110714,7 +110755,7 @@ in
       sources."duplexer2-0.1.4"
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -110824,7 +110865,7 @@ in
           sources."posthtml-0.15.2"
           sources."posthtml-parser-0.7.2"
           sources."source-map-0.7.3"
-          sources."terser-5.9.0"
+          sources."terser-5.10.0"
         ];
       })
       (sources."htmlparser2-6.1.0" // {
@@ -112227,9 +112268,10 @@ in
       sources."ms-2.0.0"
       (sources."multiparty-4.2.2" // {
         dependencies = [
-          sources."http-errors-1.8.0"
+          sources."http-errors-1.8.1"
           sources."safe-buffer-5.2.1"
           sources."setprototypeof-1.2.0"
+          sources."toidentifier-1.0.1"
         ];
       })
       sources."negotiator-0.6.2"
@@ -112813,10 +112855,10 @@ in
   pnpm = nodeEnv.buildNodePackage {
     name = "pnpm";
     packageName = "pnpm";
-    version = "6.21.1";
+    version = "6.22.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pnpm/-/pnpm-6.21.1.tgz";
-      sha512 = "cekH8bFgZbHerGsmW4JYY5bi0jYyi/K7WZpSf8TQFlP3Kxc50KhCwNWPUzgLVImYyX8SCJcVhyNOoYQKDnmYCw==";
+      url = "https://registry.npmjs.org/pnpm/-/pnpm-6.22.2.tgz";
+      sha512 = "8umiz8XtgauWmPzOrb0CvCCwyb4IkJiavnxMDvNEbDpTb/6FZh3SLVVR2WNb07obGVKY6USpo159o5zd3RHD9g==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -114330,7 +114372,7 @@ in
         ];
       })
       sources."browserify-zlib-0.1.4"
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."buffer-5.7.1"
       sources."buffer-alloc-1.2.0"
       sources."buffer-alloc-unsafe-1.1.0"
@@ -114588,7 +114630,7 @@ in
       sources."duplexify-3.7.1"
       sources."ee-first-1.1.1"
       sources."ejs-2.7.4"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -115978,7 +116020,7 @@ in
       sources."@emotion/unitless-0.7.5"
       sources."@exodus/schemasafe-1.0.0-rc.6"
       sources."@redocly/ajv-8.6.4"
-      sources."@redocly/openapi-core-1.0.0-beta.67"
+      sources."@redocly/openapi-core-1.0.0-beta.68"
       sources."@redocly/react-dropdown-aria-2.0.12"
       sources."@types/json-schema-7.0.9"
       sources."@types/node-14.17.33"
@@ -116144,7 +116186,7 @@ in
       sources."oas-schema-walker-1.1.5"
       sources."oas-validator-5.0.8"
       sources."object-assign-4.1.1"
-      sources."openapi-sampler-1.1.0"
+      sources."openapi-sampler-1.1.1"
       sources."os-browserify-0.3.0"
       sources."pako-1.0.11"
       sources."parse-asn1-5.1.6"
@@ -116465,7 +116507,7 @@ in
           sources."lowercase-keys-2.0.0"
         ];
       })
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       sources."chalk-4.1.2"
       sources."chokidar-3.5.2"
       sources."ci-info-2.0.0"
@@ -116829,7 +116871,7 @@ in
       sources."buffers-0.1.1"
       sources."call-bind-1.0.2"
       sources."callsites-3.1.0"
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       sources."chainsaw-0.1.0"
       (sources."chalk-4.1.2" // {
         dependencies = [
@@ -117410,7 +117452,7 @@ in
       })
       sources."brace-expansion-1.1.11"
       sources."bytes-3.0.0"
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       (sources."chalk-2.4.1" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -117602,7 +117644,7 @@ in
       sources."@types/caseless-0.12.2"
       sources."@types/http-cache-semantics-4.0.1"
       sources."@types/keyv-3.1.3"
-      sources."@types/lodash-4.14.176"
+      sources."@types/lodash-4.14.177"
       sources."@types/long-4.0.1"
       sources."@types/node-16.11.7"
       sources."@types/request-2.48.7"
@@ -117664,7 +117706,7 @@ in
       sources."async-2.6.3"
       sources."asynckit-0.4.0"
       sources."at-least-node-1.0.0"
-      (sources."aws-sdk-2.1028.0" // {
+      (sources."aws-sdk-2.1029.0" // {
         dependencies = [
           sources."buffer-4.9.2"
           sources."ieee754-1.1.13"
@@ -117724,7 +117766,7 @@ in
         ];
       })
       sources."cachedir-2.3.0"
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       sources."caseless-0.12.0"
       (sources."chainsaw-0.1.0" // {
         dependencies = [
@@ -119028,10 +119070,10 @@ in
   snyk = nodeEnv.buildNodePackage {
     name = "snyk";
     packageName = "snyk";
-    version = "1.760.0";
+    version = "1.763.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/snyk/-/snyk-1.760.0.tgz";
-      sha512 = "pVH3AbY30zNerW+F+okULIRYVj0r8Ksvd8WW+beMddghOH31ZePpAWjK5F+D6d3Dy3WJ3n/JyAywxiTS+2d6kQ==";
+      url = "https://registry.npmjs.org/snyk/-/snyk-1.763.0.tgz";
+      sha512 = "nZbLVKzj3P8cPImwCkdC2m9OmghiCBmEWoXQRlDtNDnRZ/jiLZtBJcJEku8DZoJUA+P+7HJGu1TxvmKz5DLadQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -120303,7 +120345,7 @@ in
       sources."async-1.5.2"
       sources."async-limiter-1.0.1"
       sources."asynckit-0.4.0"
-      (sources."aws-sdk-2.1028.0" // {
+      (sources."aws-sdk-2.1029.0" // {
         dependencies = [
           sources."uuid-3.3.2"
         ];
@@ -121290,10 +121332,10 @@ in
   svelte-check = nodeEnv.buildNodePackage {
     name = "svelte-check";
     packageName = "svelte-check";
-    version = "2.2.8";
+    version = "2.2.9";
     src = fetchurl {
-      url = "https://registry.npmjs.org/svelte-check/-/svelte-check-2.2.8.tgz";
-      sha512 = "y8BmSf3v+jOoVwKY0K3wAiIt3hupLiUS4HYqXSZPXJZrChKddp+N8fyNeClsDChLt2sLUo6sOAhlnok/RJ+iIw==";
+      url = "https://registry.npmjs.org/svelte-check/-/svelte-check-2.2.9.tgz";
+      sha512 = "au77iP0v2f8F0gWu5Nk3dPkASk4H6DyLQEDQrQR6a7BWJaTnGEZKFhe5EsD8f9tHLyA4awPBi+D56hVuRsbgNA==";
     };
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.5"
@@ -121377,10 +121419,10 @@ in
   svelte-language-server = nodeEnv.buildNodePackage {
     name = "svelte-language-server";
     packageName = "svelte-language-server";
-    version = "0.14.11";
+    version = "0.14.12";
     src = fetchurl {
-      url = "https://registry.npmjs.org/svelte-language-server/-/svelte-language-server-0.14.11.tgz";
-      sha512 = "vocQDpxGkhAmzwMuXtEmfaj+O7jWhaw2S7NOZNBTqxG0OG5FzlpHmScJ3g6MonKcY3bv3IzFTIiGIXFdTXZ9+Q==";
+      url = "https://registry.npmjs.org/svelte-language-server/-/svelte-language-server-0.14.12.tgz";
+      sha512 = "CrkiGvu88SK9zn+yJrjw8l00N3je/WHpsZLCfR9zQDNFAdKJHsCwmq/ExCHjU32wsRIfX0oIGx+TW6fF0wtzxA==";
     };
     dependencies = [
       sources."@emmetio/abbreviation-2.2.2"
@@ -121419,8 +121461,8 @@ in
       sources."normalize-path-3.0.0"
       sources."pascal-case-3.1.2"
       sources."picomatch-2.3.0"
-      sources."prettier-2.3.2"
-      sources."prettier-plugin-svelte-2.4.0"
+      sources."prettier-2.4.1"
+      sources."prettier-plugin-svelte-2.5.0"
       sources."queue-microtask-1.2.3"
       sources."readdirp-3.6.0"
       sources."reusify-1.0.4"
@@ -121429,13 +121471,17 @@ in
       sources."strip-indent-3.0.0"
       sources."svelte-3.38.3"
       sources."svelte-preprocess-4.7.4"
-      sources."svelte2tsx-0.4.8"
+      sources."svelte2tsx-0.4.9"
       sources."to-regex-range-5.0.1"
       sources."tslib-2.3.1"
       sources."typescript-4.4.4"
-      sources."vscode-css-languageservice-5.0.0"
-      sources."vscode-emmet-helper-2.1.2"
-      sources."vscode-html-languageservice-4.0.0"
+      sources."vscode-css-languageservice-5.1.8"
+      (sources."vscode-emmet-helper-2.6.4" // {
+        dependencies = [
+          sources."vscode-uri-2.1.2"
+        ];
+      })
+      sources."vscode-html-languageservice-4.1.1"
       sources."vscode-jsonrpc-6.1.0-next.2"
       sources."vscode-languageserver-7.1.0-next.4"
       (sources."vscode-languageserver-protocol-3.17.0-next.5" // {
@@ -121446,7 +121492,7 @@ in
       sources."vscode-languageserver-textdocument-1.0.2"
       sources."vscode-languageserver-types-3.16.0"
       sources."vscode-nls-5.0.0"
-      sources."vscode-uri-2.1.2"
+      sources."vscode-uri-3.0.2"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -122338,10 +122384,10 @@ in
   terser = nodeEnv.buildNodePackage {
     name = "terser";
     packageName = "terser";
-    version = "5.9.0";
+    version = "5.10.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz";
-      sha512 = "h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ==";
+      url = "https://registry.npmjs.org/terser/-/terser-5.10.0.tgz";
+      sha512 = "AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA==";
     };
     dependencies = [
       sources."buffer-from-1.1.2"
@@ -125696,7 +125742,7 @@ in
     src = ../../misc/vscode-extensions/vscode-lldb/build-deps;
     dependencies = [
       sources."@discoveryjs/json-ext-0.5.5"
-      sources."@types/eslint-7.28.2"
+      sources."@types/eslint-7.29.0"
       sources."@types/eslint-scope-3.7.1"
       sources."@types/estree-0.0.50"
       sources."@types/json-schema-7.0.9"
@@ -125742,11 +125788,11 @@ in
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
       sources."browser-stdout-1.3.1"
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."buffer-crc32-0.2.13"
       sources."buffer-from-1.1.2"
       sources."call-bind-1.0.2"
-      sources."camelcase-6.2.0"
+      sources."camelcase-6.2.1"
       sources."caniuse-lite-1.0.30001280"
       (sources."chalk-4.1.2" // {
         dependencies = [
@@ -125787,7 +125833,7 @@ in
       sources."domelementtype-2.2.0"
       sources."domhandler-4.2.2"
       sources."domutils-2.8.0"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."emoji-regex-8.0.0"
       sources."emojis-list-3.0.0"
       sources."enhanced-resolve-5.8.3"
@@ -125953,7 +125999,7 @@ in
       sources."strip-json-comments-3.1.1"
       sources."supports-color-8.1.1"
       sources."tapable-2.2.1"
-      (sources."terser-5.9.0" // {
+      (sources."terser-5.10.0" // {
         dependencies = [
           sources."commander-2.20.3"
           sources."source-map-0.7.3"
@@ -125996,14 +126042,14 @@ in
       sources."vscode-debugadapter-testsupport-1.50.0"
       sources."vscode-debugprotocol-1.50.1"
       sources."watchpack-2.2.0"
-      sources."webpack-5.64.0"
+      sources."webpack-5.64.1"
       (sources."webpack-cli-4.9.1" // {
         dependencies = [
           sources."commander-7.2.0"
         ];
       })
       sources."webpack-merge-5.8.0"
-      sources."webpack-sources-3.2.1"
+      sources."webpack-sources-3.2.2"
       sources."which-2.0.2"
       sources."wide-align-1.1.3"
       sources."wildcard-2.0.0"
@@ -128092,13 +128138,13 @@ in
   webpack = nodeEnv.buildNodePackage {
     name = "webpack";
     packageName = "webpack";
-    version = "5.64.0";
+    version = "5.64.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/webpack/-/webpack-5.64.0.tgz";
-      sha512 = "UclnN24m054HaPC45nmDEosX6yXWD+UGC12YtUs5i356DleAUGMDC9LBAw37xRRfgPKYIdCYjGA7RZ1AA+ZnGg==";
+      url = "https://registry.npmjs.org/webpack/-/webpack-5.64.1.tgz";
+      sha512 = "b4FHmRgaaAjP+aVOVz41a9Qa5SmkUPQ+u8FntTQ1roPHahSComB6rXnLwc976VhUY4CqTaLu5mCswuHiNhOfVw==";
     };
     dependencies = [
-      sources."@types/eslint-7.28.2"
+      sources."@types/eslint-7.29.0"
       sources."@types/eslint-scope-3.7.1"
       sources."@types/estree-0.0.50"
       sources."@types/json-schema-7.0.9"
@@ -128124,12 +128170,12 @@ in
       sources."acorn-import-assertions-1.8.0"
       sources."ajv-6.12.6"
       sources."ajv-keywords-3.5.2"
-      sources."browserslist-4.18.0"
+      sources."browserslist-4.18.1"
       sources."buffer-from-1.1.2"
       sources."caniuse-lite-1.0.30001280"
       sources."chrome-trace-event-1.0.3"
       sources."commander-2.20.3"
-      sources."electron-to-chromium-1.3.896"
+      sources."electron-to-chromium-1.3.899"
       sources."enhanced-resolve-5.8.3"
       sources."es-module-lexer-0.9.3"
       sources."escalade-3.1.1"
@@ -128165,7 +128211,7 @@ in
       sources."source-map-support-0.5.20"
       sources."supports-color-8.1.1"
       sources."tapable-2.2.1"
-      (sources."terser-5.9.0" // {
+      (sources."terser-5.10.0" // {
         dependencies = [
           sources."source-map-0.7.3"
         ];
@@ -128173,7 +128219,7 @@ in
       sources."terser-webpack-plugin-5.2.5"
       sources."uri-js-4.4.1"
       sources."watchpack-2.2.0"
-      sources."webpack-sources-3.2.1"
+      sources."webpack-sources-3.2.2"
     ];
     buildInputs = globalBuildInputs;
     meta = {
diff --git a/pkgs/development/python-modules/ailment/default.nix b/pkgs/development/python-modules/ailment/default.nix
index 025180d6869aa..7e5ac1fda5c02 100644
--- a/pkgs/development/python-modules/ailment/default.nix
+++ b/pkgs/development/python-modules/ailment/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "ailment";
-  version = "9.0.10534";
+  version = "9.0.10576";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-EmfbyXHoWEd2Yp1RFRkW94dzeRXw0rsBtvVcl+Vg0qI=";
+    sha256 = "sha256-s8GZV+hcuAZJhKVoLAtC2mwHlqr/vJ6P5mwlNDczEyY=";
   };
 
   propagatedBuildInputs = [ pyvex ];
diff --git a/pkgs/development/python-modules/aiolyric/default.nix b/pkgs/development/python-modules/aiolyric/default.nix
index 4c20e38d8cfe2..44e532a6149dd 100644
--- a/pkgs/development/python-modules/aiolyric/default.nix
+++ b/pkgs/development/python-modules/aiolyric/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "aiolyric";
-  version = "1.0.7";
+  version = "1.0.8";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "timmo001";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-3UyWUsamluJclwrQD+MuUPLhNJoNU4/8w1m92OLWyrg=";
+    sha256 = "sha256-A4EkqSIQ5p4E4DPLYu9a/lmb1sFhwDqFLhjhZS6Zf5c=";
   };
 
   propagatedBuildInputs = [ aiohttp ];
diff --git a/pkgs/development/python-modules/angr/default.nix b/pkgs/development/python-modules/angr/default.nix
index d7b540f50ca96..488831e80080e 100644
--- a/pkgs/development/python-modules/angr/default.nix
+++ b/pkgs/development/python-modules/angr/default.nix
@@ -43,14 +43,14 @@ in
 
 buildPythonPackage rec {
   pname = "angr";
-  version = "9.0.10534";
+  version = "9.0.10576";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-A2dqCABkqkn/rjWGc8hrGs60BK+V8j2+jVAYxnEpx8Y=";
+    sha256 = "sha256-lRoJZX7HPZE6y7v5AuU1C6sjOIXXefv8M/qPiNQtobw=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/angrop/default.nix b/pkgs/development/python-modules/angrop/default.nix
index 35f98a172c7c9..7dc8d583958d2 100644
--- a/pkgs/development/python-modules/angrop/default.nix
+++ b/pkgs/development/python-modules/angrop/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "angrop";
-  version = "9.0.10534";
+  version = "9.0.10576";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-PaAhEn/eJg1qfuq2sHWTGTiJKNfs60NJuvfS9hVObX4=";
+    sha256 = "sha256-i4F6VyJYJ6XON9G43Z2VwWAPHGRxR9DzxnEDGiJ8LSE=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/archinfo/default.nix b/pkgs/development/python-modules/archinfo/default.nix
index ba23fc83b5392..8417d7d95af6c 100644
--- a/pkgs/development/python-modules/archinfo/default.nix
+++ b/pkgs/development/python-modules/archinfo/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "archinfo";
-  version = "9.0.10534";
+  version = "9.0.10576";
 
   src = fetchFromGitHub {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-8bGDl3rHVT2JKEOfYPHzFTxJ7t3Yz7aLQMVKAUNCSBo=";
+    sha256 = "sha256-K36tAsVfminDFK09jE6+ruROkaLfCTNPCL5ziZJOrVk=";
   };
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/atomman/default.nix b/pkgs/development/python-modules/atomman/default.nix
index b576504588aa4..8e03dbe67af7d 100644
--- a/pkgs/development/python-modules/atomman/default.nix
+++ b/pkgs/development/python-modules/atomman/default.nix
@@ -1,39 +1,66 @@
-{ lib, buildPythonPackage, fetchFromGitHub, isPy27
+{ lib
+, buildPythonPackage
 , cython
 , datamodeldict
+, fetchFromGitHub
 , matplotlib
 , numericalunits
 , numpy
 , pandas
+, potentials
 , pytest
+, pythonOlder
 , scipy
 , toolz
 , xmltodict
+, python
 }:
 
 buildPythonPackage rec {
-  version = "1.3.0";
+  version = "1.4.2";
   pname = "atomman";
-  disabled = isPy27;
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "usnistgov";
-    repo  = "atomman";
+    repo = "atomman";
     rev = "v${version}";
-    sha256 = "09pfykd96wmw00s3kgabghykjn8b4yjml4ybpi7kwy7ygdmzcx51";
+    sha256 = "sha256-Kq4mDykYf74ylWw2golxc81CYKGokXro64YUsFctLmk=";
   };
 
-  checkInputs = [ pytest ];
-  propagatedBuildInputs = [ xmltodict datamodeldict numpy matplotlib scipy pandas cython numericalunits toolz ];
+  propagatedBuildInputs = [
+    cython
+    datamodeldict
+    matplotlib
+    numericalunits
+    numpy
+    pandas
+    potentials
+    scipy
+    toolz
+    xmltodict
+  ];
+
+  checkInputs = [
+    pytest
+  ];
 
   checkPhase = ''
-    py.test tests -k 'not test_atomic'
+    # pytestCheckHook doesn't work
+    py.test tests -k "not test_rootdir and not test_version \
+      and not test_atomic_mass and not imageflags"
   '';
 
+  pythonImportsCheck = [
+    "atomman"
+  ];
+
   meta = with lib; {
-    homepage = "https://github.com/usnistgov/atomman/";
     description = "Atomistic Manipulation Toolkit";
+    homepage = "https://github.com/usnistgov/atomman/";
     license = licenses.mit;
-    maintainers = [ maintainers.costrouc ];
+    maintainers = with maintainers; [ costrouc ];
   };
 }
diff --git a/pkgs/development/python-modules/bimmer-connected/default.nix b/pkgs/development/python-modules/bimmer-connected/default.nix
index 337d6951faf34..c91af48b9e9e8 100644
--- a/pkgs/development/python-modules/bimmer-connected/default.nix
+++ b/pkgs/development/python-modules/bimmer-connected/default.nix
@@ -5,20 +5,21 @@
 , pbr
 , requests
 , pytestCheckHook
+, requests-mock
 }:
 
 buildPythonPackage rec {
   pname = "bimmer-connected";
-  version = "0.7.22";
+  version = "0.8.0";
   format = "setuptools";
 
-  disabled = pythonOlder "3.5";
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "bimmerconnected";
     repo = "bimmer_connected";
     rev = version;
-    sha256 = "sha256-tAkgOZvf9nyrAfFRxGkp7O/2oIAdBx+hNZbK9den+5c=";
+    sha256 = "sha256-sox24UpuIK5SP0IWVxa/NiyR5IrTzXe0SVTCd4FB6mo=";
   };
 
   nativeBuildInputs = [
@@ -33,6 +34,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytestCheckHook
+    requests-mock
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/cdcs/default.nix b/pkgs/development/python-modules/cdcs/default.nix
new file mode 100644
index 0000000000000..9dd8a272395bc
--- /dev/null
+++ b/pkgs/development/python-modules/cdcs/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, numpy
+, pandas
+, pytestCheckHook
+, pythonOlder
+, requests
+}:
+
+buildPythonPackage rec {
+  version = "0.1.5";
+  pname = "cdcs";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "usnistgov";
+    repo = "pycdcs";
+    rev = "v${version}";
+    sha256 = "0sd0s0mka2bvpxxiz98cjc2h5ncsb7d03af1q3w9w8pmvfsgj7pc";
+  };
+
+  propagatedBuildInputs = [
+    numpy
+    pandas
+    requests
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "cdcs"
+  ];
+
+  meta = with lib; {
+    description = "Python client for performing REST calls to configurable data curation system (CDCS) databases";
+    homepage = "https://github.com/usnistgov/pycdcs";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/chiapos/default.nix b/pkgs/development/python-modules/chiapos/default.nix
index 587c2fbf3c70c..42bf21dd52166 100644
--- a/pkgs/development/python-modules/chiapos/default.nix
+++ b/pkgs/development/python-modules/chiapos/default.nix
@@ -6,6 +6,7 @@
 , cxxopts
 , ghc_filesystem
 , pybind11
+, pytestCheckHook
 , pythonOlder
 , psutil
 , setuptools-scm
@@ -13,12 +14,12 @@
 
 buildPythonPackage rec {
   pname = "chiapos";
-  version = "1.0.4";
+  version = "1.0.6";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-flI1vwtD0H28UDMcEEELECewkXZ6vf/XEYMqRKy5R6w=";
+    sha256 = "sha256-Zh5AULPgbG0oYPcBZMp/vm94MPyfdtYn4P5V+1LeMqA=";
   };
 
   patches = [
@@ -34,7 +35,11 @@ buildPythonPackage rec {
 
   buildInputs = [ pybind11 ];
 
-  checkInputs = [ psutil ];
+  checkInputs = [
+    psutil
+    pytestCheckHook
+  ];
+
 
   # CMake needs to be run by setuptools rather than by its hook
   dontConfigure = true;
diff --git a/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch b/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch
index 2510211696915..85b7560f5d0d7 100644
--- a/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch
+++ b/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch
@@ -1,13 +1,13 @@
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 9b4a2f5..86f849c 100644
+index b757b70..fcce055 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -18,22 +18,19 @@ include(FetchContent)
- else() 
+@@ -21,23 +21,20 @@ include(${CMAKE_INSTALL_PREFIX}/share/cmake/pybind11/pybind11Config.cmake)
+ else()
  FetchContent_Declare(
    pybind11-src
 -  GIT_REPOSITORY https://github.com/pybind/pybind11.git
--  GIT_TAG        v2.6.2
+-  GIT_TAG        v2.7.1
 +  SOURCE_DIR @pybind11_src@
  )
  FetchContent_MakeAvailable(pybind11-src)
@@ -29,4 +29,3 @@ index 9b4a2f5..86f849c 100644
  )
  FetchContent_MakeAvailable(gulrak)
  
-
diff --git a/pkgs/development/python-modules/claripy/default.nix b/pkgs/development/python-modules/claripy/default.nix
index 76d0f730401c3..ab8842d406141 100644
--- a/pkgs/development/python-modules/claripy/default.nix
+++ b/pkgs/development/python-modules/claripy/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "claripy";
-  version = "9.0.10534";
+  version = "9.0.10576";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-WeqfNVGQio5ugC14iv0ls5b3O1ymEjfpV8J47cCqXeQ=";
+    sha256 = "sha256-86ySQ/2l1h5vayMfAsr9ShyE8oRKL37sT3bfrgIGFHY=";
   };
 
   # Use upstream z3 implementation
diff --git a/pkgs/development/python-modules/cle/default.nix b/pkgs/development/python-modules/cle/default.nix
index 950b6c903fb20..a5e458a6eb424 100644
--- a/pkgs/development/python-modules/cle/default.nix
+++ b/pkgs/development/python-modules/cle/default.nix
@@ -15,7 +15,7 @@
 
 let
   # The binaries are following the argr projects release cycle
-  version = "9.0.10534";
+  version = "9.0.10576";
 
   # Binary files from https://github.com/angr/binaries (only used for testing and only here)
   binaries = fetchFromGitHub {
@@ -35,7 +35,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-edZC0pZf6A2lpqJDfpMeslLQQGEokq4B9qywgS7wLxo=";
+    sha256 = "sha256-ftaFISU37GcCFTybxV31PwUl2vrbKVm/S00Qo+pUxgo=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/clize/default.nix b/pkgs/development/python-modules/clize/default.nix
index faeb54f794bb6..4f9a562543b93 100644
--- a/pkgs/development/python-modules/clize/default.nix
+++ b/pkgs/development/python-modules/clize/default.nix
@@ -15,11 +15,11 @@
 
 buildPythonPackage rec {
   pname = "clize";
-  version = "4.2.0";
+  version = "4.2.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "06p47i6hri006v7xbx7myj02as1a6f34rv88wfa9rb067p13nmyz";
+    sha256 = "3177a028e4169d8865c79af82bdd441b24311d4bd9c0ae8803641882d340a51d";
   };
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/clvm-rs/bump-cargo-lock.patch b/pkgs/development/python-modules/clvm-rs/bump-cargo-lock.patch
new file mode 100644
index 0000000000000..9939e6fb43a09
--- /dev/null
+++ b/pkgs/development/python-modules/clvm-rs/bump-cargo-lock.patch
@@ -0,0 +1,11 @@
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -80,7 +80,7 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+ 
+ [[package]]
+ name = "clvm_rs"
+-version = "0.1.14"
++version = "0.1.15"
+ dependencies = [
+  "bls12_381",
+  "hex",
diff --git a/pkgs/development/python-modules/clvm-rs/default.nix b/pkgs/development/python-modules/clvm-rs/default.nix
index 7cde70fd97f29..ec078970bc1ad 100644
--- a/pkgs/development/python-modules/clvm-rs/default.nix
+++ b/pkgs/development/python-modules/clvm-rs/default.nix
@@ -9,20 +9,25 @@
 
 buildPythonPackage rec {
   pname = "clvm_rs";
-  version = "0.1.14";
+  version = "0.1.15";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "Chia-Network";
     repo = "clvm_rs";
     rev = version;
-    sha256 = "sha256-sQ+jzBiIZYVQj2rb170wLFEx2NzOj7kEL0k0gx/JOAc=";
+    sha256 = "sha256-4QFreQlRjKqGhPvuXU/pZpxMfF8LkIf6X7C3K2q77MI=";
   };
 
+  patches = [
+    # upstream forgot to refresh the lock file
+    ./bump-cargo-lock.patch
+  ];
+
   cargoDeps = rustPlatform.fetchCargoTarball {
-    inherit src;
+    inherit src patches;
     name = "${pname}-${version}";
-    sha256 = "sha256-ZSu3bu0MfxZEFqBwdHH/RM4WTF/yx9ju1IqSVfu+Upo=";
+    sha256 = "sha256-jPNU+P6JgxTPL1GYUBE4VPU3p6cgL8u/+AIELr7r5Mk=";
   };
 
   format = "pyproject";
diff --git a/pkgs/development/python-modules/cozy/default.nix b/pkgs/development/python-modules/cozy/default.nix
index fcd002f762d75..8787ca368f1a5 100644
--- a/pkgs/development/python-modules/cozy/default.nix
+++ b/pkgs/development/python-modules/cozy/default.nix
@@ -1,5 +1,5 @@
 { buildPythonPackage, isPy3k, fetchFromGitHub, lib,
-  z3, ply, python-igraph, oset, ordered-set, dictionaries, setuptools }:
+  z3, ply, igraph, oset, ordered-set, dictionaries, setuptools }:
 
 buildPythonPackage {
   pname = "cozy";
@@ -7,7 +7,7 @@ buildPythonPackage {
   disabled = !isPy3k;
 
   propagatedBuildInputs = [
-    setuptools z3 ply python-igraph oset ordered-set dictionaries
+    setuptools z3 ply igraph oset ordered-set dictionaries
   ];
 
   src = fetchFromGitHub {
diff --git a/pkgs/development/python-modules/cvxpy/default.nix b/pkgs/development/python-modules/cvxpy/default.nix
index b7b5c7f55af0c..6fc56c85e9eca 100644
--- a/pkgs/development/python-modules/cvxpy/default.nix
+++ b/pkgs/development/python-modules/cvxpy/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "cvxpy";
-  version = "1.1.13";
+  version = "1.1.17";
   format = "pyproject";
 
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "012avhf0a8n9xyy4g3xcr5z8z2a3m6rnqic6gfs9fq6p9bkq3ix9";
+    sha256 = "sha256-M5fTuJ13Dqnw/DWbHJs6/t5qDTvqHP8g4mU7E0Uc24o=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/dnspythonchia/default.nix b/pkgs/development/python-modules/dnspythonchia/default.nix
new file mode 100644
index 0000000000000..52243eac7d818
--- /dev/null
+++ b/pkgs/development/python-modules/dnspythonchia/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "dnspythonchia";
+  version = "2.2.0";
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-iYaPYqOZ33R2DUXgIHxsewLi79iB5ja0WHOGkamffZk=";
+  };
+
+  nativeBuildInputs = [ setuptools-scm ];
+
+  # needs networking for some tests
+  doCheck = false;
+  pythonImportsCheck = [ "dns" ];
+
+  meta = with lib; {
+    description = "A DNS toolkit for Python (Chia Network fork)";
+    homepage = "https://www.chia.net/";
+    license = with licenses; [ isc ];
+    maintainers = teams.chia.members;
+  };
+}
diff --git a/pkgs/development/python-modules/explorerscript/default.nix b/pkgs/development/python-modules/explorerscript/default.nix
index b0f1a16fe421c..a77c31e26a632 100644
--- a/pkgs/development/python-modules/explorerscript/default.nix
+++ b/pkgs/development/python-modules/explorerscript/default.nix
@@ -1,4 +1,11 @@
-{ lib, buildPythonPackage, fetchFromGitHub, antlr4-python3-runtime, pygments, python-igraph }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, antlr4-python3-runtime
+, igraph
+, pygments
+}:
 
 buildPythonPackage rec {
   pname = "explorerscript";
@@ -11,7 +18,15 @@ buildPythonPackage rec {
     sha256 = "1vzyliiyrxx8l9sfbqcyr4xn5swd7znkxy69kn0vb5rban8hm9c1";
   };
 
-  propagatedBuildInputs = [ antlr4-python3-runtime python-igraph ];
+  patches = [
+    # https://github.com/SkyTemple/ExplorerScript/pull/17
+    (fetchpatch {
+      url = "https://github.com/SkyTemple/ExplorerScript/commit/47d8b3d246881d675a82b4049b87ed7d9a0e1b15.patch";
+      sha256 = "0sadw9l2nypl2s8lw526lvbdj4rzqdvrjncx4zxxgyp3x47csb48";
+    })
+  ];
+
+  propagatedBuildInputs = [ antlr4-python3-runtime igraph ];
   checkInputs = [ pygments ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/flask-wtf/default.nix b/pkgs/development/python-modules/flask-wtf/default.nix
index 36437ffafa91f..2c7dd221e9219 100644
--- a/pkgs/development/python-modules/flask-wtf/default.nix
+++ b/pkgs/development/python-modules/flask-wtf/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "Flask-WTF";
-  version = "0.15.1";
+  version = "1.0.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "ff177185f891302dc253437fe63081e7a46a4e99aca61dfe086fb23e54fff2dc";
+    sha256 = "872fbb17b5888bfc734edbdcf45bc08fb365ca39f69d25dc752465a455517b28";
   };
 
   propagatedBuildInputs = [ flask wtforms nose ];
diff --git a/pkgs/development/python-modules/gistyc/default.nix b/pkgs/development/python-modules/gistyc/default.nix
new file mode 100644
index 0000000000000..2f49552df2369
--- /dev/null
+++ b/pkgs/development/python-modules/gistyc/default.nix
@@ -0,0 +1,38 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, certifi
+, click
+, requests
+}:
+
+buildPythonPackage rec {
+  pname = "gistyc";
+  version = "1.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-WVK45U9e3qyZFi9wSRHNi9+1u4TetlZkYXAZN7LVqhE=";
+  };
+
+  propagatedBuildInputs = [
+    certifi
+    click
+    requests
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/ThomasAlbin/gistyc";
+    description = "A Python based GitHub GIST management tool";
+    longDescription = ''
+      gistyc is a Python-based library that enables developers to create, update
+      and delete their GitHub GISTs. CLI capabilities allow you to execute the
+      routines from the shell and can be integrated into your project's CI/CD
+      pipeline to automatically create or update your GISTs (e.g., via GitHub
+      actions). Files are separated in GIST sections depending on the separation
+      blocks.
+    '';
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ AndersonTorres ];
+  };
+}
diff --git a/pkgs/development/python-modules/git-filter-repo/default.nix b/pkgs/development/python-modules/git-filter-repo/default.nix
index ac0ee80385828..e6a434c38bd3f 100644
--- a/pkgs/development/python-modules/git-filter-repo/default.nix
+++ b/pkgs/development/python-modules/git-filter-repo/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "git-filter-repo";
-  version = "2.33.0";
+  version = "2.34.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1nxfd5yv8ri7w5pzxclxs0yd317nsdcwvw87ancmdkh69xvx1f2f";
+    sha256 = "sha256-taCfODhl3goWSwa6F0Rh5V2RZ8xvuwbPKh5i2/DNumM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/hdfs/default.nix b/pkgs/development/python-modules/hdfs/default.nix
new file mode 100644
index 0000000000000..05faf08bc5e40
--- /dev/null
+++ b/pkgs/development/python-modules/hdfs/default.nix
@@ -0,0 +1,36 @@
+{ buildPythonPackage
+, docopt
+, fastavro
+, fetchFromGitHub
+, lib
+, nose
+, pytestCheckHook
+, requests
+, six
+}:
+
+buildPythonPackage rec {
+  pname = "hdfs";
+  # See https://github.com/mtth/hdfs/issues/176.
+  version = "2.5.8";
+
+  src = fetchFromGitHub {
+    owner = "mtth";
+    repo = pname;
+    rev = version;
+    hash = "sha256-94Q3IUoX1Cb+uRqvsfpVZJ1koJSx5cQ3/XpYJ0gkQNU=";
+  };
+
+  propagatedBuildInputs = [ docopt requests six ];
+
+  checkInputs = [ fastavro nose pytestCheckHook ];
+
+  pythonImportsCheck = [ "hdfs" ];
+
+  meta = with lib; {
+    description = "Python API and command line interface for HDFS";
+    homepage = "https://github.com/mtth/hdfs";
+    license = licenses.mit;
+    maintainers = with maintainers; [ samuela ];
+  };
+}
diff --git a/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix b/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
index 741fd996ffdc1..8c3c3670c424c 100644
--- a/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
+++ b/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
@@ -11,11 +11,11 @@
 
 buildPythonPackage rec {
   pname = "ibm-cloud-sdk-core";
-  version = "3.12.0";
+  version = "3.13.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "ff3e8675a982f7754359ec598329ba5635014e2bfd51573b9413605849ef314a";
+    sha256 = "b27aec03e8c666b3e36c68b2331871f37a0c6c0467fe0f73462fda7300d3c19f";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/identify/default.nix b/pkgs/development/python-modules/identify/default.nix
index 926f84798ad0f..0e7ec10981f4f 100644
--- a/pkgs/development/python-modules/identify/default.nix
+++ b/pkgs/development/python-modules/identify/default.nix
@@ -3,18 +3,21 @@
 , fetchFromGitHub
 , pytestCheckHook
 , editdistance-s
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "identify";
-  version = "2.3.5";
+  version = "2.3.6";
+  format = "setuptools";
 
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "pre-commit";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-XEwZ6OUEocE4dSDLCLagKqmJruvb9beC0u93SScrOho=";
+    sha256 = "sha256-1+ILyqb0Ve+YmP9K+tin4iYIWUoRpi/+fbuyUFZOzBE=";
   };
 
   checkInputs = [
@@ -22,7 +25,9 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [ "identify" ];
+  pythonImportsCheck = [
+    "identify"
+  ];
 
   meta = with lib; {
     description = "File identification library for Python";
diff --git a/pkgs/development/python-modules/python-igraph/default.nix b/pkgs/development/python-modules/igraph/default.nix
index ce5073ed087e7..91e676602360c 100644
--- a/pkgs/development/python-modules/python-igraph/default.nix
+++ b/pkgs/development/python-modules/igraph/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "python-igraph";
-  version = "0.9.6";
+  version = "0.9.8";
 
   disabled = pythonOlder "3.6";
 
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "igraph";
     repo = "python-igraph";
     rev = version;
-    sha256 = "sha256-x/BUlMmSgjY2v6bVKPxmz86OCz6xgRUcfSqI3vV9MPs=";
+    sha256 = "sha256-RtvT5/LZ/xP68yBB7DDKJGeNCiX4HyPTCuk+Ijd2nFs=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/ihatemoney/default.nix b/pkgs/development/python-modules/ihatemoney/default.nix
index 5d768170d806c..2c535ea79b576 100644
--- a/pkgs/development/python-modules/ihatemoney/default.nix
+++ b/pkgs/development/python-modules/ihatemoney/default.nix
@@ -132,6 +132,13 @@ buildPythonPackage rec {
     debts
   ];
 
+  # upstream performed the update without needing to patch the code
+  # the original patch does not apply, sadly
+  # https://github.com/spiral-project/ihatemoney/pull/912
+  postPatch = ''
+    substituteInPlace setup.cfg --replace "Flask-WTF>=0.14.3,<1" "Flask-WTF>=0.14.3,<2"
+  '';
+
   checkInputs = [
     flask_testing
     pytestCheckHook
diff --git a/pkgs/development/python-modules/kmapper/default.nix b/pkgs/development/python-modules/kmapper/default.nix
index 630c025e09366..c3418b2c5c943 100644
--- a/pkgs/development/python-modules/kmapper/default.nix
+++ b/pkgs/development/python-modules/kmapper/default.nix
@@ -8,7 +8,7 @@
 , pytestCheckHook
 , networkx
 , matplotlib
-, python-igraph
+, igraph
 , plotly
 , ipywidgets
 }:
@@ -35,7 +35,7 @@ buildPythonPackage rec {
     pytestCheckHook
     networkx
     matplotlib
-    python-igraph
+    igraph
     plotly
     ipywidgets
   ];
diff --git a/pkgs/development/python-modules/ledgerwallet/default.nix b/pkgs/development/python-modules/ledgerwallet/default.nix
index 7650e375b41f9..421a24e9ee127 100644
--- a/pkgs/development/python-modules/ledgerwallet/default.nix
+++ b/pkgs/development/python-modules/ledgerwallet/default.nix
@@ -25,6 +25,13 @@ buildPythonPackage rec {
     sha256 = "0fb93h2wxm9as9rsywlgz2ng4wrlbjphn6mgbhj6nls2i86rrdxk";
   };
 
+  patches = [
+    # Fix removed function in construct library
+    # https://github.com/LedgerHQ/ledgerctl/issues/17
+    # https://github.com/construct/construct/commit/8915512f53552b1493afdbce5bbf8bb6f2aa4411
+    ./remove-iterateints.patch
+  ];
+
   buildInputs = lib.optionals stdenv.isDarwin [ AppKit ];
   propagatedBuildInputs = [
     cryptography click construct ecdsa hidapi intelhex pillow protobuf requests tabulate
diff --git a/pkgs/development/python-modules/ledgerwallet/remove-iterateints.patch b/pkgs/development/python-modules/ledgerwallet/remove-iterateints.patch
new file mode 100644
index 0000000000000..c97785f1d04b6
--- /dev/null
+++ b/pkgs/development/python-modules/ledgerwallet/remove-iterateints.patch
@@ -0,0 +1,19 @@
+--- a/ledgerwallet/params.py	2021-11-17 20:31:10.488954050 -0300
++++ b/ledgerwallet/params.py	2021-11-17 20:31:30.619477930 -0300
+@@ -19,7 +19,6 @@
+ )
+ from construct.core import (
+     byte2int,
+-    iterateints,
+     singleton,
+     stream_read,
+     stream_write,
+@@ -40,7 +39,7 @@
+         num_bytes = byte & 0x80
+         encoded_len = stream_read(stream, num_bytes)
+         num = 0
+-        for len_byte in iterateints(encoded_len):
++        for len_byte in encoded_len:
+             num = num << 8 + len_byte
+         return num
+ 
diff --git a/pkgs/development/python-modules/libcloud/default.nix b/pkgs/development/python-modules/libcloud/default.nix
index 78afad13dd20c..77aa9e2927a51 100644
--- a/pkgs/development/python-modules/libcloud/default.nix
+++ b/pkgs/development/python-modules/libcloud/default.nix
@@ -1,40 +1,49 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, isPy27
-, mock
 , pycrypto
+, pythonOlder
 , requests
-, pytest-runner
-, pytest
-, requests-mock
-, typing
 }:
 
 buildPythonPackage rec {
   pname = "apache-libcloud";
-  version = "3.3.1";
+  version = "3.4.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "d7450453eaf5904eb4fb4f74cf9f37dc83721a719bce34f5abb336b1a1ab974d";
+    sha256 = "sha256-iPGNoM8/rAr3I+dD+3QdnRviUYge2reloNFimVW1ARs=";
   };
 
-  checkInputs = [ mock pytest pytest-runner requests-mock ];
-  propagatedBuildInputs = [ pycrypto requests ] ++ lib.optionals isPy27 [ typing ];
+  propagatedBuildInputs = [
+    pycrypto
+    requests
+  ];
+
+  preConfigure = ''
+    cp libcloud/test/secrets.py-dist libcloud/test/secrets.py
+  '';
 
-  preConfigure = "cp libcloud/test/secrets.py-dist libcloud/test/secrets.py";
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "setup_requires=pytest_runner," "setup_requires=[],"
+  '';
 
   # requires a certificates file
   doCheck = false;
 
-  pythonImportsCheck = [ "libcloud" ];
+  pythonImportsCheck = [
+    "libcloud"
+  ];
 
   meta = with lib; {
     description = "A unified interface to many cloud providers";
     homepage = "https://libcloud.apache.org/";
     changelog = "https://github.com/apache/libcloud/blob/v${version}/CHANGES.rst";
     license = licenses.asl20;
+    maintainers = with maintainers; [ ];
   };
-
 }
diff --git a/pkgs/development/python-modules/librouteros/default.nix b/pkgs/development/python-modules/librouteros/default.nix
index 32c9889681ca3..6e9d3ebd52969 100644
--- a/pkgs/development/python-modules/librouteros/default.nix
+++ b/pkgs/development/python-modules/librouteros/default.nix
@@ -8,14 +8,16 @@
 
 buildPythonPackage rec {
   pname = "librouteros";
-  version = "3.1.0";
+  version = "3.2.0";
+  format = "setuptools";
+
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "luqasz";
     repo = pname;
     rev = version;
-    sha256 = "1skjwnqa3vcpq9gzgpw93wdmisq15fp0q07kzyq3fgx4yg7b6sql";
+    sha256 = "sha256-Zo9HCjYe9cCkqXhikAjDQKQXGkrMni3f+9KoqhZskNk=";
   };
 
   checkInputs = [
@@ -33,7 +35,9 @@ buildPythonPackage rec {
     "test_generator_ditch"
   ];
 
-  pythonImportsCheck = [ "librouteros" ];
+  pythonImportsCheck = [
+    "librouteros"
+  ];
 
   meta = with lib; {
     description = "Python implementation of the MikroTik RouterOS API";
diff --git a/pkgs/development/python-modules/manticore/default.nix b/pkgs/development/python-modules/manticore/default.nix
index 9e0938fb14865..0c36f2cc6cc6e 100644
--- a/pkgs/development/python-modules/manticore/default.nix
+++ b/pkgs/development/python-modules/manticore/default.nix
@@ -1,38 +1,46 @@
 { lib
 , buildPythonPackage
-, fetchFromGitHub
 , capstone
 , crytic-compile
+, fetchFromGitHub
+, intervaltree
 , ply
 , prettytable
+, protobuf
 , pyelftools
 , pyevmasm
 , pysha3
+, pytestCheckHook
+, pythonOlder
 , pyyaml
 , rlp
 , stdenv
 , unicorn
 , wasm
 , yices
-, pytestCheckHook
 , z3
 }:
 
 buildPythonPackage rec {
   pname = "manticore";
-  version = "0.3.5";
+  version = "0.3.6";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "trailofbits";
     repo = "manticore";
     rev = version;
-    sha256 = "0z2nhfcraa5dx6srbrw8s11awh2la0x7d88yw9in8g548nv6qa69";
+    sha256 = "sha256-L112YwrBcdcLBeBsPLWt3C57u2WDvGLq50EzW9ojdyg=";
   };
 
   propagatedBuildInputs = [
     crytic-compile
+    intervaltree
     ply
     prettytable
+    protobuf
     pyevmasm
     pysha3
     pyyaml
@@ -49,22 +57,29 @@ buildPythonPackage rec {
     sed -ie s/z3-solver// setup.py
   '';
 
-  checkInputs = [ pytestCheckHook ];
-  preCheck = "export PATH=${yices}/bin:${z3}/bin:$PATH";
-  pytestFlagsArray = [
-    "--ignore=tests/ethereum" # TODO: enable when solc works again
-    "--ignore=tests/ethereum_bench"
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  preCheck = ''
+    export PATH=${yices}/bin:${z3}/bin:$PATH
+  '';
+
+  disabledTestPaths = [
+    "tests/ethereum" # Enable when solc works again
+    "tests/ethereum_bench"
   ] ++ lib.optionals (!stdenv.isLinux) [
-    "--ignore=tests/native"
-    "--ignore=tests/other/test_locking.py"
-    "--ignore=tests/other/test_state_introspection.py"
+    "tests/native"
+    "tests/other/test_locking.py"
+    "tests/other/test_state_introspection.py"
   ];
+
   disabledTests = [
-    # failing tests
+    # Failing tests
     "test_chmod"
     "test_timeout"
     "test_wasm_main"
-    # slow tests
+    # Slow tests
     "testmprotectFailSymbReading"
     "test_ConstraintsForking"
     "test_resume"
@@ -97,6 +112,13 @@ buildPythonPackage rec {
     "test_implicit_call"
     "test_trace"
     "test_plugin"
+    # Tests are failing with latest unicorn
+    "Aarch64UnicornInstructions"
+    "test_integration_resume"
+  ];
+
+  pythonImportsCheck = [
+    "manticore"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/mautrix/default.nix b/pkgs/development/python-modules/mautrix/default.nix
index 90000de8985ce..c7aa300928f07 100644
--- a/pkgs/development/python-modules/mautrix/default.nix
+++ b/pkgs/development/python-modules/mautrix/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "mautrix";
-  version = "0.10.11";
+  version = "0.11.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "b3905fbd1381031b4c54258fdef9e99dd342c3a211abe0b827b2c480db4b1771";
+    sha256 = "sha256-eZ8fWemS808Hz6KoQWfMsk5WfaO+vj0kTyInhtE20Qk=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/mne-python/default.nix b/pkgs/development/python-modules/mne-python/default.nix
index 8e17eacbf7b5b..c9d8833e8ec98 100644
--- a/pkgs/development/python-modules/mne-python/default.nix
+++ b/pkgs/development/python-modules/mne-python/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "mne-python";
-  version = "0.23.4";
+  version = "0.24.0";
 
   disabled = isPy27;
 
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "mne-tools";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1kik52ssa6difkqz8xnvrcbpp4p7792hj1rcgyypb4q7sc048aqy";
+    sha256 = "1982y54n7q9pl28haca0vx6cjrk2a8cj24piaj8j31f09rynn8k0";
   };
 
   propagatedBuildInputs = [ numpy scipy ];
diff --git a/pkgs/development/python-modules/motionblinds/default.nix b/pkgs/development/python-modules/motionblinds/default.nix
new file mode 100644
index 0000000000000..a8fb0ae58dd41
--- /dev/null
+++ b/pkgs/development/python-modules/motionblinds/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pycryptodomex
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "motionblinds";
+  version = "0.5.8.2";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "starkillerOG";
+    repo = "motion-blinds";
+    rev = version;
+    sha256 = "6aSwUuH5IpfcuVGXWVmb0DHglsUtGh/ATOe6iih6fXk=";
+  };
+
+  propagatedBuildInputs = [
+    pycryptodomex
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "motionblinds"
+  ];
+
+  meta = with lib; {
+    description = "Python library for interfacing with Motion Blinds";
+    homepage = "https://github.com/starkillerOG/motion-blinds";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/motioneye-client/default.nix b/pkgs/development/python-modules/motioneye-client/default.nix
index 35632e780e7e1..c5a3a2cd4954b 100644
--- a/pkgs/development/python-modules/motioneye-client/default.nix
+++ b/pkgs/development/python-modules/motioneye-client/default.nix
@@ -11,15 +11,16 @@
 
 buildPythonPackage rec {
   pname = "motioneye-client";
-  version = "0.3.11";
+  version = "0.3.12";
   format = "pyproject";
+
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "dermotduffy";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0f34ig8njyn7dzy8272m0b1nlnnhir58ar3vx4zps10i0dc32hb2";
+    sha256 = "sha256-vEB9ztz0RTGoolFUVQcMV7DUthCEAx1kpwkAS2186OU=";
   };
 
   nativeBuildInputs = [
@@ -41,7 +42,9 @@ buildPythonPackage rec {
       --replace " --cov-report=html:htmlcov --cov-report=xml:coverage.xml --cov-report=term-missing --cov=motioneye_client --cov-fail-under=100" ""
   '';
 
-  pythonImportsCheck = [ "motioneye_client" ];
+  pythonImportsCheck = [
+    "motioneye_client"
+  ];
 
   meta = with lib; {
     description = "Python library for motionEye";
diff --git a/pkgs/development/python-modules/multiprocess/default.nix b/pkgs/development/python-modules/multiprocess/default.nix
index df304efb91995..491aa131bb592 100644
--- a/pkgs/development/python-modules/multiprocess/default.nix
+++ b/pkgs/development/python-modules/multiprocess/default.nix
@@ -1,22 +1,36 @@
-{ lib, buildPythonPackage, fetchPypi, dill }:
+{ lib
+, buildPythonPackage
+, dill
+, fetchFromGitHub
+}:
 
 buildPythonPackage rec {
   pname = "multiprocess";
-  version = "0.70.9";
+  version = "0.70.12.2";
+  format = "setuptools";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "9fd5bd990132da77e73dec6e9613408602a4612e1d73caf2e2b813d2b61508e5";
+  src = fetchFromGitHub {
+    owner = "uqfoundation";
+    repo = pname;
+    rev = "multiprocess-${version}";
+    sha256 = "1npikdgj0qriqj384vg22qgq2xqylypk67sx1qfmdzvk6c4iyg0w";
   };
 
-  propagatedBuildInputs = [ dill ];
+  propagatedBuildInputs = [
+    dill
+  ];
 
   # Python-version dependent tests
   doCheck = false;
 
+  pythonImportsCheck = [
+    "multiprocess"
+  ];
+
   meta = with lib; {
-    description = "Better multiprocessing and multithreading in python";
+    description = "Multiprocessing and multithreading in Python";
     homepage = "https://github.com/uqfoundation/multiprocess";
     license = licenses.bsd3;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/python-modules/oocsi/default.nix b/pkgs/development/python-modules/oocsi/default.nix
new file mode 100644
index 0000000000000..2f0ae510d018d
--- /dev/null
+++ b/pkgs/development/python-modules/oocsi/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "oocsi";
+  version = "0.4.2";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "020xfjvcgicj81zl3z9wnb2f9bha75bjw512b0cc38w66bniinjq";
+  };
+
+  # Tests are not shipped
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "oocsi"
+  ];
+
+  meta = with lib; {
+    description = "OOCSI library for Python";
+    homepage = "https://github.com/iddi/oocsi-python";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/potentials/default.nix b/pkgs/development/python-modules/potentials/default.nix
new file mode 100644
index 0000000000000..24db19b3c065e
--- /dev/null
+++ b/pkgs/development/python-modules/potentials/default.nix
@@ -0,0 +1,58 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, ipywidgets
+, cdcs
+, bibtexparser
+, habanero
+, pandas
+, requests
+, numpy
+, matplotlib
+, unidecode
+, datamodeldict
+, xmltodict
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  version = "0.3.1";
+  pname = "potentials";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "02l1rav5jdfsb00byxbswyhqdnjljp9y7g4ddn4mivzi7x39qa52";
+  };
+
+  propagatedBuildInputs = [
+    ipywidgets
+    cdcs
+    bibtexparser
+    habanero
+    pandas
+    requests
+    numpy
+    matplotlib
+    unidecode
+    datamodeldict
+    xmltodict
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "potentials"
+  ];
+
+  meta = with lib; {
+    description = "Python API database tools for accessing the NIST Interatomic Potentials Repository";
+    homepage = "https://github.com/usnistgov/potentials";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/pydeck/default.nix b/pkgs/development/python-modules/pydeck/default.nix
new file mode 100644
index 0000000000000..7e95c60be828a
--- /dev/null
+++ b/pkgs/development/python-modules/pydeck/default.nix
@@ -0,0 +1,31 @@
+{ lib, buildPythonPackage, fetchPypi, ipykernel, ipywidgets, pythonOlder, pytestCheckHook, pandas }:
+
+buildPythonPackage rec {
+  pname = "pydeck";
+  version = "0.7.0";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1zi0gqzd0byj16ja74m2dm99a1hmrlhk26y0x7am07vb1d8lvvsy";
+  };
+
+  pythonImportsCheck = [ "pydeck" ];
+
+  checkInputs = [ pytestCheckHook pandas ];
+  # tries to start a jupyter server
+  disabledTests = [ "test_nbconvert" ];
+
+  propagatedBuildInputs = [
+    ipykernel
+    ipywidgets
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/visgl/deck.gl/tree/master/bindings/pydeck";
+    description = "Large-scale interactive data visualization in Python";
+    maintainers = with maintainers; [ creator54 ];
+    license = licenses.asl20;
+  };
+}
diff --git a/pkgs/development/python-modules/pydyf/default.nix b/pkgs/development/python-modules/pydyf/default.nix
new file mode 100644
index 0000000000000..346a6f6e39b59
--- /dev/null
+++ b/pkgs/development/python-modules/pydyf/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, isPy3k
+, pytestCheckHook
+, coverage
+, ghostscript
+, pillow
+}:
+
+buildPythonPackage rec {
+  pname = "pydyf";
+  version = "0.1.2";
+  disabled = !isPy3k;
+
+  src = fetchPypi {
+    inherit version;
+    pname = "pydyf";
+    sha256 = "sha256-Hi9d5IF09QXeAlp9HnzwG73ZQiyoq5RReCvwDuF4YCw=";
+  };
+
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace "--isort --flake8 --cov --no-cov-on-fail" ""
+  '';
+
+  checkInputs = [
+    pytestCheckHook
+    coverage
+    ghostscript
+    pillow
+  ];
+
+  meta = with lib; {
+    homepage = "https://doc.courtbouillon.org/pydyf/stable/";
+    description = "Low-level PDF generator written in Python and based on PDF specification 1.7";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ rprecenth ];
+  };
+}
diff --git a/pkgs/development/python-modules/pylitterbot/default.nix b/pkgs/development/python-modules/pylitterbot/default.nix
index 50afee3058cc9..be6d71aed5d36 100644
--- a/pkgs/development/python-modules/pylitterbot/default.nix
+++ b/pkgs/development/python-modules/pylitterbot/default.nix
@@ -11,14 +11,16 @@
 
 buildPythonPackage rec {
   pname = "pylitterbot";
-  version = "2021.10.1";
+  version = "2021.11.0";
+  format = "setuptools";
+
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "natekspencer";
     repo = pname;
     rev = version;
-    sha256 = "sha256-xE+H23AZR1OXfuLMvSuI7IeYKX7k2iEATHq5VheMLn4=";
+    sha256 = "sha256-HdIxi6RfdXBYEYFEcv/f9wAqKZg/MsEZd6mDYwE45to=";
   };
 
   propagatedBuildInputs = [
@@ -32,7 +34,9 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [ "pylitterbot" ];
+  pythonImportsCheck = [
+    "pylitterbot"
+  ];
 
   meta = with lib; {
     description = "Python package for controlling a Litter-Robot";
diff --git a/pkgs/development/python-modules/pypinyin/default.nix b/pkgs/development/python-modules/pypinyin/default.nix
index 47e41434c469b..4cac927341de5 100644
--- a/pkgs/development/python-modules/pypinyin/default.nix
+++ b/pkgs/development/python-modules/pypinyin/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "pypinyin";
-  version = "0.43.0";
+  version = "0.44.0";
 
   src = fetchFromGitHub {
     owner = "mozillazg";
     repo = "python-pinyin";
     rev = "v${version}";
-    sha256 = "0h3lpb8bw9zp8is5sx2zg931wz12x0zfan1kksnbhx16vwv1kgw3";
+    sha256 = "sha256-LYiiZvpM/V3QRyTUXGWGnSnR0AnqWfTW0xJB4Vnw7lI=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/pyscard/default.nix b/pkgs/development/python-modules/pyscard/default.nix
index caa5e4e244059..9efc461cec2b5 100644
--- a/pkgs/development/python-modules/pyscard/default.nix
+++ b/pkgs/development/python-modules/pyscard/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchPypi, buildPythonPackage, swig, pcsclite, PCSC }:
+{ lib, stdenv, fetchpatch, fetchPypi, buildPythonPackage, swig, pcsclite, PCSC }:
 
 let
   # Package does not support configuring the pcsc library.
@@ -14,6 +14,15 @@ buildPythonPackage rec {
     sha256 = "05de0579c42b4eb433903aa2fb327d4821ebac262434b6584da18ed72053fd9e";
   };
 
+  patches = [
+    # present in master - remove after 2.0.2
+    (fetchpatch {
+      name = "darwin-typo-test-fix.patch";
+      url = "https://github.com/LudovicRousseau/pyscard/commit/ce842fcc76fd61b8b6948d0b07306d82ad1ec12a.patch";
+      sha256 = "0wsaj87wp9d2vnfzwncfxp2w95m0zhr7zpkmg5jccn06z52ihis3";
+    })
+  ];
+
   postPatch = if withApplePCSC then ''
     substituteInPlace smartcard/scard/winscarddll.c \
       --replace "/System/Library/Frameworks/PCSC.framework/PCSC" \
diff --git a/pkgs/development/python-modules/python-gammu/default.nix b/pkgs/development/python-modules/python-gammu/default.nix
index d61512bd6b1f9..ec8d5841bafd0 100644
--- a/pkgs/development/python-modules/python-gammu/default.nix
+++ b/pkgs/development/python-modules/python-gammu/default.nix
@@ -9,25 +9,34 @@
 
 buildPythonPackage rec {
   pname = "python-gammu";
-  version = "3.2.3";
+  version = "3.2.4";
+  format = "setuptools";
+
   disabled = pythonOlder "3.5";
 
   src = fetchFromGitHub {
     owner = "gammu";
     repo = pname;
     rev = version;
-    sha256 = "sha256-MtFxKRE6CB/LZq9McMyYhjwfs/Rdke9gsNUqbOQdWYQ=";
+    sha256 = "sha256-lFQBrKWwdvUScwsBva08izZVeVDn1u+ldzixtL9YTpA=";
   };
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [
+    pkg-config
+  ];
 
-  buildInputs = [ gammu ];
+  buildInputs = [
+    gammu
+  ];
 
   # Check with the next release if tests could be run with pytest
   # checkInputs = [ pytestCheckHook ];
   # Don't run tests for now
   doCheck = false;
-  pythonImportsCheck = [ "gammu" ];
+
+  pythonImportsCheck = [
+    "gammu"
+  ];
 
   meta = with lib; {
     description = "Python bindings for Gammu";
diff --git a/pkgs/development/python-modules/python-mapnik/default.nix b/pkgs/development/python-modules/python-mapnik/default.nix
index 3a4e4af54def5..2d888518ff454 100644
--- a/pkgs/development/python-modules/python-mapnik/default.nix
+++ b/pkgs/development/python-modules/python-mapnik/default.nix
@@ -68,7 +68,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python bindings for Mapnik";
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ erictapen ];
     homepage = "https://mapnik.org";
     license = licenses.lgpl21;
   };
diff --git a/pkgs/development/python-modules/pyvex/default.nix b/pkgs/development/python-modules/pyvex/default.nix
index ea8bf1b72c097..ba024bf5c6a1f 100644
--- a/pkgs/development/python-modules/pyvex/default.nix
+++ b/pkgs/development/python-modules/pyvex/default.nix
@@ -11,11 +11,11 @@
 
 buildPythonPackage rec {
   pname = "pyvex";
-  version = "9.0.10534";
+  version = "9.0.10576";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-tUjASwLQy/p3Q+XnkbpUQNM6VHk94bIle2BzRd4EYsg=";
+    sha256 = "sha256-pOQZXymIuffUfShAUrXqlxwWCIRKZpkMZcJS1fad2bs=";
   };
 
   postPatch = lib.optionalString stdenv.isDarwin ''
diff --git a/pkgs/development/python-modules/pywizlight/default.nix b/pkgs/development/python-modules/pywizlight/default.nix
index 755e1555a4313..9098bf80dc5e9 100644
--- a/pkgs/development/python-modules/pywizlight/default.nix
+++ b/pkgs/development/python-modules/pywizlight/default.nix
@@ -5,16 +5,20 @@
 , fetchFromGitHub
 , pytest-asyncio
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "pywizlight";
-  version = "0.4.10";
+  version = "0.4.13";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "sbidy";
     repo = pname;
-    rev = "v${version}";
+    rev = version;
     sha256 = "sha256-XO9KmsC3DXgVcGWr5ss3m2wB8rVboWyQUWBidynhkP8=";
   };
 
@@ -28,14 +32,16 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  # Tests requires network features (e. g., discovery testing)
   disabledTests = [
+    # Tests requires network features (e. g., discovery testing)
     "test_Bulb_Discovery"
     "test_timeout"
     "test_timeout_PilotBuilder"
   ];
 
-  pythonImportsCheck = [ "pywizlight" ];
+  pythonImportsCheck = [
+    "pywizlight"
+  ];
 
   meta = with lib; {
     description = "Python connector for WiZ light bulbs";
diff --git a/pkgs/development/python-modules/qiling/default.nix b/pkgs/development/python-modules/qiling/default.nix
index 61787548f846a..3576f5b736607 100644
--- a/pkgs/development/python-modules/qiling/default.nix
+++ b/pkgs/development/python-modules/qiling/default.nix
@@ -1,33 +1,43 @@
 { lib
 , buildPythonPackage
-, fetchPypi
 , capstone
-, unicorn
-, pefile
-, python-registry
+, fetchFromGitHub
+, fetchPypi
+, gevent
 , keystone-engine
+, multiprocess
+, pefile
 , pyelftools
-, gevent
+, python-registry
+, unicorn
 }:
+
 buildPythonPackage rec {
   pname = "qiling";
-  version = "1.3.0";
+  version = "1.4.0";
+  format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "084ad706f6803d7de2391eab928ecf4cb3e8d892fd2988666d4791a422d6ab9a";
+    sha256 = "sha256-xUoNHMyGN0G2itVcKLsk+7QKxZdguzyh6OZCqCHNB4Y=";
   };
 
   propagatedBuildInputs = [
     capstone
-    unicorn
-    pefile
-    python-registry
+    gevent
     keystone-engine
+    multiprocess
+    pefile
     pyelftools
-    gevent
+    python-registry
+    unicorn
   ];
 
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "pefile==2021.5.24" "pefile>=2021.5.24"
+  '';
+
   # Tests are broken (attempt to import a file that tells you not to import it,
   # amongst other things)
   doCheck = false;
diff --git a/pkgs/development/python-modules/qiskit-aer/default.nix b/pkgs/development/python-modules/qiskit-aer/default.nix
index a550ea4b3cf4f..b2e708d586f77 100644
--- a/pkgs/development/python-modules/qiskit-aer/default.nix
+++ b/pkgs/development/python-modules/qiskit-aer/default.nix
@@ -88,6 +88,7 @@ buildPythonPackage rec {
   ];
   # Slow tests
   disabledTests = [
+    "test_clifford" # fails on cvxpy >= 1.1.15. https://github.com/Qiskit/qiskit-aer/pull/1318. Remove in future.
     "test_snapshot" # TODO: these ~30 tests fail on setup due to pytest fixture issues?
     "test_initialize_2" # TODO: simulations appear incorrect, off by >10%.
 
@@ -111,7 +112,6 @@ buildPythonPackage rec {
     "_144"
     "test_sparse_output_probabilities"
     "test_reset_2_qubit"
-    # "test_clifford"
   ];
   checkInputs = [
     pytestCheckHook
diff --git a/pkgs/development/python-modules/rtoml/default.nix b/pkgs/development/python-modules/rtoml/default.nix
index e5043ca941a03..9ff43bce08432 100644
--- a/pkgs/development/python-modules/rtoml/default.nix
+++ b/pkgs/development/python-modules/rtoml/default.nix
@@ -5,6 +5,7 @@
 , setuptools-rust
 , rustPlatform
 , pytestCheckHook
+, libiconv
 }:
 
 buildPythonPackage rec {
@@ -32,6 +33,8 @@ buildPythonPackage rec {
     cargoSetupHook
   ];
 
+  buildInputs = [ libiconv ];
+
   pythonImportsCheck = [ "rtoml" ];
 
   checkInputs = [ pytestCheckHook ];
diff --git a/pkgs/development/python-modules/scs/default.nix b/pkgs/development/python-modules/scs/default.nix
index 128e9276608dd..24b7d36343a87 100644
--- a/pkgs/development/python-modules/scs/default.nix
+++ b/pkgs/development/python-modules/scs/default.nix
@@ -5,26 +5,22 @@
 , lapack
 , numpy
 , scipy
-, scs
   # check inputs
-, nose
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
-  inherit (scs) pname version;
+  pname = "scs";
+  version = "3.0.0";
 
   src = fetchFromGitHub {
     owner = "bodono";
     repo = "scs-python";
-    rev = "f02abdc0e2e0a5851464e30f6766ccdbb19d73f0"; # need to choose commit manually, untagged
-    sha256 = "174b5s7cwgrn1m55jlrszdl403zhpzc4yl9acs6kjv9slmg1mmjr";
+    rev = version;
+    sha256 = "sha256-7OgqCo21S0FDev8xv6/8iGFXg8naVi93zd8v1f9iaWw=";
+    fetchSubmodules = true;
   };
 
-  preConfigure = ''
-    rm -r scs
-    ln -s ${scs.src} scs
-  '';
-
   buildInputs = [
     lapack
     blas
@@ -35,10 +31,7 @@ buildPythonPackage rec {
     scipy
   ];
 
-  checkInputs = [ nose ];
-  checkPhase = ''
-    nosetests
-  '';
+  checkInputs = [ pytestCheckHook ];
   pythonImportsCheck = [ "scs" ];
 
   meta = with lib; {
@@ -50,7 +43,7 @@ buildPythonPackage rec {
     '';
     homepage = "https://github.com/cvxgrp/scs"; # upstream C package
     downloadPage = "https://github.com/bodono/scs-python";
-    license = licenses.gpl3;
+    license = licenses.mit;
     maintainers = with maintainers; [ drewrisinger ];
   };
 }
diff --git a/pkgs/development/python-modules/stanza/default.nix b/pkgs/development/python-modules/stanza/default.nix
new file mode 100644
index 0000000000000..ce9719a75210a
--- /dev/null
+++ b/pkgs/development/python-modules/stanza/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, emoji
+, numpy
+, protobuf
+, requests
+, six
+, pytorch
+, tqdm
+}:
+
+buildPythonPackage rec {
+  pname = "stanza";
+  version = "1.3.0";
+
+  src = fetchFromGitHub {
+    owner = "stanfordnlp";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1j5918n875p3ibhzc5zp3vb97asbbnb04pj1igxwzl0xm6qcsbh8";
+  };
+
+  disabled = pythonOlder "3.6";
+
+  propagatedBuildInputs = [
+    emoji
+    numpy
+    protobuf
+    requests
+    six
+    pytorch
+    tqdm
+  ];
+
+  # disabled, because the tests try to connect to the internet which
+  # is forbidden in the sandbox
+  doCheck = false;
+
+  pythonImportsCheck = [ "stanza" ];
+
+  meta = with lib; {
+    description = "Official Stanford NLP Python Library for Many Human Languages";
+    homepage = "https://github.com/stanfordnlp/stanza/";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ riotbib ];
+  };
+}
diff --git a/pkgs/development/python-modules/tailscale/default.nix b/pkgs/development/python-modules/tailscale/default.nix
new file mode 100644
index 0000000000000..a2e58322cea3e
--- /dev/null
+++ b/pkgs/development/python-modules/tailscale/default.nix
@@ -0,0 +1,61 @@
+{ lib
+, aiohttp
+, aresponses
+, buildPythonPackage
+, fetchFromGitHub
+, poetry-core
+, pydantic
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, yarl
+}:
+
+buildPythonPackage rec {
+  pname = "tailscale";
+  version = "0.1.2";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "frenck";
+    repo = "python-tailscale";
+    rev = "v${version}";
+    sha256 = "1jqx2i8rghfxlb1c76f37viz9fc1vq95xb2jm3bpnx5yy4n5dly1";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    aiohttp
+    pydantic
+    yarl
+  ];
+
+  checkInputs = [
+    aresponses
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    # Upstream doesn't set a version for the pyproject.toml
+    substituteInPlace pyproject.toml \
+      --replace "0.0.0" "${version}" \
+      --replace "--cov" ""
+  '';
+
+  pythonImportsCheck = [
+    "tailscale"
+  ];
+
+  meta = with lib; {
+    description = "Python client for the Tailscale API";
+    homepage = "https://github.com/frenck/python-wled";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/tensorflow/bin.nix b/pkgs/development/python-modules/tensorflow/bin.nix
index aae4406d0d791..c14a90e0953ef 100644
--- a/pkgs/development/python-modules/tensorflow/bin.nix
+++ b/pkgs/development/python-modules/tensorflow/bin.nix
@@ -20,8 +20,8 @@
 , tensorflow-estimator_2
 , tensorflow-tensorboard_2
 , cudaSupport ? false
-, cudatoolkit ? null
-, cudnn ? null
+, cudatoolkit
+, cudnn
 , zlib
 , python
 , keras-applications
@@ -37,21 +37,15 @@
 # - the source build doesn't work on Darwin.
 # - the source build is currently brittle and not easy to maintain
 
-assert cudaSupport -> cudatoolkit != null
-                   && cudnn != null;
-
 # unsupported combination
 assert ! (stdenv.isDarwin && cudaSupport);
 
 let
   packages = import ./binary-hashes.nix;
-
-  variant = if cudaSupport then "-gpu" else "";
-  pname = "tensorflow${variant}";
   metadataPatch = ./relax-dependencies-metadata.patch;
   patch = ./relax-dependencies.patch;
 in buildPythonPackage {
-  inherit pname;
+  pname = "tensorflow" + lib.optionalString cudaSupport "-gpu";
   inherit (packages) version;
   format = "wheel";
 
diff --git a/pkgs/development/python-modules/trytond/default.nix b/pkgs/development/python-modules/trytond/default.nix
index a9f1a58b12987..4ad2f9f959c50 100644
--- a/pkgs/development/python-modules/trytond/default.nix
+++ b/pkgs/development/python-modules/trytond/default.nix
@@ -12,6 +12,7 @@
 , werkzeug
 , wrapt
 , passlib
+, pillow
 , bcrypt
 , pydot
 , python-Levenshtein
@@ -23,12 +24,14 @@
 
 buildPythonApplication rec {
   pname = "trytond";
-  version = "6.0.8";
-  disabled = pythonOlder "3.5";
+  version = "6.2.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "686d498f9648875f48edc9fc2e97cd465ed4ea9270c4984b6f2db20a2eac4942";
+    sha256 = "sha256-U73dzLTUJnOw24/ELQzjnxJ0PvjV+zE/PNuQHXbEukw=";
   };
 
   # Tells the tests which database to use
@@ -37,6 +40,7 @@ buildPythonApplication rec {
   buildInputs = [
     mock
   ];
+
   propagatedBuildInputs = [
     lxml
     relatorio
@@ -46,6 +50,7 @@ buildPythonApplication rec {
     python-sql
     werkzeug
     wrapt
+    pillow
     passlib
 
     # extra dependencies
diff --git a/pkgs/development/python-modules/unicorn/default.nix b/pkgs/development/python-modules/unicorn/default.nix
index 484f422adf3e4..c9043afa85d9d 100644
--- a/pkgs/development/python-modules/unicorn/default.nix
+++ b/pkgs/development/python-modules/unicorn/default.nix
@@ -1,10 +1,17 @@
-{ lib, stdenv, buildPythonPackage, setuptools, unicorn-emu }:
+{ lib
+, stdenv
+, buildPythonPackage
+, setuptools
+, unicorn-emu
+}:
 
 buildPythonPackage rec {
   pname = "unicorn";
   version = lib.getVersion unicorn-emu;
+  format = "setuptools";
 
   src = unicorn-emu.src;
+
   sourceRoot = "source/bindings/python";
 
   prePatch = ''
@@ -12,12 +19,21 @@ buildPythonPackage rec {
     ln -s ${unicorn-emu}/lib/libunicorn.a prebuilt/
   '';
 
-  propagatedBuildInputs = [ setuptools ];
+  propagatedBuildInputs = [
+    setuptools
+  ];
+
+  # No tests present
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "unicorn"
+  ];
 
   meta = with lib; {
     description = "Python bindings for Unicorn CPU emulator engine";
     homepage = "https://www.unicorn-engine.org/";
-    license = [ licenses.gpl2 ];
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ bennofs ris ];
   };
 }
diff --git a/pkgs/development/python-modules/velbus-aio/default.nix b/pkgs/development/python-modules/velbus-aio/default.nix
index 506f775abd31f..db9721641cfd9 100644
--- a/pkgs/development/python-modules/velbus-aio/default.nix
+++ b/pkgs/development/python-modules/velbus-aio/default.nix
@@ -3,13 +3,15 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pythonOlder
+, pyserial
 , pyserial-asyncio
 , pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "velbus-aio";
-  version = "2021.11.6";
+  version = "2021.11.7";
+  format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
@@ -17,11 +19,12 @@ buildPythonPackage rec {
     owner = "Cereal2nd";
     repo = pname;
     rev = version;
-    sha256 = "sha256-Vm/CgrSSCU76CzAxCtpMsE8/GtPE9SlfqDyzYp4Gc8E=";
+    sha256 = "sha256-itaYSfZm+/vF/tKRO2BW4qXrDXP0YfBrKiq9bMGFj0M=";
   };
 
   propagatedBuildInputs = [
     backoff
+    pyserial
     pyserial-asyncio
   ];
 
diff --git a/pkgs/development/python-modules/weasyprint/default.nix b/pkgs/development/python-modules/weasyprint/default.nix
index ecc13b1d63776..f43fd2d5462b6 100644
--- a/pkgs/development/python-modules/weasyprint/default.nix
+++ b/pkgs/development/python-modules/weasyprint/default.nix
@@ -1,57 +1,72 @@
-{ buildPythonPackage,
-  fetchPypi,
-  fetchpatch,
-  cairosvg,
-  pyphen,
-  cffi,
-  cssselect,
-  lxml,
-  html5lib,
-  tinycss,
-  glib,
-  pango,
-  fontconfig,
-  lib, stdenv,
-  pytest,
-  pytest-runner,
-  pytest-isort,
-  pytest-flake8,
-  pytest-cov,
-  isPy3k,
-  substituteAll
+{ buildPythonPackage
+, fetchPypi
+, fetchpatch
+, pytestCheckHook
+, brotli
+, cairosvg
+, fonttools
+, pydyf
+, pyphen
+, cffi
+, cssselect
+, lxml
+, html5lib
+, tinycss
+, zopfli
+, glib
+, harfbuzz
+, pango
+, fontconfig
+, lib
+, stdenv
+, ghostscript
+, isPy3k
+, substituteAll
 }:
 
 buildPythonPackage rec {
   pname = "weasyprint";
-  version = "52";
+  version = "53.4";
   disabled = !isPy3k;
 
-  # excluded test needs the Ahem font
-  checkPhase = ''
-    runHook preCheck
-    pytest -k 'not test_font_stretch'
-    runHook postCheck
-  '';
+  src = fetchPypi {
+    inherit version;
+    pname = "weasyprint";
+    sha256 = "sha256-EMyxfVXHMJa98e3T7+WMuFWwfkwwfZutTryaPxP/RYA=";
+  };
 
-  # ignore failing flake8-test
-  prePatch = ''
-    substituteInPlace setup.cfg \
-        --replace '[tool:pytest]' '[tool:pytest]\nflake8-ignore = E501'
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace "--isort --flake8 --cov --no-cov-on-fail" ""
   '';
 
-  checkInputs = [ pytest pytest-runner pytest-isort pytest-flake8 pytest-cov ];
+  disabledTests = [
+    # needs the Ahem font (fails on macOS)
+    "test_font_stretch"
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    ghostscript
+  ];
 
   FONTCONFIG_FILE = "${fontconfig.out}/etc/fonts/fonts.conf";
 
-  propagatedBuildInputs = [ cairosvg pyphen cffi cssselect lxml html5lib tinycss ];
+  propagatedBuildInputs = [
+    brotli
+    cairosvg
+    cffi
+    cssselect
+    fonttools
+    html5lib
+    lxml
+    pydyf
+    pyphen
+    tinycss
+    zopfli
+  ];
 
-  # 47043a1fd7e50a892b9836466f521df85d597c4.patch can be removed after next release of weasyprint, see:
-  # https://github.com/Kozea/WeasyPrint/issues/1333#issuecomment-818062970
   patches = [
-    (fetchpatch {
-      url = "https://github.com/Kozea/WeasyPrint/commit/47043a1fd7e50a892b9836466f521df85d597c44.patch";
-      sha256 = "0l9z0hrav3bcdajlg3vbzljq0lkw7hlj8ppzrq3v21hbj1il1nsb";
-    })
     (substituteAll {
       src = ./library-paths.patch;
       fontconfig = "${fontconfig.lib}/lib/libfontconfig${stdenv.hostPlatform.extensions.sharedLibrary}";
@@ -59,15 +74,10 @@ buildPythonPackage rec {
       gobject = "${glib.out}/lib/libgobject-2.0${stdenv.hostPlatform.extensions.sharedLibrary}";
       pango = "${pango.out}/lib/libpango-1.0${stdenv.hostPlatform.extensions.sharedLibrary}";
       pangocairo = "${pango.out}/lib/libpangocairo-1.0${stdenv.hostPlatform.extensions.sharedLibrary}";
+      harfbuzz = "${harfbuzz.out}/lib/libharfbuzz${stdenv.hostPlatform.extensions.sharedLibrary}";
     })
   ];
 
-  src = fetchPypi {
-    inherit version;
-    pname = "WeasyPrint";
-    sha256 = "0rwf43111ws74m8b1alkkxzz57g0np3vmd8as74adwnxslfcg4gs";
-  };
-
   meta = with lib; {
     homepage = "https://weasyprint.org/";
     description = "Converts web documents to PDF";
diff --git a/pkgs/development/python-modules/weasyprint/library-paths.patch b/pkgs/development/python-modules/weasyprint/library-paths.patch
index c6eb87c94585d..9a10990fd43f0 100644
--- a/pkgs/development/python-modules/weasyprint/library-paths.patch
+++ b/pkgs/development/python-modules/weasyprint/library-paths.patch
@@ -1,38 +1,31 @@
-diff --git a/weasyprint/fonts.py b/weasyprint/fonts.py
-index 79e3b5b..4438eb4 100644
---- a/weasyprint/fonts.py
-+++ b/weasyprint/fonts.py
-@@ -45,11 +45,8 @@ else:
-     # with OSError: dlopen() failed to load a library: cairo / cairo-2
-     # So let's hope we find the same file as cairo already did ;)
-     # Same applies to pangocairo requiring pangoft2
--    fontconfig = dlopen(ffi, 'fontconfig', 'libfontconfig',
--                        'libfontconfig-1.dll',
--                        'libfontconfig.so.1', 'libfontconfig-1.dylib')
--    pangoft2 = dlopen(ffi, 'pangoft2-1.0', 'libpangoft2-1.0-0',
--                      'libpangoft2-1.0.so.0', 'libpangoft2-1.0.dylib')
-+    fontconfig = dlopen(ffi, '@fontconfig@')
-+    pangoft2 = dlopen(ffi, '@pangoft2@')
- 
-     ffi.cdef('''
-         // FontConfig
-diff --git a/weasyprint/text.py b/weasyprint/text.py
-index 1dc5e4d..b070bad 100644
---- a/weasyprint/text.py
-+++ b/weasyprint/text.py
-@@ -255,12 +255,9 @@ def dlopen(ffi, *names):
+diff --git a/weasyprint/text/ffi.py b/weasyprint/text/ffi.py
+index 0734cbea..22e31a5e 100644
+--- a/weasyprint/text/ffi.py
++++ b/weasyprint/text/ffi.py
+@@ -387,21 +387,11 @@ def _dlopen(ffi, *names):
      return ffi.dlopen(names[0])  # pragma: no cover
  
  
--gobject = dlopen(ffi, 'gobject-2.0', 'libgobject-2.0-0', 'libgobject-2.0.so.0',
--                 'libgobject-2.0.dylib')
--pango = dlopen(ffi, 'pango-1.0', 'libpango-1.0-0', 'libpango-1.0.so.0',
--               'libpango-1.0.dylib')
--pangocairo = dlopen(ffi, 'pangocairo-1.0', 'libpangocairo-1.0-0',
--                    'libpangocairo-1.0.so.0', 'libpangocairo-1.0.dylib')
-+gobject = dlopen(ffi, '@gobject@')
-+pango = dlopen(ffi, '@pango@')
-+pangocairo = dlopen(ffi, '@pangocairo@')
+-gobject = _dlopen(
+-    ffi, 'gobject-2.0-0', 'gobject-2.0', 'libgobject-2.0-0',
+-    'libgobject-2.0.so.0', 'libgobject-2.0.dylib')
+-pango = _dlopen(
+-    ffi, 'pango-1.0-0', 'pango-1.0', 'libpango-1.0-0', 'libpango-1.0.so.0',
+-    'libpango-1.0.dylib')
+-harfbuzz = _dlopen(
+-    ffi, 'harfbuzz', 'harfbuzz-0.0', 'libharfbuzz-0',
+-    'libharfbuzz.so.0', 'libharfbuzz.so.0', 'libharfbuzz.0.dylib')
+-fontconfig = _dlopen(
+-    ffi, 'fontconfig-1', 'fontconfig', 'libfontconfig', 'libfontconfig-1.dll',
+-    'libfontconfig.so.1', 'libfontconfig-1.dylib')
+-pangoft2 = _dlopen(
+-    ffi, 'pangoft2-1.0-0', 'pangoft2-1.0', 'libpangoft2-1.0-0',
+-    'libpangoft2-1.0.so.0', 'libpangoft2-1.0.dylib')
++gobject = _dlopen(ffi, '@gobject@')
++pango = _dlopen(ffi, '@pango@')
++harfbuzz = _dlopen(ffi, '@harfbuzz@')
++fontconfig = _dlopen(ffi, '@fontconfig@')
++pangoft2 = _dlopen(ffi, '@pangoft2@')
  
  gobject.g_type_init()
- 
+
diff --git a/pkgs/development/python-modules/xknx/default.nix b/pkgs/development/python-modules/xknx/default.nix
index f28a5c6a72a6e..d7cf63f003d06 100644
--- a/pkgs/development/python-modules/xknx/default.nix
+++ b/pkgs/development/python-modules/xknx/default.nix
@@ -11,14 +11,16 @@
 
 buildPythonPackage rec {
   pname = "xknx";
-  version = "0.18.12";
-  disabled = pythonOlder "3.7";
+  version = "0.18.13";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "XKNX";
     repo = pname;
     rev = version;
-    sha256 = "sha256-Wk6+IRIGMaOPOEVEyzalBKyK88Y2yfKKo6T0fKxeOOE=";
+    sha256 = "sha256-GZ5FRPQn69+/Fnx10VKWSIAaVXCcVyfvQVH1JaMGRC0=";
   };
 
   propagatedBuildInputs = [
@@ -32,7 +34,9 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [ "xknx" ];
+  pythonImportsCheck = [
+    "xknx"
+  ];
 
   meta = with lib; {
     description = "KNX Library Written in Python";
diff --git a/pkgs/development/tools/analysis/checkov/default.nix b/pkgs/development/tools/analysis/checkov/default.nix
index 0bf46ed1b13ef..3b70bd0ce6e95 100644
--- a/pkgs/development/tools/analysis/checkov/default.nix
+++ b/pkgs/development/tools/analysis/checkov/default.nix
@@ -56,13 +56,13 @@ with py.pkgs;
 
 buildPythonApplication rec {
   pname = "checkov";
-  version = "2.0.574";
+  version = "2.0.582";
 
   src = fetchFromGitHub {
     owner = "bridgecrewio";
     repo = pname;
     rev = version;
-    sha256 = "sha256-DM7fPwJcWEyOu55ThK/jP9jIUbiVCfEtltSP7puCoxQ=";
+    sha256 = "sha256-25RT70HyOyfdg2jWLKMnEVgvNdlZuJ0e6eajlU486IQ=";
   };
 
   nativeBuildInputs = with py.pkgs; [
diff --git a/pkgs/development/tools/diesel-cli/default.nix b/pkgs/development/tools/diesel-cli/default.nix
index 211993d2d7e63..b964262f56c3f 100644
--- a/pkgs/development/tools/diesel-cli/default.nix
+++ b/pkgs/development/tools/diesel-cli/default.nix
@@ -21,9 +21,6 @@ assert lib.assertMsg (sqliteSupport == true || postgresqlSupport == true || mysq
 
 let
   inherit (lib) optional optionals optionalString;
-  features = optional sqliteSupport "sqlite"
-    ++ optional postgresqlSupport "postgres"
-    ++ optional mysqlSupport "mysql";
 in
 
 rustPlatform.buildRustPackage rec {
@@ -36,7 +33,6 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-mRdDc4fHMkwkszY+2l8z1RSNMEQnrWI5/Y0Y2W+guQE=";
   };
 
-  cargoBuildFlags = [ "--no-default-features" "--features" "${lib.concatStringsSep "," features}" ];
   cargoSha256 = "sha256-sQ762Ss31sA5qALHzwkvwbfRXo00cCtqzQyoz3/zf6I=";
 
   nativeBuildInputs = [ installShellFiles pkg-config ];
@@ -48,6 +44,11 @@ rustPlatform.buildRustPackage rec {
     ++ optional postgresqlSupport postgresql
     ++ optionals mysqlSupport [ mariadb zlib ];
 
+  buildNoDefaultFeatures = true;
+  buildFeatures = optional sqliteSupport "sqlite"
+    ++ optional postgresqlSupport "postgres"
+    ++ optional mysqlSupport "mysql";
+
   checkPhase = ''
     runHook preCheck
   '' + optionalString sqliteSupport ''
diff --git a/pkgs/development/tools/earthly/default.nix b/pkgs/development/tools/earthly/default.nix
index b44ef14c6cabe..1cd5d9caf2829 100644
--- a/pkgs/development/tools/earthly/default.nix
+++ b/pkgs/development/tools/earthly/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "earthly";
-  version = "0.5.22";
+  version = "0.5.24";
 
   src = fetchFromGitHub {
     owner = "earthly";
     repo = "earthly";
     rev = "v${version}";
-    sha256 = "sha256-mwyL0o+f7hPvVhWBE7k5a56kzDpeM4rw8h5oLkgsqgc=";
+    sha256 = "sha256-d4TCuFj7nbQDxTLCStrGj698iUYTH0mCqoCZeeOGNIE=";
   };
 
-  vendorSha256 = "sha256-pITTp9BqGfUFSF15pl5AM0npJuylJ+FcGw4xGaOi0/o=";
+  vendorSha256 = "sha256-3o+jizVVHcPZ6nNT2nCF8fLDynnFccI2Y50kbXp2qAI=";
 
   ldflags = [
     "-s" "-w"
@@ -24,6 +24,9 @@ buildGoModule rec {
     makeFlagsArray+=(BUILD_TAGS="${BUILDTAGS}")
   '';
 
+  # For some reasons the tests fail, but the program itself seems to work.
+  doCheck = false;
+
   postInstall = ''
     mv $out/bin/debugger $out/bin/earthly-debugger
     mv $out/bin/shellrepeater $out/bin/earthly-shellrepeater
diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix
index ff61c109b671f..d3a62bf331bc0 100644
--- a/pkgs/development/tools/electron/default.nix
+++ b/pkgs/development/tools/electron/default.nix
@@ -22,7 +22,7 @@ let
 in
 rec {
 
-  electron = electron_15;
+  electron = electron_16;
 
   electron_3 = mkElectron "3.1.13" {
     x86_64-linux = "1psmbplz6jhnnf6hmfhxbmmhn4n1dpnhzbc12pxn645xhfpk9ark";
@@ -105,24 +105,24 @@ rec {
     headers = "1zkdgpjrh1dc9j8qyrrrh49v24960yhvwi2c530qbpf2azgqj71b";
   };
 
-  electron_12 = mkElectron "12.2.2" {
-    armv7l-linux = "aeee4acf40afa0397c10a4c76bc61ed2967433bab5c6f11de181fa33d0b168ff";
-    aarch64-linux = "593a3fef97a7fed8e93b64d659af9c736dff445eedcbfd037f7d226a88d58862";
-    x86_64-linux = "a8e88c67f375e41f3a6f8b8a8c3a1e41b8c0a46f1b731e05de21208caa005fb2";
-    i686-linux = "5f0bdc9581237f2f87b5d34e232d711617bd8bf5ff5d7ebd66480779c13fba0a";
-    x86_64-darwin = "8a33d2bed668e30a6d64856e01d2aa3b1f1d9efe4eb0e808e916694d32d5e8f2";
-    aarch64-darwin = "256daa25a8375c565b32c3c2f0e12fbac8d5039a13a9edbb3673a863149b750a";
-    headers = "1fvqkw08pync38ixi5cq4f8a108k2ajxpm1w2f8sn2hjph9kpbsd";
+  electron_12 = mkElectron "12.2.3" {
+    armv7l-linux = "4de83c34987ac7b3b2d0c8c84f27f9a34d9ea2764ae1e54fb609a95064e7e71a";
+    aarch64-linux = "d29d234c09ba810d89ed1fba9e405b6975916ea208d001348379f89b50d1835c";
+    x86_64-linux = "deae6d0941762147716b8298476080d961df2a32d0f6f57b244cbe3a2553cd24";
+    i686-linux = "11b4f159cd3b89d916cc05b5231c2cde53f0c6fb5be8e881824fde00daa5e8c2";
+    x86_64-darwin = "5af34f1198ce9fd17e9fa581f57a8ad2c9333187fb617fe943f30b8cde9e6231";
+    aarch64-darwin = "0db2c021a047a4cd5b28eea16490e16bc82592e3f8a4b96fbdc72a292ce13f50";
+    headers = "1idam1xirxqxqg4g7n33kdx2skk0r351m00g59a8yx9z82g06ah9";
   };
 
-  electron_13 = mkElectron "13.6.1" {
-    armv7l-linux = "c8bba8da0baf5cde3eb4823c801c228abfa7943c69131b3701c74e2b342e1813";
-    aarch64-linux = "09a1ff29c33a23f19cc702e0147dee03cfe2acedcff6bfb63c7911184b871a1a";
-    x86_64-linux = "bfc09dd2d591ad614c8d598dad6e13b76c3baf4f48773e7819c493b524a0bb1a";
-    i686-linux = "1ea7c7d19759fa0ee0ddef68c09bcc1c57265436d3f5dab37dad3567f117f317";
-    x86_64-darwin = "ce45f17f875d72e791999eaf30a1af39b6e9143e57a653e7f06cfa0bee9b985d";
-    aarch64-darwin = "e2f82720acae3a03d7d4b3e7dcc7697b84d5bb69a63d087a7420ace2412e7a28";
-    headers = "1bd87c74863w0sjs8gfxl62kjjscc56dmmw85vhwz01s4niksr02";
+  electron_13 = mkElectron "13.6.2" {
+    armv7l-linux = "aeb037e24cbcc532b09a604c3421dd1e330afbc3c34b3fb692fcdafbe2d63097";
+    aarch64-linux = "c6014ac6842d81a612e907ce3655edde495f647784ba2bafebd2ada52c065702";
+    x86_64-linux = "529fb7ceb2646324e527a0d9472bbb608e89756a310a8fe1cd929e3a218b45ec";
+    i686-linux = "eeaec723f16adae8b6ba9375745cc143a038905cfa0a9e9ef59ea9026fe1a11b";
+    x86_64-darwin = "86f7f7270ebd36e4957f56c1ef38eecd7d1725f032810c7fef3476955914d6ff";
+    aarch64-darwin = "cc0a19b6ae73f953ce3a3f8d587da8220cd00a284aa705250e81be324b9271dd";
+    headers = "0a5nnj3bd8ly9shx7palaiy0q7n70x8zp1myshcg5pz1qqjjmlw9";
   };
 
   electron_14 = mkElectron "14.2.1" {
@@ -135,13 +135,23 @@ rec {
     headers = "14yaw3kml2kmi7sns8z32kv4cd8anyj5nd7rfxcg74hj2pbl9dvp";
   };
 
-  electron_15 = mkElectron "15.3.1" {
-    armv7l-linux = "b3e73ad174f692da36a4e1d2cd6b849080ee891027e37126868c88e6b89d82ac";
-    aarch64-linux = "35ebfeeedcb71bd256c24550c75b9515fdda2db7a2ee1deb1097040480a26198";
-    x86_64-linux = "941330103b9ab66a0195dd86e1503b5d2087f93a0b1e8453d8270d47cfe2bfc2";
-    i686-linux = "1eeef6b189b4305845a0832b98efcba773c329e351181debe003562a7885afff";
-    x86_64-darwin = "a91b089b5dc5b1279966511344b805ec84869b6cd60af44f800b363bba25b915";
-    aarch64-darwin = "89fafef20426c0a3a2326172d222d29fc5d24d64c8910b7abddf61bd2c6a6700";
-    headers = "0f665x7yp0xz1p1cl8c3vcw3k7g53c13rkbz8cz3phl6v3n1s1w0";
+  electron_15 = mkElectron "15.3.2" {
+    armv7l-linux = "40d2f83a3cd29350edfff442ec1d9a5a681358ad9a7a086adf0ed8d0afa4145e";
+    aarch64-linux = "c4c37b852a5576420d43c0a7d3b62be343fc0340134e9f0a7791c3c9285fe249";
+    x86_64-linux = "10b85813d5280f97125437c65a002aa783f204247d501fb58786ac2a7144bb7d";
+    i686-linux = "4a138dbf3d7e34915de73e0224c434666b0c9c5f335ed22e72014b20147378e6";
+    x86_64-darwin = "0bd7e44d41bcdd048a2ac5dc4e1eb6807e80165ce5c06f1a220b20f10579be75";
+    aarch64-darwin = "9eae07658b7d9a5eb318233a66c3933dba31661cf78b7b156d3d20ab7134f4c3";
+    headers = "0r1qxgkpcn03fd28zbz86ilhsqg0gzp9clbghr5w6gy5ak8y68hz";
+  };
+
+  electron_16 = mkElectron "16.0.0" {
+    armv7l-linux = "a3bec9664a17d3f8adc072f88d105601b5d25a42e339c73c26c3b59a0ab0f44a";
+    aarch64-linux = "f4dc4ba8ce14f2e64943838c85654766522c46bb8e02914d3fdf1894b6e5b2fa";
+    x86_64-linux = "a5c5c0547c989207ab63e0b06b46a04b545e4cc74e6fc8f94d7beda0c0bcb0b2";
+    i686-linux = "e93e5eaaf33e4c30d2ba613b67858ada311a6e28b5fd42893499b50ef97b3695";
+    x86_64-darwin = "f95847ea721cbf8632a72bec504137554aa262d111aaa5e2e30a74df66ff6c97";
+    aarch64-darwin = "0c71b070cf6bcfa7dc4dad65ee14af926d5dda73e4a2f96e68cff844df8aba1d";
+    headers = "1gr43w8pw9b7xl1bmpap8v1wp4ixmc2qkww02kbzfw53h6m4ccn3";
   };
 }
diff --git a/pkgs/development/tools/haskell/hyper-haskell/default.nix b/pkgs/development/tools/haskell/hyper-haskell/default.nix
index 331f78f7a1e2c..2b3fb76903e50 100644
--- a/pkgs/development/tools/haskell/hyper-haskell/default.nix
+++ b/pkgs/development/tools/haskell/hyper-haskell/default.nix
@@ -49,8 +49,5 @@ in stdenvNoCC.mkDerivation rec {
     homepage = "https://github.com/HeinrichApfelmus/hyper-haskell";
     license = licenses.bsd3;
     maintainers = [ maintainers.rvl ];
-    # depends on electron-10.4.7 which is marked as insecure:
-    # https://github.com/NixOS/nixpkgs/pull/142641#issuecomment-957358476
-    broken = true;
   };
 }
diff --git a/pkgs/development/tools/knightos/regenkfs/default.nix b/pkgs/development/tools/knightos/regenkfs/default.nix
index 8b80368cdaa8d..c50b10527f52f 100644
--- a/pkgs/development/tools/knightos/regenkfs/default.nix
+++ b/pkgs/development/tools/knightos/regenkfs/default.nix
@@ -12,7 +12,8 @@ rustPlatform.buildRustPackage {
   };
 
   cargoSha256 = "sha256-05VmQdop4vdzw2XEvVdp9+RNmyZvay1Q7gKN2n8rDEQ=";
-  cargoBuildFlags = [ "--features=c-undef" ];
+
+  buildFeatures = [ "c-undef" ];
 
   meta = with lib; {
     description = "Reimplementation of genkfs in Rust";
diff --git a/pkgs/development/tools/misc/sccache/default.nix b/pkgs/development/tools/misc/sccache/default.nix
index cbdee69ce2ce5..d2833ce9da62a 100644
--- a/pkgs/development/tools/misc/sccache/default.nix
+++ b/pkgs/development/tools/misc/sccache/default.nix
@@ -13,11 +13,11 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "1f42cqaqnjwi9k4ihqil6z2dqh5dnf76x54gk7mndzkrfg3rl573";
 
-  cargoBuildFlags = lib.optionals (!stdenv.isDarwin) [ "--features=dist-client,dist-server" ];
-
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ openssl ] ++ lib.optional stdenv.isDarwin Security;
 
+  buildFeatures = lib.optionals (!stdenv.isDarwin) [ "dist-client" "dist-server" ];
+
   # Tests fail because of client server setup which is not possible inside the pure environment,
   # see https://github.com/mozilla/sccache/issues/460
   doCheck = false;
diff --git a/pkgs/development/tools/misc/tokei/default.nix b/pkgs/development/tools/misc/tokei/default.nix
index e87f070675616..a93eee5cb1d19 100644
--- a/pkgs/development/tools/misc/tokei/default.nix
+++ b/pkgs/development/tools/misc/tokei/default.nix
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
   ];
 
   # enable all output formats
-  cargoBuildFlags = [ "--features" "all" ];
+  buildFeatures = [ "all" ];
 
   meta = with lib; {
     description = "A program that allows you to count your code, quickly";
diff --git a/pkgs/development/tools/ocaml/dune-release/default.nix b/pkgs/development/tools/ocaml/dune-release/default.nix
index a5d97b65b2f32..32ff517178cb8 100644
--- a/pkgs/development/tools/ocaml/dune-release/default.nix
+++ b/pkgs/development/tools/ocaml/dune-release/default.nix
@@ -1,8 +1,8 @@
-{ lib, buildDunePackage, fetchurl, makeWrapper
-, curly, fmt, bos, cmdliner, re, rresult, logs
+{ lib, buildDunePackage, fetchurl, makeWrapper, fetchpatch
+, curly, fmt, bos, cmdliner, re, rresult, logs, fpath
 , odoc, opam-format, opam-core, opam-state, yojson, astring
 , opam, git, findlib, mercurial, bzip2, gnutar, coreutils
-, alcotest, mdx
+, alcotest
 }:
 
 # don't include dune as runtime dep, so user can
@@ -10,33 +10,36 @@
 let runtimeInputs = [ opam findlib git mercurial bzip2 gnutar coreutils ];
 in buildDunePackage rec {
   pname = "dune-release";
-  version = "1.5.0";
+  version = "1.5.2";
 
   minimumOCamlVersion = "4.06";
 
   src = fetchurl {
     url = "https://github.com/ocamllabs/${pname}/releases/download/${version}/${pname}-${version}.tbz";
-    sha256 = "1lyfaczskdbqnhmpiy6wga9437frds3m8prfk2rhwyb96h69y3pv";
+    sha256 = "1r6bz1zz1al5y762ws3w98d8bnyi5ipffajgczixacmbrxvp3zgx";
   };
 
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ curly fmt cmdliner re opam-format opam-state opam-core
-                  rresult logs odoc bos yojson astring ];
-  checkInputs = [ alcotest mdx ] ++ runtimeInputs;
+                  rresult logs odoc bos yojson astring fpath ];
+  checkInputs = [ alcotest ] ++ runtimeInputs;
   doCheck = true;
 
   useDune2 = true;
 
+  patches = [
+    # add missing git config calls to avoid failing due to the lack of a global git config
+    (fetchpatch {
+      name = "tests-missing-git-config.patch";
+      url = "https://github.com/ocamllabs/dune-release/commit/87e7ffe2a9c574620d4e2fc0d79eed8772eab973.patch";
+      sha256 = "0wrzcpzr54dwrdjdc75mijh78xk4bmsmqs1pci06fb2nf03vbd2k";
+    })
+  ];
+
   postPatch = ''
     # remove check for curl in PATH, since curly is patched
     # to have a fixed path to the binary in nix store
     sed -i '/must_exist (Cmd\.v "curl"/d' lib/github.ml
-
-    # ignore weird yes error message
-    sed -i 's/yes |/yes 2>\/dev\/null |/' \
-      tests/bin/no_doc/run.t \
-      tests/bin/draft/run.t \
-      tests/bin/url-file/run.t
   '';
 
   preCheck = ''
diff --git a/pkgs/development/tools/rust/cargo-crev/default.nix b/pkgs/development/tools/rust/cargo-crev/default.nix
index 9803cd531e7e8..d7287f59e65fe 100644
--- a/pkgs/development/tools/rust/cargo-crev/default.nix
+++ b/pkgs/development/tools/rust/cargo-crev/default.nix
@@ -13,16 +13,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-crev";
-  version = "0.20.1";
+  version = "0.21.3";
 
   src = fetchFromGitHub {
     owner = "crev-dev";
     repo = "cargo-crev";
-    rev = version;
-    sha256 = "sha256-j2dafXUI6rDEYboSAciMeNma/YaBYKuQZgMUGVU+oBQ=";
+    rev = "v${version}";
+    sha256 = "sha256-CwECZz+qS5+rgwudRutcKZsYxfMLcVbA/9SZASmF+k4=";
   };
 
-  cargoSha256 = "sha256-khrpS6QFpweKbTbR0YhAJTTrgDoZl9fzYPDs+JE1mtA=";
+  cargoSha256 = "sha256-7c6Hu6UacQuRsCHlGKr1TtN+XHVGr1sw+HEGWeT9SJA=";
 
   preCheck = ''
     export HOME=$(mktemp -d)
diff --git a/pkgs/development/tools/rust/cargo-deny/default.nix b/pkgs/development/tools/rust/cargo-deny/default.nix
index 7fe476c842c58..39567600f7e9c 100644
--- a/pkgs/development/tools/rust/cargo-deny/default.nix
+++ b/pkgs/development/tools/rust/cargo-deny/default.nix
@@ -28,9 +28,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ]
     ++ lib.optionals stdenv.isDarwin [ curl Security ];
 
-  cargoBuildFlags = [ "--no-default-features" ];
-
-  cargoTestFlags = cargoBuildFlags;
+  buildNoDefaultFeatures = true;
 
   meta = with lib; {
     description = "Cargo plugin to generate list of all licenses for a crate";
diff --git a/pkgs/development/tools/rust/cargo-depgraph/default.nix b/pkgs/development/tools/rust/cargo-depgraph/default.nix
new file mode 100644
index 0000000000000..ab45d053477c8
--- /dev/null
+++ b/pkgs/development/tools/rust/cargo-depgraph/default.nix
@@ -0,0 +1,23 @@
+{ lib, rustPlatform, fetchFromSourcehut }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-depgraph";
+  version = "1.2.2";
+
+  src = fetchFromSourcehut {
+    owner = "~jplatte";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-Zt60F43hhFSj9zfAkEbgRqODvBRmzn04dHMijbz+uX0=";
+  };
+
+  cargoSha256 = "sha256-mMXIiAfYBqOS3z4735T9dB9TEo7Ph2JCNq0QfyetxJg=";
+
+  meta = with lib; {
+    description = "Create dependency graphs for cargo projects using `cargo metadata` and graphviz";
+    homepage = "https://sr.ht/~jplatte/cargo-depgraph";
+    changelog = "https://git.sr.ht/~jplatte/cargo-depgraph/tree/v${version}/item/CHANGELOG.md";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/pkgs/development/tools/rust/cargo-embed/default.nix b/pkgs/development/tools/rust/cargo-embed/default.nix
index 2af012956c1ab..80a8195d77eb0 100644
--- a/pkgs/development/tools/rust/cargo-embed/default.nix
+++ b/pkgs/development/tools/rust/cargo-embed/default.nix
@@ -25,7 +25,7 @@ rustPlatform.buildRustPackage rec {
   nativeBuildInputs = [ pkg-config rustfmt ];
   buildInputs = [ libusb1 libftdi1 ] ++ lib.optionals stdenv.isDarwin [ AppKit ];
 
-  cargoBuildFlags = [ "--features=ftdi" ];
+  buildFeatures = [ "ftdi" ];
 
   meta = with lib; {
     description = "A cargo extension for working with microcontrollers";
diff --git a/pkgs/development/tools/rust/devserver/default.nix b/pkgs/development/tools/rust/devserver/default.nix
index 9e4545e5e87e9..305a01b69991d 100644
--- a/pkgs/development/tools/rust/devserver/default.nix
+++ b/pkgs/development/tools/rust/devserver/default.nix
@@ -1,8 +1,10 @@
 { lib
+, stdenv
 , fetchCrate
 , rustPlatform
 , openssl
 , pkg-config
+, CoreServices
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -16,7 +18,7 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs = [ openssl ];
+  buildInputs = [ openssl ] ++ lib.optional stdenv.isDarwin CoreServices;
 
   cargoSha256 = "sha256-XlrQ6CvjeWnzvfaeNbe8FtMXMVSQNLxDVIEjyHm57Js=";
 
diff --git a/pkgs/development/tools/rust/rust-analyzer/default.nix b/pkgs/development/tools/rust/rust-analyzer/default.nix
index 91eea15867e93..7e69f18e124f1 100644
--- a/pkgs/development/tools/rust/rust-analyzer/default.nix
+++ b/pkgs/development/tools/rust/rust-analyzer/default.nix
@@ -56,9 +56,6 @@ rustPlatform.buildRustPackage rec {
 
   buildAndTestSubdir = "crates/rust-analyzer";
 
-  cargoBuildFlags = lib.optional useMimalloc "--features=mimalloc";
-  cargoTestFlags = lib.optional useMimalloc "--features=mimalloc";
-
   nativeBuildInputs = lib.optional useMimalloc cmake;
 
   buildInputs = lib.optionals stdenv.isDarwin [
@@ -66,6 +63,8 @@ rustPlatform.buildRustPackage rec {
     libiconv
   ];
 
+  buildFeatures = lib.optional useMimalloc "mimalloc";
+
   RUST_ANALYZER_REV = version;
 
   inherit doCheck;
diff --git a/pkgs/development/tools/rust/rustup/default.nix b/pkgs/development/tools/rust/rustup/default.nix
index f5e3b9ac4c2f3..3d137f58414e9 100644
--- a/pkgs/development/tools/rust/rustup/default.nix
+++ b/pkgs/development/tools/rust/rustup/default.nix
@@ -40,7 +40,9 @@ rustPlatform.buildRustPackage rec {
     zlib
   ] ++ lib.optionals stdenv.isDarwin [ CoreServices Security libiconv xz ];
 
-  cargoBuildFlags = [ "--features no-self-update" ];
+  buildFeatures = [ "no-self-update" ];
+
+  checkFeatures = [ ];
 
   patches = lib.optionals stdenv.isLinux [
     (runCommand "0001-dynamically-patchelf-binaries.patch" { CC = stdenv.cc; patchelf = patchelf; libPath = "$ORIGIN/../lib:${libPath}"; } ''
diff --git a/pkgs/development/tools/selene/default.nix b/pkgs/development/tools/selene/default.nix
index 2f6e731ea332d..dd936781d9d94 100644
--- a/pkgs/development/tools/selene/default.nix
+++ b/pkgs/development/tools/selene/default.nix
@@ -26,9 +26,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = lib.optional robloxSupport openssl
     ++ lib.optional (robloxSupport && stdenv.isDarwin) Security;
 
-  cargoBuildFlags = lib.optional (!robloxSupport) "--no-default-features";
-
-  cargoTestFlags = cargoBuildFlags;
+  buildNoDefaultFeatures = !robloxSupport;
 
   meta = with lib; {
     description = "A blazing-fast modern Lua linter written in Rust";
diff --git a/pkgs/development/tools/stylua/default.nix b/pkgs/development/tools/stylua/default.nix
index d0b7bbdca9db1..8d0625d7bea1d 100644
--- a/pkgs/development/tools/stylua/default.nix
+++ b/pkgs/development/tools/stylua/default.nix
@@ -19,8 +19,8 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "sha256-/4ZW1FIfK51ak2EIV6dYY3XpucPPR+OZySPWwcKP4v0=";
 
-  cargoBuildFlags = lib.optionals lua52Support [ "--features" "lua52" ]
-    ++ lib.optionals luauSupport [ "--features" "luau" ];
+  buildFeatures = lib.optional lua52Support "lua52"
+    ++ lib.optional luauSupport "luau";
 
   # test_standard fails on darwin
   doCheck = !stdenvNoCC.isDarwin;
diff --git a/pkgs/development/web/remarkjs/nodepkgs.nix b/pkgs/development/web/remarkjs/nodepkgs.nix
index baacee29ff201..6bb4ea8fbd67c 100644
--- a/pkgs/development/web/remarkjs/nodepkgs.nix
+++ b/pkgs/development/web/remarkjs/nodepkgs.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/games/beret/default.nix b/pkgs/games/beret/default.nix
deleted file mode 100644
index 5d1bf0dd47c89..0000000000000
--- a/pkgs/games/beret/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ lib, stdenv, fetchurl, SDL, SDL_image, SDL_ttf, SDL_mixer }:
-
-stdenv.mkDerivation {
-  pname = "beret";
-  version = "1.2.0";
-
-  buildInputs = [ SDL SDL_image SDL_ttf SDL_mixer ];
-
-  NIX_CFLAGS_COMPILE = "-I${SDL.dev}/include/SDL";
-  NIX_CFLAGS_LINK = lib.optionalString (!stdenv.isDarwin) "-lgcc_s";
-  NIX_LDFLAGS = lib.optionalString stdenv.isDarwin
-    "-framework CoreFoundation -framework OpenGL -framework Cocoa";
-
-  patches = [ ./use-home-dir.patch ];
-
-  postPatch = ''
-    sed -i 's@RESOURCE_PATH ""@RESOURCE_PATH "'$out'/share/"@' game.c
-  '';
-
-  src = fetchurl {
-    url = "https://gitorious.org/beret/beret/archive-tarball/ae029777";
-    name = "beret-1.2.0.tar.gz";
-    sha256 = "1rx9z72id1810fgv8mizk8qxwd1kh5xi07fdhmjc62mh3fn38szc";
-  };
-
-  installPhase = ''
-    mkdir -p $out/bin
-    install -v -m755 beret $out/bin
-    mkdir -p $out/share
-    cp -av tahoma.ttf images music rooms sfx $out/share
-  '';
-
-  meta = with lib; {
-    description = "A 2D puzzle-platformer game about a scientist with telekinetic abilities";
-    homepage    = "http://kiwisauce.com/beret/";
-    license     = licenses.lgpl2;
-    maintainers = with maintainers; [ lovek323 ];
-    platforms   = platforms.all;
-    broken = true; # source won't download, and no replacement is visible
-  };
-}
-
diff --git a/pkgs/games/pacvim/default.nix b/pkgs/games/pacvim/default.nix
index dc2c216b1bf19..a4347550c1d23 100644
--- a/pkgs/games/pacvim/default.nix
+++ b/pkgs/games/pacvim/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, ncurses }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, ncurses }:
 
 stdenv.mkDerivation {
   pname = "pacvim";
@@ -9,6 +9,15 @@ stdenv.mkDerivation {
     rev = "ca7c8833c22c5fe97974ba5247ef1fcc00cedb8e";
     sha256 = "1kq6j7xmsl5qfl1246lyglkb2rs9mnb2rhsdrp18965dpbj2mhx2";
   };
+  patches = [
+    # Fix pending upstream inclusion for ncurses-6.3 support:
+    #   https://github.com/jmoon018/PacVim/pull/53
+    (fetchpatch {
+      name = "ncurses-6.3.patch";
+      url = "https://github.com/jmoon018/PacVim/commit/760682824cdbb328af616ff43bf822ade23924f7.patch";
+      sha256 = "1y3928dc2nkfldqhpiqk0blbx7qj8ar35f1w7fb92qwxrj8p4i6g";
+    })
+  ];
 
   buildInputs = [ ncurses ];
   makeFlags = [ "PREFIX=$(out)" ];
diff --git a/pkgs/misc/base16-builder/node-packages.nix b/pkgs/misc/base16-builder/node-packages.nix
index 79748949ff727..459157b82a4c7 100644
--- a/pkgs/misc/base16-builder/node-packages.nix
+++ b/pkgs/misc/base16-builder/node-packages.nix
@@ -10,7 +10,7 @@ let
     inherit (pkgs) stdenv lib nix-gitignore fetchurl fetchgit;
   });
   nodeEnv = import ../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix
index 715f33421210a..c7b94e29589a5 100644
--- a/pkgs/misc/emulators/retroarch/cores.nix
+++ b/pkgs/misc/emulators/retroarch/cores.nix
@@ -1,293 +1,257 @@
-{ lib, stdenv, fetchgit, fetchFromGitHub, fetchpatch, cmake, pkg-config, makeWrapper, python27, python3, retroarch
-, alsa-lib, fluidsynth, curl, hidapi, libGLU, gettext, portaudio, SDL, SDL2, libGL
-, ffmpeg, pcre, libevdev, libpng, libjpeg, libzip, udev, libvorbis, snappy, which, hexdump
-, sfml, xorg, zlib, nasm, libpcap, boost, icu, openssl
-, buildPackages }:
+{ lib
+, stdenv
+, SDL
+, alsa-lib
+, boost
+, buildPackages
+, cmake
+, curl
+, fetchFromGitHub
+, fetchpatch
+, ffmpeg
+, fluidsynth
+, gettext
+, hexdump
+, hidapi
+, icu
+, libGL
+, libGLU
+, libevdev
+, libjpeg
+, libpcap
+, libpng
+, libvorbis
+, libzip
+, makeWrapper
+, nasm
+, openssl
+, pcre
+, pkg-config
+, portaudio
+, python27
+, python3
+, retroarch
+, sfml
+, snappy
+, udev
+, which
+, xorg
+, zlib
+}:
 
 let
-
-  d2u = lib.replaceChars ["-"] ["_"];
-
-  mkLibRetroCore = { core, src, description, license, broken ? false, version ? "2020-03-06", ... }@a:
-  lib.makeOverridable stdenv.mkDerivation ((rec {
-
-    name = "libretro-${a.core}-${version}";
-    inherit version;
-    inherit (a) src;
-
-    buildInputs = [ zlib ] ++ a.extraBuildInputs or [];
-    nativeBuildInputs = [ makeWrapper ] ++ a.extraNativeBuildInputs or [];
-
-    makefile = "Makefile.libretro";
-    makeFlags = [
-      "platform=${{
-        linux = "unix";
-        darwin = "osx";
-        windows = "win";
-      }.${stdenv.hostPlatform.parsed.kernel.name} or stdenv.hostPlatform.parsed.kernel.name}"
-      "ARCH=${{
-        armv7l = "arm";
-        armv6l = "arm";
-        i686 = "x86";
-      }.${stdenv.hostPlatform.parsed.cpu.name} or stdenv.hostPlatform.parsed.cpu.name}"
-    ] ++ (a.makeFlags or []);
-
-    installPhase = ''
-      COREDIR="$out/lib/retroarch/cores"
-      mkdir -p $out/bin
-      mkdir -p $COREDIR
-      mv ${d2u a.core}_libretro${stdenv.hostPlatform.extensions.sharedLibrary} $COREDIR
-      makeWrapper ${retroarch}/bin/retroarch $out/bin/retroarch-${core} \
-        --add-flags "-L $COREDIR/${d2u core}_libretro${stdenv.hostPlatform.extensions.sharedLibrary} $@"
-    '';
-
-    passthru = {
-      inherit (a) core;
-      libretroCore = "/lib/retroarch/cores";
-    };
-
-    meta = with lib; {
-      inherit (a) description license;
-      broken = a.broken or false;
-      homepage = "https://www.libretro.com/";
-      maintainers = with maintainers; [ edwtjo hrdinka MP2E ];
-      platforms = platforms.unix;
-    };
-  }) // builtins.removeAttrs a ["core" "src" "description" "license" "makeFlags"]);
-
-  fetchRetro = { repo, rev, sha256 }:
-  fetchgit {
-    inherit rev sha256;
-    url = "https://github.com/libretro/${repo}.git";
-    fetchSubmodules = true;
-  };
-
-in with lib.licenses;
-
+  d2u = lib.replaceChars [ "-" ] [ "_" ];
+
+  hashesFile = builtins.fromJSON (builtins.readFile ./hashes.json);
+
+  getCoreSrc = core:
+    fetchFromGitHub (builtins.getAttr core hashesFile);
+
+  mkLibRetroCore =
+    { core
+    , description
+    , license
+    , src ? null
+    , broken ? false
+    , version ? "unstable-2021-11-16"
+    , ...
+    }@args:
+    lib.makeOverridable stdenv.mkDerivation (
+      let
+        finalSrc = if src == null then getCoreSrc core else src;
+      in
+      (rec {
+        pname = "libretro-${core}";
+        inherit version;
+        src = finalSrc;
+
+        buildInputs = [ zlib ] ++ args.extraBuildInputs or [ ];
+        nativeBuildInputs = [ makeWrapper ] ++ args.extraNativeBuildInputs or [ ];
+
+        makefile = "Makefile.libretro";
+        makeFlags = [
+          "platform=${{
+            linux = "unix";
+            darwin = "osx";
+            windows = "win";
+          }.${stdenv.hostPlatform.parsed.kernel.name} or stdenv.hostPlatform.parsed.kernel.name}"
+          "ARCH=${{
+            armv7l = "arm";
+            armv6l = "arm";
+            i686 = "x86";
+          }.${stdenv.hostPlatform.parsed.cpu.name} or stdenv.hostPlatform.parsed.cpu.name}"
+        ] ++ (args.makeFlags or [ ]);
+
+        installPhase = ''
+          COREDIR="$out/lib/retroarch/cores"
+          mkdir -p $out/bin
+          mkdir -p $COREDIR
+          mv ${d2u args.core}_libretro${stdenv.hostPlatform.extensions.sharedLibrary} $COREDIR
+          makeWrapper ${retroarch}/bin/retroarch $out/bin/retroarch-${core} \
+            --add-flags "-L $COREDIR/${d2u core}_libretro${stdenv.hostPlatform.extensions.sharedLibrary} $@"
+        '';
+
+        passthru = {
+          inherit core;
+          libretroCore = "/lib/retroarch/cores";
+        };
+
+        meta = with lib; {
+          inherit broken description license;
+          homepage = "https://www.libretro.com/";
+          maintainers = with maintainers; [ edwtjo hrdinka MP2E thiagokokada ];
+          platforms = platforms.unix;
+        };
+      }) // builtins.removeAttrs args [ "core" "src" "description" "license" "makeFlags" ]
+    );
+in
 {
-
-  atari800 = mkLibRetroCore rec {
+  atari800 = mkLibRetroCore {
     core = "atari800";
-    src = fetchRetro {
-      repo = "libretro-" + core;
-      rev = "f9bf53b864344b8bbe8d425ed2f3c628eb10519c";
-      sha256 = "0sgk93zs423pwiqzvj0x1gfwcn9gacnlrrdq53ps395k64lig6lk";
-    };
     description = "Port of Atari800 to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
     makeFlags = [ "GIT_VERSION=" ];
   };
 
   beetle-snes = mkLibRetroCore {
     core = "mednafen-snes";
-    src = fetchRetro {
-      repo = "beetle-bsnes-libretro";
-      rev = "de22d8420ea606f1b2f72afd4dda34619cf2cc20";
-      sha256 = "1nd4f8frmlhp1lyxz9zpxvwwz70x0i0rrp560cn9qlm1jzdv3xvf";
-    };
+    src = getCoreSrc "beetle-snes";
     description = "Port of Mednafen's SNES core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
   beetle-gba = mkLibRetroCore {
     core = "mednafen-gba";
-    src = fetchRetro {
-      repo = "beetle-gba-libretro";
-      rev = "135afdbb9591655a3e016b75abba07e481f6d406";
-      sha256 = "0fc0x24qn4y7pz3mp1mm1ain31aj9pznp1irr0k7hvazyklzy9g3";
-    };
+    src = getCoreSrc "beetle-gba";
     description = "Port of Mednafen's GameBoy Advance core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
   beetle-lynx = mkLibRetroCore {
     core = "mednafen-lynx";
-    src = fetchRetro {
-      repo = "beetle-lynx-libretro";
-      rev = "74dde204c0ec6c4bc4cd7821c14548387fbd9ce8";
-      sha256 = "05kwibjr30laalqzazswvmn9smm3mwqsz1i0z1s0pj7idfdhjfw0";
-    };
+    src = getCoreSrc "beetle-lynx";
     description = "Port of Mednafen's Lynx core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
   beetle-ngp = mkLibRetroCore {
     core = "mednafen-ngp";
-    src = fetchRetro {
-      repo = "beetle-ngp-libretro";
-      rev = "6f15532b6ad17a2d5eb9dc8241d6af62416e796b";
-      sha256 = "05r8mk9rc19nzs3gpfsjr6i7pm6xx3gn3b4xs8ab7v4vcmfg4cn2";
-    };
+    src = getCoreSrc "beetle-ngp";
     description = "Port of Mednafen's NeoGeo Pocket core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
-  beetle-pce-fast = let der = mkLibRetroCore {
+  beetle-pce-fast = mkLibRetroCore {
     core = "mednafen-pce-fast";
-    src = fetchRetro {
-      repo = "beetle-pce-fast-libretro";
-      rev = "40a42b7f43f029760c92bf0b2097e7d4b90ed29c";
-      sha256 = "1gr6wg4bd4chm4c39w0c1b5zfzr05zd7234vvlmr1imk0v6m0wj6";
-    };
+    src = getCoreSrc "beetle-pce-fast";
     description = "Port of Mednafen's PC Engine core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
-  }; in der.override {
-    name = "beetle-pce-fast-${der.version}";
   };
 
-  beetle-pcfx = mkLibRetroCore rec {
+  beetle-pcfx = mkLibRetroCore {
     core = "mednafen-pcfx";
-    src = fetchRetro {
-      repo = "beetle-pcfx-libretro";
-      rev = "7bba6699d6f903bd701b0aa525d845de8427fee6";
-      sha256 = "1lh7dh96fyi005fcg3xaf7r4ssgkq840p6anldlqy52vfwmglw3p";
-    };
+    src = getCoreSrc "beetle-pcfx";
     description = "Port of Mednafen's PCFX core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
-  beetle-psx = let der = (mkLibRetroCore {
+  beetle-psx = mkLibRetroCore {
     core = "mednafen-psx";
-    src = fetchRetro {
-      repo = "beetle-psx-libretro";
-      rev = "0f1e7e60827cad49ebba628abdc83ad97652ab89";
-      sha256 = "1j92jgddyl970v775d6gyb50l8md6yfym2fpqhfxcr4gj1b4ivwq";
-    };
+    src = getCoreSrc "beetle-psx";
     description = "Port of Mednafen's PSX Engine core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
     makeFlags = [ "HAVE_HW=0" "HAVE_LIGHTREC=1" ];
-  }); in der.override {
-    name = "beetle-psx-${der.version}";
   };
 
-  beetle-psx-hw = let der = (mkLibRetroCore {
+  beetle-psx-hw = mkLibRetroCore {
     core = "mednafen-psx-hw";
-    src = fetchRetro {
-      repo = "beetle-psx-libretro";
-      rev = "0f1e7e60827cad49ebba628abdc83ad97652ab89";
-      sha256 = "1j92jgddyl970v775d6gyb50l8md6yfym2fpqhfxcr4gj1b4ivwq";
-    };
+    src = getCoreSrc "beetle-psx";
     description = "Port of Mednafen's PSX Engine (with HW accel) core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     extraBuildInputs = [ libGL libGLU ];
     makefile = "Makefile";
     makeFlags = [ "HAVE_VULKAN=1" "HAVE_OPENGL=1" "HAVE_HW=1" "HAVE_LIGHTREC=1" ];
-  }); in der.override {
-    name = "beetle-psx-hw-${der.version}";
   };
 
-  beetle-saturn = let der = (mkLibRetroCore {
+  beetle-saturn = mkLibRetroCore {
     core = "mednafen-saturn";
-    src = fetchRetro {
-      repo = "beetle-saturn-libretro";
-      rev = "8a65943bb7bbc3183eeb0d57c4ac3e663f1bcc11";
-      sha256 = "1f0cd9wmvarsmf4jw0p6h3lbzs6515aja7krrwapja7i4xmgbrnh";
-    };
+    src = getCoreSrc "beetle-saturn";
     description = "Port of Mednafen's Saturn core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
     makeFlags = [ "HAVE_HW=0" ];
     meta.platforms = [ "x86_64-linux" "aarch64-linux" ];
-  }); in der.override {
-    name = "beetle-saturn-${der.version}";
   };
 
-  beetle-saturn-hw = let der = (mkLibRetroCore {
+  beetle-saturn-hw = mkLibRetroCore {
     core = "mednafen-saturn-hw";
-    src = fetchRetro {
-      repo = "beetle-saturn-libretro";
-      rev = "8a65943bb7bbc3183eeb0d57c4ac3e663f1bcc11";
-      sha256 = "1f0cd9wmvarsmf4jw0p6h3lbzs6515aja7krrwapja7i4xmgbrnh";
-    };
+    src = getCoreSrc "beetle-saturn";
     description = "Port of Mednafen's Saturn core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     extraBuildInputs = [ libGL libGLU ];
     makefile = "Makefile";
     makeFlags = [ "HAVE_OPENGL=1" "HAVE_HW=1" ];
     meta.platforms = [ "x86_64-linux" "aarch64-linux" ];
-  }); in der.override {
-    name = "beetle-saturn-${der.version}";
   };
 
-  beetle-supergrafx = mkLibRetroCore rec {
+  beetle-supergrafx = mkLibRetroCore {
     core = "mednafen-supergrafx";
-    src = fetchRetro {
-      repo = "beetle-supergrafx-libretro";
-      rev = "fadef23d59fa5ec17bc99e1e722cfd9e10535695";
-      sha256 = "15rm7p5q38qy3xpyvamhphjnna8h91fsbcqnl9vhzx9cmjg0wf54";
-    };
+    src = getCoreSrc "beetle-supergrafx";
     description = "Port of Mednafen's SuperGrafx core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
-  beetle-wswan = mkLibRetroCore rec {
+  beetle-wswan = mkLibRetroCore {
     core = "mednafen-wswan";
-    src = fetchRetro {
-      repo = "beetle-wswan-libretro";
-      rev = "5b03d1b09f70dc208387d3c8b59e12e1f0d2692f";
-      sha256 = "1sm6ww3y9m85lhp74dpxbs05yxdhhqqmj2022j9s0m235z29iygc";
-    };
+    src = getCoreSrc "beetle-wswan";
     description = "Port of Mednafen's WonderSwan core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
-  beetle-vb = mkLibRetroCore rec {
+  beetle-vb = mkLibRetroCore {
     core = "mednafen-vb";
-    src = fetchRetro {
-      repo = "beetle-vb-libretro";
-      rev = "9a4e604a7320a3c6ed30601989fe0bc417fa9ad3";
-      sha256 = "1gallwbqxn5qbmwxr1vxb41nncksai4rxc739a7vqvp65k5kl0qp";
-    };
+    src = getCoreSrc "beetle-vb";
     description = "Port of Mednafen's VirtualBoy core to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
-  bluemsx = mkLibRetroCore rec {
+  bluemsx = mkLibRetroCore {
     core = "bluemsx";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "7a1d40e750860580ab7cc21fbc244b5bc6db6586";
-      sha256 = "05hnkyr47djccspr8v438zimdfsgym7v0jn1hwpkqc4i5zf70981";
-    };
     description = "Port of BlueMSX to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
   };
 
-  bsnes-mercury = let bname = "bsnes-mercury"; in mkLibRetroCore {
-    core = bname + "-accuracy";
-    src = fetchRetro {
-      repo = bname;
-      rev = "4a382621da58ae6da850f1bb003ace8b5f67968c";
-      sha256 = "0z8psz24nx8497vpk2wya9vs451rzzw915lkw3qiq9bzlzg9r2wv";
-    };
+  bsnes-mercury = mkLibRetroCore {
+    core = "bsnes-mercury-accuracy";
+    src = getCoreSrc "bsnes-mercury";
     description = "Fork of bsnes with HLE DSP emulation restored";
-    license = gpl3;
+    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
-    postBuild = "cd out";
+    makeFlags = [ "PROFILE=accuracy" ];
   };
 
-  citra = mkLibRetroCore rec {
+  citra = mkLibRetroCore {
     core = "citra";
-    src = fetchgit {
-      url = "https://github.com/libretro/citra.git";
-      rev = "84f31e95160b029e6d614053705054ed6a34bb38";
-      sha256 = "0gkgxpwrh0q098cpx56hprvmazi5qi448c23svwa8ar1myh8p248";
-      fetchSubmodules = true;
+    # `nix-prefetch-github` doesn't support `deepClone`, necessary for citra
+    # https://github.com/seppeljordan/nix-prefetch-github/issues/41
+    src = fetchFromGitHub {
+      inherit (hashesFile.citra) owner repo rev fetchSubmodules;
       deepClone = true;
+      sha256 = "sha256-bwnYkMvbtRF5bGZRYVtMWxnCu9P45qeX4+ntOj9eRds=";
     };
     description = "Port of Citra to libretro";
-    license = gpl2Plus;
+    license = lib.licenses.gpl2Plus;
     extraNativeBuildInputs = [ cmake pkg-config ];
     extraBuildInputs = [ libGLU libGL boost ];
     makefile = "Makefile";
@@ -302,52 +266,41 @@ in with lib.licenses;
     postBuild = "cd src/citra_libretro";
   };
 
-  desmume = mkLibRetroCore rec {
+  desmume = mkLibRetroCore {
     core = "desmume";
-    src = fetchRetro {
-      repo = core;
-      rev = "e8cf461f83eebb195f09e70090f57b07d1bcdd9f";
-      sha256 = "0rc8s5226wn39jqs5yxi30jc1snc0p106sfym7kgi98hy5na8yab";
-    };
     description = "libretro wrapper for desmume NDS emulator";
-    license = gpl2;
+    license = lib.licenses.gpl2Plus;
     extraBuildInputs = [ libpcap libGLU libGL xorg.libX11 ];
     preBuild = "cd desmume/src/frontend/libretro";
     makeFlags = lib.optional stdenv.hostPlatform.isAarch32 "platform=armv-unix"
-             ++ lib.optional (!stdenv.hostPlatform.isx86) "DESMUME_JIT=0";
+      ++ lib.optional (!stdenv.hostPlatform.isx86) "DESMUME_JIT=0";
   };
 
-  desmume2015 = mkLibRetroCore rec {
+  desmume2015 = mkLibRetroCore {
     core = "desmume2015";
-    src = fetchRetro {
-      repo = core;
-      rev = "93d5789d60f82436e20ccad05ce9cb43c6e3656e";
-      sha256 = "12nii2pbnqgh7f7jkphbwjpr2hiy2mzbwpas3xyhpf9wpy3qiasg";
-    };
     description = "libretro wrapper for desmume NDS emulator from 2015";
-    license = gpl2;
+    license = lib.licenses.gpl2Plus;
     extraBuildInputs = [ libpcap libGLU libGL xorg.libX11 ];
     makeFlags = lib.optional stdenv.hostPlatform.isAarch32 "platform=armv-unix"
-             ++ lib.optional (!stdenv.hostPlatform.isx86) "DESMUME_JIT=0";
+      ++ lib.optional (!stdenv.hostPlatform.isx86) "DESMUME_JIT=0";
     preBuild = "cd desmume";
   };
 
   dolphin = mkLibRetroCore {
     core = "dolphin";
-    version = "2021-11-01";
-    src = fetchRetro {
-      repo = "dolphin";
-      rev = "3370f7693be95c23ac779e5172ff52b7eb2861a7";
-      sha256 = "0ylxi25kbv0h2p24aid7z4i0w6drf7h92q02hjdl3h3gni98lk9i";
-    };
     description = "Port of Dolphin to libretro";
-    license = gpl2Plus;
+    license = lib.licenses.gpl2Plus;
 
     extraNativeBuildInputs = [ cmake curl pkg-config ];
     extraBuildInputs = [
-      libGLU libGL pcre sfml
-      gettext hidapi
-      libevdev udev
+      libGLU
+      libGL
+      pcre
+      sfml
+      gettext
+      hidapi
+      libevdev
+      udev
     ] ++ (with xorg; [ libSM libX11 libXi libpthreadstubs libxcb xcbutil libXext libXrandr libXinerama libXxf86vm ]);
     makefile = "Makefile";
     cmakeFlags = [
@@ -362,48 +315,29 @@ in with lib.licenses;
     dontUseCmakeBuildDir = true;
   };
 
-  dosbox = mkLibRetroCore rec {
+  dosbox = mkLibRetroCore {
     core = "dosbox";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "e4ed503b14ed59d5d745396ef1cc7d52cf912328";
-      sha256 = "13bx0ln9hwn6hy4sv0ivqmjgjbfq8svx15dsa24hwd8lkf0kakl4";
-    };
     description = "Port of DOSBox to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
   };
 
-  eightyone = mkLibRetroCore rec {
+  eightyone = mkLibRetroCore {
     core = "81";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "4352130bd2363954262a804b086f86b9d13d97f9";
-      sha256 = "057ynnv85imjqhgixrx7p28wn42v88vsm3fc1lp3mpcfi2bk266h";
-    };
+    src = getCoreSrc "eightyone";
     description = "Port of EightyOne to libretro";
-    license = gpl3;
+    license = lib.licenses.gpl3Only;
   };
 
-  fbalpha2012 = mkLibRetroCore rec {
+  fbalpha2012 = mkLibRetroCore {
     core = "fbalpha2012";
-    src = fetchRetro {
-      repo = core;
-      rev = "fa97cd2784a337f8ac774c2ce8a136aee69b5f43";
-      sha256 = "1i75k0r6838hl77bjjmzvan33ka5qjrdpirmclzj20g5j97lmas7";
-    };
     description = "Port of Final Burn Alpha ~2012 to libretro";
     license = "Non-commercial";
     makefile = "makefile.libretro";
     preBuild = "cd svn-current/trunk";
   };
 
-  fbneo = mkLibRetroCore rec {
+  fbneo = mkLibRetroCore {
     core = "fbneo";
-    src = fetchRetro {
-      repo = core;
-      rev = "cf43fdb1755f9f5c886266e86ba40d339bc8f5d7";
-      sha256 = "13g3c6mbwhcf0rp95ga4klszh8dab2d4ahh2vzzlmd57r69lf2lv";
-    };
     description = "Port of FBNeo to libretro";
     license = "Non-commercial";
     makefile = "Makefile";
@@ -414,123 +348,73 @@ in with lib.licenses;
     makeFlags = [ "USE_EXPERIMENTAL_FLAGS=1" ];
   };
 
-  fceumm = mkLibRetroCore rec {
+  fceumm = mkLibRetroCore {
     core = "fceumm";
-    src = fetchRetro {
-      repo = "libretro-" + core;
-      rev = "9ed22e5a9a1360a7f599a64283af9fe24b858e3d";
-      sha256 = "0rz6iy281jpybmsz5rh06k5xvmd9id9w2q2gd0qdv9a2ylwv7s2j";
-    };
     description = "FCEUmm libretro port";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
   };
 
-  flycast = mkLibRetroCore rec {
+  flycast = mkLibRetroCore {
     core = "flycast";
-    src = fetchRetro {
-      repo = core;
-      rev = "b12f3726d9093acb4e441b1cdcf6cd11403c8644";
-      sha256 = "0nczjhdqr7svq9aflczf7rwz64bih1wqy9q0gyglb55xlslf5jqc";
-    };
     description = "Flycast libretro port";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     extraBuildInputs = [ libGL libGLU ];
     makefile = "Makefile";
     makeFlags = lib.optional stdenv.hostPlatform.isAarch64 [ "platform=arm64" ];
     meta.platforms = [ "aarch64-linux" "x86_64-linux" ];
   };
 
-  fmsx = mkLibRetroCore rec {
+  fmsx = mkLibRetroCore {
     core = "fmsx";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "3de916bbf15062de1ab322432d38a1fee29d5e68";
-      sha256 = "1krr4lmdiv0d7bxk37fqz5y412znb5bmxapv9g7ci6fp87sr69jq";
-    };
     description = "FMSX libretro port";
     license = "Non-commercial";
     makefile = "Makefile";
   };
 
-  freeintv = mkLibRetroCore rec {
+  freeintv = mkLibRetroCore {
     core = "freeintv";
-    src = fetchRetro {
-      repo = core;
-      rev = "45030e10cc1a50cf7a80c5d921aa8cba0aeaca91";
-      sha256 = "10lngk3p012bgrg752426701hfzsiy359h8i0vzsa64pgyjbqlag";
-    };
     description = "FreeIntv libretro port";
-    license = gpl3;
+    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
   };
 
-  gambatte = mkLibRetroCore rec {
+  gambatte = mkLibRetroCore {
     core = "gambatte";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "132f36e990dfc6effdafa6cf261373432464f9bf";
-      sha256 = "19w5k9yc1cl99c5hiqbp6j54g6z06xcblpvd3x6nmhxij81yqxy7";
-    };
     description = "Gambatte libretro port";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
   };
 
   genesis-plus-gx = mkLibRetroCore {
     core = "genesis-plus-gx";
-    src = fetchRetro {
-      repo = "Genesis-Plus-GX";
-      rev = "50551066f71f8a5ea782ea3747891fd6d24ebe67";
-      sha256 = "150lgdrv7idcq7jbd1jj7902rcsyixd7kfjs2m5xdinjvl22kihr";
-    };
     description = "Enhanced Genesis Plus libretro port";
     license = "Non-commercial";
   };
 
-  gpsp = mkLibRetroCore rec {
+  gpsp = mkLibRetroCore {
     core = "gpsp";
-    src = fetchRetro {
-      repo = core;
-      rev = "3f2f57c982ffead643957db5b26931df4913596f";
-      sha256 = "09fa1c623rmy1w9zx85r75viv8q1vknhbs8fn6xbss9rhpxhivwg";
-    };
     description = "Port of gpSP to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
-  gw = mkLibRetroCore rec {
+  gw = mkLibRetroCore {
     core = "gw";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "819b1dde560013003eeac86c2069c5be7af25c6d";
-      sha256 = "1jhgfys8hiipvbwq3gc48d7v6wq645d10rbr4w5m6px0fk6csshk";
-    };
     description = "Port of Game and Watch to libretro";
     license = lib.licenses.zlib;
     makefile = "Makefile";
   };
 
-  handy = mkLibRetroCore rec {
+  handy = mkLibRetroCore {
     core = "handy";
-    src = fetchRetro {
-      repo = "libretro-" + core;
-      rev = "c9fe65d1a2df454ee11404ac27bdc9be319dd9a2";
-      sha256 = "1l1gi8z68mv2cpdy7a6wvhd86q55khj3mv3drf43ak4kj2ij8cvq";
-    };
     description = "Port of Handy to libretro";
-    license = "Handy-License";
+    license = lib.licenses.zlib;
     makefile = "Makefile";
   };
 
-  hatari = mkLibRetroCore rec {
+  hatari = mkLibRetroCore {
     core = "hatari";
-    src = fetchRetro {
-      repo = core;
-      rev = "ec1b59c4b6c7ca7d0d23d60cfe2cb61911b11173";
-      sha256 = "1pm821s2cz93xr7qx7dv0imr44bi4pvdvlnjl486p83vff9yawfg";
-    };
     description = "Port of Hatari to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     extraBuildInputs = [ SDL zlib ];
     extraNativeBuildInputs = [ cmake which ];
     dontUseCmakeConfigure = true;
@@ -541,15 +425,10 @@ in with lib.licenses;
 
   mame = mkLibRetroCore {
     core = "mame";
-    src = fetchRetro {
-      repo = "mame";
-      rev = "ed987ad07964a938351ff3cc1ad42e02ffd2af6d";
-      sha256 = "0qc66mvraffx6ws972skx3wgblich17q6z42798qn13q1a264p4j";
-    };
     description = "Port of MAME to libretro";
-    license = gpl2Plus;
+    license = with lib.licenses; [ bsd3 gpl2Plus ];
 
-    extraBuildInputs = [ alsa-lib libGLU libGL portaudio python27 xorg.libX11 ];
+    extraBuildInputs = [ alsa-lib libGLU libGL portaudio python3 xorg.libX11 ];
     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
@@ -558,77 +437,47 @@ in with lib.licenses;
     makefile = "Makefile.libretro";
   };
 
-  mame2000 = mkLibRetroCore rec {
+  mame2000 = mkLibRetroCore {
     core = "mame2000";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "e5d4a934c60adc6d42a3f87319312aad89595a15";
-      sha256 = "1zn63yqyrsnsk196v5f3nm7cx41mvsm3icpis1yxbma2r3dk3f89";
-    };
     description = "Port of MAME ~2000 to libretro";
-    license = gpl2Plus;
+    license = "MAME";
     makefile = "Makefile";
     makeFlags = lib.optional (!stdenv.hostPlatform.isx86) "IS_X86=0";
   };
 
-  mame2003 = mkLibRetroCore rec {
+  mame2003 = mkLibRetroCore {
     core = "mame2003";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "82596014905ad38c80c9eb322ab08c625d1d92cd";
-      sha256 = "17dp2rz6p7q7nr0lajn3vhk9ghngxz16f7c6c87r6wgsy4y3xw0m";
-    };
     description = "Port of MAME ~2003 to libretro";
-    license = gpl2Plus;
+    license = "MAME";
     makefile = "Makefile";
   };
 
-  mame2003-plus = mkLibRetroCore rec {
+  mame2003-plus = mkLibRetroCore {
     core = "mame2003-plus";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "0134c428b75882aa474f78dbbf2c6ecde49b97b7";
-      sha256 = "0jln2ys6v9hrsrkhqd87jfslwvkca425f40mf7866g6b4pz56mwc";
-    };
     description = "Port of MAME ~2003+ to libretro";
-    license = gpl2Plus;
+    license = "MAME";
     makefile = "Makefile";
   };
 
-  mame2010 = mkLibRetroCore rec {
+  mame2010 = mkLibRetroCore {
     core = "mame2010";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "d3151837758eade73c85c28c20e7d2a8706f30c6";
-      sha256 = "0hj0yhc8zs32fkzn8j341ybhvrsknv0k6x0z2fv3l9ic7swgb93i";
-    };
     description = "Port of MAME ~2010 to libretro";
-    license = gpl2Plus;
+    license = "MAME";
     makefile = "Makefile";
     makeFlags = lib.optionals stdenv.hostPlatform.isAarch64 [ "PTR64=1" "ARM_ENABLED=1" "X86_SH2DRC=0" "FORCE_DRC_C_BACKEND=1" ];
   };
 
-  mame2015 = mkLibRetroCore rec {
+  mame2015 = mkLibRetroCore {
     core = "mame2015";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "37333ed6fda4c798a1d6b055fe4708f9f0dcf5a7";
-      sha256 = "1asldlj1ywgmhabbhaagagg5hn0359122al07802q3l57ns41l64";
-    };
     description = "Port of MAME ~2015 to libretro";
-    license = gpl2Plus;
+    license = "MAME";
     extraNativeBuildInputs = [ python27 ];
     extraBuildInputs = [ alsa-lib ];
     makefile = "Makefile";
   };
 
-  mame2016 = mkLibRetroCore rec {
+  mame2016 = mkLibRetroCore {
     core = "mame2016";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "02987af9b81a9c3294af8fb9d5a34f9826a2cf4d";
-      sha256 = "0gl7irmn5d8lk7kf484vgw6kb325fq4ghwsni3il4nm5n2a8yglh";
-    };
     patches = [
       (fetchpatch {
         name = "fix_mame_build_on_make-4.3.patch";
@@ -637,7 +486,7 @@ in with lib.licenses;
       })
     ];
     description = "Port of MAME ~2016 to libretro";
-    license = gpl2Plus;
+    license = with lib.licenses; [ bsd3 gpl2Plus ];
     extraNativeBuildInputs = [ python27 ];
     extraBuildInputs = [ alsa-lib ];
     postPatch = ''
@@ -647,136 +496,86 @@ in with lib.licenses;
     '';
   };
 
-  mesen = mkLibRetroCore rec {
+  mesen = mkLibRetroCore {
     core = "mesen";
-    src = fetchFromGitHub {
-      owner = "SourMesen";
-      repo = core;
-      rev = "cfc5bf6976f62ebd42ea30d5a803c138fc357509";
-      sha256 = "0ihlgvzvni1yqcyi5yxdvg36q20fsqd6n67zavwfb2ph09cqv7kz";
-    };
     description = "Port of Mesen to libretro";
-    license = gpl3;
+    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
     preBuild = "cd Libretro";
   };
 
-  meteor = mkLibRetroCore rec {
+  meteor = mkLibRetroCore {
     core = "meteor";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "3d21e3b5a7596918bee0fcaca5752ae76624c05e";
-      sha256 = "0fghnxxbdrkdz6zswkd06w2r3dvr4ikvcp8jbr7nb9fc5yzn0avw";
-    };
     description = "Port of Meteor to libretro";
-    license = gpl3;
+    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
     preBuild = "cd libretro";
   };
 
-  mgba = mkLibRetroCore rec {
+  mgba = mkLibRetroCore {
     core = "mgba";
-    src = fetchRetro {
-      repo = core;
-      rev = "f87f9ef6cb38537e07dcaedeb82aecac6537d42e";
-      sha256 = "0yixvnzgk7qvcfz12r5y8i85czqxbxx6bvl1c7yms8riqn9ssvb7";
-    };
     description = "Port of mGBA to libretro";
-    license = mpl20;
+    license = lib.licenses.mpl20;
   };
 
   mupen64plus = mkLibRetroCore {
     core = "mupen64plus-next";
-    src = fetchRetro {
-      repo = "mupen64plus-libretro-nx";
-      rev = "81a58df0263c90b10b7fc11b6deee04d47e3aa40";
-      sha256 = "1brqyrsdzdq53a68q7ph01q2bx5y4m8b3ymvpp25229imm88lgkn";
-    };
+    src = getCoreSrc "mupen64plus";
     description = "Libretro port of Mupen64 Plus, GL only";
-    license = gpl2;
+    license = lib.licenses.gpl3Only;
 
     extraBuildInputs = [ libGLU libGL libpng nasm xorg.libX11 ];
     makefile = "Makefile";
   };
 
-  neocd = mkLibRetroCore rec {
+  neocd = mkLibRetroCore {
     core = "neocd";
-    src = fetchRetro {
-      repo = core + "_libretro";
-      rev = "3825848fe7dd7e0ef859729eefcb29e2ea2956b7";
-      sha256 = "018vfmjsx62zk45yx3pwisp4j133yxjbm7fnwwr244gnyms57711";
-    };
     description = "NeoCD libretro port";
-    license = gpl3;
+    license = lib.licenses.lgpl3Only;
     makefile = "Makefile";
   };
 
-  nestopia = mkLibRetroCore rec {
+  nestopia = mkLibRetroCore {
     core = "nestopia";
-    src = fetchRetro {
-      repo = core;
-      rev = "70c53f08c0cc92e90d095d6558ab737ce20431ac";
-      sha256 = "1hlfqml66wy6fn40f1iiy892vq9y9fj20vv3ynd2s3b3qxhwfx73";
-    };
     description = "Nestopia libretro port";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
     preBuild = "cd libretro";
   };
 
   np2kai = mkLibRetroCore rec {
     core = "np2kai";
-    src = fetchFromGitHub rec {
-      owner = "AZO234";
-      repo = "NP2kai";
-      rev = "4a317747724669343e4c33ebdd34783fb7043221";
-      sha256 = "0kxysxhx6jyk82mx30ni0ydzmwdcbnlxlnarrlq018rsnwb4md72";
-    };
+    src = getCoreSrc core;
     description = "Neko Project II kai libretro port";
-    license = mit;
+    license = lib.licenses.mit;
     makefile = "Makefile.libretro";
-    preBuild = ''
-      cd sdl2
-      substituteInPlace ${makefile} \
-        --replace 'GIT_VERSION :=' 'GIT_VERSION ?='
-      export GIT_VERSION=${builtins.substring 0 7 src.rev}
-    '';
+    makeFlags = [
+      # See https://github.com/AZO234/NP2kai/tags
+      "NP2KAI_VERSION=rev.22"
+      "NP2KAI_HASH=${src.rev}"
+    ];
+    preBuild = "cd sdl";
   };
 
-  o2em = mkLibRetroCore rec {
+  o2em = mkLibRetroCore {
     core = "o2em";
-    src = fetchRetro {
-      repo = "libretro-" + core;
-      rev = "b23a796dd3490e979ff43710317df6d43bd661e1";
-      sha256 = "1pkbq7nig394zdjdic0mzdsvx8xhzamsh53xh2hzznipyj46b7z0";
-    };
     description = "Port of O2EM to libretro";
-    license = artistic1;
+    license = lib.licenses.artistic1;
     makefile = "Makefile";
   };
 
-  opera = mkLibRetroCore rec {
+  opera = mkLibRetroCore {
     core = "opera";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "27bc2653ed469072a6a95102a8212a35fbb1e590";
-      sha256 = "10cxjpsd35rb4fjc5ycs1h00gvshpn2mxxvwb6xzrfrzva0kjw1l";
-    };
     description = "Opera is a port of 4DO/libfreedo to libretro";
     license = "Non-commercial";
     makefile = "Makefile";
     makeFlags = [ "CC_PREFIX=${stdenv.cc.targetPrefix}" ];
   };
 
-  parallel-n64 = mkLibRetroCore rec {
+  parallel-n64 = mkLibRetroCore {
     core = "parallel-n64";
-    src = fetchRetro {
-      repo = core;
-      rev = "8fe07c62a364d0af1e22b7f75e839d42872dae7f";
-      sha256 = "0p3fpldw6w4n4l60bv55c17vhqwq4q39fp36h8iqmnj7c32c61kf";
-    };
     description = "Parallel Mupen64plus rewrite for libretro.";
-    license = gpl2;
+    license = lib.licenses.gpl3Only;
     extraBuildInputs = [ libGLU libGL libpng ];
     makefile = "Makefile";
     postPatch = lib.optionalString stdenv.hostPlatform.isAarch64 ''
@@ -785,44 +584,29 @@ in with lib.licenses;
     '';
   };
 
-  pcsx_rearmed = mkLibRetroCore rec {
+  pcsx_rearmed = mkLibRetroCore {
     core = "pcsx_rearmed";
-    src = fetchRetro {
-      repo = core;
-      rev = "8fda5dd0e28fe46621fb1ab57781c316143017da";
-      sha256 = "0k371d0xqzqwy8ishvxssgasm36q83qj7ksn2av110n879n4knwb";
-    };
     description = "Port of PCSX ReARMed with GNU lightning to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     dontConfigure = true;
   };
 
-  picodrive = mkLibRetroCore rec {
+  picodrive = mkLibRetroCore {
     core = "picodrive";
-    src = fetchRetro {
-      repo = core;
-      rev = "600894ec6eb657586a972a9ecd268f50907a279c";
-      sha256 = "1bxphwnq4b80ssmairy8sfc5cp4m6jyvrcjcj63q1vk7cs6qls7p";
-    };
     description = "Fast MegaDrive/MegaCD/32X emulator";
     license = "MAME";
 
     extraBuildInputs = [ libpng SDL ];
     SDL_CONFIG = "${SDL.dev}/bin/sdl-config";
     dontAddPrefix = true;
-    configurePlatforms = [];
+    configurePlatforms = [ ];
     makeFlags = lib.optional stdenv.hostPlatform.isAarch64 [ "platform=aarch64" ];
   };
 
   play = mkLibRetroCore {
     core = "play";
-    src = fetchRetro {
-      repo = "play-";
-      rev = "884ae3b96c631f235cd18b2643d1f318fa6951fb";
-      sha256 = "0m9pk20jh4y02visgzfw64bpbw93bzs15x3a3bnd19yivm34dbfc";
-    };
     description = "Port of Play! to libretro";
-    license = bsd2;
+    license = lib.licenses.bsd2;
     extraBuildInputs = [ boost ];
     extraNativeBuildInputs = [ cmake openssl curl icu libGL libGLU xorg.libX11 ];
     makefile = "Makefile";
@@ -832,22 +616,8 @@ in with lib.licenses;
 
   ppsspp = mkLibRetroCore {
     core = "ppsspp";
-    src = fetchFromGitHub {
-      owner = "hrydgard";
-      repo = "ppsspp";
-      rev = "v1.11";
-      fetchSubmodules = true;
-      sha256 = "sha256-vfp/vacIItlPP5dR7jzDT7oOUNFnjvvdR46yi79EJKU=";
-    };
-    patches = [
-      (fetchpatch {
-        name = "fix_ffmpeg_4.4.patch";  # to be removed with next release
-        url = "https://patch-diff.githubusercontent.com/raw/hrydgard/ppsspp/pull/14176.patch";
-        sha256 = "sha256-ecDoOydaLfL6+eFpahcO1TnRl866mZZVHlr6Qrib1mo=";
-      })
-    ];
     description = "ppsspp libretro port";
-    license = gpl2;
+    license = lib.licenses.gpl2Plus;
     extraNativeBuildInputs = [ cmake pkg-config python3 ];
     extraBuildInputs = [ libGLU libGL libzip ffmpeg snappy xorg.libX11 ];
     makefile = "Makefile";
@@ -855,114 +625,69 @@ in with lib.licenses;
     postBuild = "mv lib/ppsspp_libretro${stdenv.hostPlatform.extensions.sharedLibrary} ppsspp_libretro${stdenv.hostPlatform.extensions.sharedLibrary}";
   };
 
-  prboom = mkLibRetroCore rec {
+  prboom = mkLibRetroCore {
     core = "prboom";
-    src = fetchRetro {
-      repo = "libretro-" + core;
-      rev = "991016b3c7a9c8b0e49b2bc9c72f68c60800fc7b";
-      sha256 = "1abv9qgfvh3x84shgyl3y90bjz77mjj17vibag7bg6i8hgjikjgq";
-    };
     description = "Prboom libretro port";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
-  prosystem = mkLibRetroCore rec {
+  prosystem = mkLibRetroCore {
     core = "prosystem";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "6f7e34aea89db5ba2fbf674e5ff0ad6fc68a198e";
-      sha256 = "0pqkb0f51s8ma0l4m9xk2y85z2kh3fgay9g4g8fingbgqq1klvzs";
-    };
     description = "Port of ProSystem to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
   quicknes = mkLibRetroCore {
     core = "quicknes";
-    src = fetchRetro {
-      repo = "QuickNES_Core";
-      rev = "31654810b9ebf8b07f9c4dc27197af7714364ea7";
-      sha256 = "15fr5a9hv7wgndb0fpmr6ws969him41jidzir2ix9xkb0mmvcm86";
-    };
     description = "QuickNES libretro port";
-    license = lgpl21Plus;
+    license = lib.licenses.lgpl21Plus;
     makefile = "Makefile";
   };
 
-  sameboy = mkLibRetroCore rec {
+  sameboy = mkLibRetroCore {
     core = "sameboy";
-    src = fetchRetro {
-      repo = "sameboy";
-      rev = "c9e547c1063fd62c40a4b7a86e7db99dc9089051";
-      sha256 = "0bff6gicm24d7h270aqvgd8il6mi7j689nj5zl9ij0wc77hrrpmq";
-    };
     description = "SameBoy libretro port";
-    license = mit;
+    license = lib.licenses.mit;
     extraNativeBuildInputs = [ which hexdump ];
     preBuild = "cd libretro";
     makefile = "Makefile";
   };
 
-  scummvm = mkLibRetroCore rec {
+  scummvm = mkLibRetroCore {
     core = "scummvm";
-    src = fetchRetro {
-      repo = core;
-      rev = "de91bf9bcbf4449f91e2f50fde173496a2b52ee0";
-      sha256 = "06h9xaf2b1cjk85nbslpjj0fm9iy9b2lxr1wf3i09hgs4sh6x464";
-    };
     description = "Libretro port of ScummVM";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     extraBuildInputs = [ fluidsynth libjpeg libvorbis libGLU libGL SDL ];
     makefile = "Makefile";
     preConfigure = "cd backends/platform/libretro/build";
   };
 
-  smsplus-gx = mkLibRetroCore rec {
+  smsplus-gx = mkLibRetroCore {
     core = "smsplus";
-    src = fetchRetro {
-      repo = core + "-gx";
-      rev = "36c82768c03d889f1cf4b66369edac2297acba32";
-      sha256 = "1f9waikyp7kp2abb76wlv9hmf2jpc76zjmfqyc7wk2pc70ljm3l4";
-    };
+    src = getCoreSrc "smsplus-gx";
     description = "SMS Plus GX libretro port";
-    license = gpl2Plus;
+    license = lib.licenses.gpl2Plus;
   };
 
-  snes9x = mkLibRetroCore rec {
+  snes9x = mkLibRetroCore {
     core = "snes9x";
-    src = fetchFromGitHub {
-      owner = "snes9xgit";
-      repo = core;
-      rev = "bd9246ddd75a5e9f78d6189c8c57754d843630f7";
-      sha256 = "10fm7ah3aha9lf4k9hgw0dlhdvshzpig2d0ylcb12gf9zz0i22ns";
-    };
     description = "Port of SNES9x git to libretro";
     license = "Non-commercial";
     makefile = "Makefile";
     preBuild = "cd libretro";
   };
 
-  snes9x2002 = mkLibRetroCore rec {
+  snes9x2002 = mkLibRetroCore {
     core = "snes9x2002";
-    src = fetchRetro {
-      repo = core;
-      rev = "a869da7f22c63ee1cb316f79c6dd7691a369da3e";
-      sha256 = "11lcwscnxg6sk9as2xlr4nai051qhidbsymyis4nz3r4dmgzf8j8";
-    };
     description = "Optimized port/rewrite of SNES9x 1.39 to Libretro";
     license = "Non-commercial";
     makefile = "Makefile";
   };
 
-  snes9x2005 = mkLibRetroCore rec {
+  snes9x2005 = mkLibRetroCore {
     core = "snes9x2005";
-    src = fetchRetro {
-      repo = core;
-      rev = "c216559b9e0dc3d7f059dcf31b813402ad47fea5";
-      sha256 = "19b2rpj6i32c34ryvlna4yca84y5ypza78w4x9l17qlhp021h9pv";
-    };
     description = "Optimized port/rewrite of SNES9x 1.43 to Libretro";
     license = "Non-commercial";
     makefile = "Makefile";
@@ -970,66 +695,40 @@ in with lib.licenses;
     postBuild = "mv snes9x2005_plus_libretro${stdenv.hostPlatform.extensions.sharedLibrary} snes9x2005_libretro${stdenv.hostPlatform.extensions.sharedLibrary}";
   };
 
-  snes9x2010 = mkLibRetroCore rec {
+  snes9x2010 = mkLibRetroCore {
     core = "snes9x2010";
-    src = fetchRetro {
-      repo = core;
-      rev = "ba9f2240360f8db270fb6ba5465c79c317070560";
-      sha256 = "00y53sjrsp8sccpp1qqw88iawsz30g6d370cbqcxs4ya1r6awn5x";
-    };
     description = "Optimized port/rewrite of SNES9x 1.52+ to Libretro";
     license = "Non-commercial";
   };
 
-  stella = mkLibRetroCore rec {
+  stella = mkLibRetroCore {
     core = "stella";
-    src = fetchFromGitHub {
-      owner = "stella-emu";
-      repo = core;
-      rev = "506bb0bd0618e676b1959931dcc00a9d0f5f0f3d";
-      sha256 = "09nclx0ksixngnxkkjjcyhf3d0vl4ykm8fx7m307lvag8nxj7z03";
-    };
     description = "Port of Stella to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     extraBuildInputs = [ libpng pkg-config SDL ];
     makefile = "Makefile";
     preBuild = "cd src/libretro";
     dontConfigure = true;
   };
 
-  stella2014 = mkLibRetroCore rec {
+  stella2014 = mkLibRetroCore {
     core = "stella2014";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "fc87f2c78d3b177f4b9b19698557dce452ac3ce7";
-      sha256 = "0yqzavk1w0d0ngpls32c4wlihii97fz2g6zsgadhm48apwjvn3xx";
-    };
     description = "Port of Stella to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
-  tgbdual = mkLibRetroCore rec {
+  tgbdual = mkLibRetroCore {
     core = "tgbdual";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "9be31d373224cbf288db404afc785df41e61b213";
-      sha256 = "19m3f3hj3jyg711z1xq8qn1hgsr593krl6s6hi0r6vf8p5x0zbzw";
-    };
     description = "Port of TGBDual to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
   };
 
-  thepowdertoy = mkLibRetroCore rec {
+  thepowdertoy = mkLibRetroCore {
     core = "thepowdertoy";
-    src = fetchRetro {
-      repo = "ThePowderToy";
-      rev = "0ff547e89ae9d6475b0226db76832daf03eec937";
-      sha256 = "kDpmo/RPYRvROOX3AhsB5pIl0MfHbQmbyTMciLPDNew=";
-    };
     description = "Port of The Powder Toy to libretro";
-    license = gpl3Only;
+    license = lib.licenses.gpl3Only;
     extraNativeBuildInputs = [ cmake ];
     makefile = "Makefile";
     postBuild = "cd src/";
@@ -1037,14 +736,9 @@ in with lib.licenses;
 
   tic80 = mkLibRetroCore {
     core = "tic80";
-    src = fetchRetro {
-      repo = "tic-80";
-      rev = "f43bad908d5f05f2a66d5cd1d6f21b234d4abd2c";
-      sha256 = "0bp34r8qqyw52alws1z4ib9j7bs4d641q6nvqszd07snp9lpvwym";
-    };
     description = "Port of TIC-80 to libretro";
-    license = mit;
-    extraNativeBuildInputs = [ cmake pkg-config ];
+    license = lib.licenses.mit;
+    extraNativeBuildInputs = [ cmake pkg-config libGL libGLU ];
     makefile = "Makefile";
     cmakeFlags = [
       "-DBUILD_LIBRETRO=ON"
@@ -1057,66 +751,42 @@ in with lib.licenses;
     postBuild = "cd lib";
   };
 
-  vba-next = mkLibRetroCore rec {
+  vba-next = mkLibRetroCore {
     core = "vba-next";
-    src = fetchRetro {
-      repo = core;
-      rev = "019132daf41e33a9529036b8728891a221a8ce2e";
-      sha256 = "0hab4rhvvcg30jifd9h9jq5q2vqk2hz5i1q456w6v2d10hl1lf15";
-    };
     description = "VBA-M libretro port with modifications for speed";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
   };
 
-  vba-m = mkLibRetroCore rec {
+  vba-m = mkLibRetroCore {
     core = "vbam";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "7d88e045a2fe44e56b3f84846beec446b4c4b2d9";
-      sha256 = "04f8adg99a36qkqhij54vkw5z18m5ld33p78lbmv8cxk7k7g7yhy";
-    };
+    src = getCoreSrc "vba-m";
     description = "vanilla VBA-M libretro port";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
     preBuild = "cd src/libretro";
   };
 
-  vecx = mkLibRetroCore rec {
+  vecx = mkLibRetroCore {
     core = "vecx";
-    src = fetchRetro {
-      repo = "libretro-" + core;
-      rev = "321205271b1c6be5dbdb8d309097a5b5c2032dbd";
-      sha256 = "1w54394yhf2yqmq1b8wi5y7lvixc5hpjxpyiancrdbjd0af7pdvd";
-    };
     description = "Port of Vecx to libretro";
-    license = gpl3;
+    license = lib.licenses.gpl3Only;
+    extraBuildInputs = [ libGL libGLU ];
   };
 
-  virtualjaguar = mkLibRetroCore rec {
+  virtualjaguar = mkLibRetroCore {
     core = "virtualjaguar";
-    src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "a162fb75926f5509f187e9bfc69958bced40b0a6";
-      sha256 = "06k8xpn5y9rzmi2lwfw0v9v9pz4wvmpalycc608bw9cl39lmz10h";
-    };
     description = "Port of VirtualJaguar to libretro";
-    license = gpl3;
+    license = lib.licenses.gpl3Only;
     makefile = "Makefile";
   };
 
-  yabause = mkLibRetroCore rec {
+  yabause = mkLibRetroCore {
     core = "yabause";
-    src = fetchRetro {
-      repo = core;
-      rev = "9be109f9032afa793d2a79b837c4cc232cea5929";
-      sha256 = "0aj862bs4dmnldy62wdssj5l63ibfkbzqvkxcqa3wyvdz4i367jc";
-    };
     description = "Port of Yabause to libretro";
-    license = gpl2;
+    license = lib.licenses.gpl2Only;
     makefile = "Makefile";
     # Disable SSE for non-x86. DYNAREC doesn't build on either Aarch64 or x86_64.
     makeFlags = lib.optional (!stdenv.hostPlatform.isx86) "HAVE_SSE=0";
     preBuild = "cd yabause/src/libretro";
   };
-
 }
diff --git a/pkgs/misc/emulators/retroarch/default.nix b/pkgs/misc/emulators/retroarch/default.nix
index f5db3d427f9ed..e4c09c3c8f6c0 100644
--- a/pkgs/misc/emulators/retroarch/default.nix
+++ b/pkgs/misc/emulators/retroarch/default.nix
@@ -22,12 +22,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "retroarch-bare";
-  version = "1.8.5";
+  # FIXME: retroarch >=1.9.3 doesn't load the cores
+  version = "1.9.2";
 
   src = fetchFromGitHub {
     owner = "libretro";
     repo = "RetroArch";
-    sha256 = "1pg8j9wvwgrzsv4xdai6i6jgdcc922v0m42rbqxvbghbksrc8la3";
+    sha256 = "sha256-Dwv0hl+d99FbVMG4KnkjO1aYfAw0m4x+zvrbyb/wOX8=";
     rev = "v${version}";
   };
 
@@ -55,8 +56,8 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://libretro.com";
     description = "Multi-platform emulator frontend for libretro cores";
-    license = licenses.gpl3;
+    license = licenses.gpl3Plus;
     platforms = platforms.all;
-    maintainers = with maintainers; [ MP2E edwtjo matthewbauer kolbycrouch ];
+    maintainers = with maintainers; [ MP2E edwtjo matthewbauer kolbycrouch thiagokokada ];
   };
 }
diff --git a/pkgs/misc/emulators/retroarch/hashes.json b/pkgs/misc/emulators/retroarch/hashes.json
new file mode 100644
index 0000000000000..a849a37bfab41
--- /dev/null
+++ b/pkgs/misc/emulators/retroarch/hashes.json
@@ -0,0 +1,513 @@
+{
+    "atari800": {
+        "owner": "libretro",
+        "repo": "libretro-atari800",
+        "rev": "478a8ec99a7f8436a39d5ac193c5fe313233ee7b",
+        "sha256": "LJpRegJVR2+sS1UmTTpVest0rMrNDBMXmj/jRFVglWI=",
+        "fetchSubmodules": false
+    },
+    "beetle-snes": {
+        "owner": "libretro",
+        "repo": "beetle-bsnes-libretro",
+        "rev": "bc867656d7438aaffc6818b3b92350587bc78a47",
+        "sha256": "TyUCRGK+uyXowDjXW9/4m+zL8Vh/3GGsX1eznrTCbAg=",
+        "fetchSubmodules": false
+    },
+    "beetle-gba": {
+        "owner": "libretro",
+        "repo": "beetle-gba-libretro",
+        "rev": "38182572571a48cb58057cde64b915237c4e2d58",
+        "sha256": "4xnXWswozlcXBNI1lbGSNW/gAdIeLLO9Bf1SxOFLhSo=",
+        "fetchSubmodules": false
+    },
+    "beetle-lynx": {
+        "owner": "libretro",
+        "repo": "beetle-lynx-libretro",
+        "rev": "b84c79b2f185482f9cec2b10f33cbe1bc5732dd9",
+        "sha256": "pR3EsFN/Wf77gPoAnjf/nI0XlB2098qIrmbdjB4jmMQ=",
+        "fetchSubmodules": false
+    },
+    "beetle-ngp": {
+        "owner": "libretro",
+        "repo": "beetle-ngp-libretro",
+        "rev": "f969af2b52f20642aea7e800e3cfcce728f3aee9",
+        "sha256": "GIzLZ3iOJeHKdAowhM4S56iouaxX8v2XZgc/ZiCzCPk=",
+        "fetchSubmodules": false
+    },
+    "beetle-pce-fast": {
+        "owner": "libretro",
+        "repo": "beetle-pce-fast-libretro",
+        "rev": "81d4c9d07a76c89c32ad0e7450b69bde6403836f",
+        "sha256": "LhQbAEUMhoIF3VfwLbhtD7xxSddzdgwIHHnSabQPAvs=",
+        "fetchSubmodules": false
+    },
+    "beetle-pcfx": {
+        "owner": "libretro",
+        "repo": "beetle-pcfx-libretro",
+        "rev": "a1f1734509dd6acb11269f118d61f480ae8dbacf",
+        "sha256": "rvRDuYJLxb1TSwNXhp3ATJW0sQgWi8Cj4NR3hep/AJk=",
+        "fetchSubmodules": false
+    },
+    "beetle-psx": {
+        "owner": "libretro",
+        "repo": "beetle-psx-libretro",
+        "rev": "ccca81930a078c0efd77b00327d2ee212698f3b4",
+        "sha256": "Hy8Zrp0kTR+Mfbq0nVYerSarRCxZI+ykgDOscakDMiU=",
+        "fetchSubmodules": false
+    },
+    "beetle-saturn": {
+        "owner": "libretro",
+        "repo": "beetle-saturn-libretro",
+        "rev": "e1119e91a4e3f4b30971455aeb3c1a6f4cd05e59",
+        "sha256": "lKlNNAHK1ynFXY++Ya0m1Ax5YTZkd44eQjzuOLXfWa8=",
+        "fetchSubmodules": false
+    },
+    "beetle-supergrafx": {
+        "owner": "libretro",
+        "repo": "beetle-supergrafx-libretro",
+        "rev": "59062662d6e925ad512fcbb9c1a0db97d1592bc1",
+        "sha256": "kGyl5XJMFUALPAEZf4IynY6bmXWfqy0o65eO8zS0RTE=",
+        "fetchSubmodules": false
+    },
+    "beetle-wswan": {
+        "owner": "libretro",
+        "repo": "beetle-wswan-libretro",
+        "rev": "0c7faaf7f70b72ebb68e310530cd46a69e680d40",
+        "sha256": "UQyICcZe1DVotSFt0QVnGop+JG5NJwTBcGSZaFW0P0U=",
+        "fetchSubmodules": false
+    },
+    "beetle-vb": {
+        "owner": "libretro",
+        "repo": "beetle-vb-libretro",
+        "rev": "1bd0da71c8f6add253ad76e2b6e1357cd09fc304",
+        "sha256": "KguKbRK0uXE+brpF8HdRwi8Gt76AMa4wkh1MFvNCbN4=",
+        "fetchSubmodules": false
+    },
+    "bluemsx": {
+        "owner": "libretro",
+        "repo": "bluemsx-libretro",
+        "rev": "cfc1df4d026387883f21994bcce603c4a6be8730",
+        "sha256": "ix/AyYNer1R73ZJW1reXyj7geBr3ThrqXf5Ki5yrz9A=",
+        "fetchSubmodules": false
+    },
+    "bsnes-mercury": {
+        "owner": "libretro",
+        "repo": "bsnes-mercury",
+        "rev": "d232c6ea90552f5921fec33a06626f08d3e18b24",
+        "sha256": "fpl7hmqz+Ca+9ZeM6E1JSikbiu+NJUU8xXtyl6Dd9Gg=",
+        "fetchSubmodules": false
+    },
+    "citra": {
+        "owner": "libretro",
+        "repo": "citra",
+        "rev": "b1959d07a340bfd9af65ad464fd19eb6799a96ef",
+        "sha256": "Tw6Niba9gsZOMKGaXF9AZ5gdigB0mmFyqoRTMElM/Ps=",
+        "fetchSubmodules": true
+    },
+    "desmume": {
+        "owner": "libretro",
+        "repo": "desmume",
+        "rev": "7ea0fc96804fcd9c8d33e8f76cf64b1be50cc5ea",
+        "sha256": "4S/CirRVOBN6PVbato5X5fu0tBn3Fu5FEAbdf3TBqng=",
+        "fetchSubmodules": false
+    },
+    "desmume2015": {
+        "owner": "libretro",
+        "repo": "desmume2015",
+        "rev": "cd89fb7c48c735cb321311fbce7e6e9889dda1ce",
+        "sha256": "9Ou/n6pxRjJOp/Ybpyg4+Simosj2X26kLZCMEqeVL6U=",
+        "fetchSubmodules": false
+    },
+    "dolphin": {
+        "owner": "libretro",
+        "repo": "dolphin",
+        "rev": "82e617439b622af5d1189e9fec67e7f1376be099",
+        "sha256": "Q3a+0SYocX1hBGLs1K9r932NkiCDFINPhtHeyzUknJE=",
+        "fetchSubmodules": false
+    },
+    "dosbox": {
+        "owner": "libretro",
+        "repo": "dosbox-libretro",
+        "rev": "aa71b67d54eaaf9e41cdd3cb5153d9cff0ad116e",
+        "sha256": "L0Y67UROjldnXUlLQ+Xbd7RHLb96jDxlB/k+LR9Kbas=",
+        "fetchSubmodules": false
+    },
+    "eightyone": {
+        "owner": "libretro",
+        "repo": "81-libretro",
+        "rev": "30344d3499fdb301ee33de136f7b390bebe0756a",
+        "sha256": "kMwga9MkjV+dKxW3VLu+rxst6H20HhREoiNBsCLa1G0=",
+        "fetchSubmodules": false
+    },
+    "fbalpha2012": {
+        "owner": "libretro",
+        "repo": "fbalpha2012",
+        "rev": "23f98fc7cf4f2f216149c263cf5913d2e28be8d4",
+        "sha256": "dAInW6tTV7oXcPhKMnHWcmQaWQCTqRrYHD2yuaI1I1w=",
+        "fetchSubmodules": false
+    },
+    "fbneo": {
+        "owner": "libretro",
+        "repo": "fbneo",
+        "rev": "4d6387b7f3e3f1a9c25015789d751c6db1a9ae8c",
+        "sha256": "bIOmvhu9mOfOXoOTbwbjMHIZ3JkGz96yyFZALmqkOmk=",
+        "fetchSubmodules": false
+    },
+    "fceumm": {
+        "owner": "libretro",
+        "repo": "libretro-fceumm",
+        "rev": "a918869c18c9f30b84e04260b78b675b8a3c7be1",
+        "sha256": "nDYPrwIsvhWveDQDE0WEK7GO60iRE967p1XxXn+lNj4=",
+        "fetchSubmodules": false
+    },
+    "flycast": {
+        "owner": "libretro",
+        "repo": "flycast",
+        "rev": "ae670ea28fdbb9f08149cb598312a71a0970ca67",
+        "sha256": "jmSOfyak5mX04HgZOtCF9cz8HqAApxDXHJ6IqhqGILE=",
+        "fetchSubmodules": false
+    },
+    "fmsx": {
+        "owner": "libretro",
+        "repo": "fmsx-libretro",
+        "rev": "20c805409b8f6e1f9d61cb3dff0d5b28d82d1ee3",
+        "sha256": "uqqVF2+YpfWOKbe8aIreoImFb3/kL8ohslJkl+JivQI=",
+        "fetchSubmodules": false
+    },
+    "freeintv": {
+        "owner": "libretro",
+        "repo": "freeintv",
+        "rev": "0058a09492c5c17a4fa59ebb3601ce66844b3b25",
+        "sha256": "DA6eAl9ZR84Ow8rH9q/DVbEU83nmidwMy3kqk+hWWLQ=",
+        "fetchSubmodules": false
+    },
+    "gambatte": {
+        "owner": "libretro",
+        "repo": "gambatte-libretro",
+        "rev": "4b822bcf561856689e101dd5505d365de5ffcffe",
+        "sha256": "FsIQLd/UO5xs/aTpggSn8WLPgi83gsxRlwKR+UzH+TY=",
+        "fetchSubmodules": false
+    },
+    "genesis-plus-gx": {
+        "owner": "libretro",
+        "repo": "Genesis-Plus-GX",
+        "rev": "309a4aacfd582c312dcad61b7abfdffba4a0c66e",
+        "sha256": "jnbey1USldDZGXGXLLR5TgSJZgD+6ZFpwfIf6c8xvyM=",
+        "fetchSubmodules": false
+    },
+    "gpsp": {
+        "owner": "libretro",
+        "repo": "gpsp",
+        "rev": "a2aa78733d8daf1d550c9dc76c6ff94e8670b31c",
+        "sha256": "nKim7YkksUyZO97SvrW1TEYQlA+7Yi7xbLtyDPV4LWc=",
+        "fetchSubmodules": false
+    },
+    "gw": {
+        "owner": "libretro",
+        "repo": "gw-libretro",
+        "rev": "0f1ccca156388880bf4507ad44741f80945dfc6f",
+        "sha256": "BVpx8pL224J2u9W6UDrxzfEv4qIsh6wrf3bDdd1R850=",
+        "fetchSubmodules": false
+    },
+    "handy": {
+        "owner": "libretro",
+        "repo": "libretro-handy",
+        "rev": "e7b4e32d5f32d6e96630072072844a7dd16a02d9",
+        "sha256": "dQpEqxOcac7gdbmWu4HTvFx++us/spVMfroBlLTAgF0=",
+        "fetchSubmodules": false
+    },
+    "hatari": {
+        "owner": "libretro",
+        "repo": "hatari",
+        "rev": "cea06eebf695b078fadc0e78bb0f2b2baaca799f",
+        "sha256": "Z05IGubwdgg7X/e2ZG49zVfXuITM59HW/1gicdpDXls=",
+        "fetchSubmodules": false
+    },
+    "mame": {
+        "owner": "libretro",
+        "repo": "mame",
+        "rev": "031ac783585e7d5156a6f87a9ba20d88caf94ad6",
+        "sha256": "hLMQw5jvJTxojGwCY7iUDHcJdLZjcLzEDhW576TerJI=",
+        "fetchSubmodules": false
+    },
+    "mame2000": {
+        "owner": "libretro",
+        "repo": "mame2000-libretro",
+        "rev": "4793742b457945afb74053c8a895e6ff0b36b033",
+        "sha256": "DA9fZTic/jlYzSAIiOjfhohyEyQZiBNdIa8YCZoKZNs=",
+        "fetchSubmodules": false
+    },
+    "mame2003": {
+        "owner": "libretro",
+        "repo": "mame2003-libretro",
+        "rev": "d0ed1a565803cfada9f4088326eae616f6e5f8a3",
+        "sha256": "JGEy6Mp5qcZwaehzbj+qpdBfxHzqi6qIR7akxIj/WK8=",
+        "fetchSubmodules": false
+    },
+    "mame2003-plus": {
+        "owner": "libretro",
+        "repo": "mame2003-plus-libretro",
+        "rev": "841e44dff953a346127f15be53cb34778e20ce1c",
+        "sha256": "aCXyeDcz0uSObe4S2bQWCxIAF5aA3kne5v0HT+oXHuw=",
+        "fetchSubmodules": false
+    },
+    "mame2010": {
+        "owner": "libretro",
+        "repo": "mame2010-libretro",
+        "rev": "932e6f2c4f13b67b29ab33428a4037dee9a236a8",
+        "sha256": "HSZRSnc+0300UE9fPcUOMrXABlxHhTewkFPTqQ4Srxs=",
+        "fetchSubmodules": false
+    },
+    "mame2015": {
+        "owner": "libretro",
+        "repo": "mame2015-libretro",
+        "rev": "ef41361dc9c88172617f7bbf6cd0ead4516a3c3f",
+        "sha256": "HZrw9KKwYAJyU4NH1BEvuod/TK/nqjN03qJuSX8JP8o=",
+        "fetchSubmodules": false
+    },
+    "mame2016": {
+        "owner": "libretro",
+        "repo": "mame2016-libretro",
+        "rev": "d53c379892b0bd91b4a52fc2de491e1199f03e32",
+        "sha256": "GQ4Sdg/1nZRT4Z1Aqq1zPo96duqIGyt6sjghf9ap2Jg=",
+        "fetchSubmodules": false
+    },
+    "mesen": {
+        "owner": "SourMesen",
+        "repo": "mesen",
+        "rev": "86326e832974d984846ae078e568c023a5f76f1f",
+        "sha256": "At5rhlJ6rAnXaQrmRA1NtCCi+Ff/ytlt5dwsaXZhxXg=",
+        "fetchSubmodules": false
+    },
+    "meteor": {
+        "owner": "libretro",
+        "repo": "meteor-libretro",
+        "rev": "e533d300d0561564451bde55a2b73119c768453c",
+        "sha256": "zMkgzUz2rk0SD5ojY4AqaDlNM4k4QxuUxVBRBcn6TqQ=",
+        "fetchSubmodules": false
+    },
+    "mgba": {
+        "owner": "libretro",
+        "repo": "mgba",
+        "rev": "033e067285745909722df930deaeead80ea2d54a",
+        "sha256": "ZFmiVOf8H3PtSCWTtYc3XsIpiJI6XZ2v/HsusQsg7H8=",
+        "fetchSubmodules": false
+    },
+    "mupen64plus": {
+        "owner": "libretro",
+        "repo": "mupen64plus-libretro-nx",
+        "rev": "018ee72b4fe247b38ed161033ad12a19bb936f00",
+        "sha256": "vJz9S9lUgJp8O0NgJF6/EYymFqwZefvrT/HJLpMhgEk=",
+        "fetchSubmodules": false
+    },
+    "neocd": {
+        "owner": "libretro",
+        "repo": "neocd_libretro",
+        "rev": "83d10f3be10fff2f28aa56fc674c687528cb7f5c",
+        "sha256": "yYZGoMsUfE8cpU9i826UWQGi1l0zPJPcBDb2CINxGeQ=",
+        "fetchSubmodules": false
+    },
+    "nestopia": {
+        "owner": "libretro",
+        "repo": "nestopia",
+        "rev": "ea6f1c0631bb62bf15ab96493127dd9cfaf74d1c",
+        "sha256": "v+5000V1SR1sXWHryoZEi5sTgaRlVMrHmWKJX2stdSk=",
+        "fetchSubmodules": false
+    },
+    "np2kai": {
+        "owner": "AZO234",
+        "repo": "NP2kai",
+        "rev": "3e8fedc7c1c6f68faa26589187512474a766ee9e",
+        "sha256": "5bfh/aZOqfHz1x2s5AzZo4zq9qA4w10d9vYuuILdKJQ=",
+        "fetchSubmodules": true
+    },
+    "o2em": {
+        "owner": "libretro",
+        "repo": "libretro-o2em",
+        "rev": "c039e83f2589cb9d21b9aa5dc211954234ab8c97",
+        "sha256": "QQS4mS68C3aTZ4dw7ju6WyPlDjIBoDkIeQduCccAmDQ=",
+        "fetchSubmodules": false
+    },
+    "opera": {
+        "owner": "libretro",
+        "repo": "opera-libretro",
+        "rev": "d8aa7cecf96298bd7ee51718086f7b1bc8c57e2a",
+        "sha256": "1t+zwCVmqiPFFNCNq9XzVfRGbEA1q8v4jzhOb+wV/nA=",
+        "fetchSubmodules": false
+    },
+    "parallel-n64": {
+        "owner": "libretro",
+        "repo": "parallel-n64",
+        "rev": "0a67445ce63513584d92e5c57ea87efe0da9b3bd",
+        "sha256": "rms+T8JOp/TJ/T5a5uLj8lu1LLz/GAsJZ7UbK42C9yU=",
+        "fetchSubmodules": false
+    },
+    "pcsx_rearmed": {
+        "owner": "libretro",
+        "repo": "pcsx_rearmed",
+        "rev": "589bd99ba31de8216624dbf0cbbc016f0663ce3d",
+        "sha256": "6OtsWXTo6ca0M/cofpvWPEd0Tqy3XDa8vaa7OUTxnMU=",
+        "fetchSubmodules": false
+    },
+    "picodrive": {
+        "owner": "libretro",
+        "repo": "picodrive",
+        "rev": "9cb99ce36f93871b05c5adc2790b2e33e63b50b6",
+        "sha256": "hhdEuri1hSNLAkno8Rwd0Yls11Yh6Q7/+t4T2LH+BaE=",
+        "fetchSubmodules": true
+    },
+    "play": {
+        "owner": "jpd002",
+        "repo": "Play-",
+        "rev": "b8e16159734c2068db0f2f12b11bc16ef55058ce",
+        "sha256": "qjp1rEjmDAAB2wXITA3lAS+ERJuZinoneJToYiYRi/w=",
+        "fetchSubmodules": true
+    },
+    "ppsspp": {
+        "owner": "hrydgard",
+        "repo": "ppsspp",
+        "rev": "b6e7fe1aaf2bbb8f4faa1378bf14f434aea33cc1",
+        "sha256": "Kif6oF8Bjhgc02xKDivCG9RBxj5wxNFEwxl9nX3AZug=",
+        "fetchSubmodules": true
+    },
+    "prboom": {
+        "owner": "libretro",
+        "repo": "libretro-prboom",
+        "rev": "0f5927db4fb7e61f32bc9eccc5f809e54f71a371",
+        "sha256": "DFpDxEUHjuCcHQGxT+impj98vYITeok1SHrRN5Hba4M=",
+        "fetchSubmodules": false
+    },
+    "prosystem": {
+        "owner": "libretro",
+        "repo": "prosystem-libretro",
+        "rev": "f8652c7f2b0edc81685d03204d4963fc4ea9eccd",
+        "sha256": "Ki4Dyb//X8isP0tScqunA/qt2vkX6d2HH7rHhqk3D5k=",
+        "fetchSubmodules": false
+    },
+    "quicknes": {
+        "owner": "libretro",
+        "repo": "QuickNES_Core",
+        "rev": "71b8000b33daab8ed488f8707ccd8d5b623443f8",
+        "sha256": "Wx8nFWy0DQaZlhEMiI2KRwBK0earSVSke7/qXbs0bQ0=",
+        "fetchSubmodules": false
+    },
+    "sameboy": {
+        "owner": "libretro",
+        "repo": "sameboy",
+        "rev": "68f67b3db7747ba7aac84c5c253bc71d5a906525",
+        "sha256": "/4JQ1Tem3UgOUIcsLV0aLU+1R55hMTaT+wWElwj00Q4=",
+        "fetchSubmodules": false
+    },
+    "scummvm": {
+        "owner": "libretro",
+        "repo": "scummvm",
+        "rev": "63e57573a9ffe71a1083ff46d9cd210203b87afb",
+        "sha256": "LTFe8HIX9OSJuJj5YfPigrPAE8nrbSpDckh0hj3w52s=",
+        "fetchSubmodules": false
+    },
+    "smsplus-gx": {
+        "owner": "libretro",
+        "repo": "smsplus-gx",
+        "rev": "3f1ffede55bcfe0168caa484a00bf041ab591abf",
+        "sha256": "fD+grzMPk4uXvmzGf+f9Mor0eefBLHIumCydsSHUsck=",
+        "fetchSubmodules": false
+    },
+    "snes9x": {
+        "owner": "snes9xgit",
+        "repo": "snes9x",
+        "rev": "edc32fc0bd6aea6d5645a03f0f94b72f3cbfa43e",
+        "sha256": "Zeojdoykmk+lpG1z5EdZToGWYDQvSSQqaEr7F68iyk0=",
+        "fetchSubmodules": false
+    },
+    "snes9x2002": {
+        "owner": "libretro",
+        "repo": "snes9x2002",
+        "rev": "e16cb16efa00765b1bc3b8fee195680efb1542c7",
+        "sha256": "0dhLpNy+NUE3mE/ejEwbq3G28/a2HONS5NPslI5LOEc=",
+        "fetchSubmodules": false
+    },
+    "snes9x2005": {
+        "owner": "libretro",
+        "repo": "snes9x2005",
+        "rev": "88a46f7c085f6e2accc4c777e264b9b5cd41cf0e",
+        "sha256": "5wVKK3xhCXkvonwQRyVtd8Afggb0gv8Sv7PEYkDfKRE=",
+        "fetchSubmodules": false
+    },
+    "snes9x2010": {
+        "owner": "libretro",
+        "repo": "snes9x2010",
+        "rev": "714b1c8e08c7580430190119b07e793405773ac2",
+        "sha256": "yKSQEE+lT4V2V1XqemfziHuIt79TcvC0ranU9ounTXo=",
+        "fetchSubmodules": false
+    },
+    "stella": {
+        "owner": "stella-emu",
+        "repo": "stella",
+        "rev": "e1035b74fce26932078d00e8625688927efce34c",
+        "sha256": "+ZvSCnnoKGyToSFqUQOArolFdgUcBBFNjFw8aoVDkYI=",
+        "fetchSubmodules": false
+    },
+    "stella2014": {
+        "owner": "libretro",
+        "repo": "stella2014-libretro",
+        "rev": "934c7a2a44ef038af529b68950ddba4f7ea3478e",
+        "sha256": "s7LQ47sAPTyk4COONk4qnebxCq78zGLIjh3Y2+1fIak=",
+        "fetchSubmodules": false
+    },
+    "tgbdual": {
+        "owner": "libretro",
+        "repo": "tgbdual-libretro",
+        "rev": "1e0c4f931d8c5e859e6d3255d67247d7a2987434",
+        "sha256": "0wHv9DpKuzJ/q5vERqCo4GBLre2ggClBIWSjGnMLQq8=",
+        "fetchSubmodules": false
+    },
+    "thepowdertoy": {
+        "owner": "libretro",
+        "repo": "ThePowderToy",
+        "rev": "ac620c0a89a18774c3ad176a8a1bc596df23ff57",
+        "sha256": "C/X1DbmnucRddemEYml2zN3qr5yoXY3b+nvqfpboS0M=",
+        "fetchSubmodules": false
+    },
+    "tic80": {
+        "owner": "libretro",
+        "repo": "tic-80",
+        "rev": "bd03e6a548676745e81fa95e60b233b5a56420c2",
+        "sha256": "SXJvWX6Q3BrdajNnT4HIf6H2z7dXXvnXTJXf/TYRw4I=",
+        "fetchSubmodules": true
+    },
+    "vba-next": {
+        "owner": "libretro",
+        "repo": "vba-next",
+        "rev": "b218f48bb27b5d3885fa4076ff325922b5acd817",
+        "sha256": "idqGMbMA9mZlIh0QAba3BxpPDi/bFJJkUbnxV3xMOCo=",
+        "fetchSubmodules": false
+    },
+    "vba-m": {
+        "owner": "libretro",
+        "repo": "vbam-libretro",
+        "rev": "254f6effebe882b7d3d29d9e417c6aeeabc08026",
+        "sha256": "vJWjdqJ913NLGL4G15sRPqO/wp9xPsuhUMLUuAbDRKk=",
+        "fetchSubmodules": false
+    },
+    "vecx": {
+        "owner": "libretro",
+        "repo": "libretro-vecx",
+        "rev": "28d6efc8972313903d0802a736ff8c3bc115e78f",
+        "sha256": "VYa8s+HB8IYF+HS6SA+sO5DzpgCtnMGrh88KTVNGICY=",
+        "fetchSubmodules": false
+    },
+    "virtualjaguar": {
+        "owner": "libretro",
+        "repo": "virtualjaguar-libretro",
+        "rev": "d1b1b28a6ad2518b746e3f7537ec6d66db96ec57",
+        "sha256": "Io25dt80fqIqIxwzF2DK9J5UFz6YCUQoqThcIuxdEBo=",
+        "fetchSubmodules": false
+    },
+    "yabause": {
+        "owner": "libretro",
+        "repo": "yabause",
+        "rev": "811f9e81dbff4bed18644e19631fd4893e73e6ee",
+        "sha256": "VstPh0oMEZ7/ts58NjZxBYZZx/7dRTYePhDIQMu0WOo=",
+        "fetchSubmodules": false
+    }
+}
diff --git a/pkgs/misc/emulators/retroarch/update.py b/pkgs/misc/emulators/retroarch/update.py
new file mode 100755
index 0000000000000..db43db13575f4
--- /dev/null
+++ b/pkgs/misc/emulators/retroarch/update.py
@@ -0,0 +1,135 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i python3 -p "python3.withPackages (ps: with ps; [ requests nix-prefetch-github ])" -p "git"
+
+import json
+import sys
+from pathlib import Path
+
+from nix_prefetch_github import nix_prefetch_github
+
+SCRIPT_PATH = Path(__file__).absolute().parent
+HASHES_PATH = SCRIPT_PATH / "hashes.json"
+CORES = {
+    "atari800": {"repo": "libretro-atari800"},
+    "beetle-snes": {"repo": "beetle-bsnes-libretro"},
+    "beetle-gba": {"repo": "beetle-gba-libretro"},
+    "beetle-lynx": {"repo": "beetle-lynx-libretro"},
+    "beetle-ngp": {"repo": "beetle-ngp-libretro"},
+    "beetle-pce-fast": {"repo": "beetle-pce-fast-libretro"},
+    "beetle-pcfx": {"repo": "beetle-pcfx-libretro"},
+    "beetle-psx": {"repo": "beetle-psx-libretro"},
+    "beetle-saturn": {"repo": "beetle-saturn-libretro"},
+    "beetle-supergrafx": {"repo": "beetle-supergrafx-libretro"},
+    "beetle-wswan": {"repo": "beetle-wswan-libretro"},
+    "beetle-vb": {"repo": "beetle-vb-libretro"},
+    "bluemsx": {"repo": "bluemsx-libretro"},
+    "bsnes-mercury": {"repo": "bsnes-mercury"},
+    "citra": {"repo": "citra", "fetch_submodules": True},
+    "desmume": {"repo": "desmume"},
+    "desmume2015": {"repo": "desmume2015"},
+    "dolphin": {"repo": "dolphin"},
+    "dosbox": {"repo": "dosbox-libretro"},
+    "eightyone": {"repo": "81-libretro"},
+    "fbalpha2012": {"repo": "fbalpha2012"},
+    "fbneo": {"repo": "fbneo"},
+    "fceumm": {"repo": "libretro-fceumm"},
+    "flycast": {"repo": "flycast"},
+    "fmsx": {"repo": "fmsx-libretro"},
+    "freeintv": {"repo": "freeintv"},
+    "gambatte": {"repo": "gambatte-libretro"},
+    "genesis-plus-gx": {"repo": "Genesis-Plus-GX"},
+    "gpsp": {"repo": "gpsp"},
+    "gw": {"repo": "gw-libretro"},
+    "handy": {"repo": "libretro-handy"},
+    "hatari": {"repo": "hatari"},
+    "mame": {"repo": "mame"},
+    "mame2000": {"repo": "mame2000-libretro"},
+    "mame2003": {"repo": "mame2003-libretro"},
+    "mame2003-plus": {"repo": "mame2003-plus-libretro"},
+    "mame2010": {"repo": "mame2010-libretro"},
+    "mame2015": {"repo": "mame2015-libretro"},
+    "mame2016": {"repo": "mame2016-libretro"},
+    "mesen": {"repo": "mesen", "owner": "SourMesen"},
+    "meteor": {"repo": "meteor-libretro"},
+    "mgba": {"repo": "mgba"},
+    "mupen64plus": {"repo": "mupen64plus-libretro-nx"},
+    "neocd": {"repo": "neocd_libretro"},
+    "nestopia": {"repo": "nestopia"},
+    "np2kai": {"repo": "NP2kai", "owner": "AZO234", "fetch_submodules": True},
+    "o2em": {"repo": "libretro-o2em"},
+    "opera": {"repo": "opera-libretro"},
+    "parallel-n64": {"repo": "parallel-n64"},
+    "pcsx_rearmed": {"repo": "pcsx_rearmed"},
+    "picodrive": {"repo": "picodrive", "fetch_submodules": True},
+    "play": {"repo": "Play-", "owner": "jpd002", "fetch_submodules": True},
+    "ppsspp": {"repo": "ppsspp", "owner": "hrydgard", "fetch_submodules": True},
+    "prboom": {"repo": "libretro-prboom"},
+    "prosystem": {"repo": "prosystem-libretro"},
+    "quicknes": {"repo": "QuickNES_Core"},
+    "sameboy": {"repo": "sameboy"},
+    "scummvm": {"repo": "scummvm"},
+    "smsplus-gx": {"repo": "smsplus-gx"},
+    "snes9x": {"repo": "snes9x", "owner": "snes9xgit"},
+    "snes9x2002": {"repo": "snes9x2002"},
+    "snes9x2005": {"repo": "snes9x2005"},
+    "snes9x2010": {"repo": "snes9x2010"},
+    "stella": {"repo": "stella", "owner": "stella-emu"},
+    "stella2014": {"repo": "stella2014-libretro"},
+    "tgbdual": {"repo": "tgbdual-libretro"},
+    "thepowdertoy": {"repo": "ThePowderToy"},
+    "tic80": {"repo": "tic-80", "fetch_submodules": True},
+    "vba-next": {"repo": "vba-next"},
+    "vba-m": {"repo": "vbam-libretro"},
+    "vecx": {"repo": "libretro-vecx"},
+    "virtualjaguar": {"repo": "virtualjaguar-libretro"},
+    "yabause": {"repo": "yabause"},
+}
+
+
+def info(*msg):
+    print(*msg, file=sys.stderr)
+
+
+def get_repo_hash_fetchFromGitHub(repo, owner="libretro", fetch_submodules=False):
+    assert repo is not None, "Parameter 'repo' can't be None."
+
+    repo_hash = nix_prefetch_github(
+        owner=owner, repo=repo, fetch_submodules=fetch_submodules
+    )
+    return {
+        "owner": repo_hash.repository.owner,
+        "repo": repo_hash.repository.name,
+        "rev": repo_hash.rev,
+        "sha256": repo_hash.sha256,
+        "fetchSubmodules": repo_hash.fetch_submodules,
+    }
+
+
+def get_repo_hash(fetcher="fetchFromGitHub", **kwargs):
+    if fetcher == "fetchFromGitHub":
+        return get_repo_hash_fetchFromGitHub(**kwargs)
+    else:
+        raise ValueError(f"Unsupported fetcher: {fetcher}")
+
+
+def get_repo_hashes():
+    repo_hashes = {}
+
+    for core, repo in CORES.items():
+        info(f"Getting repo hash for '{core}'...")
+        repo_hashes[core] = get_repo_hash(**repo)
+
+    return repo_hashes
+
+
+def main():
+    repo_hashes = get_repo_hashes()
+    info(f"Generating '{HASHES_PATH}'...")
+    with open(HASHES_PATH, "w") as f:
+        f.write(json.dumps(repo_hashes, indent=4))
+        f.write("\n")
+    info("Finished!")
+
+
+if __name__ == "__main__":
+    main()
diff --git a/pkgs/misc/emulators/retroarch/wrapper.nix b/pkgs/misc/emulators/retroarch/wrapper.nix
index 4cc7ad404be05..b8fbd70ecc463 100644
--- a/pkgs/misc/emulators/retroarch/wrapper.nix
+++ b/pkgs/misc/emulators/retroarch/wrapper.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, makeWrapper, retroarch, cores }:
+{ stdenv, lib, makeWrapper, retroarch, cores ? [ ] }:
 
 stdenv.mkDerivation {
   pname = "retroarch";
@@ -8,10 +8,10 @@ stdenv.mkDerivation {
 
   buildCommand = ''
     mkdir -p $out/lib
-    $(for coreDir in $cores
+    for coreDir in $cores
     do
-      $(ln -s $coreDir/* $out/lib/.)
-    done)
+      ln -s $coreDir/* $out/lib/.
+    done
 
     ln -s -t $out ${retroarch}/share
 
diff --git a/pkgs/misc/emulators/ryujinx/default.nix b/pkgs/misc/emulators/ryujinx/default.nix
index 43c98cbacac2b..86716ed5d535c 100644
--- a/pkgs/misc/emulators/ryujinx/default.nix
+++ b/pkgs/misc/emulators/ryujinx/default.nix
@@ -6,13 +6,13 @@
 
 buildDotnetModule rec {
   pname = "ryujinx";
-  version = "1.0.7101"; # Versioning is based off of the official appveyor builds: https://ci.appveyor.com/project/gdkchan/ryujinx
+  version = "1.0.7105"; # Versioning is based off of the official appveyor builds: https://ci.appveyor.com/project/gdkchan/ryujinx
 
   src = fetchFromGitHub {
     owner = "Ryujinx";
     repo = "Ryujinx";
-    rev = "911ea38e939459c652c6e27a28599340a61267dc";
-    sha256 = "0znn5bcjhajs26y2ykizpya11ism27zlpbsrf12a25ak4vj6pzvx";
+    rev = "b9d83cc97ee1cb8c60d9b01c162bab742567fe6e";
+    sha256 = "0plchh8f9xhhza1wfw3ys78f0pa1bh3898fqhfhcc0kxb39px9is";
   };
 
   projectFile = "Ryujinx.sln";
diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix
index edef24895a847..ca190ee2b2b4d 100644
--- a/pkgs/misc/vim-plugins/generated.nix
+++ b/pkgs/misc/vim-plugins/generated.nix
@@ -77,12 +77,12 @@ final: prev:
 
   ale = buildVimPluginFrom2Nix {
     pname = "ale";
-    version = "2021-11-12";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "dense-analysis";
       repo = "ale";
-      rev = "76c2293e68a6cad3b192062743d25b8daa082205";
-      sha256 = "1fcc3qy425fp5qrhcgi8gagl2b33wa5m8r9xzqqawk47rkpjx5d0";
+      rev = "31dc6a61a07839ea906f6f0b80be713fb8cad1c7";
+      sha256 = "1j8fzyxl3lgc5xwklllvk7cq0qh7hdjjvv9r93xzbmr74w82410v";
     };
     meta.homepage = "https://github.com/dense-analysis/ale/";
   };
@@ -413,12 +413,12 @@ final: prev:
 
   bufferline-nvim = buildVimPluginFrom2Nix {
     pname = "bufferline.nvim";
-    version = "2021-11-01";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "bufferline.nvim";
-      rev = "782fab8a2352e872dc991c42f806dae18e848b2d";
-      sha256 = "0j5r0cgcdgnqdd0fd6y9b0nh301xyb6b2vgqc34rdk30gam7h5d1";
+      rev = "463637a3ac86dcaacbcd47aa608f53aaad749696";
+      sha256 = "0nphn0ks8xqf0l8xklqn2fv2wvizzpg1x399x9yd916q4ck92588";
     };
     meta.homepage = "https://github.com/akinsho/bufferline.nvim/";
   };
@@ -473,12 +473,12 @@ final: prev:
 
   chadtree = buildVimPluginFrom2Nix {
     pname = "chadtree";
-    version = "2021-11-14";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "chadtree";
-      rev = "26068160899310b9029dc7508afe9b996be9b5a4";
-      sha256 = "1hiqval4f02wz0lk54j9jagnn4rj9mfqazmwf1k8rz6zhw0im1fx";
+      rev = "6202def5abfbc83acfbb86110753a03e00bc97bf";
+      sha256 = "1gp0if044cqzpjfxrsn8kdk4siqm18bvdrngpqqar4rqgsx89kg1";
     };
     meta.homepage = "https://github.com/ms-jpq/chadtree/";
   };
@@ -581,12 +581,12 @@ final: prev:
 
   cmp-buffer = buildVimPluginFrom2Nix {
     pname = "cmp-buffer";
-    version = "2021-11-10";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "cmp-buffer";
-      rev = "2d85e76c725a389b72067f86fc3c65f3868b9a59";
-      sha256 = "0lvx58nchrl08jjp2gvyfrxkqdqnyi97zj86nnx184vnx8a5qcqh";
+      rev = "bfbc32a8aadbf3d21294aad45f069b7d204b34b1";
+      sha256 = "11wmq4fh5nbyswcgmw17ihx7g4naqba06a55f1cxk913aqcqqnwx";
     };
     meta.homepage = "https://github.com/hrsh7th/cmp-buffer/";
   };
@@ -833,12 +833,12 @@ final: prev:
 
   coc-lua = buildVimPluginFrom2Nix {
     pname = "coc-lua";
-    version = "2021-11-09";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "josa42";
       repo = "coc-lua";
-      rev = "9672c9cde3cce32720fafbdb65618d817b7022d8";
-      sha256 = "1y35xqzd17c8cvlrqfa10lninql2xkkkgy40wl1bwfzl5awk9rm7";
+      rev = "3a5366b11ca3c11a9e894755d365328ba36de227";
+      sha256 = "0qv73ph2wgn0j7il508zb29k04r4n5q601fih2hp264zvyqkw6sf";
     };
     meta.homepage = "https://github.com/josa42/coc-lua/";
   };
@@ -1134,12 +1134,12 @@ final: prev:
 
   Coqtail = buildVimPluginFrom2Nix {
     pname = "Coqtail";
-    version = "2021-11-11";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "whonore";
       repo = "Coqtail";
-      rev = "91112aff209866d679fc89ca7d0697938f80e59f";
-      sha256 = "0gp0a56zd1pf31z99yzwjrjq8zhinr68izqx9klj70r0h61hsm2z";
+      rev = "f38e086135c5d9b69c9a5f70f82072419d952c29";
+      sha256 = "01lf10b6b07s7ywrh16p5b52jj21hzv1vn216h9bnf4xdfz5pf9a";
     };
     meta.homepage = "https://github.com/whonore/Coqtail/";
   };
@@ -1242,12 +1242,12 @@ final: prev:
 
   ctrlp-vim = buildVimPluginFrom2Nix {
     pname = "ctrlp.vim";
-    version = "2021-10-19";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "ctrlpvim";
       repo = "ctrlp.vim";
-      rev = "61e964f2d168f52cb8e80e67d26605b52d726b16";
-      sha256 = "0qi4ip94lxfxzbkhs779v1afmvh6q0wp8fcfxxdhzgl44qlhy6hx";
+      rev = "d9388d89745bb30c20ad0051c53d301cd054f47c";
+      sha256 = "1lsr0y4q57k65qk5y17gnm8cfi7rg8r6h2h7cxkmgzn11d4p34c0";
     };
     meta.homepage = "https://github.com/ctrlpvim/ctrlp.vim/";
   };
@@ -2243,24 +2243,24 @@ final: prev:
 
   gitlinker-nvim = buildVimPluginFrom2Nix {
     pname = "gitlinker.nvim";
-    version = "2021-10-18";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "ruifm";
       repo = "gitlinker.nvim";
-      rev = "a6fb6d1ec2746fc18f81433648416edfb1a96d43";
-      sha256 = "0c417li0jx970h8qkgrww7ifzjjknfi26i7n13qx96c5axjxady5";
+      rev = "003ee482a25118cdac73faea8bd35df0399e8f8f";
+      sha256 = "0zpy1cpviia9l4z3b87534arnxfja48bjhqqb88mxjzm9gkc4rbf";
     };
     meta.homepage = "https://github.com/ruifm/gitlinker.nvim/";
   };
 
   gitsigns-nvim = buildVimPluginFrom2Nix {
     pname = "gitsigns.nvim";
-    version = "2021-11-12";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "gitsigns.nvim";
-      rev = "bfc4543262442a336e257d2d9fac16aa1de532a9";
-      sha256 = "0339qfryax4sk151p0vk3m5alpdpi52pc9zn2kwq3mqrnqf1q8d2";
+      rev = "5e49bb09f324580519d1ef41cb03bcb07536a239";
+      sha256 = "1zfwazv58y4r9cpalx522hnb9wics50m90n59yabmimb2iyp323z";
     };
     meta.homepage = "https://github.com/lewis6991/gitsigns.nvim/";
   };
@@ -2327,12 +2327,12 @@ final: prev:
 
   goto-preview = buildVimPluginFrom2Nix {
     pname = "goto-preview";
-    version = "2021-11-09";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "rmagatti";
       repo = "goto-preview";
-      rev = "b930629c018c6b30d42e8d271a32a37e0360c628";
-      sha256 = "0mly30sqbs43xmkda04jzk4knxcv7f42sddm87ky6j8ii67147ys";
+      rev = "817bae89f75c8f061f7c0198ce392dca5d16ac94";
+      sha256 = "0pxz7mrl4fsdi6pyk7zizxb7g3a11n8s36ndg3l9qsbihfxiqk5y";
     };
     meta.homepage = "https://github.com/rmagatti/goto-preview/";
   };
@@ -2519,12 +2519,12 @@ final: prev:
 
   hop-nvim = buildVimPluginFrom2Nix {
     pname = "hop.nvim";
-    version = "2021-11-07";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "phaazon";
       repo = "hop.nvim";
-      rev = "f0eaff8cc4e66820b17a08c518c22c687f714bb5";
-      sha256 = "0a67fv1vabik4g7w5h2nl9h6j8jc2jb0yd92gzhbmfi4jjj2j19a";
+      rev = "d2a9f2a6b0d075fc85ac346d3c03c4a3257bc805";
+      sha256 = "1gpgln5bfvygpkqb1p2pawq1pw5rg9j5jwgl7wmal4fik9yixp0f";
     };
     meta.homepage = "https://github.com/phaazon/hop.nvim/";
   };
@@ -2928,12 +2928,12 @@ final: prev:
 
   lean-nvim = buildVimPluginFrom2Nix {
     pname = "lean.nvim";
-    version = "2021-11-13";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "Julian";
       repo = "lean.nvim";
-      rev = "ab2128f3b44b4314a51beb768cb70666e008a185";
-      sha256 = "0db72fc9vvw7nib4z36r72m9vx1i9950d9npjgrlhhwdmb3sqg38";
+      rev = "a74b5c09bee57c4c41a4fe7e4594416f92ea05aa";
+      sha256 = "1zrzd0rahwzhyx46bfwz6gzwr513h3k5b1f5maf0qrc1jq2snd6g";
     };
     meta.homepage = "https://github.com/Julian/lean.nvim/";
   };
@@ -3072,12 +3072,12 @@ final: prev:
 
   lightspeed-nvim = buildVimPluginFrom2Nix {
     pname = "lightspeed.nvim";
-    version = "2021-11-14";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "ggandor";
       repo = "lightspeed.nvim";
-      rev = "c0ebc350e65b1f7370ec2d5b6f83bdc1ce602761";
-      sha256 = "1p5sdkbp4921ji5prylmr3idqagd0k871bfnbj4dj6fwz65ba75c";
+      rev = "d60ee2ef756e89f51ee3f41be2fbacfac965091f";
+      sha256 = "0m610jvk7zx7lri33d3b2dr60w2xy8kzlssigiciynhzs0lg9pyg";
     };
     meta.homepage = "https://github.com/ggandor/lightspeed.nvim/";
   };
@@ -3228,24 +3228,24 @@ final: prev:
 
   lualine-nvim = buildVimPluginFrom2Nix {
     pname = "lualine.nvim";
-    version = "2021-11-13";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "nvim-lualine";
       repo = "lualine.nvim";
-      rev = "e6b6caa93b900c86d8c299d92282feae3934ec39";
-      sha256 = "015pmiag8yj3ngqp6wq1mmsnwln2fq83nbji9c6z7p49cibk1anv";
+      rev = "7b608cb5731087b157bd509103b1d82d8984cba4";
+      sha256 = "04nbfml4j2yr4imvdzany4r6amakiwazgfjgd4y2h3c78pnlrb41";
     };
     meta.homepage = "https://github.com/nvim-lualine/lualine.nvim/";
   };
 
   luasnip = buildVimPluginFrom2Nix {
     pname = "luasnip";
-    version = "2021-11-09";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "l3mon4d3";
       repo = "luasnip";
-      rev = "366fd76ea226bed11966cd8b1a229cba08fa4394";
-      sha256 = "17jla5yvi0vzgi0himl8fyfmc8sl8xg1k5bzl58iq0d2ycmr08as";
+      rev = "6e10a30178240182781955ce062618c8d793a37b";
+      sha256 = "0z1n838d8fvis88a603fzzmdh1iqm41svay8ypmkbm3wcjaafjyl";
     };
     meta.homepage = "https://github.com/l3mon4d3/luasnip/";
   };
@@ -3348,12 +3348,12 @@ final: prev:
 
   minimap-vim = buildVimPluginFrom2Nix {
     pname = "minimap.vim";
-    version = "2021-10-15";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "wfxr";
       repo = "minimap.vim";
-      rev = "5c54258d34b8ae4be70a8fbc09b400eb7be0bee8";
-      sha256 = "0gy5c5v80xbgx511xk1zp2scxzmgipwad1zqpsff4grz80vzsa13";
+      rev = "f699b8296c878a5d669f3a13a9d6f916f6276bef";
+      sha256 = "1v4xhp82rw5f7zq8mfcj478p088qrcqbml1crhqi9v41gghwv9b5";
     };
     meta.homepage = "https://github.com/wfxr/minimap.vim/";
   };
@@ -4044,12 +4044,12 @@ final: prev:
 
   null-ls-nvim = buildVimPluginFrom2Nix {
     pname = "null-ls.nvim";
-    version = "2021-11-12";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "jose-elias-alvarez";
       repo = "null-ls.nvim";
-      rev = "a3ded9b1525b06136e58a95f4d9ed2f090c0f908";
-      sha256 = "0xc909lw73fbmmfvzvqwkba2akyv0c2msdfk94gcvxlm3dk910ng";
+      rev = "e460ba050d074416a64ee7881b527fb87fbad981";
+      sha256 = "1nksrmh5aj2h4r845vbz9lg7lxa8cr05p4gmcccagpmq9y0fk8fn";
     };
     meta.homepage = "https://github.com/jose-elias-alvarez/null-ls.nvim/";
   };
@@ -4092,12 +4092,12 @@ final: prev:
 
   nvim-autopairs = buildVimPluginFrom2Nix {
     pname = "nvim-autopairs";
-    version = "2021-11-09";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "windwp";
       repo = "nvim-autopairs";
-      rev = "f4f1c9f27d8514885cd851b3ae0a648e1eb15a17";
-      sha256 = "0ipb2pvkc28zp5pdb5ih5rcnzj4wkwg5i59lb3ll4cv0yj398kr9";
+      rev = "1f18e79ee9b30fec25c3f32b1ed22c3290f07bb2";
+      sha256 = "0sy5p93vqbnz01blgsk085xm791iga1yk65lp147axbib7b760kq";
     };
     meta.homepage = "https://github.com/windwp/nvim-autopairs/";
   };
@@ -4152,24 +4152,24 @@ final: prev:
 
   nvim-cmp = buildVimPluginFrom2Nix {
     pname = "nvim-cmp";
-    version = "2021-11-13";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "nvim-cmp";
-      rev = "753f5b7c92da0302efffc5ce6780dffe0602bdf3";
-      sha256 = "0b9il665jjc94bp8gdvj4ra5qsbpcfjkvlsvi8miylanfycfmqy5";
+      rev = "27d4c21e8ff7a68e6abc930ff0e74a486c0026ad";
+      sha256 = "0hp88j9r7l82nx4fbg42hmv2vcfd74f72v6aizj4zdmx3xnxnyb1";
     };
     meta.homepage = "https://github.com/hrsh7th/nvim-cmp/";
   };
 
   nvim-code-action-menu = buildVimPluginFrom2Nix {
     pname = "nvim-code-action-menu";
-    version = "2021-10-28";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "weilbith";
       repo = "nvim-code-action-menu";
-      rev = "32a02caf1cb6d5d31167945a2df9d371d68b1009";
-      sha256 = "1cpl29lz2c3fahrrz8lf9dccwy2iwdj4mn71xgn12kq3qarjijdv";
+      rev = "d3d059082eff3eb081167f8a232b1bde54bb2bdb";
+      sha256 = "0d7imklcz39ir53nr5kr0s826yqrwhrmr5p9iabs07hshyq3khgx";
     };
     meta.homepage = "https://github.com/weilbith/nvim-code-action-menu/";
   };
@@ -4356,36 +4356,36 @@ final: prev:
 
   nvim-lint = buildVimPluginFrom2Nix {
     pname = "nvim-lint";
-    version = "2021-11-08";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-lint";
-      rev = "0116b78963fd24643faa34fa1bc02f8d425a73ef";
-      sha256 = "07y1z3c2mqcwlbg682h9d98wghfh1l69y9j4igw77bdxrcmnlyrr";
+      rev = "c3c8a247fda421b0db1f2cbf50ab4340ba0ffc61";
+      sha256 = "1sa3mqm65aspa91vavg1ng36w51jsb5kdjsra4bjjmggwbphdz8w";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-lint/";
   };
 
   nvim-lsp-ts-utils = buildVimPluginFrom2Nix {
     pname = "nvim-lsp-ts-utils";
-    version = "2021-11-11";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "jose-elias-alvarez";
       repo = "nvim-lsp-ts-utils";
-      rev = "1af2922c3ab7f80654c09932c55bd5d70f13f1e3";
-      sha256 = "1qcska723k2ajimmib7i57clhdbrbqlcp4b18capsrrnxsl92pq0";
+      rev = "825630a5d28634fbb3663d1e605ff0a82b843d81";
+      sha256 = "1zj7b0g3f9kqnpzqcvh0p9wg10y7kn5mq8vzcmwsyaiwqpdijgwv";
     };
     meta.homepage = "https://github.com/jose-elias-alvarez/nvim-lsp-ts-utils/";
   };
 
   nvim-lspconfig = buildVimPluginFrom2Nix {
     pname = "nvim-lspconfig";
-    version = "2021-11-13";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "neovim";
       repo = "nvim-lspconfig";
-      rev = "4191b1fca3bafe759ae5606d19e0f0e54e9fc83b";
-      sha256 = "0fd7a9b0930kwd4c6hzfbqz6zq95skf06gc3nvb8g5my82xh5i2s";
+      rev = "27d2c116fdea5614f422dcbcae63da01a1415fcf";
+      sha256 = "10ip201ihd2jjs9mb0vafa7iqzxh0f0rs5s96rrpw4zaxzq49gkn";
     };
     meta.homepage = "https://github.com/neovim/nvim-lspconfig/";
   };
@@ -4692,12 +4692,12 @@ final: prev:
 
   onedarkpro-nvim = buildVimPluginFrom2Nix {
     pname = "onedarkpro.nvim";
-    version = "2021-11-08";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "olimorris";
       repo = "onedarkpro.nvim";
-      rev = "9015d8a1313b16cf3792830eb8d77553765adb80";
-      sha256 = "19mhfr8ih2hp9jadgphwq0g576qsbnggiknv6ipkl60d8jrhxflk";
+      rev = "fd4dd7a09bac975c94612ce3c8fa98a51bcce412";
+      sha256 = "0drjpfvkk9mmp7v2v16vwc3halxbwkwc95n0x0cz47lp2q3b7kss";
     };
     meta.homepage = "https://github.com/olimorris/onedarkpro.nvim/";
   };
@@ -4921,12 +4921,12 @@ final: prev:
 
   presence-nvim = buildVimPluginFrom2Nix {
     pname = "presence.nvim";
-    version = "2021-10-19";
+    version = "2021-11-14";
     src = fetchFromGitHub {
       owner = "andweeb";
       repo = "presence.nvim";
-      rev = "11adcec0db647625c5f4876257d2764db4621662";
-      sha256 = "0jzks4nvsw69g0gvrb8qpqszhd957fmx0ly9a11h2m5wry179ppp";
+      rev = "e0cab790474fe8bf952edeeaf9bba5128a2434f1";
+      sha256 = "1p1knd67sf4pw88y73xakay50br4zhgxr5k7az24cxmqylnn89ra";
     };
     meta.homepage = "https://github.com/andweeb/presence.nvim/";
   };
@@ -5065,12 +5065,12 @@ final: prev:
 
   rainbow = buildVimPluginFrom2Nix {
     pname = "rainbow";
-    version = "2021-11-08";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "luochen1990";
       repo = "rainbow";
-      rev = "f1cb0d3d4a4785428f7ccec9f0e69ad314d748d9";
-      sha256 = "15227jrbhagbyvd56cq1byc32hwgbsh293r9fb96419pa3rm9j1l";
+      rev = "c18071e5c7790928b763c2e88c487dfc93d84a15";
+      sha256 = "1m691f3w1zraam4cmq0sj9a86bmd7g1bhirrzqy5mg089x6n3rdc";
     };
     meta.homepage = "https://github.com/luochen1990/rainbow/";
   };
@@ -5149,12 +5149,12 @@ final: prev:
 
   refactoring-nvim = buildVimPluginFrom2Nix {
     pname = "refactoring.nvim";
-    version = "2021-11-12";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "theprimeagen";
       repo = "refactoring.nvim";
-      rev = "2fbbae64c6c27dfab5c9fae2e520bef9f778bdd8";
-      sha256 = "02mi4jbpiya3sdx1f69wyhilmjis5w7bqx562335xmw7z84ksmz7";
+      rev = "9f730d6a87a63c7bd8cbc460882ca7e673da3cf1";
+      sha256 = "1qqan1g34k11kjf9j50yfdzlgagjv3fm5yxlla9kxg2pz13b2jfc";
     };
     meta.homepage = "https://github.com/theprimeagen/refactoring.nvim/";
   };
@@ -5269,12 +5269,12 @@ final: prev:
 
   rust-tools-nvim = buildVimPluginFrom2Nix {
     pname = "rust-tools.nvim";
-    version = "2021-11-13";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "simrat39";
       repo = "rust-tools.nvim";
-      rev = "8d0fe8490258f3439aaf132fa7cb71299995bf5e";
-      sha256 = "1rbmlkyidng1s635cq4sv415p0231pnqsmds4q2fkzj2mn41wcsh";
+      rev = "9f98538d36b5f2e3ac1a11a524b52d11bafdff74";
+      sha256 = "0dfian3xi8cn4r537c8jp5qlnhgvppifgr9crrylvgj28y7vj9mw";
     };
     meta.homepage = "https://github.com/simrat39/rust-tools.nvim/";
   };
@@ -5317,24 +5317,24 @@ final: prev:
 
   SchemaStore-nvim = buildVimPluginFrom2Nix {
     pname = "SchemaStore.nvim";
-    version = "2021-11-12";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "b0o";
       repo = "SchemaStore.nvim";
-      rev = "23aa17e29c081531a14c03802523ba5e29444de5";
-      sha256 = "0890wncvhly5pg39sj2lyi6gnhlhj4v7bvaak9mn03pbzvljx3yi";
+      rev = "fa321a8512c199e04e3361fa0679198e1176dc68";
+      sha256 = "1ahsldfzqzwy83rhibyscr745s54571h6qmcmaz96rbv6k2wqyb5";
     };
     meta.homepage = "https://github.com/b0o/SchemaStore.nvim/";
   };
 
   scrollbar-nvim = buildVimPluginFrom2Nix {
     pname = "scrollbar.nvim";
-    version = "2021-06-04";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "Xuyuanp";
       repo = "scrollbar.nvim";
-      rev = "c338467dd6ef141fa8ce3172097a1f5be6c43779";
-      sha256 = "1wvzdrj8gckhh6x4szipjjb6mg0v3ix5cq5dy83lfb28psyznshw";
+      rev = "590b23af866a32277cf803aca0fd770d5b39c2e7";
+      sha256 = "1dvlmmxykf3vyhyvv5aiqbz8fd7zvpw4xq1nxnf3wyj371caawaq";
     };
     meta.homepage = "https://github.com/Xuyuanp/scrollbar.nvim/";
   };
@@ -5667,12 +5667,12 @@ final: prev:
 
   srcery-vim = buildVimPluginFrom2Nix {
     pname = "srcery-vim";
-    version = "2021-09-25";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "srcery-colors";
       repo = "srcery-vim";
-      rev = "0325ba54262c7d03450d877b44e692c88b17cf7a";
-      sha256 = "1vrvmp3ihjb8zlg5f00hs7d6km8p30g7pakaw5rdk60pxj21sw2v";
+      rev = "3d86afaa61aa45ca8d849494d9f8ceb5fc424353";
+      sha256 = "16wx3wgmrslpsm1h5fskik2lkas390fj2gjz3vwii4c5mz2ijr9m";
     };
     meta.homepage = "https://github.com/srcery-colors/srcery-vim/";
   };
@@ -6065,12 +6065,12 @@ final: prev:
 
   telescope-nvim = buildVimPluginFrom2Nix {
     pname = "telescope.nvim";
-    version = "2021-11-14";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope.nvim";
-      rev = "729492406ec3b545c4ecf2beadf7bd30c81e70e4";
-      sha256 = "0vh0r1149xqniggjdr6b92rniwcq5879y01glnsz8rzf6n236zwc";
+      rev = "9ac89ebf6755e9a3f4bae86625ec76106526e57b";
+      sha256 = "0bljlg2hwa531rp53hwx1w06awksbhxl4lm672rn74sfaxqnzv87";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope.nvim/";
   };
@@ -6210,12 +6210,12 @@ final: prev:
 
   toggleterm-nvim = buildVimPluginFrom2Nix {
     pname = "toggleterm.nvim";
-    version = "2021-11-07";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "toggleterm.nvim";
-      rev = "0b6d65d8b45e261bc17176e86abb3f631c88fc1b";
-      sha256 = "07qj7z2rrdz2n5gks7nh1xvapvdc5s641vsvg0nm54q4y72lp2ds";
+      rev = "ff168c8218b963cc7fc9d80b684d840488839bb5";
+      sha256 = "09ap50nln9130h6px3x0df3vxlc09iyl419hnr8qf75qa58gbhmr";
     };
     meta.homepage = "https://github.com/akinsho/toggleterm.nvim/";
   };
@@ -6234,12 +6234,12 @@ final: prev:
 
   traces-vim = buildVimPluginFrom2Nix {
     pname = "traces.vim";
-    version = "2021-08-27";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "markonm";
       repo = "traces.vim";
-      rev = "419ce02f68b13aa892735febc1d1887a9a11d5db";
-      sha256 = "07va4rr9xfmr93qq4nn0d3ssay4mwdvxzl4f92akib36kxnv0m69";
+      rev = "803d97786d0fbe95d33fe3c69e213518ea296839";
+      sha256 = "1hqma8pjl1ladw8iraa6cnsp9jasx4w08zxq5q63ff5mzdb1avn1";
     };
     meta.homepage = "https://github.com/markonm/traces.vim/";
   };
@@ -6438,12 +6438,12 @@ final: prev:
 
   vifm-vim = buildVimPluginFrom2Nix {
     pname = "vifm.vim";
-    version = "2021-11-13";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "vifm";
       repo = "vifm.vim";
-      rev = "225e5ada593fda06504e0c469e98e41d3b739b03";
-      sha256 = "0vrawikhv86f2g7qp8p28zcns3vfm1fyaqm1nml0hk3h4xzwnapa";
+      rev = "31c80d4f77056e89cabd9ea3e617feea076499f8";
+      sha256 = "0p64fr5l5khs4p7d677zkjq6j81mxkh5aailzk9jr82q5sskv3wf";
     };
     meta.homepage = "https://github.com/vifm/vifm.vim/";
   };
@@ -7163,7 +7163,7 @@ final: prev:
       owner = "flazz";
       repo = "vim-colorschemes";
       rev = "fd8f122cef604330c96a6a6e434682dbdfb878c9";
-      sha256 = "0kpsf6j20fgblc8vhqn7ymr52v2d1h52vc7rbxmxfwdm80nvv3g5";
+      sha256 = "1cg8q7w0vgl73aw1b9zz0zh5vw5d2pm8pm54fhfzva4azg56f416";
     };
     meta.homepage = "https://github.com/flazz/vim-colorschemes/";
   };
@@ -7710,12 +7710,12 @@ final: prev:
 
   vim-fireplace = buildVimPluginFrom2Nix {
     pname = "vim-fireplace";
-    version = "2021-08-03";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fireplace";
-      rev = "c9a155b88d629221628937eadb64a3e87f8d82d9";
-      sha256 = "1h0y4k3xypbn4lyyksjddvcdnz8nqy73qnjxm21ahsz73xk6bpwk";
+      rev = "18699186aad27dc92867527f5e3c2ad3ed51cb27";
+      sha256 = "0681c6ica9xi7cvjzlhlwcvmdvq3109xx39c06d879n7yy6kjyqi";
     };
     meta.homepage = "https://github.com/tpope/vim-fireplace/";
   };
@@ -7842,12 +7842,12 @@ final: prev:
 
   vim-fugitive = buildVimPluginFrom2Nix {
     pname = "vim-fugitive";
-    version = "2021-11-11";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fugitive";
-      rev = "2e4ee0b5d6e61c6b3bc48e844343f89615dfc6e0";
-      sha256 = "0ibks13hicpv5syk6lgrzjfbacwxfp02cmp23ry8wjm2dkzmv81s";
+      rev = "2dfaf17f9e9b2c8961eddc8ea51098fef500d189";
+      sha256 = "1y5ac8sag0lcdkq8k6rzn1cfcwyrn8fwmm3imsiq4b9883qjw2v2";
     };
     meta.homepage = "https://github.com/tpope/vim-fugitive/";
   };
@@ -8287,12 +8287,12 @@ final: prev:
 
   vim-illuminate = buildVimPluginFrom2Nix {
     pname = "vim-illuminate";
-    version = "2021-09-28";
+    version = "2021-11-14";
     src = fetchFromGitHub {
       owner = "RRethy";
       repo = "vim-illuminate";
-      rev = "084b012ce5bc1bf302b69eb73562146afe0a9756";
-      sha256 = "0rl048hny15rq5m85vl0iy11c4xiv0plr0j8b65vqmmb5r1mxmbg";
+      rev = "2beae0581caa66cf8c09fad7c7c557f92d49d2bd";
+      sha256 = "1qrc789a3aps99x89hiwwrmnxm5hm1qsjp8xjhhls6jk8scqq2qv";
     };
     meta.homepage = "https://github.com/RRethy/vim-illuminate/";
   };
@@ -8395,12 +8395,12 @@ final: prev:
 
   vim-javacomplete2 = buildVimPluginFrom2Nix {
     pname = "vim-javacomplete2";
-    version = "2021-11-09";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "artur-shaik";
       repo = "vim-javacomplete2";
-      rev = "19aec7d63eda429d056586d9bcc98f61f860c668";
-      sha256 = "055f58342ai117gq0021zwhv8ck5sca8bxrqqixbv5cjywck0r17";
+      rev = "b5c8d305df52e0cb85b3436ca1e958c22c6e2d79";
+      sha256 = "1zv6k8ld938zg000svi9q6c5jkbmvlyllxzkl41jcsx2zhqkwdiw";
     };
     meta.homepage = "https://github.com/artur-shaik/vim-javacomplete2/";
   };
@@ -8516,12 +8516,12 @@ final: prev:
 
   vim-kitty-navigator = buildVimPluginFrom2Nix {
     pname = "vim-kitty-navigator";
-    version = "2021-11-12";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "knubie";
       repo = "vim-kitty-navigator";
-      rev = "17b67e86fe25657473b6d191b1f686ef8f451e8d";
-      sha256 = "1v1aw2964f5fmfdaymdc1inrw8a0yx3scdcqnxzm2b58l735hbk6";
+      rev = "e097580586e802352f225eed467fafa90f11223e";
+      sha256 = "1lzgqaxw0y53r1qrcqx3fxb1fdqkswzkl8b6yk4xmdxig6kyhm46";
     };
     meta.homepage = "https://github.com/knubie/vim-kitty-navigator/";
   };
@@ -10558,12 +10558,12 @@ final: prev:
 
   vim-vsnip = buildVimPluginFrom2Nix {
     pname = "vim-vsnip";
-    version = "2021-11-02";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "vim-vsnip";
-      rev = "4d57a1f4efce38e0d05196f9beba4bcc6e9d1ed5";
-      sha256 = "0p6bqhddbqnfcd0wq1wy3ix082phhgiqrx593wq54fjx4wqg9xvi";
+      rev = "60ee20318550f4a5b6f7a5a8b827540c2c386898";
+      sha256 = "0gl34m17pxgyfbdqghhfcgxhbhxwvjc9r048sim1gf86wga4mq39";
     };
     meta.homepage = "https://github.com/hrsh7th/vim-vsnip/";
   };
@@ -10594,12 +10594,12 @@ final: prev:
 
   vim-wakatime = buildVimPluginFrom2Nix {
     pname = "vim-wakatime";
-    version = "2021-11-05";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "wakatime";
       repo = "vim-wakatime";
-      rev = "2464b7a65c002b3ec92f8a8fc300d52582e9eefd";
-      sha256 = "06i33hk0q41dvcr75kqq57jr88sqczqiwfhmssyxifhxfhcb6x2r";
+      rev = "0d66dd3596e414368e2b2b77e694e431a4b0bca3";
+      sha256 = "157shaarg4xdnfzp47v5nv34py0wii6s7fdgzagh4h1b5czgszyv";
     };
     meta.homepage = "https://github.com/wakatime/vim-wakatime/";
   };
@@ -10882,12 +10882,12 @@ final: prev:
 
   vimspector = buildVimPluginFrom2Nix {
     pname = "vimspector";
-    version = "2021-11-04";
+    version = "2021-11-17";
     src = fetchFromGitHub {
       owner = "puremourning";
       repo = "vimspector";
-      rev = "15eddb7445c6dc9131058631a03140d03443647a";
-      sha256 = "0xv1afx1yah867ksxf5a60v3fk1qg5g3vn72bhybqmcjidxz29p8";
+      rev = "d80485393139d15df237e856b8ef6675cfb88f6b";
+      sha256 = "1cvj7k9xxg4hp0m6lxnqklrnj5dqp4pyx4w6x0p8wh81a94r0wvw";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/puremourning/vimspector/";
@@ -10895,12 +10895,12 @@ final: prev:
 
   vimtex = buildVimPluginFrom2Nix {
     pname = "vimtex";
-    version = "2021-11-13";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "228bfcfbf8766a39e2e582af13a8fb95b93a6a0a";
-      sha256 = "0kpzdk8p8nxj76iqnzkjprymw6bykqr53nkipy4wiajv1940xpvq";
+      rev = "c3991f8a53dc8a193a23dba7645ce6b9b8d5038b";
+      sha256 = "1zn094xjskqc0pjpjp21j18s9b01j5k0kpczcwf8nxi52bb8815v";
     };
     meta.homepage = "https://github.com/lervag/vimtex/";
   };
@@ -10955,12 +10955,12 @@ final: prev:
 
   vista-vim = buildVimPluginFrom2Nix {
     pname = "vista.vim";
-    version = "2021-10-26";
+    version = "2021-11-15";
     src = fetchFromGitHub {
       owner = "liuchengxu";
       repo = "vista.vim";
-      rev = "587b6b2de244491c3fbe118ebe6739a90f3c91b2";
-      sha256 = "14qxc1f8nx5ahc8809ywgrzcq08v0qkyw6hnrd9ps7mjxqgrsppf";
+      rev = "a0469c645dcbe4033b857da27d35491f39e2f776";
+      sha256 = "1i0j11lbqdych2914chb9rlmr902q52v400y3ifzi38g5md9zv3w";
     };
     meta.homepage = "https://github.com/liuchengxu/vista.vim/";
   };
@@ -11136,12 +11136,12 @@ final: prev:
 
   YouCompleteMe = buildVimPluginFrom2Nix {
     pname = "YouCompleteMe";
-    version = "2021-11-13";
+    version = "2021-11-16";
     src = fetchFromGitHub {
       owner = "ycm-core";
       repo = "YouCompleteMe";
-      rev = "2badfc08d1e6c64403d6a5d5b42e4a3b78b4b43c";
-      sha256 = "0vf5afg6ysd9f48ndglxr40q8smah9dwsbxq6nzqy514xg1bqxbj";
+      rev = "e17fb2fc92c7c1bee6a429db0d3b432c811d0c8a";
+      sha256 = "0l95wj6ghfip2l7bsdv8frhnd92wdni6a8fi1i356x1ls2fm6vvr";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/ycm-core/YouCompleteMe/";
diff --git a/pkgs/misc/vscode-extensions/update_installed_exts.sh b/pkgs/misc/vscode-extensions/update_installed_exts.sh
index 8e0af182cec54..5af747605f592 100755
--- a/pkgs/misc/vscode-extensions/update_installed_exts.sh
+++ b/pkgs/misc/vscode-extensions/update_installed_exts.sh
@@ -1,7 +1,23 @@
 #! /usr/bin/env nix-shell
 #! nix-shell -i bash -p curl jq unzip
+# shellcheck shell=bash
 set -eu -o pipefail
 
+# can be added to your configuration with the following command and snippet:
+# $ ./pkgs/misc/vscode-extensions/update_installed_exts.sh > extensions.nix
+#
+# packages = with pkgs;
+#   (vscode-with-extensions.override {
+#     vscodeExtensions = map
+#       (extension: vscode-utils.buildVscodeMarketplaceExtension {
+#         mktplcRef = {
+#          inherit (extension) name publisher version sha256;
+#         };
+#       })
+#       (import ./extensions.nix).extensions;
+#   })
+# ]
+
 # Helper to just fail with a message and non-zero exit code.
 function fail() {
     echo "$1" >&2
diff --git a/pkgs/misc/vscode-extensions/vscode-lldb/default.nix b/pkgs/misc/vscode-extensions/vscode-lldb/default.nix
index 3a01058c99c28..2bc9321353d20 100644
--- a/pkgs/misc/vscode-extensions/vscode-lldb/default.nix
+++ b/pkgs/misc/vscode-extensions/vscode-lldb/default.nix
@@ -31,10 +31,11 @@ let
 
     buildAndTestSubdir = "adapter";
 
+    buildFeatures = [ "weak-linkage" ];
+
     cargoBuildFlags = [
       "--lib"
       "--bin=codelldb"
-      "--features=weak-linkage"
     ];
 
     # Tests are linked to liblldb but it is not available here.
diff --git a/pkgs/os-specific/linux/bcc/default.nix b/pkgs/os-specific/linux/bcc/default.nix
index 5ed8f496fc9c2..91e53d686a1b3 100644
--- a/pkgs/os-specific/linux/bcc/default.nix
+++ b/pkgs/os-specific/linux/bcc/default.nix
@@ -6,7 +6,7 @@
 
 python.pkgs.buildPythonApplication rec {
   pname = "bcc";
-  version = "0.22.0";
+  version = "0.23.0";
 
   disabled = !stdenv.isLinux;
 
@@ -14,7 +14,7 @@ python.pkgs.buildPythonApplication rec {
     owner = "iovisor";
     repo = "bcc";
     rev = "v${version}";
-    sha256 = "sha256-7FQz02APzjCjxCaw+e3H2GWz+UKsH0Dzgk9LoDgwDpU=";
+    sha256 = "sha256-4zfjr3VLg26uZ4xNKA1wayti7f2tqGvYSbwoZnr+Ygk=";
     fetchSubmodules = true;
   };
   format = "other";
diff --git a/pkgs/os-specific/linux/ddcci/default.nix b/pkgs/os-specific/linux/ddcci/default.nix
index 27de986110063..086373f1ab5ab 100644
--- a/pkgs/os-specific/linux/ddcci/default.nix
+++ b/pkgs/os-specific/linux/ddcci/default.nix
@@ -1,14 +1,17 @@
-{ lib, stdenv, fetchFromGitLab, kernel }:
+{ lib, stdenv, fetchpatch, fetchFromGitLab, kernel }:
 
 stdenv.mkDerivation rec {
   pname = "ddcci-driver";
-  version = "0.4.1";
+  # XXX: We apply a patch for the upcoming version to the source of version 0.4.1
+  # XXX: When 0.4.2 is actually released, don't forget to remove this comment,
+  # XXX: fix the rev in fetchFromGitLab, and remove the patch.
+  version = "0.4.2";
   name = "${pname}-${kernel.version}-${version}";
 
   src = fetchFromGitLab {
     owner = "${pname}-linux";
     repo = "${pname}-linux";
-    rev = "v${version}";
+    rev = "v0.4.1";
     sha256 = "1qhsm0ccwfmwn0r6sbc6ms4lf4a3iqfcgqmbs6afr6hhxkqll3fg";
   };
 
@@ -25,6 +28,13 @@ stdenv.mkDerivation rec {
       --replace depmod \#
   '';
 
+  patches = [
+    (fetchpatch {
+      url = "https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/commit/bf9d79852cbd0aa5c2e288ce51b8280f74a1f5d2.patch";
+      sha256 = "sha256-ShqVzkoRnlX4Y5ARY11YVYatFI1K7bAtLulP3/8/nwg=";
+    })
+  ];
+
   makeFlags = kernel.makeFlags ++ [
     "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
     "KVER=${kernel.modDirVersion}"
@@ -38,6 +48,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ];
     platforms = platforms.linux;
-    broken = kernel.kernelOlder "5.1" || kernel.kernelAtLeast "5.15";
+    broken = kernel.kernelOlder "5.1";
   };
 }
diff --git a/pkgs/os-specific/linux/i7z/default.nix b/pkgs/os-specific/linux/i7z/default.nix
index 2e00e9eedc3b2..7de8046483d41 100644
--- a/pkgs/os-specific/linux/i7z/default.nix
+++ b/pkgs/os-specific/linux/i7z/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "i7z";
-  version = "0.27.3";
+  version = "0.27.4";
 
   src = fetchFromGitHub {
     owner = "DimitryAndric";
     repo = "i7z";
     rev = "v${version}";
-    sha256 = "0l8wz0ffb27nkwchc606js652spk8masy3kjmzh7ygipwsary5ds";
+    sha256 = "00c4ng30ry88hcya4g1i9dngiqmz3cs31x7qh1a10nalxn1829xy";
   };
 
   buildInputs = [ ncurses ] ++ lib.optional withGui qtbase;
diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix
index f9cab463186dd..20968e3571ae3 100644
--- a/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/pkgs/os-specific/linux/kernel/common-config.nix
@@ -748,11 +748,18 @@ let
 
       BSD_PROCESS_ACCT_V3 = yes;
 
+      SERIAL_DEV_BUS = whenAtLeast "4.11" yes; # enables support for serial devices
+      SERIAL_DEV_CTRL_TTYPORT = whenAtLeast "4.11" yes; # enables support for TTY serial devices
+
       BT_HCIBTUSB_MTK = whenAtLeast "5.3" yes; # MediaTek protocol support
+      BT_HCIUART_QCA = whenAtLeast "4.3" yes; # Qualcomm Atheros protocol support
+      BT_HCIUART_SERDEV = whenAtLeast "4.12" yes; # required by BT_HCIUART_QCA
+      BT_HCIUART = whenAtLeast "2.5.45" module; # required for BT devices with serial port interface (QCA6390)
       BT_HCIUART_BCSP = option yes;
       BT_HCIUART_H4   = option yes; # UART (H4) protocol support
       BT_HCIUART_LL   = option yes;
       BT_RFCOMM_TTY   = option yes; # RFCOMM TTY support
+      BT_QCA = whenAtLeast "4.3" module; # enables QCA6390 bluetooth
 
       CLEANCACHE = option yes;
       CRASH_DUMP = option no;
diff --git a/pkgs/os-specific/linux/kernel/linux-xanmod.nix b/pkgs/os-specific/linux/kernel/linux-xanmod.nix
index f28f6c0cef556..8b95e912b0298 100644
--- a/pkgs/os-specific/linux/kernel/linux-xanmod.nix
+++ b/pkgs/os-specific/linux/kernel/linux-xanmod.nix
@@ -1,9 +1,9 @@
 { lib, stdenv, buildLinux, fetchFromGitHub, ... } @ args:
 
 let
-  version = "5.14.16";
+  version = "5.15.2";
   release = "1";
-  suffix = "xanmod${release}-cacule";
+  suffix = "xanmod${release}-tt";
 in
 buildLinux (args // rec {
   inherit version;
@@ -13,20 +13,33 @@ buildLinux (args // rec {
     owner = "xanmod";
     repo = "linux";
     rev = modDirVersion;
-    sha256 = "sha256-ro7WnN0BPxW/8sajUyGTnvmbemKJEadSBcFmjZ+Wtrs=";
+    sha256 = "sha256-3tIwj+4xf/I5srEAqECbfH343J5nzCWViq1ZnidZI24=";
   };
 
   structuredExtraConfig = with lib.kernel; {
+    # removed options
+    CFS_BANDWIDTH = lib.mkForce (option no);
+    RT_GROUP_SCHED = lib.mkForce (option no);
+    SCHED_AUTOGROUP = lib.mkForce (option no);
+
+    # AMD P-state driver
+    X86_AMD_PSTATE = yes;
+
+    # Linux RNG framework
+    LRNG = yes;
+
+    # Paragon's NTFS3 driver
+    NTFS3_FS = module;
+    NTFS3_LZX_XPRESS = yes;
+    NTFS3_FS_POSIX_ACL = yes;
+
     # Preemptive Full Tickless Kernel at 500Hz
+    SCHED_CORE = lib.mkForce (option no);
     PREEMPT_VOLUNTARY = lib.mkForce no;
     PREEMPT = lib.mkForce yes;
     NO_HZ_FULL = yes;
     HZ_500 = yes;
 
-    # Google's Multigenerational LRU Framework
-    LRU_GEN = yes;
-    LRU_GEN_ENABLED = yes;
-
     # Google's BBRv2 TCP congestion Control
     TCP_CONG_BBR2 = yes;
     DEFAULT_BBR2 = yes;
@@ -46,14 +59,12 @@ buildLinux (args // rec {
     ANDROID_BINDER_DEVICES = freeform "binder,hwbinder,vndbinder";
 
     # Futex WAIT_MULTIPLE implementation for Wine / Proton Fsync.
-    # Futex2 interface compatible w/ latest Wine / Proton Fsync.
     FUTEX = yes;
-    FUTEX2 = yes;
     FUTEX_PI = yes;
   };
 
   extraMeta = {
-    branch = "5.14-cacule";
+    branch = "5.15-tt";
     maintainers = with lib.maintainers; [ fortuneteller2k lovesegfault ];
     description = "Built with custom settings and new features built to provide a stable, responsive and smooth desktop experience";
     broken = stdenv.isAarch64;
diff --git a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
index 198a6eae6005f..244e1c1d52b14 100755
--- a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
+++ b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
@@ -29,7 +29,9 @@ upgrade_all=
 profile=/nix/var/nix/profiles/system
 buildHost=localhost
 targetHost=
-maybeSudo=()
+remoteSudo=
+# comma separated list of vars to preserve when using sudo
+preservedSudoVars=NIXOS_INSTALL_BOOTLOADER
 
 while [ "$#" -gt 0 ]; do
     i="$1"; shift 1
@@ -100,7 +102,7 @@ while [ "$#" -gt 0 ]; do
         shift 1
         ;;
       --use-remote-sudo)
-        maybeSudo=(sudo --)
+        remoteSudo=1
         ;;
       --flake)
         flake="$1"
@@ -126,8 +128,8 @@ while [ "$#" -gt 0 ]; do
     esac
 done
 
-if [ -n "$SUDO_USER" ]; then
-    maybeSudo=(sudo --)
+if [[ -n "$SUDO_USER" || -n $remoteSudo ]]; then
+    maybeSudo=(sudo --preserve-env="$preservedSudoVars" --)
 fi
 
 if [ -z "$buildHost" -a -n "$targetHost" ]; then
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix
index 818452ba20136..50327bc658f2f 100644
--- a/pkgs/os-specific/linux/zfs/default.nix
+++ b/pkgs/os-specific/linux/zfs/default.nix
@@ -202,7 +202,7 @@ let
         changelog = "https://github.com/openzfs/zfs/releases/tag/zfs-${version}";
         license = licenses.cddl;
         platforms = platforms.linux;
-        maintainers = with maintainers; [ hmenke jcumming jonringer wizeman fpletz globin mic92 ];
+        maintainers = with maintainers; [ hmenke jcumming jonringer wizeman fpletz globin ];
         mainProgram = "zfs";
         # If your Linux kernel version is not yet supported by zfs, try zfsUnstable.
         # On NixOS set the option boot.zfs.enableUnstable.
@@ -215,8 +215,8 @@ in {
   # to be adapted
   zfsStable = common {
     # check the release notes for compatible kernels
-    kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.16";
-    latestCompatibleLinuxPackages = linuxPackages_5_15;
+    kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.15";
+    latestCompatibleLinuxPackages = linuxPackages_5_14;
 
     # this package should point to the latest release.
     version = "2.1.1";
@@ -226,8 +226,8 @@ in {
 
   zfsUnstable = common {
     # check the release notes for compatible kernels
-    kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.16";
-    latestCompatibleLinuxPackages = linuxPackages_5_15;
+    kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.15";
+    latestCompatibleLinuxPackages = linuxPackages_5_14;
 
     # 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
diff --git a/pkgs/servers/gemini/gmid/default.nix b/pkgs/servers/gemini/gmid/default.nix
index f06498d583b53..803945c7a2343 100644
--- a/pkgs/servers/gemini/gmid/default.nix
+++ b/pkgs/servers/gemini/gmid/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, bison, libressl, libevent }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, bison, libressl, libevent }:
 
 stdenv.mkDerivation rec {
   pname = "gmid";
@@ -11,6 +11,14 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-BBd0AL5jRRslxzDnxcTZRR+8J5D23NAQ7mp9K+leXAQ=";
   };
 
+  patches = [
+    # Fix cross-compilation
+    (fetchpatch {
+      url = "https://github.com/omar-polo/gmid/commit/eb77afa8d308a2f4f422df2ff19f023b5b2cc591.patch";
+      sha256 = "sha256-rTTZUpfXOg7X0Ad0Y9evyU7k+aVYpJ0t9SEkNA/sSdk=";
+    })
+  ];
+
   nativeBuildInputs = [ bison ];
 
   buildInputs = [ libressl libevent ];
diff --git a/pkgs/servers/grocy/default.nix b/pkgs/servers/grocy/default.nix
index d8c73ad39b90e..b1a37c9dd2a4a 100644
--- a/pkgs/servers/grocy/default.nix
+++ b/pkgs/servers/grocy/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "grocy";
-  version = "3.1.2";
+  version = "3.1.3";
 
   src = fetchurl {
     url = "https://github.com/grocy/grocy/releases/download/v${version}/grocy_${version}.zip";
-    sha256 = "sha256-Kw2UA3jJEfGPr9jMnDmJ4GW87fwM80pQpqTz9ugXzow=";
+    sha256 = "sha256-6vgnV9HQHwJGUHGxAMXxXXiEj2kNTWqGcHnpPHvma/Q=";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/servers/heisenbridge/default.nix b/pkgs/servers/heisenbridge/default.nix
index c03b0ba8846de..0d1b538ceba81 100644
--- a/pkgs/servers/heisenbridge/default.nix
+++ b/pkgs/servers/heisenbridge/default.nix
@@ -1,16 +1,20 @@
-{ lib, fetchurl, python3Packages }:
+{ lib, fetchFromGitHub, python3Packages }:
 
-python3Packages.buildPythonPackage rec {
+python3Packages.buildPythonApplication rec {
   pname = "heisenbridge";
-  version = "1.6.0";
+  version = "1.7.0";
 
-  # Use the release tarball because it has the version set correctly using the
-  # version.txt file.
-  src = fetchurl {
-    url = "https://github.com/hifi/heisenbridge/releases/download/v${version}/heisenbridge-${version}.tar.gz";
-    sha256 = "sha256-NhHMReY48lg1FhJlCRjRiSpy+9bDLtIV+j+zX8GZcL4=";
+  src = fetchFromGitHub {
+    owner = "hifi";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-rN+qoBS9zIy5EHlFQxgAlcz9haoYJNMKJ2wlS46UOi0=";
   };
 
+  postPatch = ''
+    echo "${version}" > heisenbridge/version.txt
+  '';
+
   propagatedBuildInputs = with python3Packages; [
     aiohttp
     irc
@@ -19,6 +23,10 @@ python3Packages.buildPythonPackage rec {
     pyyaml
   ];
 
+  checkInputs = with python3Packages; [
+    pytestCheckHook
+  ];
+
   meta = with lib; {
     description = "A bouncer-style Matrix-IRC bridge.";
     homepage = "https://github.com/hifi/heisenbridge";
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index 37b078adefa19..20bbdaadbf0eb 100644
--- a/pkgs/servers/home-assistant/component-packages.nix
+++ b/pkgs/servers/home-assistant/component-packages.nix
@@ -533,7 +533,7 @@
     "mold_indicator" = ps: with ps; [ ];
     "monoprice" = ps: with ps; [ ]; # missing inputs: pymonoprice
     "moon" = ps: with ps; [ ];
-    "motion_blinds" = ps: with ps; [ aiohttp-cors ifaddr ]; # missing inputs: motionblinds
+    "motion_blinds" = ps: with ps; [ aiohttp-cors ifaddr motionblinds ];
     "motioneye" = ps: with ps; [ aiohttp-cors motioneye-client ];
     "mpchc" = ps: with ps; [ ];
     "mpd" = ps: with ps; [ mpd2 ];
diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix
index 59d2ee364b236..688afc5baa0ac 100644
--- a/pkgs/servers/home-assistant/default.nix
+++ b/pkgs/servers/home-assistant/default.nix
@@ -520,6 +520,7 @@ in with py.pkgs; buildPythonApplication rec {
     "modbus"
     "mold_indicator"
     "moon"
+    "motion_blinds"
     "motioneye"
     "mqtt"
     "mqtt_eventstream"
diff --git a/pkgs/servers/http/nginx/stable.nix b/pkgs/servers/http/nginx/stable.nix
index bb554c500e27c..5db7c65daa404 100644
--- a/pkgs/servers/http/nginx/stable.nix
+++ b/pkgs/servers/http/nginx/stable.nix
@@ -1,6 +1,6 @@
 { callPackage, ... } @ args:
 
 callPackage ./generic.nix args {
-  version = "1.20.1";
-  sha256 = "0jccnknx57yvbvx6qwwisa8rb5zm1wb54xnz0nm0phym6cay2qp4";
+  version = "1.20.2";
+  sha256 = "0hjsyjzd35qyw49w210f67g678kvzinw4kg1acb0l6c2fxspd24m";
 }
diff --git a/pkgs/servers/http/tomcat/jdbc/mysql/builder.sh b/pkgs/servers/http/tomcat/jdbc/mysql/builder.sh
deleted file mode 100644
index 14829c5e85d81..0000000000000
--- a/pkgs/servers/http/tomcat/jdbc/mysql/builder.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-source $stdenv/setup
-
-mkdir -p $out/lib
-ln -s $mysql_jdbc/share/java/mysql-connector-java.jar $out/lib/mysql-connector-java.jar
diff --git a/pkgs/servers/http/tomcat/jdbc/mysql/default.nix b/pkgs/servers/http/tomcat/jdbc/mysql/default.nix
index 7585cabccd148..9e6f346a0ec4b 100644
--- a/pkgs/servers/http/tomcat/jdbc/mysql/default.nix
+++ b/pkgs/servers/http/tomcat/jdbc/mysql/default.nix
@@ -2,12 +2,19 @@
 
 stdenv.mkDerivation {
   pname = "tomcat-mysql-jdbc";
-  builder = ./builder.sh;
-  buildInputs = [ mysql_jdbc ];
-
-  inherit mysql_jdbc;
   version = mysql_jdbc.version;
 
+  dontUnpack = true;
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/lib
+    ln -s $mysql_jdbc/share/java/mysql-connector-java.jar $out/lib/mysql-connector-java.jar
+
+    runHook postInstall
+  '';
+
   meta = {
     platforms = lib.platforms.unix;
   };
diff --git a/pkgs/servers/jackett/default.nix b/pkgs/servers/jackett/default.nix
index ffbeab36ff4f5..e2f0984bb93d8 100644
--- a/pkgs/servers/jackett/default.nix
+++ b/pkgs/servers/jackett/default.nix
@@ -1,23 +1,32 @@
-{ lib, stdenv, fetchurl, mono, makeWrapper, curl, icu60, openssl, zlib }:
+{ lib
+, buildDotnetModule
+, fetchFromGitHub
+, dotnetCorePackages
+, openssl
+}:
 
-stdenv.mkDerivation rec {
+buildDotnetModule rec {
   pname = "jackett";
-  version = "0.18.925";
+  version = "0.19.138";
 
-  src = fetchurl {
-    url = "https://github.com/Jackett/Jackett/releases/download/v${version}/Jackett.Binaries.Mono.tar.gz";
-    sha256 = "1md0iy6sx0agsnvrj9m7bq1lvp5z34x7zv3pvwy4zw8b46w97mnz";
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0qaaccc95csahylzv65ndx990kcr075jffawbjpsjfkxzflfjq9n";
   };
 
-  nativeBuildInputs = [ makeWrapper ];
+  projectFile = "src/Jackett.Server/Jackett.Server.csproj";
+  nugetDeps = ./deps.nix;
 
-  installPhase = ''
-    mkdir -p $out/{bin,share/${pname}-${version}}
-    cp -r * $out/share/${pname}-${version}
+  dotnetInstallFlags = [ "-p:TargetFramework=net5.0" ];
+  dotnet-runtime = dotnetCorePackages.aspnetcore_5_0;
 
-    makeWrapper "${mono}/bin/mono" $out/bin/Jackett \
-      --add-flags "$out/share/${pname}-${version}/JackettConsole.exe" \
-      --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ curl icu60 openssl zlib ]}
+  runtimeDeps = [ openssl ];
+
+  postFixup = ''
+    # Legacy
+    ln -s $out/bin/jackett $out/bin/Jackett
   '';
 
   meta = with lib; {
@@ -27,4 +36,5 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ edwtjo nyanloutre purcell ];
     platforms = platforms.all;
   };
+  passthru.updateScript = ./updater.sh;
 }
diff --git a/pkgs/servers/jackett/deps.nix b/pkgs/servers/jackett/deps.nix
new file mode 100644
index 0000000000000..9ac744694198b
--- /dev/null
+++ b/pkgs/servers/jackett/deps.nix
@@ -0,0 +1,250 @@
+{ fetchNuGet }: [
+  (fetchNuGet { name = "AngleSharp"; version = "0.14.0"; sha256 = "1zgwhh1fp2mmaplvpgm86rpmslix3wqfxf0d3hxx1gxwfgr6wxm6"; })
+  (fetchNuGet { name = "Autofac"; version = "5.2.0"; sha256 = "0yxks2nynl0mcg3m94cl94x50k3wa8xh9k3f2gmh8mxn5nrpl64r"; })
+  (fetchNuGet { name = "Autofac.Extensions.DependencyInjection"; version = "6.0.0"; sha256 = "0ljgzn1jlv4k0q13l9n7gjrbw49wdfjzg8rvbwzzrg73bz77vxm3"; })
+  (fetchNuGet { name = "AutoMapper"; version = "8.1.1"; sha256 = "1p2sc82lrbarhs08n2132vijfr3hv9zksb6ra12y9hfckam5lz9h"; })
+  (fetchNuGet { name = "BencodeNET"; version = "3.1.4"; sha256 = "12zim3k5wnlxgkg3310djh3zy97d6g3k3xvf87qd8pk2669vb1gw"; })
+  (fetchNuGet { name = "CommandLineParser"; version = "2.8.0"; sha256 = "1m32xyilv2b7k55jy8ddg08c20glbcj2yi545kxs9hj2ahanhrbb"; })
+  (fetchNuGet { name = "DotNet4.SocksProxy"; version = "1.4.0.1"; sha256 = "1ig2a9ism041a6qrqkxa9xhvp19yxzcadlap5i1kz97f05a2msvb"; })
+  (fetchNuGet { name = "FlareSolverrSharp"; version = "2.0.0"; sha256 = "15rs97ayh6s9g2vbn3r1bj7imazald0f22gfikw6mmyx5ghc3zrz"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore"; version = "2.2.0"; sha256 = "0vsv7hcsmnsgqhs67zp207n7m9ix3dbwm1p2ch3dizkcdvz235f9"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Antiforgery"; version = "2.2.0"; sha256 = "026wjdwjx0lgccqv0xi5gxylxzgz5ifgxf25p5pqakgrhkz0a59l"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Authentication"; version = "2.2.0"; sha256 = "0yqfzd0qq5ypmk6b9gnb1yscl75fxx9frq808cxs70ay7y7jqmgn"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Authentication.Abstractions"; version = "2.2.0"; sha256 = "0vj7fhpk0d95nkkxz4q0rma6pb4ym96mx6nms4603y0l19h0k5yh"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Authentication.Cookies"; version = "2.2.0"; sha256 = "0x7i7dmvq5ph8f21ajgb56fjvv31r4zn6pj8d7rsx0y6067vcp5d"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Authentication.Core"; version = "2.2.0"; sha256 = "1wgn45fmdi7dk9cl4cdhzgqc9mdxhfw7zg8zwns3j7qgrhlv6k8h"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Authorization"; version = "2.2.0"; sha256 = "1mpq8pmxlxfa625k2ghv6xcyy2wdpwv56xzya9mvmlnh50h1i8rx"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Authorization.Policy"; version = "2.2.0"; sha256 = "1d1zh65kfjf81j21ssmhr465vx08bra8424vgnrb22gdx03mhwd2"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Connections.Abstractions"; version = "2.2.0"; sha256 = "1rl94r8b0zq14f3dhfnvfjj1ivr81iw9zh5kdgs3zkdv0xc9x21j"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Cors"; version = "2.2.0"; sha256 = "0qskbz87i74kfbklxqfyqaccyba21kkx2lcdfa54kxj9r8daq7sc"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Cryptography.Internal"; version = "2.2.0"; sha256 = "01lg2fx85b47ldgdrhs6clsivj35x54xwc9r5xk3f1v8rr3gycsv"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.DataProtection"; version = "2.2.0"; sha256 = "09lzbp084xxy1xxfbxpqdff8phv2pzd1n5v30xfm03hhl7a038gx"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.DataProtection.Abstractions"; version = "2.2.0"; sha256 = "1gi4hpssmrrdf5lm6idkhvqbfy12bx14976y4gbhmx9z8lxaqcfz"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Diagnostics"; version = "2.2.0"; sha256 = "0hq5s2h0k2714352bdz2s3c3m6spkn4ckfw3pv9c4rmn6adbw9b1"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Diagnostics.Abstractions"; version = "2.2.0"; sha256 = "061cdhjh5w2f1frhimcgk68vx8p743jb9h4qik3lm1c734r0drm0"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.HostFiltering"; version = "2.2.0"; sha256 = "06wbgkbh24w9yxz6g8446l7nnjm3rdp1wklri710zqzr7zbfcx43"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Hosting"; version = "2.2.0"; sha256 = "1nk61mj7a4ri3p47xd0j520szwj05xid16r2bld85cp70xnpxjhx"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Hosting.Abstractions"; version = "2.1.0"; sha256 = "0sdzvjf6bz0krr2bm77zdyxpjcddadq2fqd3b4yybd6my3b5f7j2"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Hosting.Abstractions"; version = "2.2.0"; sha256 = "043k651vbfshh3s997x42ymj8nb32419m7q3sjw5q2c27anrhfhv"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Hosting.Server.Abstractions"; version = "2.1.0"; sha256 = "1xm8913slkx0cvk7gcbk1sf9518xmrajjjp3z8qhr5xdhdx1b879"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Hosting.Server.Abstractions"; version = "2.2.0"; sha256 = "0nz73bwrvhc1n7gd7xxm3p5ww2wx9qr9m9i43y20gh0c54adkygh"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Html.Abstractions"; version = "2.2.0"; sha256 = "1z5lkzb9h9wprvyxyjw4fj7bjypaibsw0cj4bz769hf0abjz8y1v"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Http"; version = "2.1.0"; sha256 = "1nrhbsr58fh6hpzxq75qvrimh0lk6pdwghs3cbv0f1zk90rar1cq"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Http"; version = "2.2.0"; sha256 = "1fcrafpa57sab3as18idqknzlxkx49n4sxzlzik3sj6pcji5j17q"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Http"; version = "2.2.2"; sha256 = "09mgjvpqdyylz9dbngql9arx46lfkiczjdf7aqr9asd5vjqlv2c8"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Http.Abstractions"; version = "2.1.0"; sha256 = "0jz5w1y661cxbh1sakyjh0813sqrc456mj53w3482ilb5xh5zhbf"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Http.Abstractions"; version = "2.2.0"; sha256 = "13s8cm6jdpydxmr0rgmzrmnp1v2r7i3rs7v9fhabk5spixdgfy6b"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Http.Extensions"; version = "2.2.0"; sha256 = "118gp1mfb8ymcvw87fzgjqwlc1d1b0l0sbfki291ydg414cz3dfn"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Http.Features"; version = "2.1.0"; sha256 = "1mwpvbq0z982f9r5ik6k15h18qviy735i55hld9vfk8694k9zwcj"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Http.Features"; version = "2.2.0"; sha256 = "0xrlq8i61vzhzzy25n80m7wh2kn593rfaii3aqnxdsxsg6sfgnx1"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.HttpOverrides"; version = "2.2.0"; sha256 = "1pbmmczxilgrf4qyaql88dc3av7kaixb1r36358kil68gl3irjy6"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.JsonPatch"; version = "2.2.0"; sha256 = "07cihb5sqkavg42nvircdwjp0b67mhrla97jgx285zdjphplg4h2"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.JsonPatch"; version = "5.0.0"; sha256 = "192mn6r73xjw8fvlss6vrv34iiavq7k8pg0w7advgj6khklw4dzx"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Localization"; version = "2.2.0"; sha256 = "08knc70cy7ycid5sbbbzy6my4b7ddj4j760k5xf1qnfb0njxhfh7"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc"; version = "2.2.0"; sha256 = "16jrikcywkd4r4jh551p8gxxw6hj3aizdzd5i7agb06gwpgqqv9c"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.Abstractions"; version = "2.2.0"; sha256 = "09p447ipd19517vy8xx9ykvspn6b4fgbm2rskpmzyw41x9wz4k0b"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.Analyzers"; version = "2.2.0"; sha256 = "1b975z00bzgh2z5hina4bzfksvc2vgnbzmi8g3q962hspg6ylh9f"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.ApiExplorer"; version = "2.2.0"; sha256 = "1ryhd1md30fgrli74qv45mhldivbasdvydw0lllg6x6jzpyrkwpa"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.Core"; version = "2.2.0"; sha256 = "1k6lkgk9zak5sczvyjbwgqnfcwcg9ks74wznqfzck8c6hns1by0m"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.Cors"; version = "2.2.0"; sha256 = "077vjxn0k5rr4s675g50rzkns6scgijxxh5iib59k77ldwpdr14q"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.DataAnnotations"; version = "2.2.0"; sha256 = "0vdhdjarh4az7g71gkvmhq6xpvwhh8si3sbrpdwb8p60i94cdyl6"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.Formatters.Json"; version = "2.2.0"; sha256 = "0421fcf2z8a6z81ql123ili32wbr3x25zpq17xjf4s9fmsr0069a"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.Localization"; version = "2.2.0"; sha256 = "0d27xirwsr3j7jacsrz6g2r4py35hgzjyy6ak6gkd07cm707wgc6"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.NewtonsoftJson"; version = "5.0.0"; sha256 = "1q3z35pxgvpf6l6ywh5wb6gfly055rk99a80rjqisyrbmza1msd1"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.Razor"; version = "2.2.0"; sha256 = "06fqg7rfyvfj3hdppkhy37ddjff2d6pg7khj6lccs9lwc732yr7q"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.Razor.Extensions"; version = "2.2.0"; sha256 = "04javqbzv7mkakqjl40j429giaagjj7hmwcljrgj8q1jknk0x9xc"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.RazorPages"; version = "2.2.0"; sha256 = "0zqyqfxzl3lkqfy9chd0ipani75q3109imlxrnhdfiwmxrd8xqbm"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.TagHelpers"; version = "2.2.0"; sha256 = "16aprk81sp2i0n0dmp318cm65mk03i58rhpijm4fz4xz51j7z8li"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Mvc.ViewFeatures"; version = "2.2.0"; sha256 = "1isflvb0ff5nfqnvdlyvmszkd42axbbz0xmdaf0d7sah0qkvvi7n"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Razor"; version = "2.2.0"; sha256 = "02ybprvsi59nwa0fdq99jvx7r26bs2bg3xjxkilc495clgg98zp0"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Razor.Design"; version = "2.2.0"; sha256 = "03pcdcbmyw050hag588b7caqilnq3cb6ndq5g6j0r7j7wf3plsn6"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Razor.Language"; version = "2.2.0"; sha256 = "0n58qdipwy5wymfhgm3anickwvnf4svb9ipbrby7ksrhhrkqvx4z"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Razor.Runtime"; version = "2.2.0"; sha256 = "1n9j5hjinm5gp39nwmcf26dwg1psl7sf7xkxnvfxsnl44mbcy695"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.ResponseCaching.Abstractions"; version = "2.2.0"; sha256 = "01sp2i2bgcn6blw1mcvg5nrlc97c9czyawwvgfi6ydzdvs6ang37"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.ResponseCompression"; version = "2.2.0"; sha256 = "0madnk92752alpc7cv2bazqlihhzgl3yj1s9ajhi3w09vg8n8pz4"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Rewrite"; version = "2.2.0"; sha256 = "0f21v96wkvxcxfz5a9nvhqf1dshvgg34g9075fb0nd57nsw289af"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Routing"; version = "2.2.0"; sha256 = "12kv602j2rxp43l1v3618yz3pdd7hqc3r98ya0bqz6y2ppvhbyws"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Routing.Abstractions"; version = "2.1.0"; sha256 = "1f8xixbg749nhv10vaf3jmdv9zjdw822hw7ikwa97h70767d8xz5"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Routing.Abstractions"; version = "2.2.0"; sha256 = "0d9wwz1rsh1fslbv1y72jpkvqv2v9n28rl3vslcg0x74lp2678ly"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Server.IIS"; version = "2.2.0"; sha256 = "0cgyw8xjr6kgvrj7rn072mr97sh4xj95f635vmjrx10b8rnypmkk"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Server.IISIntegration"; version = "2.2.0"; sha256 = "1dmk68cyh02g9fcg1bxp90dxl7xpqiqikdlh1835jgm44m985mpc"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Server.Kestrel"; version = "2.2.0"; sha256 = "0wh7hf09i9qxs9r0d5xdcx3qingsid9nxlwcyjg2r44pjs6cg1rf"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Server.Kestrel.Core"; version = "2.2.0"; sha256 = "075ffds8hwp8ps0zf84bsv9pgiaqry9njc403qack701aybci97r"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Server.Kestrel.Https"; version = "2.2.0"; sha256 = "08z447wrbzy3l9lmmas353nr17sg9yccwcg62l9ax9a6n1wvds8c"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions"; version = "2.2.0"; sha256 = "08bj95zy4zszyx1rsy8v2ai9kg4120ij6yi0zillwx3ndb3q7vfb"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets"; version = "2.2.0"; sha256 = "0vhicfnv12sz2c81czdgdlffcgrhnn1jzz9zwy3a9c2n4rn8k9k5"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.StaticFiles"; version = "2.2.0"; sha256 = "1bpggypnx8ai11jqlbyb6cir3x7cnw1mvqh6h88f3b0gg8wxnnpj"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.WebUtilities"; version = "2.1.0"; sha256 = "148snpiq4rhm44gzx8wn9ljfb286h7vd1axc9by4r4fxp0gix0kf"; })
+  (fetchNuGet { name = "Microsoft.AspNetCore.WebUtilities"; version = "2.2.0"; sha256 = "0cs1g4ing4alfbwyngxzgvkrv7z964isv1j9dzflafda4p0wxmsi"; })
+  (fetchNuGet { name = "Microsoft.Bcl.AsyncInterfaces"; version = "1.1.0"; sha256 = "1dq5yw7cy6s42193yl4iqscfw5vzkjkgv0zyy32scr4jza6ni1a1"; })
+  (fetchNuGet { name = "Microsoft.CodeAnalysis.Analyzers"; version = "1.1.0"; sha256 = "08r667hj2259wbim1p3al5qxkshydykmb7nd9ygbjlg4mmydkapc"; })
+  (fetchNuGet { name = "Microsoft.CodeAnalysis.Common"; version = "2.8.0"; sha256 = "0g4h41fs0r8lqh9pk9s4mc1090kdpa6sbxq4rc866s8hnq9s1h4j"; })
+  (fetchNuGet { name = "Microsoft.CodeAnalysis.CSharp"; version = "2.8.0"; sha256 = "0p1xvw1h2fmnxywv1j4x6p3rgarpc8mfwfgn0vflk5xfnc961f6w"; })
+  (fetchNuGet { name = "Microsoft.CodeAnalysis.Razor"; version = "2.2.0"; sha256 = "03cm9danxxnsnmrzfz2swz6zhckkgg6hrz1ycnvnjrbpk3w4v0d6"; })
+  (fetchNuGet { name = "Microsoft.CSharp"; version = "4.5.0"; sha256 = "01i28nvzccxbqmiz217fxs6hnjwmd5fafs37rd49a6qp53y6623l"; })
+  (fetchNuGet { name = "Microsoft.CSharp"; version = "4.7.0"; sha256 = "0gd67zlw554j098kabg887b5a6pq9kzavpa3jjy5w53ccjzjfy8j"; })
+  (fetchNuGet { name = "Microsoft.DiaSymReader.Native"; version = "1.7.0"; sha256 = "0l2w3xpr7dpni20mqx41hqdzkrl0k6w9a0wqmjzdqv5f1jrwhfxn"; })
+  (fetchNuGet { name = "Microsoft.DotNet.PlatformAbstractions"; version = "2.1.0"; sha256 = "1qydvyyinj3b5mraazjal3n2k7jqhn05b6n1a2f3qjkqkxi63dmy"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Caching.Abstractions"; version = "2.2.0"; sha256 = "0hhxc5dp52faha1bdqw0k426zicsv6x1kfqi30m9agr0b2hixj52"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Caching.Memory"; version = "2.2.0"; sha256 = "0bzrsn5vas86w66bd04xilnlb21nx4l6lz7d3acvy6y8ir2vb5dv"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration"; version = "3.1.8"; sha256 = "1px3f7snw2iry7h7gfxzq0vg88cc8bf5kga22p0nkrkpgrm9hasa"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration"; version = "5.0.0"; sha256 = "01m9vzlq0vg0lhckj2dimwq42niwny8g3lm13c9a401hlyg90z1p"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration.Abstractions"; version = "2.1.0"; sha256 = "03gzlr3z9j1xnr1k6y91zgxpz3pj27i3zsvjwj7i8jqnlqmk7pxd"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration.Abstractions"; version = "2.2.0"; sha256 = "1fv5277hyhfqmc0gqszyqb1ilwnijm8kc9606yia6hwr8pxyg674"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration.Abstractions"; version = "3.1.8"; sha256 = "05mlbia6vag0a0zfflv1m3ix48230wx0yib5hp7zsc72jpcmjd7q"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration.Abstractions"; version = "5.0.0"; sha256 = "0fqxkc9pjxkqylsdf26s9q21ciyk56h1w33pz3v1v4wcv8yv1v6k"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration.Binder"; version = "2.1.0"; sha256 = "0x1888w5ypavvszfmpja9krgc64527prs75vm8xbf9fv3rgsplql"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration.Binder"; version = "2.2.0"; sha256 = "10qyjdkymdmag3r807kvbnwag4j3nz65i4cwikbd77jjvz92ya3j"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration.Binder"; version = "3.0.0"; sha256 = "1415h62v6l1yjg95zrhbarwshmdd3hyphxavdim2z10lkyhsj9vz"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration.CommandLine"; version = "2.2.0"; sha256 = "09kc7a6g6r9lxcm7y445bmnmkhxkxxvmx6fxh99ixb8a1fkxrvfi"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration.EnvironmentVariables"; version = "2.2.0"; sha256 = "1af6003lmw6ms53m8wsvp9rx1alr8r9pharf6azaqcw4m99vd8c5"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration.FileExtensions"; version = "2.2.0"; sha256 = "0bwk1kh6q259nmnly90j5rbbzi9w5gigq5vyjr31c1br4j8cjmqd"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration.Json"; version = "2.2.0"; sha256 = "18cmrvlhc71bxplldbgwfjg29qflcaf4rrg2avp4g03fqwma6vvc"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Configuration.UserSecrets"; version = "2.2.0"; sha256 = "15qarrjb7q463hsfkkja3yd34zf370qwjy22586w4r22rpxwirwp"; })
+  (fetchNuGet { name = "Microsoft.Extensions.DependencyInjection"; version = "2.2.0"; sha256 = "0lvv45rvq1xbf47lz818rjydc776zk8mf7svpzh1dml4qwlx9zck"; })
+  (fetchNuGet { name = "Microsoft.Extensions.DependencyInjection"; version = "3.0.0"; sha256 = "0cqbvy49ph16rlba2f35qhi0n7vpcf5kjybvn5fbs7dchfdzw927"; })
+  (fetchNuGet { name = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "2.1.0"; sha256 = "0c0cx8r5xkjpxmcfp51959jnp55qjvq28d9vaslk08avvi1by12s"; })
+  (fetchNuGet { name = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "2.2.0"; sha256 = "1jyzfdr9651h3x6pxwhpfbb9mysfh8f8z1jvy4g117h9790r9zx5"; })
+  (fetchNuGet { name = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "3.0.0"; sha256 = "06s8j8v0w06f12jxw6vvsd0l5zqrmsvc3rr2gqx9z3gcq7mdnr3l"; })
+  (fetchNuGet { name = "Microsoft.Extensions.DependencyModel"; version = "2.1.0"; sha256 = "0dl4qhjgifm6v3jsfzvzkvddyic77ggp9fq49ah661v45gk6ilgd"; })
+  (fetchNuGet { name = "Microsoft.Extensions.FileProviders.Abstractions"; version = "2.1.0"; sha256 = "1sxls5f5cgb0wr8cwb05skqmz074683hrhmd3hhq6m5dasnzb8n3"; })
+  (fetchNuGet { name = "Microsoft.Extensions.FileProviders.Abstractions"; version = "2.2.0"; sha256 = "1f83ffb4xjwljg8dgzdsa3pa0582q6b4zm0si467fgkybqzk3c54"; })
+  (fetchNuGet { name = "Microsoft.Extensions.FileProviders.Composite"; version = "2.2.0"; sha256 = "0k3qfxb0pn9b63grbf9jv7xw40gk6m1djmi3c4inwys7lxcj2k18"; })
+  (fetchNuGet { name = "Microsoft.Extensions.FileProviders.Physical"; version = "2.2.0"; sha256 = "0lrq4bxf67pw6n9kzwzqsnxkad2ygh2zn46hjias8j7aqljglh7x"; })
+  (fetchNuGet { name = "Microsoft.Extensions.FileSystemGlobbing"; version = "2.2.0"; sha256 = "01jw7s1nb44n65qs3rk7xdzc419qwl0s5c34k031f1cc5ag3jvc2"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Hosting.Abstractions"; version = "2.1.0"; sha256 = "04vm9mdjjzg3lpp2rzpgkpn8h5bzdl3bwcr22lshd3kp602ws4k9"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Hosting.Abstractions"; version = "2.2.0"; sha256 = "1xc7xr1nq7akfahyl5in9iyxrygap2xi9nxh39rfm37sf8lk55v1"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Localization"; version = "2.2.0"; sha256 = "1k73kk5qmrvdyd7l8qxp19crw18f2p5dgk3cjx59g7vf3rkgmc6k"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Localization.Abstractions"; version = "2.2.0"; sha256 = "1yzqs5x97rj6wlg0rylj0xi3dn1bw4ps26zdqsijx621jl1r97gy"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Logging"; version = "2.1.0"; sha256 = "0dii8i7s6libfnspz2xb96ayagb4rwqj2kmr162vndivr9rmbm06"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Logging"; version = "2.2.0"; sha256 = "0bx3ljyvvcbikradq2h583rl72h8bxdz33aghk026cxzpv2mm3wm"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Logging"; version = "3.0.0"; sha256 = "1a9laql7pnka3n8ca26rsclkiijcdrzd57jyvbyrihgpb7bmzx0r"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Logging.Abstractions"; version = "2.1.0"; sha256 = "1gvgif1wcx4k6pv7gc00qv1hid945jdywy1s50s33q0hfd91hbnj"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Logging.Abstractions"; version = "2.2.0"; sha256 = "02w7hp6jicr7cl5p456k2cmrjvvhm6spg5kxnlncw3b72358m5wl"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Logging.Abstractions"; version = "3.0.0"; sha256 = "0453382r1f39hgvw631lk1hx2kas8xa1xjr6xq4wshan8d62xgd7"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Logging.Configuration"; version = "2.2.0"; sha256 = "1npblvkb4f251277sm6mc1xj2yww6nzag0azfz772nzkbdpj1q19"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Logging.Console"; version = "2.2.0"; sha256 = "1g4wcd1kac0b4l0k4blr3qxpyfaf092cs2wnsjb3paj60rhr5agf"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Logging.Debug"; version = "2.2.0"; sha256 = "1z5zzf43dw5xzvylkcgdi0q2mfhig6fmw2p5mxdxx916c5s007np"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Logging.EventSource"; version = "2.2.0"; sha256 = "18kz2bm07zfj6d4j17zkj2zai7fmbsaq4xh312nh1x4468vi088g"; })
+  (fetchNuGet { name = "Microsoft.Extensions.ObjectPool"; version = "2.1.0"; sha256 = "0i0vmfc3ch7xa3awmbw3byylprfl2d6dp7lgm8k8f215kxzl1wdn"; })
+  (fetchNuGet { name = "Microsoft.Extensions.ObjectPool"; version = "2.2.0"; sha256 = "0n1q9lvc24ii1shzy575xldgmz7imnk4dswwwcgmzz93klri9r1z"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Options"; version = "2.1.0"; sha256 = "0w9644sryd1c6r3n4lq2cgd5pn6jl3k5m38a05m7vjffa4m2spd2"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Options"; version = "2.2.0"; sha256 = "1b20yh03fg4nmmi3vlf6gf13vrdkmklshfzl3ijygcs4c2hly6v0"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Options"; version = "3.0.0"; sha256 = "1vzx8ha74y542n6w54vf60676aaz01ryklz6rm70w83v7sg2fxg3"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Options.ConfigurationExtensions"; version = "2.2.0"; sha256 = "0w95rpxl0fzcz7rp8zabv3c9bvkj9ma2mj1hrx9nipsc4dnqp4jd"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Primitives"; version = "2.1.0"; sha256 = "1r9gzwdfmb8ysnc4nzmyz5cyar1lw0qmizsvrsh252nhlyg06nmb"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Primitives"; version = "2.2.0"; sha256 = "0znah6arbcqari49ymigg3wiy2hgdifz8zsq8vdc3ynnf45r7h0c"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Primitives"; version = "3.0.0"; sha256 = "1d89yybxm7c30h5w79psybmpvy0pw7ha9r0y70f7i0kxgp8n62bk"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Primitives"; version = "3.1.8"; sha256 = "1p48hk3r9ikv36wdpwdrbvaccziazncf7nl60fr82i04199lfhgl"; })
+  (fetchNuGet { name = "Microsoft.Extensions.Primitives"; version = "5.0.0"; sha256 = "0swqcknyh87ns82w539z1mvy804pfwhgzs97cr3nwqk6g5s42gd6"; })
+  (fetchNuGet { name = "Microsoft.Extensions.WebEncoders"; version = "2.2.0"; sha256 = "1mhnichccw6mjf37d38q2i1kr7qp485m7apa1b872ji0q16yy1y3"; })
+  (fetchNuGet { name = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
+  (fetchNuGet { name = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
+  (fetchNuGet { name = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
+  (fetchNuGet { name = "Microsoft.NETFramework.ReferenceAssemblies"; version = "1.0.0"; sha256 = "0na724xhvqm63vq9y18fl9jw9q2v99bdwr353378s5fsi11qzxp9"; })
+  (fetchNuGet { name = "Microsoft.NETFramework.ReferenceAssemblies.net461"; version = "1.0.0"; sha256 = "00vkn4c6i0rn1l9pv912y0wgb9h6ks76qah8hvk441nari8fqbm1"; })
+  (fetchNuGet { name = "Microsoft.Net.Http.Headers"; version = "2.1.0"; sha256 = "1a02bll0flsin9grd3jxbi76ycl42qamynalbp7qbqcsprabw3ai"; })
+  (fetchNuGet { name = "Microsoft.Net.Http.Headers"; version = "2.2.0"; sha256 = "0w6lrk9z67bcirq2cj2ldfhnizc6id77ba6i30hjzgqjlyhh1gx5"; })
+  (fetchNuGet { name = "Microsoft.Win32.Registry"; version = "4.5.0"; sha256 = "1zapbz161ji8h82xiajgriq6zgzmb1f3ar517p2h63plhsq5gh2q"; })
+  (fetchNuGet { name = "Microsoft.Win32.Registry"; version = "5.0.0"; sha256 = "102hvhq2gmlcbq8y2cb7hdr2dnmjzfp2k3asr1ycwrfacwyaak7n"; })
+  (fetchNuGet { name = "MimeMapping"; version = "1.0.1.30"; sha256 = "03523g0kniwqzm30arnkds79j2gqjmhp5297xg4472l6iyfwwmln"; })
+  (fetchNuGet { name = "Mono.Posix.NETStandard"; version = "1.0.0"; sha256 = "0xlja36hwpjm837haq15mjh2prcf68lyrmn72nvgpz8qnf9vappw"; })
+  (fetchNuGet { name = "NETStandard.Library"; version = "2.0.3"; sha256 = "1fn9fxppfcg4jgypp2pmrpr6awl3qz1xmnri0cygpkwvyx27df1y"; })
+  (fetchNuGet { name = "Newtonsoft.Json"; version = "10.0.1"; sha256 = "15ncqic3p2rzs8q8ppi0irl2miq75kilw4lh8yfgjq96id0ds3hv"; })
+  (fetchNuGet { name = "Newtonsoft.Json"; version = "11.0.2"; sha256 = "1784xi44f4k8v1fr696hsccmwpy94bz7kixxqlri98zhcxn406b2"; })
+  (fetchNuGet { name = "Newtonsoft.Json"; version = "12.0.2"; sha256 = "0w2fbji1smd2y7x25qqibf1qrznmv4s6s0jvrbvr6alb7mfyqvh5"; })
+  (fetchNuGet { name = "Newtonsoft.Json"; version = "12.0.3"; sha256 = "17dzl305d835mzign8r15vkmav2hq8l6g7942dfjpnzr17wwl89x"; })
+  (fetchNuGet { name = "Newtonsoft.Json"; version = "9.0.1"; sha256 = "0mcy0i7pnfpqm4pcaiyzzji4g0c8i3a5gjz28rrr28110np8304r"; })
+  (fetchNuGet { name = "Newtonsoft.Json.Bson"; version = "1.0.1"; sha256 = "1r1hvj5gjl466bya2bfl5aaj8rbwyf5x1msg710wf3k2llbci1xa"; })
+  (fetchNuGet { name = "Newtonsoft.Json.Bson"; version = "1.0.2"; sha256 = "0c27bhy9x3c2n26inq32kmp6drpm71n6mqnmcr19wrlcaihglj35"; })
+  (fetchNuGet { name = "NLog"; version = "4.7.5"; sha256 = "0bx890dmwpx569982m532ibxlfh0n24hz1hkkxnxkpvximm4hsm5"; })
+  (fetchNuGet { name = "NLog.Extensions.Logging"; version = "1.6.4"; sha256 = "0yxx1mvz2d54kq00x38dgql8lssjxv5mk1yvx73v3qff1qxi7iyz"; })
+  (fetchNuGet { name = "NLog.Web.AspNetCore"; version = "4.9.3"; sha256 = "1mv5zaiyysp9j3h90i1v1rk0b6a4cv8ll6l8gj634y6ppshb8xkj"; })
+  (fetchNuGet { name = "Polly"; version = "7.2.1"; sha256 = "0cjmjkr2kq2q2cch30m95hms8mq73pzcqcirzvpzcl0rirvp3map"; })
+  (fetchNuGet { name = "SharpZipLib"; version = "1.2.0"; sha256 = "0ynhx1qkjm723bwjwsrdviw1d2s9azndpa12dagrjshhma3igqm5"; })
+  (fetchNuGet { name = "System.AppContext"; version = "4.3.0"; sha256 = "1649qvy3dar900z3g817h17nl8jp4ka5vcfmsr05kh0fshn7j3ya"; })
+  (fetchNuGet { name = "System.Buffers"; version = "4.4.0"; sha256 = "183f8063w8zqn99pv0ni0nnwh7fgx46qzxamwnans55hhs2l0g19"; })
+  (fetchNuGet { name = "System.Buffers"; version = "4.5.0"; sha256 = "1ywfqn4md6g3iilpxjn5dsr0f5lx6z0yvhqp4pgjcamygg73cz2c"; })
+  (fetchNuGet { name = "System.Buffers"; version = "4.5.1"; sha256 = "04kb1mdrlcixj9zh1xdi5as0k0qi8byr5mi3p3jcxx72qz93s2y3"; })
+  (fetchNuGet { name = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
+  (fetchNuGet { name = "System.Collections.Concurrent"; version = "4.3.0"; sha256 = "0wi10md9aq33jrkh2c24wr2n9hrpyamsdhsxdcnf43b7y86kkii8"; })
+  (fetchNuGet { name = "System.Collections.Immutable"; version = "1.3.1"; sha256 = "17615br2x5riyx8ivf1dcqwj6q3ipq1bi5hqhw54yfyxmx38ddva"; })
+  (fetchNuGet { name = "System.Collections.Immutable"; version = "1.5.0"; sha256 = "1d5gjn5afnrf461jlxzawcvihz195gayqpcfbv6dd7pxa9ialn06"; })
+  (fetchNuGet { name = "System.ComponentModel.Annotations"; version = "4.5.0"; sha256 = "1jj6f6g87k0iwsgmg3xmnn67a14mq88np0l1ys5zkxhkvbc8976p"; })
+  (fetchNuGet { name = "System.Console"; version = "4.3.0"; sha256 = "1flr7a9x920mr5cjsqmsy9wgnv3lvd0h1g521pdr1lkb2qycy7ay"; })
+  (fetchNuGet { name = "System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y"; })
+  (fetchNuGet { name = "System.Diagnostics.DiagnosticSource"; version = "4.5.0"; sha256 = "1y8m0p3127nak5yspapfnz25qc9x53gqpvwr3hdpsvrcd2r1pgyj"; })
+  (fetchNuGet { name = "System.Diagnostics.EventLog"; version = "5.0.0"; sha256 = "0cii8iq25awhlc3bl8i863b9415qisnhd3fkdwf41v4bpli6i5fr"; })
+  (fetchNuGet { name = "System.Diagnostics.FileVersionInfo"; version = "4.3.0"; sha256 = "094hx249lb3vb336q7dg3v257hbxvz2jnalj695l7cg5kxzqwai7"; })
+  (fetchNuGet { name = "System.Diagnostics.StackTrace"; version = "4.3.0"; sha256 = "0ash4h9k0m7xsm0yl79r0ixrdz369h7y922wipp5gladmlbvpyjd"; })
+  (fetchNuGet { name = "System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "0in3pic3s2ddyibi8cvgl102zmvp9r9mchh82ns9f0ms4basylw1"; })
+  (fetchNuGet { name = "System.Dynamic.Runtime"; version = "4.3.0"; sha256 = "1d951hrvrpndk7insiag80qxjbf2y0y39y8h5hnq9612ws661glk"; })
+  (fetchNuGet { name = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; })
+  (fetchNuGet { name = "System.IO"; version = "4.3.0"; sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f"; })
+  (fetchNuGet { name = "System.IO.Compression"; version = "4.3.0"; sha256 = "084zc82yi6yllgda0zkgl2ys48sypiswbiwrv7irb3r0ai1fp4vz"; })
+  (fetchNuGet { name = "System.IO.FileSystem"; version = "4.3.0"; sha256 = "0z2dfrbra9i6y16mm9v1v6k47f0fm617vlb7s5iybjjsz6g1ilmw"; })
+  (fetchNuGet { name = "System.IO.FileSystem.AccessControl"; version = "5.0.0"; sha256 = "0ixl68plva0fsj3byv76bai7vkin86s6wyzr8vcav3szl862blvk"; })
+  (fetchNuGet { name = "System.IO.FileSystem.Primitives"; version = "4.3.0"; sha256 = "0j6ndgglcf4brg2lz4wzsh1av1gh8xrzdsn9f0yznskhqn1xzj9c"; })
+  (fetchNuGet { name = "System.IO.Pipelines"; version = "4.5.2"; sha256 = "045sn3vyk5xysjjm19q4dj5c1g1rf8l98n4qsl9pl9id4fn08yq1"; })
+  (fetchNuGet { name = "System.IO.Pipelines"; version = "4.6.0"; sha256 = "0r9ygjbxpyi6jgb67qnpbp42b7yvvhgmcjxnb50k3lb416claavh"; })
+  (fetchNuGet { name = "System.Linq"; version = "4.3.0"; sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7"; })
+  (fetchNuGet { name = "System.Linq.Expressions"; version = "4.3.0"; sha256 = "0ky2nrcvh70rqq88m9a5yqabsl4fyd17bpr63iy2mbivjs2nyypv"; })
+  (fetchNuGet { name = "System.Memory"; version = "4.5.0"; sha256 = "1layqpcx1q4l805fdnj2dfqp6ncx2z42ca06rgsr6ikq4jjgbv30"; })
+  (fetchNuGet { name = "System.Memory"; version = "4.5.1"; sha256 = "0f07d7hny38lq9w69wx4lxkn4wszrqf9m9js6fh9is645csm167c"; })
+  (fetchNuGet { name = "System.Memory"; version = "4.5.2"; sha256 = "1g24dwqfcmf4gpbgbhaw1j49xmpsz389l6bw2xxbsmnzvsf860ld"; })
+  (fetchNuGet { name = "System.Memory"; version = "4.5.3"; sha256 = "0naqahm3wljxb5a911d37mwjqjdxv9l0b49p5dmfyijvni2ppy8a"; })
+  (fetchNuGet { name = "System.Memory"; version = "4.5.4"; sha256 = "14gbbs22mcxwggn0fcfs1b062521azb9fbb7c113x0mq6dzq9h6y"; })
+  (fetchNuGet { name = "System.Numerics.Vectors"; version = "4.4.0"; sha256 = "0rdvma399070b0i46c4qq1h2yvjj3k013sqzkilz4bz5cwmx1rba"; })
+  (fetchNuGet { name = "System.Numerics.Vectors"; version = "4.5.0"; sha256 = "1kzrj37yzawf1b19jq0253rcs8hsq1l2q8g69d7ipnhzb0h97m59"; })
+  (fetchNuGet { name = "System.Reflection"; version = "4.3.0"; sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m"; })
+  (fetchNuGet { name = "System.Reflection.Emit"; version = "4.3.0"; sha256 = "11f8y3qfysfcrscjpjym9msk7lsfxkk4fmz9qq95kn3jd0769f74"; })
+  (fetchNuGet { name = "System.Reflection.Emit.ILGeneration"; version = "4.3.0"; sha256 = "0w1n67glpv8241vnpz1kl14sy7zlnw414aqwj4hcx5nd86f6994q"; })
+  (fetchNuGet { name = "System.Reflection.Metadata"; version = "1.4.2"; sha256 = "08b7b43vczlliv8k7q43jinjfrxwpljsglw7sxmc6sd7d54pd1vi"; })
+  (fetchNuGet { name = "System.Reflection.Metadata"; version = "1.6.0"; sha256 = "1wdbavrrkajy7qbdblpbpbalbdl48q3h34cchz24gvdgyrlf15r4"; })
+  (fetchNuGet { name = "System.Reflection.Primitives"; version = "4.3.0"; sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276"; })
+  (fetchNuGet { name = "System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49"; })
+  (fetchNuGet { name = "System.Runtime"; version = "4.3.0"; sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7"; })
+  (fetchNuGet { name = "System.Runtime.CompilerServices.Unsafe"; version = "4.5.0"; sha256 = "17labczwqk3jng3kkky73m0jhi8wc21vbl7cz5c0hj2p1dswin43"; })
+  (fetchNuGet { name = "System.Runtime.CompilerServices.Unsafe"; version = "4.5.1"; sha256 = "1xcrjx5fwg284qdnxyi2d0lzdm5q4frlpkp0nf6vvkx1kdz2prrf"; })
+  (fetchNuGet { name = "System.Runtime.CompilerServices.Unsafe"; version = "4.5.2"; sha256 = "1vz4275fjij8inf31np78hw50al8nqkngk04p3xv5n4fcmf1grgi"; })
+  (fetchNuGet { name = "System.Runtime.CompilerServices.Unsafe"; version = "4.5.3"; sha256 = "1afi6s2r1mh1kygbjmfba6l4f87pi5sg13p4a48idqafli94qxln"; })
+  (fetchNuGet { name = "System.Runtime.CompilerServices.Unsafe"; version = "4.7.1"; sha256 = "119br3pd85lq8zcgh4f60jzmv1g976q1kdgi3hvqdlhfbw6siz2j"; })
+  (fetchNuGet { name = "System.Runtime.CompilerServices.Unsafe"; version = "5.0.0"; sha256 = "02k25ivn50dmqx5jn8hawwmz24yf0454fjd823qk6lygj9513q4x"; })
+  (fetchNuGet { name = "System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60"; })
+  (fetchNuGet { name = "System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j"; })
+  (fetchNuGet { name = "System.Runtime.InteropServices.RuntimeInformation"; version = "4.0.0"; sha256 = "0glmvarf3jz5xh22iy3w9v3wyragcm4hfdr17v90vs7vcrm7fgp6"; })
+  (fetchNuGet { name = "System.Runtime.InteropServices.RuntimeInformation"; version = "4.3.0"; sha256 = "0q18r1sh4vn7bvqgd6dmqlw5v28flbpj349mkdish2vjyvmnb2ii"; })
+  (fetchNuGet { name = "System.Runtime.Numerics"; version = "4.3.0"; sha256 = "19rav39sr5dky7afygh309qamqqmi9kcwvz3i0c5700v0c5cg61z"; })
+  (fetchNuGet { name = "System.Security.AccessControl"; version = "4.5.0"; sha256 = "1wvwanz33fzzbnd2jalar0p0z3x0ba53vzx1kazlskp7pwyhlnq0"; })
+  (fetchNuGet { name = "System.Security.AccessControl"; version = "5.0.0"; sha256 = "17n3lrrl6vahkqmhlpn3w20afgz09n7i6rv0r3qypngwi7wqdr5r"; })
+  (fetchNuGet { name = "System.Security.Cryptography.Algorithms"; version = "4.3.0"; sha256 = "03sq183pfl5kp7gkvq77myv7kbpdnq3y0xj7vi4q1kaw54sny0ml"; })
+  (fetchNuGet { name = "System.Security.Cryptography.Cng"; version = "4.5.0"; sha256 = "1pm4ykbcz48f1hdmwpia432ha6qbb9kbrxrrp7cg3m8q8xn52ngn"; })
+  (fetchNuGet { name = "System.Security.Cryptography.Encoding"; version = "4.3.0"; sha256 = "1jr6w70igqn07k5zs1ph6xja97hxnb3mqbspdrff6cvssgrixs32"; })
+  (fetchNuGet { name = "System.Security.Cryptography.Primitives"; version = "4.3.0"; sha256 = "0pyzncsv48zwly3lw4f2dayqswcfvdwq2nz0dgwmi7fj3pn64wby"; })
+  (fetchNuGet { name = "System.Security.Cryptography.ProtectedData"; version = "5.0.0"; sha256 = "0jq1rcj5af2ydswld8ga3dyw2yi4c63wvb986b5kqsvpkwwc8x1b"; })
+  (fetchNuGet { name = "System.Security.Cryptography.X509Certificates"; version = "4.3.0"; sha256 = "0valjcz5wksbvijylxijjxb1mp38mdhv03r533vnx1q3ikzdav9h"; })
+  (fetchNuGet { name = "System.Security.Cryptography.Xml"; version = "4.5.0"; sha256 = "1rk40x0msf9k7sxnjyizagjns1z25dh3cf22bx6hsx6vhf0sk08l"; })
+  (fetchNuGet { name = "System.Security.Permissions"; version = "4.5.0"; sha256 = "192ww5rm3c9mirxgl1nzyrwd18am3izqls0hzm0fvcdjl5grvbhm"; })
+  (fetchNuGet { name = "System.Security.Principal.Windows"; version = "4.5.0"; sha256 = "0rmj89wsl5yzwh0kqjgx45vzf694v9p92r4x4q6yxldk1cv1hi86"; })
+  (fetchNuGet { name = "System.Security.Principal.Windows"; version = "5.0.0"; sha256 = "1mpk7xj76lxgz97a5yg93wi8lj0l8p157a5d50mmjy3gbz1904q8"; })
+  (fetchNuGet { name = "System.ServiceProcess.ServiceController"; version = "5.0.0"; sha256 = "1annp5kwwif6vfqn1x7vv3izwznxzb8ifvw3g9q3v0rrll26i99h"; })
+  (fetchNuGet { name = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
+  (fetchNuGet { name = "System.Text.Encoding.CodePages"; version = "4.5.0"; sha256 = "19x38911pawq4mrxrm04l2bnxwxxlzq8v8rj4cbxnfjj8pnd3vj3"; })
+  (fetchNuGet { name = "System.Text.Encoding.CodePages"; version = "5.0.0"; sha256 = "1bn2pzaaq4wx9ixirr8151vm5hynn3lmrljcgjx9yghmm4k677k0"; })
+  (fetchNuGet { name = "System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy"; })
+  (fetchNuGet { name = "System.Text.Encodings.Web"; version = "4.5.0"; sha256 = "0srd5bva52n92i90wd88pzrqjsxnfgka3ilybwh7s6sf469y5s53"; })
+  (fetchNuGet { name = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
+  (fetchNuGet { name = "System.Threading.Tasks"; version = "4.3.0"; sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7"; })
+  (fetchNuGet { name = "System.Threading.Tasks.Extensions"; version = "4.5.1"; sha256 = "1ikrplvw4m6pzjbq3bfbpr572n4i9mni577zvmrkaygvx85q3myw"; })
+  (fetchNuGet { name = "System.Threading.Tasks.Extensions"; version = "4.5.2"; sha256 = "1sh63dz0dymqcwmprp0nadm77b83vmm7lyllpv578c397bslb8hj"; })
+  (fetchNuGet { name = "System.Threading.Tasks.Parallel"; version = "4.3.0"; sha256 = "1rr3qa4hxwyj531s4nb3bwrxnxxwz617i0n9gh6x7nr7dd3ayzgh"; })
+  (fetchNuGet { name = "System.Threading.Thread"; version = "4.3.0"; sha256 = "0y2xiwdfcph7znm2ysxanrhbqqss6a3shi1z3c779pj2s523mjx4"; })
+  (fetchNuGet { name = "System.ValueTuple"; version = "4.3.0"; sha256 = "1227k7fxbxapq7dms4lvwwjdf3pr1jcsmhy2nzzhj6g6hs530hxn"; })
+  (fetchNuGet { name = "System.ValueTuple"; version = "4.5.0"; sha256 = "00k8ja51d0f9wrq4vv5z2jhq8hy31kac2rg0rv06prylcybzl8cy"; })
+  (fetchNuGet { name = "System.Xml.ReaderWriter"; version = "4.3.0"; sha256 = "0c47yllxifzmh8gq6rq6l36zzvw4kjvlszkqa9wq3fr59n0hl3s1"; })
+  (fetchNuGet { name = "System.Xml.XDocument"; version = "4.3.0"; sha256 = "08h8fm4l77n0nd4i4fk2386y809bfbwqb7ih9d7564ifcxr5ssxd"; })
+  (fetchNuGet { name = "System.Xml.XmlDocument"; version = "4.3.0"; sha256 = "0bmz1l06dihx52jxjr22dyv5mxv6pj4852lx68grjm7bivhrbfwi"; })
+  (fetchNuGet { name = "System.Xml.XPath"; version = "4.3.0"; sha256 = "1cv2m0p70774a0sd1zxc8fm8jk3i5zk2bla3riqvi8gsm0r4kpci"; })
+  (fetchNuGet { name = "System.Xml.XPath.XDocument"; version = "4.3.0"; sha256 = "1wxckyb7n1pi433xzz0qcwcbl1swpra64065mbwwi8dhdc4kiabn"; })
+  (fetchNuGet { name = "YamlDotNet"; version = "8.1.2"; sha256 = "1lmi5mdw4067a8yk8gv9kilv1hljflkc45pr5vvz8n09af6gn78b"; })
+]
diff --git a/pkgs/servers/jackett/updater.sh b/pkgs/servers/jackett/updater.sh
new file mode 100755
index 0000000000000..cd0226d6b69a2
--- /dev/null
+++ b/pkgs/servers/jackett/updater.sh
@@ -0,0 +1,34 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl jq common-updater-scripts nuget-to-nix dotnet-sdk_5
+set -eo pipefail
+cd "$(dirname "${BASH_SOURCE[0]}")"
+
+deps_file="$(realpath "./deps.nix")"
+
+new_version="$(curl -s "https://api.github.com/repos/jackett/jackett/releases?per_page=1" | jq -r '.[0].name')"
+old_version="$(sed -nE 's/\s*version = "(.*)".*/\1/p' ./default.nix)"
+
+if [[ "$new_version" == "$old_version" ]]; then
+  echo "Already up to date!"
+  exit 0
+fi
+
+cd ../../..
+update-source-version jackett "${new_version//v}"
+store_src="$(nix-build . -A jackett.src --no-out-link)"
+src="$(mktemp -d /tmp/jackett-src.XXX)"
+cp -rT "$store_src" "$src"
+chmod -R +w "$src"
+
+pushd "$src"
+
+export DOTNET_NOLOGO=1
+export DOTNET_CLI_TELEMETRY_OPTOUT=1
+
+mkdir ./nuget_pkgs
+dotnet restore src/Jackett.Server/Jackett.Server.csproj --packages ./nuget_pkgs
+
+nuget-to-nix ./nuget_pkgs > "$deps_file"
+
+popd
+rm -r "$src"
diff --git a/pkgs/servers/jellyfin/node-composition.nix b/pkgs/servers/jellyfin/node-composition.nix
index d0c72d2e85360..fc96c12c5b259 100644
--- a/pkgs/servers/jellyfin/node-composition.nix
+++ b/pkgs/servers/jellyfin/node-composition.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix
index 676abec8ecca5..b1d42c8091c7d 100644
--- a/pkgs/servers/matrix-synapse/default.nix
+++ b/pkgs/servers/matrix-synapse/default.nix
@@ -11,11 +11,11 @@ in
 with python3.pkgs;
 buildPythonApplication rec {
   pname = "matrix-synapse";
-  version = "1.46.0";
+  version = "1.47.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-RcB+RSb/LZE8Q+UunyrYh28S7c7VsTmqg4mJIDVCX5U=";
+    sha256 = "sha256-SS7ETkYQ3XBihOA6TQp+6f0PNhhlUvMBR6fEYmiLT3k=";
   };
 
   patches = [
diff --git a/pkgs/servers/matrix-synapse/matrix-appservice-irc/node-composition.nix b/pkgs/servers/matrix-synapse/matrix-appservice-irc/node-composition.nix
index 6fb86dfd79e7d..f9a1999f36d73 100644
--- a/pkgs/servers/matrix-synapse/matrix-appservice-irc/node-composition.nix
+++ b/pkgs/servers/matrix-synapse/matrix-appservice-irc/node-composition.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/servers/matrix-synapse/matrix-appservice-slack/node-composition.nix b/pkgs/servers/matrix-synapse/matrix-appservice-slack/node-composition.nix
index e0d21f7d44d36..9f0040e2f4465 100644
--- a/pkgs/servers/matrix-synapse/matrix-appservice-slack/node-composition.nix
+++ b/pkgs/servers/matrix-synapse/matrix-appservice-slack/node-composition.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/servers/mautrix-signal/default.nix b/pkgs/servers/mautrix-signal/default.nix
index 012f54361f988..6b11b386421e6 100644
--- a/pkgs/servers/mautrix-signal/default.nix
+++ b/pkgs/servers/mautrix-signal/default.nix
@@ -2,13 +2,13 @@
 
 python3.pkgs.buildPythonPackage rec {
   pname = "mautrix-signal";
-  version = "unstable-2021-08-12";
+  version = "unstable-2021-11-12";
 
   src = fetchFromGitHub {
-    owner = "tulir";
-    repo = "mautrix-signal";
-    rev = "a592baaaa6c9ab7ec29edc84f069b9e9e2fc1b03";
-    sha256 = "0rvidf4ah23x8m7k7hbkwm2xrs838wnli99gh99b5hr6fqmacbwl";
+    owner = "mautrix";
+    repo = "signal";
+    rev = "2e57810e964c1701df2e69273c2f8cebbe021464";
+    sha256 = "sha256-xgn01nbY3LR4G1Yk2MgUhq116/wEhG+5vLH6HKqZE+8=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
@@ -46,7 +46,7 @@ python3.pkgs.buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    homepage = "https://github.com/tulir/mautrix-signal";
+    homepage = "https://github.com/mautrix/signal";
     description = "A Matrix-Signal puppeting bridge";
     license = licenses.agpl3Plus;
     platforms = platforms.linux;
diff --git a/pkgs/servers/mautrix-telegram/default.nix b/pkgs/servers/mautrix-telegram/default.nix
index ab0564b2cf196..33b9d1d400dbf 100644
--- a/pkgs/servers/mautrix-telegram/default.nix
+++ b/pkgs/servers/mautrix-telegram/default.nix
@@ -12,25 +12,35 @@ let
           sha256 = "ebbb777cbf9312359b897bf81ba00dae0f5cb69fba2a18265dcc18a6f5ef7519";
         };
       });
+
+      tulir-telethon = self.telethon.overridePythonAttrs (oldAttrs: rec {
+        version = "1.24.0a2";
+        pname = "tulir-telethon";
+        src = oldAttrs.src.override {
+          inherit pname version;
+          sha256 = "sha256-Qbx164FwC8nhesoY2fkaKvErN8g0Ph8vGcx+Cc1AqRg=";
+        };
+      });
     };
   };
 
   # officially supported database drivers
   dbDrivers = with python.pkgs; [
     psycopg2
+    aiosqlite
     # sqlite driver is already shipped with python by default
   ];
 
 in python.pkgs.buildPythonPackage rec {
   pname = "mautrix-telegram";
-  version = "0.10.1";
+  version = "0.10.2";
   disabled = python.pythonOlder "3.7";
 
   src = fetchFromGitHub {
-    owner = "tulir";
-    repo = pname;
+    owner = "mautrix";
+    repo = "telegram";
     rev = "v${version}";
-    sha256 = "sha256-1Dmc7WRlT2ivGkdrGDC1b44DE0ovQKfUR0gDiQE4h5c=";
+    sha256 = "sha256-BYsGLyxhdjBVmnZXLC5ZjwDlWcHdUGp+DsNIOXA1/Tc=";
   };
 
   patches = [ ./0001-Re-add-entrypoint.patch ./0002-Don-t-depend-on-pytest-runner.patch ];
@@ -49,7 +59,7 @@ in python.pkgs.buildPythonPackage rec {
     CommonMark
     ruamel-yaml
     python_magic
-    telethon
+    tulir-telethon
     telethon-session-sqlalchemy
     pillow
     lxml
@@ -87,7 +97,7 @@ in python.pkgs.buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    homepage = "https://github.com/tulir/mautrix-telegram";
+    homepage = "https://github.com/mautrix/telegram";
     description = "A Matrix-Telegram hybrid puppeting/relaybot bridge";
     license = licenses.agpl3Plus;
     platforms = platforms.linux;
diff --git a/pkgs/servers/mautrix-whatsapp/default.nix b/pkgs/servers/mautrix-whatsapp/default.nix
index 134ff52199258..5a84b87900120 100644
--- a/pkgs/servers/mautrix-whatsapp/default.nix
+++ b/pkgs/servers/mautrix-whatsapp/default.nix
@@ -1,19 +1,19 @@
-{ lib, buildGoModule, fetchFromGitHub, olm }:
+{ lib, buildGo117Module, fetchFromGitHub, olm }:
 
-buildGoModule rec {
+buildGo117Module rec {
   pname = "mautrix-whatsapp";
-  version = "0.1.10";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
     owner = "mautrix";
     repo = "whatsapp";
     rev = "v${version}";
-    sha256 = "sha256-4eqgmJ5CC1Glc8jG+4cQs6FbrY8Az29rCrZvFU3PAoM=";
+    sha256 = "sha256-gCbZGlZDwHw+OAlTx3rHlbd4Ntw+RaCEDTiP/1q0oJs=";
   };
 
   buildInputs = [ olm ];
 
-  vendorSha256 = "sha256-Y9mUl7fWZiXBEEDX3w2HXMlQKJntv16WeQC1bQQ7hHs=";
+  vendorSha256 = "sha256-4KDLL9FY3DrkGBDlu6G8Fp7XJfXjwLTELspyW+FBGfo=";
 
   doCheck = false;
 
diff --git a/pkgs/servers/mjolnir/default.nix b/pkgs/servers/mjolnir/default.nix
index f6444ef386acd..8480cf4e8bf17 100644
--- a/pkgs/servers/mjolnir/default.nix
+++ b/pkgs/servers/mjolnir/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mjolnir";
-  version = "1.1.20";
+  version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "mjolnir";
     rev = "v${version}";
-    sha256 = "yfMBnNriSpwitR4u664iz+8uWp/3iSTymyFajMBP5xg=";
+    sha256 = "4c9LyQb5SZ1IoBayiP0C0ho4hwJDv49DhsuoQIv9bTs=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/servers/mjolnir/node-deps.nix b/pkgs/servers/mjolnir/node-deps.nix
index 30c8a33277e40..8a10a95cdd814 100644
--- a/pkgs/servers/mjolnir/node-deps.nix
+++ b/pkgs/servers/mjolnir/node-deps.nix
@@ -4,13 +4,22 @@
 
 let
   sources = {
-    "@babel/code-frame-7.14.5" = {
+    "@babel/code-frame-7.12.11" = {
       name = "_at_babel_slash_code-frame";
       packageName = "@babel/code-frame";
-      version = "7.14.5";
+      version = "7.12.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz";
-        sha512 = "9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==";
+        url = "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz";
+        sha512 = "Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==";
+      };
+    };
+    "@babel/code-frame-7.16.0" = {
+      name = "_at_babel_slash_code-frame";
+      packageName = "@babel/code-frame";
+      version = "7.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.0.tgz";
+        sha512 = "IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA==";
       };
     };
     "@babel/helper-validator-identifier-7.15.7" = {
@@ -22,31 +31,85 @@ let
         sha512 = "K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==";
       };
     };
-    "@babel/highlight-7.14.5" = {
+    "@babel/highlight-7.16.0" = {
       name = "_at_babel_slash_highlight";
       packageName = "@babel/highlight";
-      version = "7.14.5";
+      version = "7.16.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz";
-        sha512 = "qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==";
+        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.0.tgz";
+        sha512 = "t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==";
       };
     };
-    "@jest/types-27.1.1" = {
+    "@eslint/eslintrc-0.4.3" = {
+      name = "_at_eslint_slash_eslintrc";
+      packageName = "@eslint/eslintrc";
+      version = "0.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz";
+        sha512 = "J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==";
+      };
+    };
+    "@humanwhocodes/config-array-0.5.0" = {
+      name = "_at_humanwhocodes_slash_config-array";
+      packageName = "@humanwhocodes/config-array";
+      version = "0.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz";
+        sha512 = "FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==";
+      };
+    };
+    "@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==";
+      };
+    };
+    "@jest/types-27.2.5" = {
       name = "_at_jest_slash_types";
       packageName = "@jest/types";
-      version = "27.1.1";
+      version = "27.2.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/types/-/types-27.2.5.tgz";
+        sha512 = "nmuM4VuDtCZcY+eTpw+0nvstwReMsjPoj7ZR80/BbixulhLaiX+fbv8oeLW8WZlJMcsGQsTmMKT/iTZu1Uy/lQ==";
+      };
+    };
+    "@selderee/plugin-htmlparser2-0.6.0" = {
+      name = "_at_selderee_slash_plugin-htmlparser2";
+      packageName = "@selderee/plugin-htmlparser2";
+      version = "0.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@jest/types/-/types-27.1.1.tgz";
-        sha512 = "yqJPDDseb0mXgKqmNqypCsb85C22K1aY5+LUxh7syIM9n/b0AsaltxNy+o6tt29VcfGDpYEve175bm3uOhcehA==";
+        url = "https://registry.npmjs.org/@selderee/plugin-htmlparser2/-/plugin-htmlparser2-0.6.0.tgz";
+        sha512 = "J3jpy002TyBjd4N/p6s+s90eX42H2eRhK3SbsZuvTDv977/E8p2U3zikdiehyJja66do7FlxLomZLPlvl2/xaA==";
       };
     };
-    "@types/body-parser-1.19.1" = {
+    "@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==";
+      };
+    };
+    "@types/axios-0.14.0" = {
+      name = "_at_types_slash_axios";
+      packageName = "@types/axios";
+      version = "0.14.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/axios/-/axios-0.14.0.tgz";
+        sha1 = "ec2300fbe7d7dddd7eb9d3abf87999964cafce46";
+      };
+    };
+    "@types/body-parser-1.19.2" = {
       name = "_at_types_slash_body-parser";
       packageName = "@types/body-parser";
-      version = "1.19.1";
+      version = "1.19.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.1.tgz";
-        sha512 = "a6bTJ21vFOGIkwM0kzh9Yr89ziVxq4vYH2fQ6N8AeipEzai/cFK6aGMArIkUeIdRIgpwQa+2bXiLuUJCpSf2Cg==";
+        url = "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz";
+        sha512 = "ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==";
       };
     };
     "@types/connect-3.4.35" = {
@@ -58,6 +121,15 @@ let
         sha512 = "cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==";
       };
     };
+    "@types/crypto-js-4.0.2" = {
+      name = "_at_types_slash_crypto-js";
+      packageName = "@types/crypto-js";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/crypto-js/-/crypto-js-4.0.2.tgz";
+        sha512 = "sCVniU+h3GcGqxOmng11BRvf9TfN9yIs8KKjB8C8d75W69cpTfZG80gau9yTx5SxF3gvHGbJhdESzzvnjtf3Og==";
+      };
+    };
     "@types/express-4.17.13" = {
       name = "_at_types_slash_express";
       packageName = "@types/express";
@@ -67,13 +139,13 @@ let
         sha512 = "6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==";
       };
     };
-    "@types/express-serve-static-core-4.17.24" = {
+    "@types/express-serve-static-core-4.17.25" = {
       name = "_at_types_slash_express-serve-static-core";
       packageName = "@types/express-serve-static-core";
-      version = "4.17.24";
+      version = "4.17.25";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.24.tgz";
-        sha512 = "3UJuW+Qxhzwjq3xhwXm2onQcFHn76frIYVbTu+kn24LFxI+dEhdfISDFovPB8VpEgW8oQCTpRuCe+0zJxB7NEA==";
+        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.25.tgz";
+        sha512 = "OUJIVfRMFijZukGGwTpKNFprqCCXk5WjNGvUgB/CxxBR40QWSjsNK86+yvGKlCOGc7sbwfHLaXhkG+NsytwBaQ==";
       };
     };
     "@types/istanbul-lib-coverage-2.0.3" = {
@@ -103,6 +175,15 @@ let
         sha512 = "c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==";
       };
     };
+    "@types/jsdom-16.2.13" = {
+      name = "_at_types_slash_jsdom";
+      packageName = "@types/jsdom";
+      version = "16.2.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/jsdom/-/jsdom-16.2.13.tgz";
+        sha512 = "8JQCjdeAidptSsOcRWk2iTm9wCcwn9l+kRG6k5bzUacrnm1ezV4forq0kWjUih/tumAeoG+OspOvQEbbRucBTw==";
+      };
+    };
     "@types/json5-0.0.29" = {
       name = "_at_types_slash_json5";
       packageName = "@types/json5";
@@ -130,13 +211,22 @@ let
         sha512 = "scN0hAWyLVAvLR9AyW7HoFF5sJZglyBsbPuHO4fv7JRvfmPBMfp1ozWqOf/e4wwPNxezBZXRfWzMb6iFLgEVRA==";
       };
     };
-    "@types/node-11.15.54" = {
+    "@types/node-16.11.7" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "11.15.54";
+      version = "16.11.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-11.15.54.tgz";
-        sha512 = "1RWYiq+5UfozGsU6MwJyFX6BtktcT10XRjvcAQmskCtMcW3tPske88lM/nHv7BQG1w9KBXI1zPGuu5PnNCX14g==";
+        url = "https://registry.npmjs.org/@types/node/-/node-16.11.7.tgz";
+        sha512 = "QB5D2sqfSjCmTuWcBWyJ+/44bcjO7VbjSbOE0ucoVbAsSNQc4Lt6QkgkVXkTDwkL4z/beecZNDvVX15D4P8Jbw==";
+      };
+    };
+    "@types/parse5-6.0.2" = {
+      name = "_at_types_slash_parse5";
+      packageName = "@types/parse5";
+      version = "6.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.2.tgz";
+        sha512 = "+hQX+WyJAOne7Fh3zF5CxPemILIbuhNcqHHodzK9caYOLnC8pD5efmPleRnw0z++LfKUC/sVNMwk0Gap+B0baA==";
       };
     };
     "@types/qs-6.9.7" = {
@@ -175,6 +265,15 @@ let
         sha512 = "Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==";
       };
     };
+    "@types/tough-cookie-4.0.1" = {
+      name = "_at_types_slash_tough-cookie";
+      packageName = "@types/tough-cookie";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.1.tgz";
+        sha512 = "Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==";
+      };
+    };
     "@types/yargs-16.0.4" = {
       name = "_at_types_slash_yargs";
       packageName = "@types/yargs";
@@ -202,6 +301,15 @@ let
         sha512 = "sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==";
       };
     };
+    "abab-2.0.5" = {
+      name = "abab";
+      packageName = "abab";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz";
+        sha512 = "9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==";
+      };
+    };
     "accepts-1.3.7" = {
       name = "accepts";
       packageName = "accepts";
@@ -211,6 +319,60 @@ let
         sha512 = "Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==";
       };
     };
+    "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.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-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-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-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==";
+      };
+    };
+    "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";
@@ -220,6 +382,15 @@ let
         sha512 = "j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==";
       };
     };
+    "ajv-8.8.1" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "8.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-8.8.1.tgz";
+        sha512 = "6CiMNDrzv0ZR916u2T+iRunnD60uWmNn8SkdB44/6stVORUg0aAkWO7PkOhpCmjmW8f2I/G/xnowD66fxGyQJg==";
+      };
+    };
     "ansi-colors-4.1.1" = {
       name = "ansi-colors";
       packageName = "ansi-colors";
@@ -229,15 +400,6 @@ let
         sha512 = "JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==";
       };
     };
-    "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";
@@ -319,13 +481,13 @@ let
         sha1 = "898508da2226f380df904728456849c1501a4b0d";
       };
     };
-    "asn1-0.2.4" = {
+    "asn1-0.2.6" = {
       name = "asn1";
       packageName = "asn1";
-      version = "0.2.4";
+      version = "0.2.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz";
-        sha512 = "jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==";
+        url = "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz";
+        sha512 = "ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==";
       };
     };
     "assert-plus-1.0.0" = {
@@ -337,6 +499,15 @@ let
         sha1 = "f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525";
       };
     };
+    "astral-regex-2.0.0" = {
+      name = "astral-regex";
+      packageName = "astral-regex";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz";
+        sha512 = "Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==";
+      };
+    };
     "asynckit-0.4.0" = {
       name = "asynckit";
       packageName = "asynckit";
@@ -364,6 +535,15 @@ let
         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==";
+      };
+    };
     "balanced-match-1.0.2" = {
       name = "balanced-match";
       packageName = "balanced-match";
@@ -436,6 +616,15 @@ let
         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==";
+      };
+    };
     "browser-stdout-1.3.1" = {
       name = "browser-stdout";
       packageName = "browser-stdout";
@@ -472,13 +661,22 @@ let
         sha512 = "zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==";
       };
     };
-    "camelcase-6.2.0" = {
+    "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.1" = {
       name = "camelcase";
       packageName = "camelcase";
-      version = "6.2.0";
+      version = "6.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz";
-        sha512 = "c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==";
+        url = "https://registry.npmjs.org/camelcase/-/camelcase-6.2.1.tgz";
+        sha512 = "tVI4q5jjFV5CavAU8DXfza/TJcZutVKo/5Foskmsqcm0MsL91moHvwiGNnqaa2o6PF/7yT5ikDRcVcl8Rj6LCA==";
       };
     };
     "caseless-0.12.0" = {
@@ -562,15 +760,6 @@ let
         sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==";
       };
     };
-    "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==";
-      };
-    };
     "combined-stream-1.0.8" = {
       name = "combined-stream";
       packageName = "combined-stream";
@@ -589,6 +778,15 @@ let
         sha512 = "GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==";
       };
     };
+    "commandpost-1.4.0" = {
+      name = "commandpost";
+      packageName = "commandpost";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commandpost/-/commandpost-1.4.0.tgz";
+        sha512 = "aE2Y4MTFJ870NuB/+2z1cXBhSBBzRydVVjzhFC4gtenEhpnj15yu0qptWGJsO9YGrcPZ3ezX8AWb1VA391MKpQ==";
+      };
+    };
     "concat-map-0.0.1" = {
       name = "concat-map";
       packageName = "concat-map";
@@ -652,6 +850,51 @@ let
         sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
       };
     };
+    "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-js-4.1.1" = {
+      name = "crypto-js";
+      packageName = "crypto-js";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz";
+        sha512 = "o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==";
+      };
+    };
+    "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==";
+      };
+    };
     "dashdash-1.14.1" = {
       name = "dashdash";
       packageName = "dashdash";
@@ -661,6 +904,15 @@ let
         sha1 = "853cfa0f7cbe2fed5de20326b8dd581035f6e2f0";
       };
     };
+    "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";
@@ -670,13 +922,13 @@ let
         sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==";
       };
     };
-    "debug-4.3.1" = {
+    "debug-4.3.2" = {
       name = "debug";
       packageName = "debug";
-      version = "4.3.1";
+      version = "4.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz";
-        sha512 = "doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==";
+        url = "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz";
+        sha512 = "mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==";
       };
     };
     "decamelize-4.0.0" = {
@@ -688,6 +940,24 @@ let
         sha512 = "9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==";
       };
     };
+    "decimal.js-10.3.1" = {
+      name = "decimal.js";
+      packageName = "decimal.js";
+      version = "10.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz";
+        sha512 = "V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==";
+      };
+    };
+    "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";
@@ -769,6 +1039,24 @@ let
         sha512 = "ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ==";
       };
     };
+    "discontinuous-range-1.0.0" = {
+      name = "discontinuous-range";
+      packageName = "discontinuous-range";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz";
+        sha1 = "e38331f0844bba49b9a9cb71c771585aab1bc65a";
+      };
+    };
+    "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";
@@ -787,6 +1075,15 @@ let
         sha512 = "DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==";
       };
     };
+    "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-3.3.0" = {
       name = "domhandler";
       packageName = "domhandler";
@@ -823,6 +1120,15 @@ let
         sha1 = "3a83a904e54353287874c564b7549386849a98c9";
       };
     };
+    "editorconfig-0.15.3" = {
+      name = "editorconfig";
+      packageName = "editorconfig";
+      version = "0.15.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz";
+        sha512 = "M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==";
+      };
+    };
     "ee-first-1.1.1" = {
       name = "ee-first";
       packageName = "ee-first";
@@ -850,6 +1156,15 @@ let
         sha1 = "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59";
       };
     };
+    "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";
@@ -904,6 +1219,69 @@ let
         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-7.32.0" = {
+      name = "eslint";
+      packageName = "eslint";
+      version = "7.32.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz";
+        sha512 = "VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==";
+      };
+    };
+    "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-utils-2.1.0" = {
+      name = "eslint-utils";
+      packageName = "eslint-utils";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz";
+        sha512 = "w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==";
+      };
+    };
+    "eslint-visitor-keys-1.3.0" = {
+      name = "eslint-visitor-keys";
+      packageName = "eslint-visitor-keys";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz";
+        sha512 = "6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==";
+      };
+    };
+    "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==";
+      };
+    };
+    "espree-7.3.1" = {
+      name = "espree";
+      packageName = "espree";
+      version = "7.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz";
+        sha512 = "v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==";
+      };
+    };
     "esprima-4.0.1" = {
       name = "esprima";
       packageName = "esprima";
@@ -913,6 +1291,51 @@ let
         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==";
+      };
+    };
+    "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";
@@ -922,13 +1345,13 @@ let
         sha1 = "41ae2eeb65efa62268aebfea83ac7d79299b0887";
       };
     };
-    "expect-27.2.1" = {
+    "expect-27.3.1" = {
       name = "expect";
       packageName = "expect";
-      version = "27.2.1";
+      version = "27.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/expect/-/expect-27.2.1.tgz";
-        sha512 = "ekOA2mBtT2phxcoPVHCXIzbJxCvRXhx2fr7m28IgGdZxUOh8UvxvoRz1FcPlfgZMpE92biHB6woIcAKXqR28hA==";
+        url = "https://registry.npmjs.org/expect/-/expect-27.3.1.tgz";
+        sha512 = "MrNXV2sL9iDRebWPGOGFdPQRl2eDQNu/uhxIMShjjx74T6kC6jFIkmQ6OqXDtevjGUkyB2IT56RzDBqXf/QPCg==";
       };
     };
     "express-4.17.1" = {
@@ -976,6 +1399,24 @@ let
         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";
+      };
+    };
+    "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==";
+      };
+    };
     "fill-range-7.0.1" = {
       name = "fill-range";
       packageName = "fill-range";
@@ -1012,6 +1453,33 @@ let
         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.2.4" = {
+      name = "flatted";
+      packageName = "flatted";
+      version = "3.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flatted/-/flatted-3.2.4.tgz";
+        sha512 = "8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw==";
+      };
+    };
+    "follow-redirects-1.14.5" = {
+      name = "follow-redirects";
+      packageName = "follow-redirects";
+      version = "1.14.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.5.tgz";
+        sha512 = "wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==";
+      };
+    };
     "forever-agent-0.6.1" = {
       name = "forever-agent";
       packageName = "forever-agent";
@@ -1030,6 +1498,15 @@ let
         sha512 = "1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==";
       };
     };
+    "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";
@@ -1075,6 +1552,15 @@ let
         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";
+      };
+    };
     "get-caller-file-2.0.5" = {
       name = "get-caller-file";
       packageName = "get-caller-file";
@@ -1102,6 +1588,15 @@ let
         sha512 = "OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==";
       };
     };
+    "glob-7.2.0" = {
+      name = "glob";
+      packageName = "glob";
+      version = "7.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz";
+        sha512 = "lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==";
+      };
+    };
     "glob-parent-5.1.2" = {
       name = "glob-parent";
       packageName = "glob-parent";
@@ -1120,6 +1615,15 @@ let
         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==";
+      };
+    };
     "graceful-fs-4.2.8" = {
       name = "graceful-fs";
       packageName = "graceful-fs";
@@ -1201,6 +1705,15 @@ let
         sha512 = "F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==";
       };
     };
+    "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-to-text-6.0.0" = {
       name = "html-to-text";
       packageName = "html-to-text";
@@ -1210,6 +1723,15 @@ let
         sha512 = "r0KNC5aqCAItsjlgtirW6RW25c92Ee3ybQj8z//4Sl4suE3HIPqM4deGpYCUJULLjtVPEP1+Ma+1ZeX1iMsCiA==";
       };
     };
+    "html-to-text-8.1.0" = {
+      name = "html-to-text";
+      packageName = "html-to-text";
+      version = "8.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/html-to-text/-/html-to-text-8.1.0.tgz";
+        sha512 = "Z9iYAqYK2c18GswSbnxJSeMs7lyJgwR2oIkDOyOHGBbYsPsG4HvT379jj3Lcbfko8A5ceyyMHAfkmp/BiXA9/Q==";
+      };
+    };
     "htmlencode-0.0.4" = {
       name = "htmlencode";
       packageName = "htmlencode";
@@ -1246,6 +1768,15 @@ let
         sha512 = "uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==";
       };
     };
+    "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-signature-1.2.0" = {
       name = "http-signature";
       packageName = "http-signature";
@@ -1255,6 +1786,15 @@ let
         sha1 = "9aecd925114772f3d95b65a60abb8f7c18fbace1";
       };
     };
+    "https-proxy-agent-5.0.0" = {
+      name = "https-proxy-agent";
+      packageName = "https-proxy-agent";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz";
+        sha512 = "EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==";
+      };
+    };
     "iconv-lite-0.4.24" = {
       name = "iconv-lite";
       packageName = "iconv-lite";
@@ -1264,6 +1804,33 @@ let
         sha512 = "v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==";
       };
     };
+    "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==";
+      };
+    };
+    "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";
@@ -1300,13 +1867,13 @@ let
         sha512 = "ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==";
       };
     };
-    "is-core-module-2.6.0" = {
+    "is-core-module-2.8.0" = {
       name = "is-core-module";
       packageName = "is-core-module";
-      version = "2.6.0";
+      version = "2.8.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz";
-        sha512 = "wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==";
+        url = "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz";
+        sha512 = "vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==";
       };
     };
     "is-extglob-2.1.1" = {
@@ -1318,15 +1885,6 @@ let
         sha1 = "a88c02535791f02ed37c76a1b9ea9773c833f8c2";
       };
     };
-    "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";
@@ -1336,13 +1894,13 @@ let
         sha512 = "zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==";
       };
     };
-    "is-glob-4.0.1" = {
+    "is-glob-4.0.3" = {
       name = "is-glob";
       packageName = "is-glob";
-      version = "4.0.1";
+      version = "4.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz";
-        sha512 = "5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==";
+        url = "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz";
+        sha512 = "xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==";
       };
     };
     "is-number-7.0.0" = {
@@ -1372,6 +1930,15 @@ let
         sha512 = "VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==";
       };
     };
+    "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-promise-2.2.2" = {
       name = "is-promise";
       packageName = "is-promise";
@@ -1417,40 +1984,40 @@ let
         sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
       };
     };
-    "jest-diff-27.2.0" = {
+    "jest-diff-27.3.1" = {
       name = "jest-diff";
       packageName = "jest-diff";
-      version = "27.2.0";
+      version = "27.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jest-diff/-/jest-diff-27.2.0.tgz";
-        sha512 = "QSO9WC6btFYWtRJ3Hac0sRrkspf7B01mGrrQEiCW6TobtViJ9RWL0EmOs/WnBsZDsI/Y2IoSHZA2x6offu0sYw==";
+        url = "https://registry.npmjs.org/jest-diff/-/jest-diff-27.3.1.tgz";
+        sha512 = "PCeuAH4AWUo2O5+ksW4pL9v5xJAcIKPUPfIhZBcG1RKv/0+dvaWTQK1Nrau8d67dp65fOqbeMdoil+6PedyEPQ==";
       };
     };
-    "jest-get-type-27.0.6" = {
+    "jest-get-type-27.3.1" = {
       name = "jest-get-type";
       packageName = "jest-get-type";
-      version = "27.0.6";
+      version = "27.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.0.6.tgz";
-        sha512 = "XTkK5exIeUbbveehcSR8w0bhH+c0yloW/Wpl+9vZrjzztCPWrxhHwkIFpZzCt71oRBsgxmuUfxEqOYoZI2macg==";
+        url = "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.3.1.tgz";
+        sha512 = "+Ilqi8hgHSAdhlQ3s12CAVNd8H96ZkQBfYoXmArzZnOfAtVAJEiPDBirjByEblvG/4LPJmkL+nBqPO3A1YJAEg==";
       };
     };
-    "jest-matcher-utils-27.2.0" = {
+    "jest-matcher-utils-27.3.1" = {
       name = "jest-matcher-utils";
       packageName = "jest-matcher-utils";
-      version = "27.2.0";
+      version = "27.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.2.0.tgz";
-        sha512 = "F+LG3iTwJ0gPjxBX6HCyrARFXq6jjiqhwBQeskkJQgSLeF1j6ui1RTV08SR7O51XTUhtc8zqpDj8iCG4RGmdKw==";
+        url = "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.3.1.tgz";
+        sha512 = "hX8N7zXS4k+8bC1Aj0OWpGb7D3gIXxYvPNK1inP5xvE4ztbz3rc4AkI6jGVaerepBnfWB17FL5lWFJT3s7qo8w==";
       };
     };
-    "jest-message-util-27.2.0" = {
+    "jest-message-util-27.3.1" = {
       name = "jest-message-util";
       packageName = "jest-message-util";
-      version = "27.2.0";
+      version = "27.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.2.0.tgz";
-        sha512 = "y+sfT/94CiP8rKXgwCOzO1mUazIEdEhrLjuiu+RKmCP+8O/TJTSne9dqQRbFIHBtlR2+q7cddJlWGir8UATu5w==";
+        url = "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.3.1.tgz";
+        sha512 = "bh3JEmxsTZ/9rTm0jQrPElbY2+y48Rw2t47uMfByNyUVR+OfPh4anuyKsGqsNkXk/TI4JbLRZx+7p7Hdt6q1yg==";
       };
     };
     "jest-regex-util-27.0.6" = {
@@ -1498,6 +2065,15 @@ let
         sha1 = "a5e654c2e5a2deb5f201d96cefbca80c0ef2f513";
       };
     };
+    "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==";
+      };
+    };
     "json-schema-0.2.3" = {
       name = "json-schema";
       packageName = "json-schema";
@@ -1516,6 +2092,24 @@ let
         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";
+        sha1 = "9db7b59496ad3f3cfef30a75142d2d930ad72651";
+      };
+    };
     "json-stringify-safe-5.0.1" = {
       name = "json-stringify-safe";
       packageName = "json-stringify-safe";
@@ -1552,13 +2146,22 @@ let
         sha1 = "313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2";
       };
     };
-    "klona-2.0.4" = {
-      name = "klona";
-      packageName = "klona";
-      version = "2.0.4";
+    "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";
+        sha1 = "3b09924edf9f083c0490fdd4c0bc4421e04764ee";
+      };
+    };
+    "levn-0.4.1" = {
+      name = "levn";
+      packageName = "levn";
+      version = "0.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/klona/-/klona-2.0.4.tgz";
-        sha512 = "ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA==";
+        url = "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz";
+        sha512 = "+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==";
       };
     };
     "locate-path-6.0.0" = {
@@ -1579,6 +2182,24 @@ let
         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.truncate-4.4.2" = {
+      name = "lodash.truncate";
+      packageName = "lodash.truncate";
+      version = "4.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz";
+        sha1 = "5a350da0b1113b837ecfffd5812cbe58d6eae193";
+      };
+    };
     "log-symbols-4.1.0" = {
       name = "log-symbols";
       packageName = "log-symbols";
@@ -1597,6 +2218,15 @@ let
         sha512 = "2+x8esE/Wb9SQ1F9IHaYWfsC9FIecLOPrK4g17FGEayjUWH172H6nwicRovGvSE2CPZouc2MCIqCI7h9d+GftQ==";
       };
     };
+    "lru-cache-4.1.5" = {
+      name = "lru-cache";
+      packageName = "lru-cache";
+      version = "4.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz";
+        sha512 = "sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==";
+      };
+    };
     "lru-cache-6.0.0" = {
       name = "lru-cache";
       packageName = "lru-cache";
@@ -1669,22 +2299,22 @@ let
         sha512 = "x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==";
       };
     };
-    "mime-db-1.49.0" = {
+    "mime-db-1.51.0" = {
       name = "mime-db";
       packageName = "mime-db";
-      version = "1.49.0";
+      version = "1.51.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz";
-        sha512 = "CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==";
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz";
+        sha512 = "5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==";
       };
     };
-    "mime-types-2.1.32" = {
+    "mime-types-2.1.34" = {
       name = "mime-types";
       packageName = "mime-types";
-      version = "2.1.32";
+      version = "2.1.34";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz";
-        sha512 = "hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==";
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz";
+        sha512 = "6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==";
       };
     };
     "minimalistic-assert-1.0.1" = {
@@ -1732,13 +2362,22 @@ let
         sha512 = "vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==";
       };
     };
-    "mocha-9.1.1" = {
+    "mocha-9.1.3" = {
       name = "mocha";
       packageName = "mocha";
-      version = "9.1.1";
+      version = "9.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mocha/-/mocha-9.1.1.tgz";
-        sha512 = "0wE74YMgOkCgBUj8VyIDwmLUjTsS13WV1Pg7l0SHea2qzZzlq7MDnfbPsHKcELBRk3+izEVkRofjmClpycudCA==";
+        url = "https://registry.npmjs.org/mocha/-/mocha-9.1.3.tgz";
+        sha512 = "Xcpl9FqXOAYqI3j79pEtHBBnQgVXIhpULjGQa7DVb0Po+VzmSIK9kanAiWLHoRR/dbZ2qpdPshuXr8l1VaHCzw==";
+      };
+    };
+    "moo-0.5.1" = {
+      name = "moo";
+      packageName = "moo";
+      version = "0.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/moo/-/moo-0.5.1.tgz";
+        sha512 = "I1mnb5xn4fO80BH9BLcF0yLypy2UKl+Cb01Fu0hJRkJjlCRtxZMWkTdAtDd5ZqCOxtCkhmRwyI57vWT+1iZ67w==";
       };
     };
     "morgan-1.10.0" = {
@@ -1786,22 +2425,40 @@ let
         sha512 = "6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==";
       };
     };
-    "nanoid-3.1.23" = {
+    "nanoid-3.1.25" = {
       name = "nanoid";
       packageName = "nanoid";
-      version = "3.1.23";
+      version = "3.1.25";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz";
-        sha512 = "FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==";
+        url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.25.tgz";
+        sha512 = "rdwtIXaXCLFAQbnfqDRnI6jaRHp9fTcYBjtFKE8eezcZ7LuLjhUaQGNeMXf1HmRoCH32CLz6XwX0TtxEOS/A3Q==";
       };
     };
-    "nanoid-3.1.25" = {
+    "nanoid-3.1.30" = {
       name = "nanoid";
       packageName = "nanoid";
-      version = "3.1.25";
+      version = "3.1.30";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.25.tgz";
-        sha512 = "rdwtIXaXCLFAQbnfqDRnI6jaRHp9fTcYBjtFKE8eezcZ7LuLjhUaQGNeMXf1HmRoCH32CLz6XwX0TtxEOS/A3Q==";
+        url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz";
+        sha512 = "zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==";
+      };
+    };
+    "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";
+      };
+    };
+    "nearley-2.20.1" = {
+      name = "nearley";
+      packageName = "nearley";
+      version = "2.20.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nearley/-/nearley-2.20.1.tgz";
+        sha512 = "+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==";
       };
     };
     "negotiator-0.6.2" = {
@@ -1822,6 +2479,15 @@ let
         sha512 = "6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==";
       };
     };
+    "nwsapi-2.2.0" = {
+      name = "nwsapi";
+      packageName = "nwsapi";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz";
+        sha512 = "h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==";
+      };
+    };
     "oauth-sign-0.9.0" = {
       name = "oauth-sign";
       packageName = "oauth-sign";
@@ -1858,6 +2524,24 @@ let
         sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1";
       };
     };
+    "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-3.1.0" = {
       name = "p-limit";
       packageName = "p-limit";
@@ -1876,6 +2560,15 @@ let
         sha512 = "LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==";
       };
     };
+    "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";
@@ -1885,6 +2578,24 @@ let
         sha1 = "f2bd221f6cc970a938d88556abc589caaaa2bde1";
       };
     };
+    "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==";
+      };
+    };
+    "parseley-0.7.0" = {
+      name = "parseley";
+      packageName = "parseley";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parseley/-/parseley-0.7.0.tgz";
+        sha512 = "xyOytsdDu077M3/46Am+2cGXEKM9U9QclBDv7fimY7e+BBlxh2JcBp2mgNsmkyA9uvgyTjVzDi7cP1v4hcFxbw==";
+      };
+    };
     "parseurl-1.3.3" = {
       name = "parseurl";
       packageName = "parseurl";
@@ -1912,6 +2623,15 @@ let
         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-parse-1.0.7" = {
       name = "path-parse";
       packageName = "path-parse";
@@ -1939,6 +2659,15 @@ let
         sha1 = "6309f4e0e5fa913ec1c69307ae364b4b377c9e7b";
       };
     };
+    "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.0" = {
       name = "picomatch";
       packageName = "picomatch";
@@ -1957,22 +2686,49 @@ let
         sha1 = "e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176";
       };
     };
-    "postcss-8.3.6" = {
+    "postcss-8.3.11" = {
       name = "postcss";
       packageName = "postcss";
-      version = "8.3.6";
+      version = "8.3.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz";
+        sha512 = "hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==";
+      };
+    };
+    "prelude-ls-1.1.2" = {
+      name = "prelude-ls";
+      packageName = "prelude-ls";
+      version = "1.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/postcss/-/postcss-8.3.6.tgz";
-        sha512 = "wG1cc/JhRgdqB6WHEuyLTedf3KIRuD0hG6ldkFEZNCjRxiC+3i6kkWUUbiJQayP28iwG35cEmAbe98585BYV0A==";
+        url = "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz";
+        sha1 = "21932a549f5e52ffd9a827f570e04be62a97da54";
       };
     };
-    "pretty-format-27.2.0" = {
+    "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-format-27.3.1" = {
       name = "pretty-format";
       packageName = "pretty-format";
-      version = "27.2.0";
+      version = "27.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pretty-format/-/pretty-format-27.2.0.tgz";
-        sha512 = "KyJdmgBkMscLqo8A7K77omgLx5PWPiXJswtTtFV7XgVZv2+qPk6UivpXXO+5k6ZEbWIbLoKdx1pZ6ldINzbwTA==";
+        url = "https://registry.npmjs.org/pretty-format/-/pretty-format-27.3.1.tgz";
+        sha512 = "DR/c+pvFc52nLimLROYjnXPtolawm+uWDxr4FjuLDLUn+ktWnSN851KoHwHzzqq6rfCOjkzN8FLgDrSub6UDuA==";
+      };
+    };
+    "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==";
       };
     };
     "proxy-addr-2.0.7" = {
@@ -1984,6 +2740,15 @@ let
         sha512 = "llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==";
       };
     };
+    "pseudomap-1.0.2" = {
+      name = "pseudomap";
+      packageName = "pseudomap";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz";
+        sha1 = "f052a28da70e618917ef0a8ac34c1ae5a68286b3";
+      };
+    };
     "psl-1.8.0" = {
       name = "psl";
       packageName = "psl";
@@ -2020,6 +2785,24 @@ let
         sha512 = "VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==";
       };
     };
+    "railroad-diagrams-1.0.0" = {
+      name = "railroad-diagrams";
+      packageName = "railroad-diagrams";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz";
+        sha1 = "eb7e6267548ddedfb899c1b90e57374559cddb7e";
+      };
+    };
+    "randexp-0.4.6" = {
+      name = "randexp";
+      packageName = "randexp";
+      version = "0.4.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz";
+        sha512 = "80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==";
+      };
+    };
     "randombytes-2.1.0" = {
       name = "randombytes";
       packageName = "randombytes";
@@ -2065,6 +2848,15 @@ let
         sha512 = "hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==";
       };
     };
+    "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==";
+      };
+    };
     "request-2.88.2" = {
       name = "request";
       packageName = "request";
@@ -2101,6 +2893,15 @@ let
         sha1 = "8c64ad5fd30dab1c976e2344ffe7f792a6a6df42";
       };
     };
+    "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==";
+      };
+    };
     "resolve-1.20.0" = {
       name = "resolve";
       packageName = "resolve";
@@ -2110,6 +2911,33 @@ let
         sha512 = "wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==";
       };
     };
+    "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==";
+      };
+    };
+    "ret-0.1.15" = {
+      name = "ret";
+      packageName = "ret";
+      version = "0.1.15";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz";
+        sha512 = "TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==";
+      };
+    };
+    "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==";
+      };
+    };
     "safe-buffer-5.1.2" = {
       name = "safe-buffer";
       packageName = "safe-buffer";
@@ -2128,13 +2956,31 @@ let
         sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
       };
     };
-    "sanitize-html-2.5.1" = {
+    "sanitize-html-2.5.3" = {
       name = "sanitize-html";
       packageName = "sanitize-html";
-      version = "2.5.1";
+      version = "2.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.5.3.tgz";
+        sha512 = "DGATXd1fs/Rm287/i5FBKVYSBBUL0iAaztOA1/RFhEs4yqo39/X52i/q/CwsfCUG5cilmXSBmnQmyWfnKhBlOg==";
+      };
+    };
+    "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==";
+      };
+    };
+    "selderee-0.6.0" = {
+      name = "selderee";
+      packageName = "selderee";
+      version = "0.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.5.1.tgz";
-        sha512 = "hUITPitQk+eFNLtr4dEkaaiAJndG2YE87IOpcfBSL1XdklWgwcNDJdr9Ppe8QKL/C3jFt1xH/Mbj20e0GZQOfg==";
+        url = "https://registry.npmjs.org/selderee/-/selderee-0.6.0.tgz";
+        sha512 = "ibqWGV5aChDvfVdqNYuaJP/HnVBhlRGSRrlbttmlMpHcLuTqqbMH36QkSs9GEgj5M88JDYLI8eyP94JaQ8xRlg==";
       };
     };
     "semver-5.7.1" = {
@@ -2146,6 +2992,15 @@ let
         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";
@@ -2182,6 +3037,33 @@ let
         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==";
+      };
+    };
+    "sigmund-1.0.1" = {
+      name = "sigmund";
+      packageName = "sigmund";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz";
+        sha1 = "3ff21f198cad2175f9f3b781853fd94d0d19b590";
+      };
+    };
     "slash-3.0.0" = {
       name = "slash";
       packageName = "slash";
@@ -2191,6 +3073,15 @@ let
         sha512 = "g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==";
       };
     };
+    "slice-ansi-4.0.0" = {
+      name = "slice-ansi";
+      packageName = "slice-ansi";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz";
+        sha512 = "qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==";
+      };
+    };
     "source-map-0.6.1" = {
       name = "source-map";
       packageName = "source-map";
@@ -2272,40 +3163,22 @@ let
         sha1 = "071105bdfc286e6615c0403c27e9d7b5dcb855cb";
       };
     };
-    "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.2" = {
+    "string-width-4.2.3" = {
       name = "string-width";
       packageName = "string-width";
-      version = "4.2.2";
+      version = "4.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz";
-        sha512 = "XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==";
+        url = "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz";
+        sha512 = "wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==";
       };
     };
-    "strip-ansi-4.0.0" = {
+    "strip-ansi-6.0.1" = {
       name = "strip-ansi";
       packageName = "strip-ansi";
-      version = "4.0.0";
+      version = "6.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz";
-        sha1 = "a8479022eb1ac368a871389b635262c505ee368f";
-      };
-    };
-    "strip-ansi-6.0.0" = {
-      name = "strip-ansi";
-      packageName = "strip-ansi";
-      version = "6.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz";
-        sha512 = "AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==";
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz";
+        sha512 = "Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==";
       };
     };
     "strip-bom-3.0.0" = {
@@ -2353,6 +3226,33 @@ let
         sha512 = "MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==";
       };
     };
+    "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==";
+      };
+    };
+    "table-6.7.3" = {
+      name = "table";
+      packageName = "table";
+      version = "6.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/table/-/table-6.7.3.tgz";
+        sha512 = "5DkIxeA7XERBqMwJq0aHZOdMadBx4e6eDoFRuyT5VR82J0Ycg2DwM6GfA/EQAhJ+toRTaS1lIdSQCqgrmhPnlw==";
+      };
+    };
+    "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";
@@ -2380,6 +3280,24 @@ let
         sha512 = "nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==";
       };
     };
+    "tough-cookie-4.0.0" = {
+      name = "tough-cookie";
+      packageName = "tough-cookie";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz";
+        sha512 = "tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==";
+      };
+    };
+    "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==";
+      };
+    };
     "ts-mocha-8.0.0" = {
       name = "ts-mocha";
       packageName = "ts-mocha";
@@ -2452,6 +3370,33 @@ let
         sha1 = "5ae68177f192d4456269d108afa93ff8743f4f64";
       };
     };
+    "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";
+        sha1 = "5884cab512cf1d355e3fb784f30804b2b520db72";
+      };
+    };
+    "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-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";
@@ -2461,13 +3406,31 @@ let
         sha512 = "TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==";
       };
     };
-    "typescript-4.4.3" = {
+    "typescript-4.5.2" = {
       name = "typescript";
       packageName = "typescript";
-      version = "4.4.3";
+      version = "4.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typescript/-/typescript-4.5.2.tgz";
+        sha512 = "5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw==";
+      };
+    };
+    "typescript-formatter-7.2.2" = {
+      name = "typescript-formatter";
+      packageName = "typescript-formatter";
+      version = "7.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typescript-formatter/-/typescript-formatter-7.2.2.tgz";
+        sha512 = "V7vfI9XArVhriOTYHPzMU2WUnm5IMdu9X/CPxs8mIMGxmTBFpDABlbkBka64PZJ9/xgQeRpK8KzzAG4MPzxBDQ==";
+      };
+    };
+    "universalify-0.1.2" = {
+      name = "universalify";
+      packageName = "universalify";
+      version = "0.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/typescript/-/typescript-4.4.3.tgz";
-        sha512 = "4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA==";
+        url = "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz";
+        sha512 = "rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==";
       };
     };
     "unpipe-1.0.0" = {
@@ -2506,6 +3469,15 @@ let
         sha512 = "HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==";
       };
     };
+    "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";
@@ -2524,6 +3496,69 @@ let
         sha1 = "3a105ca17053af55d6e270c1f8288682e18da400";
       };
     };
+    "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==";
+      };
+    };
+    "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==";
+      };
+    };
+    "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-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-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-2.0.2" = {
       name = "which";
       packageName = "which";
@@ -2533,13 +3568,13 @@ let
         sha512 = "BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==";
       };
     };
-    "wide-align-1.1.3" = {
-      name = "wide-align";
-      packageName = "wide-align";
-      version = "1.1.3";
+    "word-wrap-1.2.3" = {
+      name = "word-wrap";
+      packageName = "word-wrap";
+      version = "1.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz";
-        sha512 = "QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==";
+        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" = {
@@ -2569,6 +3604,33 @@ let
         sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
       };
     };
+    "ws-7.5.5" = {
+      name = "ws";
+      packageName = "ws";
+      version = "7.5.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ws/-/ws-7.5.5.tgz";
+        sha512 = "BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w==";
+      };
+    };
+    "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==";
+      };
+    };
     "y18n-5.0.8" = {
       name = "y18n";
       packageName = "y18n";
@@ -2578,6 +3640,15 @@ let
         sha512 = "0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==";
       };
     };
+    "yallist-2.1.2" = {
+      name = "yallist";
+      packageName = "yallist";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz";
+        sha1 = "1c11f9218f076089a47dd512f93c6699a6a81d52";
+      };
+    };
     "yallist-4.0.0" = {
       name = "yallist";
       packageName = "yallist";
@@ -2636,12 +3707,12 @@ let
   args = {
     name = "mjolnir";
     packageName = "mjolnir";
-    version = "1.1.20";
-    src = ../../../../../../../nix/store/hc66j9i16g2n08v0laiyydqch4szfygn-source;
+    version = "1.2.1";
+    src = ../../../../../../../nix/store/8x9ib7ymf5yj075632mz4qap4m0nzd52-source;
     dependencies = [
-      sources."@babel/code-frame-7.14.5"
+      sources."@babel/code-frame-7.12.11"
       sources."@babel/helper-validator-identifier-7.15.7"
-      (sources."@babel/highlight-7.14.5" // {
+      (sources."@babel/highlight-7.16.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -2652,26 +3723,63 @@ let
           sources."supports-color-5.5.0"
         ];
       })
-      sources."@jest/types-27.1.1"
-      sources."@types/body-parser-1.19.1"
+      (sources."@eslint/eslintrc-0.4.3" // {
+        dependencies = [
+          sources."argparse-1.0.10"
+          sources."debug-4.3.2"
+          sources."js-yaml-3.14.1"
+          sources."ms-2.1.2"
+        ];
+      })
+      (sources."@humanwhocodes/config-array-0.5.0" // {
+        dependencies = [
+          sources."debug-4.3.2"
+          sources."ms-2.1.2"
+        ];
+      })
+      sources."@humanwhocodes/object-schema-1.2.1"
+      sources."@jest/types-27.2.5"
+      sources."@selderee/plugin-htmlparser2-0.6.0"
+      sources."@tootallnate/once-1.1.2"
+      sources."@types/axios-0.14.0"
+      sources."@types/body-parser-1.19.2"
       sources."@types/connect-3.4.35"
+      sources."@types/crypto-js-4.0.2"
       sources."@types/express-4.17.13"
-      sources."@types/express-serve-static-core-4.17.24"
+      sources."@types/express-serve-static-core-4.17.25"
       sources."@types/istanbul-lib-coverage-2.0.3"
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-3.0.1"
+      sources."@types/jsdom-16.2.13"
       sources."@types/json5-0.0.29"
       sources."@types/mime-1.3.2"
       sources."@types/mocha-9.0.0"
-      sources."@types/node-11.15.54"
+      sources."@types/node-16.11.7"
+      sources."@types/parse5-6.0.2"
       sources."@types/qs-6.9.7"
       sources."@types/range-parser-1.2.4"
       sources."@types/serve-static-1.13.10"
       sources."@types/stack-utils-2.0.1"
+      sources."@types/tough-cookie-4.0.1"
       sources."@types/yargs-16.0.4"
       sources."@types/yargs-parser-20.2.1"
       sources."@ungap/promise-all-settled-1.1.2"
+      sources."abab-2.0.5"
       sources."accepts-1.3.7"
+      sources."acorn-8.6.0"
+      (sources."acorn-globals-6.0.0" // {
+        dependencies = [
+          sources."acorn-7.4.1"
+        ];
+      })
+      sources."acorn-jsx-5.3.2"
+      sources."acorn-walk-7.2.0"
+      (sources."agent-base-6.0.2" // {
+        dependencies = [
+          sources."debug-4.3.2"
+          sources."ms-2.1.2"
+        ];
+      })
       sources."ajv-6.12.6"
       sources."ansi-colors-4.1.1"
       sources."ansi-regex-5.0.1"
@@ -2680,11 +3788,13 @@ let
       sources."argparse-2.0.1"
       sources."array-flatten-1.1.1"
       sources."arrify-1.0.1"
-      sources."asn1-0.2.4"
+      sources."asn1-0.2.6"
       sources."assert-plus-1.0.0"
+      sources."astral-regex-2.0.0"
       sources."asynckit-0.4.0"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.11.0"
+      sources."axios-0.21.4"
       sources."balanced-match-1.0.2"
       sources."basic-auth-2.0.1"
       sources."bcrypt-pbkdf-1.0.2"
@@ -2693,26 +3803,22 @@ let
       sources."body-parser-1.19.0"
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
+      sources."browser-process-hrtime-1.0.0"
       sources."browser-stdout-1.3.1"
       sources."buffer-from-1.1.2"
       sources."builtin-modules-1.1.1"
       sources."bytes-3.1.0"
-      sources."camelcase-6.2.0"
+      sources."callsites-3.1.0"
+      sources."camelcase-6.2.1"
       sources."caseless-0.12.0"
       sources."chalk-4.1.2"
       sources."chokidar-3.5.2"
-      (sources."cliui-7.0.4" // {
-        dependencies = [
-          sources."is-fullwidth-code-point-3.0.0"
-          sources."string-width-4.2.2"
-          sources."strip-ansi-6.0.0"
-        ];
-      })
+      sources."cliui-7.0.4"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
-      sources."colorette-1.4.0"
       sources."combined-stream-1.0.8"
       sources."commander-2.20.3"
+      sources."commandpost-1.4.0"
       sources."concat-map-0.0.1"
       sources."config-3.3.6"
       sources."content-disposition-0.5.3"
@@ -2720,38 +3826,90 @@ let
       sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
       sources."core-util-is-1.0.2"
+      sources."cross-spawn-7.0.3"
+      sources."crypto-js-4.1.1"
+      sources."cssom-0.4.4"
+      (sources."cssstyle-2.3.0" // {
+        dependencies = [
+          sources."cssom-0.3.8"
+        ];
+      })
       sources."dashdash-1.14.1"
+      sources."data-urls-2.0.0"
       sources."debug-2.6.9"
       sources."decamelize-4.0.0"
+      sources."decimal.js-10.3.1"
+      sources."deep-is-0.1.4"
       sources."deepmerge-4.2.2"
       sources."delayed-stream-1.0.0"
       sources."depd-1.1.2"
       sources."destroy-1.0.4"
       sources."diff-5.0.0"
       sources."diff-sequences-27.0.6"
-      (sources."dom-serializer-1.3.2" // {
+      sources."discontinuous-range-1.0.0"
+      sources."doctrine-3.0.0"
+      sources."dom-serializer-1.3.2"
+      sources."domelementtype-2.2.0"
+      (sources."domexception-2.0.1" // {
         dependencies = [
-          sources."domhandler-4.2.2"
+          sources."webidl-conversions-5.0.0"
         ];
       })
-      sources."domelementtype-2.2.0"
-      sources."domhandler-3.3.0"
-      (sources."domutils-2.8.0" // {
+      sources."domhandler-4.2.2"
+      sources."domutils-2.8.0"
+      sources."ecc-jsbn-0.1.2"
+      (sources."editorconfig-0.15.3" // {
         dependencies = [
-          sources."domhandler-4.2.2"
+          sources."lru-cache-4.1.5"
+          sources."semver-5.7.1"
+          sources."yallist-2.1.2"
         ];
       })
-      sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
       sources."emoji-regex-8.0.0"
       sources."encodeurl-1.0.2"
+      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."escodegen-2.0.0"
+      (sources."eslint-7.32.0" // {
+        dependencies = [
+          sources."argparse-1.0.10"
+          sources."debug-4.3.2"
+          sources."js-yaml-3.14.1"
+          sources."levn-0.4.1"
+          sources."ms-2.1.2"
+          sources."optionator-0.9.1"
+          sources."prelude-ls-1.2.1"
+          sources."type-check-0.4.0"
+        ];
+      })
+      (sources."eslint-scope-5.1.1" // {
+        dependencies = [
+          sources."estraverse-4.3.0"
+        ];
+      })
+      (sources."eslint-utils-2.1.0" // {
+        dependencies = [
+          sources."eslint-visitor-keys-1.3.0"
+        ];
+      })
+      sources."eslint-visitor-keys-2.1.0"
+      (sources."espree-7.3.1" // {
+        dependencies = [
+          sources."acorn-7.4.1"
+          sources."eslint-visitor-keys-1.3.0"
+        ];
+      })
       sources."esprima-4.0.1"
+      sources."esquery-1.4.0"
+      sources."esrecurse-4.3.0"
+      sources."estraverse-5.3.0"
+      sources."esutils-2.0.3"
       sources."etag-1.8.1"
-      (sources."expect-27.2.1" // {
+      (sources."expect-27.3.1" // {
         dependencies = [
           sources."ansi-styles-5.2.0"
         ];
@@ -2761,22 +3919,29 @@ let
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
       sources."fast-json-stable-stringify-2.1.0"
+      sources."fast-levenshtein-2.0.6"
+      sources."file-entry-cache-6.0.1"
       sources."fill-range-7.0.1"
       sources."finalhandler-1.1.2"
       sources."find-up-5.0.0"
       sources."flat-5.0.2"
+      sources."flat-cache-3.0.4"
+      sources."flatted-3.2.4"
+      sources."follow-redirects-1.14.5"
       sources."forever-agent-0.6.1"
-      sources."form-data-2.3.3"
+      sources."form-data-3.0.1"
       sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       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."get-caller-file-2.0.5"
       sources."getpass-0.1.7"
-      sources."glob-7.1.7"
+      sources."glob-7.2.0"
       sources."glob-parent-5.1.2"
       sources."glob-to-regexp-0.4.1"
+      sources."globals-13.12.0"
       sources."graceful-fs-4.2.8"
       sources."growl-1.10.5"
       sources."har-schema-2.0.0"
@@ -2785,129 +3950,184 @@ let
       sources."has-flag-4.0.0"
       sources."hash.js-1.1.7"
       sources."he-1.2.0"
-      sources."html-to-text-6.0.0"
+      sources."html-encoding-sniffer-2.0.1"
+      sources."html-to-text-8.1.0"
       sources."htmlencode-0.0.4"
-      sources."htmlparser2-4.1.0"
+      sources."htmlparser2-6.1.0"
       sources."http-errors-1.7.2"
+      (sources."http-proxy-agent-4.0.1" // {
+        dependencies = [
+          sources."debug-4.3.2"
+          sources."ms-2.1.2"
+        ];
+      })
       sources."http-signature-1.2.0"
+      (sources."https-proxy-agent-5.0.0" // {
+        dependencies = [
+          sources."debug-4.3.2"
+          sources."ms-2.1.2"
+        ];
+      })
       sources."iconv-lite-0.4.24"
+      sources."ignore-4.0.6"
+      sources."import-fresh-3.3.0"
+      sources."imurmurhash-0.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
       sources."ipaddr.js-1.9.1"
       sources."is-binary-path-2.1.0"
-      sources."is-core-module-2.6.0"
+      sources."is-core-module-2.8.0"
       sources."is-extglob-2.1.1"
-      sources."is-fullwidth-code-point-2.0.0"
-      sources."is-glob-4.0.1"
+      sources."is-fullwidth-code-point-3.0.0"
+      sources."is-glob-4.0.3"
       sources."is-number-7.0.0"
       sources."is-plain-obj-2.1.0"
       sources."is-plain-object-5.0.0"
+      sources."is-potential-custom-element-name-1.0.1"
       sources."is-promise-2.2.2"
       sources."is-typedarray-1.0.0"
       sources."is-unicode-supported-0.1.0"
       sources."isexe-2.0.0"
       sources."isstream-0.1.2"
-      sources."jest-diff-27.2.0"
-      sources."jest-get-type-27.0.6"
-      sources."jest-matcher-utils-27.2.0"
-      sources."jest-message-util-27.2.0"
+      sources."jest-diff-27.3.1"
+      sources."jest-get-type-27.3.1"
+      sources."jest-matcher-utils-27.3.1"
+      (sources."jest-message-util-27.3.1" // {
+        dependencies = [
+          sources."@babel/code-frame-7.16.0"
+        ];
+      })
       sources."jest-regex-util-27.0.6"
       sources."js-tokens-4.0.0"
       sources."js-yaml-4.1.0"
       sources."jsbn-0.1.1"
+      sources."jsdom-16.7.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."json5-2.2.0"
       sources."jsprim-1.4.1"
-      sources."klona-2.0.4"
+      sources."levn-0.3.0"
       sources."locate-path-6.0.0"
       sources."lodash-4.17.21"
+      sources."lodash.merge-4.6.2"
+      sources."lodash.truncate-4.4.2"
       sources."log-symbols-4.1.0"
       sources."lowdb-1.0.0"
       sources."lru-cache-6.0.0"
       sources."make-error-1.3.6"
-      sources."matrix-bot-sdk-0.5.19"
+      (sources."matrix-bot-sdk-0.5.19" // {
+        dependencies = [
+          sources."domhandler-3.3.0"
+          sources."html-to-text-6.0.0"
+          sources."htmlparser2-4.1.0"
+        ];
+      })
       sources."media-typer-0.3.0"
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."micromatch-4.0.4"
       sources."mime-1.6.0"
-      sources."mime-db-1.49.0"
-      sources."mime-types-2.1.32"
+      sources."mime-db-1.51.0"
+      sources."mime-types-2.1.34"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
       sources."mkdirp-1.0.4"
-      (sources."mocha-9.1.1" // {
+      (sources."mocha-9.1.3" // {
         dependencies = [
-          (sources."debug-4.3.1" // {
+          (sources."debug-4.3.2" // {
             dependencies = [
               sources."ms-2.1.2"
             ];
           })
+          sources."glob-7.1.7"
           sources."ms-2.1.3"
-          sources."nanoid-3.1.23"
+          sources."nanoid-3.1.25"
           sources."supports-color-8.1.1"
         ];
       })
+      sources."moo-0.5.1"
       (sources."morgan-1.10.0" // {
         dependencies = [
           sources."depd-2.0.0"
         ];
       })
       sources."ms-2.0.0"
-      sources."nanoid-3.1.25"
+      sources."nanoid-3.1.30"
+      sources."natural-compare-1.4.0"
+      sources."nearley-2.20.1"
       sources."negotiator-0.6.2"
       sources."normalize-path-3.0.0"
+      sources."nwsapi-2.2.0"
       sources."oauth-sign-0.9.0"
       sources."on-finished-2.3.0"
       sources."on-headers-1.0.2"
       sources."once-1.4.0"
+      sources."optionator-0.8.3"
       sources."p-limit-3.1.0"
       sources."p-locate-5.0.0"
+      sources."parent-module-1.0.1"
       sources."parse-srcset-1.0.2"
+      sources."parse5-6.0.1"
+      sources."parseley-0.7.0"
       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-parse-1.0.7"
       sources."path-to-regexp-0.1.7"
       sources."performance-now-2.1.0"
+      sources."picocolors-1.0.0"
       sources."picomatch-2.3.0"
       sources."pify-3.0.0"
-      sources."postcss-8.3.6"
-      (sources."pretty-format-27.2.0" // {
+      sources."postcss-8.3.11"
+      sources."prelude-ls-1.1.2"
+      (sources."pretty-format-27.3.1" // {
         dependencies = [
           sources."ansi-styles-5.2.0"
         ];
       })
+      sources."progress-2.0.3"
       sources."proxy-addr-2.0.7"
+      sources."pseudomap-1.0.2"
       sources."psl-1.8.0"
       sources."punycode-2.1.1"
       sources."qs-6.7.0"
+      sources."railroad-diagrams-1.0.0"
+      sources."randexp-0.4.6"
       sources."randombytes-2.1.0"
       sources."range-parser-1.2.1"
       sources."raw-body-2.4.0"
       sources."react-is-17.0.2"
       sources."readdirp-3.6.0"
+      sources."regexpp-3.2.0"
       (sources."request-2.88.2" // {
         dependencies = [
+          sources."form-data-2.3.3"
           sources."qs-6.5.2"
+          sources."tough-cookie-2.5.0"
+        ];
+      })
+      (sources."request-promise-4.2.6" // {
+        dependencies = [
+          sources."tough-cookie-2.5.0"
         ];
       })
-      sources."request-promise-4.2.6"
       sources."request-promise-core-1.1.4"
       sources."require-directory-2.1.1"
+      sources."require-from-string-2.0.2"
       sources."resolve-1.20.0"
+      sources."resolve-from-4.0.0"
+      sources."ret-0.1.15"
+      sources."rimraf-3.0.2"
       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-5.7.1"
+      sources."sanitize-html-2.5.3"
+      sources."saxes-5.0.1"
+      sources."selderee-0.6.0"
+      sources."semver-7.3.5"
       (sources."send-0.17.1" // {
         dependencies = [
           sources."ms-2.1.1"
@@ -2916,7 +4136,11 @@ let
       sources."serialize-javascript-6.0.0"
       sources."serve-static-1.14.1"
       sources."setprototypeof-1.1.1"
+      sources."shebang-command-2.0.0"
+      sources."shebang-regex-3.0.0"
+      sources."sigmund-1.0.1"
       sources."slash-3.0.0"
+      sources."slice-ansi-4.0.0"
       sources."source-map-0.6.1"
       sources."source-map-js-0.6.2"
       sources."source-map-support-0.5.20"
@@ -2930,18 +4154,23 @@ let
       sources."statuses-1.5.0"
       sources."stealthy-require-1.1.1"
       sources."steno-0.4.4"
-      sources."string-width-2.1.1"
-      (sources."strip-ansi-4.0.0" // {
-        dependencies = [
-          sources."ansi-regex-3.0.0"
-        ];
-      })
+      sources."string-width-4.2.3"
+      sources."strip-ansi-6.0.1"
       sources."strip-bom-3.0.0"
       sources."strip-json-comments-3.1.1"
       sources."supports-color-7.2.0"
+      sources."symbol-tree-3.2.4"
+      (sources."table-6.7.3" // {
+        dependencies = [
+          sources."ajv-8.8.1"
+          sources."json-schema-traverse-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."tough-cookie-4.0.0"
+      sources."tr46-2.1.0"
       sources."ts-mocha-8.0.0"
       (sources."ts-node-7.0.1" // {
         dependencies = [
@@ -2967,40 +4196,43 @@ let
           sources."has-flag-3.0.0"
           sources."js-yaml-3.14.1"
           sources."mkdirp-0.5.5"
+          sources."semver-5.7.1"
           sources."supports-color-5.5.0"
         ];
       })
       sources."tsutils-2.29.0"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
+      sources."type-check-0.3.2"
+      sources."type-fest-0.20.2"
       sources."type-is-1.6.18"
-      sources."typescript-4.4.3"
+      sources."typescript-4.5.2"
+      sources."typescript-formatter-7.2.2"
+      sources."universalify-0.1.2"
       sources."unpipe-1.0.0"
       sources."uri-js-4.4.1"
       sources."utils-merge-1.0.1"
       sources."uuid-3.4.0"
+      sources."v8-compile-cache-2.3.0"
       sources."vary-1.1.2"
       sources."verror-1.10.0"
+      sources."w3c-hr-time-1.0.2"
+      sources."w3c-xmlserializer-2.0.0"
+      sources."webidl-conversions-6.1.0"
+      sources."whatwg-encoding-1.0.5"
+      sources."whatwg-mimetype-2.3.0"
+      sources."whatwg-url-8.7.0"
       sources."which-2.0.2"
-      sources."wide-align-1.1.3"
+      sources."word-wrap-1.2.3"
       sources."workerpool-6.1.5"
-      (sources."wrap-ansi-7.0.0" // {
-        dependencies = [
-          sources."is-fullwidth-code-point-3.0.0"
-          sources."string-width-4.2.2"
-          sources."strip-ansi-6.0.0"
-        ];
-      })
+      sources."wrap-ansi-7.0.0"
       sources."wrappy-1.0.2"
+      sources."ws-7.5.5"
+      sources."xml-name-validator-3.0.0"
+      sources."xmlchars-2.2.0"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      (sources."yargs-16.2.0" // {
-        dependencies = [
-          sources."is-fullwidth-code-point-3.0.0"
-          sources."string-width-4.2.2"
-          sources."strip-ansi-6.0.0"
-        ];
-      })
+      sources."yargs-16.2.0"
       sources."yargs-parser-20.2.4"
       sources."yargs-unparser-2.0.0"
       sources."yn-2.0.0"
diff --git a/pkgs/servers/monitoring/icinga2/default.nix b/pkgs/servers/monitoring/icinga2/default.nix
index 7079ae4ff8dbc..0b039bf21a79b 100644
--- a/pkgs/servers/monitoring/icinga2/default.nix
+++ b/pkgs/servers/monitoring/icinga2/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, cmake, flex, bison, systemd
+{ stdenv, lib, fetchFromGitHub, fetchpatch, cmake, flex, bison, systemd
 , boost, openssl, patchelf, mariadb-connector-c, postgresql, zlib
 # Databases
 , withMysql ? true, withPostgresql ? false
@@ -9,19 +9,24 @@
 
 stdenv.mkDerivation rec {
   pname = "icinga2${nameSuffix}";
-  version = "2.13.1";
+  version = "2.13.2";
 
   src = fetchFromGitHub {
     owner = "icinga";
     repo = "icinga2";
     rev = "v${version}";
-    sha256 = "sha256-cGVUNO3p00bkPd4tPbipevuixHz8ptk6W8y1rl3dge8=";
+    sha256 = "sha256:1ijvav2ymgq1i8jycrqbp2y4r54y0dkwjnwxc20bmcixxh877zdn";
   };
 
   patches = [
     ./etc-icinga2.patch # Makes /etc/icinga2 relative to / instead of the store path
     ./no-systemd-service.patch # Prevent systemd service from being written to /usr
     ./no-var-directories.patch # Prevent /var directories from being created
+    # Fix the non-unity build
+    (fetchpatch {
+      url = "https://github.com/Icinga/icinga2/commit/2ad0a4b8c3852ad937fec9fc85780230257c821e.patch";
+      sha256 = "sha256:06qn7x73zbccmd8ycj46a29x2rr6qjwg0rr831wc2gc6q2k9d2g0";
+    })
   ];
 
   cmakeFlags = let
diff --git a/pkgs/servers/monitoring/prometheus/webui/codemirror-promql/default.nix b/pkgs/servers/monitoring/prometheus/webui/codemirror-promql/default.nix
index 20c7e2568cf0b..6b56f640ae9a3 100644
--- a/pkgs/servers/monitoring/prometheus/webui/codemirror-promql/default.nix
+++ b/pkgs/servers/monitoring/prometheus/webui/codemirror-promql/default.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../../../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/servers/monitoring/prometheus/webui/webui/default.nix b/pkgs/servers/monitoring/prometheus/webui/webui/default.nix
index 20c7e2568cf0b..6b56f640ae9a3 100644
--- a/pkgs/servers/monitoring/prometheus/webui/webui/default.nix
+++ b/pkgs/servers/monitoring/prometheus/webui/webui/default.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../../../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/servers/mpd/default.nix b/pkgs/servers/mpd/default.nix
index 95ac59cec2ba4..8f1a407bf56d7 100644
--- a/pkgs/servers/mpd/default.nix
+++ b/pkgs/servers/mpd/default.nix
@@ -98,7 +98,7 @@ let
       # using libmad to decode mp3 files on darwin is causing a segfault -- there
       # is probably a solution, but I'm disabling it for now
       platformMask = lib.optionals stdenv.isDarwin [ "mad" "pulse" "jack" "nfs" "smbclient" ]
-                  ++ lib.optionals (!stdenv.isLinux) [ "alsa" "io_uring" "systemd" "syslog" ];
+                  ++ lib.optionals (!stdenv.isLinux) [ "alsa" "pipewire" "io_uring" "systemd" "syslog" ];
 
       knownFeatures = builtins.attrNames featureDependencies ++ builtins.attrNames nativeFeatureDependencies;
       platformFeatures = lib.subtractLists platformMask knownFeatures;
@@ -117,13 +117,13 @@ let
 
     in stdenv.mkDerivation rec {
       pname = "mpd";
-      version = "0.23.2";
+      version = "0.23.4";
 
       src = fetchFromGitHub {
         owner  = "MusicPlayerDaemon";
         repo   = "MPD";
         rev    = "v${version}";
-        sha256 = "sha256-gn06t8S0hh5xe5V1vnXVHSb0FwxY40onUV+Bt7oL9ic=";
+        sha256 = "sha256-siMFLV1fKdRt8To6AhLXmAAsgqZCA/bbvmlhbb6hLic=";
       };
 
       buildInputs = [
diff --git a/pkgs/servers/mumsi/default.nix b/pkgs/servers/mumsi/default.nix
deleted file mode 100644
index c6fd2332c90c5..0000000000000
--- a/pkgs/servers/mumsi/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ stdenv, lib, fetchFromGitHub, cmake, pkg-config, boost
-, log4cpp, pjsip, openssl, alsa-lib, mumlib }:
-with lib; stdenv.mkDerivation {
-  pname = "mumsi";
-  version = "unstable-2018-12-12";
-
-  src = fetchFromGitHub {
-    owner = "slomkowski";
-    repo = "mumsi";
-    rev = "961b75792f8da22fb5502e39edb286e32172d0b0";
-    sha256 = "0vrivl1fiiwjsz4v26nrn8ra3k9v0mcz7zjm2z319fw8hv6n1nrk";
-  };
-
-  buildInputs = [ boost log4cpp pkg-config pjsip mumlib openssl alsa-lib ];
-  nativeBuildInputs = [ cmake pkg-config ];
-  installPhase = ''
-    install -Dm555 mumsi $out/bin/mumsi
-  '';
-
-  meta = {
-    description = "SIP to Mumble gateway/bridge using PJSUA stack";
-    homepage = "https://github.com/slomkowski/mumsi";
-    maintainers = with maintainers; [ das_j ];
-    license = licenses.asl20;
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/servers/mx-puppet-discord/node-composition.nix b/pkgs/servers/mx-puppet-discord/node-composition.nix
index 777c9db52568b..1285e13cfba4a 100644
--- a/pkgs/servers/mx-puppet-discord/node-composition.nix
+++ b/pkgs/servers/mx-puppet-discord/node-composition.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix
index 9c6e3a22122a2..0b7fb6f50fe77 100644
--- a/pkgs/servers/nextcloud/default.nix
+++ b/pkgs/servers/nextcloud/default.nix
@@ -51,8 +51,8 @@ in {
   };
 
   nextcloud22 = generic {
-    version = "22.2.2";
-    sha256 = "sha256-lDvn29N19Lhm3P2YIVM/85vr/U07qR+M8TkF/D/GTfA=";
+    version = "22.2.3";
+    sha256 = "sha256-ZqKaakkHOMCr7bZ3y2jHyR+rqz5kGaPJnYtAaJnrlCo=";
   };
   # tip: get she sha with:
   # curl 'https://download.nextcloud.com/server/releases/nextcloud-${version}.tar.bz2.sha256'
diff --git a/pkgs/servers/routinator/default.nix b/pkgs/servers/routinator/default.nix
index edff95d2e11ba..cb2c68d6c2d7c 100644
--- a/pkgs/servers/routinator/default.nix
+++ b/pkgs/servers/routinator/default.nix
@@ -20,9 +20,8 @@ rustPlatform.buildRustPackage rec {
 
   buildInputs = lib.optionals stdenv.isDarwin [ Security ];
 
-  cargoBuildFlags = [ "--no-default-features" "--features=socks" ];
-
-  cargoTestFlags = cargoBuildFlags;
+  buildNoDefaultFeatures = true;
+  buildFeatures = [ "socks" ];
 
   meta = with lib; {
     description = "An RPKI Validator written in Rust";
diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix
index 0034a831bfe27..90fa783512863 100644
--- a/pkgs/servers/sql/mariadb/default.nix
+++ b/pkgs/servers/sql/mariadb/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchzip, fetchFromGitHub, cmake, pkg-config, makeWrapper, ncurses, nixosTests
+{ lib, stdenv, fetchurl, fetchFromGitHub, cmake, pkg-config, makeWrapper, ncurses, nixosTests
 , libiconv, openssl, pcre2, boost, judy, bison, libxml2, libkrb5, linux-pam, curl
 , libaio, libevent, jemalloc, cracklib, systemd, perl
 , bzip2, lz4, lzo, snappy, xz, zlib, zstd
@@ -24,9 +24,9 @@ mariadb = server // {
 common = rec { # attributes common to both builds
   version = "10.6.5";
 
-  src = fetchzip {
+  src = fetchurl {
     url = "https://downloads.mariadb.com/MariaDB/mariadb-${version}/source/mariadb-${version}.tar.gz";
-    sha256 = "0rvcllbplgn92kr5n3qxfasnsqc8cn9ijm01fb7i7j2p9zxnfhig";
+    sha256 = "sha256-4L4EBCjZpCqLtL0iG1Z/8lIs1vqJBjhic9pPA8XCCo8=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ]
@@ -44,7 +44,10 @@ common = rec { # attributes common to both builds
 
   patches = [
     ./cmake-includedir.patch
-  ];
+  ]
+  # Fixes a build issue as documented on
+  # https://jira.mariadb.org/browse/MDEV-26769?focusedCommentId=206073&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-206073
+  ++ lib.optional (!stdenv.isLinux) ./macos-MDEV-26769-regression-fix.patch;
 
   cmakeFlags = [
     "-DBUILD_CONFIG=mysql_release"
diff --git a/pkgs/servers/sql/mariadb/macos-MDEV-26769-regression-fix.patch b/pkgs/servers/sql/mariadb/macos-MDEV-26769-regression-fix.patch
new file mode 100644
index 0000000000000..8c0e6f78e2875
--- /dev/null
+++ b/pkgs/servers/sql/mariadb/macos-MDEV-26769-regression-fix.patch
@@ -0,0 +1,12 @@
+diff -ru a/storage/innobase/include/buf0types.h b/storage/innobase/include/buf0types.h
+--- a/storage/innobase/include/buf0types.h	2021-11-17 02:37:32.000000000 -0500
++++ b/storage/innobase/include/buf0types.h	2021-11-17 02:38:50.000000000 -0500
+@@ -179,7 +179,7 @@
+ #include "sux_lock.h"
+ 
+ #ifdef SUX_LOCK_GENERIC
+-class page_hash_latch : private rw_lock
++class page_hash_latch : public rw_lock
+ {
+   /** Wait for a shared lock */
+   void read_lock_wait();
diff --git a/pkgs/servers/sql/mssql/jdbc/builder.sh b/pkgs/servers/sql/mssql/jdbc/builder.sh
deleted file mode 100644
index a5ba86cb08087..0000000000000
--- a/pkgs/servers/sql/mssql/jdbc/builder.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-source $stdenv/setup
-
-set -e
-
-mkdir -p $out/share/java
-cp $src $out/share/java/mssql-jdbc.jar
diff --git a/pkgs/servers/sql/mssql/jdbc/default.nix b/pkgs/servers/sql/mssql/jdbc/default.nix
index 881f014f13426..78132614bba9b 100644
--- a/pkgs/servers/sql/mssql/jdbc/default.nix
+++ b/pkgs/servers/sql/mssql/jdbc/default.nix
@@ -1,15 +1,25 @@
-{lib, stdenv, fetchurl}:
+{ lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
   pname = "mssql-jdbc";
   version = "7.2.2";
-  builder = ./builder.sh;
 
   src = fetchurl {
-    url = "https://github.com/Microsoft/mssql-jdbc/releases/download/v${version}/${pname}-${version}.jre8.jar";
+    url = "https://github.com/Microsoft/mssql-jdbc/releases/download/v${version}/mssql-jdbc-${version}.jre8.jar";
     sha256 = "09psxjy1v3khq8lcq6h9mbgyijsgawf0z2qryk1l91ypnwl8s3pg";
   };
 
+  dontUnpack = true;
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/java
+    cp $src $out/share/java/mssql-jdbc.jar
+
+    runHook postInstall
+  '';
+
   meta = {
     platforms = lib.platforms.unix;
   };
diff --git a/pkgs/servers/web-apps/cryptpad/node-packages.nix b/pkgs/servers/web-apps/cryptpad/node-packages.nix
index 76d5cf6a202f1..0961603968eac 100644
--- a/pkgs/servers/web-apps/cryptpad/node-packages.nix
+++ b/pkgs/servers/web-apps/cryptpad/node-packages.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/servers/web-apps/whitebophir/node-packages.nix b/pkgs/servers/web-apps/whitebophir/node-packages.nix
index 76d5cf6a202f1..0961603968eac 100644
--- a/pkgs/servers/web-apps/whitebophir/node-packages.nix
+++ b/pkgs/servers/web-apps/whitebophir/node-packages.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/servers/zoneminder/default.nix b/pkgs/servers/zoneminder/default.nix
index 3aed72eb8b8d5..b0828de006f75 100644
--- a/pkgs/servers/zoneminder/default.nix
+++ b/pkgs/servers/zoneminder/default.nix
@@ -78,13 +78,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "zoneminder";
-  version = "1.36.8";
+  version = "1.36.10";
 
   src = fetchFromGitHub {
     owner  = "ZoneMinder";
     repo   = "zoneminder";
     rev    = version;
-    sha256 = "sha256-UUpq4CCZq+EwVNGsLCQuVWdY3yoGw977AaMk1iJ6a5U=";
+    sha256 = "sha256-MmBnbVDitKOctPe2dNe1sMNNs/qEYGVq3UMJxAkLlCc=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/shells/nushell/default.nix b/pkgs/shells/nushell/default.nix
index 7a07c4ffdc4d9..ffc93bff6b735 100644
--- a/pkgs/shells/nushell/default.nix
+++ b/pkgs/shells/nushell/default.nix
@@ -37,7 +37,7 @@ rustPlatform.buildRustPackage rec {
     ++ lib.optionals (withExtraFeatures && stdenv.isLinux) [ xorg.libX11 ]
     ++ lib.optionals (withExtraFeatures && stdenv.isDarwin) [ AppKit nghttp2 libgit2 ];
 
-  cargoBuildFlags = lib.optional withExtraFeatures "--features=extra";
+  buildFeatures = lib.optional withExtraFeatures "extra";
 
   # Since 0.34, nu has an indirect dependency on `zstd-sys` (via `polars` and
   # `parquet`, for dataframe support), which by default has an impure build
diff --git a/pkgs/tools/X11/xidlehook/default.nix b/pkgs/tools/X11/xidlehook/default.nix
index ac5d6fc964bbe..a19de0530bd1e 100644
--- a/pkgs/tools/X11/xidlehook/default.nix
+++ b/pkgs/tools/X11/xidlehook/default.nix
@@ -25,12 +25,14 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1pl7f8fhxfcy0c6c08vkagp0x1ak96vc5wgamigrk1nkd6l371lb";
   };
 
-  cargoBuildFlags = lib.optionals (!stdenv.isLinux) [ "--no-default-features" "--features" "pulse" ];
   cargoSha256 = "1y7m61j07gvqfqz97mda39nc602sv7a826c06m8l22i7z380xfms";
 
   buildInputs = [ xlibsWrapper xorg.libXScrnSaver libpulseaudio ] ++ lib.optional stdenv.isDarwin Security;
   nativeBuildInputs = [ pkg-config patchelf python3 ];
 
+  buildNoDefaultFeatures = !stdenv.isLinux;
+  buildFeatures = lib.optional (!stdenv.isLinux) "pulse";
+
   postFixup = lib.optionalString stdenv.isLinux ''
     RPATH="$(patchelf --print-rpath $out/bin/xidlehook)"
     patchelf --set-rpath "$RPATH:${libpulseaudio}/lib" $out/bin/xidlehook
diff --git a/pkgs/tools/admin/aliyun-cli/default.nix b/pkgs/tools/admin/aliyun-cli/default.nix
new file mode 100644
index 0000000000000..3ff8ae3caa23d
--- /dev/null
+++ b/pkgs/tools/admin/aliyun-cli/default.nix
@@ -0,0 +1,30 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "aliyun-cli";
+  version = "3.0.94";
+
+  src = fetchFromGitHub {
+    rev = "v${version}";
+    owner = "aliyun";
+    repo = pname;
+    fetchSubmodules = true;
+    sha256 = "sha256:1l9rzdp9kxxicvp45pa7288zxa07xp7w6aj7d9k9xlzv8l96k6j3";
+  };
+  vendorSha256 = "sha256:0dklq78bqfidcda8pwd6qwaycah3gndmq9s90h1pqx1isw4frckk";
+
+  subPackages = ["aliyun-openapi-meta" "main"];
+
+  ldFlags = "-X 'github.com/aliyun/${pname}/cli.Version=${version}'";
+
+  postInstall = ''
+    mv $out/bin/main $out/bin/aliyun
+  '';
+
+  meta = with lib; {
+    description = "Tool to manage and use Alibaba Cloud resources through a command line interface.";
+    homepage = "https://github.com/aliyun/aliyun-cli";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ ornxka ];
+  };
+}
diff --git a/pkgs/tools/admin/meshcentral/default.nix b/pkgs/tools/admin/meshcentral/default.nix
index 070d6ef8c2115..b149c14413955 100644
--- a/pkgs/tools/admin/meshcentral/default.nix
+++ b/pkgs/tools/admin/meshcentral/default.nix
@@ -1,11 +1,11 @@
 { lib, fetchpatch, fetchzip, yarn2nix-moretea, nodejs, jq, dos2unix }:
 
 yarn2nix-moretea.mkYarnPackage rec {
-  version = "0.8.98";
+  version = "0.9.50";
 
   src = fetchzip {
     url = "https://registry.npmjs.org/meshcentral/-/meshcentral-${version}.tgz";
-    sha256 = "0120csvak07mkgaiq4sxyslcipgfgal0mhd8gwywcij2s71a3n26";
+    sha256 = "0igkl2ip2mas3djg1rmw209xar1kfiqy277r2lzi5zcnn4hh820m";
   };
 
   packageJSON = ./package.json;
@@ -28,6 +28,8 @@ yarn2nix-moretea.mkYarnPackage rec {
 
   publishBinsFor = [ ];
 
+  passthru.updateScript = ./update.sh;
+
   meta = with lib; {
     description = "Computer management web app";
     homepage = "https://meshcentral.com/info/";
diff --git a/pkgs/tools/admin/meshcentral/package.json b/pkgs/tools/admin/meshcentral/package.json
index 99125c15e10a6..119a3f2b5d17c 100644
--- a/pkgs/tools/admin/meshcentral/package.json
+++ b/pkgs/tools/admin/meshcentral/package.json
@@ -1,6 +1,6 @@
 {
   "name": "meshcentral",
-  "version": "0.8.98",
+  "version": "0.9.50",
   "keywords": [
     "Remote Device Management",
     "Remote Device Monitoring",
@@ -39,19 +39,21 @@
     "body-parser": "^1.19.0",
     "cbor": "~5.2.0",
     "compression": "^1.7.4",
-    "cookie-session": "^2.0.0-beta.3",
+    "cookie-session": "^1.4.0",
     "express": "^4.17.0",
     "express-handlebars": "^3.1.0",
     "express-ws": "^4.0.0",
     "ipcheck": "^0.1.0",
-    "minimist": "^1.2.0",
+    "minimist": "^1.2.5",
     "multiparty": "^4.2.1",
-    "nedb": "^1.8.0",
+    "@yetzt/nedb": "^1.8.0",
     "node-forge": "^0.10.0",
     "ws": "^5.2.3",
-    "xmldom": "^0.5.0",
     "yauzl": "^2.10.0"
   },
+  "engines": {
+    "node": ">=10.0.0"
+  },
   "repository": {
     "type": "git",
     "url": "https://github.com/Ylianst/MeshCentral.git"
@@ -68,10 +70,9 @@
     "passport-saml": "*",
     "ws": "5.2.3",
     "cbor": "5.2.0",
-    "nedb": "*",
+    "@yetzt/nedb": "*",
     "https": "*",
     "yauzl": "*",
-    "xmldom": "*",
     "ipcheck": "*",
     "express": "*",
     "archiver": "4.0.2",
@@ -80,9 +81,9 @@
     "express-ws": "4.0.0",
     "compression": "*",
     "body-parser": "*",
-    "cookie-session": "*",
+    "cookie-session": "1.4.0",
     "express-handlebars": "*",
-    "node-windows": "*",
+    "node-windows": "0.1.4",
     "loadavg-windows": "*",
     "node-sspi": "*",
     "ldapauth-fork": "*",
@@ -93,8 +94,10 @@
     "aedes": "0.39.0",
     "mysql": "*",
     "@mysql/xdevapi": "*",
-    "mongodb": "*",
+    "mongodb": "4.1.0",
     "saslprep": "*",
+    "pg": "8.7.1",
+    "pgtools": "0.3.2",
     "mariadb": "*",
     "node-vault": "*",
     "semver": "*",
diff --git a/pkgs/tools/admin/meshcentral/yarn.lock b/pkgs/tools/admin/meshcentral/yarn.lock
index 6d00c730024e2..cba8028834b98 100644
--- a/pkgs/tools/admin/meshcentral/yarn.lock
+++ b/pkgs/tools/admin/meshcentral/yarn.lock
@@ -2,138 +2,138 @@
 # yarn lockfile v1
 
 
-"@babel/code-frame@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.14.5.tgz#23b08d740e83f49c5e59945fbf1b43e80bbf4edb"
-  integrity sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==
+"@babel/code-frame@^7.16.0":
+  version "7.16.0"
+  resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.0.tgz#0dfc80309beec8411e65e706461c408b0bb9b431"
+  integrity sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA==
   dependencies:
-    "@babel/highlight" "^7.14.5"
+    "@babel/highlight" "^7.16.0"
 
-"@babel/generator@^7.15.0", "@babel/generator@^7.4.0":
-  version "7.15.0"
-  resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.15.0.tgz#a7d0c172e0d814974bad5aa77ace543b97917f15"
-  integrity sha512-eKl4XdMrbpYvuB505KTta4AV9g+wWzmVBW69tX0H2NwKVKd2YJbKgyK6M8j/rgLbmHOYJn6rUklV677nOyJrEQ==
+"@babel/generator@^7.16.0", "@babel/generator@^7.4.0":
+  version "7.16.0"
+  resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.16.0.tgz#d40f3d1d5075e62d3500bccb67f3daa8a95265b2"
+  integrity sha512-RR8hUCfRQn9j9RPKEVXo9LiwoxLPYn6hNZlvUOR8tSnaxlD0p0+la00ZP9/SnRt6HchKr+X0fO2r8vrETiJGew==
   dependencies:
-    "@babel/types" "^7.15.0"
+    "@babel/types" "^7.16.0"
     jsesc "^2.5.1"
     source-map "^0.5.0"
 
-"@babel/helper-function-name@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz#89e2c474972f15d8e233b52ee8c480e2cfcd50c4"
-  integrity sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ==
+"@babel/helper-function-name@^7.16.0":
+  version "7.16.0"
+  resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz#b7dd0797d00bbfee4f07e9c4ea5b0e30c8bb1481"
+  integrity sha512-BZh4mEk1xi2h4HFjWUXRQX5AEx4rvaZxHgax9gcjdLWdkjsY7MKt5p0otjsg5noXw+pB+clMCjw+aEVYADMjog==
   dependencies:
-    "@babel/helper-get-function-arity" "^7.14.5"
-    "@babel/template" "^7.14.5"
-    "@babel/types" "^7.14.5"
+    "@babel/helper-get-function-arity" "^7.16.0"
+    "@babel/template" "^7.16.0"
+    "@babel/types" "^7.16.0"
 
-"@babel/helper-get-function-arity@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz#25fbfa579b0937eee1f3b805ece4ce398c431815"
-  integrity sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg==
+"@babel/helper-get-function-arity@^7.16.0":
+  version "7.16.0"
+  resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz#0088c7486b29a9cb5d948b1a1de46db66e089cfa"
+  integrity sha512-ASCquNcywC1NkYh/z7Cgp3w31YW8aojjYIlNg4VeJiHkqyP4AzIvr4qx7pYDb4/s8YcsZWqqOSxgkvjUz1kpDQ==
   dependencies:
-    "@babel/types" "^7.14.5"
+    "@babel/types" "^7.16.0"
 
-"@babel/helper-hoist-variables@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz#e0dd27c33a78e577d7c8884916a3e7ef1f7c7f8d"
-  integrity sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==
+"@babel/helper-hoist-variables@^7.16.0":
+  version "7.16.0"
+  resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz#4c9023c2f1def7e28ff46fc1dbcd36a39beaa81a"
+  integrity sha512-1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg==
   dependencies:
-    "@babel/types" "^7.14.5"
+    "@babel/types" "^7.16.0"
 
-"@babel/helper-split-export-declaration@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz#22b23a54ef51c2b7605d851930c1976dd0bc693a"
-  integrity sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==
+"@babel/helper-split-export-declaration@^7.16.0":
+  version "7.16.0"
+  resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz#29672f43663e936df370aaeb22beddb3baec7438"
+  integrity sha512-0YMMRpuDFNGTHNRiiqJX19GjNXA4H0E8jZ2ibccfSxaCogbm3am5WN/2nQNj0YnQwGWM1J06GOcQ2qnh3+0paw==
   dependencies:
-    "@babel/types" "^7.14.5"
+    "@babel/types" "^7.16.0"
 
-"@babel/helper-validator-identifier@^7.14.5", "@babel/helper-validator-identifier@^7.14.9":
-  version "7.14.9"
-  resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz#6654d171b2024f6d8ee151bf2509699919131d48"
-  integrity sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==
+"@babel/helper-validator-identifier@^7.15.7":
+  version "7.15.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389"
+  integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==
 
-"@babel/highlight@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz#6861a52f03966405001f6aa534a01a24d99e8cd9"
-  integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==
+"@babel/highlight@^7.16.0":
+  version "7.16.0"
+  resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.0.tgz#6ceb32b2ca4b8f5f361fb7fd821e3fddf4a1725a"
+  integrity sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==
   dependencies:
-    "@babel/helper-validator-identifier" "^7.14.5"
+    "@babel/helper-validator-identifier" "^7.15.7"
     chalk "^2.0.0"
     js-tokens "^4.0.0"
 
-"@babel/parser@^7.14.5", "@babel/parser@^7.15.0", "@babel/parser@^7.4.3":
-  version "7.15.0"
-  resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.15.0.tgz#b6d6e29058ca369127b0eeca2a1c4b5794f1b6b9"
-  integrity sha512-0v7oNOjr6YT9Z2RAOTv4T9aP+ubfx4Q/OhVtAet7PFDt0t9Oy6Jn+/rfC6b8HJ5zEqrQCiMxJfgtHpmIminmJQ==
+"@babel/parser@^7.16.0", "@babel/parser@^7.16.3", "@babel/parser@^7.4.3":
+  version "7.16.3"
+  resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.16.3.tgz#271bafcb811080905a119222edbc17909c82261d"
+  integrity sha512-dcNwU1O4sx57ClvLBVFbEgx0UZWfd0JQX5X6fxFRCLHelFBGXFfSz6Y0FAq2PEwUqlqLkdVjVr4VASEOuUnLJw==
 
-"@babel/template@^7.14.5", "@babel/template@^7.4.0":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.14.5.tgz#a9bc9d8b33354ff6e55a9c60d1109200a68974f4"
-  integrity sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==
+"@babel/template@^7.16.0", "@babel/template@^7.4.0":
+  version "7.16.0"
+  resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.0.tgz#d16a35ebf4cd74e202083356fab21dd89363ddd6"
+  integrity sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==
   dependencies:
-    "@babel/code-frame" "^7.14.5"
-    "@babel/parser" "^7.14.5"
-    "@babel/types" "^7.14.5"
+    "@babel/code-frame" "^7.16.0"
+    "@babel/parser" "^7.16.0"
+    "@babel/types" "^7.16.0"
 
 "@babel/traverse@^7.4.3":
-  version "7.15.0"
-  resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.15.0.tgz#4cca838fd1b2a03283c1f38e141f639d60b3fc98"
-  integrity sha512-392d8BN0C9eVxVWd8H6x9WfipgVH5IaIoLp23334Sc1vbKKWINnvwRpb4us0xtPaCumlwbTtIYNA0Dv/32sVFw==
-  dependencies:
-    "@babel/code-frame" "^7.14.5"
-    "@babel/generator" "^7.15.0"
-    "@babel/helper-function-name" "^7.14.5"
-    "@babel/helper-hoist-variables" "^7.14.5"
-    "@babel/helper-split-export-declaration" "^7.14.5"
-    "@babel/parser" "^7.15.0"
-    "@babel/types" "^7.15.0"
+  version "7.16.3"
+  resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.16.3.tgz#f63e8a938cc1b780f66d9ed3c54f532ca2d14787"
+  integrity sha512-eolumr1vVMjqevCpwVO99yN/LoGL0EyHiLO5I043aYQvwOJ9eR5UsZSClHVCzfhBduMAsSzgA/6AyqPjNayJag==
+  dependencies:
+    "@babel/code-frame" "^7.16.0"
+    "@babel/generator" "^7.16.0"
+    "@babel/helper-function-name" "^7.16.0"
+    "@babel/helper-hoist-variables" "^7.16.0"
+    "@babel/helper-split-export-declaration" "^7.16.0"
+    "@babel/parser" "^7.16.3"
+    "@babel/types" "^7.16.0"
     debug "^4.1.0"
     globals "^11.1.0"
 
-"@babel/types@^7.14.5", "@babel/types@^7.15.0", "@babel/types@^7.4.0":
-  version "7.15.0"
-  resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.15.0.tgz#61af11f2286c4e9c69ca8deb5f4375a73c72dcbd"
-  integrity sha512-OBvfqnllOIdX4ojTHpwZbpvz4j3EWyjkZEdmjH0/cgsd6QOdSgU8rLSk6ard/pcW7rlmjdVSX/AWOaORR1uNOQ==
+"@babel/types@^7.16.0", "@babel/types@^7.4.0":
+  version "7.16.0"
+  resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.16.0.tgz#db3b313804f96aadd0b776c4823e127ad67289ba"
+  integrity sha512-PJgg/k3SdLsGb3hhisFvtLOw5ts113klrpLuIPtCJIU+BB24fqq6lf8RWqKJEjzqXR9AEH1rIb5XTqwBHB+kQg==
   dependencies:
-    "@babel/helper-validator-identifier" "^7.14.9"
+    "@babel/helper-validator-identifier" "^7.15.7"
     to-fast-properties "^2.0.0"
 
 "@mysql/xdevapi@*":
-  version "8.0.26"
-  resolved "https://registry.yarnpkg.com/@mysql/xdevapi/-/xdevapi-8.0.26.tgz#bdf5752553c53c32d665bfa3034f21fbfa989611"
-  integrity sha512-YiBW91Z4igfUil6y6+kWV2BNlD3JQvBgVjwIfpbuPdOGiPwh/eb6zc1fyFSxa5sY3PmMKc/7v4nhdauwPLyUwA==
+  version "8.0.27"
+  resolved "https://registry.yarnpkg.com/@mysql/xdevapi/-/xdevapi-8.0.27.tgz#1e19335dee89d413c7ffbfd29340a92930d2e9c6"
+  integrity sha512-8CVaCDxqXp6qDizxlO/GYPWv2NsYnXXPQygDHFH2rkow2Pi6zlYF7k+mIeRkH4KLZZQ+HZCfjJQkKB1kN5zTzg==
   dependencies:
     google-protobuf "3.14.0"
     parsimmon "1.16.0"
 
-"@sendgrid/client@^7.4.3":
-  version "7.4.3"
-  resolved "https://registry.yarnpkg.com/@sendgrid/client/-/client-7.4.3.tgz#bc71aae05de2cd9aa607f4eb1d886711d09f9595"
-  integrity sha512-tTaHx893w5iqG0sVtUnMyRchuwYF95k4UOkmov1MouMIeMUbNvbalITo7cG7YSXUTY9rT2t4eBY6HcEBCVeqfg==
+"@sendgrid/client@^7.6.0":
+  version "7.6.0"
+  resolved "https://registry.yarnpkg.com/@sendgrid/client/-/client-7.6.0.tgz#f90cb8759c96e1d90224f29ad98f8fdc2be287f3"
+  integrity sha512-cpBVZKLlMTO+vpE18krTixubYmZa98oTbLkqBDuTiA3zRkW+urrxg7pDR24TkI35Mid0Zru8jDHwnOiqrXu0TA==
   dependencies:
-    "@sendgrid/helpers" "^7.4.3"
-    axios "^0.21.1"
+    "@sendgrid/helpers" "^7.6.0"
+    axios "^0.21.4"
 
-"@sendgrid/helpers@^7.4.3":
-  version "7.4.3"
-  resolved "https://registry.yarnpkg.com/@sendgrid/helpers/-/helpers-7.4.3.tgz#231a4405266cfa291054df8b668fe3a4dc9387aa"
-  integrity sha512-Wt+68g1sVEM5UspJh34O/cxtv6BBbtAIk7U9B3PB2ySOtPs9e6hI1QkgYVwpNmkt7k2p86muUNyma/Aig25agg==
+"@sendgrid/helpers@^7.6.0":
+  version "7.6.0"
+  resolved "https://registry.yarnpkg.com/@sendgrid/helpers/-/helpers-7.6.0.tgz#b381bfab391bcd66c771811b22bb6bb2d5c1dfc6"
+  integrity sha512-0uWD+HSXLl4Z/X3cN+UMQC20RE7xwAACgppnfjDyvKG0KvJcUgDGz7HDdQkiMUdcVWfmyk6zKSg7XKfKzBjTwA==
   dependencies:
     deepmerge "^4.2.2"
 
 "@sendgrid/mail@*":
-  version "7.4.5"
-  resolved "https://registry.yarnpkg.com/@sendgrid/mail/-/mail-7.4.5.tgz#22cef36e793134833b36aff5d3f4f53e8f81dd52"
-  integrity sha512-adXMvrTUOlYr7+UTigZRGSYR9vheBv1y4fF2mugn29NBdQMfcQPGLQ5vIHgSAfcboBFCagZdamZqM5FeSGU0Hw==
+  version "7.6.0"
+  resolved "https://registry.yarnpkg.com/@sendgrid/mail/-/mail-7.6.0.tgz#e74ee30110527feab5d3b83d68af0cd94537f6d2"
+  integrity sha512-0KdaSZzflJD/vUAZjB3ALBIuaVGoLq22hrb2fvQXZHRepU/yhRNlEOqrr05MfKBnKskzq1blnD1J0fHxiwaolw==
   dependencies:
-    "@sendgrid/client" "^7.4.3"
-    "@sendgrid/helpers" "^7.4.3"
+    "@sendgrid/client" "^7.6.0"
+    "@sendgrid/helpers" "^7.6.0"
 
-"@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/geojson@^7946.0.7":
   version "7946.0.8"
@@ -148,14 +148,14 @@
     "@types/node" "*"
 
 "@types/node@*":
-  version "16.4.13"
-  resolved "https://registry.yarnpkg.com/@types/node/-/node-16.4.13.tgz#7dfd9c14661edc65cccd43a29eb454174642370d"
-  integrity sha512-bLL69sKtd25w7p1nvg9pigE4gtKVpGTPojBFLMkGHXuUgap2sLqQt2qUnqmVCDfzGUL0DRNZP+1prIZJbMeAXg==
+  version "16.11.7"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.7.tgz#36820945061326978c42a01e56b61cd223dfdc42"
+  integrity sha512-QB5D2sqfSjCmTuWcBWyJ+/44bcjO7VbjSbOE0ucoVbAsSNQc4Lt6QkgkVXkTDwkL4z/beecZNDvVX15D4P8Jbw==
 
 "@types/node@^14.14.14", "@types/node@^14.14.28":
-  version "14.17.9"
-  resolved "https://registry.yarnpkg.com/@types/node/-/node-14.17.9.tgz#b97c057e6138adb7b720df2bd0264b03c9f504fd"
-  integrity sha512-CMjgRNsks27IDwI785YMY0KLt3co/c0cQ5foxHYv/shC2w8oOnVwz5Ubq1QG5KzrcW+AXk6gzdnxIkDnTvzu3g==
+  version "14.17.33"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-14.17.33.tgz#011ee28e38dc7aee1be032ceadf6332a0ab15b12"
+  integrity sha512-noEeJ06zbn3lOh4gqe2v7NMGS33jrulfNqYFDjjEbhpDEHR5VTxgYNQSBqBlJIsBJW3uEYDgD6kvMnrrhGzq8g==
 
 "@types/webidl-conversions@*":
   version "6.1.1"
@@ -170,6 +170,11 @@
     "@types/node" "*"
     "@types/webidl-conversions" "*"
 
+"@xmldom/xmldom@^0.7.0", "@xmldom/xmldom@^0.7.5":
+  version "0.7.5"
+  resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.7.5.tgz#09fa51e356d07d0be200642b0e4f91d8e6dd408d"
+  integrity sha512-V3BIhmY36fXZ1OtVcI9W+FxQqxVLsPKcNjWigIaa81dLC9IolJl5Mt4Cvhmr0flUnjSpTdrbMTSbXqYqV5dT6A==
+
 "@xmpp/base64@^0.9.0":
   version "0.9.0"
   resolved "https://registry.yarnpkg.com/@xmpp/base64/-/base64-0.9.0.tgz#f5914c2b7228d833020af991a2a207267fc8fcf4"
@@ -380,6 +385,22 @@
   dependencies:
     ltx "^2.8.1"
 
+"@yetzt/binary-search-tree@^0.2.6":
+  version "0.2.6"
+  resolved "https://registry.yarnpkg.com/@yetzt/binary-search-tree/-/binary-search-tree-0.2.6.tgz#91b2d861c089da0bfbeceb5deeca57b81c4210ec"
+  integrity sha512-e/8wt8AAumI8VK5sv09b3IgWuRoblXJ5z0SQYfrL2nap89oKihvVaP1zy3FzD5NaeRi1X0gdXZA9lB3QAZILBg==
+
+"@yetzt/nedb@^1.8.0":
+  version "1.8.0"
+  resolved "https://registry.yarnpkg.com/@yetzt/nedb/-/nedb-1.8.0.tgz#c0e03bfd5f9e76045d4e4baacbebd271cb221258"
+  integrity sha512-1hUV/eIPSCRb4Vs9dgLekBCCawWNtf29immIF9kvzxnnnEoWgyFSDZgFvlFCiQ3Bzo8ifXn92HDS3l9fNvmtzA==
+  dependencies:
+    "@yetzt/binary-search-tree" "^0.2.6"
+    async "^3.2.0"
+    localforage "^1.9.0"
+    mkdirp "^1.0.4"
+    underscore "^1.13.1"
+
 abab@^2.0.3, abab@^2.0.5:
   version "2.0.5"
   resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a"
@@ -451,10 +472,10 @@ acorn@^7.1.1:
   resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
   integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
 
-acorn@^8.2.4:
-  version "8.4.1"
-  resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.4.1.tgz#56c36251fc7cabc7096adc18f05afe814321a28c"
-  integrity sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==
+acorn@^8.5.0:
+  version "8.5.0"
+  resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.5.0.tgz#4512ccb99b3698c752591e9bb4472e38ad43cee2"
+  integrity sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==
 
 aedes-packet@^1.0.0:
   version "1.0.0"
@@ -766,9 +787,9 @@ asn1.js@^5.3.0:
     safer-buffer "^2.1.0"
 
 asn1@^0.2.4, asn1@~0.2.3:
-  version "0.2.4"
-  resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136"
-  integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==
+  version "0.2.6"
+  resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d"
+  integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==
   dependencies:
     safer-buffer "~2.1.0"
 
@@ -792,11 +813,6 @@ async-limiter@~1.0.0:
   resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd"
   integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==
 
-async@0.2.10:
-  version "0.2.10"
-  resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1"
-  integrity sha1-trvgsGdLnXGXCMo43owjfLUmw9E=
-
 async@^2.0.1:
   version "2.6.3"
   resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff"
@@ -805,9 +821,9 @@ async@^2.0.1:
     lodash "^4.17.14"
 
 async@^3.2.0, async@~3.2.0:
-  version "3.2.1"
-  resolved "https://registry.yarnpkg.com/async/-/async-3.2.1.tgz#d3274ec66d107a47476a4c49136aacdb00665fc8"
-  integrity sha512-XdD5lRO/87udXCMC9meWdYiR+Nq6ZjUfXidViUZGu2F1MO4T3XwZ1et0hb2++BgLfhyJwy44BGB/yx80ABx8hg==
+  version "3.2.2"
+  resolved "https://registry.yarnpkg.com/async/-/async-3.2.2.tgz#2eb7671034bb2194d45d30e31e24ec7e7f9670cd"
+  integrity sha512-H0E+qZaDEfx/FY4t7iLRv1W2fFI6+pyCeTw1uN20AQPiwqwM6ojPxHxdLv4z8hi2DtnW9BOckSspLucW7pIE5g==
 
 asynckit@^0.4.0:
   version "0.4.0"
@@ -829,13 +845,20 @@ aws4@^1.8.0:
   resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59"
   integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==
 
-axios@0.21.1, axios@^0.21.1:
+axios@0.21.1:
   version "0.21.1"
   resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.1.tgz#22563481962f4d6bde9a76d516ef0e5d3c09b2b8"
   integrity sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==
   dependencies:
     follow-redirects "^1.10.0"
 
+axios@^0.21.1, axios@^0.21.4:
+  version "0.21.4"
+  resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575"
+  integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==
+  dependencies:
+    follow-redirects "^1.14.0"
+
 babel-cli@^6.16.0:
   version "6.26.0"
   resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.26.0.tgz#502ab54874d7db88ad00b887a06383ce03d002f1"
@@ -1387,13 +1410,6 @@ binary-extensions@^1.0.0:
   resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65"
   integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==
 
-binary-search-tree@0.2.5:
-  version "0.2.5"
-  resolved "https://registry.yarnpkg.com/binary-search-tree/-/binary-search-tree-0.2.5.tgz#7dbb3b210fdca082450dad2334c304af39bdc784"
-  integrity sha1-fbs7IQ/coIJFDa0jNMMErzm9x4Q=
-  dependencies:
-    underscore "~1.4.4"
-
 binary-search@1.3.6:
   version "1.3.6"
   resolved "https://registry.yarnpkg.com/binary-search/-/binary-search-1.3.6.tgz#e32426016a0c5092f0f3598836a1c7da3560565c"
@@ -1428,7 +1444,7 @@ bl@^4.0.2, bl@^4.0.3:
     inherits "^2.0.4"
     readable-stream "^3.4.0"
 
-bluebird@^3.5.0:
+bluebird@^3.3.5, bluebird@^3.5.0:
   version "3.7.2"
   resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
   integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==
@@ -1510,9 +1526,9 @@ bson@^1.1.4:
   integrity sha512-EvVNVeGo4tHxwi8L6bPj3y3itEvStdwvvlojVxxbyYfoaxJ6keLgrTuKdyfEAszFK+H3olzBuafE0yoh0D1gdg==
 
 bson@^4.4.0:
-  version "4.4.1"
-  resolved "https://registry.yarnpkg.com/bson/-/bson-4.4.1.tgz#682c3cb8b90b222414ce14ef8398154ba2cc21bc"
-  integrity sha512-Uu4OCZa0jouQJCKOk1EmmyqtdWAP5HVLru4lQxTwzJzxT+sJ13lVpEZU/MATDxtHiekWMAL84oQY3Xn1LpJVSg==
+  version "4.5.4"
+  resolved "https://registry.yarnpkg.com/bson/-/bson-4.5.4.tgz#5f74f1e11f743ea8aec30b5e24bfddae82846873"
+  integrity sha512-wIt0bPACnx8Ju9r6IsS2wVtGDHBr9Dxb+U29A1YED2pu8XOhS8aKjOnLZ8sxyXkPwanoK7iWWVhS1+coxde6xA==
   dependencies:
     buffer "^5.6.0"
 
@@ -1526,6 +1542,11 @@ buffer-equal-constant-time@1.0.1:
   resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819"
   integrity sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=
 
+buffer-writer@2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/buffer-writer/-/buffer-writer-2.0.0.tgz#ce7eb81a38f7829db09c873f2fbb792c0c98ec04"
+  integrity sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==
+
 buffer@^5.1.0, buffer@^5.5.0, buffer@^5.6.0:
   version "5.7.1"
   resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0"
@@ -1624,6 +1645,11 @@ camelcase@^1.0.2:
   resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39"
   integrity sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=
 
+camelcase@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a"
+  integrity sha1-MvxLn82vhF/N9+c7uXysImHwqwo=
+
 camelcase@^5.0.0:
   version "5.3.1"
   resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
@@ -1725,9 +1751,9 @@ class-utils@^0.3.5:
     static-extend "^0.1.1"
 
 clean-css@^4.2.1:
-  version "4.2.3"
-  resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78"
-  integrity sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==
+  version "4.2.4"
+  resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.4.tgz#733bf46eba4e607c6891ea57c24a989356831178"
+  integrity sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==
   dependencies:
     source-map "~0.6.0"
 
@@ -1750,6 +1776,15 @@ cliui@^2.1.0:
     right-align "^0.1.1"
     wordwrap "0.0.2"
 
+cliui@^3.2.0:
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d"
+  integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=
+  dependencies:
+    string-width "^1.0.1"
+    strip-ansi "^3.0.1"
+    wrap-ansi "^2.0.0"
+
 cliui@^5.0.0:
   version "5.0.0"
   resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5"
@@ -1759,6 +1794,11 @@ cliui@^5.0.0:
     strip-ansi "^5.2.0"
     wrap-ansi "^5.1.0"
 
+code-point-at@^1.0.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
+  integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=
+
 collect-all@^1.0.2, collect-all@^1.0.4:
   version "1.0.4"
   resolved "https://registry.yarnpkg.com/collect-all/-/collect-all-1.0.4.tgz#50cd7119ac24b8e12a661f0f8c3aa0ea7222ddfc"
@@ -2011,15 +2051,14 @@ convert-source-map@^1.5.0, convert-source-map@^1.5.1, convert-source-map@^1.6.0:
   dependencies:
     safe-buffer "~5.1.1"
 
-cookie-session@^2.0.0-beta.3:
-  version "2.0.0-rc.1"
-  resolved "https://registry.yarnpkg.com/cookie-session/-/cookie-session-2.0.0-rc.1.tgz#66fa03f26e5873d681d70f14bff5e48a94c53d37"
-  integrity sha512-zg80EsLe7S1J4y0XxV7SZ8Fbi90ZZoampuX2bfYDOvJfc//98sSlZC41YDzTTjtVbeU1VlVdBbldXOOyi5xzEw==
+cookie-session@1.4.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/cookie-session/-/cookie-session-1.4.0.tgz#c325aea685ceb9c8e4fd00b0313a46d547747380"
+  integrity sha512-0hhwD+BUIwMXQraiZP/J7VP2YFzqo6g4WqZlWHtEHQ22t0MeZZrNBSCxC1zcaLAs8ApT3BzAKizx9gW/AP9vNA==
   dependencies:
     cookies "0.8.0"
-    debug "3.2.6"
+    debug "2.6.9"
     on-headers "~1.0.2"
-    safe-buffer "5.2.0"
 
 cookie-signature@1.0.6:
   version "1.0.6"
@@ -2049,11 +2088,16 @@ core-js@^2.0.1, core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0:
   resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec"
   integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==
 
-core-util-is@1.0.2, core-util-is@~1.0.0:
+core-util-is@1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
   integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
 
+core-util-is@~1.0.0:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
+  integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
+
 cp-file@^6.2.0:
   version "6.2.0"
   resolved "https://registry.yarnpkg.com/cp-file/-/cp-file-6.2.0.tgz#40d5ea4a1def2a9acdd07ba5c0b0246ef73dc10d"
@@ -2139,10 +2183,10 @@ crypt@0.0.2:
   resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b"
   integrity sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=
 
-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"
@@ -2163,14 +2207,14 @@ dashdash@^1.12.0:
   dependencies:
     assert-plus "^1.0.0"
 
-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.1"
+  resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-3.0.1.tgz#597fc2ae30f8bc4dbcf731fcd1b1954353afc6f8"
+  integrity sha512-Ds554NeT5Gennfoo9KN50Vh6tpgtvYEwraYjejXnyTpu1C7oXKxdFk75REooENHE8ndTVOJuv+BEs4/J/xcozw==
   dependencies:
     abab "^2.0.3"
-    whatwg-mimetype "^2.3.0"
-    whatwg-url "^8.0.0"
+    whatwg-mimetype "^3.0.0"
+    whatwg-url "^10.0.0"
 
 dateformat@~3.0.3:
   version "3.0.3"
@@ -2178,9 +2222,9 @@ dateformat@~3.0.3:
   integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==
 
 dayjs@^1.8.29:
-  version "1.10.6"
-  resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.10.6.tgz#288b2aa82f2d8418a6c9d4df5898c0737ad02a63"
-  integrity sha512-AztC/IOW4L1Q41A86phW5Thhcrco3xuAA+YX/BLpLWWjRcTj5TOt/QImBLmCKlrF7u7k47arTnOyL6GnbG8Hvw==
+  version "1.10.7"
+  resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.10.7.tgz#2cf5f91add28116748440866a0a1d26f3a6ce468"
+  integrity sha512-P6twpd70BcPK34K26uJ1KT3wlhpuOAPoMwJzpsIWUxHZ7wpmbdZL/hQqBDfz7hGurYSa5PhzdhDHtt319hL3ig==
 
 ddata@~0.1.25:
   version "0.1.28"
@@ -2210,26 +2254,19 @@ debug@3.1.0:
   dependencies:
     ms "2.0.0"
 
-debug@3.2.6:
-  version "3.2.6"
-  resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
-  integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
-  dependencies:
-    ms "^2.1.1"
-
-debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1:
+debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.2:
   version "4.3.2"
   resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b"
   integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==
   dependencies:
     ms "2.1.2"
 
-decamelize@^1.0.0, decamelize@^1.2.0:
+decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.2.0:
   version "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==
@@ -2245,9 +2282,9 @@ deep-extend@~0.4.1:
   integrity sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=
 
 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"
@@ -2301,9 +2338,9 @@ delayed-stream@~1.0.0:
   integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk=
 
 denque@^1.4.1, denque@^1.5.0:
-  version "1.5.0"
-  resolved "https://registry.yarnpkg.com/denque/-/denque-1.5.0.tgz#773de0686ff2d8ec2ff92914316a47b73b1c73de"
-  integrity sha512-CYiCSgIF1p6EUByQPlGkKnP1M9g0ZV3qMIrqMqZqdwazygIA/YP2vrbcyl1h/WppKJTdl1F85cXIle+394iDAQ==
+  version "1.5.1"
+  resolved "https://registry.yarnpkg.com/denque/-/denque-1.5.1.tgz#07f670e29c9a78f8faecb2566a1e2c11929c5cbf"
+  integrity sha512-XwE+iZ4D6ZUB7mfYRMb5wByE8L74HCn30FBN7sWnXksWc1LO1bPDl67pBR9o/kC4z/xSNAwkMYcGgqDV3BE3Hw==
 
 depd@~1.1.2:
   version "1.1.2"
@@ -2363,12 +2400,12 @@ dmd@^1.4.1:
     string-tools "^1.0.0"
     walk-back "^2.0.1"
 
-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"
 
 dtrace-provider@~0.8:
   version "0.8.8"
@@ -2419,7 +2456,7 @@ end-of-stream@^1.1.0, end-of-stream@^1.4.1:
   dependencies:
     once "^1.4.0"
 
-error-ex@^1.3.1:
+error-ex@^1.2.0, error-ex@^1.3.1:
   version "1.3.2"
   resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
   integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
@@ -2467,9 +2504,9 @@ esprima@*, esprima@^4.0.0, esprima@^4.0.1:
   integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
 
 estraverse@^5.2.0:
-  version "5.2.0"
-  resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880"
-  integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==
+  version "5.3.0"
+  resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
+  integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
 
 esutils@^2.0.2:
   version "2.0.3"
@@ -2641,9 +2678,9 @@ extsprintf@1.3.0:
   integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=
 
 extsprintf@^1.2.0:
-  version "1.4.0"
-  resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
-  integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=
+  version "1.4.1"
+  resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07"
+  integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==
 
 fast-deep-equal@^3.1.1:
   version "3.1.3"
@@ -2666,9 +2703,11 @@ fast-text-encoding@^1.0.0:
   integrity sha512-dtm4QZH9nZtcDt8qJiOH9fcQd1NAgi+K1O2DbE6GG1PPCK/BWfOH3idCTRQ4ImXRUOyopDEgDEnVEE7Y/2Wrig==
 
 fast-xml-parser@^3.19.0:
-  version "3.19.0"
-  resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-3.19.0.tgz#cb637ec3f3999f51406dd8ff0e6fc4d83e520d01"
-  integrity sha512-4pXwmBplsCPv8FOY1WRakF970TjNGnGnfbOnLqjlYvMiF1SR3yOHyxMR/YCXpPTOspNF5gwudqktIP4VsWkvBg==
+  version "3.21.1"
+  resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-3.21.1.tgz#152a1d51d445380f7046b304672dd55d15c9e736"
+  integrity sha512-FTFVjYoBOZTJekiUsawGsSYV9QL0A+zDYCRj7y34IO6Jg+2IMYEtQa+bbictpdpV8dHxXywqU7C0gRDEOFtBFg==
+  dependencies:
+    strnum "^1.0.4"
 
 fastfall@^1.5.1:
   version "1.5.1"
@@ -2678,9 +2717,9 @@ fastfall@^1.5.1:
     reusify "^1.0.0"
 
 fastparallel@^2.3.0:
-  version "2.4.0"
-  resolved "https://registry.yarnpkg.com/fastparallel/-/fastparallel-2.4.0.tgz#65fbec1a5e5902494be772cf5765cbaaece08688"
-  integrity sha512-sacwQ7wwKlQXsa7TN24UvMBLZNLmVcPhmxccC9riFqb3N+fSczJL8eWdnZodZ/KijGVgNBBfvF/NeXER08uXnQ==
+  version "2.4.1"
+  resolved "https://registry.yarnpkg.com/fastparallel/-/fastparallel-2.4.1.tgz#0d984a5813ffa67f30b4a5cb4cb8cbe61c7ee5a5"
+  integrity sha512-qUmhxPgNHmvRjZKBFUNI0oZuuH9OlSIOXmJ98lhKPxMZZ7zS/Fi0wRHOihDSz0R1YiIOjxzOY4bq65YTcdBi2Q==
   dependencies:
     reusify "^1.0.4"
     xtend "^4.0.2"
@@ -2798,6 +2837,14 @@ find-replace@^1, find-replace@^1.0.2:
     array-back "^1.0.4"
     test-value "^2.1.0"
 
+find-up@^1.0.0:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
+  integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=
+  dependencies:
+    path-exists "^2.0.0"
+    pinkie-promise "^2.0.0"
+
 find-up@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73"
@@ -2838,10 +2885,10 @@ flagged-respawn@^1.0.1:
   resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-1.0.1.tgz#e7de6f1279ddd9ca9aac8a5971d618606b3aab41"
   integrity sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==
 
-follow-redirects@^1.10.0:
-  version "1.14.1"
-  resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.1.tgz#d9114ded0a1cfdd334e164e6662ad02bfd91ff43"
-  integrity sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==
+follow-redirects@^1.10.0, follow-redirects@^1.14.0:
+  version "1.14.5"
+  resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.5.tgz#f09a5848981d3c772b5392309778523f8d85c381"
+  integrity sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==
 
 for-in@^1.0.1, for-in@^1.0.2:
   version "1.0.2"
@@ -2875,15 +2922,6 @@ forever-agent@~0.6.1:
   resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
   integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=
 
-form-data@^3.0.0:
-  version "3.0.1"
-  resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f"
-  integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==
-  dependencies:
-    asynckit "^0.4.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"
@@ -2963,24 +3001,29 @@ function-bind@^1.1.1:
   integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
 
 gaxios@^4.0.0:
-  version "4.3.0"
-  resolved "https://registry.yarnpkg.com/gaxios/-/gaxios-4.3.0.tgz#ad4814d89061f85b97ef52aed888c5dbec32f774"
-  integrity sha512-pHplNbslpwCLMyII/lHPWFQbJWOX0B3R1hwBEOvzYi1GmdKZruuEHK4N9V6f7tf1EaPYyF80mui1+344p6SmLg==
+  version "4.3.2"
+  resolved "https://registry.yarnpkg.com/gaxios/-/gaxios-4.3.2.tgz#845827c2dc25a0213c8ab4155c7a28910f5be83f"
+  integrity sha512-T+ap6GM6UZ0c4E6yb1y/hy2UB6hTrqhglp3XfmU9qbLCGRYhLVV5aRPpC4EmoG8N8zOnkYCgoBz+ScvGAARY6Q==
   dependencies:
     abort-controller "^3.0.0"
     extend "^3.0.2"
     https-proxy-agent "^5.0.0"
     is-stream "^2.0.0"
-    node-fetch "^2.3.0"
+    node-fetch "^2.6.1"
 
 gcp-metadata@^4.2.0:
-  version "4.3.0"
-  resolved "https://registry.yarnpkg.com/gcp-metadata/-/gcp-metadata-4.3.0.tgz#0423d06becdbfb9cbb8762eaacf14d5324997900"
-  integrity sha512-L9XQUpvKJCM76YRSmcxrR4mFPzPGsgZUH+GgHMxAET8qc6+BhRJq63RLhWakgEO2KKVgeSDVfyiNjkGSADwNTA==
+  version "4.3.1"
+  resolved "https://registry.yarnpkg.com/gcp-metadata/-/gcp-metadata-4.3.1.tgz#fb205fe6a90fef2fd9c85e6ba06e5559ee1eefa9"
+  integrity sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A==
   dependencies:
     gaxios "^4.0.0"
     json-bigint "^1.0.0"
 
+get-caller-file@^1.0.1:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a"
+  integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==
+
 get-caller-file@^2.0.1:
   version "2.0.5"
   resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
@@ -3001,9 +3044,9 @@ get-value@^2.0.3, get-value@^2.0.6:
   integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=
 
 getobject@~1.0.0:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/getobject/-/getobject-1.0.1.tgz#17d86a05913c15d173a5bcf8662dc7c7ac5ce147"
-  integrity sha512-tj18lLe+917AACr6BdVoUuHnBPTVd9BEJp1vxnMZ58ztNvuxz9Ufa+wf3g37tlGITH35jggwZ2d9lcgHJJgXfQ==
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/getobject/-/getobject-1.0.2.tgz#25ec87a50370f6dcc3c6ba7ef43c4c16215c4c89"
+  integrity sha512-2zblDBaFcb3rB4rF77XVnuINOE2h2k/OnqXAiy0IrTxUfV1iFp3la33oAQVY9pCpWU268WFYVt2t71hlMuLsOg==
 
 getpass@^0.1.1:
   version "0.1.7"
@@ -3048,10 +3091,10 @@ glob@^6.0.1:
     once "^1.3.0"
     path-is-absolute "^1.0.0"
 
-glob@^7.1.0, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@~7.1.6:
-  version "7.1.7"
-  resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90"
-  integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==
+glob@^7.1.0, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
+  version "7.2.0"
+  resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
+  integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==
   dependencies:
     fs.realpath "^1.0.0"
     inflight "^1.0.4"
@@ -3071,6 +3114,18 @@ glob@~5.0.0:
     once "^1.3.0"
     path-is-absolute "^1.0.0"
 
+glob@~7.1.6:
+  version "7.1.7"
+  resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90"
+  integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==
+  dependencies:
+    fs.realpath "^1.0.0"
+    inflight "^1.0.4"
+    inherits "2"
+    minimatch "^3.0.4"
+    once "^1.3.0"
+    path-is-absolute "^1.0.0"
+
 global-modules@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea"
@@ -3102,9 +3157,9 @@ globals@^9.18.0:
   integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==
 
 google-auth-library@^7.0.2:
-  version "7.5.0"
-  resolved "https://registry.yarnpkg.com/google-auth-library/-/google-auth-library-7.5.0.tgz#6b0a623dfb4ee7a8d93a0d25455031d1baf86181"
-  integrity sha512-iRMwc060kiA6ncZbAoQN90nlwT8jiHVmippofpMgo4YFEyRBaPouyM7+ZB742wKetByyy+TahshVRTx0tEyXGQ==
+  version "7.10.2"
+  resolved "https://registry.yarnpkg.com/google-auth-library/-/google-auth-library-7.10.2.tgz#7e48176f50e725e1d65b6a838ec9e9464e6ba689"
+  integrity sha512-M37o9Kxa/TLvOLgF71SXvLeVEP5sbSTmKl1zlIgl72SFy5PtsU3pOdu8G8MIHHpQ3/NZabDI8rQkA9DvQVKkPA==
   dependencies:
     arrify "^2.0.0"
     base64-js "^1.3.0"
@@ -3117,9 +3172,9 @@ google-auth-library@^7.0.2:
     lru-cache "^6.0.0"
 
 google-p12-pem@^3.0.3:
-  version "3.1.1"
-  resolved "https://registry.yarnpkg.com/google-p12-pem/-/google-p12-pem-3.1.1.tgz#98fb717b722d12196a3e5b550c44517562269859"
-  integrity sha512-e9CwdD2QYkpvJsktki3Bm8P8FSGIneF+/42a9F9QHcQvJ73C2RoYZdrwRl6BhwksWtzl65gT4OnBROhUIFw95Q==
+  version "3.1.2"
+  resolved "https://registry.yarnpkg.com/google-p12-pem/-/google-p12-pem-3.1.2.tgz#c3d61c2da8e10843ff830fdb0d2059046238c1d4"
+  integrity sha512-tjf3IQIt7tWCDsa0ofDQ1qqSCNzahXDxdAGJDbruWqu3eCg5CKLYKN+hi0s6lfvzYZ1GDVr+oDF9OOWlDSdf0A==
   dependencies:
     node-forge "^0.10.0"
 
@@ -3129,9 +3184,9 @@ google-protobuf@3.14.0:
   integrity sha512-bwa8dBuMpOxg7COyqkW6muQuvNnWgVN8TX/epDRGW5m0jcrmq2QJyCyiV8ZE2/6LaIIqJtiv9bYokFhfpy/o6w==
 
 googleapis-common@^5.0.2:
-  version "5.0.4"
-  resolved "https://registry.yarnpkg.com/googleapis-common/-/googleapis-common-5.0.4.tgz#d47ba164dce40ff32f35319e56d1d67209ae25c3"
-  integrity sha512-clr6NSAoIeTrQ/ESl/OmH4uuvPUq4XgiyPAnTIrItOWyM/YKYsXgzpPNkmP6D6LNd/UoTnymcyLNuMPh0ibzXg==
+  version "5.0.5"
+  resolved "https://registry.yarnpkg.com/googleapis-common/-/googleapis-common-5.0.5.tgz#4c7160be1ed7e4cc8cdbcdb6eac8a4b3a61dd782"
+  integrity sha512-o2dgoW4x4fLIAN+IVAOccz3mEH8Lj1LP9c9BSSvkNJEn+U7UZh0WSr4fdH08x5VH7+sstIpd1lOYFZD0g7j4pw==
   dependencies:
     extend "^3.0.2"
     gaxios "^4.0.0"
@@ -3141,9 +3196,9 @@ googleapis-common@^5.0.2:
     uuid "^8.0.0"
 
 googleapis@*:
-  version "83.0.0"
-  resolved "https://registry.yarnpkg.com/googleapis/-/googleapis-83.0.0.tgz#045399fe8403d8516add6aa90802dda604fcfe20"
-  integrity sha512-/xzWnSPfZC6jwoq4bY8gMauGHF2kIbWZJ6bPgMUzI4zUGAhGD7YttHtbZX6Vz/eYIviYaQtL7HIvw5Jnei/TzA==
+  version "91.0.0"
+  resolved "https://registry.yarnpkg.com/googleapis/-/googleapis-91.0.0.tgz#c5e51ca568ed687f0694a082237c7b7b96a19b3b"
+  integrity sha512-iHqXZwgYam0g8n0Yyi+YHx8kgwT+H5O4k3fe0LB1JhWRp1dSKYu+ShY4PQbW584zLOE4kK3LHf2B+x1THx+ZPQ==
   dependencies:
     google-auth-library "^7.0.2"
     googleapis-common "^5.0.2"
@@ -3229,9 +3284,9 @@ grunt@^1.0.1:
     rimraf "~3.0.2"
 
 gtoken@^5.0.4:
-  version "5.3.0"
-  resolved "https://registry.yarnpkg.com/gtoken/-/gtoken-5.3.0.tgz#6536eb2880d9829f0b9d78f756795d4d9064b217"
-  integrity sha512-mCcISYiaRZrJpfqOs0QWa6lfEM/C1V9ASkzFmuz43XBb5s1Vynh+CZy1ECeeJXVGx2PRByjYzb4Y4/zr1byr0w==
+  version "5.3.1"
+  resolved "https://registry.yarnpkg.com/gtoken/-/gtoken-5.3.1.tgz#c1c2598a826f2b5df7c6bb53d7be6cf6d50c3c78"
+  integrity sha512-yqOREjzLHcbzz1UrQoxhBtpk8KjrVhuqPE7od1K2uhyxG2BHjKZetlbLw/SPZak/QqTIQW+addS+EcjqQsZbwQ==
   dependencies:
     gaxios "^4.0.0"
     google-p12-pem "^3.0.3"
@@ -3427,12 +3482,12 @@ hot-patcher@^0.5.0:
   resolved "https://registry.yarnpkg.com/hot-patcher/-/hot-patcher-0.5.0.tgz#9d401424585aaf3a91646b816ceff40eb6a916b9"
   integrity sha512-2Uu2W0s8+dnqXzdlg0MRsRzPoDCs1wVjOGSyMRRaMzLDX4bgHw6xDYKccsWafXPPxQpkQfEjgW6+17pwcg60bw==
 
-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-escaper@^2.0.0:
   version "2.0.2"
@@ -3475,22 +3530,22 @@ http-errors@~1.7.2:
     toidentifier "1.0.0"
 
 http-errors@~1.8.0:
-  version "1.8.0"
-  resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.0.tgz#75d1bbe497e1044f51e4ee9e704a62f28d336507"
-  integrity sha512-4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A==
+  version "1.8.1"
+  resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c"
+  integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==
   dependencies:
     depd "~1.1.2"
     inherits "2.0.4"
     setprototypeof "1.2.0"
     statuses ">= 1.5.0 < 2"
-    toidentifier "1.0.0"
+    toidentifier "1.0.1"
 
-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"
 
@@ -3530,7 +3585,7 @@ iconv-lite@0.4.24, iconv-lite@~0.4.13:
   dependencies:
     safer-buffer ">= 2.1.2 < 3"
 
-iconv-lite@^0.6.3:
+iconv-lite@0.6.3, 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==
@@ -3594,6 +3649,11 @@ invariant@^2.2.2:
   dependencies:
     loose-envify "^1.0.0"
 
+invert-kv@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6"
+  integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY=
+
 ipaddr.js@1.9.1:
   version "1.9.1"
   resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3"
@@ -3644,9 +3704,9 @@ is-buffer@^1.1.5, is-buffer@~1.1.6:
   integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
 
 is-core-module@^2.2.0:
-  version "2.5.0"
-  resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.5.0.tgz#f754843617c70bfd29b7bd87327400cda5c18491"
-  integrity sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==
+  version "2.8.0"
+  resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.0.tgz#0321336c3d0925e497fd97f5d95cb114a5ccd548"
+  integrity sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==
   dependencies:
     has "^1.0.3"
 
@@ -3721,6 +3781,13 @@ is-finite@^1.0.0:
   resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.1.0.tgz#904135c77fb42c0641d6aa1bcdbc4daa8da082f3"
   integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==
 
+is-fullwidth-code-point@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
+  integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs=
+  dependencies:
+    number-is-nan "^1.0.0"
+
 is-fullwidth-code-point@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
@@ -3734,9 +3801,9 @@ is-glob@^2.0.0, is-glob@^2.0.1:
     is-extglob "^1.0.0"
 
 is-glob@^4.0.0:
-  version "4.0.1"
-  resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc"
-  integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==
+  version "4.0.3"
+  resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
+  integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
   dependencies:
     is-extglob "^2.1.1"
 
@@ -3815,6 +3882,11 @@ is-unc-path@^1.0.0:
   dependencies:
     unc-path-regex "^0.1.2"
 
+is-utf8@^0.2.0:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
+  integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=
+
 is-windows@^1.0.1, is-windows@^1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d"
@@ -4005,22 +4077,22 @@ jsdoc2md-stats@^1.0.3:
     feature-detect-es6 "^1.3.1"
 
 jsdom@*:
-  version "16.7.0"
-  resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710"
-  integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==
+  version "18.1.0"
+  resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-18.1.0.tgz#43e88a0e4d6d2aeeec0a18810c0934c02b2ae3e4"
+  integrity sha512-q6QFAfSGLEUqRJ+GCV6vn6ItZCMARWh1d33wiJZPxc+wMNw7HK71JPmQ4C2lIZAsBH8TiJu4uplach/UcrC6bQ==
   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"
@@ -4029,13 +4101,13 @@ jsdom@*:
     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@^1.3.0:
   version "1.3.0"
@@ -4203,12 +4275,19 @@ lazy-cache@^1.0.3:
   integrity sha1-odePw6UEdMuAhF07O24dpJpEbo4=
 
 lazystream@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.0.tgz#f6995fe0f820392f61396be89462407bb77168e4"
-  integrity sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.1.tgz#494c831062f1f9408251ec44db1cba29242a2638"
+  integrity sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==
   dependencies:
     readable-stream "^2.0.5"
 
+lcid@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835"
+  integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=
+  dependencies:
+    invert-kv "^1.0.0"
+
 ldap-filter@^0.3.3:
   version "0.3.3"
   resolved "https://registry.yarnpkg.com/ldap-filter/-/ldap-filter-0.3.3.tgz#2b14c68a2a9d4104dbdbc910a1ca85fd189e9797"
@@ -4269,6 +4348,17 @@ liftup@~3.0.1:
     rechoir "^0.7.0"
     resolve "^1.19.0"
 
+load-json-file@^1.0.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
+  integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=
+  dependencies:
+    graceful-fs "^4.1.2"
+    parse-json "^2.2.0"
+    pify "^2.0.0"
+    pinkie-promise "^2.0.0"
+    strip-bom "^2.0.0"
+
 load-json-file@^4.0.0:
   version "4.0.0"
   resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b"
@@ -4286,10 +4376,10 @@ loadavg-windows@*:
   dependencies:
     weak-daemon "1.0.3"
 
-localforage@^1.3.0:
-  version "1.9.0"
-  resolved "https://registry.yarnpkg.com/localforage/-/localforage-1.9.0.tgz#f3e4d32a8300b362b4634cc4e066d9d00d2f09d1"
-  integrity sha512-rR1oyNrKulpe+VM9cYmcFn6tsHuokyVHFaCM3+osEmxaHTbEk8oQu6eGDfS6DQLWi/N67XRmB8ECG37OES368g==
+localforage@^1.9.0:
+  version "1.10.0"
+  resolved "https://registry.yarnpkg.com/localforage/-/localforage-1.10.0.tgz#5c465dc5f62b2807c3a84c0c6a1b1b3212781dd4"
+  integrity sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==
   dependencies:
     lie "3.1.1"
 
@@ -4301,6 +4391,11 @@ locate-path@^3.0.0:
     p-locate "^3.0.0"
     path-exists "^3.0.0"
 
+lodash.assign@^4.1.0, lodash.assign@^4.2.0:
+  version "4.2.0"
+  resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7"
+  integrity sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=
+
 lodash.defaults@^4.2.0:
   version "4.2.0"
   resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c"
@@ -4443,9 +4538,9 @@ map-visit@^1.0.0:
     object-visit "^1.0.0"
 
 mariadb@*:
-  version "2.5.4"
-  resolved "https://registry.yarnpkg.com/mariadb/-/mariadb-2.5.4.tgz#c66daa35e2768b8c714c758453531c06ae4927f4"
-  integrity sha512-4vQgMRyBIN9EwSQG0vzjR9D8bscPH0dGPJt67qVlOkHSiSm0xUatg1Pft4o1LzORgeOW4PheiY/HBE9bYYmNCA==
+  version "2.5.5"
+  resolved "https://registry.yarnpkg.com/mariadb/-/mariadb-2.5.5.tgz#a9aff9f1e57231a415a21254489439beb501c803"
+  integrity sha512-6dklvcKWuuaV1JjAwnE2ezR+jTt7JrZHftgeHHBmjB0wgfaUpdxol1DPWclwMcCrsO9yoM0FuCOiCcCgXc//9Q==
   dependencies:
     "@types/geojson" "^7946.0.7"
     "@types/node" "^14.14.28"
@@ -4556,17 +4651,17 @@ micromatch@^4.0.2:
     braces "^3.0.1"
     picomatch "^2.2.3"
 
-mime-db@1.49.0, "mime-db@>= 1.43.0 < 2":
-  version "1.49.0"
-  resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.49.0.tgz#f3dfde60c99e9cf3bc9701d687778f537001cbed"
-  integrity sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==
+mime-db@1.51.0, "mime-db@>= 1.43.0 < 2":
+  version "1.51.0"
+  resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c"
+  integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==
 
 mime-types@^2.1.12, mime-types@~2.1.19, mime-types@~2.1.24:
-  version "2.1.32"
-  resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.32.tgz#1d00e89e7de7fe02008db61001d9e02852670fd5"
-  integrity sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==
+  version "2.1.34"
+  resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24"
+  integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==
   dependencies:
-    mime-db "1.49.0"
+    mime-db "1.51.0"
 
 mime@1.6.0:
   version "1.6.0"
@@ -4614,7 +4709,7 @@ minimatch@^2.0.1:
   dependencies:
     brace-expansion "^1.0.0"
 
-minimist@^1.2.0, minimist@^1.2.5:
+minimist@^1.2.5:
   version "1.2.5"
   resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
   integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
@@ -4644,7 +4739,7 @@ mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1:
   dependencies:
     minimist "^1.2.5"
 
-mkdirp@~1.0.4:
+mkdirp@^1.0.4, mkdirp@~1.0.4:
   version "1.0.4"
   resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e"
   integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
@@ -4657,9 +4752,9 @@ modern-syslog@*:
     nan "^2.13.2"
 
 moment-timezone@^0.5.33:
-  version "0.5.33"
-  resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.33.tgz#b252fd6bb57f341c9b59a5ab61a8e51a73bbd22c"
-  integrity sha512-PTc2vcT8K9J5/9rDEPe5czSIKgLoGsH8UNpA4qZTVw0Vd/Uz19geE9abbIOQKaAQFcnQ3v5YEXrbSc5BpshH+w==
+  version "0.5.34"
+  resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.34.tgz#a75938f7476b88f155d3504a9343f7519d9a405c"
+  integrity sha512-3zAEHh2hKUs3EXLESx/wsgw6IQdusOT8Bxm3D9UrHPQR7zlMmzwybC8zHEM1tQ4LJwP7fcxrWr8tuBg05fFCbg==
   dependencies:
     moment ">= 2.9.0"
 
@@ -4669,14 +4764,14 @@ moment-timezone@^0.5.33:
   integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==
 
 mongodb-connection-string-url@^1.0.1:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/mongodb-connection-string-url/-/mongodb-connection-string-url-1.1.0.tgz#0bd769f16aa1767758c119c275ea22bb5110915f"
-  integrity sha512-g0Qaj4AzIaktWKBkfjMjwzvBzZQN1mtb2DVOTbjdvlaqTa5lGLcnTeh0/9R9mPiIt2lvRGOrDgUdazeP5rD9oA==
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/mongodb-connection-string-url/-/mongodb-connection-string-url-1.1.2.tgz#a115902fee402b9b24a80c16ced94818daedad91"
+  integrity sha512-mp5lv4guWuykOpkwNNqQ0tKKytuJUjL/aC/bu/DqoJVWL5NSh4j/u+gJ+EiOdweLujHyq6JZZqcTVipHhL5xRg==
   dependencies:
     "@types/whatwg-url" "^8.0.0"
     whatwg-url "^8.4.0"
 
-mongodb@*:
+mongodb@4.1.0:
   version "4.1.0"
   resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-4.1.0.tgz#f491de5d52003f41dffbc6ebfd8b95be21174d63"
   integrity sha512-Gx9U9MsFWgJ3E0v4oHAdWvYTGBznNYPCkhmD/3i/kPTY/URnPfHD5/6VoKUFrdgQTK3icFiM9976hVbqCRBO9Q==
@@ -4688,14 +4783,14 @@ mongodb@*:
     saslprep "^1.0.0"
 
 mongodb@^3.3.2:
-  version "3.6.11"
-  resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.6.11.tgz#8a59a0491a92b00a8c925f72ed9d9a5b054aebb2"
-  integrity sha512-4Y4lTFHDHZZdgMaHmojtNAlqkvddX2QQBEN0K//GzxhGwlI9tZ9R0vhbjr1Decw+TF7qK0ZLjQT292XgHRRQgw==
+  version "3.7.3"
+  resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.7.3.tgz#b7949cfd0adc4cc7d32d3f2034214d4475f175a5"
+  integrity sha512-Psm+g3/wHXhjBEktkxXsFMZvd3nemI0r3IPsE0bU+4//PnvNWKkzhZcEsbPcYiWqe8XqXJJEg4Tgtr7Raw67Yw==
   dependencies:
     bl "^2.2.1"
     bson "^1.1.4"
     denque "^1.4.1"
-    optional-require "^1.0.3"
+    optional-require "^1.1.8"
     safe-buffer "^5.1.2"
   optionalDependencies:
     saslprep "^1.0.0"
@@ -4784,7 +4879,7 @@ mysql@*:
     safe-buffer "5.1.2"
     sqlstring "2.3.1"
 
-nan@^2.12.1, nan@^2.13.2, nan@^2.14.0, nan@^2.14.1, nan@^2.14.2:
+nan@^2.12.1, nan@^2.13.2, nan@^2.14.0, nan@^2.14.1, nan@^2.15.0:
   version "2.15.0"
   resolved "https://registry.yarnpkg.com/nan/-/nan-2.15.0.tgz#3f34a473ff18e15c1b5626b62903b5ad6e665fee"
   integrity sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==
@@ -4816,17 +4911,6 @@ ncp@~2.0.0:
   resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3"
   integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=
 
-nedb@^1.8.0:
-  version "1.8.0"
-  resolved "https://registry.yarnpkg.com/nedb/-/nedb-1.8.0.tgz#0e3502cd82c004d5355a43c9e55577bd7bd91d88"
-  integrity sha1-DjUCzYLABNU1WkPJ5VV3vXvZHYg=
-  dependencies:
-    async "0.2.10"
-    binary-search-tree "0.2.5"
-    localforage "^1.3.0"
-    mkdirp "~0.5.1"
-    underscore "~1.4.4"
-
 negotiator@0.6.2:
   version "0.6.2"
   resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb"
@@ -4859,10 +4943,12 @@ node-addon-api@^1.7.1:
   resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.2.tgz#3df30b95720b53c24e59948b49532b662444f54d"
   integrity sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==
 
-node-fetch@^2.3.0:
-  version "2.6.1"
-  resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052"
-  integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==
+node-fetch@^2.3.0, node-fetch@^2.6.1:
+  version "2.6.6"
+  resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.6.tgz#1751a7c01834e8e1697758732e9efb6eeadfaf89"
+  integrity sha512-Z8/6vRlTUChSdIgMa51jxQ4lrw/Jy5SOW10ObaA47/RElsAN2c5Pn8bTgFGWn/ibwzXTE8qwr1Yzx28vsecXEA==
+  dependencies:
+    whatwg-url "^5.0.0"
 
 node-forge@^0.10.0:
   version "0.10.0"
@@ -4896,13 +4982,12 @@ node-vault@*:
     request-promise-native "1.0.7"
     tv4 "^1.2.7"
 
-node-windows@*:
-  version "0.1.14"
-  resolved "https://registry.yarnpkg.com/node-windows/-/node-windows-0.1.14.tgz#31bb0503da3bc637f2bfaa8b266640a2e92d891f"
-  integrity sha1-MbsFA9o7xjfyv6qLJmZAouktiR8=
+node-windows@0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/node-windows/-/node-windows-0.1.4.tgz#23d5ee98b6b8290e0a3da9998ee638845fedcb1b"
+  integrity sha1-I9XumLa4KQ4KPamZjuY4hF/tyxs=
   dependencies:
-    optimist "~0.6.0"
-    xml "0.0.12"
+    optimist "~0.3.5"
 
 node-xcs@*:
   version "0.1.7"
@@ -4913,9 +4998,9 @@ node-xcs@*:
     "@xmpp/debug" "^0.9.2"
 
 nodemailer@*:
-  version "6.6.3"
-  resolved "https://registry.yarnpkg.com/nodemailer/-/nodemailer-6.6.3.tgz#31fb53dd4d8ae16fc088a65cb9ffa8d928a69b48"
-  integrity sha512-faZFufgTMrphYoDjvyVpbpJcYzwyFnbAMmQtj1lVBYAUSm3SOy2fIdd9+Mr4UxPosBa0JRw9bJoIwQn+nswiew==
+  version "6.7.1"
+  resolved "https://registry.yarnpkg.com/nodemailer/-/nodemailer-6.7.1.tgz#09f72f8b375f7b259291757007bcd902c0174c6e"
+  integrity sha512-E1C8G3rnXrGjznwGP1k+OrW5k4rl0XtqTEB19f7vtJAMYwfxZVSsAu2iY5xJkrZsbVYr6PwwAwRmFlakPoFC0A==
 
 nofilter@^1.0.4:
   version "1.0.4"
@@ -4959,6 +5044,11 @@ normalize-path@^3.0.0:
   resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
   integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
 
+number-is-nan@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
+  integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=
+
 nwsapi@^2.2.0:
   version "2.2.0"
   resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7"
@@ -5127,7 +5217,7 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0:
   dependencies:
     wrappy "1"
 
-optimist@^0.6.1, optimist@~0.6.0:
+optimist@^0.6.1:
   version "0.6.1"
   resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686"
   integrity sha1-2j6nRob6IaGaERwybpDrFaAZZoY=
@@ -5135,10 +5225,17 @@ optimist@^0.6.1, optimist@~0.6.0:
     minimist "~0.0.1"
     wordwrap "~0.0.2"
 
-optional-require@^1.0.3:
-  version "1.1.4"
-  resolved "https://registry.yarnpkg.com/optional-require/-/optional-require-1.1.4.tgz#8af7da26b17da76abbf8a1c46e2e148a63813c0e"
-  integrity sha512-YIabCRxu1Qqlxowh5MBaT8vrvC5fa5QehT4iJw8OthkTC1ZXe7aMxtZHtwnNwJRfFgiqPof2RZeguXo4weS9mA==
+optimist@~0.3.5:
+  version "0.3.7"
+  resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.3.7.tgz#c90941ad59e4273328923074d2cf2e7cbc6ec0d9"
+  integrity sha1-yQlBrVnkJzMokjB00s8ufLxuwNk=
+  dependencies:
+    wordwrap "~0.0.2"
+
+optional-require@^1.1.8:
+  version "1.1.8"
+  resolved "https://registry.yarnpkg.com/optional-require/-/optional-require-1.1.8.tgz#16364d76261b75d964c482b2406cb824d8ec44b7"
+  integrity sha512-jq83qaUb0wNg9Krv1c5OQ+58EK+vHde6aBPzLvPPqJm89UQWsvSuFy9X/OSNJnFeSOKo7btE0n8Nl2+nE+z5nA==
   dependencies:
     require-at "^1.0.6"
 
@@ -5159,6 +5256,13 @@ os-homedir@^1.0.0, os-homedir@^1.0.1:
   resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
   integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M=
 
+os-locale@^1.4.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9"
+  integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=
+  dependencies:
+    lcid "^1.0.0"
+
 os-tmpdir@^1.0.0, os-tmpdir@^1.0.1:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
@@ -5217,6 +5321,11 @@ package-hash@^3.0.0:
     lodash.flattendeep "^4.4.0"
     release-zalgo "^1.0.0"
 
+packet-reader@1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/packet-reader/-/packet-reader-1.0.0.tgz#9238e5480dedabacfe1fe3f2771063f164157d74"
+  integrity sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==
+
 param-case@^2.1.1:
   version "2.1.1"
   resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247"
@@ -5243,6 +5352,13 @@ parse-glob@^3.0.4:
     is-extglob "^1.0.0"
     is-glob "^2.0.0"
 
+parse-json@^2.2.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
+  integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=
+  dependencies:
+    error-ex "^1.2.0"
+
 parse-json@^4.0.0:
   version "4.0.0"
   resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0"
@@ -5312,9 +5428,9 @@ passport-oauth1@1.x.x:
     utils-merge "1.x.x"
 
 passport-oauth2@1.x.x:
-  version "1.6.0"
-  resolved "https://registry.yarnpkg.com/passport-oauth2/-/passport-oauth2-1.6.0.tgz#5f599735e0ea40ea3027643785f81a3a9b4feb50"
-  integrity sha512-emXPLqLcVEcLFR/QvQXZcwLmfK8e9CqvMgmOFJxcNT3okSFMtUbRRKpY20x5euD+01uHsjjCa07DYboEeLXYiw==
+  version "1.6.1"
+  resolved "https://registry.yarnpkg.com/passport-oauth2/-/passport-oauth2-1.6.1.tgz#c5aee8f849ce8bd436c7f81d904a3cd1666f181b"
+  integrity sha512-ZbV43Hq9d/SBSYQ22GOiglFsjsD1YY/qdiptA+8ej+9C1dL1TVB+mBE5kDH/D4AJo50+2i8f4bx0vg4/yDDZCQ==
   dependencies:
     base64url "3.x.x"
     oauth "0.9.x"
@@ -5339,17 +5455,17 @@ passport-reddit@*:
     pkginfo "0.3.x"
 
 passport-saml@*:
-  version "3.1.1"
-  resolved "https://registry.yarnpkg.com/passport-saml/-/passport-saml-3.1.1.tgz#257470003366e06ce3c5738aa64a1209a0f4d7e7"
-  integrity sha512-45YXn/BUdzMSx27lEmY0EMXck+qgR8jdnsdgNbnG5HNzwGbcSLcTkH5AoULW+6gd5fcG1rcMDtKyIJwTIMJA6A==
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/passport-saml/-/passport-saml-3.2.0.tgz#72ec8203df6dd872a205b8d5f578859a4e723e42"
+  integrity sha512-EUzL+Wk8ZVdvOYhCBTkUrR1fwuMwF9za1FinFabP5Tl9qeJktsJWfoiBz7Fk6jQvpLwfnfryGdvwcOlGVct41A==
   dependencies:
-    debug "^4.3.1"
+    "@xmldom/xmldom" "^0.7.5"
+    debug "^4.3.2"
     passport-strategy "^1.0.0"
-    xml-crypto "^2.1.2"
-    xml-encryption "^1.2.4"
+    xml-crypto "^2.1.3"
+    xml-encryption "^1.3.0"
     xml2js "^0.4.23"
     xmlbuilder "^15.1.1"
-    xmldom "^0.6.0"
 
 passport-strategy@1.x.x, passport-strategy@^1.0.0:
   version "1.0.0"
@@ -5365,13 +5481,20 @@ passport-twitter@*:
     xtraverse "0.1.x"
 
 passport@*:
-  version "0.4.1"
-  resolved "https://registry.yarnpkg.com/passport/-/passport-0.4.1.tgz#941446a21cb92fc688d97a0861c38ce9f738f270"
-  integrity sha512-IxXgZZs8d7uFSt3eqNjM9NQ3g3uQCW5avD8mRNoXV99Yig50vjuaez6dQK2qC0kVWPRTujxY0dWgGfT09adjYg==
+  version "0.5.0"
+  resolved "https://registry.yarnpkg.com/passport/-/passport-0.5.0.tgz#7914aaa55844f9dce8c3aa28f7d6b73647ee0169"
+  integrity sha512-ln+ue5YaNDS+fes6O5PCzXKSseY5u8MYhX9H5Co4s+HfYI5oqvnHKoOORLYDUPh+8tHvrxugF2GFcUA1Q1Gqfg==
   dependencies:
     passport-strategy "1.x.x"
     pause "0.0.1"
 
+path-exists@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
+  integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=
+  dependencies:
+    pinkie-promise "^2.0.0"
+
 path-exists@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
@@ -5409,6 +5532,15 @@ path-to-regexp@0.1.7:
   resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
   integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=
 
+path-type@^1.0.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
+  integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=
+  dependencies:
+    graceful-fs "^4.1.2"
+    pify "^2.0.0"
+    pinkie-promise "^2.0.0"
+
 path-type@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f"
@@ -5431,11 +5563,77 @@ performance-now@^2.1.0:
   resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
   integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
 
+pg-connection-string@^2.4.0, pg-connection-string@^2.5.0:
+  version "2.5.0"
+  resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.5.0.tgz#538cadd0f7e603fc09a12590f3b8a452c2c0cf34"
+  integrity sha512-r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ==
+
+pg-int8@1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz#943bd463bf5b71b4170115f80f8efc9a0c0eb78c"
+  integrity sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==
+
+pg-pool@^3.4.1:
+  version "3.4.1"
+  resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.4.1.tgz#0e71ce2c67b442a5e862a9c182172c37eda71e9c"
+  integrity sha512-TVHxR/gf3MeJRvchgNHxsYsTCHQ+4wm3VIHSS19z8NC0+gioEhq1okDY1sm/TYbfoP6JLFx01s0ShvZ3puP/iQ==
+
+pg-protocol@^1.5.0:
+  version "1.5.0"
+  resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.5.0.tgz#b5dd452257314565e2d54ab3c132adc46565a6a0"
+  integrity sha512-muRttij7H8TqRNu/DxrAJQITO4Ac7RmX3Klyr/9mJEOBeIpgnF8f9jAfRz5d3XwQZl5qBjF9gLsUtMPJE0vezQ==
+
+pg-types@^2.1.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/pg-types/-/pg-types-2.2.0.tgz#2d0250d636454f7cfa3b6ae0382fdfa8063254a3"
+  integrity sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==
+  dependencies:
+    pg-int8 "1.0.1"
+    postgres-array "~2.0.0"
+    postgres-bytea "~1.0.0"
+    postgres-date "~1.0.4"
+    postgres-interval "^1.1.0"
+
+pg@8.7.1, pg@^8.4.0:
+  version "8.7.1"
+  resolved "https://registry.yarnpkg.com/pg/-/pg-8.7.1.tgz#9ea9d1ec225980c36f94e181d009ab9f4ce4c471"
+  integrity sha512-7bdYcv7V6U3KAtWjpQJJBww0UEsWuh4yQ/EjNf2HeO/NnvKjpvhEIe/A/TleP6wtmSKnUnghs5A9jUoK6iDdkA==
+  dependencies:
+    buffer-writer "2.0.0"
+    packet-reader "1.0.0"
+    pg-connection-string "^2.5.0"
+    pg-pool "^3.4.1"
+    pg-protocol "^1.5.0"
+    pg-types "^2.1.0"
+    pgpass "1.x"
+
+pgpass@1.x:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/pgpass/-/pgpass-1.0.4.tgz#85eb93a83800b20f8057a2b029bf05abaf94ea9c"
+  integrity sha512-YmuA56alyBq7M59vxVBfPJrGSozru8QAdoNlWuW3cz8l+UX3cWge0vTvjKhsSHSJpo3Bom8/Mm6hf0TR5GY0+w==
+  dependencies:
+    split2 "^3.1.1"
+
+pgtools@0.3.2:
+  version "0.3.2"
+  resolved "https://registry.yarnpkg.com/pgtools/-/pgtools-0.3.2.tgz#df11d54057c889e27ba891664efda69de1b7a0fe"
+  integrity sha512-o9iI8CrJohpjt3hgoJuEC18oYrt/iLsc3BYtW6kP/0T7EyQ9T/WlnuzyKcC2GtfutREfXCmwaUcbqPrLw8sjng==
+  dependencies:
+    bluebird "^3.3.5"
+    pg "^8.4.0"
+    pg-connection-string "^2.4.0"
+    yargs "^5.0.0"
+
 picomatch@^2.2.3:
   version "2.3.0"
   resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972"
   integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==
 
+pify@^2.0.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
+  integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw=
+
 pify@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
@@ -5446,6 +5644,18 @@ pify@^4.0.1:
   resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231"
   integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==
 
+pinkie-promise@^2.0.0:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
+  integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o=
+  dependencies:
+    pinkie "^2.0.0"
+
+pinkie@^2.0.0:
+  version "2.0.4"
+  resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
+  integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA=
+
 pkg-dir@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3"
@@ -5466,9 +5676,9 @@ please-upgrade-node@^3.2.0:
     semver-compare "^1.0.0"
 
 plivo@*:
-  version "4.20.1"
-  resolved "https://registry.yarnpkg.com/plivo/-/plivo-4.20.1.tgz#032366930f930debab6497b2def2ab07e46361dc"
-  integrity sha512-0f3l/FBc00hz/BXF9Pyl1HgqWWI2XW9CLGlQN284YQqlt54T0vI5AaPd3GRlDxb6tI95u9UATTwbOgNKe5WJVQ==
+  version "4.23.1"
+  resolved "https://registry.yarnpkg.com/plivo/-/plivo-4.23.1.tgz#bbc680db39a2c539288ae317fcb19dcdf00edcac"
+  integrity sha512-q8I3rcT7/4a+u650i6RzBYJ2v5uDFSfjnAd/FAJ6Wlj9guWA9zoJTdAsk4FhlKkkwvczxS6UigIqI3DORzM8OA==
   dependencies:
     "@types/node" "^14.14.14"
     axios "^0.21.1"
@@ -5494,6 +5704,28 @@ posix-character-classes@^0.1.0:
   resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
   integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=
 
+postgres-array@~2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz#48f8fce054fbc69671999329b8834b772652d82e"
+  integrity sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==
+
+postgres-bytea@~1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/postgres-bytea/-/postgres-bytea-1.0.0.tgz#027b533c0aa890e26d172d47cf9ccecc521acd35"
+  integrity sha1-AntTPAqokOJtFy1Hz5zOzFIazTU=
+
+postgres-date@~1.0.4:
+  version "1.0.7"
+  resolved "https://registry.yarnpkg.com/postgres-date/-/postgres-date-1.0.7.tgz#51bc086006005e5061c591cee727f2531bf641a8"
+  integrity sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==
+
+postgres-interval@^1.1.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/postgres-interval/-/postgres-interval-1.2.0.tgz#b460c82cb1587507788819a06aa0fffdb3544695"
+  integrity sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==
+  dependencies:
+    xtend "^4.0.0"
+
 precond@0.2:
   version "0.2.3"
   resolved "https://registry.yarnpkg.com/precond/-/precond-0.2.3.tgz#aa9591bcaa24923f1e0f4849d240f47efc1075ac"
@@ -5663,6 +5895,14 @@ raw-body@2.4.0:
     iconv-lite "0.4.24"
     unpipe "1.0.0"
 
+read-pkg-up@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
+  integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=
+  dependencies:
+    find-up "^1.0.0"
+    read-pkg "^1.0.0"
+
 read-pkg-up@^4.0.0:
   version "4.0.0"
   resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978"
@@ -5671,6 +5911,15 @@ read-pkg-up@^4.0.0:
     find-up "^3.0.0"
     read-pkg "^3.0.0"
 
+read-pkg@^1.0.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
+  integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=
+  dependencies:
+    load-json-file "^1.0.0"
+    normalize-package-data "^2.3.2"
+    path-type "^1.0.0"
+
 read-pkg@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389"
@@ -5680,7 +5929,7 @@ read-pkg@^3.0.0:
     normalize-package-data "^2.3.2"
     path-type "^3.0.0"
 
-"readable-stream@2 || 3", readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0:
+"readable-stream@2 || 3", readable-stream@^3.0.0, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0:
   version "3.6.0"
   resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
   integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
@@ -5932,6 +6181,11 @@ require-directory@^2.1.1:
   resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
   integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I=
 
+require-main-filename@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"
+  integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=
+
 require-main-filename@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b"
@@ -6036,11 +6290,6 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
   resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
   integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
 
-safe-buffer@5.2.0:
-  version "5.2.0"
-  resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519"
-  integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==
-
 safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0:
   version "5.2.1"
   resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
@@ -6213,9 +6462,9 @@ side-channel@^1.0.4:
     object-inspect "^1.9.0"
 
 signal-exit@^3.0.0, signal-exit@^3.0.2:
-  version "3.0.3"
-  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c"
-  integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==
+  version "3.0.5"
+  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.5.tgz#9e3e8cc0c75a99472b44321033a7702e7738252f"
+  integrity sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==
 
 slash@^1.0.0:
   version "1.0.0"
@@ -6342,9 +6591,9 @@ spdx-expression-parse@^3.0.0:
     spdx-license-ids "^3.0.0"
 
 spdx-license-ids@^3.0.0:
-  version "3.0.9"
-  resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz#8a595135def9592bda69709474f1cbeea7c2467f"
-  integrity sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==
+  version "3.0.11"
+  resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz#50c0d8c40a14ec1bf449bae69a0ea4685a9d9f95"
+  integrity sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==
 
 split-string@^3.0.1, split-string@^3.0.2:
   version "3.1.0"
@@ -6353,6 +6602,13 @@ split-string@^3.0.1, split-string@^3.0.2:
   dependencies:
     extend-shallow "^3.0.0"
 
+split2@^3.1.1:
+  version "3.2.2"
+  resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f"
+  integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==
+  dependencies:
+    readable-stream "^3.0.0"
+
 sprintf-js@^1.0.3:
   version "1.1.2"
   resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673"
@@ -6369,15 +6625,15 @@ sqlstring@2.3.1:
   integrity sha1-R1OT/56RR5rqYtyvDKPRSYOn+0A=
 
 ssh2@*:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/ssh2/-/ssh2-1.2.0.tgz#177a46bb12b7ef2b7bce28bdcbd7eae3cbc50045"
-  integrity sha512-vklfVRyylayGV/zMwVEkTC9kBhA3t264hoUHV/yGuunBJh6uBGP1VlzhOp8EsqxpKnG0xkLE1qHZlU0+t8Vh6Q==
+  version "1.5.0"
+  resolved "https://registry.yarnpkg.com/ssh2/-/ssh2-1.5.0.tgz#4dc559ba98a1cbb420e8d42998dfe35d0eda92bc"
+  integrity sha512-iUmRkhH9KGeszQwDW7YyyqjsMTf4z+0o48Cp4xOwlY5LjtbIAvyd3fwnsoUZW/hXmTCRA3yt7S/Jb9uVjErVlA==
   dependencies:
     asn1 "^0.2.4"
     bcrypt-pbkdf "^1.0.2"
   optionalDependencies:
     cpu-features "0.0.2"
-    nan "^2.14.2"
+    nan "^2.15.0"
 
 sshpk@^1.7.0:
   version "1.16.1"
@@ -6447,6 +6703,15 @@ string-tools@^1.0.0:
   resolved "https://registry.yarnpkg.com/string-tools/-/string-tools-1.0.0.tgz#c69a9d5788858997da66f1d923ba7113ea466b5a"
   integrity sha1-xpqdV4iFiZfaZvHZI7pxE+pGa1o=
 
+string-width@^1.0.1, string-width@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
+  integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=
+  dependencies:
+    code-point-at "^1.0.0"
+    is-fullwidth-code-point "^1.0.0"
+    strip-ansi "^3.0.0"
+
 string-width@^3.0.0, string-width@^3.1.0:
   version "3.1.0"
   resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961"
@@ -6470,7 +6735,7 @@ string_decoder@~1.1.1:
   dependencies:
     safe-buffer "~5.1.0"
 
-strip-ansi@^3.0.0:
+strip-ansi@^3.0.0, strip-ansi@^3.0.1:
   version "3.0.1"
   resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
   integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
@@ -6484,6 +6749,13 @@ strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0:
   dependencies:
     ansi-regex "^4.1.0"
 
+strip-bom@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
+  integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=
+  dependencies:
+    is-utf8 "^0.2.0"
+
 strip-bom@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
@@ -6494,6 +6766,11 @@ strip-json-comments@~2.0.1:
   resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
   integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
 
+strnum@^1.0.4:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/strnum/-/strnum-1.0.4.tgz#e97e36a7d6ba9f93d0d6b496b2ed0678d422832b"
+  integrity sha512-lMzNMfDpaQOLt4B2mEbfzYS0+T7dvCXeojnlGf6f1AygvWDMcWyXYaLbyICfjVu29sErR8fnRagQfBW/N/hGgw==
+
 supports-color@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
@@ -6666,6 +6943,11 @@ toidentifier@1.0.0:
   resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553"
   integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==
 
+toidentifier@1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35"
+  integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==
+
 tough-cookie@^2.3.3, tough-cookie@~2.5.0:
   version "2.5.0"
   resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2"
@@ -6698,6 +6980,18 @@ tr46@^2.1.0:
   dependencies:
     punycode "^2.1.1"
 
+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"
+
+tr46@~0.0.3:
+  version "0.0.3"
+  resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"
+  integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=
+
 trim-right@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
@@ -6726,11 +7020,11 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0:
   integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=
 
 twilio@*:
-  version "3.66.1"
-  resolved "https://registry.yarnpkg.com/twilio/-/twilio-3.66.1.tgz#8435441ca45b0c7cb3761c4ba3011ca32e75ba69"
-  integrity sha512-BmIgfx2VuS7tj4IscBhyEj7CdmtfIaaJ1IuNeGoJFYBx5xikpuwkR0Ceo5CNtK5jnN3SCKmxHxToec/MYEXl0A==
+  version "3.71.1"
+  resolved "https://registry.yarnpkg.com/twilio/-/twilio-3.71.1.tgz#15bbb4b51c75d91cc07a8149378c4af330e543cc"
+  integrity sha512-P/KFvm33UW15EnpHJKgdTxUa1u6MlR/u+sCVnL4ie2TDRv6t7kX+ieIGQMpH7bP/z7FXkTjEt0lz4M+XJ/XWOg==
   dependencies:
-    axios "^0.21.1"
+    axios "^0.21.4"
     dayjs "^1.8.29"
     https-proxy-agent "^5.0.0"
     jsonwebtoken "^8.5.1"
@@ -6739,7 +7033,7 @@ twilio@*:
     qs "^6.9.4"
     rootpath "^0.1.2"
     scmp "^2.1.0"
-    url-parse "^1.5.0"
+    url-parse "^1.5.3"
     xmlbuilder "^13.0.2"
 
 type-check@~0.3.2:
@@ -6773,9 +7067,9 @@ uglify-js@^2.6:
     uglify-to-browserify "~1.0.0"
 
 uglify-js@^3.1.4, uglify-js@^3.5.1:
-  version "3.14.1"
-  resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.14.1.tgz#e2cb9fe34db9cb4cf7e35d1d26dfea28e09a7d06"
-  integrity sha512-JhS3hmcVaXlp/xSo3PKY5R0JqKs5M3IV+exdLHW99qKvKivPO4Z8qbej6mte17SOPqAOVMjt/XGgWacnFSzM3g==
+  version "3.14.3"
+  resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.14.3.tgz#c0f25dfea1e8e5323eccf59610be08b6043c15cf"
+  integrity sha512-mic3aOdiq01DuSVx0TseaEzMIVqebMZ0Z3vaeDhFEh9bsc24hV1TFvN74reA2vs08D0ZWfNjAcJ3UbVLaBss+g==
 
 uglify-to-browserify@~1.0.0:
   version "1.0.2"
@@ -6790,9 +7084,9 @@ uid-safe@2.1.5:
     random-bytes "~1.0.0"
 
 uid2@0.0.x:
-  version "0.0.3"
-  resolved "https://registry.yarnpkg.com/uid2/-/uid2-0.0.3.tgz#483126e11774df2f71b8b639dcd799c376162b82"
-  integrity sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=
+  version "0.0.4"
+  resolved "https://registry.yarnpkg.com/uid2/-/uid2-0.0.4.tgz#033f3b1d5d32505f5ce5f888b9f3b667123c0a44"
+  integrity sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA==
 
 unc-path-regex@^0.1.2:
   version "0.1.2"
@@ -6807,10 +7101,10 @@ underscore.string@~3.3.5:
     sprintf-js "^1.0.3"
     util-deprecate "^1.0.2"
 
-underscore@~1.4.4:
-  version "1.4.4"
-  resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.4.4.tgz#61a6a32010622afa07963bf325203cf12239d604"
-  integrity sha1-YaajIBBiKvoHljvzJSA88SI51gQ=
+underscore@^1.13.1:
+  version "1.13.1"
+  resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.13.1.tgz#0c1c6bd2df54b6b69f2314066d65b6cde6fcf9d1"
+  integrity sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g==
 
 underscore@~1.8.3:
   version "1.8.3"
@@ -6872,7 +7166,7 @@ url-join@^4.0.1:
   resolved "https://registry.yarnpkg.com/url-join/-/url-join-4.0.1.tgz#b642e21a2646808ffa178c4c5fda39844e12cde7"
   integrity sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==
 
-url-parse@^1.5.0, url-parse@^1.5.1:
+url-parse@^1.5.3:
   version "1.5.3"
   resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.3.tgz#71c1303d38fb6639ade183c2992c8cc0686df862"
   integrity sha512-IIORyIQD9rvj0A4CLWsHkBBJuNqWpFQe224b6j9t/ABmquIS0qDU2pY6kl6AuOrL5OkCXHMCFNe1jBcuAggjvQ==
@@ -6980,13 +7274,13 @@ vary@~1.1.2:
   integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=
 
 vasync@^2.2.0:
-  version "2.2.0"
-  resolved "https://registry.yarnpkg.com/vasync/-/vasync-2.2.0.tgz#cfde751860a15822db3b132bc59b116a4adaf01b"
-  integrity sha1-z951GGChWCLbOxMrxZsRakra8Bs=
+  version "2.2.1"
+  resolved "https://registry.yarnpkg.com/vasync/-/vasync-2.2.1.tgz#d881379ff3685e4affa8e775cf0fd369262a201b"
+  integrity sha512-Hq72JaTpcTFdWiNA4Y22Amej2GH3BFmBaKPPlDZ4/oC8HNn2ISHLkFrJU4Ds8R3jcUi7oo5Y9jcMHKjES+N9wQ==
   dependencies:
     verror "1.10.0"
 
-verror@1.10.0, verror@^1.8.1:
+verror@1.10.0:
   version "1.10.0"
   resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
   integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=
@@ -6995,6 +7289,15 @@ verror@1.10.0, verror@^1.8.1:
     core-util-is "1.0.2"
     extsprintf "^1.2.0"
 
+verror@^1.8.1:
+  version "1.10.1"
+  resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.1.tgz#4bf09eeccf4563b109ed4b3d458380c972b0cdeb"
+  integrity sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==
+  dependencies:
+    assert-plus "^1.0.0"
+    core-util-is "1.0.2"
+    extsprintf "^1.2.0"
+
 w3c-hr-time@^1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd"
@@ -7002,12 +7305,12 @@ w3c-hr-time@^1.0.2:
   dependencies:
     browser-process-hrtime "^1.0.0"
 
-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-back@^2.0.1:
   version "2.0.1"
@@ -7037,9 +7340,9 @@ web-push@*:
     urlsafe-base64 "^1.0.0"
 
 webdav@*:
-  version "4.6.0"
-  resolved "https://registry.yarnpkg.com/webdav/-/webdav-4.6.0.tgz#b12d3631562ed4a7d665dd1757349682dfc8f441"
-  integrity sha512-amL/NeZ73xe8cNC+uqAF3mOC/j5dNoNWlZswYCd7DKxhnZM7dViAVSv6gdCYeGAETjPEZVubcKDDRwGKz9ShQQ==
+  version "4.7.0"
+  resolved "https://registry.yarnpkg.com/webdav/-/webdav-4.7.0.tgz#3964c72c1d5dc9854c0031b43e464f260f22476e"
+  integrity sha512-R1WZl/JeFPAmSEn1EPCmxSdPY8IxS/P0qnxAzBeRqEewpxVJ/UiCMJwXHLpyVsKYA1PIb1dYv+UTQsbNaQnLBw==
   dependencies:
     axios "^0.21.1"
     base-64 "^1.0.0"
@@ -7052,31 +7355,52 @@ webdav@*:
     nested-property "^4.0.0"
     path-posix "^1.0.0"
     url-join "^4.0.1"
-    url-parse "^1.5.1"
+    url-parse "^1.5.3"
 
-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@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"
+  integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=
 
 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==
 
-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==
+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==
+
+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-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@^8.0.0, whatwg-url@^8.4.0, whatwg-url@^8.5.0:
+whatwg-url@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d"
+  integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0=
+  dependencies:
+    tr46 "~0.0.3"
+    webidl-conversions "^3.0.0"
+
+whatwg-url@^8.4.0:
   version "8.7.0"
   resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77"
   integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==
@@ -7085,6 +7409,11 @@ whatwg-url@^8.0.0, whatwg-url@^8.4.0, whatwg-url@^8.5.0:
     tr46 "^2.1.0"
     webidl-conversions "^6.1.0"
 
+which-module@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f"
+  integrity sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=
+
 which-module@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
@@ -7116,6 +7445,11 @@ window-size@0.1.0:
   resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
   integrity sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=
 
+window-size@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075"
+  integrity sha1-tDFbtCFKPXBY6+7okuE/ok2YsHU=
+
 word-wrap@~1.2.3:
   version "1.2.3"
   resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
@@ -7154,6 +7488,14 @@ wordwrapjs@^2.0.0-0:
     reduce-flatten "^1.0.1"
     typical "^2.6.0"
 
+wrap-ansi@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85"
+  integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=
+  dependencies:
+    string-width "^1.0.1"
+    strip-ansi "^3.0.1"
+
 wrap-ansi@^5.1.0:
   version "5.1.0"
   resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09"
@@ -7184,33 +7526,38 @@ ws@5.2.3, ws@^5.2.0:
   dependencies:
     async-limiter "~1.0.0"
 
-ws@^7.0.0, ws@^7.4.6:
-  version "7.5.3"
-  resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.3.tgz#160835b63c7d97bfab418fc1b8a9fced2ac01a74"
-  integrity sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==
+ws@^7.0.0:
+  version "7.5.5"
+  resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.5.tgz#8b4bc4af518cfabd0473ae4f99144287b33eb881"
+  integrity sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w==
 
-xml-crypto@^2.1.2:
-  version "2.1.2"
-  resolved "https://registry.yarnpkg.com/xml-crypto/-/xml-crypto-2.1.2.tgz#501506d42e466f6cd908c5a03182217231b4e4b8"
-  integrity sha512-DBhZXtBjENtLwJmeJhLUBwUm9YWNjCRvAx6ESP4VJyM9PDuKqZu2Fp5Y5HKqcdJT7vV7eI25Z4UBMezji6QloQ==
+ws@^8.2.3:
+  version "8.2.3"
+  resolved "https://registry.yarnpkg.com/ws/-/ws-8.2.3.tgz#63a56456db1b04367d0b721a0b80cae6d8becbba"
+  integrity sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==
+
+xml-crypto@^2.1.3:
+  version "2.1.3"
+  resolved "https://registry.yarnpkg.com/xml-crypto/-/xml-crypto-2.1.3.tgz#6a7272b610ea3e4ea7f13e9e4876f1b20cbc32c8"
+  integrity sha512-MpXZwnn9JK0mNPZ5mnFIbNnQa+8lMGK4NtnX2FlJMfMWR60sJdFO9X72yO6ji068pxixzk53O7x0/iSKh6IhyQ==
   dependencies:
-    xmldom "^0.6.0"
+    "@xmldom/xmldom" "^0.7.0"
     xpath "0.0.32"
 
-xml-encryption@^1.2.4:
-  version "1.2.4"
-  resolved "https://registry.yarnpkg.com/xml-encryption/-/xml-encryption-1.2.4.tgz#767d13f9ff2f979ff5657b93bd72aa729d34b66c"
-  integrity sha512-+4aSBIv/lwmv5PntfYsZyelOnCcyDmCt/MNxXUukRGlcWW8DObJ26obbVX3iXYRdqkLqbv3AKk8ntNCGKIq/UQ==
+xml-encryption@^1.3.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/xml-encryption/-/xml-encryption-1.3.0.tgz#4cad44a59bf8bdec76d7865ce0b89e13c09962f4"
+  integrity sha512-3P8C4egMMxSR1BmsRM+fG16a3WzOuUEQKS2U4c3AZ5v7OseIfdUeVkD8dwxIhuLryFZSRWUL5OP6oqkgU7hguA==
   dependencies:
+    "@xmldom/xmldom" "^0.7.0"
     escape-html "^1.0.3"
     node-forge "^0.10.0"
-    xmldom "~0.6.0"
     xpath "0.0.32"
 
-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==
 
 xml2js@^0.4.19, xml2js@^0.4.23:
   version "0.4.23"
@@ -7220,11 +7567,6 @@ xml2js@^0.4.19, xml2js@^0.4.23:
     sax ">=0.6.0"
     xmlbuilder "~11.0.0"
 
-xml@0.0.12:
-  version "0.0.12"
-  resolved "https://registry.yarnpkg.com/xml/-/xml-0.0.12.tgz#f08b347109912be00285785f46f15ad8e50a5f67"
-  integrity sha1-8Is0cQmRK+AChXhfRvFa2OUKX2c=
-
 xmlbuilder@^13.0.2:
   version "13.0.2"
   resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-13.0.2.tgz#02ae33614b6a047d1c32b5389c1fdacb2bce47a7"
@@ -7255,16 +7597,6 @@ xmldom@0.1.x:
   resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.31.tgz#b76c9a1bd9f0a9737e5a72dc37231cf38375e2ff"
   integrity sha512-yS2uJflVQs6n+CyjHoaBmVSqIDevTAWrzMmjG1Gc7h1qQ7uVozNhEPJAwZXWyGQ/Gafo3fCwrcaokezLPupVyQ==
 
-xmldom@^0.5.0:
-  version "0.5.0"
-  resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.5.0.tgz#193cb96b84aa3486127ea6272c4596354cb4962e"
-  integrity sha512-Foaj5FXVzgn7xFzsKeNIde9g6aFBxTPi37iwsno8QvApmtg7KYrr+OPyRHcJF7dud2a5nGRBXK3n0dL62Gf7PA==
-
-xmldom@^0.6.0, xmldom@~0.6.0:
-  version "0.6.0"
-  resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.6.0.tgz#43a96ecb8beece991cef382c08397d82d4d0c46f"
-  integrity sha512-iAcin401y58LckRZ0TkI4k0VSM1Qg0KGSc3i8rU+xrxe19A/BN1zHyVSJY7uoutVlaTSzYyk/v5AmkewAP7jtg==
-
 xpath@0.0.32:
   version "0.0.32"
   resolved "https://registry.yarnpkg.com/xpath/-/xpath-0.0.32.tgz#1b73d3351af736e17ec078d6da4b8175405c48af"
@@ -7282,6 +7614,11 @@ xtraverse@0.1.x:
   dependencies:
     xmldom "0.1.x"
 
+y18n@^3.2.1:
+  version "3.2.2"
+  resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696"
+  integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==
+
 y18n@^4.0.0:
   version "4.0.3"
   resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf"
@@ -7305,6 +7642,14 @@ yargs-parser@^13.0.0, yargs-parser@^13.1.2:
     camelcase "^5.0.0"
     decamelize "^1.2.0"
 
+yargs-parser@^3.2.0:
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-3.2.0.tgz#5081355d19d9d0c8c5d81ada908cb4e6d186664f"
+  integrity sha1-UIE1XRnZ0MjF2BrakIy05tGGZk8=
+  dependencies:
+    camelcase "^3.0.0"
+    lodash.assign "^4.1.0"
+
 yargs@^13.2.2:
   version "13.3.2"
   resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd"
@@ -7321,6 +7666,26 @@ yargs@^13.2.2:
     y18n "^4.0.0"
     yargs-parser "^13.1.2"
 
+yargs@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/yargs/-/yargs-5.0.0.tgz#3355144977d05757dbb86d6e38ec056123b3a66e"
+  integrity sha1-M1UUSXfQV1fbuG1uOOwFYSOzpm4=
+  dependencies:
+    cliui "^3.2.0"
+    decamelize "^1.1.1"
+    get-caller-file "^1.0.1"
+    lodash.assign "^4.2.0"
+    os-locale "^1.4.0"
+    read-pkg-up "^1.0.1"
+    require-directory "^2.1.1"
+    require-main-filename "^1.0.1"
+    set-blocking "^2.0.0"
+    string-width "^1.0.2"
+    which-module "^1.0.0"
+    window-size "^0.2.0"
+    y18n "^3.2.1"
+    yargs-parser "^3.2.0"
+
 yargs@~3.10.0:
   version "3.10.0"
   resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1"
diff --git a/pkgs/tools/admin/meshcentral/yarn.nix b/pkgs/tools/admin/meshcentral/yarn.nix
index 2fd6d90075214..171abf0fd2542 100644
--- a/pkgs/tools/admin/meshcentral/yarn.nix
+++ b/pkgs/tools/admin/meshcentral/yarn.nix
@@ -2,139 +2,139 @@
   offline_cache = linkFarm "offline" packages;
   packages = [
     {
-      name = "_babel_code_frame___code_frame_7.14.5.tgz";
+      name = "_babel_code_frame___code_frame_7.16.0.tgz";
       path = fetchurl {
-        name = "_babel_code_frame___code_frame_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.14.5.tgz";
-        sha1 = "23b08d740e83f49c5e59945fbf1b43e80bbf4edb";
+        name = "_babel_code_frame___code_frame_7.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.0.tgz";
+        sha1 = "0dfc80309beec8411e65e706461c408b0bb9b431";
       };
     }
     {
-      name = "_babel_generator___generator_7.15.0.tgz";
+      name = "_babel_generator___generator_7.16.0.tgz";
       path = fetchurl {
-        name = "_babel_generator___generator_7.15.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.15.0.tgz";
-        sha1 = "a7d0c172e0d814974bad5aa77ace543b97917f15";
+        name = "_babel_generator___generator_7.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.16.0.tgz";
+        sha1 = "d40f3d1d5075e62d3500bccb67f3daa8a95265b2";
       };
     }
     {
-      name = "_babel_helper_function_name___helper_function_name_7.14.5.tgz";
+      name = "_babel_helper_function_name___helper_function_name_7.16.0.tgz";
       path = fetchurl {
-        name = "_babel_helper_function_name___helper_function_name_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz";
-        sha1 = "89e2c474972f15d8e233b52ee8c480e2cfcd50c4";
+        name = "_babel_helper_function_name___helper_function_name_7.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz";
+        sha1 = "b7dd0797d00bbfee4f07e9c4ea5b0e30c8bb1481";
       };
     }
     {
-      name = "_babel_helper_get_function_arity___helper_get_function_arity_7.14.5.tgz";
+      name = "_babel_helper_get_function_arity___helper_get_function_arity_7.16.0.tgz";
       path = fetchurl {
-        name = "_babel_helper_get_function_arity___helper_get_function_arity_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz";
-        sha1 = "25fbfa579b0937eee1f3b805ece4ce398c431815";
+        name = "_babel_helper_get_function_arity___helper_get_function_arity_7.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz";
+        sha1 = "0088c7486b29a9cb5d948b1a1de46db66e089cfa";
       };
     }
     {
-      name = "_babel_helper_hoist_variables___helper_hoist_variables_7.14.5.tgz";
+      name = "_babel_helper_hoist_variables___helper_hoist_variables_7.16.0.tgz";
       path = fetchurl {
-        name = "_babel_helper_hoist_variables___helper_hoist_variables_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz";
-        sha1 = "e0dd27c33a78e577d7c8884916a3e7ef1f7c7f8d";
+        name = "_babel_helper_hoist_variables___helper_hoist_variables_7.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz";
+        sha1 = "4c9023c2f1def7e28ff46fc1dbcd36a39beaa81a";
       };
     }
     {
-      name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.14.5.tgz";
+      name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.16.0.tgz";
       path = fetchurl {
-        name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz";
-        sha1 = "22b23a54ef51c2b7605d851930c1976dd0bc693a";
+        name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz";
+        sha1 = "29672f43663e936df370aaeb22beddb3baec7438";
       };
     }
     {
-      name = "_babel_helper_validator_identifier___helper_validator_identifier_7.14.9.tgz";
+      name = "_babel_helper_validator_identifier___helper_validator_identifier_7.15.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_validator_identifier___helper_validator_identifier_7.14.9.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz";
-        sha1 = "6654d171b2024f6d8ee151bf2509699919131d48";
+        name = "_babel_helper_validator_identifier___helper_validator_identifier_7.15.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz";
+        sha1 = "220df993bfe904a4a6b02ab4f3385a5ebf6e2389";
       };
     }
     {
-      name = "_babel_highlight___highlight_7.14.5.tgz";
+      name = "_babel_highlight___highlight_7.16.0.tgz";
       path = fetchurl {
-        name = "_babel_highlight___highlight_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz";
-        sha1 = "6861a52f03966405001f6aa534a01a24d99e8cd9";
+        name = "_babel_highlight___highlight_7.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.0.tgz";
+        sha1 = "6ceb32b2ca4b8f5f361fb7fd821e3fddf4a1725a";
       };
     }
     {
-      name = "_babel_parser___parser_7.15.0.tgz";
+      name = "_babel_parser___parser_7.16.3.tgz";
       path = fetchurl {
-        name = "_babel_parser___parser_7.15.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.15.0.tgz";
-        sha1 = "b6d6e29058ca369127b0eeca2a1c4b5794f1b6b9";
+        name = "_babel_parser___parser_7.16.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.16.3.tgz";
+        sha1 = "271bafcb811080905a119222edbc17909c82261d";
       };
     }
     {
-      name = "_babel_template___template_7.14.5.tgz";
+      name = "_babel_template___template_7.16.0.tgz";
       path = fetchurl {
-        name = "_babel_template___template_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.14.5.tgz";
-        sha1 = "a9bc9d8b33354ff6e55a9c60d1109200a68974f4";
+        name = "_babel_template___template_7.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.16.0.tgz";
+        sha1 = "d16a35ebf4cd74e202083356fab21dd89363ddd6";
       };
     }
     {
-      name = "_babel_traverse___traverse_7.15.0.tgz";
+      name = "_babel_traverse___traverse_7.16.3.tgz";
       path = fetchurl {
-        name = "_babel_traverse___traverse_7.15.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.15.0.tgz";
-        sha1 = "4cca838fd1b2a03283c1f38e141f639d60b3fc98";
+        name = "_babel_traverse___traverse_7.16.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.16.3.tgz";
+        sha1 = "f63e8a938cc1b780f66d9ed3c54f532ca2d14787";
       };
     }
     {
-      name = "_babel_types___types_7.15.0.tgz";
+      name = "_babel_types___types_7.16.0.tgz";
       path = fetchurl {
-        name = "_babel_types___types_7.15.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.15.0.tgz";
-        sha1 = "61af11f2286c4e9c69ca8deb5f4375a73c72dcbd";
+        name = "_babel_types___types_7.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.16.0.tgz";
+        sha1 = "db3b313804f96aadd0b776c4823e127ad67289ba";
       };
     }
     {
-      name = "_mysql_xdevapi___xdevapi_8.0.26.tgz";
+      name = "_mysql_xdevapi___xdevapi_8.0.27.tgz";
       path = fetchurl {
-        name = "_mysql_xdevapi___xdevapi_8.0.26.tgz";
-        url  = "https://registry.yarnpkg.com/@mysql/xdevapi/-/xdevapi-8.0.26.tgz";
-        sha1 = "bdf5752553c53c32d665bfa3034f21fbfa989611";
+        name = "_mysql_xdevapi___xdevapi_8.0.27.tgz";
+        url  = "https://registry.yarnpkg.com/@mysql/xdevapi/-/xdevapi-8.0.27.tgz";
+        sha1 = "1e19335dee89d413c7ffbfd29340a92930d2e9c6";
       };
     }
     {
-      name = "_sendgrid_client___client_7.4.3.tgz";
+      name = "_sendgrid_client___client_7.6.0.tgz";
       path = fetchurl {
-        name = "_sendgrid_client___client_7.4.3.tgz";
-        url  = "https://registry.yarnpkg.com/@sendgrid/client/-/client-7.4.3.tgz";
-        sha1 = "bc71aae05de2cd9aa607f4eb1d886711d09f9595";
+        name = "_sendgrid_client___client_7.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/@sendgrid/client/-/client-7.6.0.tgz";
+        sha1 = "f90cb8759c96e1d90224f29ad98f8fdc2be287f3";
       };
     }
     {
-      name = "_sendgrid_helpers___helpers_7.4.3.tgz";
+      name = "_sendgrid_helpers___helpers_7.6.0.tgz";
       path = fetchurl {
-        name = "_sendgrid_helpers___helpers_7.4.3.tgz";
-        url  = "https://registry.yarnpkg.com/@sendgrid/helpers/-/helpers-7.4.3.tgz";
-        sha1 = "231a4405266cfa291054df8b668fe3a4dc9387aa";
+        name = "_sendgrid_helpers___helpers_7.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/@sendgrid/helpers/-/helpers-7.6.0.tgz";
+        sha1 = "b381bfab391bcd66c771811b22bb6bb2d5c1dfc6";
       };
     }
     {
-      name = "_sendgrid_mail___mail_7.4.5.tgz";
+      name = "_sendgrid_mail___mail_7.6.0.tgz";
       path = fetchurl {
-        name = "_sendgrid_mail___mail_7.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/@sendgrid/mail/-/mail-7.4.5.tgz";
-        sha1 = "22cef36e793134833b36aff5d3f4f53e8f81dd52";
+        name = "_sendgrid_mail___mail_7.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/@sendgrid/mail/-/mail-7.6.0.tgz";
+        sha1 = "e74ee30110527feab5d3b83d68af0cd94537f6d2";
       };
     }
     {
-      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";
-        sha1 = "ccb91445360179a04e7fe6aff78c00ffc1eeaf82";
+        name = "_tootallnate_once___once_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz";
+        sha1 = "f544a148d3ab35801c1f633a7441fd87c2e484bf";
       };
     }
     {
@@ -154,19 +154,19 @@
       };
     }
     {
-      name = "_types_node___node_16.4.13.tgz";
+      name = "_types_node___node_16.11.7.tgz";
       path = fetchurl {
-        name = "_types_node___node_16.4.13.tgz";
-        url  = "https://registry.yarnpkg.com/@types/node/-/node-16.4.13.tgz";
-        sha1 = "7dfd9c14661edc65cccd43a29eb454174642370d";
+        name = "_types_node___node_16.11.7.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-16.11.7.tgz";
+        sha1 = "36820945061326978c42a01e56b61cd223dfdc42";
       };
     }
     {
-      name = "_types_node___node_14.17.9.tgz";
+      name = "_types_node___node_14.17.33.tgz";
       path = fetchurl {
-        name = "_types_node___node_14.17.9.tgz";
-        url  = "https://registry.yarnpkg.com/@types/node/-/node-14.17.9.tgz";
-        sha1 = "b97c057e6138adb7b720df2bd0264b03c9f504fd";
+        name = "_types_node___node_14.17.33.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-14.17.33.tgz";
+        sha1 = "011ee28e38dc7aee1be032ceadf6332a0ab15b12";
       };
     }
     {
@@ -186,6 +186,14 @@
       };
     }
     {
+      name = "_xmldom_xmldom___xmldom_0.7.5.tgz";
+      path = fetchurl {
+        name = "_xmldom_xmldom___xmldom_0.7.5.tgz";
+        url  = "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.7.5.tgz";
+        sha1 = "09fa51e356d07d0be200642b0e4f91d8e6dd408d";
+      };
+    }
+    {
       name = "_xmpp_base64___base64_0.9.0.tgz";
       path = fetchurl {
         name = "_xmpp_base64___base64_0.9.0.tgz";
@@ -394,6 +402,22 @@
       };
     }
     {
+      name = "_yetzt_binary_search_tree___binary_search_tree_0.2.6.tgz";
+      path = fetchurl {
+        name = "_yetzt_binary_search_tree___binary_search_tree_0.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/@yetzt/binary-search-tree/-/binary-search-tree-0.2.6.tgz";
+        sha1 = "91b2d861c089da0bfbeceb5deeca57b81c4210ec";
+      };
+    }
+    {
+      name = "_yetzt_nedb___nedb_1.8.0.tgz";
+      path = fetchurl {
+        name = "_yetzt_nedb___nedb_1.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/@yetzt/nedb/-/nedb-1.8.0.tgz";
+        sha1 = "c0e03bfd5f9e76045d4e4baacbebd271cb221258";
+      };
+    }
+    {
       name = "abab___abab_2.0.5.tgz";
       path = fetchurl {
         name = "abab___abab_2.0.5.tgz";
@@ -482,11 +506,11 @@
       };
     }
     {
-      name = "acorn___acorn_8.4.1.tgz";
+      name = "acorn___acorn_8.5.0.tgz";
       path = fetchurl {
-        name = "acorn___acorn_8.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/acorn/-/acorn-8.4.1.tgz";
-        sha1 = "56c36251fc7cabc7096adc18f05afe814321a28c";
+        name = "acorn___acorn_8.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/acorn/-/acorn-8.5.0.tgz";
+        sha1 = "4512ccb99b3698c752591e9bb4472e38ad43cee2";
       };
     }
     {
@@ -802,11 +826,11 @@
       };
     }
     {
-      name = "asn1___asn1_0.2.4.tgz";
+      name = "asn1___asn1_0.2.6.tgz";
       path = fetchurl {
-        name = "asn1___asn1_0.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz";
-        sha1 = "8d2475dfab553bb33e77b54e59e880bb8ce23136";
+        name = "asn1___asn1_0.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz";
+        sha1 = "0d3a7bb6e64e02a90c0303b31f292868ea09a08d";
       };
     }
     {
@@ -842,14 +866,6 @@
       };
     }
     {
-      name = "async___async_0.2.10.tgz";
-      path = fetchurl {
-        name = "async___async_0.2.10.tgz";
-        url  = "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz";
-        sha1 = "b6bbe0b0674b9d719708ca38de8c237cb526c3d1";
-      };
-    }
-    {
       name = "async___async_2.6.3.tgz";
       path = fetchurl {
         name = "async___async_2.6.3.tgz";
@@ -858,11 +874,11 @@
       };
     }
     {
-      name = "async___async_3.2.1.tgz";
+      name = "async___async_3.2.2.tgz";
       path = fetchurl {
-        name = "async___async_3.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/async/-/async-3.2.1.tgz";
-        sha1 = "d3274ec66d107a47476a4c49136aacdb00665fc8";
+        name = "async___async_3.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/async/-/async-3.2.2.tgz";
+        sha1 = "2eb7671034bb2194d45d30e31e24ec7e7f9670cd";
       };
     }
     {
@@ -906,6 +922,14 @@
       };
     }
     {
+      name = "axios___axios_0.21.4.tgz";
+      path = fetchurl {
+        name = "axios___axios_0.21.4.tgz";
+        url  = "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz";
+        sha1 = "c67b90dc0568e5c1cf2b0b858c43ba28e2eda575";
+      };
+    }
+    {
       name = "babel_cli___babel_cli_6.26.0.tgz";
       path = fetchurl {
         name = "babel_cli___babel_cli_6.26.0.tgz";
@@ -1386,14 +1410,6 @@
       };
     }
     {
-      name = "binary_search_tree___binary_search_tree_0.2.5.tgz";
-      path = fetchurl {
-        name = "binary_search_tree___binary_search_tree_0.2.5.tgz";
-        url  = "https://registry.yarnpkg.com/binary-search-tree/-/binary-search-tree-0.2.5.tgz";
-        sha1 = "7dbb3b210fdca082450dad2334c304af39bdc784";
-      };
-    }
-    {
       name = "binary_search___binary_search_1.3.6.tgz";
       path = fetchurl {
         name = "binary_search___binary_search_1.3.6.tgz";
@@ -1514,11 +1530,11 @@
       };
     }
     {
-      name = "bson___bson_4.4.1.tgz";
+      name = "bson___bson_4.5.4.tgz";
       path = fetchurl {
-        name = "bson___bson_4.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/bson/-/bson-4.4.1.tgz";
-        sha1 = "682c3cb8b90b222414ce14ef8398154ba2cc21bc";
+        name = "bson___bson_4.5.4.tgz";
+        url  = "https://registry.yarnpkg.com/bson/-/bson-4.5.4.tgz";
+        sha1 = "5f74f1e11f743ea8aec30b5e24bfddae82846873";
       };
     }
     {
@@ -1538,6 +1554,14 @@
       };
     }
     {
+      name = "buffer_writer___buffer_writer_2.0.0.tgz";
+      path = fetchurl {
+        name = "buffer_writer___buffer_writer_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-writer/-/buffer-writer-2.0.0.tgz";
+        sha1 = "ce7eb81a38f7829db09c873f2fbb792c0c98ec04";
+      };
+    }
+    {
       name = "buffer___buffer_5.7.1.tgz";
       path = fetchurl {
         name = "buffer___buffer_5.7.1.tgz";
@@ -1634,6 +1658,14 @@
       };
     }
     {
+      name = "camelcase___camelcase_3.0.0.tgz";
+      path = fetchurl {
+        name = "camelcase___camelcase_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz";
+        sha1 = "32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a";
+      };
+    }
+    {
       name = "camelcase___camelcase_5.3.1.tgz";
       path = fetchurl {
         name = "camelcase___camelcase_5.3.1.tgz";
@@ -1730,11 +1762,11 @@
       };
     }
     {
-      name = "clean_css___clean_css_4.2.3.tgz";
+      name = "clean_css___clean_css_4.2.4.tgz";
       path = fetchurl {
-        name = "clean_css___clean_css_4.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz";
-        sha1 = "507b5de7d97b48ee53d84adb0160ff6216380f78";
+        name = "clean_css___clean_css_4.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.4.tgz";
+        sha1 = "733bf46eba4e607c6891ea57c24a989356831178";
       };
     }
     {
@@ -1754,6 +1786,14 @@
       };
     }
     {
+      name = "cliui___cliui_3.2.0.tgz";
+      path = fetchurl {
+        name = "cliui___cliui_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz";
+        sha1 = "120601537a916d29940f934da3b48d585a39213d";
+      };
+    }
+    {
       name = "cliui___cliui_5.0.0.tgz";
       path = fetchurl {
         name = "cliui___cliui_5.0.0.tgz";
@@ -1762,6 +1802,14 @@
       };
     }
     {
+      name = "code_point_at___code_point_at_1.1.0.tgz";
+      path = fetchurl {
+        name = "code_point_at___code_point_at_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz";
+        sha1 = "0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77";
+      };
+    }
+    {
       name = "collect_all___collect_all_1.0.4.tgz";
       path = fetchurl {
         name = "collect_all___collect_all_1.0.4.tgz";
@@ -2010,11 +2058,11 @@
       };
     }
     {
-      name = "cookie_session___cookie_session_2.0.0_rc.1.tgz";
+      name = "cookie_session___cookie_session_1.4.0.tgz";
       path = fetchurl {
-        name = "cookie_session___cookie_session_2.0.0_rc.1.tgz";
-        url  = "https://registry.yarnpkg.com/cookie-session/-/cookie-session-2.0.0-rc.1.tgz";
-        sha1 = "66fa03f26e5873d681d70f14bff5e48a94c53d37";
+        name = "cookie_session___cookie_session_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/cookie-session/-/cookie-session-1.4.0.tgz";
+        sha1 = "c325aea685ceb9c8e4fd00b0313a46d547747380";
       };
     }
     {
@@ -2066,6 +2114,14 @@
       };
     }
     {
+      name = "core_util_is___core_util_is_1.0.3.tgz";
+      path = fetchurl {
+        name = "core_util_is___core_util_is_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz";
+        sha1 = "a6042d3634c2b27e9328f837b965fac83808db85";
+      };
+    }
+    {
       name = "cp_file___cp_file_6.2.0.tgz";
       path = fetchurl {
         name = "cp_file___cp_file_6.2.0.tgz";
@@ -2146,11 +2202,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";
-        sha1 = "5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10";
+        name = "cssom___cssom_0.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/cssom/-/cssom-0.5.0.tgz";
+        sha1 = "d254fa92cd8b6fbd83811b9fbaed34663cc17c36";
       };
     }
     {
@@ -2178,11 +2234,11 @@
       };
     }
     {
-      name = "data_urls___data_urls_2.0.0.tgz";
+      name = "data_urls___data_urls_3.0.1.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";
-        sha1 = "156485a72963a970f5d5821aaf642bef2bf2db9b";
+        name = "data_urls___data_urls_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/data-urls/-/data-urls-3.0.1.tgz";
+        sha1 = "597fc2ae30f8bc4dbcf731fcd1b1954353afc6f8";
       };
     }
     {
@@ -2194,11 +2250,11 @@
       };
     }
     {
-      name = "dayjs___dayjs_1.10.6.tgz";
+      name = "dayjs___dayjs_1.10.7.tgz";
       path = fetchurl {
-        name = "dayjs___dayjs_1.10.6.tgz";
-        url  = "https://registry.yarnpkg.com/dayjs/-/dayjs-1.10.6.tgz";
-        sha1 = "288b2aa82f2d8418a6c9d4df5898c0737ad02a63";
+        name = "dayjs___dayjs_1.10.7.tgz";
+        url  = "https://registry.yarnpkg.com/dayjs/-/dayjs-1.10.7.tgz";
+        sha1 = "2cf5f91add28116748440866a0a1d26f3a6ce468";
       };
     }
     {
@@ -2226,14 +2282,6 @@
       };
     }
     {
-      name = "debug___debug_3.2.6.tgz";
-      path = fetchurl {
-        name = "debug___debug_3.2.6.tgz";
-        url  = "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz";
-        sha1 = "e83d17de16d8a7efb7717edbe5fb10135eee629b";
-      };
-    }
-    {
       name = "debug___debug_4.3.2.tgz";
       path = fetchurl {
         name = "debug___debug_4.3.2.tgz";
@@ -2274,11 +2322,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 = "b369d6fb5dbc13eecf524f91b070feedc357cf34";
+        name = "deep_is___deep_is_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz";
+        sha1 = "a6f2dce612fadd2ef1f519b73551f17e85199831";
       };
     }
     {
@@ -2346,11 +2394,11 @@
       };
     }
     {
-      name = "denque___denque_1.5.0.tgz";
+      name = "denque___denque_1.5.1.tgz";
       path = fetchurl {
-        name = "denque___denque_1.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/denque/-/denque-1.5.0.tgz";
-        sha1 = "773de0686ff2d8ec2ff92914316a47b73b1c73de";
+        name = "denque___denque_1.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/denque/-/denque-1.5.1.tgz";
+        sha1 = "07f670e29c9a78f8faecb2566a1e2c11929c5cbf";
       };
     }
     {
@@ -2410,11 +2458,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";
-        sha1 = "fb44aefba793e1574b0af6aed2801d057529f304";
+        name = "domexception___domexception_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/domexception/-/domexception-4.0.0.tgz";
+        sha1 = "4ad1be56ccadc86fc76d033353999a8037d03673";
       };
     }
     {
@@ -2538,11 +2586,11 @@
       };
     }
     {
-      name = "estraverse___estraverse_5.2.0.tgz";
+      name = "estraverse___estraverse_5.3.0.tgz";
       path = fetchurl {
-        name = "estraverse___estraverse_5.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz";
-        sha1 = "307df42547e6cc7324d3cf03c155d5cdb8c53880";
+        name = "estraverse___estraverse_5.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz";
+        sha1 = "2eea5290702f26ab8fe5370370ff86c965d21123";
       };
     }
     {
@@ -2706,11 +2754,11 @@
       };
     }
     {
-      name = "extsprintf___extsprintf_1.4.0.tgz";
+      name = "extsprintf___extsprintf_1.4.1.tgz";
       path = fetchurl {
-        name = "extsprintf___extsprintf_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz";
-        sha1 = "e2689f8f356fad62cca65a3a91c5df5f9551692f";
+        name = "extsprintf___extsprintf_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz";
+        sha1 = "8d172c064867f235c0c84a596806d279bf4bcc07";
       };
     }
     {
@@ -2746,11 +2794,11 @@
       };
     }
     {
-      name = "fast_xml_parser___fast_xml_parser_3.19.0.tgz";
+      name = "fast_xml_parser___fast_xml_parser_3.21.1.tgz";
       path = fetchurl {
-        name = "fast_xml_parser___fast_xml_parser_3.19.0.tgz";
-        url  = "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-3.19.0.tgz";
-        sha1 = "cb637ec3f3999f51406dd8ff0e6fc4d83e520d01";
+        name = "fast_xml_parser___fast_xml_parser_3.21.1.tgz";
+        url  = "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-3.21.1.tgz";
+        sha1 = "152a1d51d445380f7046b304672dd55d15c9e736";
       };
     }
     {
@@ -2762,11 +2810,11 @@
       };
     }
     {
-      name = "fastparallel___fastparallel_2.4.0.tgz";
+      name = "fastparallel___fastparallel_2.4.1.tgz";
       path = fetchurl {
-        name = "fastparallel___fastparallel_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/fastparallel/-/fastparallel-2.4.0.tgz";
-        sha1 = "65fbec1a5e5902494be772cf5765cbaaece08688";
+        name = "fastparallel___fastparallel_2.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/fastparallel/-/fastparallel-2.4.1.tgz";
+        sha1 = "0d984a5813ffa67f30b4a5cb4cb8cbe61c7ee5a5";
       };
     }
     {
@@ -2882,6 +2930,14 @@
       };
     }
     {
+      name = "find_up___find_up_1.1.2.tgz";
+      path = fetchurl {
+        name = "find_up___find_up_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz";
+        sha1 = "6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f";
+      };
+    }
+    {
       name = "find_up___find_up_3.0.0.tgz";
       path = fetchurl {
         name = "find_up___find_up_3.0.0.tgz";
@@ -2922,11 +2978,11 @@
       };
     }
     {
-      name = "follow_redirects___follow_redirects_1.14.1.tgz";
+      name = "follow_redirects___follow_redirects_1.14.5.tgz";
       path = fetchurl {
-        name = "follow_redirects___follow_redirects_1.14.1.tgz";
-        url  = "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.1.tgz";
-        sha1 = "d9114ded0a1cfdd334e164e6662ad02bfd91ff43";
+        name = "follow_redirects___follow_redirects_1.14.5.tgz";
+        url  = "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.5.tgz";
+        sha1 = "f09a5848981d3c772b5392309778523f8d85c381";
       };
     }
     {
@@ -2970,14 +3026,6 @@
       };
     }
     {
-      name = "form_data___form_data_3.0.1.tgz";
-      path = fetchurl {
-        name = "form_data___form_data_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz";
-        sha1 = "ebd53791b78356a99af9a300d4282c4d5eb9755f";
-      };
-    }
-    {
       name = "form_data___form_data_4.0.0.tgz";
       path = fetchurl {
         name = "form_data___form_data_4.0.0.tgz";
@@ -3074,19 +3122,27 @@
       };
     }
     {
-      name = "gaxios___gaxios_4.3.0.tgz";
+      name = "gaxios___gaxios_4.3.2.tgz";
       path = fetchurl {
-        name = "gaxios___gaxios_4.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/gaxios/-/gaxios-4.3.0.tgz";
-        sha1 = "ad4814d89061f85b97ef52aed888c5dbec32f774";
+        name = "gaxios___gaxios_4.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/gaxios/-/gaxios-4.3.2.tgz";
+        sha1 = "845827c2dc25a0213c8ab4155c7a28910f5be83f";
       };
     }
     {
-      name = "gcp_metadata___gcp_metadata_4.3.0.tgz";
+      name = "gcp_metadata___gcp_metadata_4.3.1.tgz";
       path = fetchurl {
-        name = "gcp_metadata___gcp_metadata_4.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/gcp-metadata/-/gcp-metadata-4.3.0.tgz";
-        sha1 = "0423d06becdbfb9cbb8762eaacf14d5324997900";
+        name = "gcp_metadata___gcp_metadata_4.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/gcp-metadata/-/gcp-metadata-4.3.1.tgz";
+        sha1 = "fb205fe6a90fef2fd9c85e6ba06e5559ee1eefa9";
+      };
+    }
+    {
+      name = "get_caller_file___get_caller_file_1.0.3.tgz";
+      path = fetchurl {
+        name = "get_caller_file___get_caller_file_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz";
+        sha1 = "f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a";
       };
     }
     {
@@ -3114,11 +3170,11 @@
       };
     }
     {
-      name = "getobject___getobject_1.0.1.tgz";
+      name = "getobject___getobject_1.0.2.tgz";
       path = fetchurl {
-        name = "getobject___getobject_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/getobject/-/getobject-1.0.1.tgz";
-        sha1 = "17d86a05913c15d173a5bcf8662dc7c7ac5ce147";
+        name = "getobject___getobject_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/getobject/-/getobject-1.0.2.tgz";
+        sha1 = "25ec87a50370f6dcc3c6ba7ef43c4c16215c4c89";
       };
     }
     {
@@ -3162,11 +3218,11 @@
       };
     }
     {
-      name = "glob___glob_7.1.7.tgz";
+      name = "glob___glob_7.2.0.tgz";
       path = fetchurl {
-        name = "glob___glob_7.1.7.tgz";
-        url  = "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz";
-        sha1 = "3b193e9233f01d42d0b3f78294bbeeb418f94a90";
+        name = "glob___glob_7.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz";
+        sha1 = "d15535af7732e02e948f4c41628bd910293f6023";
       };
     }
     {
@@ -3178,6 +3234,14 @@
       };
     }
     {
+      name = "glob___glob_7.1.7.tgz";
+      path = fetchurl {
+        name = "glob___glob_7.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz";
+        sha1 = "3b193e9233f01d42d0b3f78294bbeeb418f94a90";
+      };
+    }
+    {
       name = "global_modules___global_modules_1.0.0.tgz";
       path = fetchurl {
         name = "global_modules___global_modules_1.0.0.tgz";
@@ -3210,19 +3274,19 @@
       };
     }
     {
-      name = "google_auth_library___google_auth_library_7.5.0.tgz";
+      name = "google_auth_library___google_auth_library_7.10.2.tgz";
       path = fetchurl {
-        name = "google_auth_library___google_auth_library_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/google-auth-library/-/google-auth-library-7.5.0.tgz";
-        sha1 = "6b0a623dfb4ee7a8d93a0d25455031d1baf86181";
+        name = "google_auth_library___google_auth_library_7.10.2.tgz";
+        url  = "https://registry.yarnpkg.com/google-auth-library/-/google-auth-library-7.10.2.tgz";
+        sha1 = "7e48176f50e725e1d65b6a838ec9e9464e6ba689";
       };
     }
     {
-      name = "google_p12_pem___google_p12_pem_3.1.1.tgz";
+      name = "google_p12_pem___google_p12_pem_3.1.2.tgz";
       path = fetchurl {
-        name = "google_p12_pem___google_p12_pem_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/google-p12-pem/-/google-p12-pem-3.1.1.tgz";
-        sha1 = "98fb717b722d12196a3e5b550c44517562269859";
+        name = "google_p12_pem___google_p12_pem_3.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/google-p12-pem/-/google-p12-pem-3.1.2.tgz";
+        sha1 = "c3d61c2da8e10843ff830fdb0d2059046238c1d4";
       };
     }
     {
@@ -3234,19 +3298,19 @@
       };
     }
     {
-      name = "googleapis_common___googleapis_common_5.0.4.tgz";
+      name = "googleapis_common___googleapis_common_5.0.5.tgz";
       path = fetchurl {
-        name = "googleapis_common___googleapis_common_5.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/googleapis-common/-/googleapis-common-5.0.4.tgz";
-        sha1 = "d47ba164dce40ff32f35319e56d1d67209ae25c3";
+        name = "googleapis_common___googleapis_common_5.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/googleapis-common/-/googleapis-common-5.0.5.tgz";
+        sha1 = "4c7160be1ed7e4cc8cdbcdb6eac8a4b3a61dd782";
       };
     }
     {
-      name = "googleapis___googleapis_83.0.0.tgz";
+      name = "googleapis___googleapis_91.0.0.tgz";
       path = fetchurl {
-        name = "googleapis___googleapis_83.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/googleapis/-/googleapis-83.0.0.tgz";
-        sha1 = "045399fe8403d8516add6aa90802dda604fcfe20";
+        name = "googleapis___googleapis_91.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/googleapis/-/googleapis-91.0.0.tgz";
+        sha1 = "c5e51ca568ed687f0694a082237c7b7b96a19b3b";
       };
     }
     {
@@ -3314,11 +3378,11 @@
       };
     }
     {
-      name = "gtoken___gtoken_5.3.0.tgz";
+      name = "gtoken___gtoken_5.3.1.tgz";
       path = fetchurl {
-        name = "gtoken___gtoken_5.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/gtoken/-/gtoken-5.3.0.tgz";
-        sha1 = "6536eb2880d9829f0b9d78f756795d4d9064b217";
+        name = "gtoken___gtoken_5.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/gtoken/-/gtoken-5.3.1.tgz";
+        sha1 = "c1c2598a826f2b5df7c6bb53d7be6cf6d50c3c78";
       };
     }
     {
@@ -3546,11 +3610,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";
-        sha1 = "42a6dc4fd33f00281176e8b23759ca4e4fa185f3";
+        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";
+        sha1 = "2cb1a8cf0db52414776e5b2a7a04d5dd98158de9";
       };
     }
     {
@@ -3586,19 +3650,19 @@
       };
     }
     {
-      name = "http_errors___http_errors_1.8.0.tgz";
+      name = "http_errors___http_errors_1.8.1.tgz";
       path = fetchurl {
-        name = "http_errors___http_errors_1.8.0.tgz";
-        url  = "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.0.tgz";
-        sha1 = "75d1bbe497e1044f51e4ee9e704a62f28d336507";
+        name = "http_errors___http_errors_1.8.1.tgz";
+        url  = "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.1.tgz";
+        sha1 = "7c3f28577cbc8a207388455dbd62295ed07bd68c";
       };
     }
     {
-      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";
-        sha1 = "8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a";
+        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";
+        sha1 = "5129800203520d434f142bc78ff3c170800f2b43";
       };
     }
     {
@@ -3730,6 +3794,14 @@
       };
     }
     {
+      name = "invert_kv___invert_kv_1.0.0.tgz";
+      path = fetchurl {
+        name = "invert_kv___invert_kv_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz";
+        sha1 = "104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6";
+      };
+    }
+    {
       name = "ipaddr.js___ipaddr.js_1.9.1.tgz";
       path = fetchurl {
         name = "ipaddr.js___ipaddr.js_1.9.1.tgz";
@@ -3794,11 +3866,11 @@
       };
     }
     {
-      name = "is_core_module___is_core_module_2.5.0.tgz";
+      name = "is_core_module___is_core_module_2.8.0.tgz";
       path = fetchurl {
-        name = "is_core_module___is_core_module_2.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.5.0.tgz";
-        sha1 = "f754843617c70bfd29b7bd87327400cda5c18491";
+        name = "is_core_module___is_core_module_2.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.0.tgz";
+        sha1 = "0321336c3d0925e497fd97f5d95cb114a5ccd548";
       };
     }
     {
@@ -3890,6 +3962,14 @@
       };
     }
     {
+      name = "is_fullwidth_code_point___is_fullwidth_code_point_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_fullwidth_code_point___is_fullwidth_code_point_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz";
+        sha1 = "ef9e31386f031a7f0d643af82fde50c457ef00cb";
+      };
+    }
+    {
       name = "is_fullwidth_code_point___is_fullwidth_code_point_2.0.0.tgz";
       path = fetchurl {
         name = "is_fullwidth_code_point___is_fullwidth_code_point_2.0.0.tgz";
@@ -3906,11 +3986,11 @@
       };
     }
     {
-      name = "is_glob___is_glob_4.0.1.tgz";
+      name = "is_glob___is_glob_4.0.3.tgz";
       path = fetchurl {
-        name = "is_glob___is_glob_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz";
-        sha1 = "7567dbe9f2f5e2467bc77ab83c4a29482407a5dc";
+        name = "is_glob___is_glob_4.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz";
+        sha1 = "64f61e42cbbb2eec2071a9dac0b28ba1e65d5084";
       };
     }
     {
@@ -4018,6 +4098,14 @@
       };
     }
     {
+      name = "is_utf8___is_utf8_0.2.1.tgz";
+      path = fetchurl {
+        name = "is_utf8___is_utf8_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz";
+        sha1 = "4b0da1442104d1b336340e80797e865cf39f7d72";
+      };
+    }
+    {
       name = "is_windows___is_windows_1.0.2.tgz";
       path = fetchurl {
         name = "is_windows___is_windows_1.0.2.tgz";
@@ -4194,11 +4282,11 @@
       };
     }
     {
-      name = "jsdom___jsdom_16.7.0.tgz";
+      name = "jsdom___jsdom_18.1.0.tgz";
       path = fetchurl {
-        name = "jsdom___jsdom_16.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz";
-        sha1 = "918ae71965424b197c819f8183a754e18977b710";
+        name = "jsdom___jsdom_18.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsdom/-/jsdom-18.1.0.tgz";
+        sha1 = "43e88a0e4d6d2aeeec0a18810c0934c02b2ae3e4";
       };
     }
     {
@@ -4402,11 +4490,19 @@
       };
     }
     {
-      name = "lazystream___lazystream_1.0.0.tgz";
+      name = "lazystream___lazystream_1.0.1.tgz";
       path = fetchurl {
-        name = "lazystream___lazystream_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.0.tgz";
-        sha1 = "f6995fe0f820392f61396be89462407bb77168e4";
+        name = "lazystream___lazystream_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.1.tgz";
+        sha1 = "494c831062f1f9408251ec44db1cba29242a2638";
+      };
+    }
+    {
+      name = "lcid___lcid_1.0.0.tgz";
+      path = fetchurl {
+        name = "lcid___lcid_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz";
+        sha1 = "308accafa0bc483a3867b4b6f2b9506251d1b835";
       };
     }
     {
@@ -4458,6 +4554,14 @@
       };
     }
     {
+      name = "load_json_file___load_json_file_1.1.0.tgz";
+      path = fetchurl {
+        name = "load_json_file___load_json_file_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz";
+        sha1 = "956905708d58b4bab4c2261b04f59f31c99374c0";
+      };
+    }
+    {
       name = "load_json_file___load_json_file_4.0.0.tgz";
       path = fetchurl {
         name = "load_json_file___load_json_file_4.0.0.tgz";
@@ -4474,11 +4578,11 @@
       };
     }
     {
-      name = "localforage___localforage_1.9.0.tgz";
+      name = "localforage___localforage_1.10.0.tgz";
       path = fetchurl {
-        name = "localforage___localforage_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/localforage/-/localforage-1.9.0.tgz";
-        sha1 = "f3e4d32a8300b362b4634cc4e066d9d00d2f09d1";
+        name = "localforage___localforage_1.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/localforage/-/localforage-1.10.0.tgz";
+        sha1 = "5c465dc5f62b2807c3a84c0c6a1b1b3212781dd4";
       };
     }
     {
@@ -4490,6 +4594,14 @@
       };
     }
     {
+      name = "lodash.assign___lodash.assign_4.2.0.tgz";
+      path = fetchurl {
+        name = "lodash.assign___lodash.assign_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz";
+        sha1 = "0d99f3ccd7a6d261d19bdaeb9245005d285808e7";
+      };
+    }
+    {
       name = "lodash.defaults___lodash.defaults_4.2.0.tgz";
       path = fetchurl {
         name = "lodash.defaults___lodash.defaults_4.2.0.tgz";
@@ -4690,11 +4802,11 @@
       };
     }
     {
-      name = "mariadb___mariadb_2.5.4.tgz";
+      name = "mariadb___mariadb_2.5.5.tgz";
       path = fetchurl {
-        name = "mariadb___mariadb_2.5.4.tgz";
-        url  = "https://registry.yarnpkg.com/mariadb/-/mariadb-2.5.4.tgz";
-        sha1 = "c66daa35e2768b8c714c758453531c06ae4927f4";
+        name = "mariadb___mariadb_2.5.5.tgz";
+        url  = "https://registry.yarnpkg.com/mariadb/-/mariadb-2.5.5.tgz";
+        sha1 = "a9aff9f1e57231a415a21254489439beb501c803";
       };
     }
     {
@@ -4794,19 +4906,19 @@
       };
     }
     {
-      name = "mime_db___mime_db_1.49.0.tgz";
+      name = "mime_db___mime_db_1.51.0.tgz";
       path = fetchurl {
-        name = "mime_db___mime_db_1.49.0.tgz";
-        url  = "https://registry.yarnpkg.com/mime-db/-/mime-db-1.49.0.tgz";
-        sha1 = "f3dfde60c99e9cf3bc9701d687778f537001cbed";
+        name = "mime_db___mime_db_1.51.0.tgz";
+        url  = "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz";
+        sha1 = "d9ff62451859b18342d960850dc3cfb77e63fb0c";
       };
     }
     {
-      name = "mime_types___mime_types_2.1.32.tgz";
+      name = "mime_types___mime_types_2.1.34.tgz";
       path = fetchurl {
-        name = "mime_types___mime_types_2.1.32.tgz";
-        url  = "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.32.tgz";
-        sha1 = "1d00e89e7de7fe02008db61001d9e02852670fd5";
+        name = "mime_types___mime_types_2.1.34.tgz";
+        url  = "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz";
+        sha1 = "5a712f9ec1503511a945803640fafe09d3793c24";
       };
     }
     {
@@ -4914,11 +5026,11 @@
       };
     }
     {
-      name = "moment_timezone___moment_timezone_0.5.33.tgz";
+      name = "moment_timezone___moment_timezone_0.5.34.tgz";
       path = fetchurl {
-        name = "moment_timezone___moment_timezone_0.5.33.tgz";
-        url  = "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.33.tgz";
-        sha1 = "b252fd6bb57f341c9b59a5ab61a8e51a73bbd22c";
+        name = "moment_timezone___moment_timezone_0.5.34.tgz";
+        url  = "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.34.tgz";
+        sha1 = "a75938f7476b88f155d3504a9343f7519d9a405c";
       };
     }
     {
@@ -4930,11 +5042,11 @@
       };
     }
     {
-      name = "mongodb_connection_string_url___mongodb_connection_string_url_1.1.0.tgz";
+      name = "mongodb_connection_string_url___mongodb_connection_string_url_1.1.2.tgz";
       path = fetchurl {
-        name = "mongodb_connection_string_url___mongodb_connection_string_url_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/mongodb-connection-string-url/-/mongodb-connection-string-url-1.1.0.tgz";
-        sha1 = "0bd769f16aa1767758c119c275ea22bb5110915f";
+        name = "mongodb_connection_string_url___mongodb_connection_string_url_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/mongodb-connection-string-url/-/mongodb-connection-string-url-1.1.2.tgz";
+        sha1 = "a115902fee402b9b24a80c16ced94818daedad91";
       };
     }
     {
@@ -4946,11 +5058,11 @@
       };
     }
     {
-      name = "mongodb___mongodb_3.6.11.tgz";
+      name = "mongodb___mongodb_3.7.3.tgz";
       path = fetchurl {
-        name = "mongodb___mongodb_3.6.11.tgz";
-        url  = "https://registry.yarnpkg.com/mongodb/-/mongodb-3.6.11.tgz";
-        sha1 = "8a59a0491a92b00a8c925f72ed9d9a5b054aebb2";
+        name = "mongodb___mongodb_3.7.3.tgz";
+        url  = "https://registry.yarnpkg.com/mongodb/-/mongodb-3.7.3.tgz";
+        sha1 = "b7949cfd0adc4cc7d32d3f2034214d4475f175a5";
       };
     }
     {
@@ -5074,14 +5186,6 @@
       };
     }
     {
-      name = "nedb___nedb_1.8.0.tgz";
-      path = fetchurl {
-        name = "nedb___nedb_1.8.0.tgz";
-        url  = "https://registry.yarnpkg.com/nedb/-/nedb-1.8.0.tgz";
-        sha1 = "0e3502cd82c004d5355a43c9e55577bd7bd91d88";
-      };
-    }
-    {
       name = "negotiator___negotiator_0.6.2.tgz";
       path = fetchurl {
         name = "negotiator___negotiator_0.6.2.tgz";
@@ -5130,11 +5234,11 @@
       };
     }
     {
-      name = "node_fetch___node_fetch_2.6.1.tgz";
+      name = "node_fetch___node_fetch_2.6.6.tgz";
       path = fetchurl {
-        name = "node_fetch___node_fetch_2.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz";
-        sha1 = "045bd323631f76ed2e2b55573394416b639a0052";
+        name = "node_fetch___node_fetch_2.6.6.tgz";
+        url  = "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.6.tgz";
+        sha1 = "1751a7c01834e8e1697758732e9efb6eeadfaf89";
       };
     }
     {
@@ -5170,11 +5274,11 @@
       };
     }
     {
-      name = "node_windows___node_windows_0.1.14.tgz";
+      name = "node_windows___node_windows_0.1.4.tgz";
       path = fetchurl {
-        name = "node_windows___node_windows_0.1.14.tgz";
-        url  = "https://registry.yarnpkg.com/node-windows/-/node-windows-0.1.14.tgz";
-        sha1 = "31bb0503da3bc637f2bfaa8b266640a2e92d891f";
+        name = "node_windows___node_windows_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/node-windows/-/node-windows-0.1.4.tgz";
+        sha1 = "23d5ee98b6b8290e0a3da9998ee638845fedcb1b";
       };
     }
     {
@@ -5186,11 +5290,11 @@
       };
     }
     {
-      name = "nodemailer___nodemailer_6.6.3.tgz";
+      name = "nodemailer___nodemailer_6.7.1.tgz";
       path = fetchurl {
-        name = "nodemailer___nodemailer_6.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/nodemailer/-/nodemailer-6.6.3.tgz";
-        sha1 = "31fb53dd4d8ae16fc088a65cb9ffa8d928a69b48";
+        name = "nodemailer___nodemailer_6.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/nodemailer/-/nodemailer-6.7.1.tgz";
+        sha1 = "09f72f8b375f7b259291757007bcd902c0174c6e";
       };
     }
     {
@@ -5242,6 +5346,14 @@
       };
     }
     {
+      name = "number_is_nan___number_is_nan_1.0.1.tgz";
+      path = fetchurl {
+        name = "number_is_nan___number_is_nan_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz";
+        sha1 = "097b602b53422a522c1afb8790318336941a011d";
+      };
+    }
+    {
       name = "nwsapi___nwsapi_2.2.0.tgz";
       path = fetchurl {
         name = "nwsapi___nwsapi_2.2.0.tgz";
@@ -5418,11 +5530,19 @@
       };
     }
     {
-      name = "optional_require___optional_require_1.1.4.tgz";
+      name = "optimist___optimist_0.3.7.tgz";
+      path = fetchurl {
+        name = "optimist___optimist_0.3.7.tgz";
+        url  = "https://registry.yarnpkg.com/optimist/-/optimist-0.3.7.tgz";
+        sha1 = "c90941ad59e4273328923074d2cf2e7cbc6ec0d9";
+      };
+    }
+    {
+      name = "optional_require___optional_require_1.1.8.tgz";
       path = fetchurl {
-        name = "optional_require___optional_require_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/optional-require/-/optional-require-1.1.4.tgz";
-        sha1 = "8af7da26b17da76abbf8a1c46e2e148a63813c0e";
+        name = "optional_require___optional_require_1.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/optional-require/-/optional-require-1.1.8.tgz";
+        sha1 = "16364d76261b75d964c482b2406cb824d8ec44b7";
       };
     }
     {
@@ -5442,6 +5562,14 @@
       };
     }
     {
+      name = "os_locale___os_locale_1.4.0.tgz";
+      path = fetchurl {
+        name = "os_locale___os_locale_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz";
+        sha1 = "20f9f17ae29ed345e8bde583b13d2009803c14d9";
+      };
+    }
+    {
       name = "os_tmpdir___os_tmpdir_1.0.2.tgz";
       path = fetchurl {
         name = "os_tmpdir___os_tmpdir_1.0.2.tgz";
@@ -5506,6 +5634,14 @@
       };
     }
     {
+      name = "packet_reader___packet_reader_1.0.0.tgz";
+      path = fetchurl {
+        name = "packet_reader___packet_reader_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/packet-reader/-/packet-reader-1.0.0.tgz";
+        sha1 = "9238e5480dedabacfe1fe3f2771063f164157d74";
+      };
+    }
+    {
       name = "param_case___param_case_2.1.1.tgz";
       path = fetchurl {
         name = "param_case___param_case_2.1.1.tgz";
@@ -5530,6 +5666,14 @@
       };
     }
     {
+      name = "parse_json___parse_json_2.2.0.tgz";
+      path = fetchurl {
+        name = "parse_json___parse_json_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz";
+        sha1 = "f480f40434ef80741f8469099f8dea18f55a4dc9";
+      };
+    }
+    {
       name = "parse_json___parse_json_4.0.0.tgz";
       path = fetchurl {
         name = "parse_json___parse_json_4.0.0.tgz";
@@ -5618,11 +5762,11 @@
       };
     }
     {
-      name = "passport_oauth2___passport_oauth2_1.6.0.tgz";
+      name = "passport_oauth2___passport_oauth2_1.6.1.tgz";
       path = fetchurl {
-        name = "passport_oauth2___passport_oauth2_1.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/passport-oauth2/-/passport-oauth2-1.6.0.tgz";
-        sha1 = "5f599735e0ea40ea3027643785f81a3a9b4feb50";
+        name = "passport_oauth2___passport_oauth2_1.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/passport-oauth2/-/passport-oauth2-1.6.1.tgz";
+        sha1 = "c5aee8f849ce8bd436c7f81d904a3cd1666f181b";
       };
     }
     {
@@ -5642,11 +5786,11 @@
       };
     }
     {
-      name = "passport_saml___passport_saml_3.1.1.tgz";
+      name = "passport_saml___passport_saml_3.2.0.tgz";
       path = fetchurl {
-        name = "passport_saml___passport_saml_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/passport-saml/-/passport-saml-3.1.1.tgz";
-        sha1 = "257470003366e06ce3c5738aa64a1209a0f4d7e7";
+        name = "passport_saml___passport_saml_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/passport-saml/-/passport-saml-3.2.0.tgz";
+        sha1 = "72ec8203df6dd872a205b8d5f578859a4e723e42";
       };
     }
     {
@@ -5666,11 +5810,19 @@
       };
     }
     {
-      name = "passport___passport_0.4.1.tgz";
+      name = "passport___passport_0.5.0.tgz";
       path = fetchurl {
-        name = "passport___passport_0.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/passport/-/passport-0.4.1.tgz";
-        sha1 = "941446a21cb92fc688d97a0861c38ce9f738f270";
+        name = "passport___passport_0.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/passport/-/passport-0.5.0.tgz";
+        sha1 = "7914aaa55844f9dce8c3aa28f7d6b73647ee0169";
+      };
+    }
+    {
+      name = "path_exists___path_exists_2.1.0.tgz";
+      path = fetchurl {
+        name = "path_exists___path_exists_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz";
+        sha1 = "0feb6c64f0fc518d9a754dd5efb62c7022761f4b";
       };
     }
     {
@@ -5730,6 +5882,14 @@
       };
     }
     {
+      name = "path_type___path_type_1.1.0.tgz";
+      path = fetchurl {
+        name = "path_type___path_type_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz";
+        sha1 = "59c44f7ee491da704da415da5a4070ba4f8fe441";
+      };
+    }
+    {
       name = "path_type___path_type_3.0.0.tgz";
       path = fetchurl {
         name = "path_type___path_type_3.0.0.tgz";
@@ -5762,6 +5922,70 @@
       };
     }
     {
+      name = "pg_connection_string___pg_connection_string_2.5.0.tgz";
+      path = fetchurl {
+        name = "pg_connection_string___pg_connection_string_2.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.5.0.tgz";
+        sha1 = "538cadd0f7e603fc09a12590f3b8a452c2c0cf34";
+      };
+    }
+    {
+      name = "pg_int8___pg_int8_1.0.1.tgz";
+      path = fetchurl {
+        name = "pg_int8___pg_int8_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz";
+        sha1 = "943bd463bf5b71b4170115f80f8efc9a0c0eb78c";
+      };
+    }
+    {
+      name = "pg_pool___pg_pool_3.4.1.tgz";
+      path = fetchurl {
+        name = "pg_pool___pg_pool_3.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.4.1.tgz";
+        sha1 = "0e71ce2c67b442a5e862a9c182172c37eda71e9c";
+      };
+    }
+    {
+      name = "pg_protocol___pg_protocol_1.5.0.tgz";
+      path = fetchurl {
+        name = "pg_protocol___pg_protocol_1.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.5.0.tgz";
+        sha1 = "b5dd452257314565e2d54ab3c132adc46565a6a0";
+      };
+    }
+    {
+      name = "pg_types___pg_types_2.2.0.tgz";
+      path = fetchurl {
+        name = "pg_types___pg_types_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/pg-types/-/pg-types-2.2.0.tgz";
+        sha1 = "2d0250d636454f7cfa3b6ae0382fdfa8063254a3";
+      };
+    }
+    {
+      name = "pg___pg_8.7.1.tgz";
+      path = fetchurl {
+        name = "pg___pg_8.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/pg/-/pg-8.7.1.tgz";
+        sha1 = "9ea9d1ec225980c36f94e181d009ab9f4ce4c471";
+      };
+    }
+    {
+      name = "pgpass___pgpass_1.0.4.tgz";
+      path = fetchurl {
+        name = "pgpass___pgpass_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/pgpass/-/pgpass-1.0.4.tgz";
+        sha1 = "85eb93a83800b20f8057a2b029bf05abaf94ea9c";
+      };
+    }
+    {
+      name = "pgtools___pgtools_0.3.2.tgz";
+      path = fetchurl {
+        name = "pgtools___pgtools_0.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/pgtools/-/pgtools-0.3.2.tgz";
+        sha1 = "df11d54057c889e27ba891664efda69de1b7a0fe";
+      };
+    }
+    {
       name = "picomatch___picomatch_2.3.0.tgz";
       path = fetchurl {
         name = "picomatch___picomatch_2.3.0.tgz";
@@ -5770,6 +5994,14 @@
       };
     }
     {
+      name = "pify___pify_2.3.0.tgz";
+      path = fetchurl {
+        name = "pify___pify_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz";
+        sha1 = "ed141a6ac043a849ea588498e7dca8b15330e90c";
+      };
+    }
+    {
       name = "pify___pify_3.0.0.tgz";
       path = fetchurl {
         name = "pify___pify_3.0.0.tgz";
@@ -5786,6 +6018,22 @@
       };
     }
     {
+      name = "pinkie_promise___pinkie_promise_2.0.1.tgz";
+      path = fetchurl {
+        name = "pinkie_promise___pinkie_promise_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz";
+        sha1 = "2135d6dfa7a358c069ac9b178776288228450ffa";
+      };
+    }
+    {
+      name = "pinkie___pinkie_2.0.4.tgz";
+      path = fetchurl {
+        name = "pinkie___pinkie_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz";
+        sha1 = "72556b80cfa0d48a974e80e77248e80ed4f7f870";
+      };
+    }
+    {
       name = "pkg_dir___pkg_dir_3.0.0.tgz";
       path = fetchurl {
         name = "pkg_dir___pkg_dir_3.0.0.tgz";
@@ -5810,11 +6058,11 @@
       };
     }
     {
-      name = "plivo___plivo_4.20.1.tgz";
+      name = "plivo___plivo_4.23.1.tgz";
       path = fetchurl {
-        name = "plivo___plivo_4.20.1.tgz";
-        url  = "https://registry.yarnpkg.com/plivo/-/plivo-4.20.1.tgz";
-        sha1 = "032366930f930debab6497b2def2ab07e46361dc";
+        name = "plivo___plivo_4.23.1.tgz";
+        url  = "https://registry.yarnpkg.com/plivo/-/plivo-4.23.1.tgz";
+        sha1 = "bbc680db39a2c539288ae317fcb19dcdf00edcac";
       };
     }
     {
@@ -5834,6 +6082,38 @@
       };
     }
     {
+      name = "postgres_array___postgres_array_2.0.0.tgz";
+      path = fetchurl {
+        name = "postgres_array___postgres_array_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz";
+        sha1 = "48f8fce054fbc69671999329b8834b772652d82e";
+      };
+    }
+    {
+      name = "postgres_bytea___postgres_bytea_1.0.0.tgz";
+      path = fetchurl {
+        name = "postgres_bytea___postgres_bytea_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/postgres-bytea/-/postgres-bytea-1.0.0.tgz";
+        sha1 = "027b533c0aa890e26d172d47cf9ccecc521acd35";
+      };
+    }
+    {
+      name = "postgres_date___postgres_date_1.0.7.tgz";
+      path = fetchurl {
+        name = "postgres_date___postgres_date_1.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/postgres-date/-/postgres-date-1.0.7.tgz";
+        sha1 = "51bc086006005e5061c591cee727f2531bf641a8";
+      };
+    }
+    {
+      name = "postgres_interval___postgres_interval_1.2.0.tgz";
+      path = fetchurl {
+        name = "postgres_interval___postgres_interval_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/postgres-interval/-/postgres-interval-1.2.0.tgz";
+        sha1 = "b460c82cb1587507788819a06aa0fffdb3544695";
+      };
+    }
+    {
       name = "precond___precond_0.2.3.tgz";
       path = fetchurl {
         name = "precond___precond_0.2.3.tgz";
@@ -6058,6 +6338,14 @@
       };
     }
     {
+      name = "read_pkg_up___read_pkg_up_1.0.1.tgz";
+      path = fetchurl {
+        name = "read_pkg_up___read_pkg_up_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz";
+        sha1 = "9d63c13276c065918d57f002a57f40a1b643fb02";
+      };
+    }
+    {
       name = "read_pkg_up___read_pkg_up_4.0.0.tgz";
       path = fetchurl {
         name = "read_pkg_up___read_pkg_up_4.0.0.tgz";
@@ -6066,6 +6354,14 @@
       };
     }
     {
+      name = "read_pkg___read_pkg_1.1.0.tgz";
+      path = fetchurl {
+        name = "read_pkg___read_pkg_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz";
+        sha1 = "f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28";
+      };
+    }
+    {
       name = "read_pkg___read_pkg_3.0.0.tgz";
       path = fetchurl {
         name = "read_pkg___read_pkg_3.0.0.tgz";
@@ -6322,6 +6618,14 @@
       };
     }
     {
+      name = "require_main_filename___require_main_filename_1.0.1.tgz";
+      path = fetchurl {
+        name = "require_main_filename___require_main_filename_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz";
+        sha1 = "97f717b69d48784f5f526a6c5aa8ffdda055a4d1";
+      };
+    }
+    {
       name = "require_main_filename___require_main_filename_2.0.0.tgz";
       path = fetchurl {
         name = "require_main_filename___require_main_filename_2.0.0.tgz";
@@ -6458,14 +6762,6 @@
       };
     }
     {
-      name = "safe_buffer___safe_buffer_5.2.0.tgz";
-      path = fetchurl {
-        name = "safe_buffer___safe_buffer_5.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz";
-        sha1 = "b74daec49b1148f88c64b68d49b1e815c1f2f519";
-      };
-    }
-    {
       name = "safe_buffer___safe_buffer_5.2.1.tgz";
       path = fetchurl {
         name = "safe_buffer___safe_buffer_5.2.1.tgz";
@@ -6666,11 +6962,11 @@
       };
     }
     {
-      name = "signal_exit___signal_exit_3.0.3.tgz";
+      name = "signal_exit___signal_exit_3.0.5.tgz";
       path = fetchurl {
-        name = "signal_exit___signal_exit_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz";
-        sha1 = "a1410c2edd8f077b08b4e253c8eacfcaf057461c";
+        name = "signal_exit___signal_exit_3.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.5.tgz";
+        sha1 = "9e3e8cc0c75a99472b44321033a7702e7738252f";
       };
     }
     {
@@ -6802,11 +7098,11 @@
       };
     }
     {
-      name = "spdx_license_ids___spdx_license_ids_3.0.9.tgz";
+      name = "spdx_license_ids___spdx_license_ids_3.0.11.tgz";
       path = fetchurl {
-        name = "spdx_license_ids___spdx_license_ids_3.0.9.tgz";
-        url  = "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz";
-        sha1 = "8a595135def9592bda69709474f1cbeea7c2467f";
+        name = "spdx_license_ids___spdx_license_ids_3.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz";
+        sha1 = "50c0d8c40a14ec1bf449bae69a0ea4685a9d9f95";
       };
     }
     {
@@ -6818,6 +7114,14 @@
       };
     }
     {
+      name = "split2___split2_3.2.2.tgz";
+      path = fetchurl {
+        name = "split2___split2_3.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz";
+        sha1 = "bf2cf2a37d838312c249c89206fd7a17dd12365f";
+      };
+    }
+    {
       name = "sprintf_js___sprintf_js_1.1.2.tgz";
       path = fetchurl {
         name = "sprintf_js___sprintf_js_1.1.2.tgz";
@@ -6842,11 +7146,11 @@
       };
     }
     {
-      name = "ssh2___ssh2_1.2.0.tgz";
+      name = "ssh2___ssh2_1.5.0.tgz";
       path = fetchurl {
-        name = "ssh2___ssh2_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/ssh2/-/ssh2-1.2.0.tgz";
-        sha1 = "177a46bb12b7ef2b7bce28bdcbd7eae3cbc50045";
+        name = "ssh2___ssh2_1.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/ssh2/-/ssh2-1.5.0.tgz";
+        sha1 = "4dc559ba98a1cbb420e8d42998dfe35d0eda92bc";
       };
     }
     {
@@ -6930,6 +7234,14 @@
       };
     }
     {
+      name = "string_width___string_width_1.0.2.tgz";
+      path = fetchurl {
+        name = "string_width___string_width_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz";
+        sha1 = "118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3";
+      };
+    }
+    {
       name = "string_width___string_width_3.1.0.tgz";
       path = fetchurl {
         name = "string_width___string_width_3.1.0.tgz";
@@ -6970,6 +7282,14 @@
       };
     }
     {
+      name = "strip_bom___strip_bom_2.0.0.tgz";
+      path = fetchurl {
+        name = "strip_bom___strip_bom_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz";
+        sha1 = "6219a85616520491f35788bdbf1447a99c7e6b0e";
+      };
+    }
+    {
       name = "strip_bom___strip_bom_3.0.0.tgz";
       path = fetchurl {
         name = "strip_bom___strip_bom_3.0.0.tgz";
@@ -6986,6 +7306,14 @@
       };
     }
     {
+      name = "strnum___strnum_1.0.4.tgz";
+      path = fetchurl {
+        name = "strnum___strnum_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/strnum/-/strnum-1.0.4.tgz";
+        sha1 = "e97e36a7d6ba9f93d0d6b496b2ed0678d422832b";
+      };
+    }
+    {
       name = "supports_color___supports_color_2.0.0.tgz";
       path = fetchurl {
         name = "supports_color___supports_color_2.0.0.tgz";
@@ -7186,6 +7514,14 @@
       };
     }
     {
+      name = "toidentifier___toidentifier_1.0.1.tgz";
+      path = fetchurl {
+        name = "toidentifier___toidentifier_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz";
+        sha1 = "3be34321a88a820ed1bd80dfaa33e479fbb8dd35";
+      };
+    }
+    {
       name = "tough_cookie___tough_cookie_2.5.0.tgz";
       path = fetchurl {
         name = "tough_cookie___tough_cookie_2.5.0.tgz";
@@ -7218,6 +7554,22 @@
       };
     }
     {
+      name = "tr46___tr46_3.0.0.tgz";
+      path = fetchurl {
+        name = "tr46___tr46_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz";
+        sha1 = "555c4e297a950617e8eeddef633c87d4d9d6cbf9";
+      };
+    }
+    {
+      name = "tr46___tr46_0.0.3.tgz";
+      path = fetchurl {
+        name = "tr46___tr46_0.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz";
+        sha1 = "8184fd347dac9cdc185992f3a6622e14b9d9ab6a";
+      };
+    }
+    {
       name = "trim_right___trim_right_1.0.1.tgz";
       path = fetchurl {
         name = "trim_right___trim_right_1.0.1.tgz";
@@ -7258,11 +7610,11 @@
       };
     }
     {
-      name = "twilio___twilio_3.66.1.tgz";
+      name = "twilio___twilio_3.71.1.tgz";
       path = fetchurl {
-        name = "twilio___twilio_3.66.1.tgz";
-        url  = "https://registry.yarnpkg.com/twilio/-/twilio-3.66.1.tgz";
-        sha1 = "8435441ca45b0c7cb3761c4ba3011ca32e75ba69";
+        name = "twilio___twilio_3.71.1.tgz";
+        url  = "https://registry.yarnpkg.com/twilio/-/twilio-3.71.1.tgz";
+        sha1 = "15bbb4b51c75d91cc07a8149378c4af330e543cc";
       };
     }
     {
@@ -7298,11 +7650,11 @@
       };
     }
     {
-      name = "uglify_js___uglify_js_3.14.1.tgz";
+      name = "uglify_js___uglify_js_3.14.3.tgz";
       path = fetchurl {
-        name = "uglify_js___uglify_js_3.14.1.tgz";
-        url  = "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.14.1.tgz";
-        sha1 = "e2cb9fe34db9cb4cf7e35d1d26dfea28e09a7d06";
+        name = "uglify_js___uglify_js_3.14.3.tgz";
+        url  = "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.14.3.tgz";
+        sha1 = "c0f25dfea1e8e5323eccf59610be08b6043c15cf";
       };
     }
     {
@@ -7322,11 +7674,11 @@
       };
     }
     {
-      name = "uid2___uid2_0.0.3.tgz";
+      name = "uid2___uid2_0.0.4.tgz";
       path = fetchurl {
-        name = "uid2___uid2_0.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/uid2/-/uid2-0.0.3.tgz";
-        sha1 = "483126e11774df2f71b8b639dcd799c376162b82";
+        name = "uid2___uid2_0.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/uid2/-/uid2-0.0.4.tgz";
+        sha1 = "033f3b1d5d32505f5ce5f888b9f3b667123c0a44";
       };
     }
     {
@@ -7346,11 +7698,11 @@
       };
     }
     {
-      name = "underscore___underscore_1.4.4.tgz";
+      name = "underscore___underscore_1.13.1.tgz";
       path = fetchurl {
-        name = "underscore___underscore_1.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/underscore/-/underscore-1.4.4.tgz";
-        sha1 = "61a6a32010622afa07963bf325203cf12239d604";
+        name = "underscore___underscore_1.13.1.tgz";
+        url  = "https://registry.yarnpkg.com/underscore/-/underscore-1.13.1.tgz";
+        sha1 = "0c1c6bd2df54b6b69f2314066d65b6cde6fcf9d1";
       };
     }
     {
@@ -7570,11 +7922,11 @@
       };
     }
     {
-      name = "vasync___vasync_2.2.0.tgz";
+      name = "vasync___vasync_2.2.1.tgz";
       path = fetchurl {
-        name = "vasync___vasync_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/vasync/-/vasync-2.2.0.tgz";
-        sha1 = "cfde751860a15822db3b132bc59b116a4adaf01b";
+        name = "vasync___vasync_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/vasync/-/vasync-2.2.1.tgz";
+        sha1 = "d881379ff3685e4affa8e775cf0fd369262a201b";
       };
     }
     {
@@ -7586,6 +7938,14 @@
       };
     }
     {
+      name = "verror___verror_1.10.1.tgz";
+      path = fetchurl {
+        name = "verror___verror_1.10.1.tgz";
+        url  = "https://registry.yarnpkg.com/verror/-/verror-1.10.1.tgz";
+        sha1 = "4bf09eeccf4563b109ed4b3d458380c972b0cdeb";
+      };
+    }
+    {
       name = "w3c_hr_time___w3c_hr_time_1.0.2.tgz";
       path = fetchurl {
         name = "w3c_hr_time___w3c_hr_time_1.0.2.tgz";
@@ -7594,11 +7954,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";
-        sha1 = "3e7104a05b75146cc60f564380b7f683acf1020a";
+        name = "w3c_xmlserializer___w3c_xmlserializer_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-3.0.0.tgz";
+        sha1 = "06cdc3eefb7e4d0b20a560a5a3aeb0d2d9a65923";
       };
     }
     {
@@ -7634,19 +7994,19 @@
       };
     }
     {
-      name = "webdav___webdav_4.6.0.tgz";
+      name = "webdav___webdav_4.7.0.tgz";
       path = fetchurl {
-        name = "webdav___webdav_4.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/webdav/-/webdav-4.6.0.tgz";
-        sha1 = "b12d3631562ed4a7d665dd1757349682dfc8f441";
+        name = "webdav___webdav_4.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/webdav/-/webdav-4.7.0.tgz";
+        sha1 = "3964c72c1d5dc9854c0031b43e464f260f22476e";
       };
     }
     {
-      name = "webidl_conversions___webidl_conversions_5.0.0.tgz";
+      name = "webidl_conversions___webidl_conversions_3.0.1.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";
-        sha1 = "ae59c8a00b121543a2acc65c0434f57b0fc11aff";
+        name = "webidl_conversions___webidl_conversions_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz";
+        sha1 = "24534275e2a7bc6be7bc86611cc16ae0a5654871";
       };
     }
     {
@@ -7658,19 +8018,43 @@
       };
     }
     {
-      name = "whatwg_encoding___whatwg_encoding_1.0.5.tgz";
+      name = "webidl_conversions___webidl_conversions_7.0.0.tgz";
+      path = fetchurl {
+        name = "webidl_conversions___webidl_conversions_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz";
+        sha1 = "256b4e1882be7debbf01d05f0aa2039778ea080a";
+      };
+    }
+    {
+      name = "whatwg_encoding___whatwg_encoding_2.0.0.tgz";
+      path = fetchurl {
+        name = "whatwg_encoding___whatwg_encoding_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz";
+        sha1 = "e7635f597fd87020858626805a2729fa7698ac53";
+      };
+    }
+    {
+      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";
+        sha1 = "5fa1a7623867ff1af6ca3dc72ad6b8a4208beba7";
+      };
+    }
+    {
+      name = "whatwg_url___whatwg_url_10.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";
-        sha1 = "5abacf777c32166a51d085d6b4f3e7d27113ddb0";
+        name = "whatwg_url___whatwg_url_10.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-10.0.0.tgz";
+        sha1 = "37264f720b575b4a311bd4094ed8c760caaa05da";
       };
     }
     {
-      name = "whatwg_mimetype___whatwg_mimetype_2.3.0.tgz";
+      name = "whatwg_url___whatwg_url_5.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";
-        sha1 = "3d4b1e0312d2079879f826aff18dbeeca5960fbf";
+        name = "whatwg_url___whatwg_url_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz";
+        sha1 = "966454e8765462e37644d3626f6742ce8b70965d";
       };
     }
     {
@@ -7682,6 +8066,14 @@
       };
     }
     {
+      name = "which_module___which_module_1.0.0.tgz";
+      path = fetchurl {
+        name = "which_module___which_module_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz";
+        sha1 = "bba63ca861948994ff307736089e3b96026c2a4f";
+      };
+    }
+    {
       name = "which_module___which_module_2.0.0.tgz";
       path = fetchurl {
         name = "which_module___which_module_2.0.0.tgz";
@@ -7722,6 +8114,14 @@
       };
     }
     {
+      name = "window_size___window_size_0.2.0.tgz";
+      path = fetchurl {
+        name = "window_size___window_size_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz";
+        sha1 = "b4315bb4214a3d7058ebeee892e13fa24d98b075";
+      };
+    }
+    {
       name = "word_wrap___word_wrap_1.2.3.tgz";
       path = fetchurl {
         name = "word_wrap___word_wrap_1.2.3.tgz";
@@ -7770,6 +8170,14 @@
       };
     }
     {
+      name = "wrap_ansi___wrap_ansi_2.1.0.tgz";
+      path = fetchurl {
+        name = "wrap_ansi___wrap_ansi_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz";
+        sha1 = "d8fc3d284dd05794fe84973caecdd1cf824fdd85";
+      };
+    }
+    {
       name = "wrap_ansi___wrap_ansi_5.1.0.tgz";
       path = fetchurl {
         name = "wrap_ansi___wrap_ansi_5.1.0.tgz";
@@ -7802,51 +8210,51 @@
       };
     }
     {
-      name = "ws___ws_7.5.3.tgz";
+      name = "ws___ws_7.5.5.tgz";
       path = fetchurl {
-        name = "ws___ws_7.5.3.tgz";
-        url  = "https://registry.yarnpkg.com/ws/-/ws-7.5.3.tgz";
-        sha1 = "160835b63c7d97bfab418fc1b8a9fced2ac01a74";
+        name = "ws___ws_7.5.5.tgz";
+        url  = "https://registry.yarnpkg.com/ws/-/ws-7.5.5.tgz";
+        sha1 = "8b4bc4af518cfabd0473ae4f99144287b33eb881";
       };
     }
     {
-      name = "xml_crypto___xml_crypto_2.1.2.tgz";
+      name = "ws___ws_8.2.3.tgz";
       path = fetchurl {
-        name = "xml_crypto___xml_crypto_2.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/xml-crypto/-/xml-crypto-2.1.2.tgz";
-        sha1 = "501506d42e466f6cd908c5a03182217231b4e4b8";
+        name = "ws___ws_8.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/ws/-/ws-8.2.3.tgz";
+        sha1 = "63a56456db1b04367d0b721a0b80cae6d8becbba";
       };
     }
     {
-      name = "xml_encryption___xml_encryption_1.2.4.tgz";
+      name = "xml_crypto___xml_crypto_2.1.3.tgz";
       path = fetchurl {
-        name = "xml_encryption___xml_encryption_1.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/xml-encryption/-/xml-encryption-1.2.4.tgz";
-        sha1 = "767d13f9ff2f979ff5657b93bd72aa729d34b66c";
+        name = "xml_crypto___xml_crypto_2.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/xml-crypto/-/xml-crypto-2.1.3.tgz";
+        sha1 = "6a7272b610ea3e4ea7f13e9e4876f1b20cbc32c8";
       };
     }
     {
-      name = "xml_name_validator___xml_name_validator_3.0.0.tgz";
+      name = "xml_encryption___xml_encryption_1.3.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";
-        sha1 = "6ae73e06de4d8c6e47f9fb181f78d648ad457c6a";
+        name = "xml_encryption___xml_encryption_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/xml-encryption/-/xml-encryption-1.3.0.tgz";
+        sha1 = "4cad44a59bf8bdec76d7865ce0b89e13c09962f4";
       };
     }
     {
-      name = "xml2js___xml2js_0.4.23.tgz";
+      name = "xml_name_validator___xml_name_validator_4.0.0.tgz";
       path = fetchurl {
-        name = "xml2js___xml2js_0.4.23.tgz";
-        url  = "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz";
-        sha1 = "a0c69516752421eb2ac758ee4d4ccf58843eac66";
+        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";
+        sha1 = "79a006e2e63149a8600f15430f0a4725d1524835";
       };
     }
     {
-      name = "xml___xml_0.0.12.tgz";
+      name = "xml2js___xml2js_0.4.23.tgz";
       path = fetchurl {
-        name = "xml___xml_0.0.12.tgz";
-        url  = "https://registry.yarnpkg.com/xml/-/xml-0.0.12.tgz";
-        sha1 = "f08b347109912be00285785f46f15ad8e50a5f67";
+        name = "xml2js___xml2js_0.4.23.tgz";
+        url  = "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz";
+        sha1 = "a0c69516752421eb2ac758ee4d4ccf58843eac66";
       };
     }
     {
@@ -7898,22 +8306,6 @@
       };
     }
     {
-      name = "xmldom___xmldom_0.5.0.tgz";
-      path = fetchurl {
-        name = "xmldom___xmldom_0.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/xmldom/-/xmldom-0.5.0.tgz";
-        sha1 = "193cb96b84aa3486127ea6272c4596354cb4962e";
-      };
-    }
-    {
-      name = "xmldom___xmldom_0.6.0.tgz";
-      path = fetchurl {
-        name = "xmldom___xmldom_0.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/xmldom/-/xmldom-0.6.0.tgz";
-        sha1 = "43a96ecb8beece991cef382c08397d82d4d0c46f";
-      };
-    }
-    {
       name = "xpath___xpath_0.0.32.tgz";
       path = fetchurl {
         name = "xpath___xpath_0.0.32.tgz";
@@ -7938,6 +8330,14 @@
       };
     }
     {
+      name = "y18n___y18n_3.2.2.tgz";
+      path = fetchurl {
+        name = "y18n___y18n_3.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz";
+        sha1 = "85c901bd6470ce71fc4bb723ad209b70f7f28696";
+      };
+    }
+    {
       name = "y18n___y18n_4.0.3.tgz";
       path = fetchurl {
         name = "y18n___y18n_4.0.3.tgz";
@@ -7970,6 +8370,14 @@
       };
     }
     {
+      name = "yargs_parser___yargs_parser_3.2.0.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-3.2.0.tgz";
+        sha1 = "5081355d19d9d0c8c5d81ada908cb4e6d186664f";
+      };
+    }
+    {
       name = "yargs___yargs_13.3.2.tgz";
       path = fetchurl {
         name = "yargs___yargs_13.3.2.tgz";
@@ -7978,6 +8386,14 @@
       };
     }
     {
+      name = "yargs___yargs_5.0.0.tgz";
+      path = fetchurl {
+        name = "yargs___yargs_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-5.0.0.tgz";
+        sha1 = "3355144977d05757dbb86d6e38ec056123b3a66e";
+      };
+    }
+    {
       name = "yargs___yargs_3.10.0.tgz";
       path = fetchurl {
         name = "yargs___yargs_3.10.0.tgz";
diff --git a/pkgs/tools/archivers/pax/default.nix b/pkgs/tools/archivers/pax/default.nix
index d554ea4dade37..cfba3754c8196 100644
--- a/pkgs/tools/archivers/pax/default.nix
+++ b/pkgs/tools/archivers/pax/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchurl, utmp }:
 
 stdenv.mkDerivation rec {
   pname = "pax";
@@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "1p18nxijh323f4i1s2pg7pcr0557xljl5avv8ll5s9nfr34r5j0w";
   };
 
+  buildInputs = lib.optional stdenv.isDarwin utmp;
+
   buildPhase = ''
     sh Build.sh -r -tpax
   '';
diff --git a/pkgs/tools/audio/botamusique/default.nix b/pkgs/tools/audio/botamusique/default.nix
index d13bbd13c9220..a1c78768f6abe 100644
--- a/pkgs/tools/audio/botamusique/default.nix
+++ b/pkgs/tools/audio/botamusique/default.nix
@@ -17,7 +17,7 @@
 let
   nodejs = pkgs.nodejs-12_x;
   nodeEnv = import ../../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/tools/compression/ouch/default.nix b/pkgs/tools/compression/ouch/default.nix
index c9ffaef4b76c9..3051c705c5fe6 100644
--- a/pkgs/tools/compression/ouch/default.nix
+++ b/pkgs/tools/compression/ouch/default.nix
@@ -27,9 +27,7 @@ rustPlatform.buildRustPackage rec {
 
   buildInputs = [ bzip2 xz zlib zstd ];
 
-  cargoBuildFlags = [ "--features" "zstd/pkg-config" ];
-
-  cargoTestFlags = cargoBuildFlags;
+  buildFeatures = [ "zstd/pkg-config" ];
 
   postInstall = ''
     help2man $out/bin/ouch > ouch.1
diff --git a/pkgs/tools/filesystems/kio-fuse/default.nix b/pkgs/tools/filesystems/kio-fuse/default.nix
new file mode 100644
index 0000000000000..a68165956eb31
--- /dev/null
+++ b/pkgs/tools/filesystems/kio-fuse/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, mkDerivation
+, fetchgit
+, cmake
+, extra-cmake-modules
+, kio
+, fuse3
+}:
+
+mkDerivation rec {
+  pname = "kio-fuse";
+  version = "5.0.1";
+
+  src = fetchgit {
+    url = "https://invent.kde.org/system/kio-fuse.git";
+    sha256 = "sha256-LSFbFCaEPkQTk1Rg9xpueBOQpkbr/tgYxLD31F6i/qE=";
+    rev = "v${version}";
+  };
+
+  nativeBuildInputs = [ cmake extra-cmake-modules ];
+
+  buildInputs = [ kio fuse3 ];
+
+  meta = with lib; {
+    description = "FUSE Interface for KIO";
+    homepage = "https://invent.kde.org/system/kio-fuse";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ _1000teslas ];
+  };
+}
diff --git a/pkgs/tools/graphics/ldgallery/viewer/node-composition.nix b/pkgs/tools/graphics/ldgallery/viewer/node-composition.nix
index aaf54a05c8843..02fdb925fb1b0 100644
--- a/pkgs/tools/graphics/ldgallery/viewer/node-composition.nix
+++ b/pkgs/tools/graphics/ldgallery/viewer/node-composition.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/tools/graphics/svgcleaner/Cargo.lock b/pkgs/tools/graphics/svgcleaner/Cargo.lock
deleted file mode 100644
index 8daf4c4f83b5a..0000000000000
--- a/pkgs/tools/graphics/svgcleaner/Cargo.lock
+++ /dev/null
@@ -1,256 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "autocfg"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
-
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[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",
-]
-
-[[package]]
-name = "clap"
-version = "2.33.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
-dependencies = [
- "bitflags",
- "textwrap",
- "unicode-width",
-]
-
-[[package]]
-name = "error-chain"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff511d5dc435d703f4971bc399647c9bc38e20cb41452e3b9feb4765419ed3f3"
-
-[[package]]
-name = "fern"
-version = "0.5.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e69ab0d5aca163e388c3a49d284fed6c3d0810700e77c5ae2756a50ec1a4daaa"
-dependencies = [
- "chrono",
- "log",
-]
-
-[[package]]
-name = "float-cmp"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2be876712b52d3970d361df27210574630d8d44d6461f0b55745d56e88ac10b0"
-dependencies = [
- "num",
-]
-
-[[package]]
-name = "libc"
-version = "0.2.103"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8f7255a17a627354f321ef0055d63b898c6fb27eff628af4d1b66b7331edf6"
-
-[[package]]
-name = "log"
-version = "0.4.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "num"
-version = "0.1.42"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4703ad64153382334aa8db57c637364c322d3372e097840c72000dabdcf6156e"
-dependencies = [
- "num-integer",
- "num-iter",
- "num-traits",
-]
-
-[[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-iter"
-version = "0.1.42"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59"
-dependencies = [
- "autocfg",
- "num-integer",
- "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 = "phf"
-version = "0.7.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
-dependencies = [
- "phf_shared",
-]
-
-[[package]]
-name = "phf_shared"
-version = "0.7.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0"
-dependencies = [
- "siphasher",
-]
-
-[[package]]
-name = "simplecss"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "135685097a85a64067df36e28a243e94a94f76d829087ce0be34eeb014260c0e"
-
-[[package]]
-name = "siphasher"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
-
-[[package]]
-name = "svgcleaner"
-version = "0.9.5"
-dependencies = [
- "clap",
- "error-chain",
- "fern",
- "log",
- "svgdom",
-]
-
-[[package]]
-name = "svgdom"
-version = "0.10.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dac5d235d251b4266fb95bdf737fe0c546b26327a127e35ad33effdd78cb2e83"
-dependencies = [
- "error-chain",
- "float-cmp",
- "log",
- "simplecss",
- "svgparser",
-]
-
-[[package]]
-name = "svgparser"
-version = "0.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90b2a4d5f7d25526c750e436fb5a224e06579f32581515bf511b37210007a3cb"
-dependencies = [
- "error-chain",
- "log",
- "phf",
- "xmlparser",
-]
-
-[[package]]
-name = "textwrap"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-dependencies = [
- "unicode-width",
-]
-
-[[package]]
-name = "time"
-version = "0.1.44"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255"
-dependencies = [
- "libc",
- "wasi",
- "winapi",
-]
-
-[[package]]
-name = "unicode-width"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
-
-[[package]]
-name = "wasi"
-version = "0.10.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "xmlparser"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4fb8cb7e78fcf5055e751eae348c81bba17b6c84c8ed9fc5f6cf60e3e15d4aa"
-dependencies = [
- "error-chain",
- "log",
-]
diff --git a/pkgs/tools/graphics/svgcleaner/default.nix b/pkgs/tools/graphics/svgcleaner/default.nix
deleted file mode 100644
index 48902f322e2fb..0000000000000
--- a/pkgs/tools/graphics/svgcleaner/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib, rustPlatform, fetchFromGitHub }:
-
-rustPlatform.buildRustPackage rec {
-  pname = "svgcleaner";
-  version = "0.9.5";
-
-  src = fetchFromGitHub {
-    owner = "RazrFalcon";
-    repo = "svgcleaner";
-    rev = "v${version}";
-    sha256 = "sha256-nc+lKL6CJZid0WidcBwILhn81VgmmFrutfKT5UffdHA=";
-  };
-
-  cargoLock.lockFile = ./Cargo.lock;
-
-  postPatch = ''
-    cp ${./Cargo.lock} Cargo.lock;
-  '';
-
-  meta = with lib; {
-    description = "A tool for tidying and optimizing SVGs";
-    homepage = "https://github.com/RazrFalcon/svgcleaner";
-    changelog = "https://github.com/RazrFalcon/svgcleaner/blob/v${version}/CHANGELOG.md";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ mehandes ];
-  };
-}
diff --git a/pkgs/tools/misc/convbin/default.nix b/pkgs/tools/misc/convbin/default.nix
index e350092a0e366..90b403adeb603 100644
--- a/pkgs/tools/misc/convbin/default.nix
+++ b/pkgs/tools/misc/convbin/default.nix
@@ -13,6 +13,10 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-zCRM62xwaPaN8+cg+CeaqK/9hKpZmSBBeUOQqAvQGYw=";
   };
 
+  postPatch = lib.optionalString stdenv.isDarwin ''
+    substituteInPlace Makefile --replace "-flto" ""
+  '';
+
   makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
 
   checkPhase = ''
diff --git a/pkgs/tools/misc/diffoscope/default.nix b/pkgs/tools/misc/diffoscope/default.nix
index b1390fefb33cd..f6f799a9b0c0a 100644
--- a/pkgs/tools/misc/diffoscope/default.nix
+++ b/pkgs/tools/misc/diffoscope/default.nix
@@ -9,11 +9,11 @@
 # Note: when upgrading this package, please run the list-missing-tools.sh script as described below!
 python3Packages.buildPythonApplication rec {
   pname = "diffoscope";
-  version = "190";
+  version = "192";
 
   src = fetchurl {
     url = "https://diffoscope.org/archive/diffoscope-${version}.tar.bz2";
-    sha256 = "sha256-iZ9OJESNlGgsYTO9jbzEX5sCz8Rrhs7cecJEy7j4U+c=";
+    sha256 = "sha256-ZaSE1yYznZIQV7yKyeBlqQzkgUn3CoadZY2fDA1/SnE=";
   };
 
   outputs = [ "out" "man" ];
@@ -79,6 +79,7 @@ python3Packages.buildPythonApplication rec {
     # Disable flaky tests on Darwin
     "test_non_unicode_filename"
     "test_listing"
+    "test_symlink_root"
   ];
 
   # flaky tests on Darwin
diff --git a/pkgs/tools/misc/ibus-theme-tools/default.nix b/pkgs/tools/misc/ibus-theme-tools/default.nix
new file mode 100644
index 0000000000000..ee8a8719d1397
--- /dev/null
+++ b/pkgs/tools/misc/ibus-theme-tools/default.nix
@@ -0,0 +1,29 @@
+{ lib, python3Packages, fetchFromGitHub, gettext }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "ibus-theme-tools";
+  version = "4.2.0";
+
+  src = fetchFromGitHub {
+    owner = "openSUSE";
+    repo = "IBus-Theme-Tools";
+    rev = "v${version}";
+    sha256 = "0i8vwnikwd1bfpv4xlgzc51gn6s18q58nqhvcdiyjzcmy3z344c2";
+  };
+
+  buildInputs = [ gettext ];
+
+  propagatedBuildInputs = with python3Packages; [ tinycss2 pygobject3 ];
+
+  # No test.
+  doCheck = false;
+
+  pythonImportsCheck = [ "ibus_theme_tools" ];
+
+  meta = with lib; {
+    description = "Generate the IBus GTK or GNOME Shell theme from existing themes";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ hollowman6 ];
+    homepage = "https://github.com/openSUSE/IBus-Theme-Tools";
+  };
+}
diff --git a/pkgs/tools/misc/mongodb-compass/default.nix b/pkgs/tools/misc/mongodb-compass/default.nix
index 8baeb1556b149..e11d0899df4ed 100644
--- a/pkgs/tools/misc/mongodb-compass/default.nix
+++ b/pkgs/tools/misc/mongodb-compass/default.nix
@@ -1,9 +1,40 @@
-{ lib, stdenv, fetchurl, dpkg
-, alsa-lib, at-spi2-atk, at-spi2-core, atk, cairo, cups, curl, dbus, expat, fontconfig, freetype, glib
-, gnome2, gdk-pixbuf, gtk3, pango, libnotify, libsecret, libuuid, libxcb, nspr, nss, systemd, xorg, wrapGAppsHook }:
+{
+alsa-lib,
+at-spi2-atk,
+at-spi2-core,
+atk,
+cairo,
+cups,
+curl,
+dbus,
+dpkg,
+expat,
+fetchurl,
+fontconfig,
+freetype,
+gdk-pixbuf,
+glib,
+gnome2,
+gtk3,
+lib,
+libdrm,
+libnotify,
+libsecret,
+libuuid,
+libxcb,
+libxkbcommon,
+mesa,
+nspr,
+nss,
+pango,
+stdenv,
+systemd,
+wrapGAppsHook,
+xorg,
+}:
 
 let
-  version = "1.25.0";
+  version = "1.29.4";
 
   rpath = lib.makeLibraryPath [
     alsa-lib
@@ -17,22 +48,24 @@ let
     expat
     fontconfig
     freetype
+    gdk-pixbuf
     glib
     gnome2.GConf
-    gdk-pixbuf
     gtk3
-    pango
+    libdrm
     libnotify
     libsecret
     libuuid
     libxcb
+    libxkbcommon
+    mesa
     nspr
     nss
+    pango
     stdenv.cc.cc
     systemd
-
-    xorg.libxkbfile
     xorg.libX11
+    xorg.libXScrnSaver
     xorg.libXcomposite
     xorg.libXcursor
     xorg.libXdamage
@@ -42,14 +75,16 @@ let
     xorg.libXrandr
     xorg.libXrender
     xorg.libXtst
-    xorg.libXScrnSaver
-  ] + ":${stdenv.cc.cc.lib}/lib64";
+    xorg.libxkbfile
+    xorg.libxshmfence
+    (lib.getLib stdenv.cc.cc)
+  ];
 
   src =
     if stdenv.hostPlatform.system == "x86_64-linux" then
       fetchurl {
         url = "https://downloads.mongodb.com/compass/mongodb-compass_${version}_amd64.deb";
-        sha256 = "sha256-998/voQ04fLj3KZCy6BueUoI1v++4BoGRTGJT7Nsv40=";
+        sha256 = "sha256-CqC6BrRhMfjxamSwC6ub1u3+FtDuIq3/OMNdUZgpCAQ=";
       }
     else
       throw "MongoDB compass is not supported on ${stdenv.hostPlatform.system}";
@@ -94,8 +129,9 @@ in stdenv.mkDerivation {
 
   meta = with lib; {
     description = "The GUI for MongoDB";
+    maintainers = with maintainers; [ bryanasdev000 ];
     homepage = "https://www.mongodb.com/products/compass";
-    license = licenses.unfree;
+    license = licenses.sspl;
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/tools/misc/rates/default.nix b/pkgs/tools/misc/rates/default.nix
index 989a9e6734aca..8ead57a07eb98 100644
--- a/pkgs/tools/misc/rates/default.nix
+++ b/pkgs/tools/misc/rates/default.nix
@@ -1,6 +1,8 @@
 { lib
+, stdenv
 , fetchFromGitHub
 , rustPlatform
+, Security
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -16,6 +18,8 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "041sskiq152iywwqd8p7aqsqzbj359zl7ilnp8ahzdqprz3slk1w";
 
+  buildInputs = lib.optional stdenv.isDarwin Security;
+
   meta = with lib; {
     description = "CLI tool that brings currency exchange rates right into your terminal";
     homepage = "https://github.com/lunush/rates";
diff --git a/pkgs/tools/misc/termplay/default.nix b/pkgs/tools/misc/termplay/default.nix
index 80c6341f02539..2d493b857fc1c 100644
--- a/pkgs/tools/misc/termplay/default.nix
+++ b/pkgs/tools/misc/termplay/default.nix
@@ -11,7 +11,6 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1w7hdqgqr1jgxid3k7f2j52wz31gv8bzr9rsm6xzp7nnihp6i45p";
   };
 
-  cargoBuildFlags = ["--features" "bin"];
   cargoSha256 = "08ip6x4kink244majlk595yh551c2ap3ry58wly994mh8wf6ifwb";
 
   nativeBuildInputs = [ makeWrapper ];
@@ -24,6 +23,8 @@ rustPlatform.buildRustPackage rec {
     libsixel
   ];
 
+  buildFeatures = [ "bin" ];
+
   postInstall = ''
     wrapProgram $out/bin/termplay --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0"
   '';
diff --git a/pkgs/tools/misc/topicctl/default.nix b/pkgs/tools/misc/topicctl/default.nix
index 9ecbbcba37af4..0a51eda485707 100644
--- a/pkgs/tools/misc/topicctl/default.nix
+++ b/pkgs/tools/misc/topicctl/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "topicctl";
-  version = "1.1.1";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "segmentio";
     repo = "topicctl";
     rev = "v${version}";
-    sha256 = "sha256-LsMt2BHfO0I5N2C247fmoOgQ5EXMgk/3Kj/lI+vTRV0=";
+    sha256 = "sha256-bCTlKhYmMe89dYuLiZ58CPpYZiXSGqbddxugsZS5/Cs=";
   };
 
-  vendorSha256 = "sha256-ur7qMm7l1CocQwX58fTL1PpdgIEJyRAzSlNJM1WTvM0=";
+  vendorSha256 = "sha256-1VRK8tmsbOuP5t5uJ1h+KPcS4K9D+y6UQKeUP2HPXrQ=";
 
   ldflags = [
     "-X main.BuildVersion=${version}"
diff --git a/pkgs/tools/misc/vector/default.nix b/pkgs/tools/misc/vector/default.nix
index 4958841948478..9f06c858b48ae 100644
--- a/pkgs/tools/misc/vector/default.nix
+++ b/pkgs/tools/misc/vector/default.nix
@@ -22,8 +22,8 @@
 , features ? ([ "sinks" "sources" "transforms" ]
     # the second feature flag is passed to the rdkafka dependency
     # building on linux fails without this feature flag (both x86_64 and AArch64)
-    ++ (lib.optionals enableKafka [ "rdkafka-plain" "rdkafka/dynamic_linking" ])
-    ++ (lib.optional stdenv.targetPlatform.isUnix "unix"))
+    ++ lib.optionals enableKafka [ "rdkafka-plain" "rdkafka/dynamic_linking" ]
+    ++ lib.optional stdenv.targetPlatform.isUnix "unix")
 }:
 
 let
@@ -51,24 +51,28 @@ rustPlatform.buildRustPackage {
   RUSTONIG_SYSTEM_LIBONIG = true;
   LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
 
-  cargoBuildFlags = [ "--no-default-features" "--features" (lib.concatStringsSep "," features) ];
+  TZDIR = "${tzdata}/share/zoneinfo";
+
+  buildNoDefaultFeatures = true;
+  buildFeatures = features;
+
   # TODO investigate compilation failure for tests
   # dev dependency includes httpmock which depends on iashc which depends on curl-sys with http2 feature enabled
   # compilation fails because of a missing http2 include
   doCheck = !stdenv.isDarwin;
-  # healthcheck_grafana_cloud is trying to make a network access
-  # test_stream_errors is flaky on linux-aarch64
-  # tcp_with_tls_intermediate_ca is flaky on linux-x86_64
-  checkPhase = ''
-    TZDIR=${tzdata}/share/zoneinfo cargo test \
-      --no-default-features \
-      --features ${lib.concatStringsSep "," features} \
-      -- --test-threads 1 \
-      --skip=sinks::loki::tests::healthcheck_grafana_cloud \
-      --skip=kubernetes::api_watcher::tests::test_stream_errors \
-      --skip=sources::socket::test::tcp_with_tls_intermediate_ca \
-      --skip=sources::host_metrics::cgroups::tests::generates_cgroups_metrics
-  '';
+
+  checkFlags = [
+    # tries to make a network access
+    "--skip=sinks::loki::tests::healthcheck_grafana_cloud"
+
+    # flaky on linux-aarch64
+    "--skip=kubernetes::api_watcher::tests::test_stream_errors"
+
+    # flaky on linux-x86_64
+    "--skip=sources::socket::test::tcp_with_tls_intermediate_ca"
+
+    "--skip=sources::host_metrics::cgroups::tests::generates_cgroups_metrics"
+  ];
 
   # recent overhauls of DNS support in 0.9 mean that we try to resolve
   # vector.dev during the checkPhase, which obviously isn't going to work.
diff --git a/pkgs/tools/misc/websocat/default.nix b/pkgs/tools/misc/websocat/default.nix
index 7ba2accc67875..ffbbc0ec8061a 100644
--- a/pkgs/tools/misc/websocat/default.nix
+++ b/pkgs/tools/misc/websocat/default.nix
@@ -12,13 +12,14 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-jwoWxK4phBqhIeo3+oRnpGsfvtn9gTR1ryd4N+0Lmbw=";
   };
 
-  cargoBuildFlags = [ "--features=ssl" ];
   cargoSha256 = "sha256-+3SG1maarY4DJ4+QiYGwltGLksOoOhKtcqstRwgzi2k=";
 
   nativeBuildInputs = [ pkg-config makeWrapper ];
   buildInputs = [ openssl ]
     ++ lib.optionals stdenv.isDarwin [ libiconv Security ];
 
+  buildFeatures = [ "ssl" ];
+
   # Needed to get openssl-sys to use pkg-config.
   OPENSSL_NO_VENDOR=1;
 
diff --git a/pkgs/tools/misc/xxv/default.nix b/pkgs/tools/misc/xxv/default.nix
index 99a8193c6ca7f..e5852e5f51b01 100644
--- a/pkgs/tools/misc/xxv/default.nix
+++ b/pkgs/tools/misc/xxv/default.nix
@@ -25,7 +25,8 @@ rustPlatform.buildRustPackage rec {
 
   # I'm picking pancurses for Windows simply because that's the example given in Cursive's
   # documentation for picking an alternative backend. We could just as easily pick crossterm.
-  cargoBuildFlags = lib.optionals (!useNcurses) [ "--no-default-features" "--features pancurses-backend" ];
+  buildNoDefaultFeatures = !useNcurses;
+  buildFeatures = lib.optional (!useNcurses) "pancurses-backend";
 
   meta = with lib; {
     description = "A visual hex viewer for the terminal";
diff --git a/pkgs/tools/networking/airfield/node.nix b/pkgs/tools/networking/airfield/node.nix
index 0bcd0eb4b8512..e6ff9b78d3862 100644
--- a/pkgs/tools/networking/airfield/node.nix
+++ b/pkgs/tools/networking/airfield/node.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/tools/networking/bore/default.nix b/pkgs/tools/networking/bore/default.nix
index b22cdb0c2ae41..cfe78590483fc 100644
--- a/pkgs/tools/networking/bore/default.nix
+++ b/pkgs/tools/networking/bore/default.nix
@@ -15,7 +15,9 @@ rustPlatform.buildRustPackage rec {
   cargoBuildFlags = "-p ${pname}";
 
   # FIXME can’t test --all-targets and --doc in a single invocation
-  cargoTestFlags = "--features std --all-targets --workspace";
+  checkFeatures = [ "std" ];
+
+  cargoTestFlags = [ "--all-targets" "--workspace" ];
 
   nativeBuildInputs = [ installShellFiles ]
     ++ lib.optional stdenv.isDarwin llvmPackages.libclang;
diff --git a/pkgs/tools/networking/cbftp/default.nix b/pkgs/tools/networking/cbftp/default.nix
index e78b8a93dc67b..5709acb02ddb4 100644
--- a/pkgs/tools/networking/cbftp/default.nix
+++ b/pkgs/tools/networking/cbftp/default.nix
@@ -21,6 +21,8 @@ stdenv.mkDerivation rec {
 
   dontConfigure = true;
 
+  makeFlags = lib.optional stdenv.isDarwin "OPTFLAGS=-O0";
+
   installPhase = ''
     runHook preInstall
 
diff --git a/pkgs/tools/networking/gemget/default.nix b/pkgs/tools/networking/gemget/default.nix
new file mode 100644
index 0000000000000..e501172f75e5f
--- /dev/null
+++ b/pkgs/tools/networking/gemget/default.nix
@@ -0,0 +1,22 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "gemget";
+  version = "1.8.0";
+
+  src = fetchFromGitHub {
+    owner = "makeworld-the-better-one";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "PmtIgxnzfLduNGTx8SNDky6juv+NTJ8Cr++SOCk/QNU=";
+  };
+
+  vendorSha256 = "sha256-Ep6HAJgurxFbA4L77z8V2ar06BBVWlAJS9VoSSUg27U=";
+
+  meta = with lib; {
+    description = "Command line downloader for the Gemini protocol";
+    homepage = "https://github.com/makeworld-the-better-one/gemget";
+    license = licenses.mit;
+    maintainers = with maintainers; [ amfl ];
+  };
+}
diff --git a/pkgs/tools/networking/lychee/default.nix b/pkgs/tools/networking/lychee/default.nix
index 72f5b6f57fd20..657fd108b9a01 100644
--- a/pkgs/tools/networking/lychee/default.nix
+++ b/pkgs/tools/networking/lychee/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "lychee";
-  version = "0.7.0";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     owner = "lycheeverse";
     repo = pname;
-    rev = version;
-    sha256 = "0kpwpbv0dqb0p4bxjlcjas6x1n91rdsvy2psrc1nyr1sh6gb1q5j";
+    rev = "v${version}";
+    sha256 = "sha256-TjjSysG4UCXVi5ytWaJVL31TFLHC3Ro5OEB56pzbn7s=";
   };
 
-  cargoSha256 = "1b915zkg41n3azk4hhg6fgc83n7iq8p7drvdyil2m2a4qdjvp9r3";
+  cargoSha256 = "sha256-apRXxd7RBnNjhZb0xAUr5hSTafyMbg0k1wgHT93Z66g=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/tools/networking/ookla-speedtest/default.nix b/pkgs/tools/networking/ookla-speedtest/default.nix
index 200b488cf7146..6f377a0a4bf7c 100644
--- a/pkgs/tools/networking/ookla-speedtest/default.nix
+++ b/pkgs/tools/networking/ookla-speedtest/default.nix
@@ -2,16 +2,16 @@
 
 let
   pname = "ookla-speedtest";
-  version = "1.0.0";
+  version = "1.1.0";
 
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://install.speedtest.net/app/cli/${pname}-${version}-x86_64-linux.tgz";
-      sha256 = "sha256-X+ICjw1EJ+T0Ix2fnPcOZpG7iQpwY211Iy/k2XBjMWg=";
+      sha256 = "sha256-/NWN8G6uqokjchSnNcC3FU1qDsOjt4Jh2kCnZc5B9H8=";
     };
     aarch64-linux = fetchurl {
       url = "https://install.speedtest.net/app/cli/${pname}-${version}-aarch64-linux.tgz";
-      sha256 = "sha256-BzaE3DSQUIygGwTFhV4Ez9eX/tM/bqam7cJt+8b2qp4=";
+      sha256 = "sha256-kyOrChC3S8kn4ArO5IylFIstS/N3pXxBVx4ZWI600oU=";
     };
   };
 in
diff --git a/pkgs/tools/networking/zerotierone/default.nix b/pkgs/tools/networking/zerotierone/default.nix
index d86eb8c886572..94cd645d177cf 100644
--- a/pkgs/tools/networking/zerotierone/default.nix
+++ b/pkgs/tools/networking/zerotierone/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "zerotierone";
-  version = "1.8.2";
+  version = "1.8.3";
 
   src = fetchFromGitHub {
     owner = "zerotier";
     repo = "ZeroTierOne";
     rev = version;
-    sha256 = "sha256-Itq06zE2AVQ1HSUEQdNUuvEazfU56Hs86T0DEVuF8d4=";
+    sha256 = "sha256-668KZ2E0jx/s+w4pl+oJbPlfdRGr6ypP2/FoFEBReIk=";
   };
 
   preConfigure = ''
diff --git a/pkgs/tools/nix/statix/default.nix b/pkgs/tools/nix/statix/default.nix
index 3e56fa4fb6088..bb17d8df275dc 100644
--- a/pkgs/tools/nix/statix/default.nix
+++ b/pkgs/tools/nix/statix/default.nix
@@ -15,9 +15,7 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "sha256-e20POz9ZvuT0S+YG+9x7hcudhXQpOR4rVSFJbz76OI0=";
 
-  cargoBuildFlags = lib.optionals withJson [ "--features" "json" ];
-
-  cargoCheckFlags = cargoBuildFlags;
+  buildFeatures = lib.optional withJson "json";
 
   meta = with lib; {
     description = "Lints and suggestions for the nix programming language";
diff --git a/pkgs/tools/package-management/cargo-audit/default.nix b/pkgs/tools/package-management/cargo-audit/default.nix
index b871b4a53b218..232b6b4b0e834 100644
--- a/pkgs/tools/package-management/cargo-audit/default.nix
+++ b/pkgs/tools/package-management/cargo-audit/default.nix
@@ -32,8 +32,7 @@ rustPlatform.buildRustPackage rec {
     Security
   ];
 
-  # enables `cargo audit fix`
-  cargoBuildFlags = [ "--features fix" ];
+  buildFeatures = [ "fix" ];
 
   # The tests require network access which is not available in sandboxed Nix builds.
   doCheck = false;
diff --git a/pkgs/tools/package-management/cargo-outdated/default.nix b/pkgs/tools/package-management/cargo-outdated/default.nix
index 106622706f00a..62b91a4e4d1f3 100644
--- a/pkgs/tools/package-management/cargo-outdated/default.nix
+++ b/pkgs/tools/package-management/cargo-outdated/default.nix
@@ -1,28 +1,37 @@
-{ lib, stdenv, fetchCrate, rustPlatform, pkg-config, openssl, libiconv, curl, darwin }:
+{ lib
+, rustPlatform
+, fetchCrate
+, pkg-config
+, openssl
+, stdenv
+, curl
+, Security
+, SystemConfiguration
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-outdated";
-  version = "0.9.18";
+  version = "0.10.1";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "19r4nv28iq4cmzs5j127qgvdf7y3pfmgjp6jzzbb8b5xj7w06jhl";
+    sha256 = "sha256-jg8KuIu1SaIRlEI9yvpLCESZfAyNgSThJ6pe7+IM6j0=";
   };
 
-  cargoSha256 = "1rf3sxprra9s76iip2xf82kclgs83fhnlx9ykl9hhn2y0z8r3342";
+  cargoSha256 = "sha256-jfZUtUVHEC8zK+FJHSOQxELWTG/Of2WSDoqdg/Sckws=";
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ openssl ]
-  ++ lib.optionals stdenv.isDarwin [
-    darwin.apple_sdk.frameworks.Security
-    darwin.apple_sdk.frameworks.SystemConfiguration
-    libiconv
+
+  buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [
     curl
+    Security
+    SystemConfiguration
   ];
 
   meta = with lib; {
     description = "A cargo subcommand for displaying when Rust dependencies are out of date";
     homepage = "https://github.com/kbknapp/cargo-outdated";
+    changelog = "https://github.com/kbknapp/cargo-outdated/blob/${version}/CHANGELOG.md";
     license = with licenses; [ asl20 /* or */ mit ];
     maintainers = with maintainers; [ sondr3 ivan ];
   };
diff --git a/pkgs/tools/package-management/nixui/nixui.nix b/pkgs/tools/package-management/nixui/nixui.nix
index 0bcd0eb4b8512..e6ff9b78d3862 100644
--- a/pkgs/tools/package-management/nixui/nixui.nix
+++ b/pkgs/tools/package-management/nixui/nixui.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/tools/security/gau/default.nix b/pkgs/tools/security/gau/default.nix
index fec4e4e013b56..95d5f228c8037 100644
--- a/pkgs/tools/security/gau/default.nix
+++ b/pkgs/tools/security/gau/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "gau";
-  version = "1.2.0";
+  version = "2.0.6";
 
   src = fetchFromGitHub {
     owner = "lc";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-hUIUDDP9NtMmJXj5GCD/ISUUcx5prKCVVFztff9txoU=";
+    sha256 = "sha256-d9Cfd2KD+ymGnzOjlVQkSm3XBamoJIUKQLnRZzSDBtk=";
   };
 
-  vendorSha256 = "sha256-WMoFbqtBMcjTWX51mEMzpgDEAndCElldNqjG27yXd2w=";
+  vendorSha256 = "sha256-u5ketxHPwZN2mV0uTgwJbY+ImusGZ9GTTmFAGvdH5yA=";
 
   meta = with lib; {
     description = "Tool to fetch known URLs";
diff --git a/pkgs/tools/security/onlykey/onlykey.nix b/pkgs/tools/security/onlykey/onlykey.nix
index 6fb86dfd79e7d..f9a1999f36d73 100644
--- a/pkgs/tools/security/onlykey/onlykey.nix
+++ b/pkgs/tools/security/onlykey/onlykey.nix
@@ -6,7 +6,7 @@
 
 let
   nodeEnv = import ../../../development/node-packages/node-env.nix {
-    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
     inherit pkgs nodejs;
     libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
   };
diff --git a/pkgs/tools/security/sheesy-cli/default.nix b/pkgs/tools/security/sheesy-cli/default.nix
index ea71be7c95341..4be2189e29353 100644
--- a/pkgs/tools/security/sheesy-cli/default.nix
+++ b/pkgs/tools/security/sheesy-cli/default.nix
@@ -14,12 +14,16 @@ rustPlatform.buildRustPackage rec {
   cargoSha256 = "159a5ph1gxwcgahyr8885lq3c1w76nxzfrfdpyqixqrr7jzx2rd3";
   cargoDepsName = pname;
 
-  cargoBuildFlags = [ "--bin sy" "--features" "vault,extract,completions,substitute,process" ];
-
   nativeBuildInputs = [ libgpg-error gpgme gettext installShellFiles ];
 
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
 
+  buildFeatures = [ "vault" "extract" "completions" "substitute" "process" ];
+
+  checkFeatures = [ ];
+
+  cargoBuildFlags = [ "--bin" "sy" ];
+
   postInstall = ''
     installShellCompletion --cmd sy \
       --bash <($out/bin/sy completions bash) \
diff --git a/pkgs/tools/security/trufflehog/default.nix b/pkgs/tools/security/trufflehog/default.nix
index 353590ed87c81..57f49988e75b0 100644
--- a/pkgs/tools/security/trufflehog/default.nix
+++ b/pkgs/tools/security/trufflehog/default.nix
@@ -12,11 +12,11 @@ let
 in
   python3Packages.buildPythonApplication rec {
     pname = "truffleHog";
-    version = "2.1.11";
+    version = "2.2.1";
 
     src = python3Packages.fetchPypi {
       inherit pname version;
-      sha256 = "53619f0c5be082abd377f987291ace80bc3b88f864972b1a30494780980f769e";
+      sha256 = "sha256-fw0JyM2iqQrkL4FAXllEozJdkKWELS3eAURx5NZcceQ=";
     };
 
     # Relax overly restricted version constraint
diff --git a/pkgs/tools/security/vaultwarden/default.nix b/pkgs/tools/security/vaultwarden/default.nix
index 6bdf428b199be..77ec5a1e8132d 100644
--- a/pkgs/tools/security/vaultwarden/default.nix
+++ b/pkgs/tools/security/vaultwarden/default.nix
@@ -3,10 +3,7 @@
 , libiconv, Security, CoreServices
 , dbBackend ? "sqlite", libmysqlclient, postgresql }:
 
-let
-  featuresFlag = "--features ${dbBackend}";
-
-in rustPlatform.buildRustPackage rec {
+rustPlatform.buildRustPackage rec {
   pname = "vaultwarden";
   version = "1.23.0";
 
@@ -35,14 +32,7 @@ in rustPlatform.buildRustPackage rec {
   # This may be removed if https://github.com/dani-garcia/vaultwarden/issues/712 is fixed.
   RUSTC_BOOTSTRAP = 1;
 
-  cargoBuildFlags = [ featuresFlag ];
-
-  checkPhase = ''
-    runHook preCheck
-    echo "Running cargo cargo test ${featuresFlag} -- ''${checkFlags} ''${checkFlagsArray+''${checkFlagsArray[@]}}"
-    cargo test ${featuresFlag} -- ''${checkFlags} ''${checkFlagsArray+"''${checkFlagsArray[@]}"}
-    runHook postCheck
-  '';
+  buildFeatures = dbBackend;
 
   passthru.tests = nixosTests.vaultwarden;
 
diff --git a/pkgs/tools/system/plan9port/default.nix b/pkgs/tools/system/plan9port/default.nix
index 7e4ce71ec547d..6b22dd5fe5ce5 100644
--- a/pkgs/tools/system/plan9port/default.nix
+++ b/pkgs/tools/system/plan9port/default.nix
@@ -14,7 +14,7 @@
 
 stdenv.mkDerivation {
   pname = "plan9port";
-  version = "0.pre+date=2021-10-19";
+  version = "2021-10-19";
 
   src =  fetchFromGitHub {
     owner = "9fans";
@@ -101,6 +101,7 @@ stdenv.mkDerivation {
       kovirobi
     ];
     platforms = platforms.unix;
+    broken = stdenv.isDarwin;
   };
 }
 # TODO: investigate the mouse chording support patch
diff --git a/pkgs/tools/system/zenith/default.nix b/pkgs/tools/system/zenith/default.nix
index 1e36614c4274d..3705c9cad90ca 100644
--- a/pkgs/tools/system/zenith/default.nix
+++ b/pkgs/tools/system/zenith/default.nix
@@ -18,12 +18,13 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1bn364rmp0q86rd7vgv4n7x09cdf9m4njcaq92jnk85ni6h147ax";
   };
 
-  cargoBuildFlags = lib.optionals nvidiaSupport [ "--features" "nvidia" ];
   cargoSha256 = "0c2mk2bcz4qjyqmf11yqhnhy4pqxr77b3c1gvr5jfmjshx4ff7v2";
 
   nativeBuildInputs = lib.optional nvidiaSupport makeWrapper;
   buildInputs = lib.optionals stdenv.isDarwin [ IOKit ];
 
+  buildFeatures = lib.optional nvidiaSupport "nvidia";
+
   postInstall = lib.optionalString nvidiaSupport ''
     wrapProgram $out/bin/zenith \
       --suffix LD_LIBRARY_PATH : "/run/opengl-driver/lib"
diff --git a/pkgs/tools/text/ripgrep/default.nix b/pkgs/tools/text/ripgrep/default.nix
index 3fa202135f513..022f8bd25bb7b 100644
--- a/pkgs/tools/text/ripgrep/default.nix
+++ b/pkgs/tools/text/ripgrep/default.nix
@@ -22,13 +22,13 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "1kfdgh8dra4jxgcdb0lln5wwrimz0dpp33bq3h7jgs8ngaq2a9wp";
 
-  cargoBuildFlags = lib.optional withPCRE2 "--features pcre2";
-
   nativeBuildInputs = [ asciidoctor installShellFiles ]
     ++ lib.optional withPCRE2 pkg-config;
   buildInputs = lib.optional withPCRE2 pcre2
     ++ lib.optional stdenv.isDarwin Security;
 
+  buildFeatures = lib.optional withPCRE2 "pcre2";
+
   preFixup = ''
     installManPage $releaseDir/build/ripgrep-*/out/rg.1
 
diff --git a/pkgs/tools/text/tidy-viewer/default.nix b/pkgs/tools/text/tidy-viewer/default.nix
index 29d243a650425..43b38d06b928d 100644
--- a/pkgs/tools/text/tidy-viewer/default.nix
+++ b/pkgs/tools/text/tidy-viewer/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "tidy-viewer";
-  version = "1.4.2";
+  version = "1.4.3";
 
   src = fetchFromGitHub {
     owner = "alexhallam";
     repo = "tv";
     rev = version;
-    sha256 = "sha256-YXYz+SvL6YRwnZ7frmmx4NevNTh0rJcW7e4jSuX3TNs=";
+    sha256 = "sha256-onLu4XNe3sLfZ273Hq9IvgZEV9ir8oEXX7tQG75K2Hw=";
   };
 
-  cargoSha256 = "sha256-KwnnoVacTMw7kHLQynv9557zUq8aFZfzBD+Zc9Q6XBs=";
+  cargoSha256 = "sha256-CYiRi6ny0wzTddpjdnnMHGqcWRM9wVjF34RmETgLH5A=";
 
   # this test parses command line arguments
   # error: Found argument '--test-threads' which wasn't expected, or isn't valid in this context
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 99f66c938e327..2453aa9220867 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -76,6 +76,7 @@ mapAliases ({
   bazaarTools = throw "bazaar has been deprecated by breezy."; # added 2020-04-19
   bcat = throw "bcat has been removed because upstream is dead"; # added 2021-08-22
   beegfs = throw "beegfs has been removed."; # added 2019-11-24
+  beret = throw "beret has been removed"; # added 2021-11-16
   bluezFull = bluez; # Added 2019-12-03
   bpftool = bpftools; # Added 2021-05-03
   brackets = throw "brackets has been removed, it was unmaintained and had open vulnerabilities"; # added 2021-01-24
@@ -574,6 +575,7 @@ mapAliases ({
   mssys = ms-sys; # added 2015-12-13
   mpv-with-scripts = self.wrapMpv self.mpv-unwrapped { }; # added 2020-05-22
   multipath_tools = multipath-tools;  # added 2016-01-21
+  mumsi = throw "mumsi has been removed from nixpkgs, as it's unmaintained and does not build anymore"; # added 2021-11-18
   mupen64plus1_5 = mupen64plus; # added 2016-02-12
   mx = throw "graalvm8 and its tools were deprecated in favor of graalvm8-ce"; # added 2021-10-15
   mxisd = throw "mxisd has been removed from nixpkgs as it has reached end of life, see https://github.com/kamax-matrix/mxisd/blob/535e0a5b96ab63cb0ddef90f6f42c5866407df95/EOL.md#end-of-life-notice . ma1sd may be a suitable alternative."; # added 2021-04-15
@@ -891,6 +893,7 @@ mapAliases ({
   stanchion = throw "Stanchion was part of riak-cs which is not maintained anymore"; # added 2020-10-14
   stumpwm-git = throw "stumpwm-git has been broken for a long time and lispPackages.stumpwm follows Quicklisp that is close to git version"; # added 2021-05-09
   surf-webkit2 = surf; # added 2017-04-02
+  svgcleaner = throw "svgcleaner has been removed."; # added 2021-11-17
   swec = throw "swec has been removed; broken and abandoned upstream."; # added 2021-10-14
   swfdec = throw "swfdec has been removed as broken and unmaintained."; # added 2020-08-23
   swtpm-tpm2 = swtpm; # added 2021-02-26
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 8a8851da2bd75..41337a999a83c 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -259,7 +259,9 @@ with pkgs;
 
   clj-kondo = callPackage ../development/tools/clj-kondo { };
 
-  cloak = callPackage ../applications/misc/cloak { };
+  cloak = callPackage ../applications/misc/cloak {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
 
   cmark = callPackage ../development/libraries/cmark { };
 
@@ -1044,6 +1046,8 @@ with pkgs;
 
   hyper = callPackage ../applications/terminal-emulators/hyper { };
 
+  iqueue = callPackage ../development/libraries/iqueue {};
+
   iterm2 = callPackage ../applications/terminal-emulators/iterm2 {};
 
   kitty = callPackage ../applications/terminal-emulators/kitty {
@@ -1335,6 +1339,8 @@ with pkgs;
 
   avfs = callPackage ../tools/filesystems/avfs { };
 
+  aliyun-cli = callPackage ../tools/admin/aliyun-cli { };
+
   aws-iam-authenticator = callPackage ../tools/security/aws-iam-authenticator {};
 
   awscli = callPackage ../tools/admin/awscli { };
@@ -1733,6 +1739,8 @@ with pkgs;
 
   gitless = callPackage ../applications/version-management/gitless { python = python3; };
 
+  gistyc = with python3Packages; toPythonApplication gistyc;
+
   gitlint = python3Packages.callPackage ../tools/misc/gitlint { };
 
   gitter = callPackage  ../applications/networking/instant-messengers/gitter { };
@@ -2379,7 +2387,7 @@ with pkgs;
 
   catclock = callPackage ../applications/misc/catclock { };
 
-  cardpeek = callPackage ../applications/misc/cardpeek { };
+  cardpeek = callPackage ../applications/misc/cardpeek { inherit (darwin.apple_sdk.frameworks) PCSC; };
 
   cawbird = callPackage ../applications/networking/cawbird { };
 
@@ -3220,6 +3228,10 @@ with pkgs;
 
   lite = callPackage ../applications/editors/lite { };
 
+  lite-xl = callPackage ../applications/editors/lite-xl {
+    inherit (darwin.apple_sdk.frameworks) Foundation;
+  };
+
   loadwatch = callPackage ../tools/system/loadwatch { };
 
   loccount = callPackage ../development/tools/misc/loccount { };
@@ -4157,6 +4169,8 @@ with pkgs;
 
   ibus-with-plugins = callPackage ../tools/inputmethods/ibus/wrapper.nix { };
 
+  ibus-theme-tools = callPackage ../tools/misc/ibus-theme-tools { };
+
   interception-tools = callPackage ../tools/inputmethods/interception-tools { };
   interception-tools-plugins = {
     caps2esc = callPackage ../tools/inputmethods/interception-tools/caps2esc.nix { };
@@ -4745,7 +4759,9 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
-  pax = callPackage ../tools/archivers/pax { };
+  pax = callPackage ../tools/archivers/pax {
+    inherit (pkgs.darwin.apple_sdk.libs) utmp;
+  };
 
   rage = callPackage ../tools/security/rage {
     inherit (darwin.apple_sdk.frameworks) Foundation Security;
@@ -5439,6 +5455,8 @@ with pkgs;
 
   gelasio = callPackage ../data/fonts/gelasio { };
 
+  gemget = callPackage ../tools/networking/gemget {};
+
   gen-oath-safe = callPackage ../tools/security/gen-oath-safe { };
 
   genext2fs = callPackage ../tools/filesystems/genext2fs { };
@@ -6737,6 +6755,8 @@ with pkgs;
 
   kibi = callPackage ../applications/editors/kibi { };
 
+  kio-fuse = libsForQt5.callPackage ../tools/filesystems/kio-fuse { };
+
   kismet = callPackage ../applications/networking/sniffers/kismet { };
 
   kiterunner = callPackage ../tools/security/kiterunner { };
@@ -7660,7 +7680,9 @@ with pkgs;
 
   metasploit = callPackage ../tools/security/metasploit { };
 
-  mhost = callPackage ../applications/networking/mhost { };
+  mhost = callPackage ../applications/networking/mhost {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
 
   ms-sys = callPackage ../tools/misc/ms-sys { };
 
@@ -9690,8 +9712,6 @@ with pkgs;
 
   svgbob = callPackage ../tools/graphics/svgbob { };
 
-  svgcleaner = callPackage ../tools/graphics/svgcleaner { };
-
   ssb = callPackage ../tools/security/ssb { };
 
   ssb-patchwork = callPackage ../applications/networking/ssb-patchwork { };
@@ -10645,7 +10665,9 @@ with pkgs;
     withRedis = true;
   };
 
-  unicorn = callPackage ../development/libraries/unicorn { };
+  unicorn = callPackage ../development/libraries/unicorn {
+    inherit (darwin.apple_sdk.frameworks) IOKit;
+  };
 
   units = callPackage ../tools/misc/units {
     enableCurrenciesUpdater = true;
@@ -12788,7 +12810,9 @@ with pkgs;
   cargo-graph = callPackage ../tools/package-management/cargo-graph { };
   cargo-license = callPackage ../tools/package-management/cargo-license { };
   cargo-llvm-lines = callPackage ../development/tools/rust/cargo-llvm-lines { };
-  cargo-outdated = callPackage ../tools/package-management/cargo-outdated {};
+  cargo-outdated = callPackage ../tools/package-management/cargo-outdated {
+    inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
+  };
   cargo-release = callPackage ../tools/package-management/cargo-release {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
@@ -12815,6 +12839,7 @@ with pkgs;
   cargo-deny = callPackage ../development/tools/rust/cargo-deny {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
+  cargo-depgraph = callPackage ../development/tools/rust/cargo-depgraph { };
   cargo-dephell = callPackage ../development/tools/rust/cargo-dephell {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
@@ -12889,7 +12914,9 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
-  devserver = callPackage ../development/tools/rust/devserver { };
+  devserver = callPackage ../development/tools/rust/devserver {
+    inherit (darwin.apple_sdk.frameworks) CoreServices;
+  };
 
   maturin = callPackage ../development/tools/rust/maturin {
     inherit (darwin.apple_sdk.frameworks) Security;
@@ -13903,7 +13930,8 @@ with pkgs;
     electron_12
     electron_13
     electron_14
-    electron_15;
+    electron_15
+    electron_16;
 
   autobuild = callPackage ../development/tools/misc/autobuild { };
 
@@ -18503,7 +18531,15 @@ with pkgs;
 
   opencl-clang = callPackage ../development/libraries/opencl-clang { };
 
-  mapnik = callPackage ../development/libraries/mapnik { };
+  mapnik = callPackage ../development/libraries/mapnik {
+    gdal = gdal.override {
+      libgeotiff = libgeotiff.override { proj = proj_7; };
+      libspatialite = libspatialite.override { proj = proj_7; };
+      proj = proj_7;
+    };
+    proj = proj_7;
+  };
+
 
   marisa = callPackage ../development/libraries/marisa {};
 
@@ -18642,8 +18678,6 @@ with pkgs;
 
   mueval = callPackage ../development/tools/haskell/mueval { };
 
-  mumlib = callPackage ../development/libraries/mumlib { };
-
   muparser = callPackage ../development/libraries/muparser {
     inherit (darwin.stubs) setfile;
   };
@@ -19649,7 +19683,7 @@ with pkgs;
 
   StormLib = callPackage ../development/libraries/StormLib { };
 
-  stxxl = callPackage ../development/libraries/stxxl { parallel = true; };
+  stxxl = callPackage ../development/libraries/stxxl { };
 
   sqlite = lowPrio (callPackage ../development/libraries/sqlite { });
 
@@ -20896,8 +20930,6 @@ with pkgs;
 
   mullvad-vpn = callPackage ../applications/networking/mullvad-vpn { };
 
-  mumsi = callPackage ../servers/mumsi { };
-
   mycorrhiza = callPackage ../servers/mycorrhiza { };
 
   myserver = callPackage ../servers/http/myserver { };
@@ -23115,6 +23147,16 @@ with pkgs;
 
   gruvbox-dark-gtk = callPackage ../data/themes/gruvbox-dark-gtk { };
 
+  palenight-theme = callPackage ../data/themes/gtk-theme-framework { theme = "palenight"; };
+
+  amarena-theme = callPackage ../data/themes/gtk-theme-framework { theme = "amarena"; };
+
+  gruvterial-theme = callPackage ../data/themes/gtk-theme-framework { theme = "gruvterial"; };
+
+  oceanic-theme = callPackage ../data/themes/gtk-theme-framework { theme = "oceanic"; };
+
+  spacx-gtk-theme = callPackage ../data/themes/gtk-theme-framework { theme = "spacx"; };
+
   gruvbox-dark-icons-gtk = callPackage ../data/icons/gruvbox-dark-icons-gtk {
     inherit (plasma5Packages) breeze-icons;
   };
@@ -23204,6 +23246,11 @@ with pkgs;
 
   kreative-square-fonts = callPackage ../data/fonts/kreative-square-fonts { };
 
+  la-capitaine-icon-theme = callPackage ../data/icons/la-capitaine-icon-theme {
+    inherit (plasma5Packages) breeze-icons;
+    inherit (pantheon) elementary-icon-theme;
+  };
+
   layan-gtk-theme = callPackage ../data/themes/layan-gtk-theme { };
 
   lato = callPackage ../data/fonts/lato {};
@@ -26606,6 +26653,7 @@ with pkgs;
 
   menyoki = callPackage ../applications/graphics/menyoki {
     inherit (xorg) libX11 libXrandr;
+    inherit (darwin.apple_sdk.frameworks) AppKit;
   };
 
   mercurial = callPackage ../applications/version-management/mercurial {
@@ -27084,6 +27132,8 @@ with pkgs;
     mlt-qt5 = libsForQt514.mlt;
   };
 
+  synology-drive = libsForQt5.callPackage ../applications/networking/synology-drive { };
+
   taxi = callPackage ../applications/networking/ftp/taxi { };
 
   librep = callPackage ../development/libraries/librep { };
@@ -27484,6 +27534,8 @@ with pkgs;
 
   purple-discord = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-discord { };
 
+  purple-googlechat = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-googlechat { };
+
   purple-hangouts = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-hangouts { };
 
   purple-lurch = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-lurch { };
@@ -29846,8 +29898,6 @@ with pkgs;
 
   bench = haskell.lib.compose.justStaticExecutables haskellPackages.bench;
 
-  beret = callPackage ../games/beret { };
-
   black-hole-solver = callPackage ../games/black-hole-solver {
     inherit (perlPackages) PathTiny;
   };
@@ -32768,7 +32818,9 @@ with pkgs;
 
   qdl = callPackage ../tools/misc/qdl { };
 
-  rates = callPackage ../tools/misc/rates { };
+  rates = callPackage ../tools/misc/rates {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
 
   rargs = callPackage ../tools/misc/rargs { };
 
@@ -33005,6 +33057,8 @@ with pkgs;
 
   tfswitch = callPackage ../applications/networking/cluster/tfswitch {};
 
+  tgswitch = callPackage ../applications/networking/cluster/tgswitch {};
+
   tilt = callPackage ../applications/networking/cluster/tilt {};
 
   timeular = callPackage ../applications/office/timeular {};
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index b4cd4106113da..bf340c10cb3b4 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -128,7 +128,7 @@ in {
       llvmPackages = pkgs.llvmPackages_10;
     };
     ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
-      bootPkgs = packages.ghc901; # no binary yet
+      bootPkgs = packages.ghc8107Binary;
       inherit (buildPackages.python3Packages) sphinx;
       # Need to use apple's patched xattr until
       # https://github.com/xattr/xattr/issues/44 and
diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix
index 54885b48abf59..7c7c0133ee9d4 100644
--- a/pkgs/top-level/python-aliases.nix
+++ b/pkgs/top-level/python-aliases.nix
@@ -75,6 +75,7 @@ mapAliases ({
   pytestpep8 = throw "pytestpep8 was removed because it is abandoned and no longer compatible with pytest v6.0"; # added 2020-12-10
   pytestquickcheck = pytest-quickcheck; # added 2021-07-20
   pytestrunner = pytest-runner; # added 2021-01-04
+  python-igraph = igraph; # added 2021-11-11
   python-lz4 = lz4; # added 2018-06-01
   python_mimeparse = python-mimeparse; # added 2021-10-31
   python-subunit = subunit; # added 2021-09-10
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index e7b7e9017fac8..83fa9e3a3f081 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -1413,6 +1413,8 @@ in {
 
   cchardet = callPackage ../development/python-modules/cchardet { };
 
+  cdcs = callPackage ../development/python-modules/cdcs { };
+
   celery = callPackage ../development/python-modules/celery { };
 
   cement = callPackage ../development/python-modules/cement { };
@@ -2257,6 +2259,8 @@ in {
 
   dnspython = callPackage ../development/python-modules/dnspython { };
 
+  dnspythonchia = callPackage ../development/python-modules/dnspythonchia { };
+
   doc8 = callPackage ../development/python-modules/doc8 { };
 
   docker = callPackage ../development/python-modules/docker { };
@@ -3096,6 +3100,8 @@ in {
 
   gipc = callPackage ../development/python-modules/gipc { };
 
+  gistyc = callPackage ../development/python-modules/gistyc { };
+
   git-annex-adapter =
     callPackage ../development/python-modules/git-annex-adapter { };
 
@@ -3470,6 +3476,8 @@ in {
 
   hdbscan = callPackage ../development/python-modules/hdbscan { };
 
+  hdfs = callPackage ../development/python-modules/hdfs { };
+
   hdlparse = callPackage ../development/python-modules/hdlparse { };
 
   hdmedians = callPackage ../development/python-modules/hdmedians { };
@@ -3702,6 +3710,10 @@ in {
 
   ignite = callPackage ../development/python-modules/ignite { };
 
+  igraph = callPackage ../development/python-modules/igraph {
+    inherit (pkgs) igraph;
+  };
+
   ihatemoney = callPackage ../development/python-modules/ihatemoney { };
 
   ijson = callPackage ../development/python-modules/ijson { };
@@ -4866,6 +4878,8 @@ in {
 
   mortgage = callPackage ../development/python-modules/mortgage { };
 
+  motionblinds = callPackage ../development/python-modules/motionblinds { };
+
   motioneye-client = callPackage ../development/python-modules/motioneye-client { };
 
   moto = callPackage ../development/python-modules/moto { };
@@ -5289,6 +5303,8 @@ in {
 
   onnx = callPackage ../development/python-modules/onnx { };
 
+  oocsi = callPackage ../development/python-modules/oocsi { };
+
   open-garage = callPackage ../development/python-modules/open-garage { };
 
   openant = callPackage ../development/python-modules/openant { };
@@ -5920,6 +5936,8 @@ in {
 
   pot = callPackage ../development/python-modules/pot { };
 
+  potentials = callPackage ../development/python-modules/potentials { };
+
   potr = callPackage ../development/python-modules/potr { };
 
   power = callPackage ../development/python-modules/power { };
@@ -6306,6 +6324,8 @@ in {
 
   pydbus = callPackage ../development/python-modules/pydbus { };
 
+  pydeck = callPackage ../development/python-modules/pydeck { };
+
   pydeconz = callPackage ../development/python-modules/pydeconz { };
 
   pydelijn = callPackage ../development/python-modules/pydelijn { };
@@ -6346,6 +6366,8 @@ in {
 
   pydy = callPackage ../development/python-modules/pydy { };
 
+  pydyf = callPackage ../development/python-modules/pydyf { };
+
   pyechonest = callPackage ../development/python-modules/pyechonest { };
 
   pyeclib = callPackage ../development/python-modules/pyeclib { };
@@ -7513,10 +7535,6 @@ in {
 
   python-http-client = callPackage ../development/python-modules/python-http-client { };
 
-  python-igraph = callPackage ../development/python-modules/python-igraph {
-    inherit (pkgs) igraph;
-  };
-
   pythonix = callPackage ../development/python-modules/pythonix {
     nix = pkgs.nix_2_3;
     meson = pkgs.meson.override { python3 = self.python; };
@@ -8418,7 +8436,7 @@ in {
 
   scikit-survival = callPackage ../development/python-modules/scikit-survival { };
 
-  scs = callPackage ../development/python-modules/scs { scs = pkgs.scs; };
+  scs = callPackage ../development/python-modules/scs { };
 
   sdnotify = callPackage ../development/python-modules/sdnotify { };
 
@@ -8923,6 +8941,8 @@ in {
 
   stack-data = callPackage ../development/python-modules/stack-data { };
 
+  stanza = callPackage ../development/python-modules/stanza { };
+
   starlette = callPackage ../development/python-modules/starlette {
     inherit (pkgs.darwin.apple_sdk.frameworks) ApplicationServices;
   };
@@ -9093,6 +9113,8 @@ in {
 
   tailer = callPackage ../development/python-modules/tailer { };
 
+  tailscale = callPackage ../development/python-modules/tailscale { };
+
   tappy = callPackage ../development/python-modules/tappy { };
 
   tasklib = callPackage ../development/python-modules/tasklib { };