about summary refs log tree commit diff
path: root/nixpkgs/pkgs
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2021-07-23 09:26:00 +0000
committerAlyssa Ross <hi@alyssa.is>2021-07-23 09:26:00 +0000
commitab63e0bb8dcf2b1bf8d4a26ed360af777b8f241d (patch)
tree504b28a058661f6c1cbb7d3f580020e50367ca7f /nixpkgs/pkgs
parent55cc63c079f49e81d695a25bc2f5b3902f2bd290 (diff)
parentb09661d41fb93562fd53f31574dbf781b130ac44 (diff)
downloadnixlib-ab63e0bb8dcf2b1bf8d4a26ed360af777b8f241d.tar
nixlib-ab63e0bb8dcf2b1bf8d4a26ed360af777b8f241d.tar.gz
nixlib-ab63e0bb8dcf2b1bf8d4a26ed360af777b8f241d.tar.bz2
nixlib-ab63e0bb8dcf2b1bf8d4a26ed360af777b8f241d.tar.lz
nixlib-ab63e0bb8dcf2b1bf8d4a26ed360af777b8f241d.tar.xz
nixlib-ab63e0bb8dcf2b1bf8d4a26ed360af777b8f241d.tar.zst
nixlib-ab63e0bb8dcf2b1bf8d4a26ed360af777b8f241d.zip
Merge commit 'b09661d41fb93562fd53f31574dbf781b130ac44'
Diffstat (limited to 'nixpkgs/pkgs')
-rw-r--r--nixpkgs/pkgs/applications/accessibility/squeekboard/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/audio/aacgain/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix75
-rw-r--r--nixpkgs/pkgs/applications/audio/cdparanoia/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/crip/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/csound/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/audio/dirt/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/audio/easyeffects/default.nix107
-rw-r--r--nixpkgs/pkgs/applications/audio/gmu/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/hqplayer-desktop/default.nix12
-rw-r--r--nixpkgs/pkgs/applications/audio/jack-rack/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/jackmeter/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/mikmod/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/mixxx/default.nix18
-rw-r--r--nixpkgs/pkgs/applications/audio/mp3gain/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/audio/mp3info/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/mpg123/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/nootka/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/opus-tools/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/audio/pulseeffects/default.nix127
-rw-r--r--nixpkgs/pkgs/applications/audio/qmmp/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/quodlibet/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/audio/rhythmbox/default.nix45
-rw-r--r--nixpkgs/pkgs/applications/audio/spotify/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/audio/strawberry/default.nix41
-rw-r--r--nixpkgs/pkgs/applications/audio/tonelib-gfx/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/tonelib-zoom/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/tony/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/transcode/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/xmp/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/zita-ajbridge/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/zita-at1/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/blockchains/alfis/default.nix41
-rw-r--r--nixpkgs/pkgs/applications/blockchains/bitcoin.nix32
-rw-r--r--nixpkgs/pkgs/applications/blockchains/btcpayserver/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/blockchains/btcpayserver/deps.nix95
-rwxr-xr-xnixpkgs/pkgs/applications/blockchains/btcpayserver/update.sh3
-rw-r--r--nixpkgs/pkgs/applications/blockchains/charge-lnd/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/blockchains/chia/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/blockchains/dogecoin.nix4
-rw-r--r--nixpkgs/pkgs/applications/blockchains/eclair.nix38
-rw-r--r--nixpkgs/pkgs/applications/blockchains/elements.nix86
-rw-r--r--nixpkgs/pkgs/applications/blockchains/ergo/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/blockchains/ethabi/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/blockchains/go-ethereum.nix6
-rw-r--r--nixpkgs/pkgs/applications/blockchains/ledger-live-desktop/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/blockchains/lightning-loop/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/blockchains/lnd.nix8
-rw-r--r--nixpkgs/pkgs/applications/blockchains/monero-gui/default.nix15
-rw-r--r--nixpkgs/pkgs/applications/blockchains/monero/default.nix16
-rw-r--r--nixpkgs/pkgs/applications/blockchains/nano-wallet/default.nix1
-rwxr-xr-xnixpkgs/pkgs/applications/blockchains/nbxplorer/update.sh2
-rwxr-xr-xnixpkgs/pkgs/applications/blockchains/nbxplorer/util/create-deps.sh3
-rwxr-xr-xnixpkgs/pkgs/applications/blockchains/nbxplorer/util/update-common.sh3
-rw-r--r--nixpkgs/pkgs/applications/blockchains/oxen/default.nix67
-rw-r--r--nixpkgs/pkgs/applications/blockchains/trezor-suite/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/blockchains/zcash/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/editors/android-studio/default.nix14
-rw-r--r--nixpkgs/pkgs/applications/editors/apostrophe/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/editors/cudatext/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/editors/cudatext/deps.json24
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/cedille/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/ebuild-mode/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix72
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix4
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacs2nix.nix6
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/libgenerated.nix3
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix93
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-packages.nix32
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/org-generated.nix12
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json2458
-rwxr-xr-xnixpkgs/pkgs/applications/editors/emacs/elisp-packages/update-nongnu4
-rw-r--r--nixpkgs/pkgs/applications/editors/kakoune/plugins/build-kakoune-plugin.nix4
-rw-r--r--nixpkgs/pkgs/applications/editors/lighttable/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/editors/neovim/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/editors/neovim/wrapper.nix1
-rw-r--r--nixpkgs/pkgs/applications/editors/sublime/3/common.nix2
-rw-r--r--nixpkgs/pkgs/applications/editors/sublime/4/common.nix2
-rw-r--r--nixpkgs/pkgs/applications/editors/sublime/4/packages.nix12
-rw-r--r--nixpkgs/pkgs/applications/editors/texmacs/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/editors/vim/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/editors/vscode/generic.nix2
-rwxr-xr-xnixpkgs/pkgs/applications/editors/vscode/update-vscode.sh28
-rw-r--r--nixpkgs/pkgs/applications/editors/vscode/vscode.nix18
-rw-r--r--nixpkgs/pkgs/applications/editors/vscode/vscodium.nix10
-rw-r--r--nixpkgs/pkgs/applications/graphics/coreimage/default.nix31
-rw-r--r--nixpkgs/pkgs/applications/graphics/cq-editor/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/graphics/darktable/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/graphics/digikam/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/graphics/fig2dev/default.nix10
-rw-r--r--nixpkgs/pkgs/applications/graphics/hugin/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/graphics/qiv/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/graphics/swingsane/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/graphics/xfractint/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/kde/spectacle.nix20
-rw-r--r--nixpkgs/pkgs/applications/misc/1password-gui/default.nix11
-rw-r--r--nixpkgs/pkgs/applications/misc/archivy/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/misc/blender/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/buku/default.nix35
-rw-r--r--nixpkgs/pkgs/applications/misc/cherrytree/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/clight/clightd.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/cobalt/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/misc/copyq/default.nix62
-rw-r--r--nixpkgs/pkgs/applications/misc/coursera-dl/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/misc/diffpdf/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/misc/dmenu/wayland.nix15
-rw-r--r--nixpkgs/pkgs/applications/misc/dnd-tools/default.nix28
-rw-r--r--nixpkgs/pkgs/applications/misc/dstask/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/misc/electrum/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/misc/formatter/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/freeplane/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/misc/gallery-dl/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/gcal/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/gcalcli/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/misc/getxbook/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/misc/girara/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/gmnitohtml/default.nix46
-rw-r--r--nixpkgs/pkgs/applications/misc/golden-cheetah/default.nix20
-rw-r--r--nixpkgs/pkgs/applications/misc/gopacked/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/misc/grip/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/gummi/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/misc/heimer/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/inkcut/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/misc/ipmiview/default.nix20
-rw-r--r--nixpkgs/pkgs/applications/misc/jiten/default.nix36
-rw-r--r--nixpkgs/pkgs/applications/misc/joplin-desktop/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/misc/khal/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/misc/logseq/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/mako/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/mnamer/default.nix46
-rw-r--r--nixpkgs/pkgs/applications/misc/mnamer/remove_requirements.patch21
-rw-r--r--nixpkgs/pkgs/applications/misc/mnamer/update_hack.patch13
-rw-r--r--nixpkgs/pkgs/applications/misc/moonlight-qt/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/neo4j-desktop/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/misc/nwg-drawer/default.nix35
-rw-r--r--nixpkgs/pkgs/applications/misc/nwg-wrapper/default.nix41
-rw-r--r--nixpkgs/pkgs/applications/misc/octoprint/default.nix18
-rw-r--r--nixpkgs/pkgs/applications/misc/pastel/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/misc/pdfdiff/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/phoc/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/polybar/default.nix147
-rw-r--r--nixpkgs/pkgs/applications/misc/pyditz/cerberus.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/rm-improved/default.nix24
-rw-r--r--nixpkgs/pkgs/applications/misc/rofimoji/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/scli/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/sigal/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/misc/skytemple/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/slides/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/misc/taskwarrior/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/misc/thinking-rock/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/misc/tpmmanager/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/misc/udevil/default.nix33
-rw-r--r--nixpkgs/pkgs/applications/misc/urlscan/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/variety/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/vifm/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/misc/visidata/default.nix11
-rw-r--r--nixpkgs/pkgs/applications/misc/vue/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/misc/wofi-emoji/default.nix54
-rw-r--r--nixpkgs/pkgs/applications/misc/zola/default.nix27
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/brave/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/chromium/browser.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/chromium/common.nix13
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/chromium/default.nix5
-rwxr-xr-xnixpkgs/pkgs/applications/networking/browsers/chromium/get-commit-message.py4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json46
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix778
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox/common.nix22
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox/no-buildconfig-ffx90.patch (renamed from nixpkgs/pkgs/applications/networking/browsers/firefox/no-buildconfig-ffx84.patch)15
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox/packages.nix8
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox/wrapper.nix16
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/icecat-bin/default.nix129
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/midori/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/palemoon/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/telescope/default.nix38
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix13
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/vimb/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/vivaldi/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/yandex-browser/default.nix135
-rw-r--r--nixpkgs/pkgs/applications/networking/charles/default.nix15
-rw-r--r--nixpkgs/pkgs/applications/networking/cloudflared/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/helm/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/helmsman/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix16
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/k0sctl/default.nix25
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/k3s/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/k3s/patches/0002-Add-nixpkgs-patches.patch41
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/kfctl/default.nix32
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/kops/default.nix11
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/kube3d/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/kubedb-cli/default.nix25
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/linkerd/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/nomad/generic.nix2
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/octant/default.nix10
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/octant/desktop.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix13
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/temporal/default.nix43
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json21
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/terraform/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/dnscontrol/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/dyndns/dyndnsc/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/networking/flexget/default.nix13
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/baresip/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/discord/base.nix11
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/discord/default.nix4
-rwxr-xr-xnixpkgs/pkgs/applications/networking/instant-messengers/discord/update-discord.sh36
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/ferdi/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/go-neb/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/matrixcli/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/mirage/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/neochat/default.nix48
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/oysttyer/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/pidgin/default.nix17
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/profanity/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/psi-plus/default.nix78
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/quaternion/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix18
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/tensor/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/vk-cli/default.nix55
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/zoom-us/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/zulip-term/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/zulip/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/juju/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/claws-mail/default.nix29
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/mailcheck/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/mutt/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/notmuch/mutt.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix530
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/thunderbird/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/mullvad-vpn/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/nextcloud-client/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/nym/default.nix15
-rw-r--r--nixpkgs/pkgs/applications/networking/nym/ignore-networking-tests.patch123
-rw-r--r--nixpkgs/pkgs/applications/networking/remote/citrix-workspace/sources.nix11
-rw-r--r--nixpkgs/pkgs/applications/networking/remote/putty/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/remote/remmina/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/remote/wayvnc/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/rofi-vpn/default.nix40
-rw-r--r--nixpkgs/pkgs/applications/networking/sniffers/wireshark/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/sync/acd_cli/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/sync/rclone/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/syncthing/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/termius/default.nix11
-rw-r--r--nixpkgs/pkgs/applications/office/abiword/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/office/paperless/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/office/qownnotes/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/office/timedoctor/default.nix12
-rw-r--r--nixpkgs/pkgs/applications/office/todoman/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/office/watson/default.nix19
-rw-r--r--nixpkgs/pkgs/applications/science/astronomy/xplanet/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/biology/bcftools/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/biology/macse/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/science/chemistry/dkh/default.nix32
-rw-r--r--nixpkgs/pkgs/applications/science/chemistry/octopus/default.nix15
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/diylc/default.nix12
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/kicad/base.nix12
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix16
-rw-r--r--nixpkgs/pkgs/applications/science/geometry/tetgen/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/logic/boolector/default.nix16
-rw-r--r--nixpkgs/pkgs/applications/science/logic/cedille/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/science/logic/coq/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/logic/gappa/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/logic/isabelle/default.nix27
-rw-r--r--nixpkgs/pkgs/applications/science/logic/leo3/binary.nix15
-rw-r--r--nixpkgs/pkgs/applications/science/logic/logisim/default.nix21
-rw-r--r--nixpkgs/pkgs/applications/science/logic/potassco/clingcon.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/logic/potassco/clingo.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/logic/satallax/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/logic/verifast/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/science/logic/workcraft/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/science/logic/z3/tptp.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/math/engauge-digitizer/default.nix60
-rw-r--r--nixpkgs/pkgs/applications/science/math/getdp/default.nix10
-rw-r--r--nixpkgs/pkgs/applications/science/math/gfan/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/math/mathematica/l10ns.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/math/nauty/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/math/pcalc/default.nix24
-rw-r--r--nixpkgs/pkgs/applications/science/math/polymake/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/math/pynac/default.nix48
-rw-r--r--nixpkgs/pkgs/applications/science/math/ratpoints/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/misc/golly/beta.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/misc/golly/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/misc/root/5.nix29
-rw-r--r--nixpkgs/pkgs/applications/science/misc/root/default.nix72
-rw-r--r--nixpkgs/pkgs/applications/science/misc/simgrid/default.nix20
-rw-r--r--nixpkgs/pkgs/applications/science/misc/snakemake/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/science/misc/toil/default.nix39
-rw-r--r--nixpkgs/pkgs/applications/science/programming/fdr/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/search/grepm/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/system/glances/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/alacritty/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/coreterminal/default.nix42
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/foot/default.nix16
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/terminator/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/delta/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/gh/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git-cola/default.nix10
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git-machete/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git-sync/default.nix12
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git-vendor/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/gitui/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitea/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/version-management/github-desktop/default.nix73
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitkraken/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/data.json10
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock2
-rw-r--r--nixpkgs/pkgs/applications/version-management/mercurial/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/version-management/monotone-viz/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/version-management/nbstripout/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/version-management/pijul/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/video/ccextractor/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/a4ksubtitles/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/certifi/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/chardet/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/dateutil/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/idna/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/inputstream-ffmpegdirect/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/inputstreamhelper/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/kodi-six/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/myconnpy/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/netflix/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/pdfreader/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/pvr-hdhomerun/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/pvr-hts/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/pvr-iptvsimple/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/requests/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/signals/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/urllib3/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/websocket/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/video/kodi-packages/youtube/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/video/kodi/wrapper.nix17
-rw-r--r--nixpkgs/pkgs/applications/video/streamlink/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/video/vdr/plugins.nix24
-rw-r--r--nixpkgs/pkgs/applications/video/wf-recorder/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/virtualization/containerd/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/cri-o/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/docker-compose/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/docker/buildx.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/docker/default.nix35
-rw-r--r--nixpkgs/pkgs/applications/virtualization/firecracker/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/virtualization/looking-glass-client/0001-client-all-fix-more-maybe-uninitialized-when-O3-is-i.patch45
-rw-r--r--nixpkgs/pkgs/applications/virtualization/looking-glass-client/default.nix52
-rw-r--r--nixpkgs/pkgs/applications/virtualization/open-vm-tools/default.nix53
-rw-r--r--nixpkgs/pkgs/applications/virtualization/podman/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/virtualization/podman/wrapper.nix8
-rw-r--r--nixpkgs/pkgs/applications/virtualization/qemu/default.nix22
-rw-r--r--nixpkgs/pkgs/applications/virtualization/runc/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/virtinst/default.nix47
-rw-r--r--nixpkgs/pkgs/applications/window-managers/afterstep/default.nix14
-rw-r--r--nixpkgs/pkgs/applications/window-managers/cage/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/window-managers/i3/lock-blur.nix21
-rw-r--r--nixpkgs/pkgs/applications/window-managers/i3/workstyle.nix8
-rw-r--r--nixpkgs/pkgs/applications/window-managers/leftwm/default.nix21
-rw-r--r--nixpkgs/pkgs/applications/window-managers/openbox/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/window-managers/phosh/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/window-managers/sway/bg.nix6
-rw-r--r--nixpkgs/pkgs/applications/window-managers/sway/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/window-managers/tinywl/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/window-managers/weston/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/window-managers/wmii-hg/default.nix1
-rw-r--r--nixpkgs/pkgs/build-support/appimage/default.nix2
-rw-r--r--nixpkgs/pkgs/build-support/build-fhs-userenv-bubblewrap/default.nix1
-rw-r--r--nixpkgs/pkgs/build-support/docker/default.nix1
-rw-r--r--nixpkgs/pkgs/build-support/emacs/elpa.nix6
-rw-r--r--nixpkgs/pkgs/build-support/emacs/generic.nix4
-rw-r--r--nixpkgs/pkgs/build-support/emacs/melpa.nix10
-rw-r--r--nixpkgs/pkgs/build-support/emacs/melpa2nix.el5
-rw-r--r--nixpkgs/pkgs/build-support/emacs/wrapper.nix7
-rwxr-xr-xnixpkgs/pkgs/build-support/fetchgit/nix-prefetch-git3
-rw-r--r--nixpkgs/pkgs/build-support/fetchurl/mirrors.nix6
-rw-r--r--nixpkgs/pkgs/build-support/icon-conv-tools/default.nix3
-rw-r--r--nixpkgs/pkgs/build-support/libredirect/default.nix5
-rw-r--r--nixpkgs/pkgs/build-support/nix-gitignore/default.nix5
-rw-r--r--nixpkgs/pkgs/build-support/rust/build-rust-crate/build-crate.nix1
-rw-r--r--nixpkgs/pkgs/build-support/rust/build-rust-crate/configure-crate.nix2
-rw-r--r--nixpkgs/pkgs/build-support/rust/import-cargo-lock.nix18
-rw-r--r--nixpkgs/pkgs/build-support/writers/test.nix2
-rw-r--r--nixpkgs/pkgs/data/documentation/anarchism/default.nix2
-rw-r--r--nixpkgs/pkgs/data/documentation/gnome-user-docs/default.nix4
-rw-r--r--nixpkgs/pkgs/data/documentation/man-pages/default.nix8
-rw-r--r--nixpkgs/pkgs/data/fonts/andika/default.nix4
-rw-r--r--nixpkgs/pkgs/data/fonts/cascadia-code/default.nix4
-rw-r--r--nixpkgs/pkgs/data/fonts/charis-sil/default.nix4
-rw-r--r--nixpkgs/pkgs/data/fonts/comic-neue/default.nix2
-rw-r--r--nixpkgs/pkgs/data/fonts/doulos-sil/default.nix4
-rw-r--r--nixpkgs/pkgs/data/fonts/iosevka/bin.nix2
-rw-r--r--nixpkgs/pkgs/data/fonts/joypixels/default.nix8
-rw-r--r--nixpkgs/pkgs/data/fonts/kanit/default.nix39
-rw-r--r--nixpkgs/pkgs/data/fonts/lobster-two/default.nix80
-rw-r--r--nixpkgs/pkgs/data/fonts/meslo-lg/default.nix1
-rw-r--r--nixpkgs/pkgs/data/fonts/noto-fonts/default.nix1
-rw-r--r--nixpkgs/pkgs/data/fonts/unifont/default.nix2
-rw-r--r--nixpkgs/pkgs/data/fonts/unscii/default.nix1
-rw-r--r--nixpkgs/pkgs/data/icons/kora-icon-theme/default.nix4
-rw-r--r--nixpkgs/pkgs/data/icons/qogir-icon-theme/default.nix17
-rw-r--r--nixpkgs/pkgs/data/machine-learning/mnist/default.nix2
-rw-r--r--nixpkgs/pkgs/data/misc/cacert/setup-hook.sh6
-rw-r--r--nixpkgs/pkgs/data/misc/hackage/pin.json8
-rw-r--r--nixpkgs/pkgs/data/misc/osinfo-db/default.nix2
-rw-r--r--nixpkgs/pkgs/data/misc/scowl/default.nix1
-rw-r--r--nixpkgs/pkgs/data/misc/shared-mime-info/default.nix6
-rw-r--r--nixpkgs/pkgs/data/misc/xorg-rgb/default.nix1
-rw-r--r--nixpkgs/pkgs/data/themes/flat-remix-gnome/default.nix4
-rw-r--r--nixpkgs/pkgs/data/themes/layan-gtk-theme/default.nix38
-rw-r--r--nixpkgs/pkgs/data/themes/matcha/default.nix4
-rw-r--r--nixpkgs/pkgs/data/themes/yaru/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/arcan/arcan.nix157
-rw-r--r--nixpkgs/pkgs/desktops/arcan/default.nix42
-rw-r--r--nixpkgs/pkgs/desktops/arcan/durden.nix39
-rw-r--r--nixpkgs/pkgs/desktops/arcan/pipeworld.nix46
-rw-r--r--nixpkgs/pkgs/desktops/arcan/prio.nix33
-rw-r--r--nixpkgs/pkgs/desktops/arcan/wrapper.nix28
-rw-r--r--nixpkgs/pkgs/desktops/arcan/xarcan.nix118
-rw-r--r--nixpkgs/pkgs/desktops/cinnamon/nemo/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-boxes/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-maps/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/evince/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-desktop/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/gnome/devtools/gnome-devel-docs/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/EasyScreenCast/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/appindicator/default.nix36
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/arcmenu/default.nix9
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/caffeine/default.nix7
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/clipboard-indicator/default.nix32
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/clock-override/default.nix9
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/dash-to-dock/default.nix5
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/dash-to-panel/default.nix5
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/default.nix7
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/disable-unredirect/default.nix31
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/draw-on-your-screen/default.nix29
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/drop-down-terminal/default.nix7
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/dynamic-panel-transparency/default.nix38
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/emoji-selector/default.nix9
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/extensionRenames.nix22
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/freon/default.nix9
-rwxr-xr-xnixpkgs/pkgs/desktops/gnome/extensions/fuzzy-app-search/default.nix27
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/gsconnect/default.nix5
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/gtile/default.nix32
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/hot-edge/default.nix33
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/icon-hider/default.nix7
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/impatience/default.nix7
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/manuallyPackaged.nix60
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/material-shell/default.nix35
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/mpris-indicator-button/default.nix42
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/night-theme-switcher/default.nix7
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/no-title-bar/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/noannoyance/default.nix31
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/paperwm/default.nix6
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/pidgin-im-integration/default.nix5
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/remove-dropdown-arrows/default.nix34
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/sound-output-device-chooser/default.nix5
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/system-monitor/default.nix9
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/taskwhisperer/default.nix5
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/tilingnome/default.nix9
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/timepp/default.nix28
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/topicons-plus/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/unite/default.nix9
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/window-corner-preview/default.nix8
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/window-is-ready-remover/default.nix28
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/workspace-matrix/default.nix36
-rw-r--r--nixpkgs/pkgs/desktops/gnustep/back/default.nix19
-rw-r--r--nixpkgs/pkgs/desktops/gnustep/base/default.nix21
-rw-r--r--nixpkgs/pkgs/desktops/gnustep/gorm/default.nix14
-rw-r--r--nixpkgs/pkgs/desktops/gnustep/gui/default.nix23
-rw-r--r--nixpkgs/pkgs/desktops/gnustep/make/default.nix9
-rw-r--r--nixpkgs/pkgs/desktops/lxde/core/lxappearance/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/mate/caja-with-extensions/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-code/default.nix24
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix8
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/default.nix6
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-music/default.nix15
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-photos/default.nix15
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix6
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-videos/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/artwork/elementary-sound-theme/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/granite/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/plasma-5/3rdparty/addons/krunner-symbols.nix40
-rw-r--r--nixpkgs/pkgs/desktops/plasma-5/default.nix1
-rw-r--r--nixpkgs/pkgs/development/arduino/platformio/core.nix124
-rw-r--r--nixpkgs/pkgs/development/beam-modules/default.nix1
-rw-r--r--nixpkgs/pkgs/development/beam-modules/elvis-erlang/default.nix46
-rw-r--r--nixpkgs/pkgs/development/beam-modules/elvis-erlang/rebar-deps.nix168
-rw-r--r--nixpkgs/pkgs/development/beam-modules/erlang-ls/default.nix5
-rw-r--r--nixpkgs/pkgs/development/beam-modules/erlfmt/default.nix2
-rw-r--r--nixpkgs/pkgs/development/beam-modules/rebar3-release.nix146
-rw-r--r--nixpkgs/pkgs/development/compilers/abcl/default.nix1
-rw-r--r--nixpkgs/pkgs/development/compilers/apache-flex-sdk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/binaryen/default.nix14
-rw-r--r--nixpkgs/pkgs/development/compilers/clasp/default.nix1
-rw-r--r--nixpkgs/pkgs/development/compilers/dmd/binary.nix1
-rw-r--r--nixpkgs/pkgs/development/compilers/emscripten/default.nix12
-rw-r--r--nixpkgs/pkgs/development/compilers/emscripten/package.json10
-rw-r--r--nixpkgs/pkgs/development/compilers/emscripten/yarn.lock601
-rw-r--r--nixpkgs/pkgs/development/compilers/emscripten/yarn.nix688
-rw-r--r--nixpkgs/pkgs/development/compilers/fennel/default.nix31
-rw-r--r--nixpkgs/pkgs/development/compilers/fpc/default.nix1
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc-arm-embedded/10/default.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc-arm-embedded/6/default.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc-arm-embedded/7/default.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc-arm-embedded/8/default.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc-arm-embedded/9/default.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/ghc/8.10.2-binary.nix271
-rw-r--r--nixpkgs/pkgs/development/compilers/ghc/8.10.4.nix51
-rw-r--r--nixpkgs/pkgs/development/compilers/ghc/8.6.5-binary.nix14
-rw-r--r--nixpkgs/pkgs/development/compilers/ghc/8.8.4.nix62
-rw-r--r--nixpkgs/pkgs/development/compilers/ghc/9.0.1.nix53
-rw-r--r--nixpkgs/pkgs/development/compilers/ghc/head.nix51
-rw-r--r--nixpkgs/pkgs/development/compilers/go/1.14.nix1
-rw-r--r--nixpkgs/pkgs/development/compilers/go/1.15.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/go/1.16.nix5
-rw-r--r--nixpkgs/pkgs/development/compilers/gprolog/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/idris2/default.nix3
-rw-r--r--nixpkgs/pkgs/development/compilers/inklecate/default.nix54
-rw-r--r--nixpkgs/pkgs/development/compilers/jrsonnet/default.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/julia/1.6-bin.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/kotlin/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/ldc/binary.nix1
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/X86-support-extension.patch4
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/libcxx/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/libunwind/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/lldb/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/llvm/default.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/openmp/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/mint/default.nix10
-rw-r--r--nixpkgs/pkgs/development/compilers/mint/shards.nix60
-rw-r--r--nixpkgs/pkgs/development/compilers/obliv-c/default.nix1
-rw-r--r--nixpkgs/pkgs/development/compilers/ocaml/4.13.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/11.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/polyml/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/ponyc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/ponyc/make-safe-for-sandbox.patch14
-rw-r--r--nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/rasm/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/sbcl/common.nix1
-rw-r--r--nixpkgs/pkgs/development/compilers/solc/default.nix1
-rw-r--r--nixpkgs/pkgs/development/compilers/vala/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/vyper/default.nix6
-rw-r--r--nixpkgs/pkgs/development/coq-modules/hierarchy-builder/default.nix12
-rw-r--r--nixpkgs/pkgs/development/coq-modules/math-classes/default.nix4
-rw-r--r--nixpkgs/pkgs/development/coq-modules/mathcomp-analysis/default.nix3
-rw-r--r--nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix7
-rw-r--r--nixpkgs/pkgs/development/guile-modules/guile-git/default.nix4
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/cabal2nix-unstable.nix6
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-common.nix52
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix2
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml19
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml1
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml138
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml12
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix5
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix2960
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/make-package-set.nix2
-rw-r--r--nixpkgs/pkgs/development/interpreters/clojure/clooj.nix10
-rw-r--r--nixpkgs/pkgs/development/interpreters/cyclone/default.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/eff/default.nix7
-rw-r--r--nixpkgs/pkgs/development/interpreters/gnu-apl/default.nix1
-rw-r--r--nixpkgs/pkgs/development/interpreters/hugs/default.nix8
-rw-r--r--nixpkgs/pkgs/development/interpreters/luajit/2.0.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/luajit/2.1.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/perl/aarch64-darwin.patch46
-rw-r--r--nixpkgs/pkgs/development/interpreters/perl/default.nix24
-rw-r--r--nixpkgs/pkgs/development/interpreters/perl/no-sys-dirs-5.29.patch251
-rw-r--r--nixpkgs/pkgs/development/interpreters/proglodyte-wasm/default.nix61
-rw-r--r--nixpkgs/pkgs/development/interpreters/pyrex/0.9.5.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/pyrex/0.9.6.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/cpython/default.nix26
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/cpython/virtualenv-permissions.patch13
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/default.nix47
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/pypy/default.nix12
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/pypy/dont_fetch_vendored_deps.patch12
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/pypy/sqlite_paths.patch12
-rw-r--r--nixpkgs/pkgs/development/interpreters/rascal/default.nix5
-rw-r--r--nixpkgs/pkgs/development/interpreters/ruby/default.nix20
-rw-r--r--nixpkgs/pkgs/development/interpreters/ruby/patchsets.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/ruby/rubygems/default.nix12
-rw-r--r--nixpkgs/pkgs/development/interpreters/ruby/rvm-patchsets.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/spidermonkey/68.nix13
-rw-r--r--nixpkgs/pkgs/development/interpreters/trealla/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/AntTweakBar/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/CGAL/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/NSPlist/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/PlistCpp/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/SDL/default.nix20
-rw-r--r--nixpkgs/pkgs/development/libraries/SDL_image/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/afflib/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/agda/standard-library/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/agg/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/amdvlk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/amrnb/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/appstream-glib/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/apr-util/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/apr/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/argp-standalone/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/atk/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/attr/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/audio/libbass/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/audio/libgme/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/avro-c++/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/avro-c/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/aws-c-common/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/bctoolbox/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/bearssl/default.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/boolstuff/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/boringssl/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/botan/generic.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/buddy/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/cddlib/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/chmlib/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/classads/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/clfft/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/cloog-ppl/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/cloog/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/cmark/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/csfml/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/dotnetfx35/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/dotnetfx40/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/dqlite/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/eclib/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/egl-wayland/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/enet/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/eventlog/default.nix17
-rw-r--r--nixpkgs/pkgs/development/libraries/exiv2/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/expat/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/farstream/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/fastpbkdf2/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/fcft/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/fflas-ffpack/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/ffmpeg/4.nix18
-rw-r--r--nixpkgs/pkgs/development/libraries/flann/default.nix59
-rw-r--r--nixpkgs/pkgs/development/libraries/flint/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/fltk/1.4.nix52
-rw-r--r--nixpkgs/pkgs/development/libraries/fltk/common.nix205
-rw-r--r--nixpkgs/pkgs/development/libraries/fltk/default.nix49
-rw-r--r--nixpkgs/pkgs/development/libraries/folks/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/fontconfig/default.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/fox/fox-1.6.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/fplll/20160331.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/freeglut/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/freenect/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/freetts/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/funambol/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/galario/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/garmintools/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/gcc/libstdc++/5.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/givaro/3.7.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/givaro/3.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/givaro/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/glew/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/glfw/3.x.nix24
-rw-r--r--nixpkgs/pkgs/development/libraries/glfw/wayland.patch25
-rw-r--r--nixpkgs/pkgs/development/libraries/glibc/2.32-master.patch.gzbin66850 -> 0 bytes
-rw-r--r--nixpkgs/pkgs/development/libraries/glibc/2.33-master.patch.gzbin0 -> 56984 bytes
-rw-r--r--nixpkgs/pkgs/development/libraries/glibc/common.nix23
-rw-r--r--nixpkgs/pkgs/development/libraries/glibc/dont-use-system-ld-so-cache.patch60
-rw-r--r--nixpkgs/pkgs/development/libraries/globalarrays/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/gloox/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/gnet/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/goocanvas/2.x.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/gpgme/default.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/grpc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gsasl/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/gsl/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/bad/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/base/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/core/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/devtools/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/ges/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gstreamer/rtsp-server/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/gtkimageview/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/gtkspell/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/hawknl/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/highfive/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/http-parser/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/id3lib/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/ilixi/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/iml/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/imlib/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/jansson/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/java/commons/daemon/default.nix25
-rw-r--r--nixpkgs/pkgs/development/libraries/java/rhino/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/java/saxon/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/jbigkit/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/jsoncpp/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/judy/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/jxrlib/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/kcolorpicker/default.nix24
-rw-r--r--nixpkgs/pkgs/development/libraries/kde-frameworks/kimageformats.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/kdsoap/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/kimageannotator/default.nix24
-rw-r--r--nixpkgs/pkgs/development/libraries/lcms2/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/leatherman/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/lesstif/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/levmar/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libHX/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libantlr3c/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libasyncns/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libaudclient/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libavc1394/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libb64/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libbladeRF/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/libblocksruntime/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/libcddb/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libcdr/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libcec/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libcec/platform.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libclc/default.nix35
-rw-r--r--nixpkgs/pkgs/development/libraries/libconfig/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/libcprime/default.nix40
-rw-r--r--nixpkgs/pkgs/development/libraries/libcredis/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libdaemon/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libdbi/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libdivsufsort/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libdrm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libdynd/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libelf/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libestr/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libewf/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libexttextcat/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libf2c/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/libffi/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libfishsound/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libfpx/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libftdi/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libgnt/default.nix37
-rw-r--r--nixpkgs/pkgs/development/libraries/libgssglue/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libgxps/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/libhangul/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libibmad/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libibumad/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libiodbc/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libiptcdata/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libixp-hg/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libjson/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libkate/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libkeyfinder/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/liblastfmSF/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/liblo/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/liblqr-1/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/libltc/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libmcrypt/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libmemcached/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libmng/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libmnl/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libmodplug/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libmodulemd/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libmongo-client/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libmp3splt/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libmpc/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libmpcdec/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libmrss/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libmusicbrainz/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libmwaw/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/libnatspec/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/liboauth/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libofa/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/liboggz/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/liboping/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libopus/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libopusenc/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libossp-uuid/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libowfat/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libpar2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libproxy/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/libraw1394/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libre/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libresample/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/librevisa/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/librsvg/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libs3/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/libsamplerate/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libserialport/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libshout/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libsidplayfp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libsodium/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libspatialindex/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libspectre/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libspectrum/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libstatgrab/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libstroke/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libtgvoip/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libtheora/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libtiff/aarch64-darwin.nix53
-rw-r--r--nixpkgs/pkgs/development/libraries/libtiff/default.nix23
-rw-r--r--nixpkgs/pkgs/development/libraries/libtiff/headers-cmake.patch13
-rw-r--r--nixpkgs/pkgs/development/libraries/libtiff/headers.patch27
-rw-r--r--nixpkgs/pkgs/development/libraries/libu2f-server/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libuldaq/0001-uldaq.patch28
-rw-r--r--nixpkgs/pkgs/development/libraries/libuldaq/default.nix34
-rw-r--r--nixpkgs/pkgs/development/libraries/libuv/default.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/libva/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libvirt-glib/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libvisual/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libvorbis/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libvterm/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libwebsockets/default.nix23
-rw-r--r--nixpkgs/pkgs/development/libraries/libwpg/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libx86/src-for-default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libxc/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libxkbcommon/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/libxklavier/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libxlsxwriter/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libxmi/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libxmp/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libxsmm/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/libykneomgr/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libyubikey/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libzmf/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/linbox/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/lirc/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/log4cpp/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/lzo/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/matio/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/mdds/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/mesa/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/microsoft_gsl/default.nix48
-rw-r--r--nixpkgs/pkgs/development/libraries/mp4v2/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/mpfi/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/mpir/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/msilbc/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/mtdev/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/mysocketw/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/nanopb/test-message-with-annotations/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/nanopb/test-message-with-options/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/nanopb/test-simple-proto2/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/nanopb/test-simple-proto3/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/ndpi/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/nix-plugins/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/notcurses/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/nss/3.53.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/ntrack/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/nvidia-video-sdk/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/ode/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/opencolorio/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/opencore-amr/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/openexr/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/openwsman/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix38
-rw-r--r--nixpkgs/pkgs/development/libraries/orocos-kdl/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/osip/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/phash/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/physics/hepmc3/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/physics/yoda/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/plib/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/pmix/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/polkit/default.nix26
-rw-r--r--nixpkgs/pkgs/development/libraries/portaudio/default.nix36
-rw-r--r--nixpkgs/pkgs/development/libraries/proj/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/psqlodbc/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/qmlbox2d/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/qoauth/default.nix17
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/5.12/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/qt-5/5.15/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/qtwebkit-plugins/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/qwt/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/rdkafka/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/readosm/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/safefile/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/sbc/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/sblim-sfcc/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/schroedinger/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/science/astronomy/wcslib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/biology/EBTKS/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/lcalc/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/liblapack/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/liblbfgs/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/lrs/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/metis/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/openspecfun/default.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/petsc/default.nix77
-rw-r--r--nixpkgs/pkgs/development/libraries/scmccid/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/sfml/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/shhopt/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/slib/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/snack/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/soprano/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/spandsp/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/speexdsp/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/startup-notification/default.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/stlport/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/tachyon/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/taglib-extras/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/tclap/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/tezos-rust-libs/default.nix36
-rw-r--r--nixpkgs/pkgs/development/libraries/tidyp/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/tokyo-cabinet/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/totem-pl-parser/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/tre/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/ucommon/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/uthash/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/vapoursynth/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/vcdimager/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/volume-key/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/vxl/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/wildmidi/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/wlroots/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/wolfssl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/wtk/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/wxwidgets/2.9/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/xbase/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/xlibs-wrapper/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/xmlrpc-c/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/xmlsec/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/yajl/default.nix14
-rw-r--r--nixpkgs/pkgs/development/libraries/zimg/default.nix4
-rw-r--r--nixpkgs/pkgs/development/misc/avr/libc/default.nix7
-rw-r--r--nixpkgs/pkgs/development/misc/avr8-burn-omat/default.nix7
-rw-r--r--nixpkgs/pkgs/development/misc/h3/default.nix4
-rw-r--r--nixpkgs/pkgs/development/misc/resholve/resholve.nix2
-rw-r--r--nixpkgs/pkgs/development/misc/stm32/betaflight/default.nix8
-rw-r--r--nixpkgs/pkgs/development/misc/stm32/inav/default.nix8
-rw-r--r--nixpkgs/pkgs/development/mobile/abootimg/default.nix7
-rw-r--r--nixpkgs/pkgs/development/mobile/flashtool/default.nix62
-rw-r--r--nixpkgs/pkgs/development/node-packages/default.nix107
-rwxr-xr-xnixpkgs/pkgs/development/node-packages/generate.sh2
-rw-r--r--nixpkgs/pkgs/development/node-packages/node-env.nix10
-rw-r--r--nixpkgs/pkgs/development/node-packages/node-packages.json10
-rw-r--r--nixpkgs/pkgs/development/node-packages/node-packages.nix11228
-rw-r--r--nixpkgs/pkgs/development/node-packages/package-tests/autoprefixer.nix25
-rw-r--r--nixpkgs/pkgs/development/node-packages/package-tests/postcss-cli.nix45
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/alcotest/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/bls12-381/default.nix38
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/data-encoding/default.nix46
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ff/default.nix32
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/fiat-p256/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/hacl-star/default.nix18
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/hacl-star/raw.nix51
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/http/default.nix39
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/index/default.nix7
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/irmin/pack.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/irmin/ppx.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/json-data-encoding/bson.nix20
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/json-data-encoding/default.nix31
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/luv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/lwt-watcher/default.nix30
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mdx/default.nix10
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mirage-block-ramdisk/default.nix5
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mirage-channel/default.nix5
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mirage-flow/unix.nix5
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ocaml-lsp/lsp.nix11
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ocaml-monadic/default.nix9
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/odoc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/pcre/default.nix28
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/repr/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/repr/ppx.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/resto/acl.nix13
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/resto/cohttp-client.nix20
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/resto/cohttp-self-serving-client.nix27
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/resto/cohttp-server.nix25
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/resto/cohttp.nix12
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/resto/default.nix28
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/resto/directory.nix11
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/resto/ezresto-directory.nix13
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/resto/ezresto.nix12
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/resto/json.nix12
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ringo/default.nix28
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ringo/lwt.nix17
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/secp256k1-internal/default.nix48
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/tcpip/default.nix8
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/uecc/default.nix34
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/yojson/default.nix46
-rw-r--r--nixpkgs/pkgs/development/python-modules/APScheduler/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/Cython/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/adb-shell/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/addict/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/advantage-air/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/agate-sql/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ailment/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiocontextvars/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioftp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioguardian/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiohttp-jinja2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiohttp-remotes/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiohttp-wsgi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiojobs/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiopg/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiosmb/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiostream/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/alembic/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/angr/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/angrop/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible/base.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible/core.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible/legacy.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/apache-airflow/default.nix218
-rw-r--r--nixpkgs/pkgs/development/python-modules/apache-airflow/package.json80
-rw-r--r--nixpkgs/pkgs/development/python-modules/apache-airflow/yarn.lock7740
-rw-r--r--nixpkgs/pkgs/development/python-modules/apache-airflow/yarn.nix8485
-rw-r--r--nixpkgs/pkgs/development/python-modules/apprise/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/archinfo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/argcomplete/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aria2p/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/arpeggio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/arrow/2.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/asgi-csrf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/asyncio_mqtt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/atpublic/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/awkward/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/awkward0/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aws-sam-translator/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-appconfiguration/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-eventhub/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-compute/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-extendedlocation/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-signalr/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-servicebus/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bacpypes/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bellows/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/beniget/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/betamax-matchers/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bleach/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bleak/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/blocksat-cli/default.nix49
-rw-r--r--nixpkgs/pkgs/development/python-modules/breezy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/btrees/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/build/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/cachelib/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/cairocffi/0_9.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/cairocffi/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/cairocffi/generic.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/capturer/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/cattrs/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/certbot/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/cfn-flip/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/cftime/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/chardet/2.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cheroot/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cherrypy/17.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cherrypy/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/chiapos/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch2
-rw-r--r--nixpkgs/pkgs/development/python-modules/chiavdf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ci-py/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/claripy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cle/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/clickclick/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/convertdate/2.2.x.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/cookiecutter/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/coveralls/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cramjam/Cargo.lock520
-rw-r--r--nixpkgs/pkgs/development/python-modules/cramjam/default.nix60
-rw-r--r--nixpkgs/pkgs/development/python-modules/crate/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/crytic-compile/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/cssselect2/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/dacite/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/daphne/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/datasette/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dbus-next/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/debugpy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/defcon/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/devtools/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/diceware/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dill/default.nix50
-rw-r--r--nixpkgs/pkgs/development/python-modules/diskcache/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/distutils_extra/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/django-extensions/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/django_guardian/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/docker/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dockerfile-parse/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dogpile.cache/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dropbox/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dulwich/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dyn/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/easysnmp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/editables/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/enlighten/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/env-canada/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/ev3dev2/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/faker/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/fastapi/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/fastpair/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/fastparquet/default.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/favicon/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ffmpeg-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/flake8-future-import/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/flake8/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/flask-appbuilder/upgrade-to-flask_jwt_extended-4.patch45
-rw-r--r--nixpkgs/pkgs/development/python-modules/flask-caching/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/flask-restx/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/flickrapi/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/flufl/lock.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/fontmath/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/fritzprofiles/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/furl/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/garminconnect-ha/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/gast/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/genanki/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/geographiclib/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/geopy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gidgethub/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gios/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-i18n-address/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/gprof2dot/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/gradient/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/grandalf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/graphene/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/graphtage/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/graspologic/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/greenlet/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/grpcio-tools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gruut-ipa/default.nix47
-rw-r--r--nixpkgs/pkgs/development/python-modules/gruut/default.nix74
-rw-r--r--nixpkgs/pkgs/development/python-modules/gruut/language-pack.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/guessit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gunicorn/19.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gunicorn/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gym/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/h2/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/hap-python/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/hatasmota/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/hcloud/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/hickle/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/homepluscontrol/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/httpcore/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/httplib2/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/httpx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/hypercorn/default.nix49
-rw-r--r--nixpkgs/pkgs/development/python-modules/hypothesis/2.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/hyppo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/identify/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ignite/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/image-match/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/inform/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/inquirer/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/iocapture/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ipydatawidgets/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/iso3166/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/jedi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jira/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/json5/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/jsonlines/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jupyterlab_server/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/keras/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/keyutils/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/langdetect/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/lazy_import/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/libagent/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/libais/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/libcloud/2.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/libcloud/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/libsass/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/liquidctl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/loguru/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/lomond/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/lyricwikia/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/m3u8/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/marisa-trie/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/markdownsuperscript/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/markupsafe/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/marshmallow-oneofschema/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/marshmallow-polyfield/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mat2/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/matchpy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/matrix-client/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mautrix/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mccabe/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mcstatus/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/measurement/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mesonpep517/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/minidb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/minio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mne-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/multidict/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/multiset/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mwclient/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mwparserfromhell/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nampa/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/natsort/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nbdime/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nbval/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ndjson/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nengo/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/nettigo-air-monitor/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/nexia/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nipype/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/nix-prefetch-github/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/nplusone/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/numba/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/numpy-stl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/omegaconf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/openapi-schema-validator/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/openapi-spec-validator/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/opensimplex/default.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/orm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/packet-python/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/paho-mqtt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/papermill/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/papis/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/parameterizedtestcase/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/parse-type/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/parsedatetime/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/paste/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pastedeploy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/periodictable/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pglast/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/phonemizer/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/phonenumbers/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/phonopy/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/pillow/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pillow/generic.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/plaster-pastedeploy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/plaster/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/plexapi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/plugwise/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/poetry/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/portalocker/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/portend/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/prance/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/praw/6.3.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/prawcore/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pre-commit-hooks/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/prefixed/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/property-manager/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/psautohint/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pure-eval/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/pure-python-adb-homeassistant/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/push-receiver/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/pwntools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/py-multibase/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/py17track/default.nix61
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyavm/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/pybtex/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/pycategories/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/pydeconz/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pydicom/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyee/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyeight/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyfronius/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyftdi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygal/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygame-gui/default.nix53
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygame/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyhocon/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/pylint/1.9.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyls-flake8/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyls-isort/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyls-mypy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pylsp-mypy/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/pylti/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pylutron/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymatgen-lammps/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymunk/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/pynacl/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/pync/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/pynvim/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyosf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pypandoc/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/pypandoc/new-pandoc-headings.patch22
-rw-r--r--nixpkgs/pkgs/development/python-modules/pypandoc/skip-tests.patch8
-rw-r--r--nixpkgs/pkgs/development/python-modules/pypandoc/static-pandoc-path.patch3
-rw-r--r--nixpkgs/pkgs/development/python-modules/pypck/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyqtgraph/default.nix51
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysma/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysrim/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyswitchbot/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytenable/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-astropy-header/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-astropy/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-django/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-factoryboy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-filter-subpackage/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-httpserver/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-pylint/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-randomly/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-runner/2.nix (renamed from nixpkgs/pkgs/development/python-modules/pytestrunner/2.nix)0
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-runner/default.nix (renamed from nixpkgs/pkgs/development/python-modules/pytestrunner/default.nix)0
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-shutil/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-timeout/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-virtualenv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-crfsuite/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-hosts/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-jsonrpc-server/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-language-server/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-lsp-black/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-lsp-server/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-lz4/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-multipart/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-nvd3/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-registry/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-slugify/default.nix51
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-twitter/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-wifi/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/pythran/0001-hardcode-path-to-libgomp.patch64
-rw-r--r--nixpkgs/pkgs/development/python-modules/pythran/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyupgrade/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyutil/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyvex/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyvicare/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyvips/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyyaml/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/qcelemental/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/qcengine/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/questionary/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/rasterio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ratelim/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/readchar/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/rebulk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/reflink/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/reikna/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/requests-cache/default.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/requests-futures/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/resampy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/rising/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/rtoml/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/runway-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/rxv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-build/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/scp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/scrapy-fake-useragent/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/secp256k1/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/setuptoolstrial/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sfepy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/shellingham/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/simanneal/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/skorch/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/skytemple-dtef/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/slack-sdk/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/slackclient/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/slowapi/default.nix63
-rw-r--r--nixpkgs/pkgs/development/python-modules/smart-open/default.nix76
-rw-r--r--nixpkgs/pkgs/development/python-modules/soco/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/softlayer/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinx-copybutton/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/sqlalchemy-jsonfield/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/sqlalchemy/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/srptools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ssdeep/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sseclient/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/stack-data/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/stone/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/stripe/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/stups-cli-support/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/stups-fullstop/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/stups-pierone/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/stups-tokens/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/stups-zign/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/subarulink/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/subliminal/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/sunpy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/surepy/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/tablib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/tatsu/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/teletype/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/tempora/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/tesserocr/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/textwrap3/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/threadpoolctl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/timezonefinder/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/tinycss2/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/tinydb/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/toggl-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/token-bucket/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/tomli/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/torchgpipe/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/tvdb_api/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/twine/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/twitterapi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/typer/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/typesentry/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/typesystem/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/uamqp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/uarray/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/uncertainties/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/urllib3/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/variants/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/vdirsyncer/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/venusian/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/vultr/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/warrant/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/watchdog/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/weasyprint/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/webexteamssdk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/wled/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/word2vec/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/wordcloud/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/xdis/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/xml2rfc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/yalexs/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/yarl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/yfinance/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/zeep/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/zeroconf/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/zfec/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/zigpy-znp/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/zigpy/default.nix19
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/bundix/default.nix1
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix7
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/gem/default.nix5
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/solargraph/Gemfile2
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/solargraph/Gemfile.lock64
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/solargraph/default.nix16
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/solargraph/gemset.nix250
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/with-packages/Gemfile1
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/with-packages/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/cpplint/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/emma/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/findbugs/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/flow/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/frama-c/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/garcosim/tracefilegen/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/garcosim/tracefilesim/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/makefile2graph/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/radare2/default.nix1
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/rizin/default.nix1
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/smatch/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/sparse/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/splint/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/swarm/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/tfsec/default.nix19
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/valgrind/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/valkyrie/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/apksigcopier/default.nix13
-rw-r--r--nixpkgs/pkgs/development/tools/asn2quickder/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/async-profiler/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/aws-sam-cli/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/azure-functions-core-tools/default.nix74
-rw-r--r--nixpkgs/pkgs/development/tools/bazelisk/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/buf/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/apache-ant/1.9.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/apache-ant/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/gnumake/0001-No-impure-bin-sh.patch35
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/gnumake/0002-remove-impure-dirs.patch40
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/glibc-2.33-glob.patch17
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/gnumake/default.nix16
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/gnumake/impure-dirs.patch25
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/jam/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/mill/default.nix16
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/mk/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/rebar/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/rebar3/tmp-tests-skip.patch17
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/redo/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/buildah/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/butane/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/cask/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/cdecl/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/chefdk/default.nix3
-rw-r--r--nixpkgs/pkgs/development/tools/cloudsmith-cli/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/drone-cli/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/drone/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/github-runner/default.nix15
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/database/liquibase/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/database/sqldeveloper/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/database/sqlfluff/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/database/squirrel-sql/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/delve/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/doctl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/earthly/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/efm-langserver/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/electron/default.nix48
-rw-r--r--nixpkgs/pkgs/development/tools/esbuild/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/fdroidserver/default.nix11
-rw-r--r--nixpkgs/pkgs/development/tools/flyway/default.nix71
-rw-r--r--nixpkgs/pkgs/development/tools/frugal/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/gnulib/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/go-task/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/gopls/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/java/fastjar/default.nix45
-rw-r--r--nixpkgs/pkgs/development/tools/jq/default.nix1
-rw-r--r--nixpkgs/pkgs/development/tools/ko/default.nix31
-rw-r--r--nixpkgs/pkgs/development/tools/kubectx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/kubie/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/lattice-diamond/default.nix25
-rw-r--r--nixpkgs/pkgs/development/tools/libsigrokdecode/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/mdk/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/minizinc/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/minizinc/ide.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/misc/autobuild/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/avrdude/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/babeltrace/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/bossa/default.nix3
-rw-r--r--nixpkgs/pkgs/development/tools/misc/cbrowser/default.nix11
-rw-r--r--nixpkgs/pkgs/development/tools/misc/cflow/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/chrpath/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/misc/clojure-lsp/disable-check-toolchain.patch12
-rw-r--r--nixpkgs/pkgs/development/tools/misc/cppi/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/cscope/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/dbench/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/misc/ddd/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/debugedit/default.nix30
-rw-r--r--nixpkgs/pkgs/development/tools/misc/dejagnu/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/dfu-programmer/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/doclifter/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/misc/drush/default.nix11
-rw-r--r--nixpkgs/pkgs/development/tools/misc/eggdbus/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/elfkickers/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/misc/gede/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/gnum4/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/misc/go-md2man/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/gperf/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/gtkdialog/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/misc/gtkperf/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/misc/help2man/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/icon-naming-utils/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/indent/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/itstool/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/jscoverage/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/libtool/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/ltrace/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/misc/lttv/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/luarocks/default.nix1
-rw-r--r--nixpkgs/pkgs/development/tools/misc/nixbang/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/prelink/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/misc/reviewdog/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/misc/rman/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/misc/sloccount/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/srecord/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/stm32flash/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/misc/strace/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/terracognita/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/uisp/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/mold/default.nix39
-rw-r--r--nixpkgs/pkgs/development/tools/neoload/default.nix9
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/camlp5/default.nix13
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/obuild/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/ocamlbuild/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/ocamlify/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/ocamlscript/default.nix7
-rwxr-xr-xnixpkgs/pkgs/development/tools/omnisharp-roslyn/create-deps.sh66
-rw-r--r--nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix106
-rw-r--r--nixpkgs/pkgs/development/tools/omnisharp-roslyn/deps.nix2210
-rw-r--r--nixpkgs/pkgs/development/tools/open-policy-agent/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/packer/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/pandoc/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/bisonc++/default.nix1
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/peg/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammar.nix3
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix1
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json10
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/phantomjs/default.nix9
-rw-r--r--nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/postiats-utilities/default.nix17
-rw-r--r--nixpkgs/pkgs/development/tools/profiling/malt/default.nix34
-rw-r--r--nixpkgs/pkgs/development/tools/profiling/oprofile/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/pscale/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/pydb/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/quilt/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/rq/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-make/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-watch/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/racer/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/shellcheck/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/sigrok-cli/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/sourcetrail/jedi.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/spirv-tools/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/sslmate/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/stylua/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/sunxi-tools/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/tabnine/default.nix9
-rw-r--r--nixpkgs/pkgs/development/tools/tradcpp/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/unityhub/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/vagrant/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/vagrant/gemset.nix42
-rw-r--r--nixpkgs/pkgs/development/tools/vim-vint/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/vndr/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/wiggle/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/winpdb/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/xib2nib/default.nix3
-rw-r--r--nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/README.md24
-rw-r--r--nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/cypress-example-kitchensink.nix17
-rw-r--r--nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/default.nix59
-rw-r--r--nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/node-env.nix567
-rw-r--r--nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/node-packages.nix10290
-rwxr-xr-xnixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/regen-nix21
-rw-r--r--nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/regen-nix.nix8
-rw-r--r--nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/src.nix6
-rw-r--r--nixpkgs/pkgs/development/web/cypress/default.nix44
-rw-r--r--nixpkgs/pkgs/development/web/deno/default.nix6
-rw-r--r--nixpkgs/pkgs/development/web/deno/librusty_v8.nix10
-rw-r--r--nixpkgs/pkgs/development/web/flyctl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/web/insomnia/default.nix4
-rw-r--r--nixpkgs/pkgs/development/web/nodejs/v16.nix4
-rw-r--r--nixpkgs/pkgs/development/web/now-cli/default.nix2
-rw-r--r--nixpkgs/pkgs/games/0ad/wrapper.nix2
-rw-r--r--nixpkgs/pkgs/games/anki/bin.nix8
-rw-r--r--nixpkgs/pkgs/games/cdogs-sdl/default.nix4
-rw-r--r--nixpkgs/pkgs/games/dwarf-fortress/default.nix2
-rw-r--r--nixpkgs/pkgs/games/dwarf-fortress/dfhack/default.nix7
-rw-r--r--nixpkgs/pkgs/games/dwarf-fortress/game.json14
-rw-r--r--nixpkgs/pkgs/games/dwarf-fortress/game.nix3
-rw-r--r--nixpkgs/pkgs/games/dwarf-fortress/themes/themes.json40
-rw-r--r--nixpkgs/pkgs/games/dwarf-fortress/twbt/default.nix6
-rw-r--r--nixpkgs/pkgs/games/dwarf-fortress/unfuck.nix14
-rw-r--r--nixpkgs/pkgs/games/empty-epsilon/0001-bundle-system-glm-in-seriousproton.patch34
-rw-r--r--nixpkgs/pkgs/games/empty-epsilon/default.nix53
-rw-r--r--nixpkgs/pkgs/games/factorio/versions.json16
-rw-r--r--nixpkgs/pkgs/games/fairymax/default.nix1
-rw-r--r--nixpkgs/pkgs/games/fish-fillets-ng/default.nix1
-rw-r--r--nixpkgs/pkgs/games/flare/default.nix4
-rw-r--r--nixpkgs/pkgs/games/flare/desktop.patch15
-rw-r--r--nixpkgs/pkgs/games/flare/engine.nix6
-rw-r--r--nixpkgs/pkgs/games/flare/game.nix4
-rw-r--r--nixpkgs/pkgs/games/grapejuice/default.nix4
-rw-r--r--nixpkgs/pkgs/games/iortcw/default.nix2
-rw-r--r--nixpkgs/pkgs/games/mudlet/default.nix12
-rw-r--r--nixpkgs/pkgs/games/openrct2/default.nix20
-rw-r--r--nixpkgs/pkgs/games/osu-lazer/default.nix4
-rw-r--r--nixpkgs/pkgs/games/osu-lazer/deps.nix24
-rw-r--r--nixpkgs/pkgs/games/papermc/default.nix6
-rw-r--r--nixpkgs/pkgs/games/powermanga/default.nix58
-rw-r--r--nixpkgs/pkgs/games/simutrans/default.nix18
-rw-r--r--nixpkgs/pkgs/games/steam/fhsenv.nix2
-rw-r--r--nixpkgs/pkgs/games/steam/runtime.nix4
-rw-r--r--nixpkgs/pkgs/games/tecnoballz/default.nix68
-rw-r--r--nixpkgs/pkgs/games/the-powder-toy/default.nix19
-rw-r--r--nixpkgs/pkgs/games/uchess/default.nix2
-rw-r--r--nixpkgs/pkgs/games/unciv/default.nix4
-rw-r--r--nixpkgs/pkgs/games/xmoto/default.nix69
-rw-r--r--nixpkgs/pkgs/games/xsok/default.nix1
-rw-r--r--nixpkgs/pkgs/games/zandronum/sqlite.nix2
-rw-r--r--nixpkgs/pkgs/misc/acpilight/default.nix2
-rw-r--r--nixpkgs/pkgs/misc/apulse/pressureaudio.nix6
-rw-r--r--nixpkgs/pkgs/misc/drivers/hplip/default.nix70
-rw-r--r--nixpkgs/pkgs/misc/emulators/fs-uae-launcher/default.nix28
-rw-r--r--nixpkgs/pkgs/misc/emulators/punes/default.nix10
-rw-r--r--nixpkgs/pkgs/misc/emulators/ryujinx/default.nix15
-rw-r--r--nixpkgs/pkgs/misc/emulators/ryujinx/deps.nix15
-rw-r--r--nixpkgs/pkgs/misc/emulators/wine/sources.nix9
-rw-r--r--nixpkgs/pkgs/misc/emulators/yuzu/base.nix25
-rw-r--r--nixpkgs/pkgs/misc/emulators/yuzu/default.nix8
-rw-r--r--nixpkgs/pkgs/misc/flashfocus/default.nix6
-rw-r--r--nixpkgs/pkgs/misc/screensavers/xscreensaver/default.nix1
-rw-r--r--nixpkgs/pkgs/misc/tmux-plugins/default.nix4
-rw-r--r--nixpkgs/pkgs/misc/uboot/default.nix7
-rw-r--r--nixpkgs/pkgs/misc/vim-plugins/generated.nix942
-rw-r--r--nixpkgs/pkgs/misc/vim-plugins/overrides.nix24
-rw-r--r--nixpkgs/pkgs/misc/vim-plugins/vim-plugin-names20
-rw-r--r--nixpkgs/pkgs/misc/vscode-extensions/default.nix102
-rw-r--r--nixpkgs/pkgs/misc/vscode-extensions/terraform/default.nix6
-rw-r--r--nixpkgs/pkgs/misc/vscode-extensions/terraform/fix-terraform-ls.patch38
-rwxr-xr-xnixpkgs/pkgs/misc/vscode-extensions/update_installed_exts.sh2
-rw-r--r--nixpkgs/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/alsa-project/alsa-ucm-conf/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/atop/default.nix1
-rw-r--r--nixpkgs/pkgs/os-specific/linux/bluez/default.nix15
-rw-r--r--nixpkgs/pkgs/os-specific/linux/cryptsetup/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/dmtcp/default.nix10
-rw-r--r--nixpkgs/pkgs/os-specific/linux/dmtcp/ld-linux-so-buffer-size.patch14
-rw-r--r--nixpkgs/pkgs/os-specific/linux/ell/default.nix2
-rw-r--r--nixpkgs/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix6
-rw-r--r--nixpkgs/pkgs/os-specific/linux/g15daemon/default.nix2
-rw-r--r--nixpkgs/pkgs/os-specific/linux/hyperv-daemons/default.nix9
-rw-r--r--nixpkgs/pkgs/os-specific/linux/iio-sensor-proxy/default.nix1
-rw-r--r--nixpkgs/pkgs/os-specific/linux/iproute/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/iptables/default.nix1
-rw-r--r--nixpkgs/pkgs/os-specific/linux/iwd/default.nix2
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/generate-config.pl3
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/generic.nix24
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/hardened/patches.json30
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-4.14.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-4.19.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-4.4.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-4.9.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-5.10.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-5.12.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-5.13.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-5.4.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-libre.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-lqx.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix6
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix6
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix49
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-xanmod.nix6
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/manual-config.nix16
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kinect-audio-setup/default.nix91
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kinect-audio-setup/libusb-1-import-path.patch23
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kinect-audio-setup/udev-rules-extra-devices.patch15
-rw-r--r--nixpkgs/pkgs/os-specific/linux/libnl/default.nix1
-rw-r--r--nixpkgs/pkgs/os-specific/linux/linuxptp/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/lsiutil/default.nix59
-rw-r--r--nixpkgs/pkgs/os-specific/linux/lxc/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/lxcfs/default.nix4
-rwxr-xr-xnixpkgs/pkgs/os-specific/linux/nvidia-x11/builder.sh2
-rw-r--r--nixpkgs/pkgs/os-specific/linux/setools/default.nix8
-rw-r--r--nixpkgs/pkgs/os-specific/linux/syslinux/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/systemd/default.nix7
-rw-r--r--nixpkgs/pkgs/os-specific/linux/wooting-udev-rules/default.nix2
-rw-r--r--nixpkgs/pkgs/os-specific/linux/xf86-input-wacom/default.nix12
-rw-r--r--nixpkgs/pkgs/os-specific/linux/xmm7360-pci/default.nix28
-rw-r--r--nixpkgs/pkgs/os-specific/windows/mingw-w64/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/althttpd/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/bazarr/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/code-server/default.nix23
-rw-r--r--nixpkgs/pkgs/servers/consul/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/dict/dictd-db.nix2
-rw-r--r--nixpkgs/pkgs/servers/dns/doh-proxy/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/dns/knot-dns/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/foundationdb/vsmake.nix2
-rw-r--r--nixpkgs/pkgs/servers/ftp/bftpd/default.nix1
-rw-r--r--nixpkgs/pkgs/servers/headscale/default.nix26
-rw-r--r--nixpkgs/pkgs/servers/heisenbridge/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/hockeypuck/server.nix21
-rw-r--r--nixpkgs/pkgs/servers/hockeypuck/sources.nix16
-rw-r--r--nixpkgs/pkgs/servers/hockeypuck/web.nix28
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/0001-tests-ignore-OSErrors-in-hass-fixture.patch27
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/component-packages.nix29
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/default.nix52
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/frontend.nix4
-rwxr-xr-xnixpkgs/pkgs/servers/home-assistant/update.sh8
-rw-r--r--nixpkgs/pkgs/servers/hqplayerd/default.nix12
-rw-r--r--nixpkgs/pkgs/servers/http/jetty/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/http/nginx/mainline.nix4
-rw-r--r--nixpkgs/pkgs/servers/http/nginx/quic.nix4
-rw-r--r--nixpkgs/pkgs/servers/http/nix-binary-cache/default.nix3
-rw-r--r--nixpkgs/pkgs/servers/http/openresty/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/http/unit/default.nix8
-rw-r--r--nixpkgs/pkgs/servers/hylafaxplus/default.nix7
-rw-r--r--nixpkgs/pkgs/servers/hylafaxplus/libtiff-4.patch12
-rw-r--r--nixpkgs/pkgs/servers/icingaweb2/default.nix10
-rw-r--r--nixpkgs/pkgs/servers/icingaweb2/ipl.nix26
-rw-r--r--nixpkgs/pkgs/servers/icingaweb2/thirdparty.nix26
-rw-r--r--nixpkgs/pkgs/servers/imgproxy/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/jackett/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/janus-gateway/default.nix59
-rw-r--r--nixpkgs/pkgs/servers/klipper/default.nix10
-rw-r--r--nixpkgs/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/mail/exim/default.nix11
-rw-r--r--nixpkgs/pkgs/servers/mail/system-sendmail/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/matrix-synapse/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/mautrix-signal/default.nix24
-rw-r--r--nixpkgs/pkgs/servers/monitoring/buildkite-agent-metrics/default.nix42
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana-agent/default.nix11
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana-agent/skip_test_requiring_network.patch15
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/default.nix10
-rw-r--r--nixpkgs/pkgs/servers/monitoring/prometheus/lnd-exporter.nix10
-rw-r--r--nixpkgs/pkgs/servers/monitoring/telegraf/default.nix8
-rw-r--r--nixpkgs/pkgs/servers/nextcloud/default.nix32
-rw-r--r--nixpkgs/pkgs/servers/nosql/neo4j/default.nix8
-rw-r--r--nixpkgs/pkgs/servers/nosql/redis/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/plex/raw.nix10
-rw-r--r--nixpkgs/pkgs/servers/radicale/2.x.nix2
-rw-r--r--nixpkgs/pkgs/servers/roundcube/default.nix2
-rw-r--r--nixpkgs/pkgs/servers/sql/mariadb/connector-c/3_1.nix4
-rw-r--r--nixpkgs/pkgs/servers/sql/mariadb/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/sql/mysql/8.0.x.nix8
-rw-r--r--nixpkgs/pkgs/servers/sql/postgresql/default.nix2
-rw-r--r--nixpkgs/pkgs/servers/sql/postgresql/ext/pg_auto_failover.nix4
-rw-r--r--nixpkgs/pkgs/servers/sql/postgresql/ext/pgjwt.nix2
-rw-r--r--nixpkgs/pkgs/servers/sql/postgresql/ext/timescaledb.nix4
-rw-r--r--nixpkgs/pkgs/servers/tailscale/default.nix4
-rwxr-xr-xnixpkgs/pkgs/servers/unifi-video/default.nix61
-rw-r--r--nixpkgs/pkgs/servers/uwsgi/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/web-apps/bookstack/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/web-apps/bookstack/php-packages.nix144
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/plugins/all-plugins.nix6
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-canned-replies/default.nix12
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/Gemfile8
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/Gemfile.lock12
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/gemset.nix30
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-math/default.nix12
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-solved/default.nix12
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-spoiler-alert/default.nix12
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-yearly-review/default.nix12
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile.lock18
-rw-r--r--nixpkgs/pkgs/servers/web-apps/discourse/rubyEnv/gemset.nix12
-rwxr-xr-xnixpkgs/pkgs/servers/web-apps/discourse/update.py104
-rw-r--r--nixpkgs/pkgs/servers/web-apps/lemmy/default.nix40
-rw-r--r--nixpkgs/pkgs/servers/web-apps/plausible/default.nix7
-rw-r--r--nixpkgs/pkgs/servers/web-apps/plausible/plausible-Bump-clickhouse_ecto-dependency-to-be-compatible-with-ecto-3.6.patch26
-rw-r--r--nixpkgs/pkgs/servers/web-apps/vikunja/api.nix57
-rw-r--r--nixpkgs/pkgs/servers/web-apps/vikunja/frontend.nix33
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/overrides.nix3
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/tarballs.list2
-rw-r--r--nixpkgs/pkgs/servers/x11/xorg/xwayland.nix4
-rw-r--r--nixpkgs/pkgs/servers/xmpp/ejabberd/default.nix2
-rw-r--r--nixpkgs/pkgs/shells/es/default.nix7
-rw-r--r--nixpkgs/pkgs/shells/fish/plugins/done.nix4
-rw-r--r--nixpkgs/pkgs/shells/nushell/default.nix10
-rw-r--r--nixpkgs/pkgs/shells/zsh/antigen/default.nix2
-rw-r--r--nixpkgs/pkgs/shells/zsh/grml-zsh-config/default.nix4
-rw-r--r--nixpkgs/pkgs/shells/zsh/nix-zsh-completions/default.nix8
-rw-r--r--nixpkgs/pkgs/shells/zsh/pure-prompt/default.nix4
-rw-r--r--nixpkgs/pkgs/shells/zsh/zsh-command-time/default.nix2
-rw-r--r--nixpkgs/pkgs/stdenv/darwin/default.nix12
-rw-r--r--nixpkgs/pkgs/stdenv/linux/default.nix19
-rw-r--r--nixpkgs/pkgs/stdenv/linux/make-bootstrap-tools.nix2
-rw-r--r--nixpkgs/pkgs/test/haskell/default.nix1
-rw-r--r--nixpkgs/pkgs/test/haskell/documentationTarball/default.nix6
-rw-r--r--nixpkgs/pkgs/test/haskell/setBuildTarget/default.nix7
-rw-r--r--nixpkgs/pkgs/test/haskell/shellFor/default.nix5
-rw-r--r--nixpkgs/pkgs/test/haskell/writers/default.nix26
-rw-r--r--nixpkgs/pkgs/test/texlive/default.nix45
-rw-r--r--nixpkgs/pkgs/tools/X11/autocutsel/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/X11/bumblebee/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/nitrogen/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/runningx/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/X11/skippy-xd/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/X11/sx/default.nix30
-rw-r--r--nixpkgs/pkgs/tools/X11/virtualgl/lib.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/wayv/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/X11/wmctrl/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/xannotate/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/X11/xautomation/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/X11/xbindkeys/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/X11/xgeometry-select/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/X11/xob/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/X11/xprintidle-ng/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/X11/xwinmosaic/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/X11/xwinwrap/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/X11/xzoom/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/admin/awscli2/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/admin/azure-cli/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/admin/azure-cli/python-packages.nix92
-rw-r--r--nixpkgs/pkgs/tools/admin/boulder/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/admin/docker-credential-gcr/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/eksctl/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/admin/exoscale-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/fastlane/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/admin/gixy/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/admin/google-cloud-sdk/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/admin/lexicon/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/lxd/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/admin/procs/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/admin/salt/pepper/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/admin/tigervnc/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/admin/trivy/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/admin/turbovnc/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/admin/virtscreen/default.nix25
-rw-r--r--nixpkgs/pkgs/tools/archivers/arj/default.nix150
-rw-r--r--nixpkgs/pkgs/tools/archivers/lha/default.nix27
-rw-r--r--nixpkgs/pkgs/tools/archivers/p7zip/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/archivers/unar/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/archivers/xarchiver/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/archivers/zpaq/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/audio/beets/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/audio/tts/default.nix26
-rw-r--r--nixpkgs/pkgs/tools/backup/borgbackup/default.nix83
-rw-r--r--nixpkgs/pkgs/tools/backup/btrbk/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/backup/discordchatexporter-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/backup/discordchatexporter-cli/deps.nix13
-rw-r--r--nixpkgs/pkgs/tools/backup/duplicity/default.nix38
-rw-r--r--nixpkgs/pkgs/tools/backup/duplicity/gnutar-in-test.patch10
-rw-r--r--nixpkgs/pkgs/tools/backup/duplicity/linux-disable-timezone-test.patch14
-rw-r--r--nixpkgs/pkgs/tools/backup/duplicity/use-installed-scripts-in-test.patch44
-rw-r--r--nixpkgs/pkgs/tools/backup/lvmsync/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/backup/ori/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/backup/rdiff-backup/default.nix37
-rw-r--r--nixpkgs/pkgs/tools/backup/rdiff-backup/fix-librsync-rs_default_strong_len.patch20
-rw-r--r--nixpkgs/pkgs/tools/backup/zfs-replicate/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/backup/zrepl/default.nix15
-rw-r--r--nixpkgs/pkgs/tools/cd-dvd/brasero/wrapper.nix2
-rw-r--r--nixpkgs/pkgs/tools/cd-dvd/lsdvd/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/compression/brotli/default.nix28
-rw-r--r--nixpkgs/pkgs/tools/compression/bsc/default.nix17
-rw-r--r--nixpkgs/pkgs/tools/compression/bsdiff/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/compression/dejsonlz4/default.nix48
-rw-r--r--nixpkgs/pkgs/tools/compression/gzrt/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/compression/kzipmix/default.nix19
-rw-r--r--nixpkgs/pkgs/tools/compression/lbzip2/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/compression/lhasa/default.nix19
-rw-r--r--nixpkgs/pkgs/tools/compression/lrzip/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/compression/lzop/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/compression/mozlz4a/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/compression/pigz/default.nix28
-rw-r--r--nixpkgs/pkgs/tools/compression/pixz/default.nix46
-rw-r--r--nixpkgs/pkgs/tools/compression/pxz/_SC_ARG_MAX.patch36
-rw-r--r--nixpkgs/pkgs/tools/compression/pxz/default.nix36
-rw-r--r--nixpkgs/pkgs/tools/compression/rzip/default.nix17
-rw-r--r--nixpkgs/pkgs/tools/compression/zstd/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/compression/zsync/default.nix15
-rw-r--r--nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix36
-rw-r--r--nixpkgs/pkgs/tools/filesystems/fatsort/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/filesystems/fuse-7z-ng/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/filesystems/gitfs/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/filesystems/jmtpfs/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/filesystems/mtools/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/filesystems/reiser4progs/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/filesystems/reiserfsprogs/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/filesystems/smbnetfs/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/filesystems/squashfs-tools-ng/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/filesystems/ubidump/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/filesystems/yandex-disk/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/filesystems/zfstools/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/games/minecraft/amidst/default.nix (renamed from nixpkgs/pkgs/tools/games/amidst/default.nix)0
-rw-r--r--nixpkgs/pkgs/tools/games/minecraft/fabric-installer/default.nix35
-rw-r--r--nixpkgs/pkgs/tools/games/minecraft/optifine/default.nix39
-rw-r--r--nixpkgs/pkgs/tools/graphics/argyllcms/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/graphics/briss/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/graphics/convchain/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/graphics/cuneiform/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/graphics/ditaa/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/graphics/facedetect/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/graphics/gmic/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/graphics/lsix/default.nix36
-rw-r--r--nixpkgs/pkgs/tools/graphics/mangohud/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/graphics/mscgen/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/graphics/oxipng/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/graphics/pgf/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/graphics/svgbob/default.nix23
-rw-r--r--nixpkgs/pkgs/tools/graphics/syntex/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/graphics/twilight/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/graphics/wavefunctioncollapse/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/graphics/zxing/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/fcitx/wrapper.nix2
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table-others/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/interception-tools/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/skk/skk-dicts/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/misc/afetch/default.nix28
-rw-r--r--nixpkgs/pkgs/tools/misc/android-tools/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/autorandr/default.nix112
-rw-r--r--nixpkgs/pkgs/tools/misc/bat/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/misc/bcunit/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/bdf2psf/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/betterdiscordctl/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/misc/birdfont/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/bitwise/default.nix24
-rw-r--r--nixpkgs/pkgs/tools/misc/bmon/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/bonfire/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/chezmoi/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/clac/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/clasp/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/misc/cod/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/misc/code-minimap/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/cp437/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/ddccontrol/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/diffoscope/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/misc/dijo/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/diskscan/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/dua/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/misc/dust/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/edid-decode/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/edid-generator/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/elfcat/Cargo.lock2
-rw-r--r--nixpkgs/pkgs/tools/misc/elfcat/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/emv/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/esphome/dashboard.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/esphome/default.nix29
-rw-r--r--nixpkgs/pkgs/tools/misc/esptool/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/etcher/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/fcp/default.nix33
-rw-r--r--nixpkgs/pkgs/tools/misc/fend/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/flameshot/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/misc/fsql/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/fwup/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/misc/fwup/fix-testrunner-darwin.patch25
-rw-r--r--nixpkgs/pkgs/tools/misc/gibo/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/gitlint/default.nix49
-rw-r--r--nixpkgs/pkgs/tools/misc/goreleaser/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/gparted/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/gpick/default.nix25
-rw-r--r--nixpkgs/pkgs/tools/misc/gringo/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/misc/grub/2.0x.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/grub/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/hdaps-gl/default.nix37
-rw-r--r--nixpkgs/pkgs/tools/misc/hexyl/default.nix21
-rw-r--r--nixpkgs/pkgs/tools/misc/idutils/default.nix25
-rw-r--r--nixpkgs/pkgs/tools/misc/infracost/default.nix49
-rw-r--r--nixpkgs/pkgs/tools/misc/ipxe/default.nix24
-rw-r--r--nixpkgs/pkgs/tools/misc/ix/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/kisslicer/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/krapslog/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/lbdb/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/misc/lilo/default.nix20
-rw-r--r--nixpkgs/pkgs/tools/misc/man-db/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/ocz-ssd-guru/default.nix53
-rw-r--r--nixpkgs/pkgs/tools/misc/osm2pgsql/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/plowshare/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/ponysay/default.nix27
-rw-r--r--nixpkgs/pkgs/tools/misc/poweralertd/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/powerline-go/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/pws/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/rauc/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/starship/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/svtplay-dl/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/misc/sweep-visualizer/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/system-config-printer/default.nix21
-rw-r--r--nixpkgs/pkgs/tools/misc/tea/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/misc/tfk8s/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/misc/tfk8s/tests/sample1/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/misc/tfk8s/tests/sample1/input.yaml7
-rw-r--r--nixpkgs/pkgs/tools/misc/tfk8s/tests/sample1/output.tf12
-rw-r--r--nixpkgs/pkgs/tools/misc/tmuxinator/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/tremor-rs/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/trillian/default.nix13
-rw-r--r--nixpkgs/pkgs/tools/misc/ultrastar-manager/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/misc/unclutter-xfixes/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/uutils-coreutils/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/misc/vector/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/via/default.nix41
-rw-r--r--nixpkgs/pkgs/tools/misc/vial/default.nix33
-rw-r--r--nixpkgs/pkgs/tools/misc/xvfb-run/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/misc/yafetch/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/yle-dl/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/yubikey-manager-qt/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/zellij/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/zsh-autoenv/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/amass/default.nix13
-rw-r--r--nixpkgs/pkgs/tools/networking/cdpr/default.nix25
-rw-r--r--nixpkgs/pkgs/tools/networking/corerad/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/corkscrew/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/networking/curlie/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/ddclient/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/dhcp/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/dnsproxy/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/getmail/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/networking/getmail6/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/ifstat-legacy/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/innernet/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/ip2unix/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/iwgtk/default.nix28
-rw-r--r--nixpkgs/pkgs/tools/networking/kea/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/networking/linkchecker/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/maphosts/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/networking/minio-client/default.nix15
-rw-r--r--nixpkgs/pkgs/tools/networking/n2n/default.nix32
-rw-r--r--nixpkgs/pkgs/tools/networking/ngrok-2/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/networking/ookla-speedtest/default.nix43
-rw-r--r--nixpkgs/pkgs/tools/networking/openapi-generator-cli/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/openapi-generator-cli/unstable.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/p2p/gtk-gnutella/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/networking/ppp/default.nix71
-rw-r--r--nixpkgs/pkgs/tools/networking/ppp/musl-fix-headers.patch137
-rw-r--r--nixpkgs/pkgs/tools/networking/ppp/nix-purity.patch34
-rw-r--r--nixpkgs/pkgs/tools/networking/siege/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/stevenblack-blocklist/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/telepresence2/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/userhosts/default.nix23
-rw-r--r--nixpkgs/pkgs/tools/networking/vde2/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/vpnc-scripts/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/wavemon/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/networking/zssh/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/nix/nar-serve/default.nix13
-rw-r--r--nixpkgs/pkgs/tools/nix/nix-script/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/nix/nixos-option/CMakeLists.txt8
-rw-r--r--nixpkgs/pkgs/tools/nix/nixos-option/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/nix/nixos-option/libnix-copy-paste.cc83
-rw-r--r--nixpkgs/pkgs/tools/nix/nixos-option/libnix-copy-paste.hh9
-rw-r--r--nixpkgs/pkgs/tools/nix/nixos-option/nixos-option.cc643
-rw-r--r--nixpkgs/pkgs/tools/package-management/micromamba/default.nix49
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix-doc/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix-prefetch/default.nix24
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix-serve/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix-template/default.nix36
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix-top/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix/default.nix33
-rw-r--r--nixpkgs/pkgs/tools/package-management/nixops/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/security/aws-okta/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/security/bitwarden/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/cewl/Gemfile8
-rw-r--r--nixpkgs/pkgs/tools/security/cewl/Gemfile.lock31
-rw-r--r--nixpkgs/pkgs/tools/security/cewl/default.nix33
-rw-r--r--nixpkgs/pkgs/tools/security/cewl/gemset.nix104
-rw-r--r--nixpkgs/pkgs/tools/security/cosign/default.nix15
-rw-r--r--nixpkgs/pkgs/tools/security/dnsrecon/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/security/ecryptfs/helper.nix2
-rw-r--r--nixpkgs/pkgs/tools/security/enpass/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/security/exploitdb/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/fido2luks/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/fulcio/default.nix41
-rw-r--r--nixpkgs/pkgs/tools/security/gorilla-bin/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/security/gpg-tui/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/grype/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/hashcat/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/kpcli/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/security/metasploit/Gemfile2
-rw-r--r--nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock42
-rw-r--r--nixpkgs/pkgs/tools/security/metasploit/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/metasploit/gemset.nix96
-rw-r--r--nixpkgs/pkgs/tools/security/nuclei/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/oath-toolkit/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/security/open-ecard/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/security/ossec/default.nix17
-rw-r--r--nixpkgs/pkgs/tools/security/quill/default.nix46
-rw-r--r--nixpkgs/pkgs/tools/security/saml2aws/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/sequoia/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/security/sshuttle/default.nix21
-rw-r--r--nixpkgs/pkgs/tools/security/ssss/default.nix53
-rw-r--r--nixpkgs/pkgs/tools/security/step-cli/default.nix13
-rw-r--r--nixpkgs/pkgs/tools/security/sudolikeaboss/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/security/theharvester/default.nix23
-rw-r--r--nixpkgs/pkgs/tools/security/volatility/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/security/vulnix/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/wpscan/Gemfile.lock16
-rw-r--r--nixpkgs/pkgs/tools/security/wpscan/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/security/wpscan/gemset.nix24
-rwxr-xr-xnixpkgs/pkgs/tools/security/wpscan/update.sh11
-rw-r--r--nixpkgs/pkgs/tools/security/yubikey-agent/default.nix19
-rw-r--r--nixpkgs/pkgs/tools/security/yubikey-agent/use-piv-go-75.patch22
-rw-r--r--nixpkgs/pkgs/tools/system/bottom/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/collectd/data.nix2
-rw-r--r--nixpkgs/pkgs/tools/system/dd_rescue/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/system/fakechroot/default.nix18
-rw-r--r--nixpkgs/pkgs/tools/system/fakeroot/default.nix18
-rw-r--r--nixpkgs/pkgs/tools/system/fancy-motd/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/freeipmi/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/system/gdu/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/gotop/default.nix15
-rw-r--r--nixpkgs/pkgs/tools/system/hostctl/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/ipmiutil/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/system/jsvc/default.nix40
-rw-r--r--nixpkgs/pkgs/tools/system/kmon/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/sleuthkit/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/system/smartmontools/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/system/tree/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/uefitool/common.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/wsmancli/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/text/choose/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/text/gawk/gawk-with-extensions.nix3
-rw-r--r--nixpkgs/pkgs/tools/text/html-tidy/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/ledger2beancount/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/text/mdcat/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/text/namazu/default.nix26
-rw-r--r--nixpkgs/pkgs/tools/text/ocrmypdf/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/text/papertrail/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/text/reckon/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/typesetting/lowdown/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/typesetting/pdf2odt/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/typesetting/tex/texlive/UPGRADING.md11
-rw-r--r--nixpkgs/pkgs/tools/typesetting/tex/texlive/bin.nix2
-rw-r--r--nixpkgs/pkgs/tools/typesetting/tex/texlive/combine.nix47
-rw-r--r--nixpkgs/pkgs/tools/typesetting/tex/texlive/default.nix15
-rw-r--r--nixpkgs/pkgs/tools/typesetting/tex/texlive/pkgs.nix90
-rw-r--r--nixpkgs/pkgs/tools/typesetting/tex/texlive/tl2nix.sed4
-rw-r--r--nixpkgs/pkgs/tools/virtualization/cloudmonkey/default.nix24
-rw-r--r--nixpkgs/pkgs/tools/virtualization/linode-cli/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/wayland/swayr/default.nix30
-rw-r--r--nixpkgs/pkgs/tools/wayland/swayr/icon-paths.patch17
-rw-r--r--nixpkgs/pkgs/tools/wayland/wayland-utils/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/wayland/wev/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/wayland/wlsunset/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/wayland/wob/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/wayland/wshowkeys/default.nix10
-rw-r--r--nixpkgs/pkgs/top-level/aliases.nix8
-rw-r--r--nixpkgs/pkgs/top-level/all-packages.nix400
-rw-r--r--nixpkgs/pkgs/top-level/dotnet-packages.nix17
-rw-r--r--nixpkgs/pkgs/top-level/emacs-packages.nix10
-rw-r--r--nixpkgs/pkgs/top-level/haskell-packages.nix6
-rw-r--r--nixpkgs/pkgs/top-level/make-tarball.nix54
-rw-r--r--nixpkgs/pkgs/top-level/nixpkgs-basic-release-checks.nix53
-rw-r--r--nixpkgs/pkgs/top-level/ocaml-packages.nix40
-rw-r--r--nixpkgs/pkgs/top-level/perl-packages.nix26
-rw-r--r--nixpkgs/pkgs/top-level/python-aliases.nix12
-rw-r--r--nixpkgs/pkgs/top-level/python-packages.nix102
-rw-r--r--nixpkgs/pkgs/top-level/python2-packages.nix3
-rw-r--r--nixpkgs/pkgs/top-level/qt5-packages.nix4
-rw-r--r--nixpkgs/pkgs/top-level/release-haskell.nix53
-rw-r--r--nixpkgs/pkgs/top-level/ruby-packages.nix319
2195 files changed, 61363 insertions, 17776 deletions
diff --git a/nixpkgs/pkgs/applications/accessibility/squeekboard/default.nix b/nixpkgs/pkgs/applications/accessibility/squeekboard/default.nix
index 71a0823f78d3..cca36c38e771 100644
--- a/nixpkgs/pkgs/applications/accessibility/squeekboard/default.nix
+++ b/nixpkgs/pkgs/applications/accessibility/squeekboard/default.nix
@@ -18,14 +18,14 @@
 
 stdenv.mkDerivation rec {
   pname = "squeekboard";
-  version = "1.13.0";
+  version = "1.14.0";
 
   src = fetchFromGitLab {
     domain = "source.puri.sm";
     owner = "Librem5";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0xyd6ickbaqvrr8a7ak6j1ziqjk05jlnganjrdv43p74nnjyqr8y";
+    sha256 = "1ayap40pgzcpmfydk5pbf3gwhh26m3cmbk6lyly4jihr9qw7dgb0";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
       cat Cargo.toml.in Cargo.deps > Cargo.toml
     '';
     name = "${pname}-${version}";
-    sha256 = "096skk7vmr93axcf0qj7kyr8hm1faj0nkmd349g8mnzwd68a9npz";
+    sha256 = "0148ynzmapxfrlccikf20ikmi0ssbkn9fl5wi6nh6azflv50pzzn";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/audio/aacgain/default.nix b/nixpkgs/pkgs/applications/audio/aacgain/default.nix
index 0f9b511d4553..517a53a5fecc 100644
--- a/nixpkgs/pkgs/applications/audio/aacgain/default.nix
+++ b/nixpkgs/pkgs/applications/audio/aacgain/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitLab, fetchpatch }:
 
-stdenv.mkDerivation {
-  name = "aacgain-1.9.0";
+stdenv.mkDerivation rec {
+  pname = "aacgain";
+  version = "1.9.0";
 
   src = fetchFromGitLab {
     owner = "mulx";
diff --git a/nixpkgs/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix b/nixpkgs/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix
new file mode 100644
index 000000000000..492054396702
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix
@@ -0,0 +1,75 @@
+{ stdenv, fetchurl, alsa-lib, cairo, dpkg, freetype
+, gdk-pixbuf, glib, gtk3, lib, xorg
+, libglvnd, libjack2, ffmpeg
+, libxkbcommon, xdg-utils, zlib, pulseaudio
+, wrapGAppsHook, makeWrapper }:
+
+stdenv.mkDerivation rec {
+  pname = "bitwig-studio";
+  version = "4.0.1";
+
+  src = fetchurl {
+    url = "https://downloads.bitwig.com/stable/${version}/${pname}-${version}.deb";
+    sha256 = "sha256-yhCAKlbLjyBywkSYY1aqbUGFlAHBLR8g8xPDIqoUIZk=";
+  };
+
+  nativeBuildInputs = [ dpkg makeWrapper wrapGAppsHook ];
+
+  unpackCmd = ''
+    mkdir -p root
+    dpkg-deb -x $curSrc root
+  '';
+
+  dontBuild = true;
+  dontWrapGApps = true; # we only want $gappsWrapperArgs here
+
+  buildInputs = with xorg; [
+    alsa-lib cairo freetype gdk-pixbuf glib gtk3 libxcb xcbutil xcbutilwm zlib libXtst libxkbcommon pulseaudio libjack2 libX11 libglvnd libXcursor stdenv.cc.cc.lib
+  ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin
+    cp -r opt/bitwig-studio $out/libexec
+    ln -s $out/libexec/bitwig-studio $out/bin/bitwig-studio
+    cp -r usr/share $out/share
+    substitute usr/share/applications/com.bitwig.BitwigStudio.desktop \
+      $out/share/applications/com.bitwig.BitwigStudio.desktop \
+      --replace /usr/bin/bitwig-studio $out/bin/bitwig-studio
+
+      runHook postInstall
+  '';
+
+  postFixup = ''
+    # patchelf fails to set rpath on BitwigStudioEngine, so we use
+    # the LD_LIBRARY_PATH way
+
+    find $out -type f -executable \
+      -not -name '*.so.*' \
+      -not -name '*.so' \
+      -not -name '*.jar' \
+      -not -path '*/resources/*' | \
+    while IFS= read -r f ; do
+      patchelf --set-interpreter "${stdenv.cc.bintools.dynamicLinker}" $f
+      wrapProgram $f \
+        "''${gappsWrapperArgs[@]}" \
+        --prefix PATH : "${lib.makeBinPath [ xdg-utils ffmpeg ]}" \
+        --suffix LD_LIBRARY_PATH : "${lib.strings.makeLibraryPath buildInputs}"
+    done
+
+  '';
+
+  meta = with lib; {
+    description = "A digital audio workstation";
+    longDescription = ''
+      Bitwig Studio is a multi-platform music-creation system for
+      production, performance and DJing, with a focus on flexible
+      editing tools and a super-fast workflow.
+    '';
+    homepage = "https://www.bitwig.com/";
+    license = licenses.unfree;
+    platforms = [ "x86_64-linux" ];
+    maintainers = with maintainers; [ bfortz michalrus mrVanDalo ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/audio/cdparanoia/default.nix b/nixpkgs/pkgs/applications/audio/cdparanoia/default.nix
index 11c141e9c552..36686655f369 100644
--- a/nixpkgs/pkgs/applications/audio/cdparanoia/default.nix
+++ b/nixpkgs/pkgs/applications/audio/cdparanoia/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, gnu-config, IOKit, Carbon }:
 
 stdenv.mkDerivation rec {
-  name = "cdparanoia-III-10.2";
+  pname = "cdparanoia-III";
+  version = "10.2";
 
   src = fetchurl {
-    url = "http://downloads.xiph.org/releases/cdparanoia/${name}.src.tgz";
+    url = "https://downloads.xiph.org/releases/cdparanoia/cdparanoia-III-${version}.src.tgz";
     sha256 = "1pv4zrajm46za0f6lv162iqffih57a8ly4pc69f7y0gfyigb8p80";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/crip/default.nix b/nixpkgs/pkgs/applications/audio/crip/default.nix
index c61f838bc3a1..d635dce83f4e 100644
--- a/nixpkgs/pkgs/applications/audio/crip/default.nix
+++ b/nixpkgs/pkgs/applications/audio/crip/default.nix
@@ -19,9 +19,10 @@
 with lib;
 
 stdenv.mkDerivation rec {
-  name = "crip-3.9";
+  pname = "crip";
+  version = "3.9";
   src = fetchurl {
-    url = "http://bach.dynet.com/crip/src/${name}.tar.gz";
+    url = "http://bach.dynet.com/${pname}/src/${pname}-${version}.tar.gz";
     sha256 = "0pk9152wll6fmkj1pki3fz3ijlf06jyk32v31yarwvdkwrk7s9xz";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/csound/default.nix b/nixpkgs/pkgs/applications/audio/csound/default.nix
index 13de229452e5..029710206f03 100644
--- a/nixpkgs/pkgs/applications/audio/csound/default.nix
+++ b/nixpkgs/pkgs/applications/audio/csound/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   # When updating, please check if https://github.com/csound/csound/issues/1078
   # has been fixed in the new version so we can use the normal fluidsynth
   # version and remove fluidsynth 1.x from nixpkgs again.
-  version = "6.15.0";
+  version = "6.16.2";
 
   hardeningDisable = [ "format" ];
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     owner = "csound";
     repo = "csound";
     rev = version;
-    sha256 = "1vld6v55jxvv3ddr21kh41s4cdkhnm5wpffvd097zqrqh1aq08r0";
+    sha256 = "sha256-1rcS3kOspU9ACx45yB8betph4G0hso1OSJQRiabX6tE=";
   };
 
   cmakeFlags = [ "-DBUILD_CSOUND_AC=0" ] # fails to find Score.hpp
diff --git a/nixpkgs/pkgs/applications/audio/dirt/default.nix b/nixpkgs/pkgs/applications/audio/dirt/default.nix
index 333c1d08b3aa..a456d62e6f69 100644
--- a/nixpkgs/pkgs/applications/audio/dirt/default.nix
+++ b/nixpkgs/pkgs/applications/audio/dirt/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub, libsndfile, libsamplerate, liblo, libjack2 }:
 
 stdenv.mkDerivation {
-  name = "dirt-2018-01-01";
+  pname = "dirt";
+  version = "unstable-2018-01-01";
   src = fetchFromGitHub {
     repo = "Dirt";
     owner = "tidalcycles";
diff --git a/nixpkgs/pkgs/applications/audio/easyeffects/default.nix b/nixpkgs/pkgs/applications/audio/easyeffects/default.nix
new file mode 100644
index 000000000000..ee4d16d6b36d
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/easyeffects/default.nix
@@ -0,0 +1,107 @@
+{ lib
+, stdenv
+, desktop-file-utils
+, fetchFromGitHub
+, calf
+, fftwFloat
+, glib
+, glibmm
+, gtk4
+, gtkmm4
+, itstool
+, libbs2b
+, libebur128
+, libsamplerate
+, libsndfile
+, lilv
+, lsp-plugins
+, lv2
+, meson
+, ninja
+, nlohmann_json
+, pipewire
+, pkg-config
+, python3
+, rnnoise
+, rubberband
+, speexdsp
+, wrapGAppsHook
+, zam-plugins
+, zita-convolver
+}:
+
+stdenv.mkDerivation rec {
+  pname = "easyeffects";
+  version = "6.0.0";
+
+  src = fetchFromGitHub {
+    owner = "wwmm";
+    repo = "easyeffects";
+    rev = "v${version}";
+    hash = "sha256:1m3jamnhgpx3z51nfc8xg7adhf5x7dirvw0wf129hzxx4fjl7rch";
+  };
+
+  nativeBuildInputs = [
+    desktop-file-utils
+    itstool
+    meson
+    ninja
+    pkg-config
+    python3
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    fftwFloat
+    glib
+    glibmm
+    gtk4
+    gtkmm4
+    libbs2b
+    libebur128
+    libsamplerate
+    libsndfile
+    lilv
+    lv2
+    nlohmann_json
+    pipewire
+    rnnoise
+    rubberband
+    speexdsp
+    zita-convolver
+  ];
+
+  postPatch = ''
+    chmod +x meson_post_install.py
+    patchShebangs meson_post_install.py
+  '';
+
+  preFixup =
+    let
+      lv2Plugins = [
+        calf # limiter, compressor exciter, bass enhancer and others
+        lsp-plugins # delay
+      ];
+      ladspaPlugins = [
+        rubberband # pitch shifting
+        zam-plugins # maximizer
+      ];
+    in
+    ''
+      gappsWrapperArgs+=(
+        --set LV2_PATH "${lib.makeSearchPath "lib/lv2" lv2Plugins}"
+        --set LADSPA_PATH "${lib.makeSearchPath "lib/ladspa" ladspaPlugins}"
+      )
+    '';
+
+  separateDebugInfo = true;
+
+  meta = with lib; {
+    description = "Audio effects for PipeWire applications.";
+    homepage = "https://github.com/wwmm/easyeffects";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ jtojnar ];
+    platforms = platforms.linux;
+    badPlatforms = [ "aarch64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/audio/gmu/default.nix b/nixpkgs/pkgs/applications/audio/gmu/default.nix
index 3e2087162f55..b2b9f5e34750 100644
--- a/nixpkgs/pkgs/applications/audio/gmu/default.nix
+++ b/nixpkgs/pkgs/applications/audio/gmu/default.nix
@@ -5,10 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "gmu-0.10.1";
+  pname = "gmu";
+  version = "0.10.1";
 
   src = fetchurl {
-    url = "http://wejp.k.vu/files/${name}.tar.gz";
+    url = "https://wej.k.vu/files/${pname}-${version}.tar.gz";
     sha256 = "03x0mc0xw2if0bpf0a15yprcyx1xccki039zvl2099dagwk6xskv";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/hqplayer-desktop/default.nix b/nixpkgs/pkgs/applications/audio/hqplayer-desktop/default.nix
index 2551c610c573..a0443aa9a6ae 100644
--- a/nixpkgs/pkgs/applications/audio/hqplayer-desktop/default.nix
+++ b/nixpkgs/pkgs/applications/audio/hqplayer-desktop/default.nix
@@ -3,6 +3,7 @@
 , autoPatchelfHook
 , fetchurl
 , flac
+, gcc11
 , lib
 , libmicrohttpd
 , llvmPackages_10
@@ -17,13 +18,11 @@
 
 mkDerivation rec {
   pname = "hqplayer-desktop";
-  version = "4.12.1-35";
+  version = "4.12.2-36";
 
   src = fetchurl {
-    # FIXME: use the fc34 sources when we get glibc 2.33 in nixpkgs
-    # c.f. https://github.com/NixOS/nixpkgs/pull/111616
-    url = "https://www.signalyst.eu/bins/hqplayer/fc33/hqplayer4desktop-${version}.fc33.x86_64.rpm";
-    sha256 = "sha256-DLnZNX+uAan9dhPLMvINeXsIn3Yv2CgsvyTcX0hbEK8=";
+    url = "https://www.signalyst.eu/bins/hqplayer/fc34/hqplayer4desktop-${version}.fc34.x86_64.rpm";
+    sha256 = "sha256-ng0Tkx6CSnzTxuunStaBhUYjxUmzx31ZaOY2gBWnH6Q=";
   };
 
   unpackPhase = ''
@@ -35,11 +34,12 @@ mkDerivation rec {
   buildInputs = [
     alsa-lib
     flac
+    gcc11.cc.lib
     libmicrohttpd
     llvmPackages_10.openmp
-    qtquickcontrols2
     qtcharts
     qtdeclarative
+    qtquickcontrols2
     qtwebengine
     qtwebview
     wavpack
diff --git a/nixpkgs/pkgs/applications/audio/jack-rack/default.nix b/nixpkgs/pkgs/applications/audio/jack-rack/default.nix
index 520b55e96da5..25ee53d3f435 100644
--- a/nixpkgs/pkgs/applications/audio/jack-rack/default.nix
+++ b/nixpkgs/pkgs/applications/audio/jack-rack/default.nix
@@ -1,8 +1,9 @@
 { lib, stdenv, fetchurl, pkg-config, libjack2, ladspaH, gtk2, alsa-lib, libxml2, lrdf }:
 stdenv.mkDerivation rec {
-  name = "jack-rack-1.4.7";
+  pname = "jack-rack";
+  version = "1.4.7";
   src = fetchurl {
-    url = "mirror://sourceforge/jack-rack/${name}.tar.bz2";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
     sha256 = "1lmibx9gicagcpcisacj6qhq6i08lkl5x8szysjqvbgpxl9qg045";
   };
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/applications/audio/jackmeter/default.nix b/nixpkgs/pkgs/applications/audio/jackmeter/default.nix
index 2b4d413526a6..95fc88a86964 100644
--- a/nixpkgs/pkgs/applications/audio/jackmeter/default.nix
+++ b/nixpkgs/pkgs/applications/audio/jackmeter/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libjack2, pkg-config }:
 
 stdenv.mkDerivation rec {
-  name = "jackmeter-0.4";
+  pname = "jackmeter";
+  version = "0.4";
 
   src = fetchurl {
-    url = "https://www.aelius.com/njh/jackmeter/${name}.tar.gz";
+    url = "https://www.aelius.com/njh/${pname}/${pname}-${version}.tar.gz";
     sha256 = "1cnvgx3jv0yvxlqy0l9k285zgvazmh5k8m4l7lxckjfm5bn6hm1r";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/mikmod/default.nix b/nixpkgs/pkgs/applications/audio/mikmod/default.nix
index 4d39616c99d4..4cc0fec2e2f6 100644
--- a/nixpkgs/pkgs/applications/audio/mikmod/default.nix
+++ b/nixpkgs/pkgs/applications/audio/mikmod/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libmikmod, ncurses }:
 
 stdenv.mkDerivation rec {
-  name = "mikmod-3.2.8";
+  pname = "mikmod";
+  version = "3.2.8";
 
   src = fetchurl {
-    url = "mirror://sourceforge/mikmod/${name}.tar.gz";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
     sha256 = "1k54p8pn3jinha0f2i23ad15pf1pamibzcxjrbzjbklpcz1ipc6v";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/mixxx/default.nix b/nixpkgs/pkgs/applications/audio/mixxx/default.nix
index 6f0d34b870aa..60591f42e816 100644
--- a/nixpkgs/pkgs/applications/audio/mixxx/default.nix
+++ b/nixpkgs/pkgs/applications/audio/mixxx/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , mkDerivation
 , fetchurl
 , fetchFromGitHub
@@ -116,6 +117,23 @@ mkDerivation rec {
     "--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive"
   ];
 
+  # mixxx installs udev rules to DATADIR instead of SYSCONFDIR
+  # let's disable this and install udev rules manually via postInstall
+  # see https://github.com/mixxxdj/mixxx/blob/2.3.0/CMakeLists.txt#L1381-L1392
+  cmakeFlags = [
+    "-DINSTALL_USER_UDEV_RULES=OFF"
+  ];
+
+  postInstall = lib.optionalString stdenv.isLinux ''
+    rules="$src/res/linux/mixxx-usb-uaccess.rules"
+    if [ ! -f "$rules" ]; then
+        echo "$rules is missing, must update the Nix file."
+        exit 1
+    fi
+    mkdir -p "$out/lib/udev/rules.d"
+    cp "$rules" "$out/lib/udev/rules.d/69-mixxx-usb-uaccess.rules"
+  '';
+
   meta = with lib; {
     homepage = "https://mixxx.org";
     description = "Digital DJ mixing software";
diff --git a/nixpkgs/pkgs/applications/audio/mp3gain/default.nix b/nixpkgs/pkgs/applications/audio/mp3gain/default.nix
index bf0a347d14bd..ba2a757e090c 100644
--- a/nixpkgs/pkgs/applications/audio/mp3gain/default.nix
+++ b/nixpkgs/pkgs/applications/audio/mp3gain/default.nix
@@ -1,9 +1,10 @@
 { lib, stdenv, fetchurl, fetchpatch, unzip, mpg123 }:
 
-stdenv.mkDerivation {
-  name = "mp3gain-1.6.2";
+stdenv.mkDerivation rec {
+  pname = "mp3gain";
+  version = "1.6.2";
   src = fetchurl {
-    url = "mirror://sourceforge/mp3gain/mp3gain-1_6_2-src.zip";
+    url = "mirror://sourceforge/${pname}/${pname}-${lib.replaceStrings ["."] ["_"] version}-src.zip";
     sha256 = "0varr6y7k8zarr56b42r0ad9g3brhn5vv3xjg1c0v19jxwr4gh2w";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/mp3info/default.nix b/nixpkgs/pkgs/applications/audio/mp3info/default.nix
index d67b4da5eb2b..86c1f87f5227 100644
--- a/nixpkgs/pkgs/applications/audio/mp3info/default.nix
+++ b/nixpkgs/pkgs/applications/audio/mp3info/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, ncurses, pkg-config, gtk2 }:
 
 stdenv.mkDerivation rec {
-  name = "mp3info-0.8.5a";
+  pname = "mp3info";
+  version = "0.8.5a";
 
   src = fetchurl {
-    url = "ftp://ftp.ibiblio.org/pub/linux/apps/sound/mp3-utils/mp3info/${name}.tgz";
+    url = "ftp://ftp.ibiblio.org/pub/linux/apps/sound/mp3-utils/${pname}/${pname}-${version}.tgz";
     sha256 = "042f1czcs9n2sbqvg4rsvfwlqib2gk976mfa2kxlfjghx5laqf04";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/mpg123/default.nix b/nixpkgs/pkgs/applications/audio/mpg123/default.nix
index 8f9489befc59..44788467d8f6 100644
--- a/nixpkgs/pkgs/applications/audio/mpg123/default.nix
+++ b/nixpkgs/pkgs/applications/audio/mpg123/default.nix
@@ -7,10 +7,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "mpg123-1.26.5";
+  pname = "mpg123";
+  version = "1.26.5";
 
   src = fetchurl {
-    url = "mirror://sourceforge/mpg123/${name}.tar.bz2";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
     sha256 = "sha256-UCqX4Nk1vn432YczgCHY8wG641wohPKoPVnEtSRm7wY=";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/nootka/default.nix b/nixpkgs/pkgs/applications/audio/nootka/default.nix
index 8b2284f9b30a..59d58df8c8dc 100644
--- a/nixpkgs/pkgs/applications/audio/nootka/default.nix
+++ b/nixpkgs/pkgs/applications/audio/nootka/default.nix
@@ -3,10 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "nootka-1.4.7";
+  pname = "nootka";
+  version = "1.4.7";
 
   src = fetchurl {
-    url = "mirror://sourceforge/nootka/${name}-source.tar.bz2";
+    url = "mirror://sourceforge/nootka/${pname}-${version}-source.tar.bz2";
     sha256 = "1y9wlwri74v2z9dwbcfjs7xri54yra24vpwq19xi2lfv1nbs518x";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/opus-tools/default.nix b/nixpkgs/pkgs/applications/audio/opus-tools/default.nix
index 8ca75eecde19..6c602ef1d03e 100644
--- a/nixpkgs/pkgs/applications/audio/opus-tools/default.nix
+++ b/nixpkgs/pkgs/applications/audio/opus-tools/default.nix
@@ -1,9 +1,11 @@
 {lib, stdenv, fetchurl, libogg, libao, pkg-config, flac, opusfile, libopusenc}:
 
 stdenv.mkDerivation rec {
-  name = "opus-tools-0.2";
+  pname = "opus-tools";
+  version = "0.2";
+
   src = fetchurl {
-    url = "http://downloads.xiph.org/releases/opus/${name}.tar.gz";
+    url = "https://downloads.xiph.org/releases/opus/${pname}-${version}.tar.gz";
     sha256 = "11pzl27s4vcz4m18ch72nivbhww2zmzn56wspb7rll1y1nq6rrdl";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/pulseeffects/default.nix b/nixpkgs/pkgs/applications/audio/pulseeffects/default.nix
deleted file mode 100644
index 7a7c7175a45d..000000000000
--- a/nixpkgs/pkgs/applications/audio/pulseeffects/default.nix
+++ /dev/null
@@ -1,127 +0,0 @@
-{ lib, stdenv
-, fetchFromGitHub
-, fetchpatch
-, meson
-, ninja
-, pkg-config
-, itstool
-, python3
-, libxml2
-, desktop-file-utils
-, wrapGAppsHook
-, gst_all_1
-, pipewire
-, gtk3
-, glib
-, glibmm
-, gtkmm3
-, lilv
-, lv2
-, serd
-, sord
-, sratom
-, libbs2b
-, libsamplerate
-, libsndfile
-, libebur128
-, rnnoise
-, boost
-, dbus
-, fftwFloat
-, calf
-, zita-convolver
-, zam-plugins
-, rubberband
-, lsp-plugins
-}:
-
-let
-  lv2Plugins = [
-    calf # limiter, compressor exciter, bass enhancer and others
-    lsp-plugins # delay
-  ];
-  ladspaPlugins = [
-    rubberband # pitch shifting
-    zam-plugins # maximizer
-  ];
-in stdenv.mkDerivation rec {
-  pname = "pulseeffects";
-  version = "5.0.3";
-
-  src = fetchFromGitHub {
-    owner = "wwmm";
-    repo = "pulseeffects";
-    rev = "v${version}";
-    sha256 = "1dicvq17vajk3vr4g1y80599ahkw0dp5ynlany1cfljfjz40s8sx";
-  };
-
-  nativeBuildInputs = [
-    meson
-    ninja
-    pkg-config
-    libxml2
-    itstool
-    python3
-    desktop-file-utils
-    wrapGAppsHook
-  ];
-
-  buildInputs = [
-    pipewire
-    glib
-    glibmm
-    gtk3
-    gtkmm3
-    gst_all_1.gstreamer
-    gst_all_1.gst-plugins-base # gst-fft
-    gst_all_1.gst-plugins-good # spectrum plugin
-    gst_all_1.gst-plugins-bad
-    lilv lv2 serd sord sratom
-    libbs2b
-    libebur128
-    libsamplerate
-    libsndfile
-    rnnoise
-    boost
-    dbus
-    fftwFloat
-    zita-convolver
-  ];
-
-  patches = [
-    (fetchpatch {
-      # Fix build failure.
-      # https://github.com/wwmm/pulseeffects/pull/934
-      url = "https://github.com/wwmm/pulseeffects/commit/ab7354a6850d23840b4c9af212dbebf4f31a562f.patch";
-      sha256 = "1hd05xn6sp0xs632mqgwk19hl40kh2f69mx5mgzahysrj057w22c";
-    })
-  ];
-
-  postPatch = ''
-    chmod +x meson_post_install.py
-    patchShebangs meson_post_install.py
-  '';
-
-  preFixup = ''
-    gappsWrapperArgs+=(
-      --set LV2_PATH "${lib.makeSearchPath "lib/lv2" lv2Plugins}"
-      --set LADSPA_PATH "${lib.makeSearchPath "lib/ladspa" ladspaPlugins}"
-    )
-  '';
-
-  # Meson is no longer able to pick up Boost automatically.
-  # https://github.com/NixOS/nixpkgs/issues/86131
-  BOOST_INCLUDEDIR = "${lib.getDev boost}/include";
-  BOOST_LIBRARYDIR = "${lib.getLib boost}/lib";
-
-  separateDebugInfo = true;
-
-  meta = with lib; {
-    description = "Limiter, compressor, reverberation, equalizer and auto volume effects for Pulseaudio applications";
-    homepage = "https://github.com/wwmm/pulseeffects";
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ jtojnar ];
-    platforms = platforms.linux;
-    badPlatforms = [ "aarch64-linux" ];
-  };
-}
diff --git a/nixpkgs/pkgs/applications/audio/qmmp/default.nix b/nixpkgs/pkgs/applications/audio/qmmp/default.nix
index 25d7857c3539..460b97479c6c 100644
--- a/nixpkgs/pkgs/applications/audio/qmmp/default.nix
+++ b/nixpkgs/pkgs/applications/audio/qmmp/default.nix
@@ -29,10 +29,11 @@
 # handle that.
 
 mkDerivation rec {
-  name = "qmmp-1.4.4";
+  pname = "qmmp";
+  version = "1.4.4";
 
   src = fetchurl {
-    url = "http://qmmp.ylsoftware.com/files/${name}.tar.bz2";
+    url = "https://qmmp.ylsoftware.com/files/${pname}-${version}.tar.bz2";
     sha256 = "sha256-sZRZVhCf2ceETuV4AULA0kVkuIMn3C+aYdKThqvPnVQ=";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/quodlibet/default.nix b/nixpkgs/pkgs/applications/audio/quodlibet/default.nix
index 24f9f057b65a..6c8ad8225f0b 100644
--- a/nixpkgs/pkgs/applications/audio/quodlibet/default.nix
+++ b/nixpkgs/pkgs/applications/audio/quodlibet/default.nix
@@ -18,7 +18,7 @@ python3.pkgs.buildPythonApplication rec {
 
   nativeBuildInputs = [ wrapGAppsHook gettext ];
 
-  checkInputs = [ gdk-pixbuf hicolor-icon-theme ] ++ (with python3.pkgs; [ pytest pytest_xdist polib xvfb-run dbus.daemon glibcLocales ]);
+  checkInputs = [ gdk-pixbuf hicolor-icon-theme ] ++ (with python3.pkgs; [ pytest pytest-xdist polib xvfb-run dbus.daemon glibcLocales ]);
 
   buildInputs = [ gnome.adwaita-icon-theme libsoup glib glib-networking gtk3 webkitgtk gdk-pixbuf keybinder3 gtksourceview libmodplug libappindicator-gtk3 kakasi gobject-introspection ]
     ++ (if xineBackend then [ xine-lib ] else with gst_all_1;
diff --git a/nixpkgs/pkgs/applications/audio/rhythmbox/default.nix b/nixpkgs/pkgs/applications/audio/rhythmbox/default.nix
index 65499f58630e..4898648599c3 100644
--- a/nixpkgs/pkgs/applications/audio/rhythmbox/default.nix
+++ b/nixpkgs/pkgs/applications/audio/rhythmbox/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config
+{ lib, stdenv, fetchurl, pkg-config, fetchFromGitLab
 , python3
 , perl
 , perlPackages
@@ -6,6 +6,9 @@
 , intltool
 , libpeas
 , libsoup
+, libsecret
+, libnotify
+, libdmapsharing
 , gnome
 , totem-pl-parser
 , tdb
@@ -16,13 +19,31 @@
 , gst_plugins ? with gst_all_1; [ gst-plugins-good gst-plugins-ugly ]
 }:
 let
+
+  # The API version of libdmapsharing required by rhythmbox 3.4.4 is 3.0.
+
+  # This PR would solve the issue:
+  # https://gitlab.gnome.org/GNOME/rhythmbox/-/merge_requests/12
+  # Unfortunately applying this patch produces a rhythmbox which
+  # cannot fetch data from DAAP shares.
+
+  libdmapsharing_3 = libdmapsharing.overrideAttrs (old: rec {
+    version = "2.9.41";
+    src = fetchFromGitLab {
+      domain = "gitlab.gnome.org";
+      owner = "GNOME";
+      repo = old.pname;
+      rev = "${lib.toUpper old.pname}_${lib.replaceStrings ["."] ["_"] version}";
+      sha256 = "05kvrzf0cp3mskdy6iv7zqq24qdczl800q2dn1h4bk3d9wchgm4p";
+    };
+  });
+
+in stdenv.mkDerivation rec {
   pname = "rhythmbox";
   version = "3.4.4";
-in stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${name}.tar.xz";
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
     sha256 = "142xcvw4l19jyr5i72nbnrihs953pvrrzcbijjn9dxmxszbv03pf";
   };
 
@@ -46,8 +67,22 @@ in stdenv.mkDerivation rec {
 
     gst_all_1.gstreamer
     gst_all_1.gst-plugins-base
+    gst_all_1.gst-plugins-good
+    gst_all_1.gst-plugins-bad
+    gst_all_1.gst-plugins-ugly
+    gst_all_1.gst-libav
+
+    libdmapsharing_3 # necessary for daap support
+    libsecret
+    libnotify
   ] ++ gst_plugins;
 
+  configureFlags = [
+    "--enable-daap"
+    "--enable-libnotify"
+    "--with-libsecret"
+  ];
+
   enableParallelBuilding = true;
 
   passthru = {
@@ -60,7 +95,7 @@ in stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://wiki.gnome.org/Apps/Rhythmbox";
     description = "A music playing application for GNOME";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.rasendubi ];
   };
diff --git a/nixpkgs/pkgs/applications/audio/spotify/default.nix b/nixpkgs/pkgs/applications/audio/spotify/default.nix
index db0f69c80abe..d81ab4b3ac72 100644
--- a/nixpkgs/pkgs/applications/audio/spotify/default.nix
+++ b/nixpkgs/pkgs/applications/audio/spotify/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, lib, stdenv, squashfsTools, xorg, alsa-lib, makeWrapper, openssl, freetype
+{ fetchurl, lib, stdenv, squashfsTools, xorg, alsa-lib, makeWrapper, wrapGAppsHook, openssl, freetype
 , glib, pango, cairo, atk, gdk-pixbuf, gtk3, cups, nspr, nss, libpng, libnotify
 , libgcrypt, systemd, fontconfig, dbus, expat, ffmpeg, curl, zlib, gnome
 , at-spi2-atk, at-spi2-core, libpulseaudio, libdrm, mesa, libxkbcommon
@@ -82,7 +82,7 @@ stdenv.mkDerivation {
     sha512 = "dabb55d2ba41f977b6d3f03bfcf147d11785136dd1277efc62011c8371ef25cc04531266bd16608639b9b6a500c1a18a45f44ba7a43e17ab5ac139e36eff7149";
   };
 
-  nativeBuildInputs = [ makeWrapper squashfsTools ];
+  nativeBuildInputs = [ makeWrapper wrapGAppsHook squashfsTools ];
 
   dontStrip = true;
   dontPatchELF = true;
@@ -109,6 +109,9 @@ stdenv.mkDerivation {
     runHook postUnpack
   '';
 
+  # Prevent double wrapping
+  dontWrapGApps = true;
+
   installPhase =
     ''
       runHook preInstall
@@ -138,6 +141,7 @@ stdenv.mkDerivation {
 
       librarypath="${lib.makeLibraryPath deps}:$libdir"
       wrapProgram $out/share/spotify/spotify \
+        ''${gappsWrapperArgs[@]} \
         --prefix LD_LIBRARY_PATH : "$librarypath" \
         --prefix PATH : "${gnome.zenity}/bin"
 
diff --git a/nixpkgs/pkgs/applications/audio/strawberry/default.nix b/nixpkgs/pkgs/applications/audio/strawberry/default.nix
index 5a5671ec7730..6cc55650220a 100644
--- a/nixpkgs/pkgs/applications/audio/strawberry/default.nix
+++ b/nixpkgs/pkgs/applications/audio/strawberry/default.nix
@@ -19,29 +19,30 @@
 , protobuf
 , sqlite
 , taglib
-, libpulseaudio ? null
-, libselinux ? null
-, libsepol ? null
-, p11-kit ? null
-, util-linux ? null
+, libpulseaudio
+, libselinux
+, libsepol
+, p11-kit
+, util-linux
 , qtbase
 , qtx11extras
 , qttools
 , withGstreamer ? true
-, gst_all_1 ? null
+, glib-networking
+, gst_all_1
 , withVlc ? true
-, libvlc ? null
+, libvlc
 }:
 
 mkDerivation rec {
   pname = "strawberry";
-  version = "0.9.2";
+  version = "0.9.3";
 
   src = fetchFromGitHub {
     owner = "jonaski";
     repo = pname;
     rev = version;
-    sha256 = "sha256:0d9asg21j9ai23sb35cimws8bd8fsnpha777rgscraa7i09q0rx2";
+    sha256 = "sha256-OOdHsii6O4okVHDhrqCNJ7WVB0VKPs8q0AhEY+IvflE=";
   };
 
   buildInputs = [
@@ -61,29 +62,33 @@ mkDerivation rec {
     taglib
     qtbase
     qtx11extras
-  ]
-  ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.isLinux [
     libpulseaudio
     libselinux
     libsepol
     p11-kit
-  ]
-  ++ lib.optionals withGstreamer (with gst_all_1; [
+  ] ++ lib.optionals withGstreamer (with gst_all_1; [
+    glib-networking
     gstreamer
     gst-plugins-base
     gst-plugins-good
     gst-plugins-ugly
-  ])
-  ++ lib.optional withVlc libvlc;
+  ]) ++ lib.optional withVlc libvlc;
 
   nativeBuildInputs = [
-    cmake ninja pkg-config qttools
+    cmake
+    ninja
+    pkg-config
+    qttools
   ] ++ lib.optionals stdenv.isLinux [
     util-linux
   ];
 
-  postInstall = ''
-    qtWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0")
+  postInstall = lib.optionalString withGstreamer ''
+    qtWrapperArgs+=(
+      --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0"
+      --prefix GIO_EXTRA_MODULES : "${glib-networking.out}/lib/gio/modules"
+    )
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/audio/tonelib-gfx/default.nix b/nixpkgs/pkgs/applications/audio/tonelib-gfx/default.nix
index 137014508a3c..00be09345520 100644
--- a/nixpkgs/pkgs/applications/audio/tonelib-gfx/default.nix
+++ b/nixpkgs/pkgs/applications/audio/tonelib-gfx/default.nix
@@ -12,6 +12,7 @@
 , fribidi
 , pango
 , freetype
+, curl
 }:
 
 stdenv.mkDerivation rec {
@@ -50,6 +51,10 @@ stdenv.mkDerivation rec {
     mv $out/bin/ToneLib-GFX $out/bin/tonelib-gfx
   '';
 
+  runtimeDependencies = [
+    (lib.getLib curl)
+  ];
+
   meta = with lib; {
     description = "Tonelib GFX is an amp and effects modeling software for electric guitar and bass.";
     homepage = "https://tonelib.net/";
diff --git a/nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix b/nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix
index c58023d6a4bd..7a5a5c7280fa 100644
--- a/nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix
+++ b/nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix
@@ -12,6 +12,7 @@
 , fribidi
 , pango
 , freetype
+, curl
 }:
 
 stdenv.mkDerivation rec {
@@ -50,6 +51,10 @@ stdenv.mkDerivation rec {
     mv $out/bin/ToneLib-Jam $out/bin/tonelib-jam
   '';
 
+  runtimeDependencies = [
+    (lib.getLib curl)
+  ];
+
   meta = with lib; {
     description = "ToneLib Jam – the learning and practice software for guitar players";
     homepage = "https://tonelib.net/";
diff --git a/nixpkgs/pkgs/applications/audio/tonelib-zoom/default.nix b/nixpkgs/pkgs/applications/audio/tonelib-zoom/default.nix
index 94ef3037a7c2..2eef1f7bd609 100644
--- a/nixpkgs/pkgs/applications/audio/tonelib-zoom/default.nix
+++ b/nixpkgs/pkgs/applications/audio/tonelib-zoom/default.nix
@@ -6,6 +6,7 @@
 , webkitgtk
 , libjack2
 , alsa-lib
+, curl
 }:
 
 stdenv.mkDerivation rec {
@@ -38,6 +39,10 @@ stdenv.mkDerivation rec {
     mv $out/bin/ToneLib-Zoom $out/bin/tonelib-zoom
   '';
 
+  runtimeDependencies = [
+    (lib.getLib curl)
+  ];
+
   meta = with lib; {
     description = "ToneLib Zoom – change and save all the settings in your Zoom(r) guitar pedal";
     homepage = "https://tonelib.net/";
diff --git a/nixpkgs/pkgs/applications/audio/tony/default.nix b/nixpkgs/pkgs/applications/audio/tony/default.nix
index aa18a5e397e4..15c973a46fc8 100644
--- a/nixpkgs/pkgs/applications/audio/tony/default.nix
+++ b/nixpkgs/pkgs/applications/audio/tony/default.nix
@@ -5,10 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "tony-2.1.1";
+  pname = "tony";
+  version = "2.1.1";
 
   src = fetchurl {
-    url = "https://code.soundsoftware.ac.uk/attachments/download/2616/${name}.tar.gz";
+    url = "https://code.soundsoftware.ac.uk/attachments/download/2616/${pname}-${version}.tar.gz";
     sha256 = "03g2bmlj08lmgvh54dyd635xccjn730g4wwlhpvsw04bffz8b7fp";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/transcode/default.nix b/nixpkgs/pkgs/applications/audio/transcode/default.nix
index ff10ff13e194..7a7ec1e41880 100644
--- a/nixpkgs/pkgs/applications/audio/transcode/default.nix
+++ b/nixpkgs/pkgs/applications/audio/transcode/default.nix
@@ -2,9 +2,10 @@
 , lzo, libdvdread, pkg-config, x264, libmpeg2, xvidcore }:
 
 stdenv.mkDerivation rec {
-  name = "transcode-1.1.7";
+  pname = "transcode";
+  version = "1.1.7";
   src = fetchurl {
-    url = "https://bitbucket.org/france/transcode-tcforge/downloads/${name}.tar.bz2";
+    url = "https://bitbucket.org/france/transcode-tcforge/downloads/${pname}-${version}.tar.bz2";
     sha256 = "1e4e72d8e0dd62a80b8dd90699f5ca64c9b0cb37a5c9325c184166a9654f0a92";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/xmp/default.nix b/nixpkgs/pkgs/applications/audio/xmp/default.nix
index 6158f33713a0..5f99555d376c 100644
--- a/nixpkgs/pkgs/applications/audio/xmp/default.nix
+++ b/nixpkgs/pkgs/applications/audio/xmp/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchurl, pkg-config, alsa-lib, libxmp }:
 
 stdenv.mkDerivation rec {
-  name = "xmp-4.1.0";
+  pname = "xmp";
+  version = "4.1.0";
 
   meta = with lib; {
     description = "Extended module player";
@@ -11,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   src = fetchurl {
-    url = "mirror://sourceforge/xmp/xmp/${name}.tar.gz";
+    url = "mirror://sourceforge/${pname}/${pname}/${pname}-${version}.tar.gz";
     sha256 = "17i8fc7x7yn3z1x963xp9iv108gxfakxmdgmpv3mlm438w3n3g8x";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/zita-ajbridge/default.nix b/nixpkgs/pkgs/applications/audio/zita-ajbridge/default.nix
index db6fc7d33812..873a294540dd 100644
--- a/nixpkgs/pkgs/applications/audio/zita-ajbridge/default.nix
+++ b/nixpkgs/pkgs/applications/audio/zita-ajbridge/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, alsa-lib, libjack2, zita-alsa-pcmi, zita-resampler }:
 
 stdenv.mkDerivation rec {
-  name = "zita-ajbridge-0.8.4";
+  pname = "zita-ajbridge";
+  version = "0.8.4";
 
   src = fetchurl {
-    url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
+    url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2";
     sha256 = "0g5v0l0zmqh049mhv62n8s5bpm0yrlby7mkxxhs5qwadp8v4w9mw";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/zita-at1/default.nix b/nixpkgs/pkgs/applications/audio/zita-at1/default.nix
index 7a66ed42b053..8a629e145c40 100644
--- a/nixpkgs/pkgs/applications/audio/zita-at1/default.nix
+++ b/nixpkgs/pkgs/applications/audio/zita-at1/default.nix
@@ -4,10 +4,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "zita-at1-0.6.2";
+  pname = "zita-at1";
+  version = "0.6.2";
 
   src = fetchurl {
-    url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
+    url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2";
     sha256 = "0mxfn61zvhlq3r1mqipyqzjbanrfdkk8x4nxbz8nlbdk0bf3vfqr";
   };
 
diff --git a/nixpkgs/pkgs/applications/blockchains/alfis/default.nix b/nixpkgs/pkgs/applications/blockchains/alfis/default.nix
new file mode 100644
index 000000000000..7a808d2c72e9
--- /dev/null
+++ b/nixpkgs/pkgs/applications/blockchains/alfis/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, lib, fetchFromGitHub, rustPlatform, pkg-config
+, withGui ? true, webkitgtk, Cocoa, WebKit
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "alfis";
+  version = "0.6.5";
+
+  src = fetchFromGitHub {
+    owner = "Revertron";
+    repo = "Alfis";
+    rev = "v${version}";
+    sha256 = "1g95yvkvlj78bqrk3p2xbhrmg1hrlgbyr1a4s7vg45y60zys2c2j";
+  };
+
+  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"
+    "--skip=dns::client::tests::test_udp_client"
+  ];
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = lib.optional (withGui && stdenv.isLinux) webkitgtk
+    ++ lib.optionals (withGui && stdenv.isDarwin) [ Cocoa WebKit ];
+
+  meta = with lib; {
+    description = "Alternative Free Identity System";
+    homepage = "https://alfis.name";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ misuzu ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/blockchains/bitcoin.nix b/nixpkgs/pkgs/applications/blockchains/bitcoin.nix
index 162a5ddee1a3..00727d294df2 100644
--- a/nixpkgs/pkgs/applications/blockchains/bitcoin.nix
+++ b/nixpkgs/pkgs/applications/blockchains/bitcoin.nix
@@ -1,21 +1,22 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchurl
-, pkg-config
 , autoreconfHook
-, db48
-, sqlite
+, pkg-config
+, util-linux
+, hexdump
+, wrapQtAppsHook ? null
 , boost
+, libevent
+, miniupnpc
 , zeromq
-, hexdump
 , zlib
-, miniupnpc
+, db48
+, sqlite
+, qrencode
 , qtbase ? null
 , qttools ? null
-, wrapQtAppsHook ? null
-, util-linux
 , python3
-, qrencode
-, libevent
 , nixosTests
 , withGui
 , withWallet ? true
@@ -43,13 +44,14 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs =
-    [ pkg-config autoreconfHook ]
-    ++ optional stdenv.isDarwin hexdump
-    ++ optional withGui wrapQtAppsHook;
-  buildInputs = [ boost zlib zeromq miniupnpc libevent ]
+    [ autoreconfHook pkg-config ]
     ++ optionals stdenv.isLinux [ util-linux ]
+    ++ optionals stdenv.isDarwin [ hexdump ]
+    ++ optionals withGui [ wrapQtAppsHook ];
+
+  buildInputs = [ boost libevent miniupnpc zeromq zlib ]
     ++ optionals withWallet [ db48 sqlite ]
-    ++ optionals withGui [ qtbase qttools qrencode ];
+    ++ optionals withGui [ qrencode qtbase qttools ];
 
   postInstall = optional withGui ''
     install -Dm644 ${desktop} $out/share/applications/bitcoin-qt.desktop
diff --git a/nixpkgs/pkgs/applications/blockchains/btcpayserver/default.nix b/nixpkgs/pkgs/applications/blockchains/btcpayserver/default.nix
index d942ac768a83..ba029aedeeb2 100644
--- a/nixpkgs/pkgs/applications/blockchains/btcpayserver/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/btcpayserver/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, fetchurl, linkFarmFromDrvs, makeWrapper,
-  dotnetPackages, dotnetCorePackages
+  dotnetPackages, dotnetCorePackages, altcoinSupport ? false
 }:
 
 let
@@ -34,8 +34,8 @@ stdenv.mkDerivation rec {
     nuget sources Add -Name tmpsrc -Source $TMP/nuget
     nuget init ${linkFarmFromDrvs "deps" deps} $TMP/nuget
 
-    dotnet restore --source $TMP/nuget BTCPayServer/BTCPayServer.csproj
-    dotnet publish --no-restore --output $out/share/$pname -c Release BTCPayServer/BTCPayServer.csproj
+    dotnet restore --source $TMP/nuget ${lib.optionalString altcoinSupport ''/p:Configuration="Altcoins-Release"''} BTCPayServer/BTCPayServer.csproj
+    dotnet publish --no-restore --output $out/share/$pname ${lib.optionalString altcoinSupport "-c Altcoins-Release"} BTCPayServer/BTCPayServer.csproj
   '';
 
   # btcpayserver requires the publish directory as its working dir
diff --git a/nixpkgs/pkgs/applications/blockchains/btcpayserver/deps.nix b/nixpkgs/pkgs/applications/blockchains/btcpayserver/deps.nix
index 20b97972107e..8884dc2fe140 100644
--- a/nixpkgs/pkgs/applications/blockchains/btcpayserver/deps.nix
+++ b/nixpkgs/pkgs/applications/blockchains/btcpayserver/deps.nix
@@ -85,6 +85,11 @@
     sha256 = "0ksmby0lzgsxkv0xfzr840262kcqra9vds91mcx0rf20blksfvsk";
   })
   (fetchNuGet {
+    name = "Common.Logging.Core";
+    version = "3.4.1";
+    sha256 = "06h80c7l12nh6gnkzskcs4w8741xhprv72vf88f33ilzfy37h5jy";
+  })
+  (fetchNuGet {
     name = "CsvHelper";
     version = "15.0.5";
     sha256 = "01y8bhsnxghn3flz0pr11vj6wjrpmia8rpdrsp7kjfc1zmhqlgma";
@@ -761,6 +766,11 @@
   })
   (fetchNuGet {
     name = "NBitcoin";
+    version = "5.0.33";
+    sha256 = "030q609b9lhapq4wfl1w3impjw5m40kz2rg1s9jn3bn8yjfmsi4a";
+  })
+  (fetchNuGet {
+    name = "NBitcoin";
     version = "5.0.4";
     sha256 = "04iafda61izzxb691brk72qs01m5dadqb4970nw5ayck6275s71i";
   })
@@ -795,6 +805,86 @@
     sha256 = "1asri2wsjq3ljf2p4r4x52ba9cirh8ccc5ysxpnv4cvladkdazbi";
   })
   (fetchNuGet {
+    name = "Nethereum.ABI";
+    version = "3.8.0";
+    sha256 = "10saq2qsqqgsf9d5cjji4lay74ydwkvkqgnns6gxikqicci8yx5c";
+  })
+  (fetchNuGet {
+    name = "Nethereum.Accounts";
+    version = "3.8.0";
+    sha256 = "03dq4l1gsd6r2hah5flas8d8pfys7hh5srd279kiidaaxrp8fv2m";
+  })
+  (fetchNuGet {
+    name = "Nethereum.BlockchainProcessing";
+    version = "3.8.0";
+    sha256 = "0sz6710a3rvzbj1ghx8dx9adfpsaydw8129c5nj2bqvvh6shi4ax";
+  })
+  (fetchNuGet {
+    name = "Nethereum.Contracts";
+    version = "3.8.0";
+    sha256 = "0989as81dqz4j0h8b5a9f5hnd4lrjdj851cfc4j5h6hd633a13f8";
+  })
+  (fetchNuGet {
+    name = "Nethereum.HdWallet";
+    version = "3.8.0";
+    sha256 = "0dy1bcm0gsp137286q3bx5q9gyd8lymrdmnh1ip3sszs5j31l9k2";
+  })
+  (fetchNuGet {
+    name = "Nethereum.Hex";
+    version = "3.8.0";
+    sha256 = "0sbi982jnfs39sp7w85wf8lb51mijpwr9mpsmws08zrm90n93kb6";
+  })
+  (fetchNuGet {
+    name = "Nethereum.JsonRpc.Client";
+    version = "3.8.0";
+    sha256 = "0gmdvsxhs398cj14f16r3dl8yv52iaxr9c9214k2ra28r14gfd1l";
+  })
+  (fetchNuGet {
+    name = "Nethereum.JsonRpc.RpcClient";
+    version = "3.8.0";
+    sha256 = "05k5f0dfcx4afbkc1w7cfnz514i7840j2haxyzsxkp8818yvfg0a";
+  })
+  (fetchNuGet {
+    name = "Nethereum.KeyStore";
+    version = "3.8.0";
+    sha256 = "05pj95vcfznlk4saq9dw19377gd1sqgmjcg5h92b5rzpgm9v811s";
+  })
+  (fetchNuGet {
+    name = "Nethereum.Model";
+    version = "3.8.0";
+    sha256 = "1qfhzqirj9bi49zb6rdcy7w5bm9jyv3a79q7crmgpq3qx4lmz5yh";
+  })
+  (fetchNuGet {
+    name = "Nethereum.RLP";
+    version = "3.8.0";
+    sha256 = "16142ag09h95394ip0ffkci09hchxh2i5xaw2rq46qcr8xd3kiym";
+  })
+  (fetchNuGet {
+    name = "Nethereum.RPC";
+    version = "3.8.0";
+    sha256 = "1m2p10dds1k0r3gci25lh6cxl9z7ciw18g6wwa4yqi1hsw7n59vb";
+  })
+  (fetchNuGet {
+    name = "Nethereum.Signer";
+    version = "3.8.0";
+    sha256 = "175acfqjqacc5zwh2kmrfnwd15jm3fjpv0xlgpyqry52mqxd9khf";
+  })
+  (fetchNuGet {
+    name = "Nethereum.StandardTokenEIP20";
+    version = "3.8.0";
+    sha256 = "0xqb32x5b9y9r380frhj52i1lxsfs92nfgcpmys3shjxz6fnwf6g";
+  })
+  (fetchNuGet {
+    name = "Nethereum.Util";
+    version = "3.8.0";
+    sha256 = "1ig1zkzpglq2q465n4c0ckv8w9gca9cfxz1qnrdhap0f1z90jyg8";
+  })
+  (fetchNuGet {
+    name = "Nethereum.Web3";
+    version = "3.8.0";
+    sha256 = "0n18chc9h1cxqp01kncik9lqfgiqrzl2zr8jgzbb05drlf6k0f3i";
+  })
+  (fetchNuGet {
     name = "NETStandard.Library";
     version = "1.6.1";
     sha256 = "1z70wvsx2d847a2cjfii7b83pjfs34q05gb037fdjikv5kbagml8";
@@ -915,6 +1005,11 @@
     sha256 = "1w6s9wjbsyvq8cnqknkdzm9chnv0g5gcsrq5i94zp6br9vg7c627";
   })
   (fetchNuGet {
+    name = "Portable.BouncyCastle";
+    version = "1.8.2";
+    sha256 = "0xqc8q40lr4r7ahsmzpa1q0jagp12abb6rsj80p37q34hsv5284q";
+  })
+  (fetchNuGet {
     name = "QRCoder";
     version = "1.4.1";
     sha256 = "1xgwhpqrm4ycnj8nk4ibxfwkmkiwc5i15l1za3ci5alghlpcb6ch";
diff --git a/nixpkgs/pkgs/applications/blockchains/btcpayserver/update.sh b/nixpkgs/pkgs/applications/blockchains/btcpayserver/update.sh
index 9debe6780f23..082911b42a3d 100755
--- a/nixpkgs/pkgs/applications/blockchains/btcpayserver/update.sh
+++ b/nixpkgs/pkgs/applications/blockchains/btcpayserver/update.sh
@@ -8,4 +8,5 @@ echo "Updating nbxplorer"
 ../nbxplorer/update.sh
 echo
 echo "Updating btcpayserver"
-../nbxplorer/util/update-common.sh btcpayserver deps.nix
+# Include Razor SDK packages in deps.nix
+../nbxplorer/util/update-common.sh btcpayserver deps.nix '"/p:Configuration="Altcoins-Release" /p:RazorCompileOnBuild=false'
diff --git a/nixpkgs/pkgs/applications/blockchains/charge-lnd/default.nix b/nixpkgs/pkgs/applications/blockchains/charge-lnd/default.nix
index a3341a25b144..b2d28ed8942b 100644
--- a/nixpkgs/pkgs/applications/blockchains/charge-lnd/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/charge-lnd/default.nix
@@ -2,13 +2,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "charge-lnd";
-  version = "0.1.3";
+  version = "0.2.2";
 
   src = fetchFromGitHub {
     owner = "accumulator";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0npn45qbbsbzj5qy9kwx662hml1y610ysmfl89sda02l6wf1sp3y";
+    sha256 = "087y60hpld17bg2ya5nlh4m4sam4s6mx8vrqhm48idj1rmlcpfws";
   };
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/nixpkgs/pkgs/applications/blockchains/chia/default.nix b/nixpkgs/pkgs/applications/blockchains/chia/default.nix
index 9bcc2ee3b467..f6ec6a0ec698 100644
--- a/nixpkgs/pkgs/applications/blockchains/chia/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/chia/default.nix
@@ -6,13 +6,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "chia";
-  version = "1.1.7";
+  version = "1.2.2";
 
   src = fetchFromGitHub {
     owner = "Chia-Network";
     repo = "chia-blockchain";
     rev = version;
-    sha256 = "05hcckkv3vhz172w9kp5lh4srakizx1l383dijs50vgx2bj30m8v";
+    sha256 = "sha256-ZYncyaX9gqBhDKiC87A2xI7VeU0zGsmm3Sx45lwgnrg=";
   };
 
   patches = [
@@ -70,8 +70,8 @@ python3Packages.buildPythonApplication rec {
       --replace "aiohttp==3.7.4" "aiohttp>=3.7.4" \
       --replace "sortedcontainers==2.3.0" "sortedcontainers>=2.3.0" \
       --replace "click==7.1.2" "click>=7.1.2" \
-      --replace "clvm_rs==0.1.7" "clvm_rs>=0.1.7" \
-      --replace "clvm==0.9.6" "clvm>=0.9.6" \
+      --replace "clvm_rs==0.1.8" "clvm_rs>=0.1.8" \
+      --replace "clvm==0.9.7" "clvm>=0.9.7" \
   '';
 
   preCheck = ''
diff --git a/nixpkgs/pkgs/applications/blockchains/dogecoin.nix b/nixpkgs/pkgs/applications/blockchains/dogecoin.nix
index 88439d6bdbfe..9985113b08a8 100644
--- a/nixpkgs/pkgs/applications/blockchains/dogecoin.nix
+++ b/nixpkgs/pkgs/applications/blockchains/dogecoin.nix
@@ -7,13 +7,13 @@
 with lib;
 stdenv.mkDerivation rec {
   name = "dogecoin" + (toString (optional (!withGui) "d")) + "-" + version;
-  version = "1.14.2";
+  version = "1.14.3";
 
   src = fetchFromGitHub {
     owner = "dogecoin";
     repo = "dogecoin";
     rev = "v${version}";
-    sha256 = "1gw46q63mjzwvb17ck6p1bap2xpdrap08szw2kjhasa3yvd5swyy";
+    sha256 = "sha256-kozUnIislQDtgjeesYHKu4sB1j9juqaWvyax+Lb/0pc=";
   };
 
   nativeBuildInputs = [ pkg-config autoreconfHook ];
diff --git a/nixpkgs/pkgs/applications/blockchains/eclair.nix b/nixpkgs/pkgs/applications/blockchains/eclair.nix
new file mode 100644
index 000000000000..7b74512a388a
--- /dev/null
+++ b/nixpkgs/pkgs/applications/blockchains/eclair.nix
@@ -0,0 +1,38 @@
+{ lib
+, stdenv
+, fetchzip
+, jq
+, openjdk11
+}:
+
+stdenv.mkDerivation rec {
+  pname = "eclair";
+  version = "0.6.1";
+  revision = "d3ae323";
+
+  src = fetchzip {
+    url = "https://github.com/ACINQ/eclair/releases/download/v${version}/eclair-node-${version}-${revision}-bin.zip";
+    sha256 = "0hmdssj6pxhvadrgr1svb2lh7hfbd2axr5wsl7glizv1a21g0l2c";
+  };
+
+  propagatedBuildInputs = [ jq openjdk11 ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir $out
+    cp -a * $out
+    mv $out/bin/eclair-node.sh $out/bin/eclair-node
+    rm $out/bin/eclair-node.bat
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "A scala implementation of the Lightning Network";
+    homepage = "https://github.com/ACINQ/eclair";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ prusnak ];
+    platforms = [ "x86_64-linux" "x86_64-darwin" ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/blockchains/elements.nix b/nixpkgs/pkgs/applications/blockchains/elements.nix
new file mode 100644
index 000000000000..c44f2078dae3
--- /dev/null
+++ b/nixpkgs/pkgs/applications/blockchains/elements.nix
@@ -0,0 +1,86 @@
+{ lib
+, stdenv
+, fetchurl
+, autoreconfHook
+, pkg-config
+, util-linux
+, hexdump
+, wrapQtAppsHook ? null
+, boost
+, libevent
+, miniupnpc
+, zeromq
+, zlib
+, db48
+, sqlite
+, qrencode
+, qtbase ? null
+, qttools ? null
+, python3
+, openssl
+, withGui
+, withWallet ? true
+}:
+
+with lib;
+stdenv.mkDerivation rec {
+  pname = if withGui then "elements" else "elementsd";
+  version = "0.18.1.12";
+
+  src = fetchurl {
+    url = "https://github.com/ElementsProject/elements/archive/elements-${version}.tar.gz";
+    sha256 = "84a51013596b09c62913649ac90373622185f779446ee7e65b4b258a2876609f";
+  };
+
+  nativeBuildInputs =
+    [ autoreconfHook pkg-config ]
+    ++ optionals stdenv.isLinux [ util-linux ]
+    ++ optionals stdenv.isDarwin [ hexdump ]
+    ++ optionals withGui [ wrapQtAppsHook ];
+
+  buildInputs = [ boost libevent miniupnpc zeromq zlib openssl ]
+    ++ optionals withWallet [ db48 sqlite ]
+    ++ optionals withGui [ qrencode qtbase qttools ];
+
+  configureFlags = [
+    "--with-boost-libdir=${boost.out}/lib"
+    "--disable-bench"
+  ] ++ optionals (!doCheck) [
+    "--disable-tests"
+    "--disable-gui-tests"
+  ] ++ optionals (!withWallet) [
+    "--disable-wallet"
+  ] ++ optionals withGui [
+    "--with-gui=qt5"
+    "--with-qt-bindir=${qtbase.dev}/bin:${qttools.dev}/bin"
+  ];
+
+  checkInputs = [ python3 ];
+
+  doCheck = true;
+
+  checkFlags =
+    [ "LC_ALL=C.UTF-8" ]
+    # QT_PLUGIN_PATH needs to be set when executing QT, which is needed when testing Bitcoin's GUI.
+    # See also https://github.com/NixOS/nixpkgs/issues/24256
+    ++ optional withGui "QT_PLUGIN_PATH=${qtbase}/${qtbase.qtPluginPrefix}";
+
+  enableParallelBuilding = true;
+
+  meta = {
+    description = "Open Source implementation of advanced blockchain features extending the Bitcoin protocol";
+    longDescription= ''
+      The Elements blockchain platform is a collection of feature experiments and extensions to the
+      Bitcoin protocol. This platform enables anyone to build their own businesses or networks
+      pegged to Bitcoin as a sidechain or run as a standalone blockchain with arbitrary asset
+      tokens.
+    '';
+    homepage = "https://www.github.com/ElementsProject/elements";
+    maintainers = with maintainers; [ prusnak ];
+    license = licenses.mit;
+    platforms = platforms.unix;
+    # Qt GUI is currently broken in upstream
+    # No rule to make target 'qt/res/rendered_icons/about.png', needed by 'qt/qrc_bitcoin.cpp'.
+    broken = withGui;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/blockchains/ergo/default.nix b/nixpkgs/pkgs/applications/blockchains/ergo/default.nix
index 8b8ff3f48ba4..a0e648218f50 100644
--- a/nixpkgs/pkgs/applications/blockchains/ergo/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/ergo/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ergo";
-  version = "4.0.12";
+  version = "4.0.13";
 
   src = fetchurl {
     url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
-    sha256 = "sha256-cIMaCouzuI7UQ6UY4caGcTzA+Xp7vLdoOwIfGG+ahsU=";
+    sha256 = "sha256-HNpyUD2Tep2XnY3lr5a3ec+NmJtt0VvJx6ujVvSugXo=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/applications/blockchains/ethabi/default.nix b/nixpkgs/pkgs/applications/blockchains/ethabi/default.nix
index e2598ba22db1..49f34a68bbac 100644
--- a/nixpkgs/pkgs/applications/blockchains/ethabi/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/ethabi/default.nix
@@ -22,6 +22,5 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://github.com/rust-ethereum/ethabi";
     maintainers = [ maintainers.dbrock ];
     license = licenses.asl20;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/applications/blockchains/go-ethereum.nix b/nixpkgs/pkgs/applications/blockchains/go-ethereum.nix
index 05bc2b824fc3..cdd2a41f0136 100644
--- a/nixpkgs/pkgs/applications/blockchains/go-ethereum.nix
+++ b/nixpkgs/pkgs/applications/blockchains/go-ethereum.nix
@@ -9,17 +9,17 @@ let
 
 in buildGoModule rec {
   pname = "go-ethereum";
-  version = "1.10.4";
+  version = "1.10.5";
 
   src = fetchFromGitHub {
     owner = "ethereum";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-DRlIiO3iXUsQnmOf5T9uk3560tVbS+Hrs8QtVkmllAI=";
+    sha256 = "sha256:1226picbgnph71fk2y0n1hyfrh6m8sh54kgn3pmikydnw176k9j1";
   };
 
   runVend = true;
-  vendorSha256 = "sha256-a/vY9iyqSM9QPs7lGFF6E7e2cMjIerVkNf5KwiWdyr0=";
+  vendorSha256 = "sha256:1nf2gamamlgr2sl5ibib5wai1pipj66xhbhnb4s4480j5pbv9a76";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/applications/blockchains/ledger-live-desktop/default.nix b/nixpkgs/pkgs/applications/blockchains/ledger-live-desktop/default.nix
index 0692f40e35f1..1c6c41a0e721 100644
--- a/nixpkgs/pkgs/applications/blockchains/ledger-live-desktop/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/ledger-live-desktop/default.nix
@@ -2,12 +2,12 @@
 
 let
   pname = "ledger-live-desktop";
-  version = "2.29.0";
+  version = "2.30.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
-    sha256 = "1y4xvnwh2mqbc39pmnpgjg8mlx208s2pipm7dazq4bgmay7k9zh0";
+    sha256 = "0xh28m3slzg6bp0fm183m62ydzqkvj384j4dwsfalgz4ndwvy595";
   };
 
   appimageContents = appimageTools.extractType2 {
diff --git a/nixpkgs/pkgs/applications/blockchains/lightning-loop/default.nix b/nixpkgs/pkgs/applications/blockchains/lightning-loop/default.nix
index 851a1b1d0400..f14af0ae7969 100644
--- a/nixpkgs/pkgs/applications/blockchains/lightning-loop/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/lightning-loop/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "lightning-loop";
-  version = "0.14.1-beta";
+  version = "0.14.2-beta";
 
   src = fetchFromGitHub {
     owner = "lightninglabs";
     repo = "loop";
     rev = "v${version}";
-    sha256 = "0fnbf0cryrw9yk3z1g7innv1rxxk7h2lhfakdj994l5a0pgzghmy";
+    sha256 = "02ndln0n5k2pin9pngjcmn3wak761ml923111fyqb379zcfscrfv";
   };
 
-  vendorSha256 = "1i7mmf4ab4a6h08df6zlyjdnmvn44i2y3fc05hq6g1ln1bzdrz40";
+  vendorSha256 = "1izdd9i4bqzmwagq0ilz2s37jajvzf1xwx3hmmbd1k3ss7mjm72r";
 
   subPackages = [ "cmd/loop" "cmd/loopd" ];
 
diff --git a/nixpkgs/pkgs/applications/blockchains/lnd.nix b/nixpkgs/pkgs/applications/blockchains/lnd.nix
index e8c6d14b3db8..c956bca9a1a5 100644
--- a/nixpkgs/pkgs/applications/blockchains/lnd.nix
+++ b/nixpkgs/pkgs/applications/blockchains/lnd.nix
@@ -1,21 +1,21 @@
 { buildGoModule
 , fetchFromGitHub
 , lib
-, tags ? [ "autopilotrpc" "signrpc" "walletrpc" "chainrpc" "invoicesrpc" "watchtowerrpc" "routerrpc" ]
+, tags ? [ "autopilotrpc" "signrpc" "walletrpc" "chainrpc" "invoicesrpc" "watchtowerrpc" "routerrpc" "monitoring" ]
 }:
 
 buildGoModule rec {
   pname = "lnd";
-  version = "0.13.0-beta";
+  version = "0.13.1-beta";
 
   src = fetchFromGitHub {
     owner = "lightningnetwork";
     repo = "lnd";
     rev = "v${version}";
-    sha256 = "0fwidjkfzzd7k891x5z7jrx2arl0kwj6vm9z2acsyy7riv4zfjbq";
+    sha256 = "07cs9yq83laajmfwfv42xfkfai3q873wg4qg7bfzw18w5fllivkg";
   };
 
-  vendorSha256 = "19myr9f5zh05y6lagd9pra60y8df7pz837310cbpq9a6zzwpdxk2";
+  vendorSha256 = "1hk67x8nlc0wm1pg8k8hywih623p4c0klfhfyy26b7mqq62lazia";
 
   subPackages = ["cmd/lncli" "cmd/lnd"];
 
diff --git a/nixpkgs/pkgs/applications/blockchains/monero-gui/default.nix b/nixpkgs/pkgs/applications/blockchains/monero-gui/default.nix
index 59e09939e800..d7a27dd4bccc 100644
--- a/nixpkgs/pkgs/applications/blockchains/monero-gui/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/monero-gui/default.nix
@@ -9,14 +9,9 @@
 , boost, libunwind, libsodium, pcsclite
 , randomx, zeromq, libgcrypt, libgpgerror
 , hidapi, rapidjson, quirc
-, trezorSupport ? true
-,   libusb1
-,   protobuf
-,   python3
+, trezorSupport ? true, libusb1, protobuf, python3
 }:
 
-with lib;
-
 stdenv.mkDerivation rec {
   pname = "monero-gui";
   version = "0.17.2.2";
@@ -30,7 +25,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     cmake pkg-config wrapQtAppsHook
-    (getDev qttools)
+    (lib.getDev qttools)
   ];
 
   buildInputs = [
@@ -41,8 +36,8 @@ stdenv.mkDerivation rec {
     randomx libgcrypt libgpgerror
     boost libunwind libsodium pcsclite
     zeromq hidapi rapidjson quirc
-  ] ++ optionals trezorSupport [ libusb1 protobuf python3 ]
-    ++ optionals stdenv.isDarwin [ qtmacextras ];
+  ] ++ lib.optionals trezorSupport [ libusb1 protobuf python3 ]
+    ++ lib.optionals stdenv.isDarwin [ qtmacextras ];
 
   postUnpack = ''
     # copy monero sources here
@@ -98,7 +93,7 @@ stdenv.mkDerivation rec {
     done;
   '';
 
-  meta = {
+  meta = with lib; {
     description  = "Private, secure, untraceable currency";
     homepage     = "https://getmonero.org/";
     license      = licenses.bsd3;
diff --git a/nixpkgs/pkgs/applications/blockchains/monero/default.nix b/nixpkgs/pkgs/applications/blockchains/monero/default.nix
index 2a12bfe872b6..7dd2e569021a 100644
--- a/nixpkgs/pkgs/applications/blockchains/monero/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/monero/default.nix
@@ -4,17 +4,9 @@
 , zeromq, pcsclite, readline, libsodium, hidapi
 , randomx, rapidjson
 , CoreData, IOKit, PCSC
-, trezorSupport ? true
-,   libusb1  ? null
-,   protobuf ? null
-,   python3  ? null
+, trezorSupport ? true, libusb1, protobuf, python3
 }:
 
-with lib;
-
-assert stdenv.isDarwin -> IOKit != null;
-assert trezorSupport -> all (x: x!=null) [ libusb1 protobuf python3 ];
-
 stdenv.mkDerivation rec {
   pname = "monero";
   version = "0.17.2.0";
@@ -45,8 +37,8 @@ stdenv.mkDerivation rec {
     zeromq pcsclite readline
     libsodium hidapi randomx rapidjson
     protobuf
-  ] ++ optionals stdenv.isDarwin [ IOKit CoreData PCSC ]
-    ++ optionals trezorSupport [ libusb1 protobuf python3 ];
+  ] ++ lib.optionals stdenv.isDarwin [ IOKit CoreData PCSC ]
+    ++ lib.optionals trezorSupport [ libusb1 protobuf python3 ];
 
   cmakeFlags = [
     "-DCMAKE_BUILD_TYPE=Release"
@@ -54,7 +46,7 @@ stdenv.mkDerivation rec {
     "-DBUILD_GUI_DEPS=ON"
     "-DReadline_ROOT_DIR=${readline.dev}"
     "-DRandomX_ROOT_DIR=${randomx}"
-  ] ++ optional stdenv.isDarwin "-DBoost_USE_MULTITHREADED=OFF";
+  ] ++ lib.optional stdenv.isDarwin "-DBoost_USE_MULTITHREADED=OFF";
 
   outputs = [ "out" "source" ];
 
diff --git a/nixpkgs/pkgs/applications/blockchains/nano-wallet/default.nix b/nixpkgs/pkgs/applications/blockchains/nano-wallet/default.nix
index 0e39587fabb3..8e8d3da92bea 100644
--- a/nixpkgs/pkgs/applications/blockchains/nano-wallet/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/nano-wallet/default.nix
@@ -45,7 +45,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     description = "Wallet for Nano cryptocurrency";
     homepage = "https://nano.org/en/wallet/";
     license = lib.licenses.bsd2;
diff --git a/nixpkgs/pkgs/applications/blockchains/nbxplorer/update.sh b/nixpkgs/pkgs/applications/blockchains/nbxplorer/update.sh
index 5db2723ef8e9..caab20c928f8 100755
--- a/nixpkgs/pkgs/applications/blockchains/nbxplorer/update.sh
+++ b/nixpkgs/pkgs/applications/blockchains/nbxplorer/update.sh
@@ -3,4 +3,4 @@ set -euo pipefail
 
 scriptDir=$(cd "${BASH_SOURCE[0]%/*}" && pwd)
 
-getVersionFromTags=1 "$scriptDir"/util/update-common.sh nbxplorer "$scriptDir"/deps.nix
+getVersionFromTags=1 "$scriptDir"/util/update-common.sh nbxplorer "$scriptDir"/deps.nix ''
diff --git a/nixpkgs/pkgs/applications/blockchains/nbxplorer/util/create-deps.sh b/nixpkgs/pkgs/applications/blockchains/nbxplorer/util/create-deps.sh
index 14b1687dffff..fb10446142e2 100755
--- a/nixpkgs/pkgs/applications/blockchains/nbxplorer/util/create-deps.sh
+++ b/nixpkgs/pkgs/applications/blockchains/nbxplorer/util/create-deps.sh
@@ -7,6 +7,7 @@ set -euo pipefail
 
 pkgSrc=$1
 depsFile=$(realpath "$2")
+customFlags=$3
 
 sln=$(cd "$pkgSrc"; find * -maxdepth 0 -name '*.sln' | head -1)
 [[ $sln ]] || { echo "No .sln file in $pkgSrc" ; exit 1; }
@@ -20,7 +21,7 @@ pushd "$tmpdir" > /dev/null
 mkdir home
 echo "Running dotnet restore for $sln"
 HOME=home DOTNET_CLI_TELEMETRY_OPTOUT=1 \
-  dotnet restore -v normal --no-cache "$sln" > restore_log
+  dotnet restore $customFlags -v normal --no-cache "$sln" > restore_log
 
 echo "{ fetchNuGet }: [" > "$depsFile"
 while read pkgSpec; do
diff --git a/nixpkgs/pkgs/applications/blockchains/nbxplorer/util/update-common.sh b/nixpkgs/pkgs/applications/blockchains/nbxplorer/util/update-common.sh
index 7a9262bf4833..a9912b8b368c 100755
--- a/nixpkgs/pkgs/applications/blockchains/nbxplorer/util/update-common.sh
+++ b/nixpkgs/pkgs/applications/blockchains/nbxplorer/util/update-common.sh
@@ -8,6 +8,7 @@ set -euo pipefail
 
 pkgName=$1
 depsFile=$2
+customFlags=$3
 
 : ${getVersionFromTags:=}
 : ${refetch:=}
@@ -71,4 +72,4 @@ echo
 
 # Create deps file
 storeSrc="$(nix-build "$nixpkgs" -A $pkgName.src --no-out-link)"
-. "$scriptDir"/create-deps.sh "$storeSrc" "$depsFile"
+. "$scriptDir"/create-deps.sh "$storeSrc" "$depsFile" "$customFlags"
diff --git a/nixpkgs/pkgs/applications/blockchains/oxen/default.nix b/nixpkgs/pkgs/applications/blockchains/oxen/default.nix
new file mode 100644
index 000000000000..6fd91495b47d
--- /dev/null
+++ b/nixpkgs/pkgs/applications/blockchains/oxen/default.nix
@@ -0,0 +1,67 @@
+{ stdenv, lib, fetchurl, fetchFromGitHub, fetchpatch
+, cmake, pkg-config
+, boost, openssl, unbound
+, pcsclite, readline, libsodium, hidapi
+, rapidjson
+, curl, sqlite
+, trezorSupport ? true
+, libusb1
+, protobuf
+, python3
+}:
+
+stdenv.mkDerivation rec {
+  pname = "oxen";
+  version = "9.1.3";
+
+  src = fetchFromGitHub {
+    owner = "oxen-io";
+    repo = "oxen-core";
+    rev = "v${version}";
+    sha256 = "11g3wqn0syk47yfcsdql5737kpad8skwdxhifn2yaz9zy8n3xqqb";
+    fetchSubmodules = true;
+  };
+
+  # Required for static linking, the only supported install path
+  lbzmqsrc = fetchurl {
+    url = "https://github.com/zeromq/libzmq/releases/download/v4.3.3/zeromq-4.3.3.tar.gz";
+    sha512 = "4c18d784085179c5b1fcb753a93813095a12c8d34970f2e1bfca6499be6c9d67769c71c68b7ca54ff181b20390043170e89733c22f76ff1ea46494814f7095b1";
+  };
+
+  postPatch = ''
+    # remove vendored libraries
+    rm -r external/rapidjson
+    sed -i s,/lib/,/lib64/, external/loki-mq/cmake/local-libzmq//LocalLibzmq.cmake
+  '';
+
+  postInstall = ''
+    rm -R $out/lib $out/include
+  '';
+
+  nativeBuildInputs = [ cmake pkg-config ];
+
+  buildInputs = [
+    boost openssl unbound
+    pcsclite readline
+    libsodium hidapi rapidjson
+    protobuf curl sqlite
+  ] ++ lib.optionals trezorSupport [ libusb1 protobuf python3 ];
+
+  cmakeFlags = [
+    "-DCMAKE_BUILD_TYPE=Release"
+    # "-DUSE_DEVICE_TREZOR=ON"
+    # "-DBUILD_GUI_DEPS=ON"
+    "-DReadline_ROOT_DIR=${readline.dev}"
+    # It build with shared libs but doesn't install them. Fail.
+    # "-DBUILD_SHARED_LIBS=ON"
+    "-DLIBZMQ_TARBALL_URL=${lbzmqsrc}"
+  ] ++ lib.optional stdenv.isDarwin "-DBoost_USE_MULTITHREADED=OFF";
+
+  meta = with lib; {
+    description = "Private cryptocurrency based on Monero";
+    homepage    = "https://oxen.io/";
+    license     = licenses.bsd3;
+    platforms   = platforms.all;
+    maintainers = [ maintainers.viric ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/blockchains/trezor-suite/default.nix b/nixpkgs/pkgs/applications/blockchains/trezor-suite/default.nix
index 4bb5f1f7a6b4..8d2da4c36650 100644
--- a/nixpkgs/pkgs/applications/blockchains/trezor-suite/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/trezor-suite/default.nix
@@ -8,7 +8,7 @@
 
 let
   pname = "trezor-suite";
-  version = "21.6.1";
+  version = "21.7.1";
   name = "${pname}-${version}";
 
   suffix = {
@@ -20,8 +20,8 @@ let
     url = "https://github.com/trezor/${pname}/releases/download/v${version}/Trezor-Suite-${version}-${suffix}.AppImage";
     # sha512 hashes are obtained from latest-linux-arm64.yml and latest-linux.yml
     sha512 = {
-      aarch64-linux = "sha512-IxWiOJEk2PHdKf4QPHH9Y5rdyhKF3aQCHJe1crS4sYrE+4BLj3rFwRPIIGhJLqzqPyW24Hw/A4lnRnDd/UpsNA==";
-      x86_64-linux  = "sha512-pSJ+4y9v1ltXun3F4UyQoSTJdaFSelIHx49DBbd180MSbpETecVa7OFadKjlSUKD1sknNXG9MDb2hv7SRNdDYw==";
+      aarch64-linux = "sha512-GEu1Zx3IQws8wsVsZUaIKvC0kTe8l/BBPSdu5q44tDpszmPugz8G/8FDAO/Ra50dzyiHhRheybZPuf2BBGGb7A==";
+      x86_64-linux  = "sha512-ghPbQa/MstzfUOWve1KNwB1t9dxK0+eYunBSoShWKpb85hgK69+ncTmhY8HejT28OkjFnGk6h4PWbrnQetj8MA==";
     }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
   };
 
diff --git a/nixpkgs/pkgs/applications/blockchains/zcash/default.nix b/nixpkgs/pkgs/applications/blockchains/zcash/default.nix
index a899071fe58d..298b678a316b 100644
--- a/nixpkgs/pkgs/applications/blockchains/zcash/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/zcash/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage.override { stdenv = stdenv; } rec {
   pname = "zcash";
-  version = "4.4.0";
+  version = "4.4.1";
 
   src = fetchFromGitHub {
     owner = "zcash";
     repo  = "zcash";
     rev = "v${version}";
-    sha256 = "19vhblyqkaf1lapx8s4v88xjpslqmrd1jnar46rschzcz0mm9sq4";
+    sha256 = "0nhrjizx518khrl8aygag6a1ianzzqpchasggi963f807kv7ipb7";
   };
 
-  cargoSha256 = "1yiy1506ijndxb9bx79p7fkfvw1c5zdsljil4m55xz1mv8dzhbgm";
+  cargoSha256 = "101j8cn2lg3l1gn53yg3svzwx783z331g9kzn9ici4azindyx903";
 
   nativeBuildInputs = [ autoreconfHook cargo hexdump makeWrapper pkg-config ];
   buildInputs = [ boost174 libevent libsodium utf8cpp ]
diff --git a/nixpkgs/pkgs/applications/editors/android-studio/default.nix b/nixpkgs/pkgs/applications/editors/android-studio/default.nix
index e0cf5138310a..0ead5ff670c2 100644
--- a/nixpkgs/pkgs/applications/editors/android-studio/default.nix
+++ b/nixpkgs/pkgs/applications/editors/android-studio/default.nix
@@ -9,17 +9,17 @@ let
     inherit buildFHSUserEnv;
   };
   stableVersion = {
-    version = "4.2.1.0"; # "Android Studio 4.2.1"
-    build = "202.7351085";
-    sha256Hash = "074y6i0h8zamjgvvs882im44clds3g6aq8rssl7sq1wx6hrn5q36";
+    version = "4.2.2.0"; # "Android Studio 4.2.2"
+    build = "202.7486908";
+    sha256Hash = "18zc9xr2xmphj6m6a1ilwripmvqzplp2583afq1pzzz3cv5h8fvk";
   };
   betaVersion = {
-    version = "2020.3.1.16"; # "Android Studio Arctic Fox (2020.3.1) Beta 1"
-    sha256Hash = "0mp1cmxkqc022nv8cggywbwcf8lp6r802nh8hcw5j00hcdnhkcq0";
+    version = "2020.3.1.20"; # "Android Studio Arctic Fox (2020.3.1) Beta 5"
+    sha256Hash = "0swcsjx29ar4b0c8yhbynshqdn2sv94ga58h2nrc99927vp17g85";
   };
   latestVersion = { # canary & dev
-    version = "2021.1.1.1"; # "Android Studio Bumblebee (2021.1.1) Canary 1"
-    sha256Hash = "0aavmk8byw817356jm28rl998gcp3zm7x3fq14hm2awzhk5jaklm";
+    version = "2021.1.1.3"; # "Android Studio Bumblebee (2021.1.1) Canary 3"
+    sha256Hash = "1n8iahaqhmzvpps9vhv93n3yabb26vl78yndd6gid028r8r90y4x";
   };
 in {
   # Attributes are named by their corresponding release channels
diff --git a/nixpkgs/pkgs/applications/editors/apostrophe/default.nix b/nixpkgs/pkgs/applications/editors/apostrophe/default.nix
index 851c3ea1c2f0..df0be4ccfbea 100644
--- a/nixpkgs/pkgs/applications/editors/apostrophe/default.nix
+++ b/nixpkgs/pkgs/applications/editors/apostrophe/default.nix
@@ -2,7 +2,7 @@
 , wrapGAppsHook, pkg-config, desktop-file-utils
 , appstream-glib, pythonPackages, glib, gobject-introspection
 , gtk3, webkitgtk, glib-networking, gnome, gspell, texlive
-, shared-mime-info, libhandy
+, shared-mime-info, libhandy, fira
 }:
 
 let
@@ -31,6 +31,12 @@ in stdenv.mkDerivation rec {
     glib-networking libhandy ];
 
   postPatch = ''
+    substituteInPlace data/media/css/web/base.css                                        \
+      --replace 'url("/app/share/fonts/FiraSans-Regular.ttf") format("ttf")'             \
+                'url("${fira}/share/fonts/opentype/FiraSans-Regular.otf") format("otf")' \
+      --replace 'url("/app/share/fonts/FiraMono-Regular.ttf") format("ttf")'             \
+                'url("${fira}/share/fonts/opentype/FiraMono-Regular.otf") format("otf")'
+
     patchShebangs --build build-aux/meson_post_install.py
   '';
 
diff --git a/nixpkgs/pkgs/applications/editors/cudatext/default.nix b/nixpkgs/pkgs/applications/editors/cudatext/default.nix
index f6e6283338d3..bab29597c76c 100644
--- a/nixpkgs/pkgs/applications/editors/cudatext/default.nix
+++ b/nixpkgs/pkgs/applications/editors/cudatext/default.nix
@@ -38,13 +38,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "cudatext";
-  version = "1.133.5";
+  version = "1.137.2";
 
   src = fetchFromGitHub {
     owner = "Alexey-T";
     repo = "CudaText";
     rev = version;
-    sha256 = "sha256-0QWYitlOS3x7BQpFTYDAjIgkw83IkRFfA/slyEvQUnw=";
+    sha256 = "sha256-OiLYXx1sBkEJpMPTa/45QPHLtmeI6ZLles7GfjEBGtQ=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/applications/editors/cudatext/deps.json b/nixpkgs/pkgs/applications/editors/cudatext/deps.json
index 7866f2dd2725..8ca09925058a 100644
--- a/nixpkgs/pkgs/applications/editors/cudatext/deps.json
+++ b/nixpkgs/pkgs/applications/editors/cudatext/deps.json
@@ -6,33 +6,33 @@
   },
   "ATBinHex-Lazarus": {
     "owner": "Alexey-T",
-    "rev": "2021.02.13",
-    "sha256": "1p2r2q1al6rcsdbbg8ilm4xn6w48bj348khxdmpak7vfwx9741h8"
+    "rev": "2021.07.02",
+    "sha256": "sha256-XSt2XfHMiF/ZIf07M65u+k5FjacyToL0rWbpcflKcuY="
   },
   "ATFlatControls": {
     "owner": "Alexey-T",
-    "rev": "2021.05.16",
-    "sha256": "sha256-oQW0M8Sx1bC+keOWivXwlD5SDKJuO5Sk/3HiO9HvJtY="
+    "rev": "2021.07.09",
+    "sha256": "sha256-hVoHH29JLPy3qq73e5EV4bxERcizocO4RBgvqD+VhWo="
   },
   "ATSynEdit": {
     "owner": "Alexey-T",
-    "rev": "2021.05.31",
-    "sha256": "sha256-4B6/I0CH9gfslwUbCTTI4kycgTHUjLGtVrCctfO6gRo="
+    "rev": "0cf6e09f673beb3a25d6957c97eeeee37024617b",
+    "sha256": "sha256-oqxzORNva7tZXNlI/mSe722p6Tbkf7Ie6GPL3TxjV98="
   },
   "ATSynEdit_Cmp": {
     "owner": "Alexey-T",
-    "rev": "2021.05.03",
-    "sha256": "sha256-zns83XA2SslHRGqa3iro0phIBlz5/neJ34TTYAKhX5Q="
+    "rev": "2021.07.09",
+    "sha256": "sha256-w5f1s8yjkYfDqAcKISRgJd3fe+f2NyO3ZtFLLfiBm2Q="
   },
   "EControl": {
     "owner": "Alexey-T",
-    "rev": "2021.05.27",
-    "sha256": "sha256-D0UBK69V28Izs9FgevtvX6vyDU7KpfIGJqcqpWaxU9E="
+    "rev": "2021.07.02",
+    "sha256": "sha256-PndvBiqdqw681AC6q33UWdzUvcYHxj1WuYsVFi2HK7c="
   },
   "ATSynEdit_Ex": {
     "owner": "Alexey-T",
-    "rev": "2021.05.27",
-    "sha256": "sha256-1zhSB6bgeW5G6RAZvhznNTpRk0uEDZnLXsk+cgElKLw="
+    "rev": "2021.07.09",
+    "sha256": "sha256-QCG9i26m3v9J4uO1I1BiDwBerH4iX1rAJuNqx+gHLnA="
   },
   "Python-for-Lazarus": {
     "owner": "Alexey-T",
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/cedille/default.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/cedille/default.nix
index 3af53cda492f..f03aa92c3af3 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/cedille/default.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/cedille/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
 
   buildInputs = [ emacs ];
 
-  buildPhase = ":";
+  dontBuild = true;
 
   installPhase = ''
     install -d $out/share/emacs/site-lisp
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/ebuild-mode/default.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/ebuild-mode/default.nix
index 1e4036b4c27d..f3adf4b9ea79 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/ebuild-mode/default.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/ebuild-mode/default.nix
@@ -5,7 +5,7 @@ trivialBuild rec {
   version = "1.52";
 
   src = fetchurl {
-    url = "https://dev.gentoo.org/~ulm/emacs/ebuild-mode-${version}.tar.xz";
+    url = "https://dev.gentoo.org/~ulm/emacs/${pname}-${version}.tar.xz";
     sha256 = "10nikbbwh612qlnms2i31963a0h3ccyg85vrxlizdpsqs4cjpg6h";
   };
 
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix
index 8a87889e7028..10a4a2cab5ef 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix
@@ -125,20 +125,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    aggressive-indent = callPackage ({ cl-lib ? null
-                                     , elpaBuild
-                                     , emacs
-                                     , fetchurl
-                                     , lib }:
+    aggressive-indent = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "aggressive-indent";
         ename = "aggressive-indent";
-        version = "1.8.3";
+        version = "1.10.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/aggressive-indent-1.8.3.el";
-          sha256 = "0jnzccl50x0wapprgwxinp99pwwa6j43q6msn4gv437j7swy8wnj";
+          url = "https://elpa.gnu.org/packages/aggressive-indent-1.10.0.tar";
+          sha256 = "166jk1z0vw481lfi3gbg7f9vsgwfv8fiyxpkfphgvgcmf5phv4q1";
         };
-        packageRequires = [ cl-lib emacs ];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/aggressive-indent.html";
           license = lib.licenses.free;
@@ -670,10 +666,10 @@
       elpaBuild {
         pname = "corfu";
         ename = "corfu";
-        version = "0.9";
+        version = "0.10";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/corfu-0.9.tar";
-          sha256 = "0710bq07j6w6zm49ci1bbx580frdbc62b3hbxwzkwm5204nf78bf";
+          url = "https://elpa.gnu.org/packages/corfu-0.10.tar";
+          sha256 = "0sqr4cld84vgfnf0fjgvbbix1p23s0n2xsszfap6d8a2xzzpp044";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -775,10 +771,10 @@
       elpaBuild {
         pname = "dash";
         ename = "dash";
-        version = "2.18.1";
+        version = "2.19.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/dash-2.18.1.tar";
-          sha256 = "17mrvmrfh5c3kri4r3gf1c3gz4i5vl9ac60grpx4103b56y4cgra";
+          url = "https://elpa.gnu.org/packages/dash-2.19.0.tar";
+          sha256 = "0qszjs60xxqjiqf5f2bgmnbx5jiqii4ghcydwg500za0n2j0f5sx";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1015,10 +1011,10 @@
       elpaBuild {
         pname = "ebdb";
         ename = "ebdb";
-        version = "0.6.24";
+        version = "0.7";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ebdb-0.6.24.tar";
-          sha256 = "0156rh6fkv2yp509h6i8qzh4gsda2mcmfrxl4r6ywn1z5ahijc3r";
+          url = "https://elpa.gnu.org/packages/ebdb-0.7.tar";
+          sha256 = "0q4ywgh87d6hjac3031s21w91gld2hh7s8nbva94dnzwn6y9d0v1";
         };
         packageRequires = [ cl-lib emacs seq ];
         meta = {
@@ -1075,10 +1071,10 @@
       elpaBuild {
         pname = "eev";
         ename = "eev";
-        version = "20210618";
+        version = "20210710";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/eev-20210618.tar";
-          sha256 = "13sb9shpj9fhns8sl3dxdgnn8z4wf14mgi4s87k5x4nrr012sscf";
+          url = "https://elpa.gnu.org/packages/eev-20210710.tar";
+          sha256 = "19k5yncyjg7afvkx54k9mplm86jyr3svjjyprrj1frdi219i5piw";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2321,10 +2317,10 @@
       elpaBuild {
         pname = "modus-themes";
         ename = "modus-themes";
-        version = "1.4.0";
+        version = "1.5.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/modus-themes-1.4.0.tar";
-          sha256 = "0ssckl06jk08vaq4g7sxpzvc3ybm339fzbn9qw21w82v1l60rzpm";
+          url = "https://elpa.gnu.org/packages/modus-themes-1.5.0.tar";
+          sha256 = "0y5a7g66iiai20fvc6qff3ki792bzca87zxbmxl8hpks4a6znc80";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2889,10 +2885,10 @@
       elpaBuild {
         pname = "pyim";
         ename = "pyim";
-        version = "3.8.2";
+        version = "3.9.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/pyim-3.8.2.tar";
-          sha256 = "05sgciqb0hzy07j8pvbg7h2vpa9z5z60m6pknxd3b1kpi45vaihw";
+          url = "https://elpa.gnu.org/packages/pyim-3.9.2.tar";
+          sha256 = "18m5wni1zns8fad2ll9flbfgxfy14gi03apnycajdbqxsqfp65j9";
         };
         packageRequires = [ async emacs xr ];
         meta = {
@@ -3430,10 +3426,10 @@
       elpaBuild {
         pname = "slime-volleyball";
         ename = "slime-volleyball";
-        version = "1.1.7";
+        version = "1.2.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/slime-volleyball-1.1.7.tar";
-          sha256 = "0dl1x0ghfwg4vv2asz3g4plghjxpzd56fyw09vsa3s3k9xsmy3yy";
+          url = "https://elpa.gnu.org/packages/slime-volleyball-1.2.0.tar";
+          sha256 = "07xavg6xq5ckrfy5sk5k5ldb46m5w8nw1r1k006ck8f23ajaw5z2";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -3561,16 +3557,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    spinner = callPackage ({ elpaBuild, fetchurl, lib }:
+    spinner = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "spinner";
         ename = "spinner";
-        version = "1.7.3";
+        version = "1.7.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/spinner-1.7.3.el";
-          sha256 = "19kp1mmndbmw11sgvv2ggfjl4pyf5zrsbh3871f0965pw9z8vahd";
+          url = "https://elpa.gnu.org/packages/spinner-1.7.4.tar";
+          sha256 = "140kss25ijbwf8hzflbjz67ry76w2cyrh02axk95n6qcxv7jr7pv";
         };
-        packageRequires = [];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/spinner.html";
           license = lib.licenses.free;
@@ -3824,10 +3820,10 @@
       elpaBuild {
         pname = "transient";
         ename = "transient";
-        version = "0.3.5";
+        version = "0.3.6";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/transient-0.3.5.tar";
-          sha256 = "15dlj21gn0zxywic9wdcp5zc8skm1s170bq7smgkpd3p3lxslf68";
+          url = "https://elpa.gnu.org/packages/transient-0.3.6.tar";
+          sha256 = "11n2551kvfjrqyk0x78bz6pirnfs126cbchiv1pchqwyk8z8c9ks";
         };
         packageRequires = [ emacs ];
         meta = {
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix
index 02a9a6e65622..69db13fec19e 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix
@@ -21,7 +21,7 @@ formats commits for you.
 
 */
 
-{ lib, stdenv, texinfo, writeText }:
+{ lib, stdenv, texinfo, writeText, gcc }:
 
 self: let
 
@@ -32,7 +32,7 @@ self: let
   };
 
   elpaBuild = import ../../../../build-support/emacs/elpa.nix {
-    inherit lib stdenv texinfo writeText;
+    inherit lib stdenv texinfo writeText gcc;
     inherit (self) emacs;
   };
 
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacs2nix.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacs2nix.nix
index 5d4c438bce90..c2ea756a06ea 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacs2nix.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacs2nix.nix
@@ -2,10 +2,10 @@ let
   pkgs = import ../../../../.. { };
 
   src = pkgs.fetchgit {
-    url = "https://github.com/ttuegel/emacs2nix.git";
+    url = "https://github.com/nix-community/emacs2nix.git";
     fetchSubmodules = true;
-    rev = "860da04ca91cbb69c9b881a54248d16bdaaf9923";
-    sha256 = "1r3xmyk9rfgx7ln69dk8mgbnh3awcalm3r1c5ia2shlsrymvv1df";
+    rev = "703b144eeb490e87133c777f82e198b4e515c312";
+    sha256 = "sha256-YBbRh/Cb8u9+Pn6/Bc0atI6knKVjr8jiTGgFkD2FNGI=";
   };
 in
 pkgs.mkShell {
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/libgenerated.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/libgenerated.nix
index 2ddafc4796c0..8ecce11a7421 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/libgenerated.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/libgenerated.nix
@@ -67,8 +67,7 @@ in {
         lib.nameValuePair ename (
           self.callPackage ({ melpaBuild, fetchurl, ... }@pkgargs:
           melpaBuild {
-            inherit pname;
-            ename = ename;
+            inherit pname ename commit;
             version = if isNull version then "" else
               lib.concatStringsSep "." (map toString version);
             # TODO: Broken should not result in src being null (hack to avoid eval errors)
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix
new file mode 100644
index 000000000000..0ab44fccc8e5
--- /dev/null
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix
@@ -0,0 +1,93 @@
+{ callPackage }:
+  {
+    caml = callPackage ({ elpaBuild, fetchurl, lib }:
+      elpaBuild {
+        pname = "caml";
+        ename = "caml";
+        version = "4.7.1";
+        src = fetchurl {
+          url = "https://elpa.nongnu.org/nongnu/caml-4.7.1.tar";
+          sha256 = "1bv2fscy7zg7r1hyg4rpvh3991vmhy4zid7bv1qbhxa95m9c49j3";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/caml.html";
+          license = lib.licenses.free;
+        };
+      }) {};
+    markdown-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "markdown-mode";
+        ename = "markdown-mode";
+        version = "2.4";
+        src = fetchurl {
+          url = "https://elpa.nongnu.org/nongnu/markdown-mode-2.4.tar";
+          sha256 = "002nvc2p7jzznr743znbml3vj8a3kvdd89rlbi28f5ha14g2567z";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/markdown-mode.html";
+          license = lib.licenses.free;
+        };
+      }) {};
+    org-contrib = callPackage ({ elpaBuild, emacs, fetchurl, lib, org }:
+      elpaBuild {
+        pname = "org-contrib";
+        ename = "org-contrib";
+        version = "0.1";
+        src = fetchurl {
+          url = "https://elpa.nongnu.org/nongnu/org-contrib-0.1.tar";
+          sha256 = "07hzywvgj11wd21dw4lbkvqv32da03407f9qynlzgg1qa7wknm2k";
+        };
+        packageRequires = [ emacs org ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/org-contrib.html";
+          license = lib.licenses.free;
+        };
+      }) {};
+    request = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "request";
+        ename = "request";
+        version = "0.3.3";
+        src = fetchurl {
+          url = "https://elpa.nongnu.org/nongnu/request-0.3.3.tar";
+          sha256 = "168yy902bcjfdaahsbzhzb4wgqbw1mq1lfwdjh66fpzqs75c5q00";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/request.html";
+          license = lib.licenses.free;
+        };
+      }) {};
+    sly = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "sly";
+        ename = "sly";
+        version = "1.0.43";
+        src = fetchurl {
+          url = "https://elpa.nongnu.org/nongnu/sly-1.0.43.tar";
+          sha256 = "0qgji539qwk7lv9g1k11w0i2nn7n7nk456gwa0bh556mcqz2ndr8";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/sly.html";
+          license = lib.licenses.free;
+        };
+      }) {};
+    tuareg = callPackage ({ caml, elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "tuareg";
+        ename = "tuareg";
+        version = "2.3.0";
+        src = fetchurl {
+          url = "https://elpa.nongnu.org/nongnu/tuareg-2.3.0.tar";
+          sha256 = "0a24q64yk4bbgsvm56j1y68zs9yi25qyl83xydx3ff75sk27f1yb";
+        };
+        packageRequires = [ caml emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/tuareg.html";
+          license = lib.licenses.free;
+        };
+      }) {};
+  }
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-packages.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-packages.nix
new file mode 100644
index 000000000000..c3459448c281
--- /dev/null
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-packages.nix
@@ -0,0 +1,32 @@
+/*
+
+# Updating
+
+To update the list of packages from nongnu (ELPA),
+
+1. Run `./update-nongnu`.
+2. Check for evaluation errors: `nix-instantiate ../../../../.. -A emacs.pkgs.nongnuPackages`.
+3. Run `git commit -m "org-packages $(date -Idate)" -- nongnu-generated.nix`
+
+*/
+
+{ lib }:
+
+self: let
+
+  generateNongnu = lib.makeOverridable ({
+    generated ? ./nongnu-generated.nix
+  }: let
+
+    imported = import generated {
+      inherit (self) callPackage;
+    };
+
+    super = imported;
+
+    overrides = {
+    };
+
+  in super // overrides);
+
+in generateNongnu { }
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/org-generated.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/org-generated.nix
index e5f6f1aa7c9e..5d043f9de9a1 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/org-generated.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/org-generated.nix
@@ -4,10 +4,10 @@
       elpaBuild {
         pname = "org";
         ename = "org";
-        version = "20210628";
+        version = "20210712";
         src = fetchurl {
-          url = "https://orgmode.org/elpa/org-20210628.tar";
-          sha256 = "1sn2yyynndk8qf43ss8bayll33r4ina8xfx4ywzcs3m1lm6xy1zl";
+          url = "https://orgmode.org/elpa/org-20210712.tar";
+          sha256 = "0xdxzfk7hvsmlyivn61ivci6hy2alxg2ysdm5xad4xxz337jrj7x";
         };
         packageRequires = [];
         meta = {
@@ -19,10 +19,10 @@
       elpaBuild {
         pname = "org-plus-contrib";
         ename = "org-plus-contrib";
-        version = "20210628";
+        version = "20210712";
         src = fetchurl {
-          url = "https://orgmode.org/elpa/org-plus-contrib-20210628.tar";
-          sha256 = "0r4kxp1hbhkwvi7939fglng8db4h4n7vigy8pd2gia3a02xcw8l5";
+          url = "https://orgmode.org/elpa/org-plus-contrib-20210712.tar";
+          sha256 = "1cdpwsfjmjplyik1r9kl4lvd5lm52zrixlfg2ml1mhh28s680k0q";
         };
         packageRequires = [];
         meta = {
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
index 86d117b89561..5581a52fed47 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
@@ -25,17 +25,17 @@
  },
  {
   "ename": "0x0",
-  "commit": "982788433004ba644a372c50130613e3c56bba10",
-  "sha256": "0447s6jq57g0p5myb295930wyqk7q5qj00r8qi3l39670xsgbqdl",
-  "fetcher": "git",
-  "url": "https://git.sr.ht/~pkal/nullpointer-emacs",
+  "commit": "f725830dd12dcf466b7b1efe54b9eb3b55e5f959",
+  "sha256": "0s8q6wzzbqlpxsf9757r44lf8i8h72x4j020wmv4hvbxdvprqxq4",
+  "fetcher": "gitlab",
+  "repo": "willvaughn/emacs-0x0",
   "unstable": {
    "version": [
-    20210628,
-    1207
+    20210701,
+    839
    ],
-   "commit": "a613afa08271a75551a4d2165b4ab872b131edc0",
-   "sha256": "1ngaq8ldyv9h0g5c83y4g5z1a19z4k90dha5y4g7v3lpzmqx4jgn"
+   "commit": "63cd5eccc85e527f28e1acc89502a53245000428",
+   "sha256": "1cd0drlhi0lf1vmarcfl3vc7ldkymaj50dhqb1ajm7r0s5ps3asb"
   },
   "stable": {
    "version": [
@@ -122,6 +122,21 @@
   }
  },
  {
+  "ename": "750words",
+  "commit": "bee7108d3b0f4861ec23ab7a87ddd5fbf17952c7",
+  "sha256": "0j63ry8x617xdrffiwkwdngp6y3rik0nq2w61yf6sa097fmzpl2p",
+  "fetcher": "github",
+  "repo": "zzamboni/750words-client",
+  "unstable": {
+   "version": [
+    20210701,
+    1950
+   ],
+   "commit": "0fed7621c04debad64ea6455455494d4e6eb03fa",
+   "sha256": "1qglbfdc6526aqsba93ngw1a6hp19lqx1wlxzzy9yvggbb02mii2"
+  }
+ },
+ {
   "ename": "@",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "0da0xqk8fhz8aij3zmpp4bz3plpvfq2riyy17i7ny4ralxb3g08z",
@@ -1585,8 +1600,8 @@
   "repo": "chumpage/ack-menu",
   "unstable": {
    "version": [
-    20150504,
-    2022
+    20130107,
+    640
    ],
    "deps": [
     "mag-menu"
@@ -1936,8 +1951,8 @@
     "annotation",
     "eri"
    ],
-   "commit": "007a26fb5f7d9eb54db16484fb116d6e47c8cc5e",
-   "sha256": "1w9pra3qqmidsf5mvp0lmk9liw1ryaf8kjiawfgyyc6mzgw6nrvz"
+   "commit": "3543ef3df19228012a1ac5be766cc38fd2f65f6a",
+   "sha256": "0wlqrl8ikqc7q61i2qzmwp6h0mrv9kn5229pbsrb1ris7gxgi13b"
   },
   "stable": {
    "version": [
@@ -1979,23 +1994,20 @@
   "repo": "Malabarba/aggressive-indent-mode",
   "unstable": {
    "version": [
-    20200824,
-    2352
+    20210701,
+    2224
    ],
-   "commit": "b0ec0047aaae071ad1647159613166a253410a63",
-   "sha256": "0rz010ypy1rg8v6na05zs942ikzqg1l32inzpzqg2q2rnfa3wkx1"
+   "commit": "cb416faf61c46977c06cf9d99525b04dc109a33c",
+   "sha256": "1mlvdxs4jbxxfj57h2hc6yapgz4zzqj80k4psds116kpp0y2r5ja"
   },
   "stable": {
    "version": [
     1,
-    9,
+    10,
     0
    ],
-   "deps": [
-    "cl-lib"
-   ],
-   "commit": "d6778ae89cd2d40949aa076a43e327f7acff59c3",
-   "sha256": "0xya19w1bwpqrrqvmms0lfhqb168iv7j6kvnn49zbynnf9dhgr9w"
+   "commit": "cb416faf61c46977c06cf9d99525b04dc109a33c",
+   "sha256": "1mlvdxs4jbxxfj57h2hc6yapgz4zzqj80k4psds116kpp0y2r5ja"
   }
  },
  {
@@ -2268,11 +2280,11 @@
   "repo": "jgkamat/alda-mode",
   "unstable": {
    "version": [
-    20180608,
-    605
+    20210705,
+    654
    ],
-   "commit": "1692b9003d2c3de403251ec452c6ce43ec819c84",
-   "sha256": "0kz0b2c1np088wbmnlvznizsv8nwiidgs67cn4dz46k66g9yg3g5"
+   "commit": "4de011d572e958a377fb16daae05a1b411f0c8ad",
+   "sha256": "1x4apig2hrvvy6pjciklmz5afpq5l4rmfjahc2wvyzs79abh0icx"
   },
   "stable": {
    "version": [
@@ -2321,16 +2333,20 @@
    "deps": [
     "flycheck"
    ],
-   "commit": "bf859fdb80a46c6d0d9fd8f8540a8ae96d5c1016",
-   "sha256": "1bp3q84alqwkglifhwc5kcrb2dc22kjd3l0h9r0bh1klz70sjss4"
+   "commit": "3fad996473200fa07b0381cd66179089d10fcc6f",
+   "sha256": "0qj4cjra1kyiw8h2qm024wgy9fy3xjwik7sr1mfkhk1gbndl8m3w"
   },
   "stable": {
    "version": [
     1,
-    0
+    2,
+    1
+   ],
+   "deps": [
+    "flycheck"
    ],
-   "commit": "55fc849cdb7a05bbaab6f9359386d8830bdcfb87",
-   "sha256": "0v5jfmqcvridh8z7y8i5hklybfxicgmbnambi21ml34px3p9fldc"
+   "commit": "7b7041fd58c2b1893e4b65b18045880ecc7a1c73",
+   "sha256": "1lvhzi6fxnmpcr7xac6ri3904cqbp016ivziih3nfchdzznmzljj"
   }
  },
  {
@@ -2425,11 +2441,11 @@
   "repo": "domtronn/all-the-icons.el",
   "unstable": {
    "version": [
-    20210603,
-    1604
+    20210703,
+    2203
    ],
-   "commit": "facbde4a7be292bf9490932cbe403b443273f45d",
-   "sha256": "0lwgvgnqf7vihglm0c5bwsxbl4x7f641289cji5s7jwy2dbsqk7g"
+   "commit": "9d97c074b08000eacefc03ebc5dadbdc33888cc2",
+   "sha256": "06ya21isl47cfs4fsl8k3qzh7d27gss0snxv7mmv8a0c7rgjyx7j"
   },
   "stable": {
    "version": [
@@ -2503,8 +2519,8 @@
    "deps": [
     "all-the-icons"
    ],
-   "commit": "5a984b4d7f811e2ad08fdc461a1e89205804b7bd",
-   "sha256": "05bglgqc4q5p9zr6ylllg16crpxcnb6p51xkk5v1nljgi3n9786l"
+   "commit": "f304d283cbb815cd28b86c1cbe74b706c0678e25",
+   "sha256": "1afjcv94p8za3ri9c324j1wdg4klpcaippby3r1avwnjy5l9qpav"
   },
   "stable": {
    "version": [
@@ -2566,8 +2582,8 @@
     "all-the-icons",
     "ivy-rich"
    ],
-   "commit": "07b8c5271719afa6a4c598c2a19f4a096ca6efe8",
-   "sha256": "1blr46w08s9f3wrcarqds09is9akdsq8faghshby5fnk9s5srkq3"
+   "commit": "78ee2fb4eb43c970e12a91949f7efd26ca1834d5",
+   "sha256": "04pgr5xjk84kksck7f1y9gpvxxnsy803zq252hg1pzg1pl6bx3ga"
   },
   "stable": {
    "version": [
@@ -2633,8 +2649,8 @@
     20200723,
     1037
    ],
-   "commit": "b36c2b2bccc628da1579016381d5c3195c9e12b2",
-   "sha256": "19nqpg91in65gj59zndhncx6c1005k0wh05rprv1z6465j5gd40g"
+   "commit": "4aba676d49b0705cb4431b7e7c733ef8eac7d5aa",
+   "sha256": "1z5b5ivn81hmvndd7ari07kj1bsp9ziyxcrgf7xq21g1dfsbq8cs"
   },
   "stable": {
    "version": [
@@ -3201,8 +3217,8 @@
     20200914,
     644
    ],
-   "commit": "007a26fb5f7d9eb54db16484fb116d6e47c8cc5e",
-   "sha256": "1w9pra3qqmidsf5mvp0lmk9liw1ryaf8kjiawfgyyc6mzgw6nrvz"
+   "commit": "3543ef3df19228012a1ac5be766cc38fd2f65f6a",
+   "sha256": "0wlqrl8ikqc7q61i2qzmwp6h0mrv9kn5229pbsrb1ris7gxgi13b"
   },
   "stable": {
    "version": [
@@ -3655,8 +3671,8 @@
     20210223,
     1539
    ],
-   "commit": "a45c426b7e4a450faea004ef5b842fd37e17a7c6",
-   "sha256": "1f7bvcv4qqqa5bsfrcs69yc1phgnyrh5mbnb2hhgq72z8ymmrn7q"
+   "commit": "267a1453f58a6a6577a1d5752c876fdaa2896a6d",
+   "sha256": "0l5nfj5wz9cjpl9906w8q3p6ciwr6imf4nqh8i2s4dzip4n9w6nl"
   },
   "stable": {
    "version": [
@@ -4086,7 +4102,7 @@
   "unstable": {
    "version": [
     20210501,
-    1527
+    1536
    ],
    "commit": "9a8cd0c3d5c120bfa03187c54dba6e33f6e3ca19",
    "sha256": "1s2gdilaf38m2dg6nm4kcz5n4n455a9127pl4cbz9lg7mp3l2pg5"
@@ -4175,8 +4191,8 @@
     20201026,
     339
    ],
-   "commit": "449596a61f551ba5f8f3ff731984316e3b99faba",
-   "sha256": "0r21mxadvx4scnmx76kqnqmnvw9mx1394dvs34i5mr02nal3vhsg"
+   "commit": "375488bed4f279cf56a5c60ff236b320d3bfa169",
+   "sha256": "1kms5dkxz5ppf2iw95p4mvnkssp2iwp483mn4x0xvv53lglnjlxw"
   },
   "stable": {
    "version": [
@@ -4199,8 +4215,8 @@
     20200810,
     845
    ],
-   "commit": "79adac0149bb6083ad3a327c6bbdf56537282ee9",
-   "sha256": "1kd9fk1f3aaw0ikkbf9n6w5b2sy7v0xzsch688h8ac9rp6s2yws8"
+   "commit": "67b67de68f3d878f98c96ea7e340344aed6e6e46",
+   "sha256": "0qg04bn50s2chnwk7krdfkhq6y944fbgbwxs507qgmg4n0iyzkln"
   },
   "stable": {
    "version": [
@@ -4482,8 +4498,8 @@
     "keytar",
     "s"
    ],
-   "commit": "9ecdd6226b50a1a04675b65589e6cc36fd3aea2c",
-   "sha256": "04vr0i4y9i96vm1pliac8snnvlwqzafy7xrq39wpvhvd99qr4845"
+   "commit": "ab6f89a412ae47d257352b26f9667c3c062a7328",
+   "sha256": "1ha0v6np9qwg7lqcj0srq0qljs6yx2rgdj0dzwk74mqlk1xb5lzv"
   },
   "stable": {
    "version": [
@@ -4947,22 +4963,25 @@
   "repo": "jcs-elpa/auto-highlight-symbol",
   "unstable": {
    "version": [
-    20210629,
-    1535
+    20210715,
+    1416
    ],
    "deps": [
     "ht"
    ],
-   "commit": "45c472cf72df1d477550dcc07e556047b2fc5852",
-   "sha256": "1xbkcpidmzlbv3qs8r9i880pbkf7w78xagh85nvcrv965ra66k6c"
+   "commit": "3425ee2eac724d1d64170a8b9d23afc18f8951a9",
+   "sha256": "08m6wyfvy6i99q25nk6b7d1bvlfalvdlafh7ajglj6fnpdjmnk0h"
   },
   "stable": {
    "version": [
     1,
-    60
+    61
+   ],
+   "deps": [
+    "ht"
    ],
-   "commit": "d5125800b038d1275aabd14008ede75a3a858587",
-   "sha256": "1mi4mayfavkfm9fkg1j1wcv6kvb2cfgf5nr5kk15jhy7x1ajwphp"
+   "commit": "ca285d84e4a22514adaff2f0ba39657e296f4fff",
+   "sha256": "0lkdx247isrjsn8v51dqmxv6xcg4shqbnz5jxmw05isvhvm9k3xb"
   }
  },
  {
@@ -5100,8 +5119,8 @@
     20210629,
     1537
    ],
-   "commit": "ac7b7183c5e84da110e2f4850c5d8bc5325d058a",
-   "sha256": "1hzh6ajccmkc2p5kcbl7vjh16rdh4nw3kmncw8ca32ij3l01rmb1"
+   "commit": "9511446c4359100d0b6433579e663852bf8f36ef",
+   "sha256": "0gkkgkqvs7sq5s43srzzi8s5xm4pj53x9lifg79cad15a6i9a8sc"
   },
   "stable": {
    "version": [
@@ -5305,14 +5324,11 @@
   "url": "https://git.sr.ht/~pkal/autocrypt",
   "unstable": {
    "version": [
-    20210412,
-    1127
-   ],
-   "deps": [
-    "cl-generic"
+    20210709,
+    1230
    ],
-   "commit": "1dc4e5983382093fc74c81d84a45cd2b53adfd90",
-   "sha256": "0r99h100v43i7wr2c1jqgyzixlc1y973swwfa9cfmnaxck3ibk93"
+   "commit": "32786dc552569c7cc9970628f580b0b7b8e0b03d",
+   "sha256": "0vs8kwgxvmbr1yy1f8jvxpixy4jfxpdk17mq0gfvlcmnqb560gdr"
   }
  },
  {
@@ -5727,11 +5743,11 @@
   "url": "https://bitbucket.org/pdo/axiom-environment",
   "unstable": {
    "version": [
-    20210312,
-    2248
+    20210714,
+    1912
    ],
-   "commit": "ac8228a702290732ba12c5d13b38576a57afb0d6",
-   "sha256": "1nrlgrckvh2fiwis9bmr95h2bpxfkz1nknxdz61380f2caqwwhw7"
+   "commit": "7d72e6319b98b334f74b78f3d4151e92fb7dcbad",
+   "sha256": "1hwcndb1x3i51l0kvzk4mj6sil8h10mxmazic9zvwjhia9qz9hz3"
   }
  },
  {
@@ -6078,11 +6094,11 @@
   "repo": "belak/base16-emacs",
   "unstable": {
    "version": [
-    20210506,
-    1530
+    20210710,
+    1645
    ],
-   "commit": "59692942f34b9be0447a7766ad03115d04e79874",
-   "sha256": "1la7671sz666in8zx35j517sbj2y4jyasnj0x9yxh5n4g5qdrnbp"
+   "commit": "7f1db3df9bb6f4a3c9f4d3c10b9a6cf231752547",
+   "sha256": "0ycxj4lmmkbpmb8yizys25rdh0zrmw4sbgj19wb6zp2d30xk32qf"
   },
   "stable": {
    "version": [
@@ -6296,11 +6312,11 @@
   "repo": "bazelbuild/emacs-bazel-mode",
   "unstable": {
    "version": [
-    20210605,
-    906
+    20210715,
+    2325
    ],
-   "commit": "667554f76696a3cbb50c4c01b121c1aef882195a",
-   "sha256": "169x8d52hkb30w2c4ww7lpipdin5406nm2i95fbbxs1sz1068b8r"
+   "commit": "3b0a3a2200cd93497563812d4026c4d67b13e91a",
+   "sha256": "0pgn1j6fpj2qjns2zvzaswk5l65mkd6sxs08l6z0q2926gb7dpx9"
   }
  },
  {
@@ -6760,11 +6776,11 @@
   "repo": "gilbertw1/better-jumper",
   "unstable": {
    "version": [
-    20210110,
-    1317
+    20210713,
+    1426
    ],
-   "commit": "411ecdf6e7a3e1b4ced7605070d2309e5fc46556",
-   "sha256": "03jgfrpjlvn7fkv9grcqayphz2bjjkfh4rd6k1s7vmdpd3hm0xpb"
+   "commit": "7f328a886ba4dd01993d269eee01c8ee3d0ddf52",
+   "sha256": "1xfap2db1ncfdnv8d3vdn8gxgkzamz8vz9jsyn0jiminhy0hb2na"
   }
  },
  {
@@ -6775,11 +6791,11 @@
   "repo": "jcs-elpa/better-scroll",
   "unstable": {
    "version": [
-    20201013,
-    1355
+    20210715,
+    1004
    ],
-   "commit": "eaa8dae6f048fcff773f3cca2e3113c52ad0463f",
-   "sha256": "0r8g5gc454mnk6jbmdx56dfjkw57003c677csb30pf15fxnxp2r4"
+   "commit": "eb389204f9dadd8a040a78e79a17732daca7e253",
+   "sha256": "1m3v51hnhrfxpqqalkx26d1x6v109w83w7h5mwfa64hmgpax9r7i"
   },
   "stable": {
    "version": [
@@ -7022,14 +7038,14 @@
   "repo": "bdarcus/bibtex-actions",
   "unstable": {
    "version": [
-    20210625,
-    1718
+    20210714,
+    1030
    ],
    "deps": [
     "bibtex-completion"
    ],
-   "commit": "ee09acded11c160001e60c47de700e5fee6e9426",
-   "sha256": "0i4476gydsyandyb3r53hk8izx9jpmg03ny8f4glxcvlsm1ysvzf"
+   "commit": "f5b73bce4fcc31d55044d17949569b35dc50283b",
+   "sha256": "06wv37ck15i4m90lwksyc4zq9pwx4ljr90g8yqjmmracpgbm967y"
   },
   "stable": {
    "version": [
@@ -7869,8 +7885,8 @@
   "repo": "boogie-org/boogie-friends",
   "unstable": {
    "version": [
-    20210323,
-    1836
+    20210703,
+    238
    ],
    "deps": [
     "cl-lib",
@@ -7879,8 +7895,8 @@
     "flycheck",
     "yasnippet"
    ],
-   "commit": "bc5572f796bc3ecafadadcbd93de73052304c856",
-   "sha256": "0x1lw3cx9vx0l9xr9683p2385msny8dkp2w5l6kfa8imbyclpkp2"
+   "commit": "1e3b6a8aee9fa7c113468838c5b647080caf3703",
+   "sha256": "1h3j7a1y5p90dd1vj4kyngj5xvbr2z4dkzkq74s85bqf61j66yw2"
   }
  },
  {
@@ -8556,16 +8572,16 @@
   "repo": "countvajhula/buffer-ring",
   "unstable": {
    "version": [
-    20210624,
-    1642
+    20210707,
+    1745
    ],
    "deps": [
     "dynaring",
     "ht",
     "s"
    ],
-   "commit": "4a226bc410ec7b5b0323879b03aad73be1b69728",
-   "sha256": "02l4wh4qykbk58cda8l3cyg4lpf5zjr0ss4927ac48nlxnawcrsa"
+   "commit": "25c44a39742b21122e1e2adf1f6c5828148cd3ee",
+   "sha256": "130304bmlz46z6g56bsr745zfb8mxw5kzkslb8vdz7hvcp75wfc4"
   },
   "stable": {
    "version": [
@@ -8664,8 +8680,8 @@
     20200924,
     345
    ],
-   "commit": "2b12ed29cbcd733ad21d91475d1fcbd4092c604e",
-   "sha256": "1x9vayhq5cpqglkz4bzd9iaa1p0j0qsvh5pr6vkqi2z1nrjcwi8g"
+   "commit": "a14568210e212a4dfb93898218c4df58ff204089",
+   "sha256": "0b7lc14sn88r3wf8yqnx41wr704fm8kd6nxbd4874jaw01yp8x63"
   },
   "stable": {
    "version": [
@@ -8685,18 +8701,17 @@
   "repo": "alphapapa/bufler.el",
   "unstable": {
    "version": [
-    20201226,
-    2149
+    20210716,
+    1006
    ],
    "deps": [
     "dash",
-    "dash-functional",
     "f",
     "magit-section",
     "pretty-hydra"
    ],
-   "commit": "097f4349920215bdd829fceabc1afdbba172c32a",
-   "sha256": "1a4y3p7cwygw09b9f9j9m821aiyjiji55mrm83pvv0xzc9rhwd3h"
+   "commit": "d466eac6c4b2ee25c765e7f31e44beb38dd44e4b",
+   "sha256": "00gyqpm0g437z71vbfd4kmih23vh6909dvygng133vxzly9k4f24"
   },
   "stable": {
    "version": [
@@ -8911,14 +8926,14 @@
   "repo": "alphapapa/burly.el",
   "unstable": {
    "version": [
-    20210621,
-    845
+    20210709,
+    415
    ],
    "deps": [
     "map"
    ],
-   "commit": "c6d6aaeded0ef892af307652503de21db2a2a5b3",
-   "sha256": "1ic6qgmcj4l7a4775wwz45qwadj4ha4z3v2qlr4s54hzzldwc9w7"
+   "commit": "a67a026db0937b26c0b7a2fcf81bf44498ad2dd1",
+   "sha256": "0xck02i9l0yw7yzy6sgzg17k2hyqaj9lvafp7r229xzw8rdzl8cr"
   },
   "stable": {
    "version": [
@@ -9601,7 +9616,7 @@
   "unstable": {
    "version": [
     20210311,
-    831
+    830
    ],
    "deps": [
     "anaconda-mode",
@@ -10154,8 +10169,8 @@
     20210621,
     654
    ],
-   "commit": "720f9145d88b3e54b5388742c8a1a2b963d74581",
-   "sha256": "1mgjw93b5mag1ivvxsm416nkvappi4rkddpjlpjcvqw7lwzgps3d"
+   "commit": "614a8d94f67cdc1eeef8371f7b6b90aef8a78158",
+   "sha256": "1i9la8rh1sgvnk1kwd180x3daaglh3xzlbbfirnjsiqn3yyl9flk"
   },
   "stable": {
    "version": [
@@ -10409,8 +10424,8 @@
     20171115,
     2108
    ],
-   "commit": "3a5929f70b2b258e4786f86383edee6db76bd5a7",
-   "sha256": "05a004z6lxafi9x16br3hhflv7dr1ndlgqrfsb88rjm17w6afpc3"
+   "commit": "d87317f360d64b5f68809a564d03436d2b07e96a",
+   "sha256": "1g2q4fg95wpg1d77zrk80923553w2sgsby3ylrrq92y11ks4yiq5"
   },
   "stable": {
    "version": [
@@ -10860,6 +10875,21 @@
   }
  },
  {
+  "ename": "chemtable",
+  "commit": "5ffceb52fe572dec4203b6cb8f48da23a698cc06",
+  "sha256": "1s1fscgp6b8haq30fxvbxrczgzzs2sh3ggq6ib3ydyxa1vp6aggp",
+  "fetcher": "github",
+  "repo": "sergiruiztrepat/chemtable",
+  "unstable": {
+   "version": [
+    20210713,
+    1551
+   ],
+   "commit": "05fc1449db497e715b33b8e08359fa17c3148c7b",
+   "sha256": "16sdhias8ws93lhfhbf5hm05gff1r3imphk7gdziy51xfgyml619"
+  }
+ },
+ {
   "ename": "cherry-blossom-theme",
   "commit": "401ae22f11f7ee808eb696a4c1f869cd824702c0",
   "sha256": "1i3kafj3m7iij5mr0vhg45zdnkl9pg9ndrq0b0i3k3mw7d5siq7w",
@@ -11041,30 +11071,30 @@
   "url": "https://tildegit.org/contrapunctus/chronometrist.git",
   "unstable": {
    "version": [
-    20210622,
-    44
+    20210707,
+    2147
    ],
    "deps": [
     "dash",
     "seq",
     "ts"
    ],
-   "commit": "e7561cf0bb6cbe129edec7f3e15265c985e6e117",
-   "sha256": "1x8jb65pmzw3218skqmgn95bvl5wx02yghp5wmn1gd4xdhran2qc"
+   "commit": "524ba9592fc7095209e380392915b376f75bec00",
+   "sha256": "07fclq7dllz4nsrx51j4vrds1ciylxhkp9g945vc7xk6bi8syl4d"
   },
   "stable": {
    "version": [
     0,
-    8,
-    1
+    9,
+    0
    ],
    "deps": [
     "dash",
     "seq",
     "ts"
    ],
-   "commit": "e9164ecca1e2f43676e5a071aca7644177866deb",
-   "sha256": "0fp0p1sv7jpam2vbgkv2yg7lsdlxa02213ka06cn8rb54lw7k702"
+   "commit": "73e6d98612187aa64f4adacd26e058349cf131c6",
+   "sha256": "156hj3sxjcfpwimnrykh4n3krkbzas9jg8m6xzy42rnzhx28ja6k"
   }
  },
  {
@@ -11113,20 +11143,20 @@
    "deps": [
     "chronometrist"
    ],
-   "commit": "e7561cf0bb6cbe129edec7f3e15265c985e6e117",
-   "sha256": "1x8jb65pmzw3218skqmgn95bvl5wx02yghp5wmn1gd4xdhran2qc"
+   "commit": "524ba9592fc7095209e380392915b376f75bec00",
+   "sha256": "07fclq7dllz4nsrx51j4vrds1ciylxhkp9g945vc7xk6bi8syl4d"
   },
   "stable": {
    "version": [
     0,
-    8,
-    1
+    9,
+    0
    ],
    "deps": [
     "chronometrist"
    ],
-   "commit": "e9164ecca1e2f43676e5a071aca7644177866deb",
-   "sha256": "0fp0p1sv7jpam2vbgkv2yg7lsdlxa02213ka06cn8rb54lw7k702"
+   "commit": "73e6d98612187aa64f4adacd26e058349cf131c6",
+   "sha256": "156hj3sxjcfpwimnrykh4n3krkbzas9jg8m6xzy42rnzhx28ja6k"
   }
  },
  {
@@ -11185,8 +11215,8 @@
   "repo": "clojure-emacs/cider",
   "unstable": {
    "version": [
-    20210625,
-    1100
+    20210706,
+    1151
    ],
    "deps": [
     "clojure-mode",
@@ -11197,8 +11227,8 @@
     "sesman",
     "spinner"
    ],
-   "commit": "af140ced2286ff646471b067b94c2b18d42616df",
-   "sha256": "0nwh1pi31jrhxjxy7q92hpis5lf1k6f6l6k5vdb0y2lfsd7acqii"
+   "commit": "fe8cf244fd3426261f9f630c981a6296afd433a4",
+   "sha256": "02xj7g6jnwd9vjr8jipqvwy89zadkzsak08pq8418hz2af26bvaf"
   },
   "stable": {
    "version": [
@@ -11383,20 +11413,20 @@
  },
  {
   "ename": "circe",
-  "commit": "a2b295656d53fddc76cacc86b239e5648e49e3a4",
-  "sha256": "1f54d8490gfx0r0cdvgmcjdxqpni43msy0k2mgqd1qz88a4b5l07",
+  "commit": "8229522ba39b4b542421664ad3fef76439fbbfc9",
+  "sha256": "0wzpx6qpl89zixbsqyfgmda35qbjpqyq60xm61qjzi36hf9f9wcb",
   "fetcher": "github",
-  "repo": "jorgenschaefer/circe",
+  "repo": "emacs-circe/circe",
   "unstable": {
    "version": [
-    20210614,
-    912
+    20210713,
+    1609
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "d6f1fa18646f6ed2a1c0f06a4888130bd694ff19",
-   "sha256": "1l6v02aa072jvhq4b9dpkprqs14py0d4jm3xvihm05lvrbf9v6c6"
+   "commit": "07d6d82cba864b1e38d3bd46654f2e1928a997c2",
+   "sha256": "04h60s6ig43sj144s7dlip1saf9kdwvzlfys8qwwx48003rbs0dp"
   },
   "stable": {
    "version": [
@@ -11467,8 +11497,8 @@
   "repo": "andras-simonyi/citeproc-el",
   "unstable": {
    "version": [
-    20201031,
-    1642
+    20210709,
+    602
    ],
    "deps": [
     "dash",
@@ -11478,8 +11508,8 @@
     "s",
     "string-inflection"
    ],
-   "commit": "0857973409e3ef2ef0238714f2ef7ff724230d1c",
-   "sha256": "1vi62fzl3bcn24j7pvb39jdf1njrdvdvwz88qlz6l0ijaxhrv0vp"
+   "commit": "dc118772ad4585c0511f4f8f25c81faf69952038",
+   "sha256": "0v8z6fhrsi9kszqcbrm1ggvin0jff744byaiw06d3id1hc428iq5"
   },
   "stable": {
    "version": [
@@ -11545,11 +11575,20 @@
   "repo": "universal-ctags/citre",
   "unstable": {
    "version": [
-    20210701,
-    1448
+    20210716,
+    403
+   ],
+   "commit": "813e8c32a41f84ff099feddb5a4d5a51c5c200b5",
+   "sha256": "02482ln1458hb6z1x89b7294q4bwwdqi08h6m0mmvgd3vz2nwmqs"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    0
    ],
-   "commit": "01ed8539e8068f1e1ff658ab4b1931d9b7907809",
-   "sha256": "1ihxy871wqdpy3ri77kl1wwd21bnl484x343z9xvggl9z6dz8pw4"
+   "commit": "dcb5ec12d077c9a8f1c165a0868f98098494f78c",
+   "sha256": "1mf0d9avyhz83kb5fz2flwwn1knrbgrs0245q0layda9bya5i5yk"
   }
  },
  {
@@ -11576,36 +11615,6 @@
   }
  },
  {
-  "ename": "cl-lib-highlight",
-  "commit": "696c79669478b0d1c9769cc6f0fe581ee056cf32",
-  "sha256": "13qdrvpxq928p27b1xdcbsscyhqk042rwfa17037gp9h02fd42j8",
-  "fetcher": "github",
-  "repo": "skeeto/cl-lib-highlight",
-  "unstable": {
-   "version": [
-    20200210,
-    1951
-   ],
-   "deps": [
-    "cl-lib"
-   ],
-   "commit": "72afc4dd0107c357543244d09903767f49651c5c",
-   "sha256": "1ndjjdada219fgs68np4r7vg50s2h6060wd6wf0x3pnj8b0ca5wm"
-  },
-  "stable": {
-   "version": [
-    1,
-    0,
-    0
-   ],
-   "deps": [
-    "cl-lib"
-   ],
-   "commit": "c117451df8455769701af6c8e92a8fb29c05e1fa",
-   "sha256": "12vgi5dicx3lxzngjcg9g3nflrhfy9wdw6ldm72zarp1h96jy5cw"
-  }
- },
- {
   "ename": "cl-libify",
   "commit": "22088f8779652072871d5c472c67f34bd0470129",
   "sha256": "0p3b57vfzhk348hb7bcnkq4ihi4qzsy4hcdvwa1h85i84vwyzk5d",
@@ -11636,11 +11645,11 @@
   "url": "https://git.sr.ht/~pkal/clang-capf",
   "unstable": {
    "version": [
-    20210625,
-    1107
+    20210707,
+    1127
    ],
-   "commit": "e422f339395aac6d023954880d19bc76a0d1072d",
-   "sha256": "1gdd674m1vbl8acwsgx6qfmx1gr7h8a6yadzp1jjaandpmc9jlrf"
+   "commit": "258863d5cd77d2c9d07cc5dfa41b20db22a178f7",
+   "sha256": "1zg192hy2mf6r6fiy2ahkprxjnb79lh9n6wv6nvxqnc5cq0969i4"
   },
   "stable": {
    "version": [
@@ -12188,11 +12197,11 @@
   "repo": "clojure-emacs/clojure-mode",
   "unstable": {
    "version": [
-    20210505,
-    712
+    20210706,
+    1318
    ],
-   "commit": "33f267ac182afe8fa82cc321e9f515c0397e35f6",
-   "sha256": "1v5gqpkw63h4h1c5kyw8dwg08famp89vbgi789yb32md5819l52s"
+   "commit": "3e426b3a479f479963f2c7d1147cc826ed1a0ee1",
+   "sha256": "16smnr1hlbv347wnzhncasz5ihy0sb4fcpx5dw9v8az5r3q8xpak"
   },
   "stable": {
    "version": [
@@ -12218,8 +12227,8 @@
    "deps": [
     "clojure-mode"
    ],
-   "commit": "33f267ac182afe8fa82cc321e9f515c0397e35f6",
-   "sha256": "1v5gqpkw63h4h1c5kyw8dwg08famp89vbgi789yb32md5819l52s"
+   "commit": "3e426b3a479f479963f2c7d1147cc826ed1a0ee1",
+   "sha256": "16smnr1hlbv347wnzhncasz5ihy0sb4fcpx5dw9v8az5r3q8xpak"
   },
   "stable": {
    "version": [
@@ -12521,19 +12530,17 @@
     20210104,
     1831
    ],
-   "commit": "bf6c9567920965f7b3aba37079cc1b51f31d969d",
-   "sha256": "1hk1qmvw9hmq8xarcnc3pspgsa2fkr8cra8g43i12b8011dz6hpb"
+   "commit": "4e17e90988e9f23dece4c04f574d456309d7a50c",
+   "sha256": "1gqbgs8zxn9dcpxmbykz0mrqy6p229b0pdz3hnk0kncqkk004lx1"
   },
   "stable": {
    "version": [
     3,
     21,
-    0,
-    -1,
-    2
+    0
    ],
-   "commit": "e610e99ad34a545ac67f1977e78ea59a52fdcf79",
-   "sha256": "1jss6aavq89kmhdbjml6qamv9jm92xf74g1wz4dsr36wh0mypgfk"
+   "commit": "ff7a2e37bfff23ce1751a93b3eba179fbf32a9b6",
+   "sha256": "061cjj5mni91p6b0mpp6a2zrkrmw1hc3l4cci6lcqbx733y192fq"
   }
  },
  {
@@ -13157,8 +13164,8 @@
    "deps": [
     "s"
    ],
-   "commit": "61244e12594f117ffac047454311212604399d52",
-   "sha256": "104iq411nwnv3dnm5x9myn4vf36yg3v46jcag9ln0cj0kypmjdrv"
+   "commit": "e91006ba4a77b8ea8c4fe4085ba5676c97cf0315",
+   "sha256": "0icjcmfmwdwas59425baf2s3zw2iblidx6v3jy6k53y1ac5qn7iy"
   },
   "stable": {
    "version": [
@@ -13390,20 +13397,20 @@
   "repo": "pzel/commentary-theme",
   "unstable": {
    "version": [
-    20181213,
-    1045
+    20210714,
+    1757
    ],
-   "commit": "dede0f8ecb72156fa6ae81198ea570ead02997ff",
-   "sha256": "1ykicd6yp495s7795mlfwd54lp0427j8mw6ajbqsw2c2w0f7jcjr"
+   "commit": "a73e1256f667065933e96bd6032c463cb115201d",
+   "sha256": "0dwd42afh4brcwz1jahxmn8l3aj6dmplidqv4x55z3di1spdjs98"
   },
   "stable": {
    "version": [
     0,
     4,
-    0
+    1
    ],
-   "commit": "9a825ae98166c9dbbf106e7be62ee69dd9f0342f",
-   "sha256": "1x30iyvvxggbh7xvp8lwpirvpqijchqf2fdaw4xrlbw5vajlaxcx"
+   "commit": "a73e1256f667065933e96bd6032c463cb115201d",
+   "sha256": "0dwd42afh4brcwz1jahxmn8l3aj6dmplidqv4x55z3di1spdjs98"
   }
  },
  {
@@ -13492,11 +13499,11 @@
   "repo": "company-mode/company-mode",
   "unstable": {
    "version": [
-    20210618,
-    2105
+    20210709,
+    1110
    ],
-   "commit": "1fd1b363eee68e4cdcf0e610005c0bdbf9940604",
-   "sha256": "00502ffyfx9zc6bs2pzn3zj3rj2zz8sdm1g046ijkgbya8wszkcm"
+   "commit": "d77184094b9a45b204813d824918e1ec2aac8504",
+   "sha256": "09f59ipp6c2b1xpnmk82ygxcfkfhh36h4g1c07dmxf7m3z1hwlgi"
   },
   "stable": {
    "version": [
@@ -13634,8 +13641,8 @@
     "axiom-environment",
     "company"
    ],
-   "commit": "ac8228a702290732ba12c5d13b38576a57afb0d6",
-   "sha256": "1nrlgrckvh2fiwis9bmr95h2bpxfkz1nknxdz61380f2caqwwhw7"
+   "commit": "7d72e6319b98b334f74b78f3d4151e92fb7dcbad",
+   "sha256": "1hwcndb1x3i51l0kvzk4mj6sil8h10mxmazic9zvwjhia9qz9hz3"
   }
  },
  {
@@ -13666,8 +13673,8 @@
   "repo": "sebastiencs/company-box",
   "unstable": {
    "version": [
-    20210330,
-    1155
+    20210712,
+    843
    ],
    "deps": [
     "company",
@@ -13675,8 +13682,8 @@
     "dash-functional",
     "frame-local"
    ],
-   "commit": "aa5f09a5492344e3cc831f0f169a6a8345dec358",
-   "sha256": "15wbhf04qj8wplf03hbwixhwbrw3r3vb2ih2lvxjhgpg0lq1gjz5"
+   "commit": "156f65cfbf690ed84e0e84f90277d665d873ff24",
+   "sha256": "1lafm8kpn0i688gk53711mazksy96c7fmr8qhjmdxpxwdk56jcy2"
   }
  },
  {
@@ -13737,8 +13744,8 @@
   "repo": "cpitclaudel/company-coq",
   "unstable": {
    "version": [
-    20210420,
-    215
+    20210708,
+    2357
    ],
    "deps": [
     "cl-lib",
@@ -13747,8 +13754,8 @@
     "dash",
     "yasnippet"
    ],
-   "commit": "6a23da61e4008f54cf1b713f8b8bffd37887e172",
-   "sha256": "15rd9ga4ydhl6ljzdg26a3kcaqlhaygp67507wrrf8j3801ivks4"
+   "commit": "382db93374380e5db56f02934ee32bbe39159019",
+   "sha256": "1vlbw54a02qy77ad2qgd6sy7y3b6x1y1nm3bjxcd7f67hnncjg0p"
   },
   "stable": {
    "version": [
@@ -14013,16 +14020,16 @@
   "repo": "jcs-elpa/company-fuzzy",
   "unstable": {
    "version": [
-    20210608,
-    1454
+    20210716,
+    926
    ],
    "deps": [
     "company",
     "ht",
     "s"
    ],
-   "commit": "b35c6fd89ad111c662916751cf8b3facc8acb1c0",
-   "sha256": "0h9ly6jpbkbcraxs8l0245vqld61jap1vw3cfrbp885jyyzpfb0v"
+   "commit": "b4fd1c8d128ae345176f713dad2c04944a9cf27c",
+   "sha256": "1fhkc49xp4yfqry6a0w7bsz80c7v5kc60jzd3ran0yjr9q9yzx8i"
   },
   "stable": {
    "version": [
@@ -14809,15 +14816,15 @@
   "repo": "jcs-elpa/company-quickhelp-terminal",
   "unstable": {
    "version": [
-    20200904,
-    305
+    20210715,
+    1010
    ],
    "deps": [
     "company-quickhelp",
     "popup"
    ],
-   "commit": "c2e077e8d32610f80a506c410ab51a4ba747a47f",
-   "sha256": "014gk5ara9xh218wm2ygh2nilyp3s1rbg6y5y2z2ki460biwi166"
+   "commit": "2e82273e206f78f015e67f799f51e3f3458d6d94",
+   "sha256": "0miylw8lhs4jgfa47mis6k68jm69jwbmpgms0dl9rnjgpmyvr133"
   },
   "stable": {
    "version": [
@@ -15706,11 +15713,11 @@
   "repo": "minad/consult",
   "unstable": {
    "version": [
-    20210629,
-    1951
+    20210716,
+    1219
    ],
-   "commit": "6ce9aa58e74da92e391cfe938bc3da4f47ab591e",
-   "sha256": "1ji5ilakwahipp23avzjpi5vfp5f17pm6m1prygk065zqdianrv9"
+   "commit": "5fb6248c8e12630ce1247985c67ea28ae4077e4f",
+   "sha256": "1cgk144alm3pbig9acm62q3r7479x69ig76q3z6agamdvf91ay29"
   },
   "stable": {
    "version": [
@@ -15838,14 +15845,14 @@
   "stable": {
    "version": [
     0,
-    2
+    3
    ],
    "deps": [
     "consult",
     "notmuch"
    ],
-   "commit": "5cc6684f6e9cbeb23a06280a1cc9332658d37514",
-   "sha256": "1s1imciy8yb3kkgbdsqsvlv0j40sm94lvv9z5kq58w6n9c2dmb48"
+   "commit": "9e65c421cf54ca12234acad727818fa0fe60fa3e",
+   "sha256": "19flyh3v1xm2zswzjkvjbijvpbq5r8isafza4fd0yicvqbjyklhx"
   }
  },
  {
@@ -16205,8 +16212,8 @@
     "ivy",
     "swiper"
    ],
-   "commit": "040d458bce4a88f37359192061bcea5ebe87007c",
-   "sha256": "0lgpawrsvihksm9cx462qa1hsmxhhv1qp0h1f9m4wn1jrcrq7r24"
+   "commit": "56139df678d9886d0612c0a192cce2cf6f156628",
+   "sha256": "0xjjdq3vmpm3fpvmd3g57m4ldixx8j73in0nmdx4vvnzvh0n904g"
   },
   "stable": {
    "version": [
@@ -17226,11 +17233,11 @@
   "repo": "emacs-pe/crontab-mode",
   "unstable": {
    "version": [
-    20200330,
-    920
+    20210715,
+    133
    ],
-   "commit": "9625228cbfce29ac3b443c6eff893ff828268f7d",
-   "sha256": "01s32ivn1fdqq99ms3s6a73hrqdc2r5khrg4jv3sniviql2k3i31"
+   "commit": "7412f3df0958812bfcacd5875a409fa795fa8ecc",
+   "sha256": "0jfdak85r9j0qlbzc53mkbfqqgqs9ghg0x6fhlv8i22873y650gm"
   }
  },
  {
@@ -18053,17 +18060,17 @@
     20190111,
     2150
    ],
-   "commit": "e7e5d1dc652755bd0ac0a45e4f970b1a2b137308",
-   "sha256": "0900w9ddx0i942spji7jg6ssv9d898isggzy9yjhirwn8fs0a2jb"
+   "commit": "5bf5aa63d6b6742144071a2af896067c21b3752a",
+   "sha256": "1nnyca4bagdbpmzy64pqy95vxbj3dx7lfbapvs120zbpxj193p7a"
   },
   "stable": {
    "version": [
     0,
     29,
-    23
+    24
    ],
-   "commit": "17670781083e3ccfedb1af4adcec614d4599eef9",
-   "sha256": "1yri0ay0p3p80h9ypq692470y1b99y4hk468zqlmfzb87yv8vv7j"
+   "commit": "3a34c5fb48ee86be9d0a819fee1ff3cb3efd1a1e",
+   "sha256": "0jsbmgqxhyjsrjc2h6lw4yqjjqaiqmgz4yjg580j76q8zk9vkjyb"
   }
  },
  {
@@ -18261,8 +18268,8 @@
   "repo": "emacs-lsp/dap-mode",
   "unstable": {
    "version": [
-    20210519,
-    1554
+    20210711,
+    1427
    ],
    "deps": [
     "bui",
@@ -18274,8 +18281,8 @@
     "posframe",
     "s"
    ],
-   "commit": "cc395e066755c7513d4862f5639f3d162b3bd30f",
-   "sha256": "0nmpldvkhgi668zpn5wym6rfvsdnib9ny2snzwsrrfgqa70lmky6"
+   "commit": "685168efc72e61bca2a248155bace7ec633269a5",
+   "sha256": "1mwy92rj9jj4ziflhzpy774vrp5m7zwzy2x1iyj33mn2rmykwl2w"
   },
   "stable": {
    "version": [
@@ -18528,20 +18535,20 @@
   "repo": "magnars/dash.el",
   "unstable": {
    "version": [
-    20210609,
-    1330
+    20210708,
+    2009
    ],
-   "commit": "88d799595e8f1b4154637ce8a3f81b97b0520c1a",
-   "sha256": "0b68kivrvwwp51q7cizgdd5i69n7p322gzd305zb377aksl98rbj"
+   "commit": "2675596b9ac1c4b9d47b93e227f06f8ec6755ec6",
+   "sha256": "0wycrcl79mv253vzf2y92qz9i52mi5xa82f9i4rgnqa02f2m633h"
   },
   "stable": {
    "version": [
     2,
-    18,
-    1
+    19,
+    0
    ],
-   "commit": "1a53e13d7964c84cf756ead353eb6dc094b65fd5",
-   "sha256": "1cvfd36vv0wqb16bnqqxh99hy2yks0j2i4l8qjkg3bxjgk7ldmva"
+   "commit": "2675596b9ac1c4b9d47b93e227f06f8ec6755ec6",
+   "sha256": "0wycrcl79mv253vzf2y92qz9i52mi5xa82f9i4rgnqa02f2m633h"
   }
  },
  {
@@ -18607,20 +18614,20 @@
    "deps": [
     "dash"
    ],
-   "commit": "88d799595e8f1b4154637ce8a3f81b97b0520c1a",
-   "sha256": "0b68kivrvwwp51q7cizgdd5i69n7p322gzd305zb377aksl98rbj"
+   "commit": "2675596b9ac1c4b9d47b93e227f06f8ec6755ec6",
+   "sha256": "0wycrcl79mv253vzf2y92qz9i52mi5xa82f9i4rgnqa02f2m633h"
   },
   "stable": {
    "version": [
     2,
-    18,
-    1
+    19,
+    0
    ],
    "deps": [
     "dash"
    ],
-   "commit": "1a53e13d7964c84cf756ead353eb6dc094b65fd5",
-   "sha256": "1cvfd36vv0wqb16bnqqxh99hy2yks0j2i4l8qjkg3bxjgk7ldmva"
+   "commit": "2675596b9ac1c4b9d47b93e227f06f8ec6755ec6",
+   "sha256": "0wycrcl79mv253vzf2y92qz9i52mi5xa82f9i4rgnqa02f2m633h"
   }
  },
  {
@@ -18631,14 +18638,11 @@
   "repo": "emacs-dashboard/emacs-dashboard",
   "unstable": {
    "version": [
-    20210427,
-    705
-   ],
-   "deps": [
-    "page-break-lines"
+    20210714,
+    305
    ],
-   "commit": "9983aa0838ce5a2219ef4b674e6b37de41b5b585",
-   "sha256": "1mi1jn5gknvs7xjgj2v4dcq7z1a7xknksgfqi66bby7cl6cr3hqd"
+   "commit": "09932ef488b47c6b645a081fee4a82be437f98d8",
+   "sha256": "1kfsc5f37i4k4j8rqmi70cd6yvwxhhq2q513gby8qj2bqsgiwkhb"
   },
   "stable": {
    "version": [
@@ -18688,8 +18692,8 @@
     "f",
     "s"
    ],
-   "commit": "91b3c79aa3af3842f1477825f967370414dc77b2",
-   "sha256": "0q456m64wkbwxc99bwr8b3n7z2f2qkrbcdij0kji35rg89rxbgph"
+   "commit": "947c8c99e9abb38852d895f8792258783e3c4e1d",
+   "sha256": "1iwm1kzjbvfamdzz79bkyq848z3wgr3cf2692dmfah58gy5wkb0z"
   },
   "stable": {
    "version": [
@@ -19275,8 +19279,8 @@
     "s",
     "wiki-summary"
    ],
-   "commit": "8df0505babf930bafe3fd28d472cc325637f886b",
-   "sha256": "1czdnvwf2z0za296sn392w52hb2akw2sh27f3b7nw0987iz9qa0s"
+   "commit": "1861c57e67315bcb1ff88f37184cf7e2d6167642",
+   "sha256": "104dfryn6ql2a4l7nd9x0984qpyxhn6kv0432h1lha5adb8g1h10"
   },
   "stable": {
    "version": [
@@ -19361,11 +19365,11 @@
   "repo": "jrblevin/deft",
   "unstable": {
    "version": [
-    20210101,
-    1519
+    20210707,
+    1633
    ],
-   "commit": "c4af44827f4257e7619e63abfd22094a29a9ab52",
-   "sha256": "0xphl5r8q884ml6clrfrzaiqznfrrpsvysakigjqpgazic5d60g2"
+   "commit": "28be94d89bff2e1c7edef7244d7c5ba0636b1296",
+   "sha256": "074d8apvfp9na14q080w14i9ixbswvp7akjyv8gmxmy5im4gm0y3"
   },
   "stable": {
    "version": [
@@ -19653,11 +19657,11 @@
   "repo": "blahgeek/emacs-devdocs-browser",
   "unstable": {
    "version": [
-    20210629,
-    1601
+    20210703,
+    306
    ],
-   "commit": "23e62096b98b9b509efc453d7fee0810acea4bf8",
-   "sha256": "0f6ld4m1x419677snbpd3qyx782zpj61rahphgc5nfj6aanvll0w"
+   "commit": "f8572f208d58b2122df63ffef87fdd5112d83233",
+   "sha256": "10ywfkkczi6hzcz4hnjqxr77708hi22hgrvrykmwrh4lsfxl0iyq"
   }
  },
  {
@@ -19876,8 +19880,8 @@
    "deps": [
     "cl-lib"
    ],
-   "commit": "1077c734b3b6de02c80456035a4939b028cb4179",
-   "sha256": "18vk7rhysavm8j02kd4lw6j6zr2l13gyvrjxq7psy1flhvmkxknc"
+   "commit": "d225def4a473a16ac994124e063695ef9cef3308",
+   "sha256": "1wizqf5qj0bxx9b5d0j726in1alqv0wy508y5ivaw7hcyggkg9i7"
   },
   "stable": {
    "version": [
@@ -20135,6 +20139,18 @@
    ],
    "commit": "d85409dc3cba57a390ca85da95822f8078ecbfa2",
    "sha256": "1cm4l2ycaw47mfgc6ms021zxkas1jajgwpnykqlkcwcbakbczxjl"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    0
+   ],
+   "deps": [
+    "dylan"
+   ],
+   "commit": "d85409dc3cba57a390ca85da95822f8078ecbfa2",
+   "sha256": "1cm4l2ycaw47mfgc6ms021zxkas1jajgwpnykqlkcwcbakbczxjl"
   }
  },
  {
@@ -20168,11 +20184,11 @@
   "repo": "jcs-elpa/diminish-buffer",
   "unstable": {
    "version": [
-    20201206,
-    1238
+    20210715,
+    1026
    ],
-   "commit": "387858aaa23d5d1145c98dfa70bbd39bb8c3fa5f",
-   "sha256": "13a3jkc5yf1m2gqabvfxfzxgblyhyni9f2clqx9i0pvr9dvvb9r8"
+   "commit": "fcc43f38431d4b16b2fd8d15e799488a7fb60966",
+   "sha256": "1r5a98viw7j2nfmhgf5v9whkya3h9s392drz764a9ivj2znc0qg5"
   },
   "stable": {
    "version": [
@@ -20289,20 +20305,20 @@
   "repo": "HKey/dired-atool",
   "unstable": {
    "version": [
-    20181228,
-    1422
+    20210706,
+    1456
    ],
-   "commit": "52ce4ac88fa39a0ebdf732435fd831ea9a8d0764",
-   "sha256": "00br8f8rw0rrzmi3nvacwn14d122jw243z1izlsm8h8q95hh8f6l"
+   "commit": "c01e0a79c952a29db17c262c9ce8a90632b04b3a",
+   "sha256": "1r44s3f29p70li6k6646xcby3ypz1ljgd4j1fhdd0x4d7a09zl0v"
   },
   "stable": {
    "version": [
     1,
-    2,
+    3,
     0
    ],
-   "commit": "09dbb769fe02f546da470369a12468ab4a0cceb2",
-   "sha256": "0j2dz4vy4i22185hhlwg2kprpis97xb12qvfdhvdcnz2vwy61sxa"
+   "commit": "c01e0a79c952a29db17c262c9ce8a90632b04b3a",
+   "sha256": "1r44s3f29p70li6k6646xcby3ypz1ljgd4j1fhdd0x4d7a09zl0v"
   }
  },
  {
@@ -22079,8 +22095,8 @@
    "deps": [
     "s"
    ],
-   "commit": "32196031f60627e88a67b676d643ab51c251711f",
-   "sha256": "19bm4fr38hkh6mrbf0vgafwq2hfldkcn2b5flllvizq2qh86hq81"
+   "commit": "5b80126a71662a4bcd3dff7cfbcf70954610092e",
+   "sha256": "0ywm29gfqfb8dhv3mwwb8fx1vl363gkhba9vdkx0w3r2wvh17l80"
   },
   "stable": {
    "version": [
@@ -22222,16 +22238,16 @@
   "repo": "seagle0128/doom-modeline",
   "unstable": {
    "version": [
-    20210627,
-    1731
+    20210706,
+    604
    ],
    "deps": [
     "all-the-icons",
     "dash",
     "shrink-path"
    ],
-   "commit": "07d03c4626eaaf2cc9c346308add3700ad4a3a06",
-   "sha256": "0c9g5i9cyqcc934rz778zia24bls99i9hfl0s61354ncgw4qndfy"
+   "commit": "06606e0b8b3c19fbe56e25702e2a664deec593c3",
+   "sha256": "0akyzih955j2ijnrvfnajwpml5xb3v9pg9wbn4z8nkcw33hvxgk9"
   },
   "stable": {
    "version": [
@@ -22275,14 +22291,14 @@
   "repo": "hlissner/emacs-doom-themes",
   "unstable": {
    "version": [
-    20210701,
-    707
+    20210714,
+    1511
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "bd5b9065dea54472519da67ccfcc3185bf5e35c3",
-   "sha256": "0g12rlkfg9ijgd2csrcmcqf6yrs33x9gfkw3g7azp74pvx3cvcmi"
+   "commit": "b7995ac041f8dadb021cd2445e85d29c9bf718ae",
+   "sha256": "09hhplhb0832ja9nnsq3d4p6g0fdw2sp9kl2y4n2kk6zq909ar54"
   },
   "stable": {
    "version": [
@@ -22936,11 +22952,11 @@
   "repo": "ocaml/dune",
   "unstable": {
    "version": [
-    20210213,
-    757
+    20210715,
+    548
    ],
-   "commit": "846b38c1efab4757240d131d2c45102930fc305c",
-   "sha256": "1vw500g9jfa4za1f0r90bzzb6ra9jyn52z1g4nwvqcnha1sixj7m"
+   "commit": "48bd29decb847bd9357aceeca9ad1c916f199913",
+   "sha256": "02fy271d8s77l2g4rykgpnqvy4sq2ri88xz97ink00r1r12cdvk9"
   },
   "stable": {
    "version": [
@@ -23066,6 +23082,15 @@
    ],
    "commit": "d85409dc3cba57a390ca85da95822f8078ecbfa2",
    "sha256": "1cm4l2ycaw47mfgc6ms021zxkas1jajgwpnykqlkcwcbakbczxjl"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    0
+   ],
+   "commit": "d85409dc3cba57a390ca85da95822f8078ecbfa2",
+   "sha256": "1cm4l2ycaw47mfgc6ms021zxkas1jajgwpnykqlkcwcbakbczxjl"
   }
  },
  {
@@ -23188,14 +23213,14 @@
   "repo": "ahyatt/emacs-dyncloze",
   "unstable": {
    "version": [
-    20210613,
-    1956
+    20210712,
+    145
    ],
    "deps": [
     "dash"
    ],
-   "commit": "fe5baf6d324800779f80f5c6298a56e2dcb87598",
-   "sha256": "0c7bh3swwmfc1z834f79jakg1n6li5prd33r5k92id8kl18hb8fj"
+   "commit": "aafc5adc25c7f714b619109bccf92e475d6c84ef",
+   "sha256": "0l3y8xvjy0f2wacnh03i8ny06apcgyzvippsm8k80qhzjc8dxs2i"
   }
  },
  {
@@ -24869,8 +24894,8 @@
     20210613,
     1418
    ],
-   "commit": "ec135b5353867ce3564a675e99024944b834395d",
-   "sha256": "1mpc4gnrpvqvhfvjvp4hqb4x6nzn1kfzgsqi4sdjgbfjqll2jzv0"
+   "commit": "463f5e985fc53300f87ab7eb054d1738fc6ac93b",
+   "sha256": "122xbfag9ykvcwq549r3aglrdip1nk68abgqlzhm5mqfpqi0l8a8"
   },
   "stable": {
    "version": [
@@ -25219,20 +25244,20 @@
   "repo": "doublep/eldev",
   "unstable": {
    "version": [
-    20210530,
-    1641
+    20210711,
+    1204
    ],
-   "commit": "d51ce6152519b5cf32d0dcc40cad6787eb605997",
-   "sha256": "1nkc9fwg7fn8gvj4zg515320p7m2h3b1nyd6zzbp2v60qj7277jq"
+   "commit": "f9d034ff330d657fa3cbbb1df3a582cd417da78a",
+   "sha256": "13pd4kwak8fvzbmj8lcasxpi6m8i1cffrs6hg1wnd1j6w68jl4yg"
   },
   "stable": {
    "version": [
     0,
     9,
-    1
+    2
    ],
-   "commit": "70167056fd81e8477b0a5508cf7e28d7a48a2367",
-   "sha256": "1jfj4f5w20qd12k6ygv0jazn2x9pxjrmqmlmibppc4ybrhhgmg0s"
+   "commit": "2b6513ac12bfc73dd954effc68734bc84607b31c",
+   "sha256": "1agg69ji032k9a1r23cdcgb0ihmcxxlbjgsqx647igv3mw7r6ff0"
   }
  },
  {
@@ -26172,15 +26197,15 @@
   "repo": "Silex/elmacro",
   "unstable": {
    "version": [
-    20200905,
-    2130
+    20210716,
+    639
    ],
    "deps": [
     "dash",
     "s"
    ],
-   "commit": "4888d1baa8b943adf0bab94419357c55b7e6e697",
-   "sha256": "0g1iavy7f0n14c34b808kv5sf3imvc9aqv5814r231i6qjck5vj4"
+   "commit": "d2e05012cee4f54fab6d8d8d6aced6e5eeef4f31",
+   "sha256": "1mmhgl85880bhhwibf9ksifghdc7w22vrhpg8y8rvpjh91fdg0lz"
   },
   "stable": {
    "version": [
@@ -26254,21 +26279,11 @@
   "repo": "jcaw/elnode",
   "unstable": {
    "version": [
-    20190702,
-    1509
-   ],
-   "deps": [
-    "creole",
-    "dash",
-    "db",
-    "fakir",
-    "kv",
-    "noflet",
-    "s",
-    "web"
+    20190608,
+    1623
    ],
-   "commit": "29ef0f51a65a24fca7fdcdb4140d2e4556e4bb29",
-   "sha256": "1bks7aakhvdab56gbsa44ca9kbilajisdd9bns485d9wr62d2lgj"
+   "commit": "305c532b6e59f58c4afcfb76466dbfbdc4e58b9c",
+   "sha256": "1214216wrdhfw3lbf59vnddk28hi4g3s1ksdi5walksihd3gh7my"
   }
  },
  {
@@ -26426,11 +26441,11 @@
   "url": "https://thelambdalab.xyz/git/elpher.git",
   "unstable": {
    "version": [
-    20200919,
-    1025
+    20210716,
+    1445
    ],
-   "commit": "3561c2815bc6bc896fc7a6da8f094edca48c55b8",
-   "sha256": "0vy1ak5gphnih90c1n7js91p0fdyccdqqbagdjqdfbpbir41gba5"
+   "commit": "7e0919bd74952fb229862f1280e01817721b7fc2",
+   "sha256": "13fjp20hf4jv3325ipnjrzqvxa122sfhs44dgsr52g9mkhhc6kbm"
   },
   "stable": {
    "version": [
@@ -27590,8 +27605,8 @@
     "emojify",
     "request"
    ],
-   "commit": "d512c2babb412820945444c6daf309b470e2eb12",
-   "sha256": "1llqn6ik0dnrpmvdxcgiyadbffjlbxqv6i7bxh2rnqiy4fhk9s1n"
+   "commit": "f05ab06436e13b3578f3d4d183fcb1bc3a4eeab1",
+   "sha256": "01dnab8mqz03rdd3xcb48csx56cv2ik07sykyqscbiib5vcw5k5k"
   },
   "stable": {
    "version": [
@@ -27739,8 +27754,8 @@
   "repo": "rejeep/enclose.el",
   "unstable": {
    "version": [
-    20121008,
-    1614
+    20120618,
+    2019
    ],
    "commit": "2747653e84af39017f503064bc66ed1812a77259",
    "sha256": "0dz5xm05d7irh1j8iy08jk521p19cjai1kw68z2nngnyf1az7cim"
@@ -27880,7 +27895,7 @@
   "unstable": {
    "version": [
     20130407,
-    1348
+    1236
    ],
    "commit": "7fd2f48ef4ff32c8f013c634ea2dd6b1d1409f80",
    "sha256": "0v5p97dvzrk3j59yjc6iny71j3fdw9bb8737wnnzm098ff42dfmd"
@@ -28684,8 +28699,8 @@
     20200914,
     644
    ],
-   "commit": "007a26fb5f7d9eb54db16484fb116d6e47c8cc5e",
-   "sha256": "1w9pra3qqmidsf5mvp0lmk9liw1ryaf8kjiawfgyyc6mzgw6nrvz"
+   "commit": "3543ef3df19228012a1ac5be766cc38fd2f65f6a",
+   "sha256": "0wlqrl8ikqc7q61i2qzmwp6h0mrv9kn5229pbsrb1ris7gxgi13b"
   },
   "stable": {
    "version": [
@@ -28708,8 +28723,8 @@
     20210315,
     1640
    ],
-   "commit": "3517ac9f6b48641b949e19971a1a2d022b7494a0",
-   "sha256": "1r9adb0x370c3cj93lgaag2ifkgi954gh5hnshkr3wz8bpqirvk1"
+   "commit": "81c6d94625a04f6550e77a068489ca6378cabfee",
+   "sha256": "1kkjyradh316xcqsh9pn4l1nvz1krn8cm3zch0vfp47dkkg54w1y"
   },
   "stable": {
    "version": [
@@ -28929,8 +28944,8 @@
   "repo": "dakrone/es-mode",
   "unstable": {
    "version": [
-    20201125,
-    2059
+    20201112,
+    2317
    ],
    "deps": [
     "cl-lib",
@@ -29570,11 +29585,11 @@
   "repo": "emacs-ess/ESS",
   "unstable": {
    "version": [
-    20210616,
-    1806
+    20210707,
+    917
    ],
-   "commit": "a5df6aa81351385e9813b722afcacdba1648226d",
-   "sha256": "0di7s1k9lizvbr4n59qhn6ipc67klcyimlkdqw4if7nkfjif5bsn"
+   "commit": "4fefd0feaae688e28d6a0c36c9eaa219c448903f",
+   "sha256": "0m9w0l6x67s5mx76ixgh42abblzi8jbp9xpps4flv08jhz1lkc5i"
   },
   "stable": {
    "version": [
@@ -30165,15 +30180,15 @@
   "repo": "emacs-evil/evil",
   "unstable": {
    "version": [
-    20210628,
-    1913
+    20210715,
+    1839
    ],
    "deps": [
     "cl-lib",
     "goto-chg"
    ],
-   "commit": "f20d442ff006aa5a6dc48ac654906b48b95107fd",
-   "sha256": "0bl854036zpjg5p5asamvlnl9lf46rgcpa645yhrvxqmwznm6din"
+   "commit": "070abb16620653fb343980fb85a13c4d55e1070b",
+   "sha256": "0pcr471snnmhycvvgczs1gbil45w6lf1bdmg7w19vh2a0dq4pqi9"
   },
   "stable": {
    "version": [
@@ -30367,28 +30382,28 @@
   "repo": "emacs-evil/evil-collection",
   "unstable": {
    "version": [
-    20210701,
-    1024
+    20210715,
+    1552
    ],
    "deps": [
     "annalist",
     "evil"
    ],
-   "commit": "a24168ffe3711890b5dcd41041a51146bbd67497",
-   "sha256": "1pz046fw06lgc7gjrfr0a895j867mm96k8h5dw3k0p64rh1xh1sa"
+   "commit": "3bd5e90accbb3a12d924bb7b4220221493675591",
+   "sha256": "1nikhz4l01zi884dwyjfsaralc1pd6y70fvd36i4qn477xinsvk4"
   },
   "stable": {
    "version": [
     0,
     0,
-    5
+    6
    ],
    "deps": [
     "annalist",
     "evil"
    ],
-   "commit": "a615e4a7f642e0c3acd8628111624355380aa18f",
-   "sha256": "0dxrwcf5dnww0a9mvwjkcgm8ry3y282v9l85jh0645zk71nz1in3"
+   "commit": "d97e0ff4afa67bd19443245d4f663de29b043a6b",
+   "sha256": "0ssb3n1i67b6zp2j8djaalkr33x4c7zalw6vl6p5kqxkh8vy8cdf"
   }
  },
  {
@@ -31502,15 +31517,15 @@
   "repo": "hlissner/evil-snipe",
   "unstable": {
    "version": [
-    20210609,
-    509
+    20210713,
+    1456
    ],
    "deps": [
     "cl-lib",
     "evil"
    ],
-   "commit": "a9b9b39a7915e66b7d5da9cecfaf002c72d08196",
-   "sha256": "01ikzxvm878k0xwj10h3ww02459g3jiz4fjsm481jw1jjvnxg5b2"
+   "commit": "1a28d718c835a21591a170af78a03a366cd60c0d",
+   "sha256": "1dm73xmlhznh9yc22ifb238yyad09011nryc91n6glla347896p0"
   },
   "stable": {
    "version": [
@@ -31693,8 +31708,8 @@
    "deps": [
     "evil"
    ],
-   "commit": "f20d442ff006aa5a6dc48ac654906b48b95107fd",
-   "sha256": "0bl854036zpjg5p5asamvlnl9lf46rgcpa645yhrvxqmwznm6din"
+   "commit": "070abb16620653fb343980fb85a13c4d55e1070b",
+   "sha256": "0pcr471snnmhycvvgczs1gbil45w6lf1bdmg7w19vh2a0dq4pqi9"
   },
   "stable": {
    "version": [
@@ -32398,11 +32413,11 @@
   "repo": "magnars/expand-region.el",
   "unstable": {
    "version": [
-    20210624,
-    1015
+    20210708,
+    1952
    ],
-   "commit": "519e92eabc470fe1792d8d4a37c98e76cf195840",
-   "sha256": "0rh5li9i6nz81mbji87dnv5ly58rl5lphlvjx4m0hb7dlqpw0db2"
+   "commit": "95a773bd8f557cbd43d3b2dab2fa4417ec5927ab",
+   "sha256": "05zdh71zkp2n740dcixanw9cziw93rkix2bb24vw9phkj271m0d7"
   },
   "stable": {
    "version": [
@@ -32916,14 +32931,14 @@
   "url": "https://git.sr.ht/~pkal/face-shift",
   "unstable": {
    "version": [
-    20190818,
-    1551
+    20210707,
+    1127
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "8c62d7a27a0e3092942742362ed73e17e254e904",
-   "sha256": "028b3j7rp4z78285r8w4db8dx9j6zlqp8aw4y0pvd4ifqbs5wh05"
+   "commit": "0170ab2993211eb0f514f7d1ce14e8194a11f6b2",
+   "sha256": "0zj9h3nmswpc7q02a76rrzw3ypjwn1lwq5mkm6s28q0xrdpmrgq3"
   },
   "stable": {
    "version": [
@@ -33463,11 +33478,11 @@
   "repo": "technomancy/fennel-mode",
   "unstable": {
    "version": [
-    20210624,
-    1431
+    20210713,
+    2129
    ],
-   "commit": "f37a3de72c6cbf37f82d4b2f37d9009af5058099",
-   "sha256": "1qnmcysrl2zxiid4v1h1hq1nax3a7sxs2dmag54sfifm149lf7f3"
+   "commit": "0f83112e70c1cd13a8b98e9e75b2291fcdf3d57f",
+   "sha256": "1n1f9bn8447aq3666q9lj7idzj9nwkmknfzybk3is98m03cjki3z"
   },
   "stable": {
    "version": [
@@ -33509,8 +33524,8 @@
     "f",
     "s"
    ],
-   "commit": "164fb15d70adbc186eb2d987f5c5143aa7336659",
-   "sha256": "0i6r2mlpahrnszr9vk476iqvc1c8cpp6wn6fhlnz6vw4dybpw5p5"
+   "commit": "142a7a5ecd79b4a3db7ce3dfdd0d87ceeedab468",
+   "sha256": "1lmfnc5nljghqapciaqrvmj177v3m1ybndf7mjj74d6n41gphwcj"
   },
   "stable": {
    "version": [
@@ -33678,11 +33693,11 @@
   "repo": "jcs-elpa/fill-page",
   "unstable": {
    "version": [
-    20201105,
-    452
+    20210707,
+    354
    ],
-   "commit": "95f82f93848ca608d4c4d9ec7386d94745cbc691",
-   "sha256": "10kgaq1da5zgz2dzagw2fc5hlh4ik5z6vyfw0lqd7bqpjfg62kgr"
+   "commit": "cad66696f334f70adf2b8bdf9910852c017dbdd0",
+   "sha256": "0jg7gppjf39qzwb44n1q7bikhqvxs5hr4yd403v7apf75z0hpc3m"
   },
   "stable": {
    "version": [
@@ -33957,11 +33972,11 @@
   "repo": "jming422/fira-code-mode",
   "unstable": {
    "version": [
-    20210621,
-    1933
+    20210702,
+    1631
    ],
-   "commit": "85e0eba018bca70040faea19996b43ce8e543cad",
-   "sha256": "1mv0gphbp976ncfif2jbfrmkayh0lp5cjqmiimhw1inw7ps18k5r"
+   "commit": "eaff81f867d9c84e25891368f3d0cac7513984e8",
+   "sha256": "0gc77fkc6jczb52f5hil3h0hv74f7cxbijc8mjprh7zzgb09b6za"
   }
  },
  {
@@ -34178,19 +34193,19 @@
   "repo": "jonnay/fix-muscle-memory",
   "unstable": {
    "version": [
-    20160823,
-    439
+    20210702,
+    1755
    ],
-   "commit": "a123e04f8a1d2982cbf930efb909cad9522ac884",
-   "sha256": "0mm6dl7017x5l43jf89w4nn5hcyi4fm160d2rcqx5w6dwb6f0v27"
+   "commit": "b8d4b8025d758762f4459c70c3a7a209ead865ed",
+   "sha256": "0g3rg7bg256ymkby33nd5yhaf24216ghhkwvcz1vl54yzyfv8w2x"
   },
   "stable": {
    "version": [
     0,
-    93
+    94
    ],
-   "commit": "df687aea23c6eac4b751f993893c2fd56e5a8a3b",
-   "sha256": "02nl4vz6fnbjc7w1lk1y9z0qw5bsxr407ww0b2wqw6h8spmcpcrc"
+   "commit": "b8d4b8025d758762f4459c70c3a7a209ead865ed",
+   "sha256": "0g3rg7bg256ymkby33nd5yhaf24216ghhkwvcz1vl54yzyfv8w2x"
   }
  },
  {
@@ -34331,19 +34346,19 @@
   "repo": "Asalle/flatbuffers-mode",
   "unstable": {
    "version": [
-    20200822,
-    957
+    20210710,
+    1004
    ],
-   "commit": "c0e9dc220db5f08410f40becf03531938484cb6c",
-   "sha256": "0dahs0q004pgalxrll1f8995q1ws358fk87a1jkm3fazl97p7gx4"
+   "commit": "8e7783db45a64c9456130fd0c108ac12d45a7789",
+   "sha256": "1g446s8xhgcrkqhl08d6l68gga6n3c3hdk4z3bazglfwycynhpp9"
   },
   "stable": {
    "version": [
     0,
-    2
+    3
    ],
-   "commit": "1b563b450e5353797083bcb03ab02f456e9a7361",
-   "sha256": "17g7y2nzhdwzck63miks4kn2w1nlari0qkc5v6lc4ksiaacispfb"
+   "commit": "8e7783db45a64c9456130fd0c108ac12d45a7789",
+   "sha256": "1g446s8xhgcrkqhl08d6l68gga6n3c3hdk4z3bazglfwycynhpp9"
   }
  },
  {
@@ -34701,14 +34716,14 @@
   "repo": "defaultxr/fluxus-mode",
   "unstable": {
    "version": [
-    20191001,
-    1716
+    20210715,
+    58
    ],
    "deps": [
     "osc"
    ],
-   "commit": "3d05fa15f141ac3e936f908097bb7eb6295cc367",
-   "sha256": "0axjlvhv3xwg16zkpskqp9kvb1x513jl329pmrjzazn5mdh2m8cw"
+   "commit": "a14578640c578a4fd09cb7e25da1e87d637719ae",
+   "sha256": "1k7jiagsbydr3vqb2r47dh3hp3g94vpfwpc3ds9lv6shv3h669d5"
   }
  },
  {
@@ -34800,8 +34815,8 @@
   "repo": "flycheck/flycheck",
   "unstable": {
    "version": [
-    20210321,
-    852
+    20210708,
+    1337
    ],
    "deps": [
     "dash",
@@ -34809,8 +34824,8 @@
     "pkg-info",
     "seq"
    ],
-   "commit": "f8c679fff349850c80541a31de50009c3c15d4c9",
-   "sha256": "0v0zyq7zn89j036sp8ijxwpb0n435sf444ki618y7mv77k2qflxx"
+   "commit": "21d52264aa80bfa4ede94c59e37a20fb6d033b0c",
+   "sha256": "1k2fqiy0aw30za8d8bhia996ab168j61m8h1s9zi7d5y32q1csnh"
   },
   "stable": {
    "version": [
@@ -35768,14 +35783,14 @@
   "url": "https://git.umaneti.net/flycheck-grammalecte/",
   "unstable": {
    "version": [
-    20210627,
-    1018
+    20210705,
+    1656
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "8f13de89134e9708b2a24a040a0335a7302632f9",
-   "sha256": "1acwvndq604gl5n3985mj5v70vcl3d12vh6bzs5nz5xyr8c848z7"
+   "commit": "061ce63d217b7cd165c487d81331843dea5bc11c",
+   "sha256": "088g4vi01xanjm5dyzlw483h8w3dyijjccla37zfa55cg0nksdd3"
   },
   "stable": {
    "version": [
@@ -35804,8 +35819,8 @@
     "flycheck",
     "grammarly"
    ],
-   "commit": "8321fc98a0809cad17e37ca924d364423c37b8c0",
-   "sha256": "1pga651wnvw3czqshn731nx0cdaf157v7v1c5n7kh95lc2r3jmn3"
+   "commit": "abab9e6fadccd6e239f3f7efd91b155c9d5cd716",
+   "sha256": "1y6v3d4xnlfqcvl5hc4b0y6san1mnf2mx6hcvlbxdphhf12hp560"
   },
   "stable": {
    "version": [
@@ -36224,14 +36239,14 @@
   "repo": "emacs-languagetool/flycheck-languagetool",
   "unstable": {
    "version": [
-    20210629,
-    536
+    20210715,
+    946
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "6ade9d7f294cee7e41d0bce9dddb139c49985501",
-   "sha256": "1yq2n7bknw7by1cn53xn7kz8a3qj1w7szsjysaj93mhxb154g9qz"
+   "commit": "c4a1dd0b23b8b25ba706eed48ae7d3e97bf4f349",
+   "sha256": "1zcp9brh9cygga0yflw4saf7bf503ll1l4nmhf79h039xm7p3rcz"
   },
   "stable": {
    "version": [
@@ -36583,28 +36598,28 @@
   "repo": "emacs-php/phpstan.el",
   "unstable": {
    "version": [
-    20210617,
-    2237
+    20210714,
+    1805
    ],
    "deps": [
     "flycheck",
     "phpstan"
    ],
-   "commit": "56617fa87c9bec037d4e4a0a143b7d70a989c082",
-   "sha256": "02k4pmmxq3h8mi0dsjh0s0002gjkpg6g9pxsnxgalwb6rakfirbh"
+   "commit": "0869b152f82a76138daa53e953285936b9d558bd",
+   "sha256": "1xm5i658pf1lb4bfpy6zy5msanhia8r9j7v7rx72amkksja3hwnj"
   },
   "stable": {
    "version": [
     0,
-    5,
+    6,
     0
    ],
    "deps": [
     "flycheck",
     "phpstan"
    ],
-   "commit": "bf9e82a63f2ccb12af02c9e79a83e7989eeb7cb1",
-   "sha256": "15kv5xv6lcfgf048wr2zsnpvrplbxypy3wq56zvrzbq18hwprqg1"
+   "commit": "0869b152f82a76138daa53e953285936b9d558bd",
+   "sha256": "1xm5i658pf1lb4bfpy6zy5msanhia8r9j7v7rx72amkksja3hwnj"
   }
  },
  {
@@ -37728,8 +37743,8 @@
    "deps": [
     "grammarly"
    ],
-   "commit": "bc7c7e74013816ea06463ff85627bdc08ad60d9a",
-   "sha256": "0yj0mqyg0c87kvxz21y0wmfx97lwvym6qm3sdppgkff5fwppyj91"
+   "commit": "06ba82495614f1dfaffb8894f57789156586448c",
+   "sha256": "1lc3nv7km5m19l673agh9rxv9afllf7sz4sv0brgp1sbmks1il3b"
   },
   "stable": {
    "version": [
@@ -37981,8 +37996,8 @@
    "deps": [
     "s"
    ],
-   "commit": "5e44d7ba7153d20a01428bff98c1949a7a0eb753",
-   "sha256": "19149wr4plng3n1bpfd49ja1phd3sbyrxa6vk47qh8xc7x1ra309"
+   "commit": "5c93f538978f2d272e5210b27f5255ee87b6b61f",
+   "sha256": "1awd69ns238ia27k2njlx65gkyscxzayyyx777rbmy6g259bndzq"
   },
   "stable": {
    "version": [
@@ -38186,26 +38201,26 @@
   "repo": "emacs-php/phpstan.el",
   "unstable": {
    "version": [
-    20210617,
-    2223
+    20210714,
+    1805
    ],
    "deps": [
     "phpstan"
    ],
-   "commit": "56617fa87c9bec037d4e4a0a143b7d70a989c082",
-   "sha256": "02k4pmmxq3h8mi0dsjh0s0002gjkpg6g9pxsnxgalwb6rakfirbh"
+   "commit": "0869b152f82a76138daa53e953285936b9d558bd",
+   "sha256": "1xm5i658pf1lb4bfpy6zy5msanhia8r9j7v7rx72amkksja3hwnj"
   },
   "stable": {
    "version": [
     0,
-    5,
+    6,
     0
    ],
    "deps": [
     "phpstan"
    ],
-   "commit": "bf9e82a63f2ccb12af02c9e79a83e7989eeb7cb1",
-   "sha256": "15kv5xv6lcfgf048wr2zsnpvrplbxypy3wq56zvrzbq18hwprqg1"
+   "commit": "0869b152f82a76138daa53e953285936b9d558bd",
+   "sha256": "1xm5i658pf1lb4bfpy6zy5msanhia8r9j7v7rx72amkksja3hwnj"
   }
  },
  {
@@ -39121,8 +39136,8 @@
   "repo": "magit/forge",
   "unstable": {
    "version": [
-    20210628,
-    736
+    20210716,
+    1447
    ],
    "deps": [
     "closql",
@@ -39135,8 +39150,8 @@
     "transient",
     "yaml"
    ],
-   "commit": "84ef3a7bad5879a2dd179a94655ac0da28be3898",
-   "sha256": "0mp1jwc0ms6d15l3vw0zg35l68q58bk5bj8w5znjvwjh3akybfpm"
+   "commit": "49da45ac4515d7442ebd606f4ad4922a3e1439ff",
+   "sha256": "1vqhxckmkfbkvpnsigdb1625b5n0fpry2hxkympqnxspcccnijks"
   },
   "stable": {
    "version": [
@@ -39190,15 +39205,15 @@
   "repo": "lassik/emacs-format-all-the-code",
   "unstable": {
    "version": [
-    20210619,
-    533
+    20210708,
+    1728
    ],
    "deps": [
     "inheritenv",
     "language-id"
    ],
-   "commit": "6a3463a723e08a37bae85a7585700ab314ae86ea",
-   "sha256": "10aa5jh4ba4bhghwb8mi6my1dazbvxlylk3gcxji47qj0z78fajh"
+   "commit": "d60a763eaf716d17bf6b8dbff1cc8f54337bfeab",
+   "sha256": "12gvyr73ab6x4p5iadxdi61d3hwwfbxd9wm6vkja92glyqs2vvbf"
   },
   "stable": {
    "version": [
@@ -39341,8 +39356,8 @@
    "deps": [
     "seq"
    ],
-   "commit": "91f4ad083fa620e6e6202460decc3280bd8e4e71",
-   "sha256": "0xlg5b0sa4qbv68sza23fr5khv36860jbhzfbcqcw1d420xllryx"
+   "commit": "ede8a254fe1bfb125b52ea71252b863cf80eee18",
+   "sha256": "0s2qlnx5lq5ni53r0i4fja6qfxxbg6apq5madgkiyz5d1bay551g"
   },
   "stable": {
    "version": [
@@ -39959,8 +39974,8 @@
    "deps": [
     "cl-lib"
    ],
-   "commit": "b989a860d1d6191bb9c5911ac77ed0931424eaeb",
-   "sha256": "1w0hyfspi3kahj2lk1bzj3ny3r8bb0cj4yfjizzbfc1pz9dlkpkp"
+   "commit": "5b1c814d84714b0c94c5a7b4aeb3f44d2a4d5998",
+   "sha256": "1sw7abwli4hjwbyqmkc8vfg4sgil59gkygvk3f4p6gdihnfqynwp"
   },
   "stable": {
    "version": [
@@ -40698,8 +40713,8 @@
   "repo": "emacs-geiser/gauche",
   "unstable": {
    "version": [
-    20200802,
-    1300
+    20200801,
+    2337
    ],
    "deps": [
     "geiser"
@@ -41652,30 +41667,30 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20210701,
-    1554
+    20210702,
+    822
    ],
    "deps": [
     "dash",
     "transient",
     "with-editor"
    ],
-   "commit": "2ae376e4923e02355828350b81cdc1b0f8fa72ff",
-   "sha256": "1h07rg0fvr7av69bcks1n63digafq145mlsaddyv6xixxqjp0vbg"
+   "commit": "bf9cc19a3287f6a3cc5c1836312f0d18b38b6e45",
+   "sha256": "0zjcvhjp4c01ibb1hshpqkib7fvjkmvh9xf06qfsm5ybdc04xik5"
   },
   "stable": {
    "version": [
     3,
-    0,
-    0
+    1,
+    1
    ],
    "deps": [
     "dash",
     "transient",
     "with-editor"
    ],
-   "commit": "c3bbc9b9425f3370690cabb11bd35b9040773fdc",
-   "sha256": "0dbp3gx43ipxv8zg9m0hfhksz85rnkikaq35rx705qqz6xq6xq9m"
+   "commit": "143d95cced1ee793106d16da3a182dcc2dd01e88",
+   "sha256": "0sn4iiicmqfqmvi7zwii6qdp35k09kqn36rpalv0w1i4jcm6j9kk"
   }
  },
  {
@@ -41755,11 +41770,11 @@
   "repo": "emacsorphanage/git-gutter",
   "unstable": {
    "version": [
-    20210511,
-    427
+    20210703,
+    1007
    ],
-   "commit": "d050abdd7f5a46c9cfbec2953d2fca90095e2857",
-   "sha256": "1bx44spbhags7d2jjfcvanian36vkw1cw186zy7vl2nqwf9hfa95"
+   "commit": "35aa068bc2bd6ad8b0070d9f3948d30b76c2e939",
+   "sha256": "020hnz41hwwr7kr2d1cs8vhlzn2i8p1hvd8v9z79v7a54f7573b9"
   },
   "stable": {
    "version": [
@@ -42833,16 +42848,16 @@
   "url": "https://git.launchpad.net/global-tags.el",
   "unstable": {
    "version": [
-    20210225,
-    1553
+    20210707,
+    1954
    ],
    "deps": [
     "async",
     "ht",
     "project"
    ],
-   "commit": "344d084ec5ff6c99b31c5ea57e5352c85b57ae26",
-   "sha256": "0x8m3srxhy0bdl6wqvi7m3q9jai73m5bavij1jwqhr3pc2caxzxm"
+   "commit": "06db25d91cc8bfb5e24e02adc04de1226c7e742d",
+   "sha256": "1q30cbqq0h1gfwlcbnx9s930li7w7a0y8sx2ivbvvyyc2j5gsk4j"
   },
   "stable": {
    "version": [
@@ -43979,8 +43994,8 @@
     20210102,
     515
    ],
-   "commit": "fcbd45f78b85500f66f323bd19994941832c28d1",
-   "sha256": "1akrm884nbqjf4l5667cfdxn8xawb2fkri40hv7k8w0pl9cjbamx"
+   "commit": "1d7d647bb53a49fce03486eba90e97ccf35cf85a",
+   "sha256": "14ysgyg1cqn83ly6fkwpq7ysibz9pgwcmn9x6lzk38ynkwdwjyz2"
   },
   "stable": {
    "version": [
@@ -44161,20 +44176,20 @@
   "repo": "io12/good-scroll.el",
   "unstable": {
    "version": [
-    20210613,
-    206
+    20210712,
+    1206
    ],
-   "commit": "26a1b958bbf2c45d86f033e58b74edd196302f23",
-   "sha256": "0g4fzji614aqy3kw9iivlmw5v8igql0lkrzvgffrd01jn57dzlwp"
+   "commit": "fac87dd390ad2aabe48afaef950f7a2d9b3ce283",
+   "sha256": "0kmiv013aqc4ayap39xlx7swrx2m8m12dzpvy2fa035aaj42ylvr"
   },
   "stable": {
    "version": [
-    1,
-    1,
-    4
+    2,
+    0,
+    0
    ],
-   "commit": "4ca86e18c8f64fd7a2d088a591ac11773d6b06a7",
-   "sha256": "0bq229nnwp8cy33gizp75wi3x11wn46p73v1581srm2f1zmkapsj"
+   "commit": "fac87dd390ad2aabe48afaef950f7a2d9b3ce283",
+   "sha256": "0kmiv013aqc4ayap39xlx7swrx2m8m12dzpvy2fa035aaj42ylvr"
   }
  },
  {
@@ -44203,8 +44218,8 @@
     20180130,
     1736
    ],
-   "commit": "9c8784ded344f6a35d1e1550385002f613a0c788",
-   "sha256": "1n1pk876yicv9hvwmja3hs6i7s25nv626p3gxsp9278yb933ml2m"
+   "commit": "4044bbd5ca4434b8cecd23a4da8ae173c1e0d58e",
+   "sha256": "0nym4c4j0awxzpj2qkds1fxppc7jzzazwj0j8qx6vr5yfp7iry51"
   }
  },
  {
@@ -44446,8 +44461,8 @@
     20210323,
     332
    ],
-   "commit": "6ab5128c028aac3ae070ba8df041b8039487253a",
-   "sha256": "0d8dihhl7cn3afwhn09drymm7c5hsf8v2m6rvpq5z7nkskkjw80v"
+   "commit": "1ed2df72f495784a2eccbe61de5f1b01b854fbea",
+   "sha256": "0hr6yhsr2x745i1q9sywvgr8xwvnpc05lr3zi84gci0frlab92d9"
   },
   "stable": {
    "version": [
@@ -44533,8 +44548,8 @@
     20210323,
     422
    ],
-   "commit": "c83688ea95b4308145555fea50e953a26d67b1b2",
-   "sha256": "0hi4jikr5hk4v28790mw1rj1myvr1pwldy7wh3n8bajhqdhbr59v"
+   "commit": "4cef6cab89eab5906330412efee6a3d9564f6e14",
+   "sha256": "02hywgvy9d0mhan595jgc2x6vqy428hi9ha9zybiz1hl2394xila"
   },
   "stable": {
    "version": [
@@ -44563,8 +44578,8 @@
     "magit-popup",
     "s"
    ],
-   "commit": "93851bd6e14df055d86661de494119e6bacb2192",
-   "sha256": "0bb5zbyr0xsf4p3440n5x2f3h10ya76vwr3jq10j0ff0x4fxs6iy"
+   "commit": "7822b34eb5d359ddae2f93d356c78c5ea05784d5",
+   "sha256": "0qkznd0a6cc32mwnmsa28lr8zji2nsi87kzcn467hq542zr61nz6"
   },
   "stable": {
    "version": [
@@ -44798,8 +44813,8 @@
     "s",
     "websocket"
    ],
-   "commit": "175e68d7ce9fd4c44d1eb808954cf0ba66b59599",
-   "sha256": "1ylynb295p5c26ayb8kdxqfbj9z61vinnd6bdlwsynr1wncbwyy4"
+   "commit": "46e802631a136cf356f5563005c9f9f5dedd09ed",
+   "sha256": "01vw411ngj325q1irhkx3fmf7g0mh99yrc72cxz3275mnc0dpdpj"
   },
   "stable": {
    "version": [
@@ -45211,8 +45226,8 @@
     20210609,
     1305
    ],
-   "commit": "0ef2a3566f76e1c03ec64ac64cbb916530e40e32",
-   "sha256": "1p15b41bdzg8819hnq6js62486mwdqcwxns5mnqb21bn6m7pizpm"
+   "commit": "c0ca78990395245e5f742166047b04eeff63cf6a",
+   "sha256": "1pyi6l08j19d30dk66ign0gpjh9wv1l42jnbsapb5migghas558z"
   },
   "stable": {
    "version": [
@@ -46475,8 +46490,8 @@
     20210108,
     1835
    ],
-   "commit": "fb3f3c9514e652f8955a67baeae13de264996860",
-   "sha256": "05kaxcazbr51chcmlx0fscwk32blj3lzndkr0qpbwfrn8n6mcmrg"
+   "commit": "6057c05154464bfb88d2ba119cdc8d4c7e767541",
+   "sha256": "0z1lpsvmkcxs3gcxkmi1vjgfa7wdfa42cp2i9rl2i17jq34j37yb"
   },
   "stable": {
    "version": [
@@ -46615,16 +46630,16 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20210701,
-    637
+    20210714,
+    1600
    ],
    "deps": [
     "async",
     "helm-core",
     "popup"
    ],
-   "commit": "e74f450eaa4f197f1fa63a819193bc1c65984042",
-   "sha256": "1xl9wn520gnpyyryf7iij8y1x5ak61zcira6g480sqvv2ympmhkd"
+   "commit": "60db46905443c87f324440202bd0735d57c5c201",
+   "sha256": "10rkyy63vqqf9s4i8rs409d22iwhxrhz3qikagmfyvvr1n6czcnp"
   },
   "stable": {
    "version": [
@@ -46718,14 +46733,14 @@
   "repo": "emacsorphanage/helm-ag",
   "unstable": {
    "version": [
-    20210305,
-    334
+    20210702,
+    845
    ],
    "deps": [
     "helm"
    ],
-   "commit": "51e164b4bb1a9826fe8b39c0d02b4064c9352b9f",
-   "sha256": "0371s2y06pipjn0ka8c1a0r6g8migz5sbm8hqqilng1cr1dm3x7a"
+   "commit": "7cfed5d3e861717466ae6d3f76c759548a9fad04",
+   "sha256": "0j1l9ifssd2xmdiif0c922dsdii143kjp8ifygqigb9m4wbsz8ax"
   },
   "stable": {
    "version": [
@@ -47079,15 +47094,15 @@
   "repo": "alphapapa/bufler.el",
   "unstable": {
    "version": [
-    20201216,
-    826
+    20210708,
+    2217
    ],
    "deps": [
     "bufler",
     "helm"
    ],
-   "commit": "097f4349920215bdd829fceabc1afdbba172c32a",
-   "sha256": "1a4y3p7cwygw09b9f9j9m821aiyjiji55mrm83pvv0xzc9rhwd3h"
+   "commit": "d466eac6c4b2ee25c765e7f31e44beb38dd44e4b",
+   "sha256": "00gyqpm0g437z71vbfd4kmih23vh6909dvygng133vxzly9k4f24"
   },
   "stable": {
    "version": [
@@ -47523,14 +47538,14 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20210701,
-    608
+    20210714,
+    1600
    ],
    "deps": [
     "async"
    ],
-   "commit": "e74f450eaa4f197f1fa63a819193bc1c65984042",
-   "sha256": "1xl9wn520gnpyyryf7iij8y1x5ak61zcira6g480sqvv2ympmhkd"
+   "commit": "60db46905443c87f324440202bd0735d57c5c201",
+   "sha256": "10rkyy63vqqf9s4i8rs409d22iwhxrhz3qikagmfyvvr1n6czcnp"
   },
   "stable": {
    "version": [
@@ -48068,8 +48083,8 @@
    "deps": [
     "helm"
    ],
-   "commit": "59adbf2d3c67b174a354f0dd64f647b4391ab8d0",
-   "sha256": "1x2ds29k4wwv406j49nzjkh43scahmrshx4lssqrkc9cay7210nx"
+   "commit": "5d6366adc14c51570374320fa827b0772833a61e",
+   "sha256": "0nrkghnsn83ah0jqbv7fx2i90p1z37lfmh6kwgjkr2aq4ggrcklj"
   },
   "stable": {
    "version": [
@@ -48333,8 +48348,8 @@
     "flx",
     "helm"
    ],
-   "commit": "72d618f95d6531854a60322d88b242825016f8e6",
-   "sha256": "0bpnspq7c3akny8blsp75br11g6fh425v9hxfpwyk8iqs5zwvlb7"
+   "commit": "9d57e4802aacfc50efe4804e45ace16f6931635c",
+   "sha256": "1l2vjksmgp7djxfwp6lyg9vqbsx2snc8h3wnf9pf020p3h4ccy9v"
   },
   "stable": {
    "version": [
@@ -49115,8 +49130,8 @@
   "repo": "julienXX/helm-lobste.rs",
   "unstable": {
    "version": [
-    20150213,
-    1546
+    20150211,
+    2214
    ],
    "deps": [
     "cl-lib",
@@ -49612,8 +49627,8 @@
     "org-ql",
     "s"
    ],
-   "commit": "8342656b2d9af4bb6af9daa0a8b037d3693bd940",
-   "sha256": "0alrs2dsd5k4xjrs2zs7hcr5fbfrr3rdq705s04943ic4kzvhrc9"
+   "commit": "94f9e6f3031b32cf5e2149beca7074807235dcb0",
+   "sha256": "022arhyyn8hbb1hzjkv4gl3dr8lz1gv0x4h70x0970bsbqlsa27w"
   },
   "stable": {
    "version": [
@@ -50500,8 +50515,8 @@
     "s",
     "searcher"
    ],
-   "commit": "181f60cb8505aec05393a9dbf414733d19f76d2a",
-   "sha256": "06bnnbay56ngiddkvvwmy3fv4v2gjss8gm7gjcp2064m9njgw5mx"
+   "commit": "76a8de11e39da5c7a94066bcf3d515cdd23c6f63",
+   "sha256": "1698j6x0vbxfdpdknrzwihr4pwpl1914i3azarmngkh8wnhma26s"
   },
   "stable": {
    "version": [
@@ -50798,14 +50813,14 @@
   "repo": "jamesnvc/helm-switch-shell",
   "unstable": {
    "version": [
-    20210106,
-    1810
+    20210713,
+    1440
    ],
    "deps": [
     "helm"
    ],
-   "commit": "9de26ca41e94c095c978ed920009de0280f5c4ec",
-   "sha256": "190bmn04g4nlcrpnsm465vyp0zcd2ryh13bc14f7w1vrmnw6ll1j"
+   "commit": "8d7ba1d99ff12a8f1d6ce3b9684ae8aebf494cf3",
+   "sha256": "04d7hz7gpbcy4vnmwi605n51angn4xbx6kqqqdb8nqvzh4f0y5g1"
   }
  },
  {
@@ -52117,8 +52132,8 @@
     20200203,
     1927
    ],
-   "commit": "ac1bea7d99dd6965c72fabeb72d5fdc38c5380a4",
-   "sha256": "13pray3iapy6vbd1y1y7fqcnjpsvgfz2z7j1a1awzd8ifp12g9cp"
+   "commit": "852cb4e72c0f78c8dbb2c972bdcb4e7b0108ff4c",
+   "sha256": "031624grhvv5ix3gvnd8lzpws80lb5r272yggl1k57rsayyv55ix"
   }
  },
  {
@@ -52346,16 +52361,16 @@
   "repo": "narendraj9/hledger-mode",
   "unstable": {
    "version": [
-    20201212,
-    2121
+    20210706,
+    1225
    ],
    "deps": [
     "async",
     "htmlize",
     "popup"
    ],
-   "commit": "f1deebb0cbe9ca040856d3cc99942335250d9566",
-   "sha256": "0hnmia3c052php3i2g1sbsp402fgi17yv6as044ck617p7avz971"
+   "commit": "9ac07ff0adbce6a402c17e789b1750f9da0d22f4",
+   "sha256": "0x3dgws8nh7q8x7zzjwbm5k9n7gi7qqd3ww7y51fbx6p6ii3jpp4"
   }
  },
  {
@@ -52740,16 +52755,16 @@
   "repo": "thanhvg/emacs-howdoyou",
   "unstable": {
    "version": [
-    20210217,
-    1723
+    20210707,
+    1513
    ],
    "deps": [
     "org",
     "promise",
     "request"
    ],
-   "commit": "27e9e015b930175896c07536c25e379a4e1997af",
-   "sha256": "14f3fqz8sjmjh7si5gk31fh7bnvc9p1rfd9p2l39zvasvk1sxki0"
+   "commit": "4943a4ef8d242952ade64903a05c13094de2fbf0",
+   "sha256": "1fgg1jcnihx3akp7r0fvwdx71ldl2apbw6xa591f6r5slvh179gn"
   }
  },
  {
@@ -52942,8 +52957,8 @@
     20200929,
     559
    ],
-   "commit": "8cb33f9513d79e44a602927f35d5a3bb0dccbb92",
-   "sha256": "0x72qh6pmaw3dfnx296flbvbm1sxgljz4997jkjwiss2pr7qsgx0"
+   "commit": "97f885a550bed05f2fbdd933718313e6645a6ea1",
+   "sha256": "0b8wz43k64c2ca4kqjlp9zx97hafwmnjc38pa7lyip9yhhnhkkf5"
   },
   "stable": {
    "version": [
@@ -53059,6 +53074,30 @@
   }
  },
  {
+  "ename": "huecycle",
+  "commit": "0c73a3a204ffe41f7370ef5d72a02a9e1844ce24",
+  "sha256": "0h4hfy9bw30sij5r3wgpz4sqwh343bwhd207p85kp0v10vnlk62x",
+  "fetcher": "github",
+  "repo": "pnor/huecycle",
+  "unstable": {
+   "version": [
+    20210706,
+    205
+   ],
+   "commit": "c343b2085dea11b820d4da6c6183e1102ec08698",
+   "sha256": "1bdhm9j2dammw5dzr8gh4wg5pkl7c706jqdwd43my7zsn2ipar24"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    0
+   ],
+   "commit": "c343b2085dea11b820d4da6c6183e1102ec08698",
+   "sha256": "1bdhm9j2dammw5dzr8gh4wg5pkl7c706jqdwd43my7zsn2ipar24"
+  }
+ },
+ {
   "ename": "hugsql-ghosts",
   "commit": "969fd5e51bf93b5eff6919956c43c041a3b24d1e",
   "sha256": "1v1iypis5iyimdr9796qpqw0qmhzijap0nbr0mhhyp4001kakkwz",
@@ -54775,8 +54814,8 @@
    "deps": [
     "impatient-mode"
    ],
-   "commit": "60ae30d07b857c074e2918680805cb37249de0ad",
-   "sha256": "0brj34ijgsgkbawp097wjwiaka2b082aypl5pal0298mpk97zxq0"
+   "commit": "bcb636dbef4630c5ae654642c6a637cceb588cac",
+   "sha256": "1nnmx7f256cll04wxwip3a1pll3rayiqx4ynirrm1ld97q8hdc3v"
   },
   "stable": {
    "version": [
@@ -54892,8 +54931,8 @@
     20210508,
     309
    ],
-   "commit": "044291cf063a86927dae50dffdb2b0e2e3f9199b",
-   "sha256": "0hiwq5nzh42f5ynjlhq9vlcgq8pmgcgbi9w5c5gczdl0s7cxv6l7"
+   "commit": "bfacd60a4be68a89d150f0bf2a9fb8714591f6f5",
+   "sha256": "1dxdzvg6bpz0wgj2amqy7q9xl8xi7clsw10d9c86gbq87b9js681"
   },
   "stable": {
    "version": [
@@ -55452,11 +55491,14 @@
   "repo": "emacs-jp/init-loader",
   "unstable": {
    "version": [
-    20200520,
-    2345
+    20210703,
+    902
    ],
-   "commit": "10b8d7b12acbd1036e68dfb59f460714baedaa33",
-   "sha256": "1w7sq9famd4xbh5jk974zzpn6cf1nh2vmbvjvd4fwpjhmnnibqsm"
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "ecab5a66b40227c4173992adfa5cfeae09f1657e",
+   "sha256": "0fkxv7i7jdlj0z5n4hfm8897pfy6jxmk8znpfr9564ay90cp445h"
   },
   "stable": {
    "version": [
@@ -55546,11 +55588,11 @@
   "repo": "ideasman42/emacs-inkpot-theme",
   "unstable": {
    "version": [
-    20210427,
-    1337
+    20210716,
+    58
    ],
-   "commit": "7c3a0a76fa00db41a4d3d990cc98a1c6b088df3d",
-   "sha256": "17x0afwfcr4k0nmliqajswmvaiglk1xl33r3j215w214xp6dqrp2"
+   "commit": "c3683aa99c738eb46cf310ba23162dbb315a5ac5",
+   "sha256": "14k3n5kn9z2lqdhm00qy0hz8synnv28i17gn518ps4cyk298dmby"
   }
  },
  {
@@ -55665,11 +55707,11 @@
   "url": "https://git.sr.ht/~pkal/insert-kaomoji",
   "unstable": {
    "version": [
-    20210618,
-    2249
+    20210707,
+    1126
    ],
-   "commit": "25b74d527cef00f6a49985161a8caaf62faa887c",
-   "sha256": "1qqxw67fbpix290jjrfai6z33fsyzb3zy1nwzk6mjss151586f5n"
+   "commit": "e818845a99d418e04c1685f06fe25116916f6168",
+   "sha256": "0acyzysz04sd3rahymw6x3a8zy57sy84d36zp6prd62y4w0sw361"
   },
   "stable": {
    "version": [
@@ -55854,8 +55896,8 @@
   "repo": "dcjohnson/inverse-acme-theme",
   "unstable": {
    "version": [
-    20210204,
-    1640
+    20170615,
+    1337
    ],
    "deps": [
     "autothemer",
@@ -56136,14 +56178,14 @@
   "repo": "jcs-elpa/isearch-project",
   "unstable": {
    "version": [
-    20200907,
-    1453
+    20210715,
+    1041
    ],
    "deps": [
     "f"
    ],
-   "commit": "1077b395e1c34a734120faf1f3a7feae6dc4d9c5",
-   "sha256": "1zdlk6s0j0825wy2blpxhsg5pxaybk5adxxpjvm6jj9r612xyn73"
+   "commit": "796e4e9a2508120ae430f522115c7d174d912276",
+   "sha256": "0wlh2ph87qa3i3n7j2mvih428ih65gqj0bzqwqw123cfflcz6xy2"
   },
   "stable": {
    "version": [
@@ -56378,8 +56420,8 @@
     20210602,
     1349
    ],
-   "commit": "040d458bce4a88f37359192061bcea5ebe87007c",
-   "sha256": "0lgpawrsvihksm9cx462qa1hsmxhhv1qp0h1f9m4wn1jrcrq7r24"
+   "commit": "56139df678d9886d0612c0a192cce2cf6f156628",
+   "sha256": "0xjjdq3vmpm3fpvmd3g57m4ldixx8j73in0nmdx4vvnzvh0n904g"
   },
   "stable": {
    "version": [
@@ -56406,8 +56448,8 @@
     "avy",
     "ivy"
    ],
-   "commit": "040d458bce4a88f37359192061bcea5ebe87007c",
-   "sha256": "0lgpawrsvihksm9cx462qa1hsmxhhv1qp0h1f9m4wn1jrcrq7r24"
+   "commit": "56139df678d9886d0612c0a192cce2cf6f156628",
+   "sha256": "0xjjdq3vmpm3fpvmd3g57m4ldixx8j73in0nmdx4vvnzvh0n904g"
   },
   "stable": {
    "version": [
@@ -56509,16 +56551,16 @@
   "repo": "jixiuf/ivy-dired-history",
   "unstable": {
    "version": [
-    20210418,
-    1444
+    20210715,
+    48
    ],
    "deps": [
     "cl-lib",
     "counsel",
     "ivy"
    ],
-   "commit": "1ffa9b705c52a9d5b03c97150addb4f746c08380",
-   "sha256": "1li8vh94w1mkwqbh1f0i1mmv5advrbh1183vpjc2zbmmk02pynkf"
+   "commit": "dba848929cb063a5536cb442c70be1099e2f5baa",
+   "sha256": "1fkw82am49j49s0s3ql22hl9i2imypb0xkrmsgc7sr2hfsim56sd"
   },
   "stable": {
    "version": [
@@ -56653,8 +56695,8 @@
     "ivy",
     "s"
    ],
-   "commit": "b237ee8e9fd2fd1b52254ef84cd06a0bb6c10a24",
-   "sha256": "0bimn8j3md579sg7bypsynmjnq1mlmmslci1k98sc8kfnky8260c"
+   "commit": "3ad203f6166f82c7a09ab4ad065fd40136915fb8",
+   "sha256": "07mdv0cnrjys0lcxamwpg5xl0g7wb0mgnzbkqyaik559avp5kq5a"
   },
   "stable": {
    "version": [
@@ -56747,16 +56789,16 @@
   "repo": "PythonNut/historian.el",
   "unstable": {
    "version": [
-    20190111,
-    313
+    20210714,
+    56
    ],
    "deps": [
     "flx",
     "historian",
     "ivy"
    ],
-   "commit": "ac1bea7d99dd6965c72fabeb72d5fdc38c5380a4",
-   "sha256": "13pray3iapy6vbd1y1y7fqcnjpsvgfz2z7j1a1awzd8ifp12g9cp"
+   "commit": "852cb4e72c0f78c8dbb2c972bdcb4e7b0108ff4c",
+   "sha256": "031624grhvv5ix3gvnd8lzpws80lb5r272yggl1k57rsayyv55ix"
   }
  },
  {
@@ -56774,8 +56816,8 @@
     "hydra",
     "ivy"
    ],
-   "commit": "040d458bce4a88f37359192061bcea5ebe87007c",
-   "sha256": "0lgpawrsvihksm9cx462qa1hsmxhhv1qp0h1f9m4wn1jrcrq7r24"
+   "commit": "56139df678d9886d0612c0a192cce2cf6f156628",
+   "sha256": "0xjjdq3vmpm3fpvmd3g57m4ldixx8j73in0nmdx4vvnzvh0n904g"
   },
   "stable": {
    "version": [
@@ -57107,8 +57149,8 @@
     "s",
     "searcher"
    ],
-   "commit": "3a2f5073a0d5842a6b3c386e70cc484e3c4ea77b",
-   "sha256": "1bk8kaxqq1m76x1i4hy3jqcy05pr6dlzjd4dbyi8lrx9sxnfrnkk"
+   "commit": "84faba3cd87374f54d5e27344d4812737375fbaa",
+   "sha256": "1lxiamv0960j1sfs9afqbdkp7mjkdbi1nw1nh5w8q3m9a44c1h89"
   },
   "stable": {
    "version": [
@@ -58493,14 +58535,14 @@
   "repo": "mooz/js2-mode",
   "unstable": {
    "version": [
-    20210622,
-    102
+    20210712,
+    202
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "4eaf98e3cc3789381a37a05cd70a248db9ac8c1b",
-   "sha256": "0mlp1pbph3790lvg5j6cdaffhb9ly8jdl00lmffs14840b8prkf3"
+   "commit": "6f313c9566d9c8453a91c5ccaa25760978cb9f6d",
+   "sha256": "09fxg0ljv2g9rv7n67km7q64w49fcl0gngm68m252nyvk2x28b08"
   },
   "stable": {
    "version": [
@@ -59014,8 +59056,8 @@
   "repo": "gcv/julia-snail",
   "unstable": {
    "version": [
-    20210624,
-    547
+    20210715,
+    1359
    ],
    "deps": [
     "dash",
@@ -59024,8 +59066,8 @@
     "spinner",
     "vterm"
    ],
-   "commit": "47f1b125f8364a0aa8c072fdc7b4007aad5c0724",
-   "sha256": "12lqc5yysjzf0vypjcs2mnsv6frhwyfm950rcsbwkwz3lvfnrajn"
+   "commit": "a71a536fc1f194bc329e2c33eed5eab542c00cab",
+   "sha256": "0cnhv37m8hcl3lfbiivy3yk338x60q8fglm5nibhfr55ln52jjc4"
   },
   "stable": {
    "version": [
@@ -59714,11 +59756,11 @@
   "repo": "ifosch/keepass-mode",
   "unstable": {
    "version": [
-    20210110,
-    630
+    20210628,
+    729
    ],
-   "commit": "515343a7667b2bf4253309449f65a6eb94933df7",
-   "sha256": "0hrq521swki0l3m81wk9p7pkc5j99li441fb75h7107v6z0p102c"
+   "commit": "fd7d380b762c888f25435d0c241012cdabf6e288",
+   "sha256": "1623hqlyk7qlvb5kigkyiji98a2vp39y0v6smag2mnqa3r89jq7l"
   },
   "stable": {
    "version": [
@@ -60165,8 +60207,8 @@
     20210523,
     403
    ],
-   "commit": "8d2a5ec4a7fe766a62037b05f26a8f36fff45c06",
-   "sha256": "1rszkzpr22dy9yr54k2pz6p2j6lbgvy189f6ki8gmlsqzdyxmssk"
+   "commit": "075b05b6ed7fe1b9f4f22544bc26749243de6808",
+   "sha256": "01qwcr65qzz0ilzj9318hnz9hs3gdd722xpajmp8sa1520w9vhzm"
   },
   "stable": {
    "version": [
@@ -60748,16 +60790,16 @@
   "repo": "kubernetes-el/kubernetes-el",
   "unstable": {
    "version": [
-    20210630,
-    612
+    20210714,
+    1307
    ],
    "deps": [
     "dash",
-    "magit",
-    "magit-popup"
+    "magit-popup",
+    "magit-section"
    ],
-   "commit": "d8034e6ddd668d2f7d34b6aa7bd19e2a575b609f",
-   "sha256": "1hp760wqwzflpnqrha1qnrbilr3qynd1dma00jyrhq76hdb83xwv"
+   "commit": "ffdae05d4d0e83be5c6884326b69a8ca83f2ae2b",
+   "sha256": "1fjrl2w3gp5mbdg6mkw23h9zfn2h8rdmxgyw80p0jpm0b31yq1i0"
   },
   "stable": {
    "version": [
@@ -60789,8 +60831,8 @@
     "evil",
     "kubernetes"
    ],
-   "commit": "d8034e6ddd668d2f7d34b6aa7bd19e2a575b609f",
-   "sha256": "1hp760wqwzflpnqrha1qnrbilr3qynd1dma00jyrhq76hdb83xwv"
+   "commit": "ffdae05d4d0e83be5c6884326b69a8ca83f2ae2b",
+   "sha256": "1fjrl2w3gp5mbdg6mkw23h9zfn2h8rdmxgyw80p0jpm0b31yq1i0"
   },
   "stable": {
    "version": [
@@ -60910,14 +60952,14 @@
   "url": "https://git.sr.ht/~tarsius/l",
   "unstable": {
    "version": [
-    20210214,
-    1130
+    20210705,
+    2113
    ],
    "deps": [
     "seq"
    ],
-   "commit": "518203abc6cee13c73c2d91282354ed59f00f15e",
-   "sha256": "1s3fndzjhz0xvbhdb0y7raa7zqrpws1xm79blgfcxcrv2fbmbzan"
+   "commit": "02b1afad2c5649221abada2d938ef3736e020a96",
+   "sha256": "0idzyx6pxn8s78my9b4qjxz6561w6bzjvbp3yv267piyjgvwnzpc"
   },
   "stable": {
    "version": [
@@ -61050,8 +61092,8 @@
     "highlight",
     "math-symbol-lists"
    ],
-   "commit": "56f808edfd0983c0df2ed1c957c50c02af5faad3",
-   "sha256": "05fyx88wmyc4c6lcy5qphg6zhbfmlnpy7y23l00qfi5k9hmv99hm"
+   "commit": "138e6794122f8601e58731a365930bd7cf5791ea",
+   "sha256": "0zj3i612h0sih7lyy4zvzldcrgqmsqcvr4y42zv75r81s0l6gddz"
   }
  },
  {
@@ -61176,25 +61218,25 @@
   "repo": "lassik/emacs-language-id",
   "unstable": {
    "version": [
-    20210618,
-    1532
+    20210708,
+    1719
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "7db7ba27d2abf8891d40dc952c22d3a3654d9bbc",
-   "sha256": "11wzyv6jdprppjqygszl30hkxydjlhk7fdvda6h37k6dlk1fh1wp"
+   "commit": "5ac941a38b193d680df6bb9e96b0508a33bb3133",
+   "sha256": "0vxvlvw6zmr2cn6vhci22yyn77n22pr2r4wmscm8j4693kdcqbdj"
   },
   "stable": {
    "version": [
     0,
-    13
+    14
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "7db7ba27d2abf8891d40dc952c22d3a3654d9bbc",
-   "sha256": "11wzyv6jdprppjqygszl30hkxydjlhk7fdvda6h37k6dlk1fh1wp"
+   "commit": "5ac941a38b193d680df6bb9e96b0508a33bb3133",
+   "sha256": "0vxvlvw6zmr2cn6vhci22yyn77n22pr2r4wmscm8j4693kdcqbdj"
   }
  },
  {
@@ -61620,14 +61662,14 @@
   "repo": "conao3/leaf-keywords.el",
   "unstable": {
    "version": [
-    20210222,
-    1243
+    20210711,
+    156
    ],
    "deps": [
     "leaf"
    ],
-   "commit": "4146621f4ae80ef0c30160337119441c1f6334b6",
-   "sha256": "16iv1cvlky2gij1ndx2d6q8l35axm72bx52n6v5y3h21aibj197n"
+   "commit": "f46311f8e7e5ce0d5af928fea99111b3c86de7ce",
+   "sha256": "1qlg6n5yaagq97x3c2r58pcblk0gz4bysg3cgm5iq3sq9lpf3h2n"
   },
   "stable": {
    "version": [
@@ -61866,8 +61908,8 @@
     "log4e",
     "spinner"
    ],
-   "commit": "aeba19919e6d8f1c0529330572240143a2af38e0",
-   "sha256": "0yfghps19832w4sdjaglnbb9xn40fc5a6072lxbsw8gan9c2bjh7"
+   "commit": "7ef1dffd44be9bba6450953d25ff787e122afc69",
+   "sha256": "15gfyx53m02andalyicnvs7b3v59zq64r0jmmgkg6gy5za6c0hsd"
   },
   "stable": {
    "version": [
@@ -62211,8 +62253,8 @@
   "repo": "merrickluo/liberime",
   "unstable": {
    "version": [
-    20210526,
-    623
+    20200915,
+    542
    ],
    "commit": "4a6da0f6ab9b43651f3fcc73412e3480b9403caa",
    "sha256": "04ag7icqqdhz40fi91fx4bxx8j6vw2774gw1fbppbks3sasimyy0"
@@ -62336,8 +62378,8 @@
    "deps": [
     "request"
    ],
-   "commit": "ef80eff8b7be117f9c48bdc6d9a62e56b0a93554",
-   "sha256": "1z6qd4bcpwdpvi6w9yrkrnk2ypllhm6k4zjl8v1p8k0j93dbn3ny"
+   "commit": "bfd5ef11f26ba46c8e0894ea08ffec74cca72288",
+   "sha256": "1x02lwplyd41qaxy27np2fza818p0h62np6kd9sqqxkng4ahy97z"
   },
   "stable": {
    "version": [
@@ -62378,17 +62420,17 @@
     20210303,
     1751
    ],
-   "commit": "95538837d93c9d05e35ea85d6c25527fac715df7",
-   "sha256": "0p3v41vrsfjv866gjys2izmiyxl7vaiy7m93ra9kx45mrslyjcyg"
+   "commit": "4a785dbbf4f906584716bb14c92230beda5081ed",
+   "sha256": "0vkqp8ck21hhwfnfvmxfwrb3dnkqk4072n4jr7w6ivvhs555srdd"
   },
   "stable": {
    "version": [
     0,
-    19,
+    20,
     0
    ],
-   "commit": "0169d3ef40403c1bb41b5ce81c7ae2ec01a6ba1d",
-   "sha256": "0p3v41vrsfjv866gjys2izmiyxl7vaiy7m93ra9kx45mrslyjcyg"
+   "commit": "89c2f0ad779b8d15581a3607beb55855b0da8737",
+   "sha256": "0vkqp8ck21hhwfnfvmxfwrb3dnkqk4072n4jr7w6ivvhs555srdd"
   }
  },
  {
@@ -62399,15 +62441,15 @@
   "repo": "emacs-vs/line-reminder",
   "unstable": {
    "version": [
-    20210627,
-    2121
+    20210715,
+    839
    ],
    "deps": [
     "fringe-helper",
     "indicators"
    ],
-   "commit": "355cdcb6888fe6668e85a96dfe694d4bd050372e",
-   "sha256": "0hs5js38djfid0aqz0ygswqj26j3dpqjbaidghlfhdhcvifixsvw"
+   "commit": "38ca45f01b31d5de07a4a5e43ec54c4644718dcf",
+   "sha256": "12qcrsjb9j9w7nqr28ff1gnk4icl134pgjvm9ph5psf6a6qd9d78"
   },
   "stable": {
    "version": [
@@ -62539,14 +62581,14 @@
   "repo": "noctuid/link-hint.el",
   "unstable": {
    "version": [
-    20210410,
-    1506
+    20150922,
+    451
    ],
    "deps": [
     "avy"
    ],
-   "commit": "ae73db6a5948c8d109fc1d570760bcafa3f07175",
-   "sha256": "1rlbxlh9a0hnlaxpgfjvjjvmhnzwc84p9xiqi740xv82cd27wcnl"
+   "commit": "9fbf196d155016d9b8471a99318ed67a086cf257",
+   "sha256": "0v2g9gzf2v88ag59q1pf5vhd4qjnz3g4i6gzl27k6fi7pvlxdn39"
   }
  },
  {
@@ -62743,8 +62785,8 @@
   "repo": "abo-abo/lispy",
   "unstable": {
    "version": [
-    20210121,
-    926
+    20210702,
+    1206
    ],
    "deps": [
     "ace-window",
@@ -62753,8 +62795,8 @@
     "iedit",
     "zoutline"
    ],
-   "commit": "38a7df4cbb16cfe3d62dc8ea98b50e2d9a572e58",
-   "sha256": "1q3sgk8ffwajmh8l7c4p4fz36xw4fqds8yqblbi5kardaa8bs8cs"
+   "commit": "e9731aa95581951ab2cbfaed28f0ac7d71124ac0",
+   "sha256": "12vvh1z72bhvh4yhm0r7c3wl3iplf45qkdqk92xc0mp3zf9w6c5g"
   },
   "stable": {
    "version": [
@@ -62781,16 +62823,16 @@
   "repo": "noctuid/lispyville",
   "unstable": {
    "version": [
-    20200808,
-    2240
+    20210702,
+    2031
    ],
    "deps": [
     "cl-lib",
     "evil",
     "lispy"
    ],
-   "commit": "89316f01822b2135e52ca27fd308d207ef618052",
-   "sha256": "10k3hxxpx2v2k4dyad7j1bzmr1q7rzvv4y6c67pa9zcqyaw8m91v"
+   "commit": "9c14bed0359f659e246d345c706f895737c3d172",
+   "sha256": "1jlxcr9vikczhryw3xslfy6hzs2ikcf9khbwaw53ymwdxrmphcci"
   }
  },
  {
@@ -63165,10 +63207,10 @@
   "unstable": {
    "version": [
     20210701,
-    1735
+    1955
    ],
-   "commit": "96ca0e9058d8c1e533ce9aa1396e49f086362b06",
-   "sha256": "0bcilb7mcf9al3qs8i63idw97025b193sslrwkd7w8pphk2g9cqi"
+   "commit": "db1f98cc470972f92d72f40b78db4baff5768edd",
+   "sha256": "1wgqcb4m5nzkbxkvdx801h9d1wqswlqmqbar4282wabgnw78zwwy"
   },
   "stable": {
    "version": [
@@ -63740,14 +63782,14 @@
   "repo": "okamsn/loopy",
   "unstable": {
    "version": [
-    20210701,
-    216
+    20210710,
+    228
    ],
    "deps": [
     "map"
    ],
-   "commit": "27df47157a0a1753065172a346a2ffeb1778a99c",
-   "sha256": "0cwqyggc9hf5kwpypw0230p5fl3j8a6b2k3cgsrfk4i4lwkfnr5c"
+   "commit": "f3f81affc88e6cb9efbc5440b26e081cffddd311",
+   "sha256": "0ibag71yz92abhbxsry3sby7g5361n4y7qac5myav2rj4bcjsl0n"
   }
  },
  {
@@ -63758,15 +63800,15 @@
   "repo": "okamsn/loopy",
   "unstable": {
    "version": [
-    20210701,
-    216
+    20210705,
+    2006
    ],
    "deps": [
     "dash",
     "loopy"
    ],
-   "commit": "27df47157a0a1753065172a346a2ffeb1778a99c",
-   "sha256": "0cwqyggc9hf5kwpypw0230p5fl3j8a6b2k3cgsrfk4i4lwkfnr5c"
+   "commit": "f3f81affc88e6cb9efbc5440b26e081cffddd311",
+   "sha256": "0ibag71yz92abhbxsry3sby7g5361n4y7qac5myav2rj4bcjsl0n"
   }
  },
  {
@@ -63833,8 +63875,8 @@
   "repo": "emacs-lsp/lsp-dart",
   "unstable": {
    "version": [
-    20210608,
-    2101
+    20210715,
+    1659
    ],
    "deps": [
     "dap-mode",
@@ -63845,14 +63887,14 @@
     "lsp-treemacs",
     "pkg-info"
    ],
-   "commit": "01d89d43f17a15c7ccad5a458250d5d6b0f70b09",
-   "sha256": "0vnzzfap7ndr26016n1c1q21ga2lgw9vb555mn4dql6ny191ri0r"
+   "commit": "8481da68a9df4061bc2cd884a3b73c14e8fb4bea",
+   "sha256": "1accwvgwjp6j82i26788g3k9zc4al9xjw700cpdgsxw7mn6lkw8n"
   },
   "stable": {
    "version": [
     1,
     19,
-    0
+    1
    ],
    "deps": [
     "dap-mode",
@@ -63863,8 +63905,8 @@
     "lsp-treemacs",
     "pkg-info"
    ],
-   "commit": "49bb4d597e30c95d66a96739ea10c1c4f74ac649",
-   "sha256": "0kwzi6f3ig6lq95h2y9nddwkisml1fig290vn1sm7wkl3r9ci8bd"
+   "commit": "8481da68a9df4061bc2cd884a3b73c14e8fb4bea",
+   "sha256": "1accwvgwjp6j82i26788g3k9zc4al9xjw700cpdgsxw7mn6lkw8n"
   }
  },
  {
@@ -63926,8 +63968,8 @@
   "repo": "emacs-grammarly/lsp-grammarly",
   "unstable": {
    "version": [
-    20210616,
-    1021
+    20210715,
+    918
    ],
    "deps": [
     "grammarly",
@@ -63936,8 +63978,8 @@
     "request",
     "s"
    ],
-   "commit": "57a698e69c0dacbcad30398c262cdc5711efba71",
-   "sha256": "17jhfzy7bk645402yi65dsw19rvyjqm5wfd8y73hcfniihdrnqzp"
+   "commit": "bb7fe5d70a3d21813858d93f70fe807beba99688",
+   "sha256": "143afkkfm7dvhlpl77j98hbm5fk2jsrrkxkx1dpn17mj74ijq0ix"
   },
   "stable": {
    "version": [
@@ -64034,8 +64076,8 @@
   "repo": "emacs-lsp/lsp-java",
   "unstable": {
    "version": [
-    20210701,
-    725
+    20210710,
+    1757
    ],
    "deps": [
     "dap-mode",
@@ -64047,8 +64089,8 @@
     "request",
     "treemacs"
    ],
-   "commit": "28c56ec59a8c1b197727f4d56cec724445661fd9",
-   "sha256": "0g544mxv362ypwg79kyvjmnr63ss5psp89dmmzbx0bfpk8z4ib0j"
+   "commit": "b66a075bcb1edf57b09a0e1c73c3a399596d4760",
+   "sha256": "1s47y8hd9mnvz858h3sbdbdgrv3d1kdxag8flm44jla4yhgish7g"
   },
   "stable": {
    "version": [
@@ -64165,8 +64207,8 @@
    "deps": [
     "lsp-mode"
    ],
-   "commit": "0e4c96a625bd83930cac338eb7a998c024a15f38",
-   "sha256": "11gvqbp9j585g86ir610lb3fq87nbwr44j3xzifh4rga6cwdb6yj"
+   "commit": "d1da153dbc762c5262f6e2a10264cc9075ebb6fc",
+   "sha256": "06vb7dxmjdc86zmv1i4qckx1isv0kvp5h0av2b4cnaci76bjh3s3"
   },
   "stable": {
    "version": [
@@ -64189,14 +64231,15 @@
   "repo": "emacs-languagetool/lsp-ltex",
   "unstable": {
    "version": [
-    20210616,
-    1021
+    20210715,
+    942
    ],
    "deps": [
+    "f",
     "lsp-mode"
    ],
-   "commit": "cd6fa0b32118792e9f7bcbf4a26032bfff05d603",
-   "sha256": "16hn5wbfa4f958pyl47l4nvqx092ws16l99dcwijzk9xs4wrkipn"
+   "commit": "b9a930757c71f7eb30a0828a502a237bfd882b43",
+   "sha256": "1hsq4jjz79bb1wl8m65n2zmx10mr8zc7dmg5sp6z6sprgyb3vndh"
   },
   "stable": {
    "version": [
@@ -64263,8 +64306,8 @@
   "repo": "emacs-lsp/lsp-mode",
   "unstable": {
    "version": [
-    20210630,
-    2003
+    20210715,
+    1320
    ],
    "deps": [
     "dash",
@@ -64274,8 +64317,8 @@
     "markdown-mode",
     "spinner"
    ],
-   "commit": "7b183d397f8bc17eceb4d156e24575a47a1d807f",
-   "sha256": "15br2gf55436jm5a3iygr8cp3vriiar85kmgmap88ws8z83qg17x"
+   "commit": "cd47168035c98c6ebf9177705b9b7da53fcc9f5f",
+   "sha256": "1q1isn2g09pdczqdvbk5hjirym6106ip1z6klg1m2d5b9d8vx0l2"
   },
   "stable": {
    "version": [
@@ -64600,16 +64643,16 @@
   "repo": "emacs-lsp/lsp-ui",
   "unstable": {
    "version": [
-    20210619,
-    905
+    20210708,
+    134
    ],
    "deps": [
     "dash",
     "lsp-mode",
     "markdown-mode"
    ],
-   "commit": "240a7de26400cf8b13312c3f9acf7ce653bdaa8a",
-   "sha256": "1zscdjlnkx43i4kw2qmlvji23xfpw7n5y4v99ld33205dg905fsy"
+   "commit": "1ee371765612b7aaa6046aabdc2f65bcfcb93b11",
+   "sha256": "051hc6310zzn9qpvd9k8cj7ibzsk1k19l2485c5wra0fvm2lfa6x"
   },
   "stable": {
    "version": [
@@ -65087,8 +65130,8 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20210701,
-    1554
+    20210716,
+    1440
    ],
    "deps": [
     "dash",
@@ -65097,14 +65140,14 @@
     "transient",
     "with-editor"
    ],
-   "commit": "2ae376e4923e02355828350b81cdc1b0f8fa72ff",
-   "sha256": "1h07rg0fvr7av69bcks1n63digafq145mlsaddyv6xixxqjp0vbg"
+   "commit": "bf9cc19a3287f6a3cc5c1836312f0d18b38b6e45",
+   "sha256": "0zjcvhjp4c01ibb1hshpqkib7fvjkmvh9xf06qfsm5ybdc04xik5"
   },
   "stable": {
    "version": [
     3,
-    0,
-    0
+    1,
+    1
    ],
    "deps": [
     "dash",
@@ -65113,8 +65156,8 @@
     "transient",
     "with-editor"
    ],
-   "commit": "c3bbc9b9425f3370690cabb11bd35b9040773fdc",
-   "sha256": "0dbp3gx43ipxv8zg9m0hfhksz85rnkikaq35rx705qqz6xq6xq9m"
+   "commit": "143d95cced1ee793106d16da3a182dcc2dd01e88",
+   "sha256": "0sn4iiicmqfqmvi7zwii6qdp35k09kqn36rpalv0w1i4jcm6j9kk"
   }
  },
  {
@@ -65184,8 +65227,8 @@
     "magit",
     "xterm-color"
    ],
-   "commit": "1164a6c3e501e944f1a6a2e91f15374a193bb8d3",
-   "sha256": "1a24qpqdk00prprm5s4gwfi1hvdljp2808rg33qaaa1087zdavqj"
+   "commit": "56cdffd377279589aa0cb1df99455c098f1848cf",
+   "sha256": "19q04y61hkzxkqw2xi1g7m4bwaxpfwza7if6cm41g72kdb8r68vb"
   }
  },
  {
@@ -65437,28 +65480,28 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20210701,
-    1551
+    20210702,
+    819
    ],
    "deps": [
     "libgit",
     "magit"
    ],
-   "commit": "2ae376e4923e02355828350b81cdc1b0f8fa72ff",
-   "sha256": "1h07rg0fvr7av69bcks1n63digafq145mlsaddyv6xixxqjp0vbg"
+   "commit": "bf9cc19a3287f6a3cc5c1836312f0d18b38b6e45",
+   "sha256": "0zjcvhjp4c01ibb1hshpqkib7fvjkmvh9xf06qfsm5ybdc04xik5"
   },
   "stable": {
    "version": [
     3,
-    0,
-    0
+    1,
+    1
    ],
    "deps": [
     "libgit",
     "magit"
    ],
-   "commit": "c3bbc9b9425f3370690cabb11bd35b9040773fdc",
-   "sha256": "0dbp3gx43ipxv8zg9m0hfhksz85rnkikaq35rx705qqz6xq6xq9m"
+   "commit": "143d95cced1ee793106d16da3a182dcc2dd01e88",
+   "sha256": "0sn4iiicmqfqmvi7zwii6qdp35k09kqn36rpalv0w1i4jcm6j9kk"
   }
  },
  {
@@ -65606,26 +65649,26 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20210701,
-    1554
+    20210702,
+    822
    ],
    "deps": [
     "dash"
    ],
-   "commit": "2ae376e4923e02355828350b81cdc1b0f8fa72ff",
-   "sha256": "1h07rg0fvr7av69bcks1n63digafq145mlsaddyv6xixxqjp0vbg"
+   "commit": "bf9cc19a3287f6a3cc5c1836312f0d18b38b6e45",
+   "sha256": "0zjcvhjp4c01ibb1hshpqkib7fvjkmvh9xf06qfsm5ybdc04xik5"
   },
   "stable": {
    "version": [
     3,
-    0,
-    0
+    1,
+    1
    ],
    "deps": [
     "dash"
    ],
-   "commit": "c3bbc9b9425f3370690cabb11bd35b9040773fdc",
-   "sha256": "0dbp3gx43ipxv8zg9m0hfhksz85rnkikaq35rx705qqz6xq6xq9m"
+   "commit": "143d95cced1ee793106d16da3a182dcc2dd01e88",
+   "sha256": "0sn4iiicmqfqmvi7zwii6qdp35k09kqn36rpalv0w1i4jcm6j9kk"
   }
  },
  {
@@ -65903,8 +65946,8 @@
   "repo": "p3r7/magrant",
   "unstable": {
    "version": [
-    20210514,
-    1322
+    20210706,
+    1438
    ],
    "deps": [
     "dash",
@@ -65913,8 +65956,8 @@
     "tablist",
     "transient"
    ],
-   "commit": "79661be21cc8e9faf1ac93adb1f86f9b7a8b110d",
-   "sha256": "00hl22bl9cbivwdilzqrz9kf3qcixbc15x263cv1nn9ppba4arhw"
+   "commit": "6309c001355126e3ade79493479b517925943d17",
+   "sha256": "0fg4hi65qdix0lpfw29ymy2naskn2af661pzg695f47xhknsir1r"
   }
  },
  {
@@ -66230,8 +66273,8 @@
    "deps": [
     "manage-minor-mode"
    ],
-   "commit": "d377094c4ff5e93321e12f53892113083148bdaf",
-   "sha256": "0dpljs8qmpvpb0y2cvcr71ashzrm2ypb8p6anay4sjmiphkb60p5"
+   "commit": "ae46a80e27dc42913620ad78d7a84ece12643bd7",
+   "sha256": "16ygsxk5raa6p767jp6g5hmgsghq0dpk102g526d770iim5s8nlb"
   },
   "stable": {
    "version": [
@@ -66407,11 +66450,11 @@
   "repo": "minad/marginalia",
   "unstable": {
    "version": [
-    20210620,
-    1943
+    20210716,
+    1252
    ],
-   "commit": "9796fada769f44cb8e05914bd6be3fcc15d791e2",
-   "sha256": "0yn6dybvsdhr37hnadmbfqi7pf7scxr9z6a6ghsqbrghycddd0mc"
+   "commit": "b5893884abeb6a355233edf54e0f63d04bc32ce2",
+   "sha256": "0cjabw0ia9rnb3idmv9s6i4izgklxkiax8zn5xw1c6n8ls5iwbqj"
   },
   "stable": {
    "version": [
@@ -66527,11 +66570,11 @@
   "repo": "jrblevin/markdown-mode",
   "unstable": {
    "version": [
-    20210616,
-    122
+    20210710,
+    1646
    ],
-   "commit": "1c7d29d52986b2cb153b5f643167ea49417de469",
-   "sha256": "0jgfxvhx5z3hjzpdxikx75ikgc0w7ap442svqpyigf78rb32wsjl"
+   "commit": "359347b2bb15f8d7ef819692ac79759ccfe2c85d",
+   "sha256": "1naqcg0a5shzcg0rlqs6w5mlr7sn0b8b2hmhs07qawvpxln8j628"
   },
   "stable": {
    "version": [
@@ -66742,8 +66785,8 @@
     20200720,
     1034
    ],
-   "commit": "d8e83b837bacdd45d274be42fe2d172fd1cbbba2",
-   "sha256": "1iy8vg2wlrzb01nc6sx21ijg62ak94k2x2w6gy56krp7frakacrv"
+   "commit": "67d19ed3d74c335a6a0e4798c98841c940ec911f",
+   "sha256": "04dyb3nn5rdgic1m74sv9wzxkfxvszk3sj2fnixp41dj3pvwwdwb"
   },
   "stable": {
    "version": [
@@ -66927,11 +66970,11 @@
   "url": "https://git.code.sf.net/p/matlab-emacs/src",
   "unstable": {
    "version": [
-    20210504,
-    1439
+    20210716,
+    1247
    ],
-   "commit": "c5824936cc7c2d24aeaac40010669f4eec89a239",
-   "sha256": "0rccwkglyw9hnab5mzhrzfrldlvi9c8ivygdh54jzfjlzcgwddv9"
+   "commit": "3fbc97b3f29c72b01812739536ed416e3e07e3c1",
+   "sha256": "0fhsp1g8mlh4ias1xgx0yjvh0g1khdy91pl474b2g0ffrml5ab73"
   }
  },
  {
@@ -67468,11 +67511,11 @@
   "repo": "ocaml/merlin",
   "unstable": {
    "version": [
-    20210623,
-    1512
+    20210707,
+    901
    ],
-   "commit": "a69ef83f2894c7e019c9b487b9646f7a63456471",
-   "sha256": "1v0pc3yglbgdpmviz45h1zcnc2kkz35jbvdzkrks122736nz1dli"
+   "commit": "7c4c0a7018109b2b1bcbc3f6c1486961b223e658",
+   "sha256": "13cissjjkhfab7sgmwwmdcl3d5kn3qd2d6w9nmcw0yb8c59r1c0l"
   },
   "stable": {
    "version": [
@@ -67500,8 +67543,8 @@
     "auto-complete",
     "merlin"
    ],
-   "commit": "a69ef83f2894c7e019c9b487b9646f7a63456471",
-   "sha256": "1v0pc3yglbgdpmviz45h1zcnc2kkz35jbvdzkrks122736nz1dli"
+   "commit": "7c4c0a7018109b2b1bcbc3f6c1486961b223e658",
+   "sha256": "13cissjjkhfab7sgmwwmdcl3d5kn3qd2d6w9nmcw0yb8c59r1c0l"
   },
   "stable": {
    "version": [
@@ -67533,8 +67576,8 @@
     "company",
     "merlin"
    ],
-   "commit": "a69ef83f2894c7e019c9b487b9646f7a63456471",
-   "sha256": "1v0pc3yglbgdpmviz45h1zcnc2kkz35jbvdzkrks122736nz1dli"
+   "commit": "7c4c0a7018109b2b1bcbc3f6c1486961b223e658",
+   "sha256": "13cissjjkhfab7sgmwwmdcl3d5kn3qd2d6w9nmcw0yb8c59r1c0l"
   },
   "stable": {
    "version": [
@@ -67595,8 +67638,8 @@
     "iedit",
     "merlin"
    ],
-   "commit": "a69ef83f2894c7e019c9b487b9646f7a63456471",
-   "sha256": "1v0pc3yglbgdpmviz45h1zcnc2kkz35jbvdzkrks122736nz1dli"
+   "commit": "7c4c0a7018109b2b1bcbc3f6c1486961b223e658",
+   "sha256": "13cissjjkhfab7sgmwwmdcl3d5kn3qd2d6w9nmcw0yb8c59r1c0l"
   },
   "stable": {
    "version": [
@@ -67692,11 +67735,11 @@
   "repo": "myTerminal/meta-presenter",
   "unstable": {
    "version": [
-    20190414,
-    1720
+    20210714,
+    1658
    ],
-   "commit": "704a2e0f2a3e6bb72578e00eccb772dfcf0670fc",
-   "sha256": "1hka4c87zdgqjawlmsfd7wi6rbc03qfp996ydrj84kz8saq7gf89"
+   "commit": "4ab48dacea245b223a0ffd2723ece746bd61c0af",
+   "sha256": "0na573lsgvzpfyam7bsc63lnsrd2acp9djbg3kpng999f2mlrx1r"
   },
   "stable": {
    "version": [
@@ -67931,11 +67974,11 @@
   "repo": "purpleidea/mgmt",
   "unstable": {
    "version": [
-    20210131,
-    2152
+    20190324,
+    1908
    ],
-   "commit": "48fa796ab1669dc275b8c99238fff6c83ad2fcc6",
-   "sha256": "0rn7ahpj2kjkmy7gq4fj0n99af70xxxykyjqsza1nnizxfgmrpwj"
+   "commit": "6a7d904fae5014aabae8c91add220485108d485b",
+   "sha256": "0r0msrnbz9177cv1mlacsyd35k945nk2qaqm1f8ymgxa99zy124i"
   },
   "stable": {
    "version": [
@@ -68138,11 +68181,11 @@
   "repo": "muffinmad/emacs-mini-frame",
   "unstable": {
    "version": [
-    20210212,
-    2041
+    20210710,
+    1941
    ],
-   "commit": "41afb3d79cd269726e955ef0896dc077562de0f5",
-   "sha256": "0yghz9pdjsm9v6lbjckm6c5h9ak7iylx8sqgyjwl6nihkpvv4jyp"
+   "commit": "b07faabfec1b5ba545dc1cb961545cc1e9d78db0",
+   "sha256": "0b7znsgvycfx2brk782mi0n8i779n1r7pqwfq7s256rgi4fcyzap"
   }
  },
  {
@@ -68523,8 +68566,8 @@
     20210601,
     2158
    ],
-   "commit": "d912fec98698c4f72a5f408d5a3f80e95327817d",
-   "sha256": "0gby38fd5vvfbm3pl2cvp6jsfjqi17xgh1m8vv9z9s6zang4knsy"
+   "commit": "5ad0fd71634ac9dc6f97f653bc748f9fb58d80e4",
+   "sha256": "0fxk860dv8xqd5rfp4bw1pspm58c71mhac2xp2cxi1i2jrg272dn"
   },
   "stable": {
    "version": [
@@ -68928,15 +68971,15 @@
   "repo": "damon-kwok/modern-sh",
   "unstable": {
    "version": [
-    20200904,
-    1838
+    20210716,
+    148
    ],
    "deps": [
     "eval-in-repl",
     "hydra"
    ],
-   "commit": "05430398a5070245c4358e6a1b7e49a154da174e",
-   "sha256": "05k5ak09rw8zrn5k7zjc54ckv4jrp9fs3s3r3ja5cil45irgcmhv"
+   "commit": "8b11b67ac738cfd95babbcc7543467fd9190fc7e",
+   "sha256": "1y0y2fwyi1qi5k3nypdv51rfyf06f2q2c6ki5yz6bl82lhd0vb1l"
   }
  },
  {
@@ -68986,20 +69029,20 @@
   "repo": "protesilaos/modus-themes",
   "unstable": {
    "version": [
-    20210630,
-    1252
+    20210716,
+    431
    ],
-   "commit": "9b1d1594efa5d7389300b93c78f1b1dd389f9c27",
-   "sha256": "1m4wmcjhd7hck3rdg9anynlxzr9lnswkdzwypgwfwmabnvsyqvrm"
+   "commit": "9521dcec6c012d3776e3d05692720dd24922218b",
+   "sha256": "1m5ifpql8p0w4qk79n2n8wyrq1s7ys0yc8y0a09w1yyxjk6ay12k"
   },
   "stable": {
    "version": [
     1,
-    4,
+    5,
     0
    ],
-   "commit": "15c973f716378084a937e777f86182741fd9b697",
-   "sha256": "0p9yzj70kx3s740dl7k3vwwkr1g9zxsirwl83n1nvswc4csgv20j"
+   "commit": "b6fb7cda01a665f9369f2c6a29f3bf26c8cc8019",
+   "sha256": "1m5ifpql8p0w4qk79n2n8wyrq1s7ys0yc8y0a09w1yyxjk6ay12k"
   }
  },
  {
@@ -69692,8 +69735,8 @@
     20210306,
     1053
    ],
-   "commit": "171aebaf3a1fb76d1a460d12c7199bc6fbcec473",
-   "sha256": "06dw5blx8r6wzkwwwbi7p3fxs4flgsf2vlkz8vv9gar4cg9w7wy7"
+   "commit": "515b4f47c7f43816fce82cdf555107614e9e7edd",
+   "sha256": "1q39iy7g4f11nzhlsa1j8shrvhmg3ip2h43rxawhmypfwd95vzk1"
   },
   "stable": {
    "version": [
@@ -69819,8 +69862,8 @@
   "repo": "mpdel/mpdel",
   "unstable": {
    "version": [
-    20210107,
-    1303
+    20201026,
+    1123
    ],
    "deps": [
     "libmpdel",
@@ -70244,16 +70287,16 @@
   "repo": "lordpretzel/mu4e-views",
   "unstable": {
    "version": [
-    20210601,
-    1402
+    20210709,
+    150
    ],
    "deps": [
     "esxml",
     "ht",
     "xwidgets-reuse"
    ],
-   "commit": "c7f2398612218407e72b174f02b26cf2916eba22",
-   "sha256": "0irvzwfrrqzk8pcq1m3w9s21v2y0h6f5jrvsv88knz0ki1bdkbai"
+   "commit": "9fbe402dc5931ba9cafec581ac3e6d86e9a9f2da",
+   "sha256": "0a73izknp2nkzklkhf9wyxy38fnw4f1jyimdcnh14m1v5bcw2wal"
   },
   "stable": {
    "version": [
@@ -70419,8 +70462,8 @@
   "repo": "sagarjha/multi-run",
   "unstable": {
    "version": [
-    20210108,
-    336
+    20190507,
+    2349
    ],
    "deps": [
     "window-layout"
@@ -70477,8 +70520,8 @@
     "project",
     "vterm"
    ],
-   "commit": "8f385a0aa1ad7a279acc9276913955ef165e7ac7",
-   "sha256": "0anipknf7bfzygjkynq81ndspnfsqwx7l1i7chkfgfygqyq5486y"
+   "commit": "934397efd2e78a6b83d2b06ef4e4c281c0ae3c65",
+   "sha256": "0cz3zs9xd2zbyb9g9r4r893kl9nqk8i9l0zy66s500iy5522vcnh"
   }
  },
  {
@@ -70591,26 +70634,26 @@
   "repo": "zevlg/multitran.el",
   "unstable": {
    "version": [
-    20200201,
-    55
+    20210701,
+    2153
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "475e2a92795dbed1aa3b1c5eba2c6c779cac4508",
-   "sha256": "0nl4cm1nx7lmb2gd76jw8v0hqdfjjcwy0xskpi0brd8z6dp1m5n3"
+   "commit": "c34536186088f29d4e85631825e7c6d557a8d0fa",
+   "sha256": "0iqkgs3rrkhbj2mind4aa4qv7bf7vflnkdysd39b50jbwd7rv4fx"
   },
   "stable": {
    "version": [
     0,
     4,
-    10
+    11
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "258b1232af6680396b6c0912597ed52e583326f4",
-   "sha256": "08b9a0pb38swgvg2v97pm4g2zda0xagdgq42znwhkmhzjiskh2g1"
+   "commit": "c34536186088f29d4e85631825e7c6d557a8d0fa",
+   "sha256": "0iqkgs3rrkhbj2mind4aa4qv7bf7vflnkdysd39b50jbwd7rv4fx"
   }
  },
  {
@@ -71351,11 +71394,11 @@
   "repo": "rolandwalker/nav-flash",
   "unstable": {
    "version": [
-    20210510,
-    2035
+    20210711,
+    217
    ],
-   "commit": "d76314802273153c2c38156250d75f95ca352482",
-   "sha256": "006ghb4xrpp82wlshqmpsj0yh5vq8il6wl5v8f1cyy1vd21yl285"
+   "commit": "55786c9582410a5637b5635fea022aae564205cd",
+   "sha256": "0pj92h241k17hvlx7x0nx2hnjg6vyz65sa4ghyqhwa7mdn0c12pi"
   },
   "stable": {
    "version": [
@@ -72114,11 +72157,14 @@
   "repo": "NixOS/nix-mode",
   "unstable": {
    "version": [
-    20210629,
-    2024
+    20210706,
+    2217
    ],
-   "commit": "d27820b0408b3e9067c264e25c009bd5cd9dfcd1",
-   "sha256": "0hrhzm703k86a4wlx0hwnivklniziy2xbrs1q0mvijmsvks60f57"
+   "deps": [
+    "f"
+   ],
+   "commit": "3cca5b6527a69c4701394f424726282a1462ede3",
+   "sha256": "1cf88v8hbcn2kcyh4bv74yhpp7jf4r80zf3pzfw6cqvrgx19px2k"
   },
   "stable": {
    "version": [
@@ -72349,18 +72395,19 @@
   "repo": "dickmao/nnreddit",
   "unstable": {
    "version": [
-    20201130,
-    39
+    20210708,
+    43
    ],
    "deps": [
     "anaphora",
     "dash",
     "json-rpc",
     "request",
+    "s",
     "virtualenvwrapper"
    ],
-   "commit": "cf6bc58bff8bb8e2e3c4d681d2657b561573b2dc",
-   "sha256": "1cgw4vmffp08csf48gghfsm73h8yaai4k2kpgf213d6zqbxz9w5z"
+   "commit": "60bf11fdba8ff56b6b4b21f5f0c04953834d8a14",
+   "sha256": "1b6i4kwjb81s7x56g7xmkynryw8xzrpbbkfy03597ka0v0n8i717"
   }
  },
  {
@@ -72604,8 +72651,8 @@
   "repo": "esessoms/nofrils-theme",
   "unstable": {
    "version": [
-    20180620,
-    1248
+    20180227,
+    2153
    ],
    "commit": "98ad7bfaff1d85b33dc162645670285b067c6f92",
    "sha256": "0f8s7mhcs1ym4an8d4dabfvhin30xs2d0c5gv875hsgz8p3asgxs"
@@ -72711,11 +72758,11 @@
   "url": "https://git.notmuchmail.org/git/notmuch",
   "unstable": {
    "version": [
-    20210627,
-    1741
+    20210713,
+    1255
    ],
-   "commit": "1768b0c416ce1034a5726ff0037e5a605cb45ab6",
-   "sha256": "0cynllvnhiibxa9a06xg9qzybvsl802l7lcc2jwzhja05l2wrdps"
+   "commit": "d8a5fba4fe1efd7d0d652ead6d55371bc4078a9d",
+   "sha256": "138wxhawdp8nllpvmrgll4nvn5by3hsp0zy4gywf6nalr0d1wdld"
   },
   "stable": {
    "version": [
@@ -72895,8 +72942,8 @@
   "repo": "shaneikennedy/npm.el",
   "unstable": {
    "version": [
-    20210601,
-    1122
+    20200812,
+    1850
    ],
    "deps": [
     "jest",
@@ -73459,8 +73506,8 @@
    "deps": [
     "axiom-environment"
    ],
-   "commit": "ac8228a702290732ba12c5d13b38576a57afb0d6",
-   "sha256": "1nrlgrckvh2fiwis9bmr95h2bpxfkz1nknxdz61380f2caqwwhw7"
+   "commit": "7d72e6319b98b334f74b78f3d4151e92fb7dcbad",
+   "sha256": "1hwcndb1x3i51l0kvzk4mj6sil8h10mxmazic9zvwjhia9qz9hz3"
   }
  },
  {
@@ -74532,17 +74579,17 @@
     20210617,
     1726
    ],
-   "commit": "a54914c8f4bc5e2d57aac5ed15f1192c2f53abbc",
-   "sha256": "0625kwk1k8c4j92w4v5160zxcqxa2bf7kdmkii26m25fzw1az1d1"
+   "commit": "ba67af28ddca8718ef8816b2b0dc1e5b2f5e9591",
+   "sha256": "0dp4pkznz9yvqx9gxwbid1z2b8ajkr8i27zay9ghx69624hz3i4z"
   },
   "stable": {
    "version": [
     0,
-    18,
+    19,
     0
    ],
-   "commit": "3697f0f92854a681fd1156fe4f6fb97d060da1d8",
-   "sha256": "0n6363km8xr81pvyk453n6h2mb0256c5yxw3p1li4dn83f3lwxr1"
+   "commit": "ba67af28ddca8718ef8816b2b0dc1e5b2f5e9591",
+   "sha256": "0dp4pkznz9yvqx9gxwbid1z2b8ajkr8i27zay9ghx69624hz3i4z"
   }
  },
  {
@@ -75666,14 +75713,14 @@
   "repo": "awth13/org-appear",
   "unstable": {
    "version": [
-    20210627,
-    612
+    20210709,
+    949
    ],
    "deps": [
     "org"
    ],
-   "commit": "12056f697fce51958e7baf837d250341bd86194e",
-   "sha256": "0p3h2inqqf9ighr9sig1spbni9mq0k4iy8w10w5bpjd3xm37qx80"
+   "commit": "148aa124901ae598f69320e3dcada6325cdc2cf0",
+   "sha256": "0scj53w5kk62k294s7pfr15wqiiwvlprxhnmkrjmfx2gwyb1yh9i"
   }
  },
  {
@@ -75898,14 +75945,14 @@
   "repo": "Kungsgeten/org-brain",
   "unstable": {
    "version": [
-    20210515,
-    1814
+    20210706,
+    1519
    ],
    "deps": [
     "org"
    ],
-   "commit": "a9ca42cb8d1325a4e928716384a0bdb53ea2ad41",
-   "sha256": "0gp00wbp56g58fz6x4w70lhhwyy3ffxj8hhf5qfrz1wg264n23jy"
+   "commit": "46ca9f766322cff31279ecdf02251ff24a0e9431",
+   "sha256": "0bj08f5mg9v0xm2awbv1fxv98jj9scvqss6fmw0lzix6s3112z25"
   }
  },
  {
@@ -76454,8 +76501,8 @@
    "deps": [
     "web-server"
    ],
-   "commit": "b4f97edf4150870b84d7ee8508088c0d375eaa83",
-   "sha256": "124fq9k7qmjvn5hp9i2b4xmrm9z18zhbc9j1rv68wpdqf0kqxkcd"
+   "commit": "6e4d328afac1195fa7f831c6d41ae966b5d75a16",
+   "sha256": "0igx916wk9xc74h6zm8dz3h5007izrp2jdm4pdm2r4bcp1ybnk05"
   }
  },
  {
@@ -76587,26 +76634,20 @@
   "repo": "io12/org-fragtog",
   "unstable": {
    "version": [
-    20210514,
-    1608
-   ],
-   "deps": [
-    "org"
+    20210713,
+    551
    ],
-   "commit": "bed49744ed27ff205539a14fd51e2977852c49e5",
-   "sha256": "0cw8903nw0mrn9kppwlypsb6h9m54zrb6y969yj0gnkza6gqy36c"
+   "commit": "479e0a1c3610dfe918d89a5f5a92c8aec37f131d",
+   "sha256": "02g4a5lsmalc5mcybimx7ils43w3ac6269n9kzcnw59bj0i5kkcj"
   },
   "stable": {
    "version": [
     0,
     3,
-    2
-   ],
-   "deps": [
-    "org"
+    3
    ],
-   "commit": "bed49744ed27ff205539a14fd51e2977852c49e5",
-   "sha256": "0cw8903nw0mrn9kppwlypsb6h9m54zrb6y969yj0gnkza6gqy36c"
+   "commit": "479e0a1c3610dfe918d89a5f5a92c8aec37f131d",
+   "sha256": "02g4a5lsmalc5mcybimx7ils43w3ac6269n9kzcnw59bj0i5kkcj"
   }
  },
  {
@@ -76786,15 +76827,15 @@
   "repo": "marcIhm/org-id-cleanup",
   "unstable": {
    "version": [
-    20210326,
-    1711
+    20210714,
+    1604
    ],
    "deps": [
     "dash",
     "org"
    ],
-   "commit": "2cb87624238281b438cda67ed375c56403524489",
-   "sha256": "1xmbrrp1zyvij18v3rqmini6w9i6v7dl4fp103ph6wznav8x0jbl"
+   "commit": "416c95fc9ad8551f1d9544f2504c866daac5477e",
+   "sha256": "189zzfi5a1qsjm8ayq5v58s5iagibv2vk6rb6zda4p0hrmnfz2ky"
   },
   "stable": {
    "version": [
@@ -76842,30 +76883,30 @@
   "repo": "marcIhm/org-index",
   "unstable": {
    "version": [
-    20210630,
-    1503
+    20210709,
+    1801
    ],
    "deps": [
     "dash",
     "org",
     "s"
    ],
-   "commit": "ddb1b95ac139676e4aa8a0b787e57feba34cc7cb",
-   "sha256": "0l563j9m8zcmsn8vqv3qchk4yqrfbigk5k4iqcw8p7cbix57sjah"
+   "commit": "4abf3a90503d1837782a35759066ffa7ec7dea55",
+   "sha256": "0409n80whcpkgcmhqrywgcj5d6fhqv67dyw4spg54hv9dn1p47zd"
   },
   "stable": {
    "version": [
     7,
-    2,
-    1
+    3,
+    0
    ],
    "deps": [
     "dash",
     "org",
     "s"
    ],
-   "commit": "1ee39e4f8616199ad8e5cb6b2d6b410e75857ecd",
-   "sha256": "06mf8s68mw6fcdpvdddcvy2x8z6zyisfvgh4sdrpz2z5j03v7qd7"
+   "commit": "4abf3a90503d1837782a35759066ffa7ec7dea55",
+   "sha256": "0409n80whcpkgcmhqrywgcj5d6fhqv67dyw4spg54hv9dn1p47zd"
   }
  },
  {
@@ -76959,14 +77000,14 @@
   "repo": "bastibe/org-journal",
   "unstable": {
    "version": [
-    20210326,
-    1207
+    20210714,
+    911
    ],
    "deps": [
     "org"
    ],
-   "commit": "5f253a880e1919ef4b98f0d91f271a8b522eaae5",
-   "sha256": "1cirbb5x29qnf59qkcfsjw467xx02vl4f17iqd4qqxwaarwkyq30"
+   "commit": "6c3a2fdb6c85253a32992a29edb976407bad4d77",
+   "sha256": "0rxrsqj3a8qchjhm9kb37zd9h1h1lcqfg2gwsgab74rfyfgf9ryd"
   },
   "stable": {
    "version": [
@@ -77078,14 +77119,14 @@
   "repo": "stardiviner/org-link-beautify",
   "unstable": {
    "version": [
-    20210628,
-    1124
+    20210704,
+    2214
    ],
    "deps": [
     "all-the-icons"
    ],
-   "commit": "f78924c06c9f3902bab8e390d91402516d2bb502",
-   "sha256": "1v847kpc3fh4sxi1rw8pp6xlb89r6z224831xkd82gys74ya0724"
+   "commit": "40d40c1e6187ec9c13292beb3f7f319f189264d8",
+   "sha256": "0253i9hvq9yki97jmdrvbv82xbgdrq76l73frq6xbbzzhw6615m6"
   }
  },
  {
@@ -77156,14 +77197,14 @@
   "repo": "dfeich/org-listcruncher",
   "unstable": {
    "version": [
-    20210503,
-    802
+    20210706,
+    1741
    ],
    "deps": [
     "seq"
    ],
-   "commit": "50c06445a837c6677da035f72dbe0f973d9e10a7",
-   "sha256": "1nw5wd781a5nh5csvsr6ycjpji66k8vkvw8z1sfa0p8xsbln9rk9"
+   "commit": "075e0e6d36eb50406a608bc8a2f0dd359ec63938",
+   "sha256": "133smvw9iaxg0p3y5wl0rc4fwwgbxgw6hxngpmar8qf4grwy4w27"
   }
  },
  {
@@ -77686,16 +77727,16 @@
   "repo": "org-pivotal/org-pivotal",
   "unstable": {
    "version": [
-    20210701,
-    342
+    20210705,
+    408
    ],
    "deps": [
     "a",
     "dash",
     "request"
    ],
-   "commit": "f55b9773b2f4a502e636688bc1caa21ee0396abe",
-   "sha256": "1ipxr8s384pljlz9rzpdhmrsa7q7jzk27dblrrapgbgi52h3n5np"
+   "commit": "6403cefb8440567fc593a8d267536138cd6165e2",
+   "sha256": "0a95gnvgfvj3f9xy5hl4d7367j8sfysf5ghnz6hxiz6ilhngfnz7"
   }
  },
  {
@@ -77911,8 +77952,8 @@
   "repo": "alphapapa/org-ql",
   "unstable": {
    "version": [
-    20210624,
-    1314
+    20210713,
+    233
    ],
    "deps": [
     "dash",
@@ -77926,8 +77967,8 @@
     "transient",
     "ts"
    ],
-   "commit": "8342656b2d9af4bb6af9daa0a8b037d3693bd940",
-   "sha256": "0alrs2dsd5k4xjrs2zs7hcr5fbfrr3rdq705s04943ic4kzvhrc9"
+   "commit": "94f9e6f3031b32cf5e2149beca7074807235dcb0",
+   "sha256": "022arhyyn8hbb1hzjkv4gl3dr8lz1gv0x4h70x0970bsbqlsa27w"
   },
   "stable": {
    "version": [
@@ -78846,8 +78887,8 @@
   "repo": "arbox/org-sync",
   "unstable": {
    "version": [
-    20181204,
-    23
+    20181203,
+    2242
    ],
    "deps": [
     "cl-lib",
@@ -79693,8 +79734,8 @@
   "repo": "jcs-elpa/organize-imports-java",
   "unstable": {
    "version": [
-    20210121,
-    606
+    20210715,
+    1155
    ],
    "deps": [
     "dash",
@@ -79702,8 +79743,8 @@
     "ht",
     "s"
    ],
-   "commit": "50c11af264505b026aed77d6b67a132f7d4f7e6b",
-   "sha256": "0q5qz7bm8k17v9mzixb4fbdcn9czcskkrrlnk38sgj390d2pyc7c"
+   "commit": "cd931a01adb23dd473ca1abd22f45ac0a5661cac",
+   "sha256": "0cmr4dq90kvmscsm2jvvpdijbmqh0skra79cybcj4pdzafx79c8c"
   },
   "stable": {
    "version": [
@@ -79903,8 +79944,8 @@
     20201129,
     604
    ],
-   "commit": "649fd0cdcb831dcd840c66ee324005165ce970ca",
-   "sha256": "1iarfqdxryj5p43hsch2jgqslrpyfkza9x9fpshmbpwjkbf1548x"
+   "commit": "5bd7ee9d9e23ce37fd004054071026ff51445654",
+   "sha256": "1qblj2m7bhykm58i63r5ywvpz6hr0vyzx7fa0s6rwlkjzbdn77g6"
   },
   "stable": {
    "version": [
@@ -80174,14 +80215,14 @@
   "repo": "xuchunyang/osx-dictionary.el",
   "unstable": {
    "version": [
-    20210309,
-    115
+    20210703,
+    1152
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "4d4cc19fdd4ac8408bd5acc7694e7a7096b1e3b3",
-   "sha256": "1zmng3qx7i4wkz1vrxw0vw3kyirnb8a0pn46zq6zhzj33ybn9582"
+   "commit": "1a4479d9f44ef1e6e5f7643c172c32f6fe6cce21",
+   "sha256": "1714bh7gx1limy8zs1sbxyr9an7gj7viq8sf4cr6wnxz44v237fb"
   },
   "stable": {
    "version": [
@@ -80648,6 +80689,24 @@
   }
  },
  {
+  "ename": "ox-750words",
+  "commit": "d05562f905715abfc139c224fa2fbbb796208318",
+  "sha256": "1cnzzfxvmg7d24lzp5n8i20c4yh2z1vpqhpciqy13qx9c3lqd4ri",
+  "fetcher": "github",
+  "repo": "zzamboni/750words-client",
+  "unstable": {
+   "version": [
+    20210701,
+    1950
+   ],
+   "deps": [
+    "750words"
+   ],
+   "commit": "0fed7621c04debad64ea6455455494d4e6eb03fa",
+   "sha256": "1qglbfdc6526aqsba93ngw1a6hp19lqx1wlxzzy9yvggbb02mii2"
+  }
+ },
+ {
   "ename": "ox-asciidoc",
   "commit": "3b268064f09ae5c3d15064b7d197c7af767fb278",
   "sha256": "07b549dqyh1gk226d7zbls1mw6q4mas7kbfwkansmyykax0r2zyr",
@@ -81214,14 +81273,14 @@
   "repo": "yjwen/org-reveal",
   "unstable": {
    "version": [
-    20210515,
-    1007
+    20210705,
+    2321
    ],
    "deps": [
     "org"
    ],
-   "commit": "826b01beb434d38e415d3001908baf5994c6d669",
-   "sha256": "0q8ygsd2r2yg1k5z9j7bbq2hl43hjjdpws0k4rsx19l786ssg7yq"
+   "commit": "014561540bdc5dc6fe68671cadcc3793a65f6b54",
+   "sha256": "1hha8f9vb6pmszpz0xx4lj2imm2nh81mgrvsblvbm92k4qvmk6z4"
   }
  },
  {
@@ -81472,6 +81531,39 @@
   }
  },
  {
+  "ename": "ox-yaow",
+  "commit": "cf9aa32de6b3daaa1f209fad6412cf057c43e4fd",
+  "sha256": "16ajjq2if5jlc58a19nh8q9vgnp1d9zsqgzadkphc8g7g0ca3yaf",
+  "fetcher": "github",
+  "repo": "LaurenceWarne/ox-yaow.el",
+  "unstable": {
+   "version": [
+    20210706,
+    1059
+   ],
+   "deps": [
+    "dash",
+    "f",
+    "s"
+   ],
+   "commit": "c7eca0130c35b3a8adcade637a35d1474368f4e9",
+   "sha256": "1k8vr1z9h6qywl037fh5p7ji0k78zm18r4qg996jghdk9sfxasfx"
+  },
+  "stable": {
+   "version": [
+    1,
+    0
+   ],
+   "deps": [
+    "dash",
+    "f",
+    "s"
+   ],
+   "commit": "83f9e903f2853e9dc6367fa0a49015428d061dea",
+   "sha256": "1ab8n6k5pwsy54mm9fnfv64007fi884vjfxhbl5yvvg16a2pm7qa"
+  }
+ },
+ {
   "ename": "ox-zenn",
   "commit": "30a54915cf91b47230ddf66ad2e5e17c36fb5e7d",
   "sha256": "1lsvq5av234dbm88bw4jlj1vxmm3jd8hnzf8vv7q675qcxgpnz5j",
@@ -81618,14 +81710,14 @@
   "repo": "melpa/package-build",
   "unstable": {
    "version": [
-    20210616,
-    2110
+    20210707,
+    1424
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "95e021756ee5c5255a63cce8351178e298c68363",
-   "sha256": "05qm6a0dy2iszrlwkiw5x2v0h5whk7d4qn7qjlf5qpns5fl0fwg2"
+   "commit": "eea82edcbcc95e9cd35e33243d77adeb88ec7edc",
+   "sha256": "018pihaz1msmizhfjqwsp4d1aa9idiri4nrf6ifkpp6v6j8k7mva"
   },
   "stable": {
    "version": [
@@ -82442,8 +82534,8 @@
    "deps": [
     "s"
    ],
-   "commit": "f910af3b1d98b88a0f41794bbe7fd57411e9b909",
-   "sha256": "02miw5sf4bbwmz58ya98ijjhqx92vamyzw8c5v2k6id3pxaypng4"
+   "commit": "0c4c92283baa951469e75f632fdd08f0cb9fe6af",
+   "sha256": "1g34wkb3ca6wgjkgmzbhaak95bpdh1k49p5m00ajhg1rqicxwdzw"
   },
   "stable": {
    "version": [
@@ -83640,14 +83732,14 @@
   "repo": "nex3/perspective-el",
   "unstable": {
    "version": [
-    20210610,
-    548
+    20210709,
+    2353
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "68b13cef8435cae581850415cdda17e245dd0eae",
-   "sha256": "1iwqg1y47lp54qn9cjr3w9pca294mn92qlil3a4lr8xi57jbi3iz"
+   "commit": "b55aec612db791a1720232df0e2df0d3597d850b",
+   "sha256": "01bh8cs54mnikzrbhxc03588mrx8wsn2vqgb12j47g4lmg93759w"
   },
   "stable": {
    "version": [
@@ -84099,11 +84191,11 @@
   "repo": "emacs-php/php-mode",
   "unstable": {
    "version": [
-    20210519,
-    1728
+    20210714,
+    1700
    ],
-   "commit": "cbf27232649c39e3749eefd23f962750bd249a49",
-   "sha256": "0r20y2hrgy1gmnx6izzvmvjh4axwb4x4pgcxn4bjmpzypand5xfp"
+   "commit": "4b0e9f84d063c476b211ec89b2a17bddac138911",
+   "sha256": "0jw2c8fmj0m39xms301diid7l1wkhcpxh6mw2mrdla8as31vgygv"
   },
   "stable": {
    "version": [
@@ -84196,15 +84288,15 @@
   "repo": "mallt/php-scratch",
   "unstable": {
    "version": [
-    20201108,
-    750
+    20210706,
+    459
    ],
    "deps": [
     "php-mode",
     "s"
    ],
-   "commit": "a9db3986144fff424c93228a613f54734ef993a8",
-   "sha256": "01fkpcxmv98wklzf8vbs6l3kljdmwzclv5m73czzbgk5s3rwc8vb"
+   "commit": "b6bfd279da8a8ac7fc30459485956f3fd5d02573",
+   "sha256": "084ms50pw90jaqyll0rd3if1kb0i8hfrdrg72vss44cg83rq58vj"
   }
  },
  {
@@ -84249,26 +84341,26 @@
   "repo": "emacs-php/phpstan.el",
   "unstable": {
    "version": [
-    20210617,
-    2234
+    20210714,
+    1805
    ],
    "deps": [
     "php-mode"
    ],
-   "commit": "56617fa87c9bec037d4e4a0a143b7d70a989c082",
-   "sha256": "02k4pmmxq3h8mi0dsjh0s0002gjkpg6g9pxsnxgalwb6rakfirbh"
+   "commit": "0869b152f82a76138daa53e953285936b9d558bd",
+   "sha256": "1xm5i658pf1lb4bfpy6zy5msanhia8r9j7v7rx72amkksja3hwnj"
   },
   "stable": {
    "version": [
     0,
-    5,
+    6,
     0
    ],
    "deps": [
     "php-mode"
    ],
-   "commit": "bf9e82a63f2ccb12af02c9e79a83e7989eeb7cb1",
-   "sha256": "15kv5xv6lcfgf048wr2zsnpvrplbxypy3wq56zvrzbq18hwprqg1"
+   "commit": "0869b152f82a76138daa53e953285936b9d558bd",
+   "sha256": "1xm5i658pf1lb4bfpy6zy5msanhia8r9j7v7rx72amkksja3hwnj"
   }
  },
  {
@@ -86711,14 +86803,14 @@
   "unstable": {
    "version": [
     20210606,
-    1152
+    1150
    ],
    "deps": [
     "iter2",
     "nvm"
    ],
-   "commit": "e38d21a885e234af9ea6b03f499c487175570571",
-   "sha256": "1c7n43xi1sjprqn0xhd1hfdr39ipqiw1r8w76qbm3xx04h9bccy8"
+   "commit": "85c9349de2730b71c5796e342d67efee34faa9ed",
+   "sha256": "06gcqnd6wwcxqij4gx06y16kcqsh5znhs7hi5kwhzrbvqvqvrki8"
   },
   "stable": {
    "version": [
@@ -87122,11 +87214,11 @@
   "repo": "jcs-elpa/project-abbrev",
   "unstable": {
    "version": [
-    20200724,
-    901
+    20210715,
+    1213
    ],
-   "commit": "7b5749eae33eda576da3293dc386794c1248bb48",
-   "sha256": "0fvfp5hy93ggqspbnishzp0x0j1652ayismb8bpzkf6vra8vjrdw"
+   "commit": "e8c22beb14aff6d5661337feb6cebd7af3a3d454",
+   "sha256": "09zp7896ndmksk7mywdwhrh4bq951vj5lqjls7ncihifwlgcxa7w"
   },
   "stable": {
    "version": [
@@ -87810,8 +87902,8 @@
     20200619,
     1742
    ],
-   "commit": "4b77b733699f9c39b517a124da737c018b1164e2",
-   "sha256": "1mfvmpwxayrzp07vl72djv162vlf0xg29mxh030lqf7jc9h11gxq"
+   "commit": "b90ec9c242b303e90811deebaa2e3e684b63de91",
+   "sha256": "11n9ybjxfc8x58fwp2f67nc6mg4qkj8m9c7ldjlp77m01k0qrij1"
   },
   "stable": {
    "version": [
@@ -88657,6 +88749,40 @@
   }
  },
  {
+  "ename": "pygn-mode",
+  "commit": "a6a83906ba07f4a0cd906e8345de036a7cdcc6e5",
+  "sha256": "0w7rrq02rjkm4bbk08fz0r5yaxzbgxrgglhbg2qz7arzvgq4l715",
+  "fetcher": "github",
+  "repo": "dwcoates/pygn-mode",
+  "unstable": {
+   "version": [
+    20210714,
+    1304
+   ],
+   "deps": [
+    "ivy",
+    "nav-flash",
+    "uci-mode"
+   ],
+   "commit": "321c14c195cd2f8a31b9bf99dd318a552fbbcd6d",
+   "sha256": "1sz8riry4c4lf5n0nsd3msw5kch3ifwg5psrf4y866b0wlya7yk2"
+  },
+  "stable": {
+   "version": [
+    0,
+    5,
+    1
+   ],
+   "deps": [
+    "ivy",
+    "nav-flash",
+    "uci-mode"
+   ],
+   "commit": "cd06faecb40774fafa69d91085206810d686367a",
+   "sha256": "15hs87ly3gr8qcdfpsyyf8wadyhhij72kkj33hdqbbq9b74yr6qq"
+  }
+ },
+ {
   "ename": "pyim",
   "commit": "151a0af91a58e27f724854d85d5dd9668229fe8d",
   "sha256": "1ly4xhfr3irlrwvv20j3kyz98g7barridi9n8jppc0brh2dlv98j",
@@ -88664,15 +88790,15 @@
   "repo": "tumashu/pyim",
   "unstable": {
    "version": [
-    20210623,
-    415
+    20210714,
+    231
    ],
    "deps": [
     "async",
     "xr"
    ],
-   "commit": "70d488f9233a578f0c7f8906aa83a1a690ec10fa",
-   "sha256": "14zczmikgsxqf3klx17n1imgpqhj3gjmz4hs95lkxs3a50qbqh7z"
+   "commit": "ebd3175c4c5e7845c52dddf71a806826a80df89d",
+   "sha256": "0p52a4bp4gmgwfpai8cwq3frp0fyhp9ma5a0idxdiamr8xjiwjz0"
   },
   "stable": {
    "version": [
@@ -88834,8 +88960,8 @@
     20210411,
     1931
    ],
-   "commit": "6f066733e23a61d83580cd1898e6b8afab8fafea",
-   "sha256": "1m7365k7a624mp33v5x23knkcahpa9gvb3sbr8idqlk8n8k3f6mk"
+   "commit": "6c29598ce446dc441a8095b83c82390249df3693",
+   "sha256": "0l5dg9snp4p6x3nlyl0civ50kdl1q6zr0hmx9hcp2c72hm22dqi5"
   },
   "stable": {
    "version": [
@@ -89759,15 +89885,15 @@
   "repo": "greghendershott/racket-mode",
   "unstable": {
    "version": [
-    20210629,
-    2000
+    20210715,
+    2107
    ],
    "deps": [
     "faceup",
     "pos-tip"
    ],
-   "commit": "4f8eafe2a016e2e78872e4006939ee82397e57a0",
-   "sha256": "0fa9kipg1ihfr16ljsfgxd6z8a5fj31npfxhqv7q9ysi4nq479c0"
+   "commit": "c7aca6f1b4c34a48314bc7812c2d7edc849e3dba",
+   "sha256": "1pcxicz7kg6s9j9gsdb8pba3j3n5522gclc5qq95ch2q3i5phg91"
   }
  },
  {
@@ -89832,11 +89958,11 @@
   "repo": "istib/rainbow-blocks",
   "unstable": {
    "version": [
-    20210412,
-    1937
+    20210715,
+    1518
    ],
-   "commit": "ae5c11cd3dc64039c5e65c9f1804aceba5b3b209",
-   "sha256": "17ar9k2352h6cnvcknq945lna3illln87r1vf4ll1aa798azizpb"
+   "commit": "83c4d6e77a1e25d3d2d124a4e90d5b084f3e15a5",
+   "sha256": "1v583d6mh69cz1adl295pd7axlqk3m1qs94558n84d1sh7syxcdg"
   },
   "stable": {
    "version": [
@@ -90716,7 +90842,7 @@
   "unstable": {
    "version": [
     20210513,
-    2237
+    1453
    ],
    "deps": [
     "load-relative",
@@ -92013,8 +92139,8 @@
     "f",
     "s"
    ],
-   "commit": "f62be2d11c8a9182cf84f0efe7ed054cc304262d",
-   "sha256": "0ksw9s96mmb1qlypz9mc9br9139ha5jmahi42x4i8qppcn6zs5ja"
+   "commit": "eaf177324482d0eadf0e97a892a156c2d503f245",
+   "sha256": "18krcfbjvm9g67846dn3q7a2y4z3figirk3pvdsdb0fv425j11zr"
   },
   "stable": {
    "version": [
@@ -93400,8 +93526,8 @@
     "spinner",
     "xterm-color"
    ],
-   "commit": "bbf129cd128105de51b6c242b2551094b8d8987d",
-   "sha256": "09dnlvi8kf683n6q3yp4gy9d4idiyg4x6rcij8d90cvygh8i30wd"
+   "commit": "6ca73bb3cce4d1db3c4f91efb83b63227eb712d1",
+   "sha256": "12arrvvp3idq11a4ham77zxqp2d1026qz89ywgd3i9k1cbj852wi"
   }
  },
  {
@@ -93708,8 +93834,8 @@
   "repo": "djcb/sauron",
   "unstable": {
    "version": [
-    20201015,
-    836
+    20201011,
+    905
    ],
    "commit": "5daade4836da5b1b2ab26d84128d6c38328a5d52",
    "sha256": "0fkq8knq023zm538ls4zxghlkn9zf4rfccpmmgfcpad6bdm00cpc"
@@ -93871,8 +93997,8 @@
     20200830,
     301
    ],
-   "commit": "32c5c18e1cac173b79fc37b85dca51f4e8d57e45",
-   "sha256": "1vzg370393yfw1msgdyq2bwv3rc765z30vsrxssm0zifjqimkab6"
+   "commit": "cff035686cc9505d114115646e4d98edac307512",
+   "sha256": "0w5bzlsbs5zdk3h8ij019yj7861ggg0a4wcqwq7dm7rwf1bshsl2"
   }
  },
  {
@@ -94371,8 +94497,8 @@
   "repo": "t-e-r-m/sculpture-themes",
   "unstable": {
    "version": [
-    20210530,
-    624
+    20210524,
+    354
    ],
    "commit": "1da2b3501f3732b4a58d28b502e356226a43a96f",
    "sha256": "198rjkyv876h7mbs73h8dq4lx5xhl66p7xrpvb23v0vk4vw0q5vz"
@@ -94452,8 +94578,8 @@
     "dash",
     "f"
    ],
-   "commit": "447b6f0c3b4429e70a474a325151913100bc6417",
-   "sha256": "1w0l0r4n0w99523klia1pfyh0y3jvskhk2wrwzdx09mad0bdfj1b"
+   "commit": "46eefd5b3f4a6f24b2f88c8aa18cce0abb32edb1",
+   "sha256": "0fi04v84gp74xr84sh7blbc5s93xxb6apsrdh8zlc9dvwkkh5gza"
   },
   "stable": {
    "version": [
@@ -94690,11 +94816,11 @@
   "repo": "raxod502/selectrum",
   "unstable": {
    "version": [
-    20210530,
-    245
+    20210707,
+    1827
    ],
-   "commit": "a19bbe94de492bf504399c093cfc5695eb630fa8",
-   "sha256": "0jhc0qn3q7npsixj1b1cmplxdvpy30745h32y0ybyydahqc3yc30"
+   "commit": "48ea51aa5b6959ea2a134e36cd21f727047b0677",
+   "sha256": "0lini8hdih1qakf3hg981diw9gmzxjkd6rnjq3lddyqg6dvj9hhw"
   },
   "stable": {
    "version": [
@@ -95732,11 +95858,11 @@
   "repo": "emacs-w3m/emacs-w3m",
   "unstable": {
    "version": [
-    20210621,
-    534
+    20210714,
+    111
    ],
-   "commit": "70b985b1d00c8703acb1ebf16875616903470f45",
-   "sha256": "0djvaxbxjic4m8nqmj1gs0h77gf0fik00ia7ayfha3fc7fabiif9"
+   "commit": "ccdd3681b9e7d8b6a758f2aa61a0ae8eab21240b",
+   "sha256": "1ynl1kwnhp5xqvmi8p37lprshk96xi8q78rsjmd9f8pkb8ayqbf3"
   }
  },
  {
@@ -95808,11 +95934,11 @@
   "repo": "jcs-elpa/show-eol",
   "unstable": {
    "version": [
-    20200921,
-    1201
+    20210715,
+    1227
    ],
-   "commit": "02fdb5b2832889afd6cad5c517da9b1e4611c766",
-   "sha256": "0yy97yzc8v1h0vjpm6zbrdwy8sd931mscrbrq1svvv2y227s4ffl"
+   "commit": "28dc1d6faf21efbc49436b4458821a2d46e38ffe",
+   "sha256": "002vyik2nyqcvrf6d0qfbxc9bs95bc74crmyn9havlr50bw52wlc"
   },
   "stable": {
    "version": [
@@ -96161,11 +96287,11 @@
   "repo": "rnkn/side-notes",
   "unstable": {
    "version": [
-    20210502,
-    935
+    20210709,
+    1403
    ],
-   "commit": "ca73cec33880322c5bbab407825d502d87f4cf0f",
-   "sha256": "1qnrk8kib4rndgbljqxq7cmskgxwcc9d8wdbdr3mgkgbg08xv5gq"
+   "commit": "41fe8544661a772f764a0924e04080f258053955",
+   "sha256": "14xm2a465mgdbp47hwb1dpxw4w5vl0rdlc4m5bxd5z1l4s06nc32"
   },
   "stable": {
    "version": [
@@ -96736,8 +96862,8 @@
   "repo": "yuya373/emacs-slack",
   "unstable": {
    "version": [
-    20200830,
-    1021
+    20210712,
+    628
    ],
    "deps": [
     "alert",
@@ -96747,8 +96873,8 @@
     "request",
     "websocket"
    ],
-   "commit": "1f6a40faec0d8d9c9de51c444508d05a3e995ccd",
-   "sha256": "19lan9nd8qfw2ws7mx814vrin04c892yn5c8g3nad7lpnzszgr1r"
+   "commit": "ae1d742a0193fba38698931055708a28cc382bcf",
+   "sha256": "0292z0pzvwg85pr1g3xsglp9rkna6k7b0frbm5r43yr91sr0vv3f"
   }
  },
  {
@@ -96809,15 +96935,15 @@
   "repo": "slime/slime",
   "unstable": {
    "version": [
-    20210614,
-    1523
+    20210709,
+    2051
    ],
    "deps": [
     "cl-lib",
     "macrostep"
    ],
-   "commit": "98a656d96b177edce57b552a2fa9d139cdce8c9a",
-   "sha256": "133p6yj5vdw6i4j2v8ac2g9ayrwxlvvimh2qs5fmxi8vklvn7h3a"
+   "commit": "68f5623f13c9a0d3d47ce70cf56928e00483d9d6",
+   "sha256": "1hybxng81ra3zqj07xp5vpzd5mx15sfvqa4wydg1kxi9ics6m9i6"
   },
   "stable": {
    "version": [
@@ -97052,8 +97178,8 @@
     20210629,
     2009
    ],
-   "commit": "954e5dad72fb5712dfa968222e2b46dfdf9a476c",
-   "sha256": "06m2vwxga1rys98z97abajqq89k2dlfrrab21hhgqwc0zmdmb9fv"
+   "commit": "41f4d650485217aa1f2afa7c159418f103a09231",
+   "sha256": "0cq1a19d1przjizp7d4vjl8khp09j6jcwavhrpja1saqhwavhv7c"
   },
   "stable": {
    "version": [
@@ -98069,15 +98195,15 @@
   "repo": "SpringHan/sniem",
   "unstable": {
    "version": [
-    20210605,
-    1242
+    20210708,
+    1128
    ],
    "deps": [
     "dash",
     "s"
    ],
-   "commit": "54005eb19dfab02f38074e696fa8d247b59a2ad8",
-   "sha256": "18ynqkf98rjyzl48l5399g49x9gdmsj0wyc4jp7mly7xrv51zblx"
+   "commit": "1b3071974b55c7f2046bd20a052b8fc795d2c940",
+   "sha256": "16k64k4mzjaiyq264crcpnmccj7aza2zlr9jg6l7ggjssly3fw5c"
   }
  },
  {
@@ -98253,26 +98379,26 @@
   "repo": "hlissner/emacs-solaire-mode",
   "unstable": {
    "version": [
-    20210601,
-    1921
+    20210711,
+    2145
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "2298fd806d28daf511eb7836b23775e7df1f65e2",
-   "sha256": "1jfl0nhnv3ljagdlpsi2d7mhcrm8rww8crnhzad5zimzwc48nlcq"
+   "commit": "030964f7c62696c8cfb29125df6e7649d2bf9aeb",
+   "sha256": "01c1lkr21y0cd6gixzd38mql89k70jn049jr0xhazgz16cnw1g7j"
   },
   "stable": {
    "version": [
     2,
     0,
-    0
+    2
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "59efa9c52ec407161f741e67071813c3c1901680",
-   "sha256": "0aigavrqfi2dy4q5vrfs48n5k7839gqnafq7mp14cmcbrzcwadrd"
+   "commit": "030964f7c62696c8cfb29125df6e7649d2bf9aeb",
+   "sha256": "01c1lkr21y0cd6gixzd38mql89k70jn049jr0xhazgz16cnw1g7j"
   }
  },
  {
@@ -98283,14 +98409,14 @@
   "repo": "bbatsov/solarized-emacs",
   "unstable": {
    "version": [
-    20210519,
-    925
+    20210112,
+    1050
    ],
    "deps": [
     "dash"
    ],
-   "commit": "e626b1889d8c945806e959e451f08633d948f8a7",
-   "sha256": "1nz04q681slnzcqzc6lcckmv72h017616l1j7q4aalf2dqkn529z"
+   "commit": "8271679a627148c96ad894f960cec9b1abfb1e6c",
+   "sha256": "1xrya65z54si9cf64whllq7vhw5dnafal9q2m4jf62jvxmbjdfsi"
   },
   "stable": {
    "version": [
@@ -98847,11 +98973,11 @@
   "repo": "nashamri/spacemacs-theme",
   "unstable": {
    "version": [
-    20210618,
-    2001
+    20210706,
+    1210
    ],
-   "commit": "f98150e8e254e6bf94dee2de3e8baaf02e2aae80",
-   "sha256": "02jm3v3bnbc45rd4fl9kkln0pn49ix2igm254yz33cg0ykgkj2nf"
+   "commit": "dfe06629f8211ccd9933fc0d457019401ecbe594",
+   "sha256": "1apa6bp3lxs6jia37k079yd3qx79wclzh02bf66xpsqkwc2xg5fr"
   }
  },
  {
@@ -99009,11 +99135,11 @@
   "repo": "brailcom/speechd-el",
   "unstable": {
    "version": [
-    20210619,
-    1753
+    20210702,
+    1954
    ],
-   "commit": "bd21335668ac7ea4d8c992490b4a710053434e74",
-   "sha256": "1jlb1mfigcqxvm1aibf803xypmbj3x1145nmf2q0v2aaipd6s912"
+   "commit": "7f3d3d3545078df2f4a37094c618993145c731d2",
+   "sha256": "126chadfvsfpwa196811s2i8zr4cs1g413ssy52apn2fpzrb3vmp"
   }
  },
  {
@@ -99803,11 +99929,11 @@
   "repo": "jhgorrell/ssh-config-mode-el",
   "unstable": {
    "version": [
-    20210517,
-    1925
+    20210714,
+    951
    ],
-   "commit": "ff9a15ec150baef21d7d8c6f79c5602e56825391",
-   "sha256": "1nvsxj616lgciysmvzpwfpq7dv0alkv2ma4gi9b4j3vjwm0rzbry"
+   "commit": "1c8f8779f20479e55f9d3d1151f1f68c1dff56f2",
+   "sha256": "0vcs6bz3qzw06c7bs253m9q2l43k8nppzdv7hqbybcdh4fakp8xw"
   }
  },
  {
@@ -100114,8 +100240,8 @@
     20200606,
     1308
    ],
-   "commit": "097c527a40797e1b3f3a954cfc5e04987fbb61a9",
-   "sha256": "0yidmzdkrw66hga7nna337jk8rkml6plhr1mzfsyfazpb9da0zsj"
+   "commit": "ba12f620074b5a6e6615e2963bdc79fbba6060eb",
+   "sha256": "1gjmzm8lx8fas9phkbvy3rz9dyzqgdjs2ddd3l9biqqggwka0pa0"
   },
   "stable": {
    "version": [
@@ -100279,20 +100405,20 @@
   "repo": "akicho8/string-inflection",
   "unstable": {
    "version": [
-    20200927,
-    747
+    20210712,
+    755
    ],
-   "commit": "c4a519be102cb99dd86be3ee8c387f008d097635",
-   "sha256": "0f3nkfdpngax4zfw75jca2wywwh31ha6ywddh4125lbxi3y6m7s9"
+   "commit": "bf60b0c943cc0934aa188ada7c1c16053517df07",
+   "sha256": "077qxldhya397ka96786w0876bwa77x0il3zwixa9pcbqmqsg8qd"
   },
   "stable": {
    "version": [
     1,
     0,
-    12
+    13
    ],
-   "commit": "c4a519be102cb99dd86be3ee8c387f008d097635",
-   "sha256": "0f3nkfdpngax4zfw75jca2wywwh31ha6ywddh4125lbxi3y6m7s9"
+   "commit": "96a9baf4936df43b9f46804629384b79238691c3",
+   "sha256": "1v8h05m7iwxqp7lypdngib2620z0x23zc715vxqpqys79djwh9yh"
   }
  },
  {
@@ -100604,14 +100730,14 @@
   "repo": "nflath/sudo-edit",
   "unstable": {
    "version": [
-    20210108,
-    420
+    20210706,
+    534
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "a7ae1713bb659988bb1465a13b837fbc2d699504",
-   "sha256": "1hncxbg5lvywzkwvdmzvrz71midy4samjq2vvxxhz90z1y5l8l29"
+   "commit": "23b78a39053088839f281bc0c3134203d7e04e50",
+   "sha256": "1c8rrrxq8i287a7r1qwrqhfyrl84jfcpnjxiqczwjmc95r510yyz"
   },
   "stable": {
    "version": [
@@ -101227,8 +101353,8 @@
    "deps": [
     "ivy"
    ],
-   "commit": "040d458bce4a88f37359192061bcea5ebe87007c",
-   "sha256": "0lgpawrsvihksm9cx462qa1hsmxhhv1qp0h1f9m4wn1jrcrq7r24"
+   "commit": "56139df678d9886d0612c0a192cce2cf6f156628",
+   "sha256": "0xjjdq3vmpm3fpvmd3g57m4ldixx8j73in0nmdx4vvnzvh0n904g"
   },
   "stable": {
    "version": [
@@ -101438,14 +101564,14 @@
   "url": "https://tildegit.org/contrapunctus/sxiv",
   "unstable": {
    "version": [
-    20210514,
-    918
+    20210713,
+    1845
    ],
    "deps": [
     "dash"
    ],
-   "commit": "a531a7596e307a218beb8ff77893eeae61284f6e",
-   "sha256": "0gimq172pp143jckfhhyw319n3vpjvlkadm0vhypycas9i89mcg0"
+   "commit": "14057b156dd57610edf101403e653be874a342bb",
+   "sha256": "14wh7fw45w5cfdqibrcfzahsf4cwbi97xp16jd773ynkcf049cjs"
   },
   "stable": {
    "version": [
@@ -101805,15 +101931,15 @@
   "repo": "vapniks/syslog-mode",
   "unstable": {
    "version": [
-    20190913,
-    2040
+    20210714,
+    1932
    ],
    "deps": [
     "hide-lines",
     "ov"
    ],
-   "commit": "18f441bf57dd70cdd48a71f1f4566ab35facdb35",
-   "sha256": "1xl6immya0i5xjpls3vqdqj9rr5jxp5srny8l9j4qxf8kp75byqa"
+   "commit": "ff1ab94c0f65e9891656d78d84f71614e0b9a597",
+   "sha256": "1x0xlbiisq8wngxhznkhxavhrhbc1w5p5w1qgfxib16fr09aqyc5"
   },
   "stable": {
    "version": [
@@ -102434,15 +102560,15 @@
   "repo": "zevlg/telega.el",
   "unstable": {
    "version": [
-    20210701,
-    1035
+    20210711,
+    1323
    ],
    "deps": [
     "rainbow-identifiers",
     "visual-fill-column"
    ],
-   "commit": "a4054e9517d68109212f9d69342a49d4d65dd56f",
-   "sha256": "010b2rkpr8cib1c6s1ysg5wllrsg4rxc7h7cxqrjq1978bi499cw"
+   "commit": "377531fc19063b490b842e779df9b07195e8c496",
+   "sha256": "0gmjfw6kz5cflvj3zmyhw9qad850ckvq14k5vys62603yvm53qgw"
   },
   "stable": {
    "version": [
@@ -103382,14 +103508,14 @@
   "repo": "myTerminal/theme-looper",
   "unstable": {
    "version": [
-    20201107,
-    4
+    20210714,
+    1807
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "6bc170097f1dfb7ea4db91544c5ab653279e15cd",
-   "sha256": "0amm2jw86nyjzrga93n7jhz7p603mid46y41dsw2x8wz2rbh06r2"
+   "commit": "bb711c4bb992d7a129dd434a41a356cdaf8c387d",
+   "sha256": "09i7w2s594ksyi7a9bwpcycn4j7is19jh9kznrk39ar2kc3m118h"
   },
   "stable": {
    "version": [
@@ -103525,18 +103651,18 @@
     20200212,
     1903
    ],
-   "commit": "6c2a7567772f3954006c77a8bdc041df83802a00",
-   "sha256": "0g1j346s8jhw830byzjvgsjg6a03kza19xsghza1bzncwqjbv1n5"
+   "commit": "b157feff61c3bdefb138753af7636dae5a7b3c08",
+   "sha256": "1dnspcmni98xhcz21604238lskdqn6b4kpv2zllvq58si59q32mw"
   },
   "stable": {
    "version": [
     2021,
-    6,
-    28,
+    7,
+    12,
     0
    ],
-   "commit": "32036a5505970a5a8c905543ebc6de1b20a662d8",
-   "sha256": "0nc9d88ydm5x4nynyxq4rqbp63ypjd1mwf18vancwigv7jxc62an"
+   "commit": "faeb22efa9ed948e6096e37e65e6d121c83e329a",
+   "sha256": "1adaqcdzzrrff0186276pdmlqixkv47qfgyxap3by9zdiqwysd50"
   }
  },
  {
@@ -103592,20 +103718,20 @@
    "deps": [
     "haskell-mode"
    ],
-   "commit": "60a1c271b39dac22783a4f892446f08d3faeb025",
-   "sha256": "18spz3lvb3df0rr2cqxkqa6rfzrpwwryh4gkzp68znbbfl655l8d"
+   "commit": "95c065a410c20cbeefeaabc3084b2b09d09564c2",
+   "sha256": "02xbzwj1bf0n4lvg1rycmxsbvwi0p0h9a5fqx755kshwx5hngkx3"
   },
   "stable": {
    "version": [
     1,
     7,
-    7
+    8
    ],
    "deps": [
     "haskell-mode"
    ],
-   "commit": "b7399a878622173bf9fdc076ec72a8353e1b924c",
-   "sha256": "1qbywv182gzbdk27bzah273mb8brmqrpxcgv1pmdy10fc7fv2z0f"
+   "commit": "95c065a410c20cbeefeaabc3084b2b09d09564c2",
+   "sha256": "02xbzwj1bf0n4lvg1rycmxsbvwi0p0h9a5fqx755kshwx5hngkx3"
   }
  },
  {
@@ -103841,11 +103967,11 @@
   "repo": "aimebertrand/timu-spacegrey-theme",
   "unstable": {
    "version": [
-    20210621,
-    1857
+    20210710,
+    1950
    ],
-   "commit": "80d29c0f29925775fb00e90669a153d94eae01db",
-   "sha256": "1hdxis28ngrl0d1gafckah7srad4rnpmn4dh5dxd0a5vph63cxhw"
+   "commit": "e0629d59adc92112f51b5f9300e06e714349488d",
+   "sha256": "104zffdf0jlfqh6rlzl7a7ji5gs11pacy63ab4rjs2kx08p3z0y9"
   }
  },
  {
@@ -104004,11 +104130,11 @@
   "repo": "dalanicolai/toc-mode",
   "unstable": {
    "version": [
-    20201028,
-    1141
+    20210714,
+    725
    ],
-   "commit": "36fe728f387ab2087e4096cb4734a8642dd7f880",
-   "sha256": "1v3h1aw8p98rhy3mx8nngwl0v0pzk6pabr9mmah20cdgz1j8ax0s"
+   "commit": "977bec00d8d448ad2a5e2e4c17b9c9ba3e194ec2",
+   "sha256": "1yshkvsa5g6gxn9agf4z5ks5bd43l4akdcblxfgqkpshp25y5plv"
   }
  },
  {
@@ -104483,11 +104609,11 @@
   "repo": "jorgenschaefer/circe",
   "unstable": {
    "version": [
-    20210528,
-    754
+    20210713,
+    1609
    ],
-   "commit": "d6f1fa18646f6ed2a1c0f06a4888130bd694ff19",
-   "sha256": "1l6v02aa072jvhq4b9dpkprqs14py0d4jm3xvihm05lvrbf9v6c6"
+   "commit": "07d6d82cba864b1e38d3bd46654f2e1928a997c2",
+   "sha256": "04h60s6ig43sj144s7dlip1saf9kdwvzlfys8qwwx48003rbs0dp"
   },
   "stable": {
    "version": [
@@ -104590,20 +104716,20 @@
   "repo": "magit/transient",
   "unstable": {
    "version": [
-    20210701,
-    1116
+    20210712,
+    1626
    ],
-   "commit": "51e833e5152e9fdcdc1dbbf34ad2d4905bde1f69",
-   "sha256": "10k9dzs8y6i0rfckclxm5n3maylmh95993n5dvrs8rbmlcpmihvy"
+   "commit": "e90481000f071e9a26a1cc0f40d347f7d3e2201e",
+   "sha256": "1sw9248cxr3x2hy2rhyzbwik08nvlkglxgig3rbqshc8spnid5h3"
   },
   "stable": {
    "version": [
     0,
     3,
-    5
+    6
    ],
-   "commit": "b711543401dafc159943d8a703cf30fabdc78e1f",
-   "sha256": "0wzfnzv2304a737zwp163aajjhm8i3ix9v7palgg1r3jskvbghmw"
+   "commit": "51e833e5152e9fdcdc1dbbf34ad2d4905bde1f69",
+   "sha256": "10k9dzs8y6i0rfckclxm5n3maylmh95993n5dvrs8rbmlcpmihvy"
   }
  },
  {
@@ -104651,14 +104777,14 @@
   "repo": "holomorph/transmission",
   "unstable": {
    "version": [
-    20210218,
-    2015
+    20210705,
+    2152
    ],
    "deps": [
     "let-alist"
    ],
-   "commit": "b5c1d391b4be469a07536e901e54a8680387025f",
-   "sha256": "1z3gzax6i9cwipmi64hg3h98haimlb0xsz4zm1ggqwwq1zd5csvp"
+   "commit": "a03a6f5c7b133e0a37896b6d993dd6d6d4532cc2",
+   "sha256": "1znpl4ps0ah6lmrlyha6wbkbvnx90qkvksp5xp87apfb61zqzqwz"
   },
   "stable": {
    "version": [
@@ -104723,8 +104849,8 @@
     20200910,
     1636
    ],
-   "commit": "20694aae145edd6ad496a395ef1a53ab37a59521",
-   "sha256": "01afsgkzn5y4ld5m1gmvai8pgdy73kmllivmz18a2q9fdrgaa6xb"
+   "commit": "d2651b913a6ec615e6285712833566a79dca7247",
+   "sha256": "0pw401npbahlii6x37c6mi66ghd16mv04d6y0d1nirflvg4nfl8a"
   },
   "stable": {
    "version": [
@@ -104964,8 +105090,8 @@
   "repo": "Alexander-Miller/treemacs",
   "unstable": {
    "version": [
-    20210606,
-    1918
+    20210713,
+    2032
    ],
    "deps": [
     "ace-window",
@@ -104977,8 +105103,8 @@
     "pfuture",
     "s"
    ],
-   "commit": "2655a8976d56719add893cec45a18e018626842d",
-   "sha256": "060m6gwwvv82p7jry6viqzdf5fw6ljq4gbdkmqc5ilpkrcnmscv8"
+   "commit": "e4a85e3266581b8a8f526dbf4142c26d6e76d294",
+   "sha256": "1bjjz504a6nyh8ymqj4zbakp7b2006r0ayid5akc6yzpmyrsb4rl"
   },
   "stable": {
    "version": [
@@ -105014,8 +105140,8 @@
     "all-the-icons",
     "treemacs"
    ],
-   "commit": "2655a8976d56719add893cec45a18e018626842d",
-   "sha256": "060m6gwwvv82p7jry6viqzdf5fw6ljq4gbdkmqc5ilpkrcnmscv8"
+   "commit": "a6f9e9f1cea3502b3ead082fd208c4011a55add0",
+   "sha256": "1g004yj613x6qr06gaffb6rp2n47ximb1w8776l0s6w8d40msyyg"
   }
  },
  {
@@ -105033,8 +105159,8 @@
     "evil",
     "treemacs"
    ],
-   "commit": "2655a8976d56719add893cec45a18e018626842d",
-   "sha256": "060m6gwwvv82p7jry6viqzdf5fw6ljq4gbdkmqc5ilpkrcnmscv8"
+   "commit": "e4a85e3266581b8a8f526dbf4142c26d6e76d294",
+   "sha256": "1bjjz504a6nyh8ymqj4zbakp7b2006r0ayid5akc6yzpmyrsb4rl"
   },
   "stable": {
    "version": [
@@ -105063,8 +105189,8 @@
    "deps": [
     "treemacs"
    ],
-   "commit": "2655a8976d56719add893cec45a18e018626842d",
-   "sha256": "060m6gwwvv82p7jry6viqzdf5fw6ljq4gbdkmqc5ilpkrcnmscv8"
+   "commit": "e4a85e3266581b8a8f526dbf4142c26d6e76d294",
+   "sha256": "1bjjz504a6nyh8ymqj4zbakp7b2006r0ayid5akc6yzpmyrsb4rl"
   },
   "stable": {
    "version": [
@@ -105095,8 +105221,8 @@
     "pfuture",
     "treemacs"
    ],
-   "commit": "2655a8976d56719add893cec45a18e018626842d",
-   "sha256": "060m6gwwvv82p7jry6viqzdf5fw6ljq4gbdkmqc5ilpkrcnmscv8"
+   "commit": "e4a85e3266581b8a8f526dbf4142c26d6e76d294",
+   "sha256": "1bjjz504a6nyh8ymqj4zbakp7b2006r0ayid5akc6yzpmyrsb4rl"
   },
   "stable": {
    "version": [
@@ -105128,8 +105254,8 @@
     "persp-mode",
     "treemacs"
    ],
-   "commit": "2655a8976d56719add893cec45a18e018626842d",
-   "sha256": "060m6gwwvv82p7jry6viqzdf5fw6ljq4gbdkmqc5ilpkrcnmscv8"
+   "commit": "e4a85e3266581b8a8f526dbf4142c26d6e76d294",
+   "sha256": "1bjjz504a6nyh8ymqj4zbakp7b2006r0ayid5akc6yzpmyrsb4rl"
   },
   "stable": {
    "version": [
@@ -105161,8 +105287,8 @@
     "perspective",
     "treemacs"
    ],
-   "commit": "2655a8976d56719add893cec45a18e018626842d",
-   "sha256": "060m6gwwvv82p7jry6viqzdf5fw6ljq4gbdkmqc5ilpkrcnmscv8"
+   "commit": "a6f9e9f1cea3502b3ead082fd208c4011a55add0",
+   "sha256": "1g004yj613x6qr06gaffb6rp2n47ximb1w8776l0s6w8d40msyyg"
   }
  },
  {
@@ -105180,8 +105306,8 @@
     "projectile",
     "treemacs"
    ],
-   "commit": "2655a8976d56719add893cec45a18e018626842d",
-   "sha256": "060m6gwwvv82p7jry6viqzdf5fw6ljq4gbdkmqc5ilpkrcnmscv8"
+   "commit": "e4a85e3266581b8a8f526dbf4142c26d6e76d294",
+   "sha256": "1bjjz504a6nyh8ymqj4zbakp7b2006r0ayid5akc6yzpmyrsb4rl"
   },
   "stable": {
    "version": [
@@ -105389,15 +105515,15 @@
   "repo": "alphapapa/ts.el",
   "unstable": {
    "version": [
-    20201212,
-    1041
+    20210705,
+    341
    ],
    "deps": [
     "dash",
     "s"
    ],
-   "commit": "b7ca357a0ed57694e0b25ec1b1ca12e24a4ce541",
-   "sha256": "12p4k8x1p0h94xcdis7m0vkzf41k5k3ijkaj838ywb7i74myfdxb"
+   "commit": "b6814e7e688781a586a775ef3504b9252af65b93",
+   "sha256": "1bf39qx8k7nn1dj1fp6j47zr1lp28ccrj6ciz7z3dk040rlxnv11"
   },
   "stable": {
    "version": [
@@ -105518,14 +105644,14 @@
   "repo": "ocaml/tuareg",
   "unstable": {
    "version": [
-    20210628,
-    1257
+    20210709,
+    321
    ],
    "deps": [
     "caml"
    ],
-   "commit": "2e8482e23f45f0e6246a8d075a3b8696c5f49070",
-   "sha256": "04wblkb0jqzq67p1d96i284wfqv3ddffrwz3i3wf537wyi8bmn4k"
+   "commit": "b59c422759506402f990b089dbaa91c0578e2c2e",
+   "sha256": "1maqyhy82ayfiv95ng4bpgxrvjkkz331pw4ld1x99jpwqljpwqzc"
   },
   "stable": {
    "version": [
@@ -106159,8 +106285,8 @@
     20200719,
     618
    ],
-   "commit": "d4edb2cc110f1679ebc82cb52a4242cbc74636db",
-   "sha256": "0agn2j0qd516kxqx1bh6ajpandi8vz7zas966nw88yhv8m8hlzb2"
+   "commit": "741ab716ada8e71a94a9dae3daa4236298d29bd7",
+   "sha256": "1ibjwmvx4p7kchxlnfpqxj4p3k99nwxwhzk4m2b1yyswpiad2k0z"
   },
   "stable": {
    "version": [
@@ -107033,8 +107159,8 @@
    "deps": [
     "exec-path-from-shell"
    ],
-   "commit": "43499194224483b27628fdf99f6f9ff6e731d844",
-   "sha256": "1j6vkg0z7m8yzrgy0innq7r2d5pchbqs3y5gf51qdzsfqdmff3ys"
+   "commit": "31d8bbec16eff342bd4c02b0cb12ea31dd31bf19",
+   "sha256": "0388kwc65hpbimd53br2x9z9dvxw20wnny09kldw5nnlvzvzrba1"
   },
   "stable": {
    "version": [
@@ -107063,8 +107189,8 @@
    "deps": [
     "s"
    ],
-   "commit": "408c01423d7036463891d83e4a21227250ed2a14",
-   "sha256": "1jz7x93c14f2nm8iqc30kzfjbn5bcdvxxnfljvwj77mwgir2ali8"
+   "commit": "aa6e271e8efc3a93caaaa740245d126d24e778ab",
+   "sha256": "0a8qb7wyi5pkg7g0x7imzzxryz55dr8msiila9j9skq6jlmn84hl"
   },
   "stable": {
    "version": [
@@ -107823,8 +107949,8 @@
   "repo": "koral/veri-kompass",
   "unstable": {
    "version": [
-    20200213,
-    934
+    20181103,
+    1246
    ],
    "deps": [
     "cl-lib",
@@ -108504,8 +108630,8 @@
     20210627,
     2121
    ],
-   "commit": "bda27d3a7f11fee0550055b0552c2633c167dd96",
-   "sha256": "1y8ycsm4d72v86prg87dffis5q853k2w0fvx5vz732jryzp18lda"
+   "commit": "28398f1059f88e7e242f39cfa0ff8213cdaefc42",
+   "sha256": "0ln5idsmj7x0b769g7bj9wk0bjr826kq4bryw206dxxnz06s3wcs"
   },
   "stable": {
    "version": [
@@ -108527,8 +108653,8 @@
     20210627,
     2121
    ],
-   "commit": "a8bff6913f603a30bd98bef882ace01476c440bf",
-   "sha256": "1rshwvfggjb7amgxcl31xhll28kfbgh14aw33khlp32gq6p3vqyh"
+   "commit": "500d35f051fca07459abd163d5692c853a49329f",
+   "sha256": "1k5akiim0c0qiv10np5yzdndz8p499qhzhhrp1i8dz36gbp5x8ll"
   },
   "stable": {
    "version": [
@@ -108707,8 +108833,8 @@
   "repo": "mihaiolteanu/vuiet",
   "unstable": {
    "version": [
-    20210323,
-    911
+    20210715,
+    907
    ],
    "deps": [
     "bind-key",
@@ -108717,8 +108843,8 @@
     "s",
     "versuri"
    ],
-   "commit": "43b9364042922950f612ac57d8c526921a01b291",
-   "sha256": "14432mnm5lvccb9x3fymzi53kxfh2if92c5q14llz6pbbif8x3vh"
+   "commit": "b327a5224ab45f6689ce635878301e54ca753b3b",
+   "sha256": "1sq2nmmw8ga4jhkgb3a0mkps7v8ma1jrrz8c1vbypfn1b3amvj3b"
   },
   "stable": {
    "version": [
@@ -108840,8 +108966,8 @@
     20210615,
     103
    ],
-   "commit": "70b985b1d00c8703acb1ebf16875616903470f45",
-   "sha256": "0djvaxbxjic4m8nqmj1gs0h77gf0fik00ia7ayfha3fc7fabiif9"
+   "commit": "ccdd3681b9e7d8b6a758f2aa61a0ae8eab21240b",
+   "sha256": "1ynl1kwnhp5xqvmi8p37lprshk96xi8q78rsjmd9f8pkb8ayqbf3"
   }
  },
  {
@@ -109401,14 +109527,14 @@
   "repo": "eschulte/emacs-web-server",
   "unstable": {
    "version": [
-    20210209,
-    58
+    20210708,
+    2242
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "3aa5084bcb733aa77997b9210b4437903f6f29ce",
-   "sha256": "1cg27byi1g0s3yfzdkji4xzc15ci5kqb2j0mj5dfdms4db12dir4"
+   "commit": "6357a1c2d1718778503f7ee0909585094117525b",
+   "sha256": "1dp4ajfd4ikqdr2lkmjijw431d3hi07izaw54fn5zw8mp9dk225y"
   }
  },
  {
@@ -109845,11 +109971,11 @@
   "repo": "justbur/emacs-which-key",
   "unstable": {
    "version": [
-    20210630,
-    1217
+    20210712,
+    1852
    ],
-   "commit": "27d9fec33abb989b030f7677ccf5f799287d6472",
-   "sha256": "1vdvp3iavh57mwhmgxwalrha7h7hgxsfnkxbrspl9x9cx7fx98f3"
+   "commit": "55fcce0c6143044535bc6825a68f42ca83f58f00",
+   "sha256": "0bap1k6rzaqvqp7njzikw8clhky1fj78mdcx4zah1y57vhszavcw"
   },
   "stable": {
    "version": [
@@ -110178,15 +110304,15 @@
   "repo": "progfolio/wikinforg",
   "unstable": {
    "version": [
-    20210615,
-    2334
+    20210711,
+    302
    ],
    "deps": [
     "org",
     "wikinfo"
    ],
-   "commit": "7df42a260fb93cb743a08e67ea92d77f62dec72b",
-   "sha256": "05qqs4b0gmnwjl6d29xns93p2lyh1x2xzl0qpydbnxjirwp2bamx"
+   "commit": "31cf4a52990caa3f928b847ec25a5412836552bd",
+   "sha256": "0l13yi9iwi68n95wmxkjrf0zsmvxadpmxc7zm8x7v8kk5p7scnil"
   }
  },
  {
@@ -110894,11 +111020,11 @@
   "repo": "istib/wordsmith-mode",
   "unstable": {
    "version": [
-    20171025,
-    1430
+    20210715,
+    1517
    ],
-   "commit": "589a97412138145bea70e0450eeddeb7f138d538",
-   "sha256": "1zm4grysjpynibldvic75awhcmmnjmlkkvslw8bvirmi58qwvwzj"
+   "commit": "5d40ceaa2b8d41ab3634ca377ceb6a74deeb2287",
+   "sha256": "132l0i94nwrm676bpxw0wnr1drqwmapwv92mf4iyb209fr4hc2w2"
   },
   "stable": {
    "version": [
@@ -110918,8 +111044,8 @@
   "repo": "abo-abo/worf",
   "unstable": {
    "version": [
-    20210504,
-    1132
+    20210702,
+    1200
    ],
    "deps": [
     "ace-link",
@@ -110927,8 +111053,8 @@
     "swiper",
     "zoutline"
    ],
-   "commit": "c99ef5478183d0ab56b0abe943206491c802e003",
-   "sha256": "1qbs5dvqcip7y77f8sdyr7zw64vgxlybj4isi7x841j4z7kh5m11"
+   "commit": "28d381e2603a79340a94a410acbbb8a6b3e237d8",
+   "sha256": "15567bns5kag47d58xapr4z0gfj5py3a8lwfpjlhmzccmarjr7x8"
   },
   "stable": {
    "version": [
@@ -111392,11 +111518,11 @@
   "repo": "xahlee/xah-fly-keys",
   "unstable": {
    "version": [
-    20210701,
-    145
+    20210715,
+    2014
    ],
-   "commit": "6465e77d57a30a0a82ca4f4756593207b2ada510",
-   "sha256": "1bzlpwxkjmzgypagdp9qj4jf6crm3yhjnr98ipr1f49dl8178j6s"
+   "commit": "95c54a896c1e4af797f0af7cf9de85426c8e11eb",
+   "sha256": "137xv47cij7a0zws8xdw140cwlsnywapyb9y51dqpmn08s1ff2l2"
   }
  },
  {
@@ -111422,11 +111548,11 @@
   "repo": "xahlee/lookup-word-on-internet",
   "unstable": {
    "version": [
-    20200420,
-    1528
+    20210708,
+    2203
    ],
-   "commit": "c97a43dc0cebbfc519d0cce5b547dcc5e22b2085",
-   "sha256": "1qkazkisgw5c9xzxqm6xzm124r1v4d4dcyazvw66nz5j2zl1i5qd"
+   "commit": "53044a43db3c803fb3e32003c3106403ecfb8e4b",
+   "sha256": "09x8lrx4sdnx2sr0nkkn19hi7x6hi3gs0ad31xmjx1qgd7bw7as9"
   }
  },
  {
@@ -112453,8 +112579,8 @@
     20210625,
     803
    ],
-   "commit": "0ddf70ec214e2b1fade0594ec44c55adb48c06da",
-   "sha256": "1mkk07j3bayzprimiq95blbyj7idl01p6jv43hh226r427c89bcs"
+   "commit": "0d7556d0936e0223003208003470a2fa28f72150",
+   "sha256": "12lz73grpvnjgki93q9aywa5p6ddw67a73dcaryv186j3maq442w"
   },
   "stable": {
    "version": [
@@ -112813,11 +112939,11 @@
   "repo": "ryuslash/yoshi-theme",
   "unstable": {
    "version": [
-    20210623,
-    544
+    20210713,
+    455
    ],
-   "commit": "4aa2a0d0c3e3b7c408d680df8cc5ede53c18e923",
-   "sha256": "0psb3ff0f0wia7vmxqhframl8vnyzk6xx3dmv1g1j7b0njk259ij"
+   "commit": "06a6bcfc58d1f1cd8815c674c9fcbbf193bba0a9",
+   "sha256": "0mp68h924hfj86rya0kvk16w82lvllmiryz8ry70ngcfmwdh930v"
   },
   "stable": {
    "version": [
@@ -113221,15 +113347,15 @@
   "repo": "EFLS/zetteldeft",
   "unstable": {
    "version": [
-    20210602,
-    841
+    20210713,
+    1855
    ],
    "deps": [
     "ace-window",
     "deft"
    ],
-   "commit": "b71f24d382887aeefde9c47fb6aa521d0ebeb806",
-   "sha256": "09wy2gllacry2n0cp52fakaa36lnd1mnbb26zysdjxh0429siy4a"
+   "commit": "7dbf608d17786a69019867fd6b2b7d6c6edf849f",
+   "sha256": "1lq80ck08bydl98ka6j4qd6m5iqd1l8cx0y8pa2wq94vj71l65vl"
   },
   "stable": {
    "version": [
@@ -113662,8 +113788,8 @@
   "repo": "egh/zotxt-emacs",
   "unstable": {
    "version": [
-    20210222,
-    347
+    20210129,
+    413
    ],
    "deps": [
     "deferred",
@@ -113711,6 +113837,30 @@
   }
  },
  {
+  "ename": "zoxide",
+  "commit": "77de3ff55aa7feffef7e389b4dc9a0844f82da55",
+  "sha256": "055f229a9kck8bbfwxksdi2b5v2aawjz2p8f6dar247ii1ix0jd6",
+  "fetcher": "gitlab",
+  "repo": "Vonfry/zoxide.el",
+  "unstable": {
+   "version": [
+    20210705,
+    448
+   ],
+   "commit": "f68d7cf9c8c813bdc1ec75f880e0dd1b64112f7c",
+   "sha256": "030vyh9v89ij1db1riqpzxxfgs50x0lx3isnhzbfj2dy3acmmc7s"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    0
+   ],
+   "commit": "f68d7cf9c8c813bdc1ec75f880e0dd1b64112f7c",
+   "sha256": "030vyh9v89ij1db1riqpzxxfgs50x0lx3isnhzbfj2dy3acmmc7s"
+  }
+ },
+ {
   "ename": "zpl-mode",
   "commit": "0bf11cd6ceb2633f968134d80f37d32f91c48227",
   "sha256": "0wqhwzanvc1gpnykfqzi02p9zx0c1n6gnavg5dv1mlmc8x0hr67s",
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/update-nongnu b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/update-nongnu
new file mode 100755
index 000000000000..dc43a86efbe3
--- /dev/null
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/update-nongnu
@@ -0,0 +1,4 @@
+#! /usr/bin/env nix-shell
+#! nix-shell --show-trace ./emacs2nix.nix -i bash
+
+exec nongnu-packages.sh --names $EMACS2NIX/names.nix -o nongnu-generated.nix
diff --git a/nixpkgs/pkgs/applications/editors/kakoune/plugins/build-kakoune-plugin.nix b/nixpkgs/pkgs/applications/editors/kakoune/plugins/build-kakoune-plugin.nix
index f35a175312c0..196a1d122d65 100644
--- a/nixpkgs/pkgs/applications/editors/kakoune/plugins/build-kakoune-plugin.nix
+++ b/nixpkgs/pkgs/applications/editors/kakoune/plugins/build-kakoune-plugin.nix
@@ -27,7 +27,7 @@ rec {
     });
 
   buildKakounePluginFrom2Nix = attrs: buildKakounePlugin ({
-    buildPhase = ":";
-    configurePhase = ":";
+    dontBuild = true;
+    dontConfigure = true;
   } // attrs);
 }
diff --git a/nixpkgs/pkgs/applications/editors/lighttable/default.nix b/nixpkgs/pkgs/applications/editors/lighttable/default.nix
index b19b1ac2b68d..0b550c5f11d2 100644
--- a/nixpkgs/pkgs/applications/editors/lighttable/default.nix
+++ b/nixpkgs/pkgs/applications/editors/lighttable/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
         sha256 = "06fj725xfhf3fwrf7dya7ijmxq3v76kfmd4lr2067a92zhlwr5pv";
       };
 
-  phases = [ "installPhase" ];
+  dontConfigure = true;
 
   installPhase = ''
     tar xf ${src}
diff --git a/nixpkgs/pkgs/applications/editors/neovim/default.nix b/nixpkgs/pkgs/applications/editors/neovim/default.nix
index bfa7e8e2009d..f36009afc69a 100644
--- a/nixpkgs/pkgs/applications/editors/neovim/default.nix
+++ b/nixpkgs/pkgs/applications/editors/neovim/default.nix
@@ -131,6 +131,7 @@ in
         - Improve extensibility with a new plugin architecture
       '';
       homepage    = "https://www.neovim.io";
+      mainProgram = "nvim";
       # "Contributions committed before b17d96 by authors who did not sign the
       # Contributor License Agreement (CLA) remain under the Vim license.
       # Contributions committed after b17d96 are licensed under Apache 2.0 unless
diff --git a/nixpkgs/pkgs/applications/editors/neovim/wrapper.nix b/nixpkgs/pkgs/applications/editors/neovim/wrapper.nix
index 96b61a43cca0..d94f3239f4bb 100644
--- a/nixpkgs/pkgs/applications/editors/neovim/wrapper.nix
+++ b/nixpkgs/pkgs/applications/editors/neovim/wrapper.nix
@@ -131,7 +131,6 @@ let
       hydraPlatforms = [];
       # prefer wrapper over the package
       priority = (neovim.meta.priority or 0) - 1;
-      mainProgram = "nvim";
     };
   };
 in
diff --git a/nixpkgs/pkgs/applications/editors/sublime/3/common.nix b/nixpkgs/pkgs/applications/editors/sublime/3/common.nix
index e353f4f5652f..b4bfc6c9ea73 100644
--- a/nixpkgs/pkgs/applications/editors/sublime/3/common.nix
+++ b/nixpkgs/pkgs/applications/editors/sublime/3/common.nix
@@ -108,7 +108,7 @@ in stdenv.mkDerivation (rec {
   inherit pname;
   version = buildVersion;
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   ${primaryBinary} = binaryPackage;
 
diff --git a/nixpkgs/pkgs/applications/editors/sublime/4/common.nix b/nixpkgs/pkgs/applications/editors/sublime/4/common.nix
index 97299bef3ac4..13eabde14e6d 100644
--- a/nixpkgs/pkgs/applications/editors/sublime/4/common.nix
+++ b/nixpkgs/pkgs/applications/editors/sublime/4/common.nix
@@ -100,7 +100,7 @@ in stdenv.mkDerivation (rec {
   inherit pname;
   version = buildVersion;
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   ${primaryBinary} = binaryPackage;
 
diff --git a/nixpkgs/pkgs/applications/editors/sublime/4/packages.nix b/nixpkgs/pkgs/applications/editors/sublime/4/packages.nix
index b7c3887cc084..bbef0d8a4056 100644
--- a/nixpkgs/pkgs/applications/editors/sublime/4/packages.nix
+++ b/nixpkgs/pkgs/applications/editors/sublime/4/packages.nix
@@ -5,15 +5,15 @@ let
 in
   {
     sublime4 = common {
-      buildVersion = "4107";
-      x64sha256 = "05ar7qd1d880442bx4w32mapsib7j27g9l96q2v2s7591r9fgnf7";
-      aarch64sha256 = "4MzwhZ17c6cYtlwPA+SBiey6GiVruADXOLJAeJlMrgM=";
+      buildVersion = "4113";
+      x64sha256 = "13679mnmigy1sgj355zs4si6gnx42rgjl4rn5d6gqgj5qq7zj3lh";
+      aarch64sha256 = "0hg6g3cichma1x82963m7xwazmpdvv5zmz8rpwxs337zq7j3dmb3";
     } {};
 
     sublime4-dev = common {
-      buildVersion = "4106";
+      buildVersion = "4112";
       dev = true;
-      x64sha256 = "09jnn52zb0mjxpj5xz4sixl34cr6j60x46c2dj1m0dlgxap0sh8x";
-      aarch64sha256 = "7blbeSZI0V6q89jMM+zi2ODEdoc1b3Am8F2b2jLr5O8=";
+      x64sha256 = "1yy8wzcphsk3ji2sv2vjcw8ybn62yibzsv9snmm01gvkma16p9dl";
+      aarch64sha256 = "12bl235rxgw3q99yz9x4nfaryb32a2vzyam88by6p1s1zw2fxnp9";
     } {};
   }
diff --git a/nixpkgs/pkgs/applications/editors/texmacs/default.nix b/nixpkgs/pkgs/applications/editors/texmacs/default.nix
index d628eeadab6e..427d0aa3ace8 100644
--- a/nixpkgs/pkgs/applications/editors/texmacs/default.nix
+++ b/nixpkgs/pkgs/applications/editors/texmacs/default.nix
@@ -16,7 +16,7 @@
 
 let
   pname = "TeXmacs";
-  version = "1.99.19";
+  version = "2.1";
   common = callPackage ./common.nix {
     inherit tex extraFonts chineseFonts japaneseFonts koreanFonts;
   };
@@ -26,7 +26,7 @@ mkDerivation {
 
   src = fetchurl {
     url = "https://www.texmacs.org/Download/ftp/tmftp/source/TeXmacs-${version}-src.tar.gz";
-    sha256 = "1izwqb0z4gqiglv57mjswk6sjivny73kd2sxrf3nmj7wr12pn5m8";
+    sha256 = "1gl6k1bwrk1y7hjyl4xvlqvmk5crl4jvsk8wrfp7ynbdin6n2i48";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/nixpkgs/pkgs/applications/editors/vim/default.nix b/nixpkgs/pkgs/applications/editors/vim/default.nix
index 48e1369c8c3c..2cda81c2588a 100644
--- a/nixpkgs/pkgs/applications/editors/vim/default.nix
+++ b/nixpkgs/pkgs/applications/editors/vim/default.nix
@@ -2,7 +2,7 @@
 # default vimrc
 , vimrc ? fetchurl {
     name = "default-vimrc";
-    url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/archlinux.vim?id=68f6d131750aa778807119e03eed70286a17b1cb";
+    url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/68f6d131750aa778807119e03eed70286a17b1cb/trunk/archlinux.vim";
     sha256 = "18ifhv5q9prd175q3vxbqf6qyvkk6bc7d2lhqdk0q78i68kv9y0c";
   }
 # apple frameworks
diff --git a/nixpkgs/pkgs/applications/editors/vscode/generic.nix b/nixpkgs/pkgs/applications/editors/vscode/generic.nix
index d9a4ed2a8948..a7f9fb328ffe 100644
--- a/nixpkgs/pkgs/applications/editors/vscode/generic.nix
+++ b/nixpkgs/pkgs/applications/editors/vscode/generic.nix
@@ -77,7 +77,7 @@ let
 
     installPhase = ''
       runHook preInstall
-    '' + (if system == "x86_64-darwin" then ''
+    '' + (if stdenv.isDarwin then ''
       mkdir -p "$out/Applications/${longName}.app" $out/bin
       cp -r ./* "$out/Applications/${longName}.app"
       ln -s "$out/Applications/${longName}.app/Contents/Resources/app/bin/${sourceExecutableName}" $out/bin/${executableName}
diff --git a/nixpkgs/pkgs/applications/editors/vscode/update-vscode.sh b/nixpkgs/pkgs/applications/editors/vscode/update-vscode.sh
index 68249c20d132..709fbe1c7517 100755
--- a/nixpkgs/pkgs/applications/editors/vscode/update-vscode.sh
+++ b/nixpkgs/pkgs/applications/editors/vscode/update-vscode.sh
@@ -19,18 +19,22 @@ fi
 VSCODE_VER=$(curl --fail --silent https://api.github.com/repos/Microsoft/vscode/releases/latest | jq --raw-output .tag_name)
 sed -i "s/version = \".*\"/version = \"${VSCODE_VER}\"/" "$ROOT/vscode.nix"
 
-VSCODE_LINUX_URL="https://update.code.visualstudio.com/${VSCODE_VER}/linux-x64/stable"
-VSCODE_LINUX_SHA256=$(nix-prefetch-url ${VSCODE_LINUX_URL})
-sed -i "s/x86_64-linux = \".\{52\}\"/x86_64-linux = \"${VSCODE_LINUX_SHA256}\"/" "$ROOT/vscode.nix"
+VSCODE_X64_LINUX_URL="https://update.code.visualstudio.com/${VSCODE_VER}/linux-x64/stable"
+VSCODE_X64_LINUX_SHA256=$(nix-prefetch-url ${VSCODE_X64_LINUX_URL})
+sed -i "s/x86_64-linux = \".\{52\}\"/x86_64-linux = \"${VSCODE_X64_LINUX_SHA256}\"/" "$ROOT/vscode.nix"
 
-VSCODE_DARWIN_URL="https://update.code.visualstudio.com/${VSCODE_VER}/darwin/stable"
-VSCODE_DARWIN_SHA256=$(nix-prefetch-url ${VSCODE_DARWIN_URL})
-sed -i "s/x86_64-darwin = \".\{52\}\"/x86_64-darwin = \"${VSCODE_DARWIN_SHA256}\"/" "$ROOT/vscode.nix"
+VSCODE_X64_DARWIN_URL="https://update.code.visualstudio.com/${VSCODE_VER}/darwin/stable"
+VSCODE_X64_DARWIN_SHA256=$(nix-prefetch-url ${VSCODE_X64_DARWIN_URL})
+sed -i "s/x86_64-darwin = \".\{52\}\"/x86_64-darwin = \"${VSCODE_X64_DARWIN_SHA256}\"/" "$ROOT/vscode.nix"
 
-VSCODE_LINUX_AARCH64_URL="https://update.code.visualstudio.com/${VSCODE_VER}/linux-arm64/stable"
-VSCODE_LINUX_AARCH64_SHA256=$(nix-prefetch-url ${VSCODE_LINUX_AARCH64_URL})
-sed -i "s/aarch64-linux = \".\{52\}\"/aarch64-linux = \"${VSCODE_LINUX_AARCH64_SHA256}\"/" "$ROOT/vscode.nix"
+VSCODE_AARCH64_LINUX_URL="https://update.code.visualstudio.com/${VSCODE_VER}/linux-arm64/stable"
+VSCODE_AARCH64_LINUX_SHA256=$(nix-prefetch-url ${VSCODE_AARCH64_LINUX_URL})
+sed -i "s/aarch64-linux = \".\{52\}\"/aarch64-linux = \"${VSCODE_AARCH64_LINUX_SHA256}\"/" "$ROOT/vscode.nix"
 
-VSCODE_LINUX_ARMV7L_URL="https://update.code.visualstudio.com/${VSCODE_VER}/linux-armhf/stable"
-VSCODE_LINUX_ARMV7L_SHA256=$(nix-prefetch-url ${VSCODE_LINUX_ARMV7L_URL})
-sed -i "s/armv7l-linux = \".\{52\}\"/armv7l-linux = \"${VSCODE_LINUX_ARMV7L_SHA256}\"/" "$ROOT/vscode.nix"
+VSCODE_AARCH64_DARWIN_URL="https://update.code.visualstudio.com/${VSCODE_VER}/darwin-arm64/stable"
+VSCODE_AARCH64_DARWIN_SHA256=$(nix-prefetch-url ${VSCODE_AARCH64_DARWIN_URL})
+sed -i "s/aarch64-darwin = \".\{52\}\"/aarch64-darwin = \"${VSCODE_AARCH64_DARWIN_SHA256}\"/" "$ROOT/vscode.nix"
+
+VSCODE_ARMV7L_LINUX_URL="https://update.code.visualstudio.com/${VSCODE_VER}/linux-armhf/stable"
+VSCODE_ARMV7L_LINUX_SHA256=$(nix-prefetch-url ${VSCODE_ARMV7L_LINUX_URL})
+sed -i "s/armv7l-linux = \".\{52\}\"/armv7l-linux = \"${VSCODE_ARMV7L_LINUX_SHA256}\"/" "$ROOT/vscode.nix"
diff --git a/nixpkgs/pkgs/applications/editors/vscode/vscode.nix b/nixpkgs/pkgs/applications/editors/vscode/vscode.nix
index 85804f3bf2fc..23af04462ba4 100644
--- a/nixpkgs/pkgs/applications/editors/vscode/vscode.nix
+++ b/nixpkgs/pkgs/applications/editors/vscode/vscode.nix
@@ -7,22 +7,24 @@ let
     x86_64-linux = "linux-x64";
     x86_64-darwin = "darwin";
     aarch64-linux = "linux-arm64";
+    aarch64-darwin = "darwin-arm64";
     armv7l-linux = "linux-armhf";
   }.${system};
 
-  archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
+  archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
 
   sha256 = {
-    x86_64-linux = "0cklp0mp7qylzrqnfbvzs308q0bzpswlqw5n98qhl1jb5783svx1";
-    x86_64-darwin = "04yyv0wpkzdjfiy9kj2jslhv7nc5i6nw2207vfnbzysgs55l3x63";
-    aarch64-linux = "1ygk51902g0q7x3r6kd3s7gi2gx86x10svpvbipl494qcyfngqzs";
-    armv7l-linux = "0z5rg1nl8lz7zsvml6dfz093dbyrkr4zvvfssqiyarw4n24d2mim";
+    x86_64-linux = "049spg4c1arkw97mg0h046kiirmcrjj97sy4ldiblwldjn510acw";
+    x86_64-darwin = "0g6b1891ag4a6p7rlkfka5v4nbmpr4ckkmibhw8l3wa9zdzs77x6";
+    aarch64-linux = "1qvk6cn5v9bz4vl5ifpdgrba94v6a54xx8s3fxdkj3lqvq27kpd1";
+    aarch64-darwin = "1whgjkxy70ifx1vaddxr8f1xcg651fhca4x7rzidzbyyf3baghy0";
+    armv7l-linux = "1k45s81s4ispc0vz7i17a7gss05d82vpymxgangg6f1yxwz944r4";
   }.${system};
 in
   callPackage ./generic.nix rec {
     # Please backport all compatible updates to the stable release.
     # This is important for the extension ecosystem.
-    version = "1.57.1";
+    version = "1.58.2";
     pname = "vscode";
 
     sourceExecutableName = "code";
@@ -56,7 +58,7 @@ in
       homepage = "https://code.visualstudio.com/";
       downloadPage = "https://code.visualstudio.com/Updates";
       license = licenses.unfree;
-      maintainers = with maintainers; [ eadwu synthetica ];
-      platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "armv7l-linux" ];
+      maintainers = with maintainers; [ eadwu synthetica maxeaubrey ];
+      platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-darwin" "aarch64-linux" "armv7l-linux" ];
     };
   }
diff --git a/nixpkgs/pkgs/applications/editors/vscode/vscodium.nix b/nixpkgs/pkgs/applications/editors/vscode/vscodium.nix
index 849f435eb368..000c12bc72c7 100644
--- a/nixpkgs/pkgs/applications/editors/vscode/vscodium.nix
+++ b/nixpkgs/pkgs/applications/editors/vscode/vscodium.nix
@@ -13,10 +13,10 @@ let
   archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
 
   sha256 = {
-    x86_64-linux = "16s3hznyrz9w0cns8fk3pzk9ai5dj9y5p4n1rf3hrpg5hi9yxi5j";
-    x86_64-darwin = "133p032c8gv3hx4x7kxdfhz4xvkpjmjnvy02sf05dxqv5nly4xx4";
-    aarch64-linux = "183f674qyrlz0wqx6x48z6jhl8z30zmwsj8021hqi8px5ny99l1f";
-    armv7l-linux = "0rf3ybha861r5pfp6rvh21abfagaiwqlsbxm7fhphrc5382lmxbs";
+    x86_64-linux = "11h4c5ghgn3qrg66jh2par3cl3fqzn9xb7gdniww4badnyajnij8";
+    x86_64-darwin = "0hd3qdxg4cknk3fxv509jlblwmfx65bm2a4arsg255224dpg64n2";
+    aarch64-linux = "0waakj413kqf68sawajd3n24qdbx6b2svyb4lgbn0sy1apc96s3c";
+    armv7l-linux = "1ij2bmsk601f1vjljj6gvxsxrcjqf2m74s9kc006hmcz7czjgk8f";
   }.${system};
 
   sourceRoot = {
@@ -31,7 +31,7 @@ in
 
     # Please backport all compatible updates to the stable release.
     # This is important for the extension ecosystem.
-    version = "1.57.1";
+    version = "1.58.2";
     pname = "vscodium";
 
     executableName = "codium";
diff --git a/nixpkgs/pkgs/applications/graphics/coreimage/default.nix b/nixpkgs/pkgs/applications/graphics/coreimage/default.nix
new file mode 100644
index 000000000000..1dcff1f6e8f2
--- /dev/null
+++ b/nixpkgs/pkgs/applications/graphics/coreimage/default.nix
@@ -0,0 +1,31 @@
+{ mkDerivation, lib, fetchFromGitLab, libcprime, qtbase, cmake, ninja }:
+
+mkDerivation rec {
+  pname = "coreimage";
+  version = "4.2.0";
+
+  src = fetchFromGitLab {
+    owner = "cubocore/coreapps";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-dxRHzSG5ea1MhpTjgZbFztV9mElEaeOK4NsmieSgf5Q";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    ninja
+  ];
+
+  buildInputs = [
+    qtbase
+    libcprime
+  ];
+
+  meta = with lib; {
+    description = "An image viewer from the C Suite";
+    homepage = "https://gitlab.com/cubocore/coreapps/coreimage";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ dan4ik605743 ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/graphics/cq-editor/default.nix b/nixpkgs/pkgs/applications/graphics/cq-editor/default.nix
index b9b2eb368735..33bae268c8a6 100644
--- a/nixpkgs/pkgs/applications/graphics/cq-editor/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/cq-editor/default.nix
@@ -41,7 +41,7 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
     pytest
     pytest-xvfb
     pytest-mock
-    pytestcov
+    pytest-cov
     pytest-repeat
     pytest-qt
   ];
diff --git a/nixpkgs/pkgs/applications/graphics/darktable/default.nix b/nixpkgs/pkgs/applications/graphics/darktable/default.nix
index cc15b96b4b6e..540a74e6524f 100644
--- a/nixpkgs/pkgs/applications/graphics/darktable/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/darktable/default.nix
@@ -3,7 +3,7 @@
 , ilmbase, gtk3, intltool, lcms2, lensfun, libX11, libexif, libgphoto2, libjpeg
 , libpng, librsvg, libtiff, openexr, osm-gps-map, pkg-config, sqlite, libxslt
 , openjpeg, lua, pugixml, colord, colord-gtk, libwebp, libsecret, gnome
-, ocl-icd, pcre, gtk-mac-integration, isocodes, llvmPackages
+, ocl-icd, pcre, gtk-mac-integration, isocodes, llvmPackages, gmic, libavif, icu
 }:
 
 stdenv.mkDerivation rec {
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     cairo curl exiv2 glib gtk3 ilmbase lcms2 lensfun libexif
     libgphoto2 libjpeg libpng librsvg libtiff openexr sqlite libxslt
     libsoup graphicsmagick json-glib openjpeg lua pugixml
-    libwebp libsecret gnome.adwaita-icon-theme osm-gps-map pcre isocodes
+    libwebp libsecret gnome.adwaita-icon-theme osm-gps-map pcre isocodes gmic libavif icu
   ] ++ lib.optionals stdenv.isLinux [
     colord colord-gtk libX11 ocl-icd
   ] ++ lib.optional stdenv.isDarwin gtk-mac-integration
diff --git a/nixpkgs/pkgs/applications/graphics/digikam/default.nix b/nixpkgs/pkgs/applications/graphics/digikam/default.nix
index db23a181c5a0..141f966253d8 100644
--- a/nixpkgs/pkgs/applications/graphics/digikam/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/digikam/default.nix
@@ -55,11 +55,11 @@
 
 mkDerivation rec {
   pname   = "digikam";
-  version = "7.2.0";
+  version = "7.3.0";
 
   src = fetchurl {
     url = "mirror://kde/stable/${pname}/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-zYfs4UOu+gLmkqSvXDw8wQe5pNYYBNefp33S40R5ihc=";
+    sha256 = "sha256-la6pO+HP05u1IzO4Kz5Xv2gIDH0TGddU0WeiD22+RVE=";
   };
 
   nativeBuildInputs = [ cmake doxygen extra-cmake-modules kdoctools wrapGAppsHook ];
diff --git a/nixpkgs/pkgs/applications/graphics/fig2dev/default.nix b/nixpkgs/pkgs/applications/graphics/fig2dev/default.nix
index c7484f4cbfe7..31d14185dcd9 100644
--- a/nixpkgs/pkgs/applications/graphics/fig2dev/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/fig2dev/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchurl
+, fetchpatch
 , ghostscript
 , libpng
 , makeWrapper
@@ -20,6 +21,15 @@ stdenv.mkDerivation rec {
     sha256 = "1bm75lf9j54qpbjx8hzp6ixaayp1x9w4v3yxl6vxyw8g5m4sqdk3";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "CVE-2021-3561.patch";
+      # Using Debian patch since it is not possible to download it directly from Sourceforge
+      url = "https://sources.debian.org/data/main/f/fig2dev/1:3.2.8-3/debian/patches/33_sanitize-color.patch";
+      sha256 = "1bppr3li03nj4qjibnddr2f38mpk55pcn5z6k98pf00gabq33fgs";
+    })
+  ];
+
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ libpng ];
 
diff --git a/nixpkgs/pkgs/applications/graphics/hugin/default.nix b/nixpkgs/pkgs/applications/graphics/hugin/default.nix
index f7f1e17be22c..a83070e5e6b6 100644
--- a/nixpkgs/pkgs/applications/graphics/hugin/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/hugin/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   patches = [
     # Fixes build with exiv2 0.27.1
     (fetchpatch {
-      url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/hugin-exiv2-0.27.1.patch?h=packages/hugin";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-community/0467d8ba362b9c196e4c1dc4be7de0c1b336335b/hugin/trunk/hugin-exiv2-0.27.1.patch";
       sha256 = "1yxvlpvrhyrfd2w6kwx1w3mncsvlzdhp0w7xchy8q6kc2kd5nf7r";
     })
   ];
diff --git a/nixpkgs/pkgs/applications/graphics/qiv/default.nix b/nixpkgs/pkgs/applications/graphics/qiv/default.nix
index acd9c576f731..0075abc0f6f0 100644
--- a/nixpkgs/pkgs/applications/graphics/qiv/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/qiv/default.nix
@@ -21,7 +21,6 @@ stdenv.mkDerivation (rec {
   meta = with lib; {
     description = "Quick image viewer";
     homepage = "http://spiegl.de/qiv/";
-    inherit version;
     license = licenses.gpl2;
     platforms = platforms.linux;
   };
diff --git a/nixpkgs/pkgs/applications/graphics/swingsane/default.nix b/nixpkgs/pkgs/applications/graphics/swingsane/default.nix
index e9507129a2c0..c9d119a7d605 100644
--- a/nixpkgs/pkgs/applications/graphics/swingsane/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/swingsane/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ unzip ];
 
-  phases = [ "unpackPhase" "installPhase" ];
+  dontConfigure = true;
 
   installPhase = let
 
diff --git a/nixpkgs/pkgs/applications/graphics/xfractint/default.nix b/nixpkgs/pkgs/applications/graphics/xfractint/default.nix
index cca061ed2a6b..c43127bfa993 100644
--- a/nixpkgs/pkgs/applications/graphics/xfractint/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/xfractint/default.nix
@@ -17,7 +17,6 @@ stdenv.mkDerivation rec {
   makeFlags = ["PREFIX=$(out)"];
 
   meta = {
-    inherit version;
     description = "";
     # Code cannot be used in commercial programs
     # Looks like the definition hinges on the price, not license
diff --git a/nixpkgs/pkgs/applications/kde/spectacle.nix b/nixpkgs/pkgs/applications/kde/spectacle.nix
index c6861b218deb..587877ad7a72 100644
--- a/nixpkgs/pkgs/applications/kde/spectacle.nix
+++ b/nixpkgs/pkgs/applications/kde/spectacle.nix
@@ -1,24 +1,26 @@
-{
-  mkDerivation, lib,
-  extra-cmake-modules, kdoctools,
-  ki18n, xcb-util-cursor,
-  kconfig, kcoreaddons, kdbusaddons, kdeclarative, kio, kipi-plugins,
-  knotifications, kscreen, kwidgetsaddons, kwindowsystem, kxmlgui, libkipi,
-  qtx11extras, knewstuff, kwayland, qttools
+{ mkDerivation, lib
+, extra-cmake-modules, kdoctools
+, ki18n, xcb-util-cursor
+, kconfig, kcoreaddons, kdbusaddons, kdeclarative, kio, kipi-plugins
+, knotifications, kscreen, kwidgetsaddons, kwindowsystem, kxmlgui, libkipi
+, qtbase, qtx11extras, knewstuff, kwayland, qttools, kcolorpicker, kimageannotator
 }:
 
 mkDerivation {
   pname = "spectacle";
-  meta = with lib; { maintainers = with maintainers; [ ttuegel ]; };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   buildInputs = [
     kconfig kcoreaddons kdbusaddons kdeclarative ki18n kio knotifications
     kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi qtx11extras xcb-util-cursor
-    knewstuff kwayland
+    knewstuff kwayland kcolorpicker kimageannotator
   ];
   postPatch = ''
     substituteInPlace desktop/org.kde.spectacle.desktop.cmake \
       --replace "Exec=@QtBinariesDir@/qdbus" "Exec=${lib.getBin qttools}/bin/qdbus"
   '';
   propagatedUserEnvPkgs = [ kipi-plugins libkipi ];
+  meta = with lib; {
+    maintainers = with maintainers; [ ttuegel ];
+    broken = versionOlder qtbase.version "5.15";
+  };
 }
diff --git a/nixpkgs/pkgs/applications/misc/1password-gui/default.nix b/nixpkgs/pkgs/applications/misc/1password-gui/default.nix
index b4b55fa264dd..0803b495b2fa 100644
--- a/nixpkgs/pkgs/applications/misc/1password-gui/default.nix
+++ b/nixpkgs/pkgs/applications/misc/1password-gui/default.nix
@@ -28,15 +28,16 @@
 , nss
 , pango
 , systemd
+, udev
 , xdg-utils
 }:
 stdenv.mkDerivation rec {
   pname = "1password";
-  version = "8.0.34";
+  version = "8.1.1";
 
   src = fetchurl {
     url = "https://downloads.1password.com/linux/tar/stable/x86_64/1password-${version}.x64.tar.gz";
-    sha256 = "0mp119v5vgsva7pnxpsbq4xhh4vbhwv7ga9b5b7f6slx3biy1wmh";
+    sha256 = "0y39sfhj9xrgprh01i9apzfkqzm6pdhjc8x59x5p5djjjvxbcwmy";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -95,8 +96,12 @@ stdenv.mkDerivation rec {
         patchelf --set-rpath ${rpath}:$out/share/1password $file
       done
 
+      # Electron is trying to open udev via dlopen()
+      # and for some reason that doesn't seem to be impacted from the rpath.
+      # Adding udev to LD_LIBRARY_PATH fixes that.
       makeWrapper $out/share/1password/1password $out/bin/1password \
-        --prefix PATH : ${xdg-utils}/bin
+        --prefix PATH : ${lib.makeBinPath [ xdg-utils ]} \
+        --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ udev ]}
 
       runHook postInstall
     '';
diff --git a/nixpkgs/pkgs/applications/misc/archivy/default.nix b/nixpkgs/pkgs/applications/misc/archivy/default.nix
index 08d5524fc3a5..0a89e4f47658 100644
--- a/nixpkgs/pkgs/applications/misc/archivy/default.nix
+++ b/nixpkgs/pkgs/applications/misc/archivy/default.nix
@@ -21,11 +21,11 @@
 
 buildPythonApplication rec {
   pname = "archivy";
-  version = "1.3.1";
+  version = "1.4.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-g7H22zJOQuxSmoJ3373eRcbderC67vkuiLN1CgaytFM=";
+    sha256 = "sha256-wQuR7cltDLr2u8BQ851MSjKmeLW8mQ/3bdEF5c9nxL0=";
   };
 
   # Relax some dependencies
@@ -38,7 +38,10 @@ buildPythonApplication rec {
       --replace 'python_frontmatter == 0.5.0' 'python_frontmatter' \
       --replace 'requests ==' 'requests >=' \
       --replace 'validators ==' 'validators >=' \
-      --replace 'tinydb ==' 'tinydb >='
+      --replace 'tinydb ==' 'tinydb >=' \
+      --replace 'Flask_WTF == 0.14.3' 'Flask_WTF' \
+      --replace 'Werkzeug ==' 'Werkzeug >=' \
+      --replace 'Flask ==' 'Flask >='
   '';
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/misc/blender/default.nix b/nixpkgs/pkgs/applications/misc/blender/default.nix
index 305ab8917130..26ca38981341 100644
--- a/nixpkgs/pkgs/applications/misc/blender/default.nix
+++ b/nixpkgs/pkgs/applications/misc/blender/default.nix
@@ -26,11 +26,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "blender";
-  version = "2.93.0";
+  version = "2.93.1";
 
   src = fetchurl {
     url = "https://download.blender.org/source/${pname}-${version}.tar.xz";
-    sha256 = "0f2rpqa39sir6g90khd2d2fs4kss0zhk7vya1nscf5yp8r566fxs";
+    sha256 = "sha256-IdriOBw/DlpH6B0GKqC1nKnhTZwrIL8U9hkMS20BHNg=";
   };
 
   patches = lib.optional stdenv.isDarwin ./darwin.patch;
diff --git a/nixpkgs/pkgs/applications/misc/buku/default.nix b/nixpkgs/pkgs/applications/misc/buku/default.nix
index 68b4f7b3e560..e8b8714ca2ab 100644
--- a/nixpkgs/pkgs/applications/misc/buku/default.nix
+++ b/nixpkgs/pkgs/applications/misc/buku/default.nix
@@ -1,20 +1,41 @@
 { lib, python3, fetchFromGitHub }:
 
-with python3.pkgs; buildPythonApplication rec {
-  version = "4.5";
+let
+  python3' = python3.override {
+    packageOverrides = self: super: {
+      sqlalchemy = super.sqlalchemy.overridePythonAttrs (oldAttrs: rec {
+        version = "1.3.24";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "ebbb777cbf9312359b897bf81ba00dae0f5cb69fba2a18265dcc18a6f5ef7519";
+        };
+      });
+      sqlalchemy-utils = super.sqlalchemy-utils.overridePythonAttrs (oldAttrs: rec {
+        version = "0.36.6";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "0srs5w486wp5zydjs70igi5ypgxhm6h73grb85jz03fqpqaanzvs";
+        };
+      });
+    };
+  };
+in
+with python3'.pkgs; buildPythonApplication rec {
+  version = "4.6";
   pname = "buku";
 
   src = fetchFromGitHub {
     owner = "jarun";
     repo = "buku";
     rev = "v${version}";
-    sha256 = "1lcq5fk8d5j2kfhn9m5l2hk46v7nj4vfa22m1psz35c9zpw4px8q";
+    sha256 = "sha256-hr9qiP7SbloigDcs+6KVWu0SOlggMaBr7CCfY8zoJG0=";
   };
 
   checkInputs = [
-    pytestcov
+    pytest-cov
     hypothesis
     pytest
+    pytest-vcr
     pylint
     flake8
     pyyaml
@@ -55,8 +76,8 @@ with python3.pkgs; buildPythonApplication rec {
     # Disables a test which requires internet
     substituteInPlace tests/test_bukuDb.py \
       --replace "@pytest.mark.slowtest" "@unittest.skip('skipping')" \
-      --replace "self.assertEqual(shorturl, 'http://tny.im/yt')" "" \
-      --replace "self.assertEqual(url, 'https://www.google.com')" ""
+      --replace "self.assertEqual(shorturl, \"http://tny.im/yt\")" "" \
+      --replace "self.assertEqual(url, \"https://www.google.com\")" ""
     substituteInPlace setup.py \
       --replace mypy-extensions==0.4.1 mypy-extensions>=0.4.1
   '';
@@ -75,7 +96,7 @@ with python3.pkgs; buildPythonApplication rec {
     homepage = "https://github.com/jarun/Buku";
     license = licenses.gpl3;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ matthiasbeyer infinisil ];
+    maintainers = with maintainers; [ matthiasbeyer infinisil ma27 ];
   };
 }
 
diff --git a/nixpkgs/pkgs/applications/misc/cherrytree/default.nix b/nixpkgs/pkgs/applications/misc/cherrytree/default.nix
index ef307ce3460b..daef73a56796 100644
--- a/nixpkgs/pkgs/applications/misc/cherrytree/default.nix
+++ b/nixpkgs/pkgs/applications/misc/cherrytree/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cherrytree";
-  version = "0.99.38";
+  version = "0.99.39";
 
   src = fetchFromGitHub {
     owner = "giuspen";
     repo = "cherrytree";
     rev = version;
-    sha256 = "sha256-04MRw6pMtJGxTMKwOzPNGg1T85SfVY5bMkF3gt2V0e0=";
+    sha256 = "sha256-QSRYtnZxLAaq42PvPd5+LxSzq/Hd/Cz5bquBTiGWnAE=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/misc/clight/clightd.nix b/nixpkgs/pkgs/applications/misc/clight/clightd.nix
index 192cddc2e172..7b52145f794b 100644
--- a/nixpkgs/pkgs/applications/misc/clight/clightd.nix
+++ b/nixpkgs/pkgs/applications/misc/clight/clightd.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "clightd";
-  version = "5.3";
+  version = "5.4";
 
   src = fetchFromGitHub {
     owner = "FedeDP";
     repo = "Clightd";
     rev = version;
-    sha256 = "sha256-CuTYCNZ9oiDsm5mUDmjbxkmAl61PEXv3WMrZRzgdZeE=";
+    sha256 = "sha256-ppaxfnZB3+aOzvc/wk1f8D2mFYngQspEOl9XArNMdBE=";
   };
 
   # dbus-1.pc has datadir=/etc
diff --git a/nixpkgs/pkgs/applications/misc/cobalt/default.nix b/nixpkgs/pkgs/applications/misc/cobalt/default.nix
index a9ccc6a8f870..6e13cc4728e8 100644
--- a/nixpkgs/pkgs/applications/misc/cobalt/default.nix
+++ b/nixpkgs/pkgs/applications/misc/cobalt/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, rustPlatform }:
+{ lib, stdenv, fetchFromGitHub, rustPlatform, CoreServices }:
 
 rustPlatform.buildRustPackage rec {
   pname = "cobalt";
@@ -13,10 +13,13 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "27LcoGBI4elt80uQkTwvToOyEmd2+/3ma5Y32OFrJaw=";
 
+  buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
+
   meta = with lib; {
     description = "Static site generator written in Rust";
     homepage = "https://github.com/cobalt-org/cobalt.rs/";
     license = licenses.mit;
     maintainers = with maintainers; [ ethancedwards8 ];
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/copyq/default.nix b/nixpkgs/pkgs/applications/misc/copyq/default.nix
index de1dacd50c2e..5c96a3282243 100644
--- a/nixpkgs/pkgs/applications/misc/copyq/default.nix
+++ b/nixpkgs/pkgs/applications/misc/copyq/default.nix
@@ -1,32 +1,68 @@
-{ lib, mkDerivation, fetchFromGitHub, cmake
-, qtbase, qtscript, qtwebkit, libXfixes, libXtst, qtx11extras, git
-, webkitSupport ? true
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, cmake
+, extra-cmake-modules
+, qtbase
+, qtscript
+, libXfixes
+, libXtst
+, qtx11extras
+, git
+, knotifications
+, qtwayland
+, wayland
+, fetchpatch
 }:
 
 mkDerivation rec {
   pname = "CopyQ";
-  version = "3.13.0";
+  version = "4.1.0";
 
-  src  = fetchFromGitHub {
+  src = fetchFromGitHub {
     owner = "hluk";
     repo = "CopyQ";
     rev = "v${version}";
-    sha256 = "0qssyavx0dkgsyj2myqg8n7sih8niy960nyb1yknsbjm37iqraah";
+    sha256 = "1iacnd9dn0mrajff80r2g5nlks5sch9lmpl633mnyqmih9dwx2li";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [
+    cmake
+    extra-cmake-modules
+  ];
 
   buildInputs = [
-    git qtbase qtscript libXfixes libXtst qtx11extras
-  ] ++ lib.optional webkitSupport qtwebkit;
+    qtbase
+    qtscript
+    libXfixes
+    libXtst
+    qtx11extras
+    knotifications
+    qtwayland
+    wayland
+  ];
+
+  patches = [
+    # Install the bash completion script correctly
+    # Remove once 4.1.1 is released
+    (fetchpatch {
+      url = "https://github.com/hluk/CopyQ/commit/aca7222ec28589af0b08f63686104b992d63ee42.patch";
+      sha256 = "0d440d0zsdzm9cd0b6c42y9qbrvxg7gdam0qmif62mr8qa0ylidl";
+    })
+  ];
+
+  postPatch = ''
+    substituteInPlace shared/com.github.hluk.copyq.desktop.in \
+      --replace copyq "$out/bin/copyq"
+  '';
 
   meta = with lib; {
-    homepage    = "https://hluk.github.io/CopyQ";
+    homepage = "https://hluk.github.io/CopyQ";
     description = "Clipboard Manager with Advanced Features";
-    license     = licenses.gpl3;
-    maintainers = [ maintainers.willtim ];
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ willtim artturin ];
     # NOTE: CopyQ supports windows and osx, but I cannot test these.
     # OSX build requires QT5.
-    platforms   = platforms.linux;
+    platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/coursera-dl/default.nix b/nixpkgs/pkgs/applications/misc/coursera-dl/default.nix
index 56938f5338dc..954501c0b7fe 100644
--- a/nixpkgs/pkgs/applications/misc/coursera-dl/default.nix
+++ b/nixpkgs/pkgs/applications/misc/coursera-dl/default.nix
@@ -18,7 +18,7 @@ in pythonPackages.buildPythonApplication rec {
 
   buildInputs = with pythonPackages; [ glibcLocales ];
 
-  propagatedBuildInputs = with pythonPackages; [ attrs beautifulsoup4 ConfigArgParse keyring pyasn1 requests six urllib3 ];
+  propagatedBuildInputs = with pythonPackages; [ attrs beautifulsoup4 configargparse keyring pyasn1 requests six urllib3 ];
 
   checkInputs = with pythonPackages; [ pytest mock ];
 
diff --git a/nixpkgs/pkgs/applications/misc/diffpdf/default.nix b/nixpkgs/pkgs/applications/misc/diffpdf/default.nix
index 30715dd51f35..0eb432bc734d 100644
--- a/nixpkgs/pkgs/applications/misc/diffpdf/default.nix
+++ b/nixpkgs/pkgs/applications/misc/diffpdf/default.nix
@@ -54,6 +54,5 @@ mkDerivation rec {
     license = lib.licenses.gpl2Plus;
     maintainers = with lib.maintainers; [ tstrobel ];
     platforms = with lib.platforms; linux;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/dmenu/wayland.nix b/nixpkgs/pkgs/applications/misc/dmenu/wayland.nix
index 8d77588ce8f1..6b8f92ddb1c2 100644
--- a/nixpkgs/pkgs/applications/misc/dmenu/wayland.nix
+++ b/nixpkgs/pkgs/applications/misc/dmenu/wayland.nix
@@ -1,5 +1,6 @@
 { lib, stdenv, fetchFromGitHub, meson, ninja, cairo, pango, pkg-config, wayland-protocols
-, glib, wayland, libxkbcommon, makeWrapper
+, glib, wayland, libxkbcommon, makeWrapper, wayland-scanner
+, fetchpatch
 }:
 
 stdenv.mkDerivation rec {
@@ -15,9 +16,19 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "man" ];
 
-  nativeBuildInputs = [ meson ninja pkg-config makeWrapper ];
+  depsBuildBuild = [ pkg-config ];
+  nativeBuildInputs = [ meson ninja pkg-config makeWrapper wayland-scanner ];
   buildInputs = [ cairo pango wayland-protocols glib wayland libxkbcommon ];
 
+  # Patch to support cross-compilation, see https://github.com/nyyManni/dmenu-wayland/pull/23/
+  patches = [
+    # can be removed when https://github.com/nyyManni/dmenu-wayland/pull/23 is included
+    (fetchpatch {
+      url = "https://github.com/nyyManni/dmenu-wayland/commit/3434410de5dcb007539495395f7dc5421923dd3a.patch";
+      sha256 = "sha256-im16kU8RWrCY0btYOYjDp8XtfGEivemIPlhwPX0C77o=";
+    })
+  ];
+
   postInstall = ''
     wrapProgram $out/bin/dmenu-wl_run \
       --prefix PATH : $out/bin
diff --git a/nixpkgs/pkgs/applications/misc/dnd-tools/default.nix b/nixpkgs/pkgs/applications/misc/dnd-tools/default.nix
new file mode 100644
index 000000000000..3b0d0ec90e25
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/dnd-tools/default.nix
@@ -0,0 +1,28 @@
+{ python3, fetchFromGitHub, fetchpatch, lib }:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "dnd-tools";
+  version = "unstable-2021-02-18";
+
+  src = fetchFromGitHub {
+    owner = "savagezen";
+    repo = pname;
+    rev = "baefb9e4b4b8279be89ec63d256dde9704dee078";
+    sha256 = "1rils3gzbfmwvgy51ah77qihwwbvx50q82lkc1kwcb55b3yinnmj";
+  };
+
+  # gives warning every time unless patched, see https://github.com/savagezen/dnd-tools/pull/20
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/savagezen/dnd-tools/commit/0443f3a232056ad67cfb09eb3eadcb6344659198.patch";
+      sha256 = "00k8rsz2aj4sfag6l313kxbphcb5bjxb6z3aw66h26cpgm4kysp0";
+    })
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/savagezen/dnd-tools";
+    description = "A set of interactive command line tools for Dungeons and Dragons 5th Edition";
+    license = licenses.agpl3Only;
+    maintainers = [ maintainers.urlordjames ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/misc/dstask/default.nix b/nixpkgs/pkgs/applications/misc/dstask/default.nix
index cd1c659ec5bc..c17ed9b3af5e 100644
--- a/nixpkgs/pkgs/applications/misc/dstask/default.nix
+++ b/nixpkgs/pkgs/applications/misc/dstask/default.nix
@@ -36,7 +36,7 @@ buildGoModule rec {
     description = "Command line todo list with super-reliable git sync";
     homepage = src.meta.homepage;
     license = licenses.mit;
-    maintainers = with maintainers; [ stianlagstad foxit64 ];
+    maintainers = with maintainers; [ stianlagstad ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/electrum/default.nix b/nixpkgs/pkgs/applications/misc/electrum/default.nix
index 4197c1af040b..28c965a72b5c 100644
--- a/nixpkgs/pkgs/applications/misc/electrum/default.nix
+++ b/nixpkgs/pkgs/applications/misc/electrum/default.nix
@@ -20,7 +20,7 @@
 }:
 
 let
-  version = "4.1.3";
+  version = "4.1.5";
 
   libsecp256k1_name =
     if stdenv.isLinux then "libsecp256k1.so.0"
@@ -36,7 +36,7 @@ let
     owner = "spesmilo";
     repo = "electrum";
     rev = version;
-    sha256 = "1nkcybalkfna9zn33dxm13ic3brj50cfzwspjl349rgyar07j781";
+    sha256 = "1ps8yaps5kfd7yv7bpdvssbwm6f5qivxcvhwn17cpddc2760a7nk";
 
     extraPostFetch = ''
       mv $out ./all
@@ -51,7 +51,7 @@ python3.pkgs.buildPythonApplication {
 
   src = fetchurl {
     url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
-    sha256 = "1mlwpmgfm3n45agx65jzsi4dr8nxf95x7nl01jnwa3qk5krrv4cf";
+    sha256 = "188r4zji985z8pm9b942xhmvv174yndk6jxagxl7ljk03wl2wiwi";
   };
 
   postUnpack = ''
@@ -154,6 +154,8 @@ python3.pkgs.buildPythonApplication {
       of the blockchain.
     '';
     homepage = "https://electrum.org/";
+    downloadPage = "https://electrum.org/#download";
+    changelog = "https://github.com/spesmilo/electrum/blob/master/RELEASE-NOTES";
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = with maintainers; [ joachifm np prusnak ];
diff --git a/nixpkgs/pkgs/applications/misc/formatter/default.nix b/nixpkgs/pkgs/applications/misc/formatter/default.nix
index 26c6a8cbc708..e8f329ecb0da 100644
--- a/nixpkgs/pkgs/applications/misc/formatter/default.nix
+++ b/nixpkgs/pkgs/applications/misc/formatter/default.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "formatter";
-  version = "0.3.2";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "Djaler";
     repo = "Formatter";
     rev = version;
-    sha256 = "0da1dvzsvbwg1ys19yf0n080xc0hjwin9zacjndb24jvphy3bxql";
+    sha256 = "sha256-8lZ0jUwHuc3Kntz73Btj6dJvkW2bvShu2KWTSQszbJo=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/applications/misc/freeplane/default.nix b/nixpkgs/pkgs/applications/misc/freeplane/default.nix
index 0568198f41d9..f9c04fedfdd9 100644
--- a/nixpkgs/pkgs/applications/misc/freeplane/default.nix
+++ b/nixpkgs/pkgs/applications/misc/freeplane/default.nix
@@ -86,8 +86,7 @@ let
 in stdenv.mkDerivation rec {
   inherit pname version src;
 
-  buildInputs = [ makeWrapper ];
-  nativeBuildInputs = [ jdk11 gradle_5 ];
+  nativeBuildInputs = [ makeWrapper jdk11 gradle_5 ];
 
   buildPhase = ''
     mkdir -p -- ./freeplane/build/emoji/{txt,resources/images}
diff --git a/nixpkgs/pkgs/applications/misc/gallery-dl/default.nix b/nixpkgs/pkgs/applications/misc/gallery-dl/default.nix
index 5cfca0b4a2bb..b617e7b2ea19 100644
--- a/nixpkgs/pkgs/applications/misc/gallery-dl/default.nix
+++ b/nixpkgs/pkgs/applications/misc/gallery-dl/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonApplication rec {
   pname = "gallery_dl";
-  version = "1.18.0";
+  version = "1.18.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a0658cd2b629ec5b24b9a893056ce7224088ee5eb760f30642131a8df0279131";
+    sha256 = "1e231ed7122a753430d92f8c6240a99defa2b307d57f1a4cc3e48910269331a9";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/nixpkgs/pkgs/applications/misc/gcal/default.nix b/nixpkgs/pkgs/applications/misc/gcal/default.nix
index 28de8e0eceae..da190218d095 100644
--- a/nixpkgs/pkgs/applications/misc/gcal/default.nix
+++ b/nixpkgs/pkgs/applications/misc/gcal/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, ncurses, fetchpatch }:
+{ lib, stdenv, fetchurl, ncurses, gettext, fetchpatch }:
 
 stdenv.mkDerivation rec {
   pname = "gcal";
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  buildInputs = [ ncurses ];
+  buildInputs = [ ncurses ] ++ lib.optional stdenv.isDarwin gettext;
 
   meta = {
     description = "Program for calculating and printing calendars";
diff --git a/nixpkgs/pkgs/applications/misc/gcalcli/default.nix b/nixpkgs/pkgs/applications/misc/gcalcli/default.nix
index 23e42539d799..90b4883ec290 100644
--- a/nixpkgs/pkgs/applications/misc/gcalcli/default.nix
+++ b/nixpkgs/pkgs/applications/misc/gcalcli/default.nix
@@ -33,6 +33,5 @@ buildPythonApplication rec {
     homepage = "https://github.com/insanum/gcalcli";
     license = licenses.mit;
     maintainers = with maintainers; [ nocoolnametom ];
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/getxbook/default.nix b/nixpkgs/pkgs/applications/misc/getxbook/default.nix
index 15b7c37244fd..6ac5f2327f02 100644
--- a/nixpkgs/pkgs/applications/misc/getxbook/default.nix
+++ b/nixpkgs/pkgs/applications/misc/getxbook/default.nix
@@ -27,6 +27,5 @@ stdenv.mkDerivation rec {
     license     = licenses.isc;
     maintainers = with maintainers; [ obadz ];
     platforms   = platforms.all;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/girara/default.nix b/nixpkgs/pkgs/applications/misc/girara/default.nix
index 6fde2c8fac8b..802c1532979b 100644
--- a/nixpkgs/pkgs/applications/misc/girara/default.nix
+++ b/nixpkgs/pkgs/applications/misc/girara/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "girara";
-  version = "0.3.5";
+  version = "0.3.6";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "https://git.pwmt.org/pwmt/${pname}/-/archive/${version}/${pname}-${version}.tar.gz";
-    sha256 = "1n3i960b458172mc3pkq7m9dn5qxry6fms3c3k06v27cjp5whsyf";
+    sha256 = "sha256-GPECj0CVxKh+gTfAkkvs13tdiy93il97iqbSTxLQSiM=";
   };
 
   nativeBuildInputs = [ meson ninja pkg-config gettext check dbus ];
diff --git a/nixpkgs/pkgs/applications/misc/gmnitohtml/default.nix b/nixpkgs/pkgs/applications/misc/gmnitohtml/default.nix
new file mode 100644
index 000000000000..a4b6f9403c64
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/gmnitohtml/default.nix
@@ -0,0 +1,46 @@
+{ lib, buildGoModule, fetchFromSourcehut, scdoc, installShellFiles }:
+
+buildGoModule rec {
+  pname = "gmnitohtml";
+  version = "0.1.1";
+
+  src = fetchFromSourcehut {
+    owner = "~adnano";
+    repo = pname;
+    rev = version;
+    hash = "sha256-XcHJbqmfSkW6lt2xRlrf9AJfwLOZqdgsL1v0aK2bQwo=";
+  };
+  vendorSha256 = "sha256-Cx8x8AISRVTA4Ufd73vOVky97LX23NkizHDingr/zVk=";
+
+  ldflags = [ "-s" "-w" ];
+
+  # Build and install the man pages
+  nativeBuildInputs = [ scdoc installShellFiles ];
+
+  postBuild = ''
+    make gmnitohtml.1
+  '';
+
+  postInstall = ''
+    installManPage gmnitohtml.1
+  '';
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    runHook preInstallCheck
+    $out/bin/gmnitohtml --help
+    runHook postInstallCheck
+  '';
+
+  meta = with lib; {
+    homepage = "https://git.sr.ht/~adnano/gmnitohtml";
+    changelog = "https://git.sr.ht/~adnano/gmnitohtml/log";
+    description = "Gemini text to HTML converter";
+    longDescription = ''
+      he gmnitohtml utility reads Gemini text from the standard input and writes
+      HTML to the standard output.
+    '';
+    license = licenses.mit;
+    maintainers = with maintainers; [ jk sikmir ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/misc/golden-cheetah/default.nix b/nixpkgs/pkgs/applications/misc/golden-cheetah/default.nix
index c3b9a3226a3c..53c0a96060e7 100644
--- a/nixpkgs/pkgs/applications/misc/golden-cheetah/default.nix
+++ b/nixpkgs/pkgs/applications/misc/golden-cheetah/default.nix
@@ -1,6 +1,6 @@
 { lib, fetchFromGitHub, fetchpatch, mkDerivation
 , qtbase, qtsvg, qtserialport, qtwebengine, qtmultimedia, qttools
-, qtconnectivity, qtcharts, libusb-compat-0_1
+, qtconnectivity, qtcharts, libusb-compat-0_1, gsl, blas
 , bison, flex, zlib, qmake, makeDesktopItem, makeWrapper
 }:
 
@@ -16,18 +16,18 @@ let
   };
 in mkDerivation rec {
   pname = "golden-cheetah";
-  version = "3.5";
+  version = "3.6-DEV2107";
 
   src = fetchFromGitHub {
     owner = "GoldenCheetah";
     repo = "GoldenCheetah";
-    rev = "V${version}";
-    sha256 = "1lyd0b2s3s9c2ppj7l4hf3s4gfzscaaam2pbiaby714bi9nr0ka7";
+    rev = "v${version}";
+    sha256 = "1d54x3pv27w1ys2f5l7gnfhyijhgcgdjnq1c1mj7hvg35dmh054d";
   };
 
   buildInputs = [
     qtbase qtsvg qtserialport qtwebengine qtmultimedia qttools zlib
-    qtconnectivity qtcharts libusb-compat-0_1
+    qtconnectivity qtcharts libusb-compat-0_1 gsl blas
   ];
   nativeBuildInputs = [ flex makeWrapper qmake bison ];
 
@@ -40,9 +40,9 @@ in mkDerivation rec {
     })
   ];
 
-  NIX_LDFLAGS = "-lz";
+  NIX_LDFLAGS = "-lz -lgsl -lblas";
 
-  qtWrapperArgs = [ "--set LD_LIBRARY_PATH ${zlib.out}/lib" ];
+  qtWrapperArgs = [ "--prefix" "LD_LIBRARY_PATH" ":" "${zlib.out}/lib" ];
 
   preConfigure = ''
     cp src/gcconfig.pri.in src/gcconfig.pri
@@ -52,10 +52,6 @@ in mkDerivation rec {
     echo 'LIBUSB_INCLUDE = ${libusb-compat-0_1.dev}/include' >> src/gcconfig.pri
     echo 'LIBUSB_LIBS = -L${libusb-compat-0_1}/lib -lusb' >> src/gcconfig.pri
     sed -i -e '21,23d' qwt/qwtconfig.pri # Removed forced installation to /usr/local
-
-    # Use qtwebengine instead of qtwebkit
-    substituteInPlace src/gcconfig.pri \
-      --replace "#DEFINES += NOWEBKIT" "DEFINES += NOWEBKIT"
   '';
 
   installPhase = ''
@@ -73,6 +69,6 @@ in mkDerivation rec {
     description = "Performance software for cyclists, runners and triathletes";
     platforms = platforms.linux;
     maintainers = [ ];
-    license = licenses.gpl3;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/gopacked/default.nix b/nixpkgs/pkgs/applications/misc/gopacked/default.nix
index 57f6be40ab02..42b886e4c72b 100644
--- a/nixpkgs/pkgs/applications/misc/gopacked/default.nix
+++ b/nixpkgs/pkgs/applications/misc/gopacked/default.nix
@@ -19,7 +19,6 @@ buildGoModule rec {
     description = "A simple text-based Minecraft modpack manager";
     license = licenses.agpl3;
     homepage = src.meta.homepage;
-    maintainers = with maintainers; [ foxit64 ];
+    maintainers = with maintainers; [ ];
   };
-
 }
diff --git a/nixpkgs/pkgs/applications/misc/grip/default.nix b/nixpkgs/pkgs/applications/misc/grip/default.nix
index a30778762b27..c182db8fdd3a 100644
--- a/nixpkgs/pkgs/applications/misc/grip/default.nix
+++ b/nixpkgs/pkgs/applications/misc/grip/default.nix
@@ -15,11 +15,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "grip-4.2.1";
+  name = "grip-4.2.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/grip/${name}.tar.gz";
-    sha256 = "sha256-3bFJURPbq9rzLsJCppRjSARhcOJxC4eSfw5VxvZgQ3Q=";
+    sha256 = "sha256-nXtGgJeNYM8lyllNi9UdmsnVcHOCXfryWmKGZ9QFTHE=";
   };
 
   nativeBuildInputs = [ pkg-config libtool ];
diff --git a/nixpkgs/pkgs/applications/misc/gummi/default.nix b/nixpkgs/pkgs/applications/misc/gummi/default.nix
index a98017f095cb..8943fc17de43 100644
--- a/nixpkgs/pkgs/applications/misc/gummi/default.nix
+++ b/nixpkgs/pkgs/applications/misc/gummi/default.nix
@@ -32,6 +32,5 @@ stdenv.mkDerivation rec {
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ flokli ];
     platforms = with lib.platforms; linux;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/heimer/default.nix b/nixpkgs/pkgs/applications/misc/heimer/default.nix
index 3fd80d4eff3e..d3d369368af7 100644
--- a/nixpkgs/pkgs/applications/misc/heimer/default.nix
+++ b/nixpkgs/pkgs/applications/misc/heimer/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "heimer";
-  version = "2.5.0";
+  version = "2.6.0";
 
   src = fetchFromGitHub {
     owner = "juzzlin";
     repo = pname;
     rev = version;
-    sha256 = "sha256-CY7n9eq/FtQ6srZ9L31nJi0b9rOQq60kNOY3iTFws/E=";
+    sha256 = "sha256-VSj6bSb92XMsfvDH+cey2GXLnJajUBaCqLMgkv2fnSo=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/applications/misc/inkcut/default.nix b/nixpkgs/pkgs/applications/misc/inkcut/default.nix
index 4ca373ee2751..300423cb7f67 100644
--- a/nixpkgs/pkgs/applications/misc/inkcut/default.nix
+++ b/nixpkgs/pkgs/applications/misc/inkcut/default.nix
@@ -2,6 +2,7 @@
 , python3Packages
 , fetchFromGitHub
 , wrapQtAppsHook
+, cups
 }:
 
 with python3Packages;
@@ -17,6 +18,11 @@ buildPythonApplication rec {
     sha256 = "0px0xdv6kyzkkpmvryrdfavv1qy2xrqdxkpmhvx1gj649xcabv32";
   };
 
+  postPatch = ''
+    substituteInPlace inkcut/device/transports/printer/plugin.py \
+      --replace ", 'lpr', " ", '${cups}/bin/lpr', "
+  '';
+
   nativeBuildInputs = [ wrapQtAppsHook ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/misc/ipmiview/default.nix b/nixpkgs/pkgs/applications/misc/ipmiview/default.nix
index 0c7fc750cfd5..92491f4508e7 100644
--- a/nixpkgs/pkgs/applications/misc/ipmiview/default.nix
+++ b/nixpkgs/pkgs/applications/misc/ipmiview/default.nix
@@ -13,12 +13,12 @@
 
 stdenv.mkDerivation rec {
   pname = "IPMIView";
-  version = "2.18.0";
-  buildVersion = "201007";
+  version = "2.19.0";
+  buildVersion = "210401";
 
   src = fetchurl {
     url = "https://www.supermicro.com/wftp/utility/IPMIView/Linux/IPMIView_${version}_build.${buildVersion}_bundleJRE_Linux_x64.tar.gz";
-    sha256 = "10cv63yhh81gjxahsg4y3zp4mjivc217m4z1vcpwvvnds46c65h8";
+    sha256 = "sha256-6hxOu/Wkcrp9MaMYlxOR2DZW21Wi3BIFZp3Vm8NRBWs=";
   };
 
   nativeBuildInputs = [ patchelf makeWrapper ];
@@ -29,10 +29,14 @@ stdenv.mkDerivation rec {
       else throw "IPMIView is not supported on this platform";
     in
   ''
-    patchelf --set-rpath "${lib.makeLibraryPath [ libX11 libXext libXrender libXtst libXi ]}" ./jre/lib/amd64/libawt_xawt.so
-    patchelf --set-rpath "${lib.makeLibraryPath [ freetype ]}" ./jre/lib/amd64/libfontmanager.so
-    patchelf --set-rpath "${gcc.cc}/lib:$out/jre/lib/amd64/jli" --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" ./jre/bin/java
+    runHook preBuild
+
+    patchelf --set-rpath "${lib.makeLibraryPath [ libX11 libXext libXrender libXtst libXi ]}" ./jre/lib/libawt_xawt.so
+    patchelf --set-rpath "${lib.makeLibraryPath [ freetype ]}" ./jre/lib/libfontmanager.so
+    patchelf --set-rpath "${gcc.cc}/lib:$out/jre/lib/jli" --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" ./jre/bin/java
     patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" ./BMCSecurity/${stunnelBinary}
+
+    runHook postBuild
   '';
 
   desktopItem = makeDesktopItem rec {
@@ -44,6 +48,8 @@ stdenv.mkDerivation rec {
   };
 
   installPhase = ''
+    runHook preInstall
+
     mkdir -p $out/bin
     cp -R . $out/
 
@@ -61,6 +67,8 @@ stdenv.mkDerivation rec {
              mkdir -p $WORK_DIR
              ln -snf '$out'/iKVM.jar '$out'/iKVM_ssl.jar '$out'/libiKVM* '$out'/libSharedLibrary* $WORK_DIR
              cd $WORK_DIR'
+
+    runHook postInstall
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/misc/jiten/default.nix b/nixpkgs/pkgs/applications/misc/jiten/default.nix
index 5447a2b30506..efd28fabae3a 100644
--- a/nixpkgs/pkgs/applications/misc/jiten/default.nix
+++ b/nixpkgs/pkgs/applications/misc/jiten/default.nix
@@ -1,26 +1,35 @@
 { lib
 , fetchFromGitHub
-, python3Packages
+, python3
+, bash
 , makeWrapper
+, kanjidraw
 , pcre
 , sqlite
 , nodejs
 }:
 
-python3Packages.buildPythonApplication rec {
+python3.pkgs.buildPythonApplication rec {
   pname = "jiten";
-  version = "1.0.0";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "obfusk";
     repo = "jiten";
     rev = "v${version}";
-    sha256 = "1lg1n7f4383jdlkbma0q65yl6l159wgh886admcq7l7ap26zpqd2";
+    sha256 = "13bdx136sirbhxdhvpq5kf0r6q1xvm5zyzp454z51gy0v6rn0qrp";
+  };
+
+  nonFreeData = fetchFromGitHub {
+    owner = "obfusk";
+    repo = "jiten-nonfree-data";
+    rev = "v${version}";
+    sha256 = "16sz8i0sw7ggy6kijcx4qyl2zr6xj789x4iav0yyllx12dfgp5b1";
   };
 
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ pcre sqlite ];
-  propagatedBuildInputs = with python3Packages; [ click flask ];
+  propagatedBuildInputs = with python3.pkgs; [ click flask kanjidraw ];
   checkInputs = [ nodejs ];
 
   preBuild = ''
@@ -29,11 +38,16 @@ python3Packages.buildPythonApplication rec {
   '';
 
   postPatch = ''
-    substituteInPlace Makefile                  --replace /bin/bash "$(command -v bash)"
-    substituteInPlace jiten/res/jmdict/Makefile --replace /bin/bash "$(command -v bash)"
+    rmdir nonfree-data
+    ln -s ${nonFreeData} nonfree-data
+    substituteInPlace Makefile --replace /bin/bash ${bash}/bin/bash
+    substituteInPlace jiten/res/jmdict/Makefile \
+      --replace /bin/bash ${bash}/bin/bash
   '';
 
-  checkPhase = "make test";
+  checkPhase = ''
+    make test
+  '';
 
   postInstall = ''
     # requires pywebview
@@ -59,7 +73,8 @@ python3Packages.buildPythonApplication rec {
       • readings (romaji optional), meanings (english), jmdict entries, radicals & more
       • search using SKIP codes
       • search by radical
-      • browse by frequency/level/jlpt
+      • handwritten kanji recognition
+      • browse by frequency/level/jlpt/SKIP
 
       Example sentences (from Tatoeba)
       • with english, dutch, german, french and/or spanish translation
@@ -83,9 +98,8 @@ python3Packages.buildPythonApplication rec {
     license = with licenses; [
       agpl3Plus               # code
       cc-by-sa-30             # jmdict/kanjidic
-      unfreeRedistributable   # pitch data from wadoku is non-commercial :(
+      unfreeRedistributable   # pitch data & audio are non-commercial
     ];
     maintainers = [ maintainers.obfusk ];
-    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/joplin-desktop/default.nix b/nixpkgs/pkgs/applications/misc/joplin-desktop/default.nix
index 2d9a2ca59045..527c2f3bab11 100644
--- a/nixpkgs/pkgs/applications/misc/joplin-desktop/default.nix
+++ b/nixpkgs/pkgs/applications/misc/joplin-desktop/default.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "joplin-desktop";
-  version = "1.8.5";
+  version = "2.1.9";
   name = "${pname}-${version}";
 
   inherit (stdenv.hostPlatform) system;
@@ -16,8 +16,8 @@ let
   src = fetchurl {
     url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}.${suffix}";
     sha256 = {
-      x86_64-linux = "11csbr72i5kac2bk7wpa877lay2z1n58s0yildkfnjy552ihdxny";
-      x86_64-darwin = "1n0ni3ixml99ag83bcn5wg6f0kldjhwkkddd9km37ykr8vxxl952";
+      x86_64-linux = "1s7zydi90yzafii42m3aaf3niqlmdy2m494j2b3yrz2j26njj4q9";
+      x86_64-darwin = "1pvl08yhcrnrvdybfmkigaidhfrrg42bb6rzv96zyq9w4k0l0lm8";
     }.${system} or throwSystem;
   };
 
diff --git a/nixpkgs/pkgs/applications/misc/khal/default.nix b/nixpkgs/pkgs/applications/misc/khal/default.nix
index c7c184febe17..8ad7578adebb 100644
--- a/nixpkgs/pkgs/applications/misc/khal/default.nix
+++ b/nixpkgs/pkgs/applications/misc/khal/default.nix
@@ -20,7 +20,7 @@ with python3.pkgs; buildPythonApplication rec {
     pkgs.vdirsyncer
     pytz
     pyxdg
-    requests_toolbelt
+    requests-toolbelt
     tzlocal
     urwid
     pkginfo
diff --git a/nixpkgs/pkgs/applications/misc/logseq/default.nix b/nixpkgs/pkgs/applications/misc/logseq/default.nix
index d28a12396ee1..7367d18ddf8b 100644
--- a/nixpkgs/pkgs/applications/misc/logseq/default.nix
+++ b/nixpkgs/pkgs/applications/misc/logseq/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "logseq";
-  version = "0.2.2";
+  version = "0.2.6";
 
   src = fetchurl {
     url = "https://github.com/logseq/logseq/releases/download/${version}/logseq-linux-x64-${version}.AppImage";
-    sha256 = "03l5w0fg3laiz85k4g4w98ngaziyfr9s24xshjrfl71q6r9s813m";
+    sha256 = "/tpegRGyGPviYpaSbWw7fH9ntvR7vUSD5rmwDMST5+Y=";
     name = "${pname}-${version}.AppImage";
   };
 
diff --git a/nixpkgs/pkgs/applications/misc/mako/default.nix b/nixpkgs/pkgs/applications/misc/mako/default.nix
index f28292cb2f16..8f984db7df52 100644
--- a/nixpkgs/pkgs/applications/misc/mako/default.nix
+++ b/nixpkgs/pkgs/applications/misc/mako/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mako";
-  version = "1.5";
+  version = "1.6";
 
   src = fetchFromGitHub {
     owner = "emersion";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0f92krcgybl4113g2gawf7lcbh1fss7bq4cx81h1zyn7yvxlwx2b";
+    sha256 = "sha256-RcPwZ5NeO9vxwPWfgj5x3wVdCYGKumnYT3ngHEAWfW0=";
   };
 
   nativeBuildInputs = [ meson ninja pkg-config scdoc wayland-protocols wrapGAppsHook ];
diff --git a/nixpkgs/pkgs/applications/misc/mnamer/default.nix b/nixpkgs/pkgs/applications/misc/mnamer/default.nix
new file mode 100644
index 000000000000..dd634ae7f137
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/mnamer/default.nix
@@ -0,0 +1,46 @@
+{ python3Packages, fetchFromGitHub, lib }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "mnamer";
+  version = "2.5.3";
+
+  src = fetchFromGitHub {
+    owner = "jkwill87";
+    repo = "mnamer";
+    rev = version;
+    sha256 = "1frrvfhp85fh82yw9yb6n61by8qp1v7f3c0f623njxk1afawhccd";
+  };
+
+  propagatedBuildInputs = with python3Packages; [
+    babelfish
+    requests
+    appdirs
+    teletype
+    requests-cache
+    guessit
+  ];
+
+  patches = [
+    # requires specific old versions of dependencies which have been updated in nixpkgs
+    ./remove_requirements.patch
+
+    # author reads a private property that changed between versions
+    ./update_hack.patch
+  ];
+
+  checkInputs = [ python3Packages.pytestCheckHook ];
+
+  # disable test that fail (networking, etc)
+  disabledTests = [
+    "network"
+    "e2e"
+    "test_utils.py"
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/jkwill87/mnamer";
+    description = "An intelligent and highly configurable media organization utility";
+    license = licenses.mit;
+    maintainers = with maintainers; [ urlordjames ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/misc/mnamer/remove_requirements.patch b/nixpkgs/pkgs/applications/misc/mnamer/remove_requirements.patch
new file mode 100644
index 000000000000..46fc0571ce5e
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/mnamer/remove_requirements.patch
@@ -0,0 +1,21 @@
+diff --git a/setup.py b/setup.py
+index 245c1dd..fdc17ab 100755
+--- a/setup.py
++++ b/setup.py
+@@ -7,16 +7,12 @@ from mnamer.__version__ import VERSION
+ with open("readme.md", "r", encoding="utf8") as fp:
+     LONG_DESCRIPTION = fp.read()
+ 
+-with open("requirements.txt", "r", encoding="utf8") as fp:
+-    REQUIREMENTS = fp.read().splitlines()
+-
+ setup(
+     author="Jessy Williams",
+     author_email="jessy@jessywilliams.com",
+     description="A media file organiser",
+     entry_points={"console_scripts": ["mnamer=mnamer.__main__:main"]},
+     include_package_data=True,
+-    install_requires=REQUIREMENTS,
+     license="MIT",
+     long_description=LONG_DESCRIPTION,
+     long_description_content_type="text/markdown",
diff --git a/nixpkgs/pkgs/applications/misc/mnamer/update_hack.patch b/nixpkgs/pkgs/applications/misc/mnamer/update_hack.patch
new file mode 100644
index 000000000000..56c83a20a9ce
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/mnamer/update_hack.patch
@@ -0,0 +1,13 @@
+diff --git a/mnamer/utils.py b/mnamer/utils.py
+index 636b596..e52bd37 100644
+--- a/mnamer/utils.py
++++ b/mnamer/utils.py
+@@ -280,7 +280,7 @@ def request_json(
+         "like Gecko) Chrome/79.0.3945.88 Safari/537.36"
+     )
+ 
+-    initial_cache_state = session._is_cache_disabled  # yes, i'm a bad person
++    initial_cache_state = session._disabled  # yes, i'm a bad person
+     try:
+         session._is_cache_disabled = not cache
+         response = session.request(
diff --git a/nixpkgs/pkgs/applications/misc/moonlight-qt/default.nix b/nixpkgs/pkgs/applications/misc/moonlight-qt/default.nix
index b02abc2f2293..0845299c55b7 100644
--- a/nixpkgs/pkgs/applications/misc/moonlight-qt/default.nix
+++ b/nixpkgs/pkgs/applications/misc/moonlight-qt/default.nix
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation rec {
   pname = "moonlight-qt";
-  version = "3.1.1";
+  version = "3.1.4";
 
   src = fetchFromGitHub {
     owner = "moonlight-stream";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1bz4wjl8zydw46bh2mdbrsx8prh2fw0cmzqliy912fdz5aal2b74";
+    sha256 = "1sg8svb6xvkczp9slqnlm0b6k0z3bzdi4zzvwzzy21kpj6im9002";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/applications/misc/neo4j-desktop/default.nix b/nixpkgs/pkgs/applications/misc/neo4j-desktop/default.nix
index 045f0db42fe8..967c3db4c651 100644
--- a/nixpkgs/pkgs/applications/misc/neo4j-desktop/default.nix
+++ b/nixpkgs/pkgs/applications/misc/neo4j-desktop/default.nix
@@ -1,21 +1,22 @@
 { appimageTools, lib, fetchurl }:
 let
   pname = "neo4j-desktop";
-  version = "1.4.5";
+  version = "1.4.7";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://s3-eu-west-1.amazonaws.com/dist.neo4j.org/${pname}/linux-offline/${name}-x86_64.AppImage";
-    sha256 = "sha256-TCkjYhvGhgqgrDEMvC4Ww/sDxRhHC70YgfDlCIFitMo";
+    hash = "sha256-oEcSW7UIeiGY2fCPJQ5EtDBRtd73Q04HaSk+7ObLKJc=";
   };
 
-  appimageContents = appimageTools.extract { inherit src; name = pname; };
+  appimageContents = appimageTools.extract { inherit name src; };
 in appimageTools.wrapType2 {
   inherit name src;
 
   extraPkgs = pkgs: with pkgs; [ libsecret ];
 
   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}'
diff --git a/nixpkgs/pkgs/applications/misc/nwg-drawer/default.nix b/nixpkgs/pkgs/applications/misc/nwg-drawer/default.nix
new file mode 100644
index 000000000000..4e6518c6ffd2
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/nwg-drawer/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, pkg-config
+, cairo
+, gobject-introspection
+, gtk3
+, gtk-layer-shell
+}:
+
+buildGoModule rec {
+  pname = "nwg-drawer";
+  version = "0.1.4";
+
+  src = fetchFromGitHub {
+    owner = "nwg-piotr";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-YjMuXSBAgRh6vZUxKHLTqT2lEU/f+AuI/dX4PHfftZg=";
+  };
+
+  vendorSha256 = "sha256-HyrjquJ91ddkyS8JijHd9HjtfwSQykXCufa2wzl8RNk=";
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ cairo gobject-introspection gtk3 gtk-layer-shell ];
+
+  meta = with lib; {
+    description = "Application drawer for sway Wayland compositor";
+    homepage = "https://github.com/nwg-piotr/nwg-drawer";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ plabadens ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/misc/nwg-wrapper/default.nix b/nixpkgs/pkgs/applications/misc/nwg-wrapper/default.nix
new file mode 100644
index 000000000000..9567b051f591
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/nwg-wrapper/default.nix
@@ -0,0 +1,41 @@
+{ lib, python3Packages, fetchFromGitHub, gtk-layer-shell, gtk3, gobject-introspection, wrapGAppsHook, wlr-randr }:
+
+python3Packages.buildPythonPackage rec {
+  pname = "nwg-wrapper";
+  version = "0.0.1";
+
+  src = fetchFromGitHub {
+    owner = "nwg-piotr";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1rpkcjr0chmgsfkan88lsi476bamg9a6y7h0x9zsh60a9rdf7dl8";
+  };
+
+  nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
+
+  buildInputs = [ gtk3 gtk-layer-shell ];
+
+  propagatedBuildInputs = with python3Packages; [ i3ipc pygobject3 ];
+
+  # ValueError: Namespace GtkLayerShell not available
+  strictDeps = false;
+
+  # No tests
+  doCheck = false;
+
+  preFixup = ''
+    makeWrapperArgs+=(
+      "''${gappsWrapperArgs[@]}"
+      --prefix PATH : "${lib.makeBinPath [ wlr-randr ]}"
+    )
+  '';
+
+  pythonImportsCheck = [ "nwg_wrapper" ];
+
+  meta = with lib; {
+    description = "Wrapper to display a script output or a text file content on the desktop in sway or other wlroots-based compositors";
+    homepage = "https://github.com/nwg-piotr/nwg-wrapper/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ artturin ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/misc/octoprint/default.nix b/nixpkgs/pkgs/applications/misc/octoprint/default.nix
index 750043d4a9e3..d7393313c151 100644
--- a/nixpkgs/pkgs/applications/misc/octoprint/default.nix
+++ b/nixpkgs/pkgs/applications/misc/octoprint/default.nix
@@ -50,19 +50,25 @@ let
           }
         )
 
-        # Octoprint needs zeroconf >=0.24 <0.25. While this should be done in
-        # the mkOverride aboves, this package also has broken tests, so we need
-        # a proper override.
+        # Octoprint needs zeroconf >=0.24 <0.25. This can't be done via mkOverride, because in zeroconf 0.32
+        # the super package was migrated to fetchFromGitHub.
         (
           self: super: {
             zeroconf = super.zeroconf.overrideAttrs (oldAttrs: rec {
               version = "0.24.5";
-              src = oldAttrs.src.override {
+              src = super.fetchPypi {
+                inherit (oldAttrs) pname;
                 inherit version;
                 sha256 = "0jpgd0rk91si93857mjrizan5gc42kj1q4fi4160qgk68la88fl9";
               };
-              buildInputs = [ self.nose ];
-              checkPhase = "nosetests";
+              pythonImportsCheck = [
+                "zeroconf"
+              ];
+              buildInputs = with self; [
+                pytestCheckHook
+                nose
+              ];
+              pytestFlagsArray = [ "zeroconf/test.py" ];
             });
           }
         )
diff --git a/nixpkgs/pkgs/applications/misc/pastel/default.nix b/nixpkgs/pkgs/applications/misc/pastel/default.nix
index e842046dd0b9..b894195cfa60 100644
--- a/nixpkgs/pkgs/applications/misc/pastel/default.nix
+++ b/nixpkgs/pkgs/applications/misc/pastel/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "pastel";
-  version = "0.8.0";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     owner = "sharkdp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "00xxrssa3gbr5w2jsqlf632jlzc0lc2rpybnbv618ndy5lxidnw0";
+    sha256 = "12n1a9j61r4spx0zi2kk85nslv11j1s510asxqvj92ggqhr2s3sq";
   };
 
-  cargoSha256 = "0kkhj58q1lgsyj7hpy3sxg1jva9q51m0i7j60zfzhnjnirwcd0h8";
+  cargoSha256 = "12zachbg78ajx1n1mqp53rd00dzcss5cqhsq0119lalzc8b5zkrn";
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
diff --git a/nixpkgs/pkgs/applications/misc/pdfdiff/default.nix b/nixpkgs/pkgs/applications/misc/pdfdiff/default.nix
index 5e489bebb25a..65ee6a655930 100644
--- a/nixpkgs/pkgs/applications/misc/pdfdiff/default.nix
+++ b/nixpkgs/pkgs/applications/misc/pdfdiff/default.nix
@@ -13,10 +13,10 @@ py.buildPythonApplication rec {
 
   buildInputs = [  pythonPackages.wrapPython ];
 
+  dontConfigure = true;
+  dontBuild = true;
   doCheck = false;
 
-  phases = [ "unpackPhase" "patchPhase" "installPhase" ];
-
   unpackPhase = "cp $src pdfdiff.py";
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/applications/misc/phoc/default.nix b/nixpkgs/pkgs/applications/misc/phoc/default.nix
index 2e3f32305125..aad2a4d0e48c 100644
--- a/nixpkgs/pkgs/applications/misc/phoc/default.nix
+++ b/nixpkgs/pkgs/applications/misc/phoc/default.nix
@@ -36,14 +36,14 @@ let
   });
 in stdenv.mkDerivation rec {
   pname = "phoc";
-  version = "0.7.0";
+  version = "0.7.1";
 
   src = fetchFromGitLab {
     domain = "source.puri.sm";
     owner = "Librem5";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0afiyr2slg38ksrqn19zygsmjy9k5bpwv6n7zjas3s5djr6hch45";
+    sha256 = "0n188xa2pwl4258naxhz45cvipcid8y1zvlbddll9xydrrh9bwqn";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/misc/polybar/default.nix b/nixpkgs/pkgs/applications/misc/polybar/default.nix
index 099813483a4a..b3b71d87608e 100644
--- a/nixpkgs/pkgs/applications/misc/polybar/default.nix
+++ b/nixpkgs/pkgs/applications/misc/polybar/default.nix
@@ -1,4 +1,5 @@
-{ cairo
+{ config
+, cairo
 , cmake
 , fetchFromGitHub
 , libXdmcp
@@ -29,87 +30,87 @@
 , i3-gaps
 , jsoncpp
 
-# override the variables ending in 'Support' to enable or disable modules
-, alsaSupport   ? true
+  # override the variables ending in 'Support' to enable or disable modules
+, alsaSupport ? true
 , githubSupport ? false
-, mpdSupport    ? false
-, pulseSupport  ? false
-, iwSupport     ? false
-, nlSupport     ? true
-, i3Support     ? false
+, mpdSupport ? false
+, pulseSupport ? config.pulseaudio or false
+, iwSupport ? false
+, nlSupport ? true
+, i3Support ? false
 , i3GapsSupport ? false
 }:
 
 stdenv.mkDerivation rec {
-    pname = "polybar";
-    version = "3.5.6";
+  pname = "polybar";
+  version = "3.5.6";
 
-    src = fetchFromGitHub {
-      owner = pname;
-      repo = pname;
-      rev = version;
-      sha256 = "sha256-Uvj9V2M/uQxyziTx1hecrcaQZECijlpVmWcUeT+PqrI=";
-      fetchSubmodules = true;
-    };
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-Uvj9V2M/uQxyziTx1hecrcaQZECijlpVmWcUeT+PqrI=";
+    fetchSubmodules = true;
+  };
 
-    nativeBuildInputs = [
-      cmake
-      pkg-config
-      python3Packages.sphinx
-      removeReferencesTo
-    ]
-    ++ lib.optional (i3Support || i3GapsSupport) makeWrapper;
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    python3Packages.sphinx
+    removeReferencesTo
+  ] ++ lib.optional (i3Support || i3GapsSupport) makeWrapper;
 
-    buildInputs = [
-      cairo
-      libXdmcp
-      libpthreadstubs
-      libxcb
-      pcre
-      python3
-      xcbproto
-      xcbutil
-      xcbutilcursor
-      xcbutilimage
-      xcbutilrenderutil
-      xcbutilwm
-      xcbutilxrm
-    ]
-    ++ lib.optional alsaSupport alsa-lib
-    ++ lib.optional githubSupport curl
-    ++ lib.optional mpdSupport libmpdclient
-    ++ lib.optional pulseSupport libpulseaudio
-    ++ lib.optional iwSupport wirelesstools
-    ++ lib.optional nlSupport libnl
-    ++ lib.optional (i3Support || i3GapsSupport) jsoncpp
-    ++ lib.optional i3Support i3
-    ++ lib.optional i3GapsSupport i3-gaps;
+  buildInputs = [
+    cairo
+    libXdmcp
+    libpthreadstubs
+    libxcb
+    pcre
+    python3
+    xcbproto
+    xcbutil
+    xcbutilcursor
+    xcbutilimage
+    xcbutilrenderutil
+    xcbutilwm
+    xcbutilxrm
+  ] ++ lib.optional alsaSupport alsa-lib
+  ++ lib.optional githubSupport curl
+  ++ lib.optional mpdSupport libmpdclient
+  ++ lib.optional pulseSupport libpulseaudio
+  ++ lib.optional iwSupport wirelesstools
+  ++ lib.optional nlSupport libnl
+  ++ lib.optional (i3Support || i3GapsSupport) jsoncpp
+  ++ lib.optional i3Support i3
+  ++ lib.optional i3GapsSupport i3-gaps;
 
-    postInstall = if i3Support
-                  then ''wrapProgram $out/bin/polybar \
-                           --prefix PATH : "${i3}/bin"
-                       ''
-                  else if i3GapsSupport
-                  then ''wrapProgram $out/bin/polybar \
-                           --prefix PATH : "${i3-gaps}/bin"
-                       ''
-                  else '''';
+  postInstall =
+    if i3Support then ''
+      wrapProgram $out/bin/polybar \
+        --prefix PATH : "${i3}/bin"
+    ''
+    else if i3GapsSupport
+    then ''
+      wrapProgram $out/bin/polybar \
+        --prefix PATH : "${i3-gaps}/bin"
+    ''
+    else "";
 
-    postFixup = ''
-        remove-references-to -t ${stdenv.cc} $out/bin/polybar
-    '';
+  postFixup = ''
+    remove-references-to -t ${stdenv.cc} $out/bin/polybar
+  '';
 
-    meta = with lib; {
-      homepage = "https://polybar.github.io/";
-      changelog = "https://github.com/polybar/polybar/releases/tag/${version}";
-      description = "A fast and easy-to-use tool for creating status bars";
-      longDescription = ''
-        Polybar aims to help users build beautiful and highly customizable
-        status bars for their desktop environment, without the need of
-        having a black belt in shell scripting.
-      '';
-      license = licenses.mit;
-      maintainers = with maintainers; [ afldcr Br1ght0ne fortuneteller2k ];
-      platforms = platforms.linux;
-    };
+  meta = with lib; {
+    homepage = "https://polybar.github.io/";
+    changelog = "https://github.com/polybar/polybar/releases/tag/${version}";
+    description = "A fast and easy-to-use tool for creating status bars";
+    longDescription = ''
+      Polybar aims to help users build beautiful and highly customizable
+      status bars for their desktop environment, without the need of
+      having a black belt in shell scripting.
+    '';
+    license = licenses.mit;
+    maintainers = with maintainers; [ afldcr Br1ght0ne fortuneteller2k ];
+    platforms = platforms.linux;
+  };
 }
diff --git a/nixpkgs/pkgs/applications/misc/pyditz/cerberus.nix b/nixpkgs/pkgs/applications/misc/pyditz/cerberus.nix
index 5eb43c0e3575..0e473c6a1ba1 100644
--- a/nixpkgs/pkgs/applications/misc/pyditz/cerberus.nix
+++ b/nixpkgs/pkgs/applications/misc/pyditz/cerberus.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, pytestrunner, pytest }:
+{ lib, buildPythonPackage, fetchPypi, pytest-runner, pytest }:
 
 buildPythonPackage rec {
   pname = "Cerberus";
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     sha256 = "1pxzr8sfm2hc5s96m9k044i44nwkva70n0ypr6a35v73zn891cx5";
   };
 
-  checkInputs = [ pytestrunner pytest ];
+  checkInputs = [ pytest-runner pytest ];
 
   meta = with lib; {
     homepage = "http://python-cerberus.org/";
diff --git a/nixpkgs/pkgs/applications/misc/rm-improved/default.nix b/nixpkgs/pkgs/applications/misc/rm-improved/default.nix
new file mode 100644
index 000000000000..0a1d38f5f7f9
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/rm-improved/default.nix
@@ -0,0 +1,24 @@
+{ fetchFromGitHub, rustPlatform, lib }:
+
+with lib;
+
+rustPlatform.buildRustPackage rec {
+  pname = "rm-improved";
+  version = "0.13.0";
+
+  cargoSha256 = "0wgpr6gx9dpvf02xgvrdbyiqfz1k9vipnvriz3jg0cz7n1afqisj";
+
+  src = fetchFromGitHub {
+    owner = "nivekuil";
+    repo = "rip";
+    rev = "0.13.0";
+    sha256 = "0d065xia4mwdhxkiqfg7pic6scfzipzmsvvx7l6l97w62lzpiqx3";
+  };
+
+  meta = {
+    description = "Replacement for rm with focus on safety, ergonomics and performance";
+    homepage = "https://github.com/nivekuil/rip";
+    maintainers = with maintainers; [ nils-degroot ];
+    license = licenses.gpl3Plus;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/misc/rofimoji/default.nix b/nixpkgs/pkgs/applications/misc/rofimoji/default.nix
index 79a4d9fc7abe..d0d59af604d4 100644
--- a/nixpkgs/pkgs/applications/misc/rofimoji/default.nix
+++ b/nixpkgs/pkgs/applications/misc/rofimoji/default.nix
@@ -5,7 +5,7 @@
 , waylandSupport ? true
 , x11Support ? true
 
-, ConfigArgParse
+, configargparse
 , rofi
 , wl-clipboard
 , wtype
@@ -26,7 +26,7 @@ buildPythonApplication rec {
 
   # `rofi` and the `waylandSupport` and `x11Support` dependencies
   # contain binaries needed at runtime.
-  propagatedBuildInputs = with lib; [ ConfigArgParse rofi ]
+  propagatedBuildInputs = with lib; [ configargparse rofi ]
     ++ optionals waylandSupport [ wl-clipboard wtype ]
     ++ optionals x11Support [ xdotool xsel ];
 
diff --git a/nixpkgs/pkgs/applications/misc/scli/default.nix b/nixpkgs/pkgs/applications/misc/scli/default.nix
index 9694e9b69187..3605e7c416fd 100644
--- a/nixpkgs/pkgs/applications/misc/scli/default.nix
+++ b/nixpkgs/pkgs/applications/misc/scli/default.nix
@@ -8,13 +8,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "scli";
-  version = "0.6.3";
+  version = "0.6.4";
 
   src = fetchFromGitHub {
     owner = "isamert";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-QGVBJKTBo2RckGwW1deM2toRPT73PYDLvr7YVepkQvg=";
+    sha256 = "0fx9ig08whl7bsii9m1h9wp361ngf1szd8v8yqglgl0x8044fwrk";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/nixpkgs/pkgs/applications/misc/sigal/default.nix b/nixpkgs/pkgs/applications/misc/sigal/default.nix
index 860e8f8adb59..20b944efd5d5 100644
--- a/nixpkgs/pkgs/applications/misc/sigal/default.nix
+++ b/nixpkgs/pkgs/applications/misc/sigal/default.nix
@@ -21,7 +21,6 @@ python3Packages.buildPythonApplication rec {
     blinker
     natsort
     # extras_require
-    boto
     brotli
     feedgenerator
     zopfli
diff --git a/nixpkgs/pkgs/applications/misc/skytemple/default.nix b/nixpkgs/pkgs/applications/misc/skytemple/default.nix
index 0daaad2f2655..d341c9821996 100644
--- a/nixpkgs/pkgs/applications/misc/skytemple/default.nix
+++ b/nixpkgs/pkgs/applications/misc/skytemple/default.nix
@@ -2,13 +2,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "skytemple";
-  version = "1.2.3";
+  version = "1.2.5";
 
   src = fetchFromGitHub {
     owner = "SkyTemple";
     repo = pname;
     rev = version;
-    sha256 = "0l2c4qngv58j6zkp0va6m96zksx8gqn3mjc3isqybfnhjr6nd3v9";
+    sha256 = "0780517gjc97wb2g67pwdv3fz3sqxm2ica1hdbrhqm4rfbnb28xr";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/applications/misc/slides/default.nix b/nixpkgs/pkgs/applications/misc/slides/default.nix
index 1d1aed3c9260..491e889f242d 100644
--- a/nixpkgs/pkgs/applications/misc/slides/default.nix
+++ b/nixpkgs/pkgs/applications/misc/slides/default.nix
@@ -1,14 +1,14 @@
-{ lib, buildGoModule, fetchFromGitHub, bash, go, python3, ruby, sd }:
+{ lib, buildGoModule, fetchFromGitHub, bash, go, python3, ruby }:
 
 buildGoModule rec {
   pname = "slides";
-  version = "0.4.0";
+  version = "0.4.1";
 
   src = fetchFromGitHub {
     owner = "maaslalani";
     repo = "slides";
     rev = "v${version}";
-    sha256 = "15f4sn1zsqqhzxnmwb1igh8xhka6li31ygdqgbjvxzm93lkarxvs";
+    sha256 = "1cywqrqj199hmx532h4vn0j17ypswq2zkmv8qpxpayvjwimx4pwk";
   };
 
   checkInputs = [
@@ -16,7 +16,6 @@ buildGoModule rec {
     go
     python3
     ruby
-    sd
   ];
 
   vendorSha256 = "0y6fz9rw702mji571k0gp4kpfx7xbv7rvlnmpfjygy6lmp7wga6f";
diff --git a/nixpkgs/pkgs/applications/misc/taskwarrior/default.nix b/nixpkgs/pkgs/applications/misc/taskwarrior/default.nix
index ee781c75e693..812c9b72f99e 100644
--- a/nixpkgs/pkgs/applications/misc/taskwarrior/default.nix
+++ b/nixpkgs/pkgs/applications/misc/taskwarrior/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
 
   srcs = [
     (fetchurl {
-      url = " https://github.com/GothenburgBitFactory/taskwarrior/releases/download/v${version}/${sourceRoot}.tar.gz";
+      url = "https://github.com/GothenburgBitFactory/taskwarrior/releases/download/v${version}/${sourceRoot}.tar.gz";
       sha256 = "0fwnxshhlha21hlgg5z1ad01w13zm1hlmncs274y5n8i15gdfhvj";
     })
     (fetchurl {
diff --git a/nixpkgs/pkgs/applications/misc/thinking-rock/default.nix b/nixpkgs/pkgs/applications/misc/thinking-rock/default.nix
index 3bf3dda7ca4d..bf53848b5d38 100644
--- a/nixpkgs/pkgs/applications/misc/thinking-rock/default.nix
+++ b/nixpkgs/pkgs/applications/misc/thinking-rock/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, runtimeShell }:
 
-stdenv.mkDerivation {
-  name = "thinkingrock-binary-2.2.1";
+stdenv.mkDerivation rec {
+  pname = "thinkingrock-binary";
+  version = "2.2.1";
 
   src = fetchurl {
-    url = "mirror://sourceforge/thinkingrock/ThinkingRock/TR%202.2.1/tr-2.2.1.tar.gz";
+    url = "mirror://sourceforge/thinkingrock/ThinkingRock/TR%20${version}/tr-${version}.tar.gz";
     sha256 = "0hnwvvyc8miiz8w2g4iy7s4rgfy0kfbncgbgfzpsq6nrzq334kgm";
   };
 
@@ -30,7 +31,7 @@ stdenv.mkDerivation {
     chmod +x $out/bin/thinkingrock
   '';
 
-  installPhase = ":";
+  dontInstall = true;
 
   meta = with lib; {
     description = "Task management system";
diff --git a/nixpkgs/pkgs/applications/misc/tpmmanager/default.nix b/nixpkgs/pkgs/applications/misc/tpmmanager/default.nix
index 37d44d8bf169..b2839a97efcc 100644
--- a/nixpkgs/pkgs/applications/misc/tpmmanager/default.nix
+++ b/nixpkgs/pkgs/applications/misc/tpmmanager/default.nix
@@ -36,6 +36,5 @@ stdenv.mkDerivation rec {
     license = lib.licenses.gpl2;
     maintainers = with lib.maintainers; [ tstrobel ];
     platforms = with lib.platforms; linux;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/udevil/default.nix b/nixpkgs/pkgs/applications/misc/udevil/default.nix
index e83a5e9a2c7e..9d1df5245edc 100644
--- a/nixpkgs/pkgs/applications/misc/udevil/default.nix
+++ b/nixpkgs/pkgs/applications/misc/udevil/default.nix
@@ -1,12 +1,20 @@
-{ lib, stdenv, fetchurl, intltool, glib, pkg-config, udev, util-linux, acl }:
-stdenv.mkDerivation {
-  name = "udevil-0.4.4";
-  src = fetchurl {
-    url = "https://github.com/IgnorantGuru/udevil/archive/0.4.4.tar.gz";
-    sha256 = "0z1bhaayambrcn7bgnrqk445k50ifabmw8q4i9qj49nnbcvxhbxd";
+{ lib, stdenv, fetchFromGitHub, intltool, glib, pkg-config, udev, util-linux, acl }:
+
+stdenv.mkDerivation rec {
+  pname = "udevil";
+  version = "0.4.4";
+
+  src = fetchFromGitHub {
+    owner = "IgnorantGuru";
+    repo = "udevil";
+    rev = version;
+    sha256 = "0nd44r8rbxifx4x4m24z5aji1c6k1fhw8cmf5s43wd5qys0bcdad";
   };
+
   nativeBuildInputs = [ pkg-config ];
+
   buildInputs = [ intltool glib udev ];
+
   configurePhase = ''
     substituteInPlace src/Makefile.in --replace "-o root -g root" ""
     # do not set setuid bit in nix store
@@ -19,11 +27,18 @@ stdenv.mkDerivation {
       --with-setfacl-prog=${acl.bin}/bin/setfacl \
       --sysconfdir=$prefix/etc
   '';
+
+  postInstall = ''
+    substituteInPlace $out/lib/systemd/system/devmon@.service \
+      --replace /usr/bin/devmon "$out/bin/devmon"
+  '';
+
   patches = [ ./device-info-sys-stat.patch ];
-  meta = {
+
+  meta = with lib; {
     description = "A command line Linux program which mounts and unmounts removable devices without a password, shows device info, and monitors device changes";
     homepage = "https://ignorantguru.github.io/udevil/";
-    platforms = lib.platforms.linux;
-    license = lib.licenses.gpl3;
+    platforms = platforms.linux;
+    license = licenses.gpl3Plus;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/urlscan/default.nix b/nixpkgs/pkgs/applications/misc/urlscan/default.nix
index a56a09a8e348..576d66659a3a 100644
--- a/nixpkgs/pkgs/applications/misc/urlscan/default.nix
+++ b/nixpkgs/pkgs/applications/misc/urlscan/default.nix
@@ -2,13 +2,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "urlscan";
-  version = "0.9.5";
+  version = "0.9.6";
 
   src = fetchFromGitHub {
     owner = "firecat53";
     repo = pname;
     rev = version;
-    sha256 = "16g7dzvjcfhaz52wbmcapamy55l7vfhgizqy3m8dv9gkmy8vap89";
+    sha256 = "D+WJ1HG1gXIFtIpaqazFqC9Y4GBCUsz88U8q8W9tHFA=";
   };
 
   propagatedBuildInputs = [ python3Packages.urwid ];
diff --git a/nixpkgs/pkgs/applications/misc/variety/default.nix b/nixpkgs/pkgs/applications/misc/variety/default.nix
index 5e7765a16fde..9b40c4c44f1f 100644
--- a/nixpkgs/pkgs/applications/misc/variety/default.nix
+++ b/nixpkgs/pkgs/applications/misc/variety/default.nix
@@ -26,9 +26,9 @@ buildPythonApplication rec {
     sha256 = "sha256-6dLz4KXavXwnk5GizBH46d2EHMHPjRo0WnnUuVMtI1M=";
   };
 
-  nativeBuildInputs = [ intltool wrapGAppsHook ];
+  nativeBuildInputs = [ makeWrapper intltool wrapGAppsHook ];
 
-  buildInputs = [ makeWrapper distutils_extra ];
+  buildInputs = [ distutils_extra ];
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/applications/misc/vifm/default.nix b/nixpkgs/pkgs/applications/misc/vifm/default.nix
index 7bc4bd1ff768..531c108cdbf9 100644
--- a/nixpkgs/pkgs/applications/misc/vifm/default.nix
+++ b/nixpkgs/pkgs/applications/misc/vifm/default.nix
@@ -38,7 +38,6 @@ in stdenv.mkDerivation rec {
     license = licenses.gpl2;
     downloadPage = "https://vifm.info/downloads.shtml";
     homepage = "https://vifm.info/";
-    inherit version;
     updateWalker = true;
     changelog = "https://github.com/vifm/vifm/blob/v${version}/ChangeLog";
   };
diff --git a/nixpkgs/pkgs/applications/misc/visidata/default.nix b/nixpkgs/pkgs/applications/misc/visidata/default.nix
index 7851000a7a0f..11216b1d8878 100644
--- a/nixpkgs/pkgs/applications/misc/visidata/default.nix
+++ b/nixpkgs/pkgs/applications/misc/visidata/default.nix
@@ -24,13 +24,13 @@
 }:
 buildPythonApplication rec {
   pname = "visidata";
-  version = "2.4";
+  version = "2.5";
 
   src = fetchFromGitHub {
     owner = "saulpw";
     repo = "visidata";
     rev = "v${version}";
-    sha256 = "0mvf2603d9b0s6rh7sl7mg4ipbh0nk05xgh1078mwvx31qjsmq1i";
+    sha256 = "1iijggdgj36v7d2zm45c00nrbzxaaah2azflpca0f6fjaaxh3lr2";
   };
 
   propagatedBuildInputs = [
@@ -76,12 +76,6 @@ buildPythonApplication rec {
     rm tests/graph-cursor-nosave.vd  # http
     rm tests/messenger-nosave.vd     # dns
 
-    # disable some tests which expect Python == 3.6 (not our current version)
-    # see https://github.com/saulpw/visidata/issues/1014
-    rm tests/describe.vd
-    rm tests/describe-error.vd
-    rm tests/edit-type.vd
-
     # tests use git to compare outputs to references
     git init -b "test-reference"
     git config user.name "nobody"; git config user.email "no@where"
@@ -92,7 +86,6 @@ buildPythonApplication rec {
   '';
 
   meta = {
-    inherit version;
     description = "Interactive terminal multitool for tabular data";
     license = lib.licenses.gpl3;
     maintainers = [ lib.maintainers.raskin ];
diff --git a/nixpkgs/pkgs/applications/misc/vue/default.nix b/nixpkgs/pkgs/applications/misc/vue/default.nix
index 13b09865c6ac..5994df7c559a 100644
--- a/nixpkgs/pkgs/applications/misc/vue/default.nix
+++ b/nixpkgs/pkgs/applications/misc/vue/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "0yfzr80pw632lkayg4qfmwzrqk02y30yz8br7isyhmgkswyp5rnx";
   };
 
-  phases = "installPhase";
+  dontUnpack = true;
 
   installPhase = ''
     mkdir -p "$out"/{share/vue,bin}
diff --git a/nixpkgs/pkgs/applications/misc/wofi-emoji/default.nix b/nixpkgs/pkgs/applications/misc/wofi-emoji/default.nix
new file mode 100644
index 000000000000..201add9cda25
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/wofi-emoji/default.nix
@@ -0,0 +1,54 @@
+{ stdenv, lib, fetchFromGitHub, jq }:
+
+let
+  emojiJSON = fetchFromGitHub {
+    owner = "github";
+    repo = "gemoji";
+    sha256 = "sha256-Tn0vba129LPlX+MRcCBA9qp2MU1ek1jYzVCqoNxCL/w=";
+    rev = "v4.0.0.rc2";
+  };
+
+in stdenv.mkDerivation rec {
+  pname = "wofi-emoji";
+  version = "unstable-2021-05-24";
+
+  src = fetchFromGitHub {
+    owner = "dln";
+    repo = pname;
+    rev = "bfe35c1198667489023109f6843217b968a35183";
+    sha256 = "sha256-wMIjTUCVn4uF0cpBkPfs76NRvwS0WhGGJRy9vvtmVWQ=";
+  };
+
+  nativeBuildInputs = [ jq ];
+
+  postPatch = ''
+    cp "${emojiJSON}/db/emoji.json" .
+    substituteInPlace build.sh \
+      --replace 'curl https://raw.githubusercontent.com/github/gemoji/master/db/emoji.json' 'cat emoji.json'
+  '';
+
+  buildPhase = ''
+    runHook preBuild
+
+    bash build.sh
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin
+    cp wofi-emoji $out/bin
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Simple emoji selector for Wayland using wofi and wl-clipboard";
+    homepage = "https://github.com/dln/wofi-emoji";
+    license = licenses.mit;
+    maintainers = [ maintainers.ymarkus ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/misc/zola/default.nix b/nixpkgs/pkgs/applications/misc/zola/default.nix
index 3f704e8dd854..d669b97c44d1 100644
--- a/nixpkgs/pkgs/applications/misc/zola/default.nix
+++ b/nixpkgs/pkgs/applications/misc/zola/default.nix
@@ -1,37 +1,38 @@
-{ lib, stdenv, fetchFromGitHub, rustPlatform, cmake, pkg-config, openssl, oniguruma, CoreServices }:
+{ lib, stdenv, fetchFromGitHub, rustPlatform, cmake, pkg-config, openssl, oniguruma, CoreServices, installShellFiles }:
 
 rustPlatform.buildRustPackage rec {
   pname = "zola";
-  version = "0.13.0";
+  version = "unstable-2021-07-14";
 
   src = fetchFromGitHub {
     owner = "getzola";
     repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-yTvFQWmNxoB+CNZLHGmzJq7mKuOUxUqV4g8PWlOlRbM=";
+    # unstable because the latest release fails to build
+    rev = "312ffcb04c06c5f157b9fd2b944b858703238592";
+    sha256 = "0i5zqs1gwxhvsynb540c3azfi4357igr4i5p0bi3h7ras2asas8w";
   };
 
-  cargoSha256 = "sha256:19vijhcs1i02jhz68acil7psv3pcn0jzi1i4y2l05i4m3ayxivjf";
+  cargoSha256 = "0g5z0s837cfwzral2zz0avp0xywyaa3l1adxg520qrnga7z0kbh8";
 
-  nativeBuildInputs = [ cmake pkg-config ];
+  nativeBuildInputs = [ cmake pkg-config installShellFiles];
   buildInputs = [ openssl oniguruma ]
     ++ lib.optional stdenv.isDarwin CoreServices;
 
   RUSTONIG_SYSTEM_LIBONIG = true;
 
   postInstall = ''
-    install -D -m 444 completions/zola.bash \
-      -t $out/share/bash-completion/completions
-    install -D -m 444 completions/_zola \
-      -t $out/share/zsh/site-functions
-    install -D -m 444 completions/zola.fish \
-      -t $out/share/fish/vendor_completions.d
+    installShellCompletion --cmd zola \
+      --fish completions/zola.fish \
+      --zsh completions/_zola \
+      --bash completions/zola.bash
   '';
 
   meta = with lib; {
     description = "A fast static site generator with everything built-in";
     homepage = "https://www.getzola.org/";
     license = licenses.mit;
-    maintainers = with maintainers; [ dywedir _0x4A6F ];
+    maintainers = with maintainers; [ dandellion dywedir _0x4A6F ];
+    # set because of unstable-* version
+    mainProgram = "zola";
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/browsers/brave/default.nix b/nixpkgs/pkgs/applications/networking/browsers/brave/default.nix
index 7b2acbd6b3da..7bbbbe082d95 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/brave/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/brave/default.nix
@@ -90,11 +90,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "brave";
-  version = "1.26.74";
+  version = "1.26.77";
 
   src = fetchurl {
     url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
-    sha256 = "ULmoUXyPWHCewK4FPP7SX1Ena6n0aM/EWR7ZnMN1ztY=";
+    sha256 = "tV/VseU+IncvM3gdrmqkYLPClbsf2kSvIAZj0Ylz2Rw=";
   };
 
   dontConfigure = true;
diff --git a/nixpkgs/pkgs/applications/networking/browsers/chromium/browser.nix b/nixpkgs/pkgs/applications/networking/browsers/chromium/browser.nix
index 602e2e6a8299..623bc3c33d7e 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/chromium/browser.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/chromium/browser.nix
@@ -62,9 +62,9 @@ mkChromiumDerivation (base: rec {
       -e '/\[Desktop Entry\]/a\' \
       -e 'StartupWMClass=chromium-browser' \
       $out/share/applications/chromium-browser.desktop
-  '' + lib.optionalString (channel != "stable") ''
+  '' + ''
     cp -v "$buildPath/crashpad_handler" "$libExecPath/"
-  '';
+  ''; # TODO: Merge
 
   passthru = { inherit sandboxExecutableName; };
 
@@ -88,7 +88,7 @@ mkChromiumDerivation (base: rec {
     license = if enableWideVine then licenses.unfree else licenses.bsd3;
     platforms = platforms.linux;
     mainProgram = "chromium";
-    hydraPlatforms = if (channel == "stable" || channel == "ungoogled-chromium")
+    hydraPlatforms = if (channel == "stable" || channel == "ungoogled-chromium" || channel == "beta")
       then ["aarch64-linux" "x86_64-linux"]
       else [];
     timeout = 172800; # 48 hours (increased from the Hydra default of 10h)
diff --git a/nixpkgs/pkgs/applications/networking/browsers/chromium/common.nix b/nixpkgs/pkgs/applications/networking/browsers/chromium/common.nix
index 18565f31a2fb..6daafc204eb8 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/chromium/common.nix
@@ -167,6 +167,19 @@ let
       # Fix the build by adding a missing dependency (s. https://crbug.com/1197837):
       ./patches/fix-missing-atspi2-dependency.patch
       ./patches/closure_compiler-Use-the-Java-binary-from-the-system.patch
+    ] ++ lib.optionals (versionRange "91" "94.0.4583.0") [
+      # Required as dependency for the next patch:
+      (githubPatch {
+        # Reland "Reland "Linux sandbox syscall broker: use struct kernel_stat""
+        commit = "4b438323d68840453b5ef826c3997568e2e0e8c7";
+        sha256 = "1lf6yilx2ffd3r0840ilihp4px35w7jvr19ll56bncqmz4r5fd82";
+      })
+      # To fix the text rendering, see #131074:
+      (githubPatch {
+        # Linux sandbox: fix fstatat() crash
+        commit = "60d5e803ef2a4874d29799b638754152285e0ed9";
+        sha256 = "0apmsqqlfxprmdmi3qzp3kr9jc52mcc4xzps206kwr8kzwv48b70";
+      })
     ] ++ lib.optionals (chromiumVersionAtLeast "93") [
       # We need to revert this patch to build M93 with LLVM 12.
       (githubPatch {
diff --git a/nixpkgs/pkgs/applications/networking/browsers/chromium/default.nix b/nixpkgs/pkgs/applications/networking/browsers/chromium/default.nix
index 535b87a87fd0..33619f27350f 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/chromium/default.nix
@@ -1,8 +1,7 @@
 { newScope, config, stdenv, fetchurl, makeWrapper
 , llvmPackages_11, llvmPackages_12, ed, gnugrep, coreutils, xdg-utils
 , glib, gtk3, gnome, gsettings-desktop-schemas, gn, fetchgit
-, libva ? null
-, pipewire
+, libva, pipewire, wayland
 , gcc, nspr, nss, runCommand
 , lib
 
@@ -165,7 +164,7 @@ in stdenv.mkDerivation {
 
   buildCommand = let
     browserBinary = "${chromiumWV}/libexec/chromium/chromium";
-    libPath = lib.makeLibraryPath [ libva pipewire ];
+    libPath = lib.makeLibraryPath [ libva pipewire wayland gtk3 ];
 
   in with lib; ''
     mkdir -p "$out/bin"
diff --git a/nixpkgs/pkgs/applications/networking/browsers/chromium/get-commit-message.py b/nixpkgs/pkgs/applications/networking/browsers/chromium/get-commit-message.py
index 2768e31bd032..7a91b74c83d5 100755
--- a/nixpkgs/pkgs/applications/networking/browsers/chromium/get-commit-message.py
+++ b/nixpkgs/pkgs/applications/networking/browsers/chromium/get-commit-message.py
@@ -19,14 +19,14 @@ for entry in feed.entries:
         continue
     url = requests.get(entry.link).url.split('?')[0]
     content = entry.content[0].value
+    content = html_tags.sub('', content)  # Remove any HTML tags
     if re.search(r'Linux', content) is None:
         continue
     #print(url)  # For debugging purposes
     version = re.search(r'\d+(\.\d+){3}', content).group(0)
     print('chromium: TODO -> ' + version)
     print('\n' + url)
-    if fixes := re.search(r'This update includes .+ security fixes\.', content):
-        fixes = html_tags.sub('', fixes.group(0))
+    if fixes := re.search(r'This update includes .+ security fixes\.', content).group(0):
         zero_days = re.search(r'Google is aware( of reports)? that .+ in the wild\.', content)
         if zero_days:
             fixes += " " + zero_days.group(0)
diff --git a/nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json b/nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json
index 863510ded66c..a6df334a97de 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json
+++ b/nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json
@@ -1,26 +1,26 @@
 {
   "stable": {
-    "version": "91.0.4472.114",
-    "sha256": "0wbyiwbdazgjjgj9vs56x26q3g9r80a57gfl0f2rfl1j7xwgxiy1",
-    "sha256bin64": "00ac1dyqxpxy1j11jvc5j35bgc629n2f2pll3912gzih4ir0vrys",
+    "version": "92.0.4515.107",
+    "sha256": "04khamgxwzgbm2rn7is53j5g55vm5qfyz7zwxqc51sd429jsqlbf",
+    "sha256bin64": "0vfg8wjf9i1yz8nlxsij8fmqq7qr4nsccaihppqm3axpk91mmdsj",
     "deps": {
       "gn": {
-        "version": "2021-04-06",
+        "version": "2021-05-07",
         "url": "https://gn.googlesource.com/gn",
-        "rev": "dba01723a441c358d843a575cb7720d54ddcdf92",
-        "sha256": "199xkks67qrn0xa5fhp24waq2vk8qb78a96cb3kdd8v1hgacgb8x"
+        "rev": "39a87c0b36310bdf06b692c098f199a0d97fc810",
+        "sha256": "0x63jr5hssm9dl6la4q5ahy669k4gxvbapqxi5w32vv107jrj8v4"
       }
     },
     "chromedriver": {
-      "version": "91.0.4472.101",
-      "sha256_linux": "0dzx565z2rd0y4i57rv5kd7dsm69sffza96y3c773hqaghm4y1ng",
-      "sha256_darwin": "0nff1jmmrn6a4clfvhyzrhfp8hx85z72563jwk28apflqmnm0k68"
+      "version": "92.0.4515.43",
+      "sha256_linux": "1s22y892py99kzcb2j3gafmbz9jrr2lfhhh8hp3ggn2i37yxs8bw",
+      "sha256_darwin": "1cjg4r4z5m74c2si4m25rj3z44n0iimhqzb1l3l3y0a3q024bi8f"
     }
   },
   "beta": {
-    "version": "92.0.4515.80",
-    "sha256": "142v8y275mysgksvfprc83a7r1dlcnb5rqi8a451fmfnj6wrsq8i",
-    "sha256bin64": "0sz2fvg6l7q7syc5pysa246p03sganmgjdfvind42i8cqxw8gycp",
+    "version": "92.0.4515.107",
+    "sha256": "04khamgxwzgbm2rn7is53j5g55vm5qfyz7zwxqc51sd429jsqlbf",
+    "sha256bin64": "179i18lckd85i6cc60mqpvv2jqdshc338m686yackdgz9qjrrlwd",
     "deps": {
       "gn": {
         "version": "2021-05-07",
@@ -31,22 +31,22 @@
     }
   },
   "dev": {
-    "version": "93.0.4557.4",
-    "sha256": "06397k5mkrrdrmd7icyvd1ifnmhincgw5nskgc3m436qzzifsab9",
-    "sha256bin64": "1q2c2dhx1yya6vhr82asf7h2zrv6kjzjv1a0zlfxkp3i6lnivgrd",
+    "version": "93.0.4577.8",
+    "sha256": "1x6i5bmcnj8bkpcb9gcyd1m9nzpq206yyprxrnpak117k7abr2b1",
+    "sha256bin64": "0qjfb9jxr2gmwb1dsvl6yzz06vsjny2l3icrsdcm0pl6r6davk2w",
     "deps": {
       "gn": {
-        "version": "2021-06-25",
+        "version": "2021-07-08",
         "url": "https://gn.googlesource.com/gn",
-        "rev": "4d207c94eab41f09c9a8505eb47f3d2919e47943",
-        "sha256": "1jfgksa7rifh3ynnmd7m8xxggwxckz0jnwjaq9m5xapksb89hbn1"
+        "rev": "24e2f7df92641de0351a96096fb2c490b2436bb8",
+        "sha256": "1lwkyhfhw0zd7daqz466n7x5cddf0danr799h4jg3s0yvd4galjl"
       }
     }
   },
   "ungoogled-chromium": {
-    "version": "91.0.4472.114",
-    "sha256": "0wbyiwbdazgjjgj9vs56x26q3g9r80a57gfl0f2rfl1j7xwgxiy1",
-    "sha256bin64": "00ac1dyqxpxy1j11jvc5j35bgc629n2f2pll3912gzih4ir0vrys",
+    "version": "91.0.4472.164",
+    "sha256": "1g96hk72ds2b0aymgw7yjr0akgx7mkp17i99nk511ncnmni6zrc4",
+    "sha256bin64": "1j6p2gqlikaibcwa40k46dsm9jlrpbj21lv1snnjw8apjnjfd2wr",
     "deps": {
       "gn": {
         "version": "2021-04-06",
@@ -55,8 +55,8 @@
         "sha256": "199xkks67qrn0xa5fhp24waq2vk8qb78a96cb3kdd8v1hgacgb8x"
       },
       "ungoogled-patches": {
-        "rev": "91.0.4472.114-1",
-        "sha256": "1xb5g3hybaiwn3y1zw1fxd3g0zwmvplrs06sdqnxzsr1qm8b874h"
+        "rev": "91.0.4472.164-1",
+        "sha256": "1vlirqrsliyl1dvm511p5axzvhvqil1m1jlk5zngvl9zfbdjw910"
       }
     }
   }
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index 3410ab5a25c8..5813868286a3 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
@@ -1,975 +1,975 @@
 {
-  version = "89.0.2";
+  version = "90.0.1";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ach/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ach/firefox-90.0.1.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "7de9c1dc38a4508aeca588a6ad49ededef067fe7589b099f1e4bdda2dfc99d60";
+      sha256 = "b985849c5109b6a9992ca0fc4699b769af37c84f1aea5fc6c1b66845f51da83d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/af/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/af/firefox-90.0.1.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "bdff1c8983f94e4f9237cfbbeed6a9e10dabd029e3f4efaf9f8ed0d4cd04db6d";
+      sha256 = "7ddb078a80b7991576f691a1c3bc76635621aa13d64c465651e16ae4dade7436";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/an/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/an/firefox-90.0.1.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "f2e1157d325a91d41600db763dedbf2344dbcb07c1af04ba02079a3c134a76b5";
+      sha256 = "dca47858177ed263332c7cb093e3285b5c8f61782a66cf683ee52896c3fc76a2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ar/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ar/firefox-90.0.1.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "dc65f87a192c5940053e1d696f0b82dd9c4dfd4e1b9ffa70e7e608bd81622e53";
+      sha256 = "2249834099e5cc9a5feb0b38bdc277e5e3f65635b1a1179afe1240113f0ee1d9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ast/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ast/firefox-90.0.1.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "96305dcf9c86fa8357fc691ace8496916effc32896416e3507263e740256fe00";
+      sha256 = "7ad21576299643e480922a2a7b6077a0edc84d362e33bb8318b33d04133a7c7b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/az/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/az/firefox-90.0.1.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "8f5a0a0050bbd221700d3dc65b749393d855ac0b93288d498ed6911aa727f577";
+      sha256 = "10eabc925d651985229d6bac1c34b12267a31886f5354ba943178f6a2d0ef04a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/be/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/be/firefox-90.0.1.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "cad622598b126c17049fd2c18cb8c5cfc0b08a41559b872d2cd474eedd8cc64c";
+      sha256 = "d1e6d939233b23e5378161c79f338e66c010056d9d3e619b9eb6c26dc4461724";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/bg/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/bg/firefox-90.0.1.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "60dcc88ee1532178b601fca3fa1711b83ef40a58f38ecdbd2abf504a74650f51";
+      sha256 = "d59e69127462aa3efff558d5cd5035951dbe54161f913dacb4142a8bd3f258fb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/bn/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/bn/firefox-90.0.1.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "d8d48d57861c369631762141ff3230ea6877d1cfa25ab445ff8482c3505336ef";
+      sha256 = "56ca1d7e84ada3f0124e36186a32dfdf287547bdc8d3b111baf9407fedf0a7ae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/br/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/br/firefox-90.0.1.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "93753f265ddab79e1632b17a39ff009d4b0831a57b522fbd042b85ac1b0e4526";
+      sha256 = "33a6ceb6d37b73d03fe5a6e93e19e29346b2861ee69ab2fffd6cca4a2dbaf40f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/bs/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/bs/firefox-90.0.1.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "e0f253a239e7bbd89d051377ad3250160154568f92ae7ca7e813b202fb3ab2af";
+      sha256 = "7c853a13afd74307e7a468b85ed430b20f1622dbecb697b8c80945ccea9f0805";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ca-valencia/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ca-valencia/firefox-90.0.1.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "7aee988a5af50bc98cd9d8ec7beb2c4dcb7183a736be1fc47b5535280a20f7dc";
+      sha256 = "0aa103c471b3f71ef638cbf9e8f83447875ef5cd96bdc8535435188510272c65";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ca/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ca/firefox-90.0.1.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "ce9617a904bb05391525af0eb6119f333a04d01ae6eecc60096d1bb159296933";
+      sha256 = "4672d9fe667f72de45af1eb6a205792440afa9de86eae1f33426d3b948fbc841";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/cak/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/cak/firefox-90.0.1.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "a20708a942536373236c784a93d67a53623dd389c42167d09ddfd2577456d5b4";
+      sha256 = "7b12a52926888f52957a75f639f09094dc4cbc18a1c6d14bf433028461c4a71a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/cs/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/cs/firefox-90.0.1.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "4d40e2d2f8bb1d3a3c2f7319dec6106b1781d717d430bd6e75db3cd8b12af31f";
+      sha256 = "7dfdf0c4c740dab356205c52384faf61e9963a42675031f0292be1c0f4e402c3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/cy/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/cy/firefox-90.0.1.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "0b7dc949e79d29534651b450c29b9e7458817e4286cdbf7a8602855b5c0057a4";
+      sha256 = "ad7f76b997bced6df5c240273fb736fe7dcb0c86ae867a5cbdb5097dd5c382ba";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/da/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/da/firefox-90.0.1.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "ab37e800cb1f5ced51c3fb18534200a5d68586a31f649d6c7d5e475ea2bc28a9";
+      sha256 = "9f59ff2eec510b75312bcbe29e9706fe0710f300c12e33200937571414254d31";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/de/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/de/firefox-90.0.1.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "6233b625e67bbbc5432daf596e4e654dbecb02e7f8a5511f07f6ab015a07ecdb";
+      sha256 = "c838f9238939cc8e91fff903a231062c03388c2202e273f7b99701415a8f3f22";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/dsb/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/dsb/firefox-90.0.1.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "2468c1b03785a381525e4fe58ec106337ae8414a3d46894b7a00fc81c1859ba3";
+      sha256 = "5370c32283f8bf7fc3273dbe3cb5c77db829723a39401b00f0e8f70c9f3dba91";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/el/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/el/firefox-90.0.1.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "1a77f00567ef8a255a012a33c8ca2d66e0b1ee379c555b110cc660846262e482";
+      sha256 = "2af4feceeea5c0932935d91c22df516ae2e25d9006ab41ba6274783b74b3a5e5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/en-CA/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/en-CA/firefox-90.0.1.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "f94fe35737d04152809893a775e411d8d92503addda508414c0d8ddc3d40e513";
+      sha256 = "e805c2eebe0c9892082b900af2bd1511264ed5fd5d47864ca5a8fc3e6c0a05de";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/en-GB/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/en-GB/firefox-90.0.1.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "bf610dacccf834f4f62c96215e8a9620493d08ef2b2445b675ddef36c1eba036";
+      sha256 = "2d888fdd72a65137790b10f02056d6194fd9c374cc6ff09cf7217cfbb84e2d7d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/en-US/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/en-US/firefox-90.0.1.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "964b6b515151bb9a0f4e90e9902afd09ff64bfaafa231480b9829264d36fd76f";
+      sha256 = "998607f028043b3780f296eee03027279ef059acab5b50f9754df2bd69ca42b3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/eo/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/eo/firefox-90.0.1.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "e2e4da131a01355c4cc6710ef04b61963609026455d4e8bb51c2675ac44d4a94";
+      sha256 = "3fee8ee742d6ebc03a6fd66404979b7e2fc823757801ac205ca291c249f7b31c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/es-AR/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/es-AR/firefox-90.0.1.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "7d5ef9dc2667570752b65cadc3851dda050afad82b9af8de35565d7c56b9dfe2";
+      sha256 = "854cf81090ccdb2f8d4ccf0729c7228c2945626a56d1cfee524f927c5bb67c47";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/es-CL/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/es-CL/firefox-90.0.1.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "018f07814bf6ddf7891a1c6104ddf6f10dd0bb9595772a367fc0f66b0f1586a2";
+      sha256 = "c0b92a9e2defa74171c880be9ed84f12ab946d4d9af888d7d9ed735114968fb5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/es-ES/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/es-ES/firefox-90.0.1.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "9076d5dfd5422a298b7f35b15d57a7793fc4a84c5acfca02157ae37234a7c526";
+      sha256 = "a2fcc7126f6c5b6edf162357ddf7493df2873ecbe36d74a176c3924b877c4448";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/es-MX/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/es-MX/firefox-90.0.1.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "dfddfbff84b42948ddff2527a819d0e3ffd4272c705a5a9d503b5034e4355ecb";
+      sha256 = "fd27c822086cfdd3636d1edd0afb62be22546d2dcb86d968ef4e1875acbb66fe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/et/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/et/firefox-90.0.1.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "3f05022e625074b79e7902b1b43ba141c0b39af65b247eb63d80aa38e7d7df56";
+      sha256 = "13f34d32f05de7d77d4ffed59a00d539cc819edb3ad9ab52d1a77d9f92a05264";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/eu/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/eu/firefox-90.0.1.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "9996e2133fdb56856bb744b439cba4f2570e7e2f6c46373c75d967412b8fefc3";
+      sha256 = "b53133754eadfd473a68b0647bbf3ada70ad46cd0820ffc94b96ca0bd259db62";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/fa/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/fa/firefox-90.0.1.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "2a8d3de485d4ab1f2689f50fa06c40653690b7039617c5286b89a5e1483537ed";
+      sha256 = "048ab2377915cf7efd4daab495873f9c1282f74907bedc22093b0cf17cc3b301";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ff/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ff/firefox-90.0.1.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "f4efb3e0bc68ae3a905b0e846e6884b3209a3557cef9de9bf43b52987d4b01c3";
+      sha256 = "99de5853888020d6435e8a369eb8b983fe4374e754451dabc2785b9ab2d5bb24";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/fi/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/fi/firefox-90.0.1.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "5d1a787f6d9798d0cbc58b0dbf3fc20892d7dbc0ee1ffaa5a26879578fe8a030";
+      sha256 = "03513b1d725a6f5ffa243fe38e19a66c2850d849c09d7b80c3ba17fcb3012b17";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/fr/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/fr/firefox-90.0.1.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "c07643b687f699f92c4a3725ad3589f9dbd8ed7ed859e49cc8d8f39242cb6b56";
+      sha256 = "350c5ded72a988773acdb3411f0d9d1ecfdd79501cbc04a9ed8777ada8248ae5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/fy-NL/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/fy-NL/firefox-90.0.1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "3cbf0aa2f6fd2842c11b2d774348dc7656f92e78c1dc15e351b30e772a7e3e6f";
+      sha256 = "026a5a3e8140110c830c237b1dee5857d07c9eacd1e803d0f5b054afd0d5d06b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ga-IE/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ga-IE/firefox-90.0.1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "e0a307dff5bee1049446b9657036e336a2d7ab5b8fe9782b3ca83aef595be307";
+      sha256 = "1b522979314c1c672c30da02ea7d38f94ea811df91d86b8327836937069ed956";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/gd/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/gd/firefox-90.0.1.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "2ac2e6e617d93df8ca5c3166da944d897940dff279ba842d20b197ed15744971";
+      sha256 = "d6830e901c20477dd4121cd3a0f918634bc3107d799eaf4439b9ba036acd88d5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/gl/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/gl/firefox-90.0.1.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "359870aa13c2dab4d79bda23c13a43cd899d0fd732089cbd75d44ee2a23ec0c9";
+      sha256 = "f25adcd9c7c027a7e531a9072201f174cb69e30c30dffabfff4d0d8e12250f68";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/gn/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/gn/firefox-90.0.1.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "a39e9ccb2d9b6b7f0e9303134a1c8e7081e5d56c1039d734fd390810efc7729f";
+      sha256 = "a0df03aa486320a1fbb554a5be600067d2447af0a63726290f2c7d599c9a9534";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/gu-IN/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/gu-IN/firefox-90.0.1.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "e621ffee06c2858633505693c3f7da980a3b69d053d641cf796d85d53dd68af6";
+      sha256 = "daf1ba05f971b8b8f04da9085eefb03ad15fa5bf6d637ad1bcedb94665bb150d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/he/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/he/firefox-90.0.1.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "8258e2b3e70a1c7ad5ca5c49d482b0dca13f61f0ee7c91f1cb4df704e950db5e";
+      sha256 = "cedcbd2e76bf371ed8daefd100631e0381470b3980946e033b39a2b94035a55c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/hi-IN/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/hi-IN/firefox-90.0.1.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "1a01c93c3cd83b756dee3a7984187821bf1cfc30460e8ff84cf934f549b0d2ba";
+      sha256 = "d0d6ba66c59fed2c33d9e21c9015b40743ac7e4305b1055f39b909754af984bd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/hr/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/hr/firefox-90.0.1.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "7b896ceaebbe84e015fa69a02c484dce61358ecc08be81915e944e11fbbb3361";
+      sha256 = "11ba8ffdf88bbaec536e4a362dd40f2eb535edb652fb01587ed46ba09fa7f17e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/hsb/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/hsb/firefox-90.0.1.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "c25fd4d7941e03190bf2472297beb9622825759752e24cde982e1ba5ace2d1dc";
+      sha256 = "d1e1fbba7748ffc2c0f92e4be4dbe346359bc145fa2dc063ed4660d14ffb0b1f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/hu/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/hu/firefox-90.0.1.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "d8588d5540b85daf24148671781ea9ff814d550bb2bc4f5b42c58480ec73edb2";
+      sha256 = "ba8d28151ddd5e02b530b653f5bf5de9dc97669355a8b6370e5067527f22bf34";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/hy-AM/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/hy-AM/firefox-90.0.1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "e965b9d0c419d930b5d32e5fca9feaf5498c79b862d86890775625bfcf6d4c61";
+      sha256 = "df7d7543013687f02a88f9e6d52d4bfbb46c6ce6646bfbbf86571d7473be2554";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ia/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ia/firefox-90.0.1.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "ca72f852352f39332a8483cd8a237bd341fc5a59dd9691a611e3b376339e9214";
+      sha256 = "1df0469ba5a368bf5ddd323e68ab458d29042b85e471bb7e20dfccefdf086ba9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/id/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/id/firefox-90.0.1.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "cbce57ce7feebde4bfaf1cc9fb32dbbac93ccbfca3a8bc0f78654825becece21";
+      sha256 = "fee462d383763763a6034a452150166d507d424e303b114b68bb13b6779605d8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/is/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/is/firefox-90.0.1.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "469b8167124a958e8d63ac1b1e71936a586e887c747753be484f5761f41c3ac2";
+      sha256 = "86568d6afaed2043d916343c565689047246ff3dbab5e6d928e5a6722f8d093d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/it/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/it/firefox-90.0.1.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "ebaab65016d9c3a5e04d48589b1ed98d3ce8dfd0fcf1a47c301b35859602ad71";
+      sha256 = "36e5dc00b8f9bc3fdc91441c0939eae5d43356ef0268c2bebea1d087f5d414e5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ja/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ja/firefox-90.0.1.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "ca67a104f71c48d61dbf6edc927c4081129aa66f48dfd504edb1ece7a9e2277a";
+      sha256 = "b07f66b82be0f6f716384c37286205be455c83d8c9299456376d171167269903";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ka/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ka/firefox-90.0.1.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "5b5c42725b471cc505a9b87786fd3197903703235495ca81d87c19d96627da45";
+      sha256 = "5b391f01586ca70900ce279de8f3e22c670de5b210f350bc8bf82c75dd47e0ac";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/kab/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/kab/firefox-90.0.1.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "0fe867e946add17cfa0d7b55c8141ba2d01d1f369df8ad4afa40c6ac723d13fc";
+      sha256 = "a833e4c862c8805d4a1571b210de928f5d4fd6e7973d1de5e7ac1e8e3877b722";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/kk/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/kk/firefox-90.0.1.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "0f2cbf77404aefedae1ef092da3b55ce3f5f781af8a9e7017a458fb535b23ce4";
+      sha256 = "5041bbd4acba0a2710e705798c8196605c62852de8a1c43f3676631dba5369a5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/km/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/km/firefox-90.0.1.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "1bc3a6e917ad851cac0148788da0c74fd3879732aeae5c188d964d2cad4b3c15";
+      sha256 = "f71888db4e4cc49172d625cca26b5b72c6d85180894f29ee0b934781f0f6efff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/kn/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/kn/firefox-90.0.1.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "77fc84153e242e6f07cce2ed4456e7bb9556ddc1048469ae6dbdec99cc8e96c4";
+      sha256 = "7d32dee56e657d791eb80e6829ad2ff3624d949531bff1366b685924564d6534";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ko/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ko/firefox-90.0.1.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "5eda0b318f39eedf6982aaf7965a086372e0750a3acd711d4b7474325216b2da";
+      sha256 = "f9f0781ca8eeb1b21060a3cc2df8f8f5fecd659a230fa4f5f2907db5c37fe6c6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/lij/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/lij/firefox-90.0.1.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "393223aa925d239bb690b910144a702b46be7e8e256ab52b246e1372e7f89275";
+      sha256 = "0cff9a886e2d158ff00638200106d6537a254cc5a64e48a8233770e5798c1ca5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/lt/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/lt/firefox-90.0.1.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "8cac447febbe03018759b56f2e96ce07f78c464aa0da3ebf17fc731da0602b46";
+      sha256 = "69c8e5a6f5c3d2435ed6dd02bc1c4b9264b1543b7763ade3accf4f30eea7b9e6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/lv/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/lv/firefox-90.0.1.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "5c000888c60575410a8a851bc2ecddbc981c512683411a1d0792e43e07da0c71";
+      sha256 = "55b59adc86e9e91f5a134bb16837c8843449f4dfc85abbb3f292bb34214bbca0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/mk/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/mk/firefox-90.0.1.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "5bf30fa470ad03c9447ea3e53fde900e8a2f51a607066ab50c713a93cd6e9b06";
+      sha256 = "d670166e34e513ff4dac69740f547542e4e2c3e24f7ae7d165dbe5a4151f17e4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/mr/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/mr/firefox-90.0.1.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "f842218097dc96dfed8726d971a1383dc60e9054f7f974879e88dbcc615daaf1";
+      sha256 = "9cd258a90e1a12a113e626bbaa4d557936b29b71491138e73f74ebf6645a9b76";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ms/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ms/firefox-90.0.1.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "dcff05df156a85049712eaf31a5f7676a047c94562529a9cfcad7320f3fcc4c9";
+      sha256 = "0b68ba835ae0f3561eaa2721de08bab95946c1e1111b05f8b02cb7f95bc23335";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/my/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/my/firefox-90.0.1.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "f6b159ae83c05440c0d3e2fb4af26b63df4a776702a5afbef837f0846faf41e1";
+      sha256 = "071df9d8ee0a5d1e3b3ae8f472173b5da378b6b41646a3d1d2222a3dbc73596a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/nb-NO/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/nb-NO/firefox-90.0.1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "9a3520ab261ba3c5e599ee04e2a6d494ec6471b8ef1dec266d45ecd530bb1a85";
+      sha256 = "2623cb59780a1db3cc20267023c93f578ad4c6cfede8b12416f538d62ffa930c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ne-NP/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ne-NP/firefox-90.0.1.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "d73479851c04957855f3ffa90a14d40ee249ad61013ac101491d1d60bd9ee310";
+      sha256 = "a6c6c514cf476bd93d64c1e315161d765792528a632aa881a75abb85076ac998";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/nl/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/nl/firefox-90.0.1.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "91fa566bc4fb42633e8e0a1ce8cb4c5ae9a3f730d3b4541ec128ba83319320c8";
+      sha256 = "60d7de62f35cadc8bab987bf81fe6d8635388b361f3157e5d13809604cc41927";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/nn-NO/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/nn-NO/firefox-90.0.1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "9e46ca01cbe183474b1fb3e5d59e75629bb272472c0aa3a781fe7e47723a90f7";
+      sha256 = "a1b0cebb8de16685011e5cded38add6a3b13738163dbcf6216182b350c293f27";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/oc/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/oc/firefox-90.0.1.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "d5a208d52747413ef2adbbfcbfd7264351337ee57e53aa3817857c0a996e37ac";
+      sha256 = "f4f491e962ec713e708e9f773de3af9f6251ab6f2f41f516116f83a63824928a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/pa-IN/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/pa-IN/firefox-90.0.1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "d79022a314255210a3eb97f82b9653a20612dc871d6c418afa1a7e0fe63d274d";
+      sha256 = "5a41333ed465121d212ddc6c61faf2a5c4eab25daf0ec3206196077f490a18e1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/pl/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/pl/firefox-90.0.1.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "accad8da9a17749f43c676a69391b5b33a9d024624783228eef7ce48af56cb45";
+      sha256 = "de5d8c3e5b8f458c400a98c1b72595ff951a54083ff29e1bf01fc3421443cbd8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/pt-BR/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/pt-BR/firefox-90.0.1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "6f9202ef11e2d4368ccd0d6d98daa62ddabeab51087b84fe340bd935fb754f36";
+      sha256 = "53fb72801cc33ded2e31142161faaca04ec5f7742413faeada30e1c5ef51025b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/pt-PT/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/pt-PT/firefox-90.0.1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "8020109a785542a33f3139fde8b0cea5920ac1618ffceb96bcaa81627c5da772";
+      sha256 = "2c72ac24a7cbdb79b338ad9a79f649be85caa0377b78fabcf07c42b1ef02a94e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/rm/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/rm/firefox-90.0.1.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "0e97d8aa72831ca0ec8d33f6877fa904bcc2f7ca3795bee85121ce5589388e97";
+      sha256 = "bfd252411406e6a8816ef000fc6fcff6357741924754daf05ee39ff331bdf3e5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ro/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ro/firefox-90.0.1.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "6cb71deb1f0b9d42b20d9400d6789b7b9b88a057f505a68491ab493eca0f4313";
+      sha256 = "f4c9a173ab7e9fc964f4c255ef9830559fc835d1f18ac388de5fa16d2df5d521";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ru/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ru/firefox-90.0.1.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "a492308ff61a2b4673d178caf47e480376bb6b96ff8965a360f6f49321ee51e2";
+      sha256 = "07d1c8cd10323f039a040295230f223e9e6b40860830b2e26a0ab9fd2c15d0a7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/si/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/si/firefox-90.0.1.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "6858b2100d235dd7770ec003a4e9c2374354ad9f3a682aa9afd2c95ec2b81ff7";
+      sha256 = "6f816e89adaabb79ff1b73eed516e6c5f817d7af0ccaee58262ea47c80a08664";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/sk/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/sk/firefox-90.0.1.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "bf74268fb305ff461e118641cee1b26ba687d9dda294284b2a5d4c7f6e5bb39a";
+      sha256 = "14fbd3f2057da82c95e2cd194021adc3c7c19b0f64cd56e623ae2341b7414301";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/sl/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/sl/firefox-90.0.1.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "fb2ea5d4b1fa4c7eb88806efed2b3a0c724c5d81f716b54c015d7d976c457f5f";
+      sha256 = "388ef17576722a32d22350ac2848c8e7f0239481f1d0172441770052bf1c53d5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/son/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/son/firefox-90.0.1.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "75e6a69bf9ca85c1d214202de55f0b5c831b41c22d375448db6eab3f7161779f";
+      sha256 = "f7785fc5a91c991c277b36eca1928c350953043e77cdb4b47f25d5f2f611828d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/sq/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/sq/firefox-90.0.1.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "bbe1935033db10b0004c7746b089040decafc0cb04825a5df5004905dd470320";
+      sha256 = "cc0f348c99304e0da47bbc4be45bc350c53574ea1e20d781f88862e5add4c60a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/sr/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/sr/firefox-90.0.1.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "cd97fca2ee3d57c418e0bbdad529c1ec424d18a0aa5976a4cff13fdb7bcb3f39";
+      sha256 = "6824091ffb721ff42072798cd72c3061921eb69f85a710c141407f83ddddd836";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/sv-SE/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/sv-SE/firefox-90.0.1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "a3eeca622d63db7fd94fcd691a2d910380e211bb0d78d131587a448df6ebc635";
+      sha256 = "3d86180707aa4f2fbe271e9d8fdf10ef5cd52126648a64e684214f159cbc7512";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/szl/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/szl/firefox-90.0.1.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "72c868394c285d890fbdc560813803aa26ae5342f36a6864588a829cf4639c09";
+      sha256 = "e49776c7820b51648c8e2d19f5e8073515fda5397adae3302383e9f503240e08";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ta/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ta/firefox-90.0.1.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "c87f9e8d7f5935c30f9a916fb76990d0678e9032287fffad48230d5f66aed24d";
+      sha256 = "d8b32890c9ad376cd9122ae6e80d1dc65c0b8be1e5dd4c7381011b1059dd8bbd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/te/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/te/firefox-90.0.1.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "2d415574a612f011c22b782e439025d1a50ef12217bd3b538ff36010747f1eea";
+      sha256 = "87974e3cf5214db7f82244b43a584f3cb11d4ba66ac45dfce1d22f417fd63185";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/th/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/th/firefox-90.0.1.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "7c73cff2af72421231b9a03d3196186db98ce6b09a0ccf4954219506b50c27cd";
+      sha256 = "1d65c868936bd174ae9ecac66e1c1bc30e4b1214aaa0a2762dfcda6929eed1ec";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/tl/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/tl/firefox-90.0.1.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "6a37fae3a5c0156827f6b69aaa068aca6982cab7e6dd242f74846e743c00f96b";
+      sha256 = "115ecf4d90d13df1352637c9ed6d1701b6a9d0793d3487d582b90d487e27b52f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/tr/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/tr/firefox-90.0.1.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "42cd3896f2b726cff21ce0cadd4135ae1f325dc3102efa17cd3a3c5c6948c6f6";
+      sha256 = "d66f4114e577e945abbb1b32206b2cddff65db1f9a2b1cbd1c8a11e528ce656f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/trs/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/trs/firefox-90.0.1.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "1ccf3ce127603a42fc5addcbaa238b36e9bd798615a2e6bfc95de7db5d12402e";
+      sha256 = "1dc6d43229d0912d34394889deba3d91796ac4aac437b7ed86065d978871fbec";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/uk/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/uk/firefox-90.0.1.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "2ad2a6306019dd5960e4e25ec59c7fb2eec0c233f07c04930049d5d75f3b84f5";
+      sha256 = "1795fbe577dee1bc042a7b50bceb958446e7f6c95133c2d1432f1494ba86b6a0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/ur/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/ur/firefox-90.0.1.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "e63605011a8cef5e239a39a21edce7b1e2bbf342827888e1ab36c22bdc6ac5c3";
+      sha256 = "1da88a58d6262c4b2866e765efae0ccc23ff224ed59d5f9a30434a16408b17d1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/uz/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/uz/firefox-90.0.1.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "8f5d446ce0dac4bfb0640a492de57d087336578c157c238a8e3e9f186408e337";
+      sha256 = "549956dc6ac0eab50becf7562e91a17fdc3f0244197379f03bbdb2b12f2ecaef";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/vi/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/vi/firefox-90.0.1.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "5f62f1e64035a158883e7e774cb87cf15b336bdd2171ffd65e13ea8cc81c5542";
+      sha256 = "3e9575342f30b81bebc730c855b54120c95e385edf9273e5355f857da81d55ea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/xh/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/xh/firefox-90.0.1.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "ff111b178134fd2dfc6f7597b6c33b4a8ed4aa6ef64c6687bcedfcef26982d5c";
+      sha256 = "d2e7dd3cbd70ef34c53bcfc5b3427508ed368cad548afe0509ff7149a6472ff8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/zh-CN/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/zh-CN/firefox-90.0.1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "90af3045eae839ca67a42e8ff810156ebe6115c3749e0547e907ca910eef3ef1";
+      sha256 = "a65f4a1002422a07083fb8566e3129f781a8083d9427ba4236812204c953a5f3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-x86_64/zh-TW/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-x86_64/zh-TW/firefox-90.0.1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "5285b29bd463013c80cf23db6947cc720c5327a71a9dc35e678444e7ca2f3a42";
+      sha256 = "e5f1c0d36c7a4b3634858d691c5f26481018ac4ce7c5ab7a4c19e04b33810941";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ach/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ach/firefox-90.0.1.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "0de413f3533dcd0fb5d2fdcf63673d814afb611324cb32fe9431f59b735ab152";
+      sha256 = "b5908565dea1f33f82d8e380bb5d648fab9ebcb4af24d602a6c71e176fee5007";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/af/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/af/firefox-90.0.1.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "98069b18e97b3fb887d191321bed74935def28a4288abe8765c27acb62812ba9";
+      sha256 = "d40bd877e5ad156a45c0c325794537ef9dd71770a395aeebf8381075df0c74d6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/an/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/an/firefox-90.0.1.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "d84d8c1ec45d53207b48043b8f468bceb211b199a3a5e76337700ec8b5f40f04";
+      sha256 = "c72b84b92239955c750cdc302cfed32c7ed1a1352a88b5f599b4edfaad79fdf6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ar/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ar/firefox-90.0.1.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "22dea08d8f9d100881d9a3e5b56d2618502d6d498ea56ad7cc6afa8e862bc7e1";
+      sha256 = "25b4175421efe766e7be49591c04b636699bc685aee6459c48b19fe9aaca07db";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ast/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ast/firefox-90.0.1.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "e92ea890c51def74523dadae1f40f1fdac4816db50025e12a6575d798febc1eb";
+      sha256 = "d7919de20cf70de38f03e508b6ac5728b76ceedb626636cfed74c4698ce4dbc6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/az/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/az/firefox-90.0.1.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "abb1a31a0374b95fa3ad36fea893c39dd8056f8a06e4d94dbfced3d80bd8197c";
+      sha256 = "addbe7fa0121dc3643afde905bf33b764d36d49a60ccf6c427ab97ac941ce9f3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/be/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/be/firefox-90.0.1.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "c5a8895155b3e4cae1c3541e66b3e551b3c14460d2e522ba72d83b5d702a8889";
+      sha256 = "db52de7ce7236110b28322996303e2a07f69b88eb53393aa4ff75dd841b02aa3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/bg/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/bg/firefox-90.0.1.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "b6b811ed0e53795623f6c928d0411600aa2ccdfc9fa890e846018e085bbcc6ad";
+      sha256 = "2abe8c91ce73f350e31de13807fcdc48c2621a29fe25d17ed25a2fb8052ce831";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/bn/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/bn/firefox-90.0.1.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "4597c3c41daa76c3bdb30d3fcb4cfbc51a7571bab98abc8b35f6b7ae2df1ae5c";
+      sha256 = "2b5f6e1bd73eda0fdf69f6d8181b83206bfbcfcb5edb11be12f2a29e6ffd4a37";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/br/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/br/firefox-90.0.1.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "5346306c5cdfce1b3d7ece50ea1fe3dbe9ae69ccb83f70a0a2c451972ef40afc";
+      sha256 = "53339a26816934aa1f5edac114844c42b7107326f114ba28818700ae8ee199ca";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/bs/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/bs/firefox-90.0.1.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "260e08c62ea7fd0d6d130453e1247588c83f4e0414aa569dc23f100bdd534347";
+      sha256 = "d49005f911a027a7628f45103ad2e43438a7ec33142f9a5ec7738a8694d071de";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ca-valencia/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ca-valencia/firefox-90.0.1.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "855660233c59d97b05e56dbc2efcaa1ab538c1433ea14e2159d3efca8531ecef";
+      sha256 = "ccaa99d7eede57e43c57ab2a185a53061476cedb65f37d4659c1e765297c937a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ca/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ca/firefox-90.0.1.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "b71bf5b2137a715fc75c36d9ee9c1e20525f31b8a2f2dfa56af51305a94058c5";
+      sha256 = "b4df85c3f723a3e8c44d249f12f37bd27eeade4ec802baccf2e82a92e9869002";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/cak/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/cak/firefox-90.0.1.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "fbf2092e4b56716042f993eb4d5bf41a9518da2243245282c9cfbc812c8c5268";
+      sha256 = "a8e1244c9904e3f5bada11c33f2f542b6dbb5ccb867f7cc6d5a2d1a99e95c48d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/cs/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/cs/firefox-90.0.1.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "466a81994a51fc42ff2b936a2e2d20089524bb514031f740f7a6a0865ff57b1d";
+      sha256 = "b2cbe665a6b2482edbe29b50036922708e7bc7aaad65ef6d91b47beb4f53acbe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/cy/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/cy/firefox-90.0.1.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "ef3596c10627fdf196a5f52f59240fd85d6eab33035cce708613c7dde041b413";
+      sha256 = "5e151c341812dcf8bdf769ba0a1ae9ec03b3e79d5f55fb18241ab0ef907538fe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/da/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/da/firefox-90.0.1.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "946b42c16cb861b21a0a1808cfdf554c955998aebcf59299c240a334abb8aa47";
+      sha256 = "ebcb60a77185d17114c26d58a61a3a3ef5198709c43133263efbe39c05275dcd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/de/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/de/firefox-90.0.1.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "b4d003e8abd272870ed332448aef29bf2bb40de74ac0640912a65031da5012c0";
+      sha256 = "8819ad2efc7d49946eed2adbb10280602d0004722207cb46e06f46f4fb0f80d8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/dsb/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/dsb/firefox-90.0.1.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "57c7b439616ec7eeddf05c7c5a5fde0947092762c5d5f98e87c3850a3ee768de";
+      sha256 = "c91e40aed7b1c1c41ebe0cdf77e46cb284d7cd308c6ae66a70f46fc4dab008a0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/el/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/el/firefox-90.0.1.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "3c444a23416b6080d2d6b5e8744651b4f4796e3ecb601c8eee3f21cca8eaf224";
+      sha256 = "f9032320f0fd0622c9e6ad048de12533e92660bf56e255d2f79fc0c2adc3356c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/en-CA/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/en-CA/firefox-90.0.1.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "aeb3d01315db024984739999b9fbf1eba0464a7a393451d311fcee786509198f";
+      sha256 = "9224c71771b26085f067acd29993e48aea66a61c7ae193bb6442569b9291677a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/en-GB/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/en-GB/firefox-90.0.1.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "c327ce261f0c843eb6a50c7e6ef9d3163548d03391429f9a55c1adc6b9969759";
+      sha256 = "fd27cadfa31f81d7103f867aea3efb6f03f341708c4ed93df5d6d8fba601c1eb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/en-US/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/en-US/firefox-90.0.1.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "491fd0066a893fdb3a6cc58e3e0b6b02f15096d07563437a79b2727d09256890";
+      sha256 = "1043cc2125aa682953340fb40b721b3dcffab1ad0c06184fc5a92740638d4a13";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/eo/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/eo/firefox-90.0.1.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "1c39ec1e448288541cbdcc10f7d66e8c36a66d08b1eadd9f8f90e590f6473908";
+      sha256 = "1dd42f52563463c146ddef224f97b6e87f82f01249f7bea290a4cb8331dc9fde";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/es-AR/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/es-AR/firefox-90.0.1.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "fa8dea8cecce162a25ae9d2640b35ab5f9f2073c136d051ee4795caf8f888aaa";
+      sha256 = "fae114afacd99e045abad6dd5a6d4ad5669b00158431ea8458d48e43aa06d4af";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/es-CL/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/es-CL/firefox-90.0.1.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "e156fd02f2c1c8deaf416f17d78dea0433e0e84967b09233ceee9e33cbe42bbc";
+      sha256 = "1a4b839f8b55ef758c56ce18770cc31e871278e58f378fa7e7cbf4502e3b930c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/es-ES/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/es-ES/firefox-90.0.1.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "7359fc86b0f6da2916e8f178295c85ed3c8abebc1732f7735ec7b2f4c2aeb76f";
+      sha256 = "cc21e66b7c7250d57067c8fc133a8b6f4a4f4020474bb7d4510c94ca02c316c6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/es-MX/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/es-MX/firefox-90.0.1.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "57bebe4dfd2812c8b48f597893738b0cf9badbdb11fe1e3cfeae45290dae7f2e";
+      sha256 = "cfd89dd866f633359c57af8915586abc7d3bedcf2523bf60f7878d70417c09db";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/et/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/et/firefox-90.0.1.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "71e3d1a1bf3a8d480cde7cf8ad747c90b8eb217cadb445ae1ed3aa10c1232275";
+      sha256 = "6e678eeef5ebe30b6005533e69ebbc4f096e3a1e2fc07be8c8f1cf3d1b5c1b06";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/eu/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/eu/firefox-90.0.1.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "1e38c53105664f6dccca1b67928222f161c6de37f9a661c46a8ffafea3600cb3";
+      sha256 = "4fcab02f0a755db4baadd5e04fe9589226b0082768ef58e32680a72a86ef52f2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/fa/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/fa/firefox-90.0.1.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "b72165e2561de0d65e6cf991a4f5e4ce72fffabb23d80f3b7408c03e1eb6d0c3";
+      sha256 = "bd7500a850ae6c4ea9702521716336bd2809c8e3fc058ea021ee27a1b6d40aa7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ff/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ff/firefox-90.0.1.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "9f2d7b11c3a05fbffee4d4e9dd5f3b397fdf3edcdee174a0907b1ebb1625ea62";
+      sha256 = "76b4327258aedc72fcae8b56dc5dd0c99952f0a2021252c5d0e36d1366b68016";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/fi/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/fi/firefox-90.0.1.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "29e2279d03732703576c0dd43afabe1f416c14d517979f6dde78ab42cb561d4e";
+      sha256 = "4500cd834525149ad46b94a7b86ff776511f3173a48064ed88d6b2e67596dc68";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/fr/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/fr/firefox-90.0.1.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "93bda1a56ecce4dfd84fb9333f3b333887e2014edfdae4b555b6a4296baf4805";
+      sha256 = "85313248992ddcc04bc5b72802929a2c601daae07d5e6d8a11c762159caecf86";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/fy-NL/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/fy-NL/firefox-90.0.1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "1238d1e763457d4e9cabd00505cce7ce3dd9979e41ff1d1b005e35a229d8dce6";
+      sha256 = "ba0d003e88355027ccf1be545555e68e06a19e11b7090844707e0053796f2a1d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ga-IE/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ga-IE/firefox-90.0.1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "8eca1fbd8f536f62eb645ddb5cfd5e9c573492ef7a86f86a930b3a09829eb9c2";
+      sha256 = "52f94cb53101e4d2564cb4f4589cb2246a4c78314e38e3d566290adf43f40e74";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/gd/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/gd/firefox-90.0.1.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "dc173ac67ad7353229ee1c606ebde73c4be2ccf64ee97f3746e45a2766031e63";
+      sha256 = "0998440173e3b5886ff3a356a79fd05e7ea113cab4582a9400abad44ecbf6c48";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/gl/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/gl/firefox-90.0.1.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "038bd87c6c72727d6f535b863279b03d6e2c979672d717556222b280327cacf6";
+      sha256 = "6ab3ef1a97c8382160420f563c814f14610f1a0d4565ef8f86b8c8ddbf34e162";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/gn/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/gn/firefox-90.0.1.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "42f4d4fadeacdb003db6104c0003cdec7ee81558d07b11573e7d0fab9351dbc8";
+      sha256 = "f57a5d2ed2b9eb8d35b9bbbb9f76a988409db09c7855d6cb93abf151f8e449c5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/gu-IN/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/gu-IN/firefox-90.0.1.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "6dfa19890282d88605585a5d5c640d200d52d8c0bc61218fc2e8f19d16a9811d";
+      sha256 = "eb62873a8c7e2b5b706cd0033b5042a4f4496c265f7e57e1c65f23e3fc896a6a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/he/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/he/firefox-90.0.1.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "a16c0423c33f6f05f9a1aa607232506e7353e2774d7edc224e3955813d212eb7";
+      sha256 = "6c22304604f9e93153d55251e31bb250168015a4ac6c3d93cffcdd9c64ece7e9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/hi-IN/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/hi-IN/firefox-90.0.1.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "fef5a9c06a3befcab35a0532cdcdaa3c6757a5ea5b6bc0d4ecbc684f37443077";
+      sha256 = "155f425d7d9b867acc7035d1220f60148fb94c25dd51ee7049e9c2e9b096a0fd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/hr/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/hr/firefox-90.0.1.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "464ebe80e2d55686a56960f6a6789b58127e86efb5bf7dd8ab79220f49790659";
+      sha256 = "96faca700f49d3f8d9337f0f4f820f8a5a6335b06348b835bd39a26619e4efdc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/hsb/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/hsb/firefox-90.0.1.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "92458b19e0a3a8c573a126f120d3da76f185d9822c5f32c3d56f3cc90d999f55";
+      sha256 = "42ce59b460cf94705f88b80c91705bba81142798803bb1d7a3a0bc34dd96a7e3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/hu/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/hu/firefox-90.0.1.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "9c078d9022a2d83444709fec7a4a122369ceaebc4b27b99bbec9c67be4370ec4";
+      sha256 = "804db507b43af04716bbb4d53525aa9b2958b1d3ff08b93812f1d78531eb01da";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/hy-AM/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/hy-AM/firefox-90.0.1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "36b64295d46fde7a85994e374b38a8781bdebb4e15872f81c8e694b4218e2713";
+      sha256 = "488e6bdd3d36490a33d5794f5ede500bad29cd2014cdd50ab5edf74c829fd424";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ia/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ia/firefox-90.0.1.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "080f890f868a4c7e7f03db96ab2c25b6f39dcbb1f960052ce75dbdd5983487a0";
+      sha256 = "fd3f22e1247b394b654c12aed384c515a390e91651bcc66f3823205c67951287";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/id/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/id/firefox-90.0.1.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "b43ceb1d6f6a003aae01a02af15c0e4aa0fe9e8547703adcd872767c2c797717";
+      sha256 = "2a197f4f2aa069b888ad9bfaa54da1b3bc461309a2f0475c298b7e501f06e6fc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/is/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/is/firefox-90.0.1.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "35edad7f2a31b7b2ffe0d8eee2b0f0ab94f5f91c8b2507b344b7d28ac13fbbbf";
+      sha256 = "b215c19156d129ef30c2d5b30d723d3923e57658888736bd31d3c7fd4a30f835";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/it/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/it/firefox-90.0.1.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "47f17fe75d1ddd17a4c044dce4dc223a69da7f7de478b87d58e8f99d488ccf79";
+      sha256 = "f94a4ddd3278993c80e776849cd52721f40a2808a41f37c74f34ef4b7deea972";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ja/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ja/firefox-90.0.1.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "86850b09c992a6383a406e99bc8698b8471f8240cef752126714e6f070e2b220";
+      sha256 = "4b22759406f177c98ee2496ff17de565f87a0f566e3759ce030fd757c1555e32";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ka/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ka/firefox-90.0.1.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "42297e2f4c1d72bc46dde66ddca934962b2aee9a918e24b90870fc5774284bd9";
+      sha256 = "7e602c099b680f1da42030067988f818e954ec4b02ddc6ec5473e02402a06428";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/kab/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/kab/firefox-90.0.1.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "7f00172ed2f2285ef5b8ed3774781f5036c1cde57f1a321f9b91c54679ef68ce";
+      sha256 = "92d0441b33b179d515c88711bb13684e37c748a938d818723256092930428dea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/kk/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/kk/firefox-90.0.1.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "f7046b78d72074fcf0f62c7d4b660cb8a63095dcd8c24fcdfc61c574ddfb42ae";
+      sha256 = "50a44e34e2a12ba6357f62bc82d9de9c5250c6e3b5635c81724d0a96f5111436";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/km/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/km/firefox-90.0.1.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "4157455134722e29c8a039cc11cac68cff7ff9311405a2c71e30f982f12888c2";
+      sha256 = "de8bddaf5a937bfc5bc21897cf95b3d40068133df4c9edfe7eb9eaf76d23e17f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/kn/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/kn/firefox-90.0.1.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "ea5812c8eb194be0e8335f48ebde884a4375df2513c9275ac551aa0b18580dc0";
+      sha256 = "86e88fbc62e131f6b6a599575f5c507385251e7d03a114b61e8c1b78c4a8c22f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ko/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ko/firefox-90.0.1.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "b25b99297a64c9a700d9dd285db01d6f859402f09b38b2ada3bfaf914c72ec7f";
+      sha256 = "10e0169e337cbef4a33e227ea57ff517ec570997fc471509ff95f098cfb52b12";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/lij/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/lij/firefox-90.0.1.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "2c875ea5c87840527e2dff471fcfe774e8ee4d01c764bf1d73da99d9e875f4ac";
+      sha256 = "3e054180575b29c5afb286f6d7e8453bc8d4bfaf1ff5d8ac5fc53757b9dc48f1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/lt/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/lt/firefox-90.0.1.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "27dc824ad230ea5f3cfaafa4024733de85e67cc1b6678aae64686b6a54042855";
+      sha256 = "79685f8b0d646dc6fb446a85808e22107760343a63be429551866a22581106da";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/lv/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/lv/firefox-90.0.1.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "ad865a647d9fa2b20c68ea2d597595aa9b03bbf40987e763d1225fffc91176cf";
+      sha256 = "4df1044be63e35775c89005cddba209760b169be29a3e49d3d29bc370b11dacc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/mk/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/mk/firefox-90.0.1.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "85c556608247de5e02808f264c721e16f909c5299f6ff423ff0e594da87fccb7";
+      sha256 = "8040fd3637b5e25215e1e50cb74b6f25736f78d610cc862eef08b5a7e4905f2c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/mr/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/mr/firefox-90.0.1.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "1970b70f983bc985778537728b044f27325bfa89cfbea7e000e91e5e66fcea1c";
+      sha256 = "49b9eddd2dff87a631ad143e66019d52574ea16b136956e4da473fcee4b810ef";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ms/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ms/firefox-90.0.1.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "ca86002d548f94414fae96a266818ef4038c06f7307be854a997c5ff4b3529c3";
+      sha256 = "629d480a6cc207b558cc2aff169225ec636c3d5656b0d04d34b60f8235151bc2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/my/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/my/firefox-90.0.1.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "6e6af248e80428fc0314be80a66f5ab054437e119e17c84eca6e8ca9d34db948";
+      sha256 = "25b330fa564734cd9ead80a58a770a6453d64483cd448dc8ac93e70a2a06a04b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/nb-NO/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/nb-NO/firefox-90.0.1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "1310663a3617f78245e46dee283a3932354b9774a39555849c342a0620fe48bb";
+      sha256 = "4d2a0b7101197a603c136b7476e6887d6d9731bbb62e5176ad9876039cc7e166";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ne-NP/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ne-NP/firefox-90.0.1.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "ffc16051f275d04978c1414f919cf9dcde219f998148c9ec2e4f63a7620243f8";
+      sha256 = "74c9685da27d362a2729303ddf451f684be097d3ca74bf3596585a869921a881";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/nl/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/nl/firefox-90.0.1.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "e2a654e66edf777397c31ab1a6862a051071abae376f5d2ceb939ee7c86d90e5";
+      sha256 = "a10dc5b62f058d71b3dbd8cb12083fc583528b1642d4f2bccce0f1a422147c7f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/nn-NO/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/nn-NO/firefox-90.0.1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "8b2ee4cdd6346b918a5de6c1191d48f5606f40414ab3332129b10614495e1f4a";
+      sha256 = "479c022dbadf9b10b2c37577199c3f4df714501502bc894c63efde9358b59745";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/oc/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/oc/firefox-90.0.1.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "cd7bb8a640662df12a56cd15569ff8eb611db31a4df676427c1da94579a5a37f";
+      sha256 = "3b702fcd7972cc48151498783e8d0129766fa7adef311369acdba7902bd08f19";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/pa-IN/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/pa-IN/firefox-90.0.1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "18ff5174c3ce73a2733c2f1ad579e9d87c249af5aa1f708c0437d11c720e7669";
+      sha256 = "69727d81e5dd911bfa426f3f66385caed061e3b22825eeea270925e6d7997a03";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/pl/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/pl/firefox-90.0.1.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "d187fdac08aa62958cf2238f6e2749de5b8701634b99757e043cba0218451a26";
+      sha256 = "29d59a753381aed8fd4838cf6da0a43389b1dd408988ffd4e97ec3262c1ec75a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/pt-BR/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/pt-BR/firefox-90.0.1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "63c81069183b3862e2b379a5d6a816aa02338ac0c324e33c0e020f579d9e2ebe";
+      sha256 = "6ca5bf042fc2a94dd229303cec352ec797e8494ca58b12a337997b8289dff78a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/pt-PT/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/pt-PT/firefox-90.0.1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "5d24712703b54d2e4aeb82a2ce95b9d937e58886574b80252450b7ede7120d23";
+      sha256 = "50e682cf9bff2b4202ee4c9e64d5efcca66acbcb74d4074ae5d571875cd0f509";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/rm/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/rm/firefox-90.0.1.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "cb6bacee900a12c51960d2175caeeba96c57908d860bb0b64ee2529ffde284ed";
+      sha256 = "983c8fb011f348b6de1665b1347cdbda23fe130ea33c7c58a49cd417d0419cff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ro/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ro/firefox-90.0.1.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "29d344efd66aae4645208746a1c8083ceed01ffe8b8c372e8e97885e385e3e19";
+      sha256 = "1f2ff5fe5d65f5f143e89e258a247291d10c25ee2270607250817187353bafa7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ru/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ru/firefox-90.0.1.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "17b9ba80d6dc056fe774e1836533ebf44be27edf6123c3bb430a00b1f2a21d65";
+      sha256 = "3a2f872bcdd7736c1e528d306cb9409826c4958d1e8aea627ef0e2c26b7d8889";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/si/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/si/firefox-90.0.1.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "781b6ccc99d8f886e6bdf103327332ada06529ab6b728ff4ec6bffb5d176abf9";
+      sha256 = "cfb67ee121130d9ea92af43e33751c31f778f9ff6f9beca2dc609ef5340f09b9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/sk/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/sk/firefox-90.0.1.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "1895f1c5ac0dd749a3e37576c6a90f9b7c5f3f7e9eec24af2cb9a87dcb730127";
+      sha256 = "c045f5c48e3f3f9b20229e744b85920e47e3858f97262ab4d3a8fd61db80da40";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/sl/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/sl/firefox-90.0.1.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "b3f27a10c094a7d9e308ab0b2ccb3fecb94a8f596b45ace8f66f0dea628e68da";
+      sha256 = "ae3bf5e327c4f4fb7a36b8367539de466acf8f60f40e9deee3bd4928959f0111";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/son/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/son/firefox-90.0.1.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "376bab9502491c3946538e3b26b7a106895bd41de918cb268337af4ce58cd4ac";
+      sha256 = "a7d7f7d1ffdc9126f04f8f96001bce26d21de0e0c65dd1fd00f6f85f75976ba8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/sq/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/sq/firefox-90.0.1.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "572251b4b621551e7a2d889489c223fd4dc08b9b19242a2524ffd3cdec53dd01";
+      sha256 = "2982b315ab29ab375d77b1093c53a4a207f36a2d9a40b34aed3376ce96ce5dbe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/sr/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/sr/firefox-90.0.1.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "50e594b3857c7ed71bfdda5f6ad7a2460508d029055e5ba17b8eca3269659ae8";
+      sha256 = "0a2a702216adf7c98ddb19cebfea886b5d0582523ca64f2d7c8656ec663aaf6e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/sv-SE/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/sv-SE/firefox-90.0.1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "b9dcabfa670c6a8f3de85558bf2ea83ff6741754e2eb9ea90ccab81b2f3abce5";
+      sha256 = "dded767dd98cc3725044c988354842086768bf9a35eb316111df96368a95900e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/szl/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/szl/firefox-90.0.1.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "ffeb74d2b09595aa6b4d45b5e8587d5fb566188e8cce484bf6887eea1fb83f18";
+      sha256 = "4ab8b5112cdfdc051a65b5cd562015bf85e11d5ccc0773111439cd469e175c33";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ta/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ta/firefox-90.0.1.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "410bbc5abf26f49a6e54c762d62ff91068cf95cbb12725a3bb3ce21911abf029";
+      sha256 = "0240cb3f5357a213f622f1c708e2116db4a4271f4b36135d6614bacdee88f00c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/te/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/te/firefox-90.0.1.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "fd8aec949b92d15e8b52b9d4ad069598e6ed732cfa90747b29539b9c36103f64";
+      sha256 = "83b5ed844b16f6b9108432a692bc0895d733de03701ab800bb330d06796176bd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/th/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/th/firefox-90.0.1.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "f10cdd31b1a0ca18f2fe945549b5c98997a3cf821974760363d3977f378449ae";
+      sha256 = "faedac7df604ed9cd321a655d27ebf313c08b085c4eeecc310a94c3afd979b6f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/tl/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/tl/firefox-90.0.1.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "5d0655ec55e4857884eb6e87a6bff8a1efc53e961bc525f6537a0caca6caef9d";
+      sha256 = "5abdce18c7b0e53f5efd00aa0381c6e90f669c51dcb4c021128a0e7a0a86223e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/tr/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/tr/firefox-90.0.1.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "c4fc2bf69b8df0bdbf0976541a3ff53090cf9cb6d44cb6c5f883cb805fb9931f";
+      sha256 = "92fd9bb4aef9b723b00cb84ffd253b81d5c86b2bfcefad93e948e443d871bd95";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/trs/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/trs/firefox-90.0.1.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "54fcae7123f16cc2956af67b13e3a0c43358e82c3ce4498f87f4cefed1333bf7";
+      sha256 = "291c64e95d8accc64fd83738a9b7060122e713786cbb360acbd26b5ed0dc3793";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/uk/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/uk/firefox-90.0.1.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "9eefa4110e1feb6bb4ac92470c89a3c29709486bebeff3b3f41479f59593b807";
+      sha256 = "163de4dd52684912f794c1f9c35b003f9cd38acf1be3bc68f42b2da9c1e13fce";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/ur/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/ur/firefox-90.0.1.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "81baf8cbd6c47468471729eb59529af660a3940c4d4795892922532304ff1a11";
+      sha256 = "72ebffebcaf8848c5a9cfbc6c9e33cd1a7bfd62b7689f938065730249506a6eb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/uz/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/uz/firefox-90.0.1.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "29d49de5f1ff8c351b19936350a6448480b9dac6c206589dd681fc26f43e3f91";
+      sha256 = "f9c56e6adfa9a0e7289e2a80f88869ebb1556843c940574cfcba4295aac464c0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/vi/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/vi/firefox-90.0.1.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "78dccd68c82b5e54a1bea87b47cf6fea80c82c8b07b92f82ed4a7c5216657053";
+      sha256 = "f15136e2e432ae999df5efda82d44c2c61cd680995436cda094bd2fd705e541b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/xh/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/xh/firefox-90.0.1.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "ce11b8aa7529f43ca7c2aeebba17aaf3b6a5b22dd543302122c71dd0ee9f6eb6";
+      sha256 = "360623cac6e11c9179f9c08f2f7f3eb844c3671b8f26a2680e097e1c84896b06";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/zh-CN/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/zh-CN/firefox-90.0.1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "407a7e16d28fee88428ce021b7a7c63f1027e7c991652227aaa11223356c5af7";
+      sha256 = "f69c7f0fad2bbefbe477ed7ee5414dab2c9ab14e1009970eca07092357cfc7ba";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/89.0.2/linux-i686/zh-TW/firefox-89.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/90.0.1/linux-i686/zh-TW/firefox-90.0.1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "1f500d830d6e465a2ed71baa1b0245fbf5eef9ab9098e9559553e2a9916cc733";
+      sha256 = "612abc1a9b8b116753ee1417d774fc2ea2f2f931248c57ea93c32ee1c534f9c0";
     }
     ];
 }
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox/common.nix b/nixpkgs/pkgs/applications/networking/browsers/firefox/common.nix
index c10d7b606871..44c65ca44bce 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox/common.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox/common.nix
@@ -12,6 +12,7 @@
 , autoconf213, which, gnused, rustPackages, rustPackages_1_45
 , rust-cbindgen, nodejs, nasm, fetchpatch
 , gnum4
+, gtk2, gtk3, wrapGAppsHook
 , debugBuild ? false
 
 ### optionals
@@ -21,7 +22,6 @@
 , alsaSupport ? stdenv.isLinux, alsa-lib
 , pulseaudioSupport ? stdenv.isLinux, libpulseaudio
 , ffmpegSupport ? true
-, gtk3Support ? true, gtk2, gtk3, wrapGAppsHook
 , waylandSupport ? true, libxkbcommon, libdrm
 , ltoSupport ? (stdenv.isLinux && stdenv.is64bit), overrideCC, buildPackages
 , gssSupport ? true, libkrb5
@@ -79,7 +79,7 @@ let
   flag = tf: x: [(if tf then "--enable-${x}" else "--disable-${x}")];
 
   default-toolkit = if stdenv.isDarwin then "cairo-cocoa"
-                    else "cairo-gtk${if gtk3Support then "3${lib.optionalString waylandSupport "-wayland"}" else "2"}";
+                    else "cairo-gtk3${lib.optionalString waylandSupport "-wayland"}";
 
   binaryName = "firefox";
   binaryNameCapitalized = lib.toUpper (lib.substring 0 1 binaryName) + lib.substring 1 (-1) binaryName;
@@ -139,7 +139,7 @@ buildStdenv.mkDerivation ({
   lib.optional (lib.versionOlder ffversion "86") ./env_var_for_system_dir-ff85.patch ++
   lib.optional (lib.versionAtLeast ffversion "86") ./env_var_for_system_dir-ff86.patch ++
   lib.optional (lib.versionOlder ffversion "83") ./no-buildconfig-ffx76.patch ++
-  lib.optional (lib.versionAtLeast ffversion "84") ./no-buildconfig-ffx84.patch ++
+  lib.optional (lib.versionAtLeast ffversion "90") ./no-buildconfig-ffx90.patch ++
   lib.optional (ltoSupport && lib.versionOlder ffversion "84") ./lto-dependentlibs-generation-ffx83.patch ++
   lib.optional (ltoSupport && lib.versionAtLeast ffversion "84" && lib.versionOlder ffversion "86")
     (fetchpatch {
@@ -164,13 +164,13 @@ buildStdenv.mkDerivation ({
   patchFlags = [ "-p1" "-l" ];
 
   buildInputs = [
-    gtk2 perl zip libjpeg zlib bzip2
+    gtk3 perl zip libjpeg zlib bzip2
     dbus dbus-glib pango freetype fontconfig xorg.libXi xorg.libXcursor
     xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file
     xorg.pixman yasm libGLU libGL
     xorg.xorgproto
     xorg.libXdamage
-    xorg.libXext makeWrapper
+    xorg.libXext
     libevent libstartup_notification /* cairo */
     libpng jemalloc glib
     nasm icu67 libvpx_1_8
@@ -182,14 +182,14 @@ buildStdenv.mkDerivation ({
   ]
   ++ lib.optional  alsaSupport alsa-lib
   ++ lib.optional  pulseaudioSupport libpulseaudio # only headers are needed
-  ++ lib.optional  gtk3Support gtk3
   ++ lib.optional  gssSupport libkrb5
   ++ lib.optionals waylandSupport [ libxkbcommon libdrm ]
   ++ lib.optional  pipewireSupport pipewire
   ++ lib.optional  (lib.versionAtLeast ffversion "82") gnum4
   ++ lib.optionals buildStdenv.isDarwin [ CoreMedia ExceptionHandling Kerberos
                                           AVFoundation MediaToolbox CoreLocation
-                                          Foundation libobjc AddressBook cups ];
+                                          Foundation libobjc AddressBook cups ]
+  ++ lib.optional  (lib.versionOlder ffversion "90") gtk2;
 
   NIX_LDFLAGS = lib.optionalString ltoSupport ''
     -rpath ${llvmPackages.libunwind.out}/lib
@@ -224,6 +224,7 @@ buildStdenv.mkDerivation ({
       cargo
       gnused
       llvmPackages.llvm # llvm-objdump
+      makeWrapper
       nodejs
       perl
       pkg-config
@@ -232,8 +233,8 @@ buildStdenv.mkDerivation ({
       rustc
       which
       unzip
+      wrapGAppsHook
     ]
-    ++ lib.optional gtk3Support wrapGAppsHook
     ++ lib.optionals buildStdenv.isDarwin [ xcbuild rsync ]
     ++ extraNativeBuildInputs;
 
@@ -362,8 +363,6 @@ buildStdenv.mkDerivation ({
   passthru = {
     inherit updateScript;
     version = ffversion;
-    isFirefox3Like = true;
-    gtk = gtk2;
     inherit alsaSupport;
     inherit pipewireSupport;
     inherit nspr;
@@ -372,7 +371,8 @@ buildStdenv.mkDerivation ({
     inherit execdir;
     inherit browserName;
     inherit tests;
-  } // lib.optionalAttrs gtk3Support { inherit gtk3; };
+    inherit gtk3;
+  };
 
   hardeningDisable = [ "format" ]; # -Werror=format-security
 
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox/no-buildconfig-ffx84.patch b/nixpkgs/pkgs/applications/networking/browsers/firefox/no-buildconfig-ffx90.patch
index c4187fcda39e..c8d2028f30b2 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox/no-buildconfig-ffx84.patch
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox/no-buildconfig-ffx90.patch
@@ -1,25 +1,22 @@
-diff --git a/docshell/base/nsAboutRedirector.cpp b/docshell/base/nsAboutRedirector.cpp
-index 10ac77b..0125d9b 100644
 --- a/docshell/base/nsAboutRedirector.cpp
 +++ b/docshell/base/nsAboutRedirector.cpp
-@@ -63,8 +63,6 @@ static const RedirEntry kRedirMap[] = {
+@@ -66,8 +66,6 @@ static const RedirEntry kRedirMap[] = {
      {"about", "chrome://global/content/aboutAbout.html", 0},
-     {"addons", "chrome://mozapps/content/extensions/extensions.xhtml",
+     {"addons", "chrome://mozapps/content/extensions/aboutaddons.html",
       nsIAboutModule::ALLOW_SCRIPT},
 -    {"buildconfig", "chrome://global/content/buildconfig.html",
 -     nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT},
      {"checkerboard", "chrome://global/content/aboutCheckerboard.html",
       nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
           nsIAboutModule::ALLOW_SCRIPT},
-diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
-index c83b3e2..d543140 100644
 --- a/toolkit/content/jar.mn
 +++ b/toolkit/content/jar.mn
-@@ -40,7 +40,6 @@ toolkit.jar:
+@@ -39,8 +39,6 @@ toolkit.jar:
+    content/global/plugins.html
     content/global/plugins.css
     content/global/plugins.js
-    content/global/browser-child.js
 -*   content/global/buildconfig.html
-    content/global/buildconfig.css
+-   content/global/buildconfig.css
     content/global/contentAreaUtils.js
     content/global/datepicker.xhtml
+ #ifndef MOZ_FENNEC
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox/packages.nix b/nixpkgs/pkgs/applications/networking/browsers/firefox/packages.nix
index c190b7fa625a..09bf0cd7d1e9 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -3,10 +3,10 @@
 rec {
   firefox = firefoxCommon rec {
     pname = "firefox";
-    ffversion = "89.0.2";
+    ffversion = "90.0.1";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
-      sha512 = "ffd98ab0887611c5b4aba68346c49a7a31a58150fd8bbae610a4d941c4cff0acef0daaebfbb577787a759b4c1ef3c1199f02681148612f4f5b709983e07e0ccb";
+      sha512 = "9f87c3f3dad33e42a7a9d2161d7f23ff2e7184b2274f9081511c7982957ae9954784bd844a2348ff4744231415aac195d1f12971392db90be0375b4738acb590";
     };
 
     meta = {
@@ -28,10 +28,10 @@ rec {
 
   firefox-esr-78 = firefoxCommon rec {
     pname = "firefox-esr";
-    ffversion = "78.11.0esr";
+    ffversion = "78.12.0esr";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
-      sha512 = "d02fc2eda587155b1c54ca12a6c5cde220a29f41f154f1c9b71ae8f966d8cc9439201a5b241e03fc0795b74e2479f7aa5d6b69f70b7639432e5382f321f7a6f4";
+      sha512 = "646eb803e0d0e541773e3111708c7eaa85e784e4bae6e4a77dcecdc617ee29e2e349c9ef16ae7e663311734dd7491aebd904359124dda62672dbc18bfb608f0a";
     };
 
     meta = {
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox/wrapper.nix b/nixpkgs/pkgs/applications/networking/browsers/firefox/wrapper.nix
index f2fa787c17c6..202821b0978b 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox/wrapper.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox/wrapper.nix
@@ -2,7 +2,7 @@
 , replace, fetchurl, zip, unzip, jq, xdg-utils, writeText
 
 ## various stuff that can be plugged in
-, ffmpeg, xorg, alsa-lib, libpulseaudio, libcanberra-gtk2, libglvnd, libnotify
+, ffmpeg, xorg, alsa-lib, libpulseaudio, libcanberra-gtk3, libglvnd, libnotify
 , gnome/*.gnome-shell*/
 , browserpass, chrome-gnome-shell, uget-integrator, plasma5Packages, bukubrow, pipewire
 , tridactyl-native
@@ -44,8 +44,6 @@ let
     , nixExtensions ? null
     }:
 
-    assert forceWayland -> (browser ? gtk3); # Can only use the wayland backend if gtk3 is being used
-
     let
       ffmpegSupport = browser.ffmpegSupport or false;
       gssSupport = browser.gssSupport or false;
@@ -73,7 +71,7 @@ let
             ++ lib.optional (config.pulseaudio or true) libpulseaudio
             ++ lib.optional alsaSupport alsa-lib
             ++ pkcs11Modules;
-      gtk_modules = [ libcanberra-gtk2 ];
+      gtk_modules = [ libcanberra-gtk3 ];
 
       #########################
       #                       #
@@ -183,7 +181,7 @@ let
       };
 
       nativeBuildInputs = [ makeWrapper lndir ];
-      buildInputs = lib.optional (browser ? gtk3) browser.gtk3;
+      buildInputs = [ browser.gtk3 ];
 
 
       buildCommand = lib.optionalString stdenv.isDarwin ''
@@ -266,13 +264,11 @@ let
             --set MOZ_SYSTEM_DIR "$out/lib/mozilla" \
             --set MOZ_LEGACY_PROFILES 1 \
             --set MOZ_ALLOW_DOWNGRADE 1 \
+            --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \
+            --suffix XDG_DATA_DIRS : '${gnome.adwaita-icon-theme}/share' \
             ${lib.optionalString forceWayland ''
               --set MOZ_ENABLE_WAYLAND "1" \
-            ''}${lib.optionalString (browser ? gtk3)
-                ''--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \
-                  --suffix XDG_DATA_DIRS : '${gnome.adwaita-icon-theme}/share'
-                ''
-            }
+            ''}
         #############################
         #                           #
         #   END EXTRA PREF CHANGES  #
diff --git a/nixpkgs/pkgs/applications/networking/browsers/icecat-bin/default.nix b/nixpkgs/pkgs/applications/networking/browsers/icecat-bin/default.nix
new file mode 100644
index 000000000000..6f5da5b92a64
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/browsers/icecat-bin/default.nix
@@ -0,0 +1,129 @@
+{ stdenv
+, lib
+, fetchzip
+, autoPatchelfHook
+, wrapGAppsHook
+, gnome2
+, nss
+, xdg-utils
+, xorg
+, alsa-lib
+, atk
+, cairo
+, cups
+, curl
+, dbus
+, expat
+, fontconfig
+, freetype
+, gdk-pixbuf
+, glib
+, gtk3
+, libX11
+, libxcb
+, libXScrnSaver
+, libXcomposite
+, libXcursor
+, libXdamage
+, libXext
+, libXfixes
+, libXi
+, libXrandr
+, libXrender
+, libXtst
+, libdrm
+, libnotify
+, libopus
+, libpulseaudio
+, libuuid
+, libxshmfence
+, mesa
+, nspr
+, pango
+, systemd
+, at-spi2-atk
+, at-spi2-core
+}:
+
+stdenv.mkDerivation rec {
+  pname = "icecat-bin";
+  version = "60.7.0";
+
+  src = fetchzip {
+    url = "https://mirror.tochlab.net/pub/gnu/gnuzilla/${version}/icecat-${version}.en-US.gnulinux-x86_64.tar.bz2";
+    sha256 = "sha256-bEapbQIcZXQ0Tip/X1Q0guowpr3wNDYsFbHGmTbc5mE=";
+  };
+
+  nativeBuildInputs = [
+    autoPatchelfHook
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    nss
+    xdg-utils
+    xorg.libxkbfile
+    alsa-lib
+    at-spi2-atk
+    at-spi2-core
+    atk
+    cairo
+    cups
+    curl
+    dbus
+    expat
+    fontconfig.lib
+    freetype
+    gdk-pixbuf
+    glib
+    gnome2.GConf
+    gnome2.gtk
+    gtk3
+    libX11
+    libXScrnSaver
+    libXcomposite
+    libXcursor
+    libXdamage
+    libXext
+    libXfixes
+    libXi
+    libXrandr
+    libXrender
+    libXtst
+    libdrm
+    libnotify
+    libopus
+    libuuid
+    libxcb
+    libxshmfence
+    mesa
+    nspr
+    nss
+    pango
+    xorg.libXt
+    stdenv.cc.cc.lib
+  ];
+
+  unpackPhase = ''
+    mkdir -p $TMP/ $out/{opt,bin}
+    cp $src/* $TMP/ -r
+  '';
+
+  installPhase = ''
+    cp -r $TMP/* $out/opt/
+    ln -sf $out/opt/icecat-bin $out/bin/icecat
+  '';
+
+  runtimeDependencies = [
+    libpulseaudio.out
+    (lib.getLib systemd)
+  ];
+
+  meta = with lib; {
+    description = "Binary build of the GNU version of the Mozilla Firefox browser";
+    homepage = "https://www.gnu.org/software/gnuzilla/";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ dan4ik605743 ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/browsers/midori/default.nix b/nixpkgs/pkgs/applications/networking/browsers/midori/default.nix
index 3362948e98ab..187914740f25 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/midori/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/midori/default.nix
@@ -49,6 +49,10 @@ stdenv.mkDerivation rec {
     libarchive
   ];
 
+  passthru = {
+    inherit gtk3;
+  };
+
   meta = with lib; {
     description = "Lightweight WebKitGTK web browser";
     homepage = "https://www.midori-browser.org/";
diff --git a/nixpkgs/pkgs/applications/networking/browsers/palemoon/default.nix b/nixpkgs/pkgs/applications/networking/browsers/palemoon/default.nix
index 6afdf61886aa..2cd3ee11d277 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/palemoon/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/palemoon/default.nix
@@ -52,14 +52,14 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "palemoon";
-  version = "29.2.1";
+  version = "29.3.0";
 
   src = fetchFromGitHub {
     githubBase = "repo.palemoon.org";
     owner = "MoonchildProductions";
     repo = "Pale-Moon";
     rev = "${version}_Release";
-    sha256 = "0djjl79jrnny16p32db5w7pwwv0a24dc8mg1s1bnavhlvmmk52vq";
+    sha256 = "1q0w1ffmdfk22df4p2ks4n55zmz44ir8fbcdn5a5h4ihy73nf6xp";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/applications/networking/browsers/telescope/default.nix b/nixpkgs/pkgs/applications/networking/browsers/telescope/default.nix
new file mode 100644
index 000000000000..fa9b3853a9d1
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/browsers/telescope/default.nix
@@ -0,0 +1,38 @@
+{ stdenv
+, lib
+, fetchurl
+, pkg-config
+, bison
+, libevent
+, libressl
+, ncurses
+}:
+
+stdenv.mkDerivation rec {
+  pname = "telescope";
+  version = "0.3.1";
+
+  src = fetchurl {
+    url = "https://github.com/omar-polo/telescope/releases/download/${version}/telescope-${version}.tar.gz";
+    sha256 = "11xrsh064ph1idhygh52y4mqapgwn1cqr0l3naj5n2a2p7lcsvvw";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    bison
+  ];
+
+  buildInputs = [
+    libevent
+    libressl
+    ncurses
+  ];
+
+  meta = with lib; {
+    description = "Telescope is a w3m-like browser for Gemini";
+    homepage = "https://telescope.omarpolo.com/";
+    license = licenses.isc;
+    maintainers = with maintainers; [ heph2 ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix b/nixpkgs/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
index d1830f1c52f8..ca57c27ba50d 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
@@ -88,19 +88,19 @@ let
   fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ];
 
   # Upstream source
-  version = "10.0.18";
+  version = "10.5.2";
 
   lang = "en-US";
 
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz";
-      sha256 = "15ni33mkg3awfmk3ynr0vi4max1h2k0s10xw3dpmdx6chzv4ll14";
+      sha256 = "16zk7d0sxm2j00vb002mjj38wxcxxlahnfdb9lmkmkfms9p9xfkb";
     };
 
     i686-linux = fetchurl {
       url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz";
-      sha256 = "16lx8wkxli1fzq5f6gcw3im4p8k3xdmnmf6w0p7n8hd8681b1w5s";
+      sha256 = "0xc3ac2y9xf7ff3pqrp5n6l9j8i5hk3y2y3zwykwhnycnfi6dfv4";
     };
   };
 in
@@ -311,6 +311,13 @@ stdenv.mkDerivation rec {
     # chance that TBB would continue using old font files.
     rm -rf "\$HOME/.cache/fontconfig"
 
+    # Manually specify data paths (by default TB attempts to create these in the store)
+    {
+      echo "user_pref(\"extensions.torlauncher.toronionauthdir_path\", \"\$HOME/TorBrowser/Data/Tor/onion-auth\");"
+      echo "user_pref(\"extensions.torlauncher.torrc_path\", \"\$HOME/TorBrowser/Data/Tor/torrc\");"
+      echo "user_pref(\"extensions.torlauncher.tordatadir_path\", \"\$HOME/TorBrowser/Data/Tor\");"
+    } >> "\$HOME/TorBrowser/Data/Browser/profile.default/prefs.js"
+
     # Lift-off
     #
     # XAUTHORITY and DISPLAY are required for TBB to work at all.
diff --git a/nixpkgs/pkgs/applications/networking/browsers/vimb/default.nix b/nixpkgs/pkgs/applications/networking/browsers/vimb/default.nix
index 816b986f8835..240d9a972fbb 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/vimb/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/vimb/default.nix
@@ -16,6 +16,10 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ wrapGAppsHook pkg-config ];
   buildInputs = [ gtk3 libsoup webkitgtk glib-networking gsettings-desktop-schemas ];
 
+  passthru = {
+    inherit gtk3;
+  };
+
   makeFlags = [ "PREFIX=${placeholder "out"}" ];
 
   meta = {
diff --git a/nixpkgs/pkgs/applications/networking/browsers/vivaldi/default.nix b/nixpkgs/pkgs/applications/networking/browsers/vivaldi/default.nix
index dba21d2f21ca..ad58a048c3e9 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/vivaldi/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/vivaldi/default.nix
@@ -18,11 +18,11 @@ let
   vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
 in stdenv.mkDerivation rec {
   pname = "vivaldi";
-  version = "4.0.2312.24-1";
+  version = "4.0.2312.38-1";
 
   src = fetchurl {
     url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}_amd64.deb";
-    sha256 = "0cyvnabjhcn1bm5py4nhfb1yhpz5nm9qm39vb4y1fwhjd0jv38hi";
+    sha256 = "1sdg22snphjsrmxi3fvy41dnjsxpajbhni9bpidk8msa9xgxvzpx";
   };
 
   unpackPhase = ''
diff --git a/nixpkgs/pkgs/applications/networking/browsers/yandex-browser/default.nix b/nixpkgs/pkgs/applications/networking/browsers/yandex-browser/default.nix
new file mode 100644
index 000000000000..5c62dbb7e203
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/browsers/yandex-browser/default.nix
@@ -0,0 +1,135 @@
+{ stdenv
+, lib
+, fetchurl
+, autoPatchelfHook
+, wrapGAppsHook
+, flac
+, gnome2
+, harfbuzzFull
+, nss
+, snappy
+, xdg-utils
+, xorg
+, alsa-lib
+, atk
+, cairo
+, cups
+, curl
+, dbus
+, expat
+, fontconfig
+, freetype
+, gdk-pixbuf
+, glib
+, gtk3
+, libX11
+, libxcb
+, libXScrnSaver
+, libXcomposite
+, libXcursor
+, libXdamage
+, libXext
+, libXfixes
+, libXi
+, libXrandr
+, libXrender
+, libXtst
+, libdrm
+, libnotify
+, libopus
+, libpulseaudio
+, libuuid
+, libxshmfence
+, mesa
+, nspr
+, pango
+, systemd
+, at-spi2-atk
+, at-spi2-core
+}:
+
+stdenv.mkDerivation rec {
+  pname = "yandex-browser";
+  version = "21.5.3.753-1";
+
+  src = fetchurl {
+    url = "http://repo.yandex.ru/yandex-browser/deb/pool/main/y/${pname}-beta/${pname}-beta_${version}_amd64.deb";
+    sha256 = "sha256-sI2p/fCaruUJ3qPMyy+12Bh5I1SH8m7sYX5yDex2rwg=";
+  };
+
+  nativeBuildInputs = [
+    autoPatchelfHook
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    flac
+    harfbuzzFull
+    nss
+    snappy
+    xdg-utils
+    xorg.libxkbfile
+    alsa-lib
+    at-spi2-atk
+    at-spi2-core
+    atk
+    cairo
+    cups
+    curl
+    dbus
+    expat
+    fontconfig.lib
+    freetype
+    gdk-pixbuf
+    glib
+    gnome2.GConf
+    gtk3
+    libX11
+    libXScrnSaver
+    libXcomposite
+    libXcursor
+    libXdamage
+    libXext
+    libXfixes
+    libXi
+    libXrandr
+    libXrender
+    libXtst
+    libdrm
+    libnotify
+    libopus
+    libuuid
+    libxcb
+    libxshmfence
+    mesa
+    nspr
+    nss
+    pango
+    stdenv.cc.cc.lib
+  ];
+
+  unpackPhase = ''
+    mkdir -p $TMP/ya $out/bin
+    cp $src $TMP/ya.deb
+    ar vx ya.deb
+    tar --no-overwrite-dir -xvf data.tar.xz -C $TMP/ya/
+  '';
+
+  installPhase = ''
+    cp -R $TMP/ya/opt $out/
+    ln -sf $out/opt/yandex/browser-beta/yandex_browser $out/bin/yandex-browser
+  '';
+
+  runtimeDependencies = [
+    libpulseaudio.out
+    (lib.getLib systemd)
+  ];
+
+  meta = with lib; {
+    description = "Yandex Web Browser";
+    homepage = "https://browser.yandex.ru/";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ dan4ik605743 ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/charles/default.nix b/nixpkgs/pkgs/applications/networking/charles/default.nix
index 1e44d46689ff..757f39c5b35e 100644
--- a/nixpkgs/pkgs/applications/networking/charles/default.nix
+++ b/nixpkgs/pkgs/applications/networking/charles/default.nix
@@ -1,5 +1,5 @@
-{
-lib, stdenv
+{ lib
+, stdenv
 , makeWrapper
 , makeDesktopItem
 , fetchurl
@@ -49,16 +49,16 @@ let
       meta = with lib; {
         description = "Web Debugging Proxy";
         homepage = "https://www.charlesproxy.com/";
-        maintainers = [ maintainers.kalbasit ];
-        license = lib.licenses.unfree;
-        platforms = lib.platforms.linux ++ lib.platforms.darwin;
+        maintainers = with maintainers; [ kalbasit ];
+        license = licenses.unfree;
+        platforms = platforms.unix;
       };
     };
 
 in {
   charles4 = (generic {
-    version = "4.6.1";
-    sha256 = "1kl83jjj5wjhdpj34gcj04vf1asxlqlfx9zi91ln4v90swlaaclv";
+    version = "4.6.2";
+    sha256 = "0r5rann7cq665ih0pa66k52081gylk85ashrwq1khbv2jf80yy52";
     platform = "_amd64";
     jdk = jdk11;
   });
@@ -68,4 +68,3 @@ in {
     jdk = jdk8.jre;
   });
 }
-
diff --git a/nixpkgs/pkgs/applications/networking/cloudflared/default.nix b/nixpkgs/pkgs/applications/networking/cloudflared/default.nix
index ed4ffffe451c..374062f0d80b 100644
--- a/nixpkgs/pkgs/applications/networking/cloudflared/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cloudflared/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "cloudflared";
-  version = "2021.6.0";
+  version = "2021.7.0";
 
   src = fetchFromGitHub {
     owner  = "cloudflare";
     repo   = "cloudflared";
     rev    = version;
-    sha256 = "sha256-cX0kdBPDgwjHphxGWrnXohHPp1nzs4SnvCry4AxMtp0=";
+    sha256 = "sha256-FQejuKBDUCCcEq9ZmSMigdvqowTurCYEhOiXQN7exIE=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix b/nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix
index 22dc5472a14d..baf67f2b6816 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix
@@ -1,7 +1,7 @@
 { lib, buildGoModule, fetchFromGitHub, fetchzip, installShellFiles }:
 
 let
-  version = "0.15.3";
+  version = "0.16.1";
 
   manifests = fetchzip {
     url = "https://github.com/fluxcd/flux2/releases/download/v${version}/manifests.tar.gz";
@@ -19,10 +19,10 @@ buildGoModule rec {
     owner = "fluxcd";
     repo = "flux2";
     rev = "v${version}";
-    sha256 = "sha256-Pyt5BaOawBwyBz7ULzOZr0Fc6bqM5dKn775AylUjDVE=";
+    sha256 = "sha256-OjbyDg+3dSJco162NubK12pbmwib6uGlJQxVaJOzSig=";
   };
 
-  vendorSha256 = "sha256-17Kbun6Mrip4/XHN5eMHxgnSoX1KuGHwtb8yLTf/Mks=";
+  vendorSha256 = "sha256-GPbuHv/Xi9sWWZ6SIlW8cm5bY1gTO41vygx2C8dEt0k=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/applications/networking/cluster/helm/default.nix b/nixpkgs/pkgs/applications/networking/cluster/helm/default.nix
index 69961a2c0a07..8e9d2662ea68 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/helm/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/helm/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "helm";
-  version = "3.6.2";
+  version = "3.6.3";
   gitCommit = "ee407bdf364942bcb8e8c665f82e15aa28009b71";
 
   src = fetchFromGitHub {
     owner = "helm";
     repo = "helm";
     rev = "v${version}";
-    sha256 = "1s40zbk83s1kylcglydw356282virf1828v9waj1zs1gjnjml69h";
+    sha256 = "sha256-DfMI50eQsMHRX8S5rBzF3qlSfJizlYQyofA7HPkD4EQ=";
   };
-  vendorSha256 = "06ccsy30kd68ml13l5k7d4225vlax3fm2pi8dapsyr4gdr234c1x";
+  vendorSha256 = "sha256-PTAyRG6PZK+vaiheUd3oiu4iBGlnFjoCrci0CYbXjBk=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/applications/networking/cluster/helmsman/default.nix b/nixpkgs/pkgs/applications/networking/cluster/helmsman/default.nix
index 595dd3c61ae8..933f1bfe71b4 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/helmsman/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/helmsman/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "helmsman";
-  version = "3.6.11";
+  version = "3.7.2";
 
   src = fetchFromGitHub {
     owner = "Praqma";
     repo = "helmsman";
     rev = "v${version}";
-    sha256 = "sha256-9G/A6eADt9jP0CZC6MTZnQOmGOItJFI0zTfmC7HXSaI=";
+    sha256 = "sha256-wzmn06nUycNaQ4tUEBd4q17M1CVC0+5X13rqF7zaHqU=";
   };
 
-  vendorSha256 = "sha256-icX8mOc8g+DhfAjD1pzneLWTXY17lXyAjdPOWAxkHwI=";
+  vendorSha256 = "sha256-XHgdVFGIzbPPYgv/T4TtvDDbKAe3niev4S5tu/nwSqg=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix
index 85b6c623ae36..f3da97057959 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix
@@ -1,26 +1,20 @@
-{ lib, buildGoModule, fetchFromGitHub, go-bindata, installShellFiles }:
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
 
 buildGoModule rec {
   pname = "istioctl";
-  version = "1.9.4";
+  version = "1.10.3";
 
   src = fetchFromGitHub {
     owner = "istio";
     repo = "istio";
     rev = version;
-    sha256 = "sha256-QyiGDk9lA9Y49VpRNRGNbir/ql/Vzp6wsZ1LGodGTks=";
+    sha256 = "sha256-MHERRJ9t7EG4sd4gevUnZLA25UnRqZprCXFWkp5roms=";
   };
-  vendorSha256 = "sha256-N+7xajNkxuaC1yDTkPCg80bl2gRy2+Sa4Qq1A8zSGD8=";
+  vendorSha256 = "sha256-lzRIXZXrNQOwgl774B9r6OW/O8QwykSk3Mv5oGmvDuY=";
 
   doCheck = false;
 
-  nativeBuildInputs = [ go-bindata installShellFiles ];
-
-  # Bundle charts
-  preBuild = ''
-    patchShebangs operator/scripts
-    operator/scripts/create_assets_gen.sh
-  '';
+  nativeBuildInputs = [ installShellFiles ];
 
   # Bundle release metadata
   buildFlagsArray = let
diff --git a/nixpkgs/pkgs/applications/networking/cluster/k0sctl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/k0sctl/default.nix
new file mode 100644
index 000000000000..59530f054571
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/cluster/k0sctl/default.nix
@@ -0,0 +1,25 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "k0sctl";
+  version = "0.9.0";
+
+  src = fetchFromGitHub {
+    owner = "k0sproject";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-aW7x2XfeFU0z3lwPTsDHudHjdwTtfASgrbKGddVb6Rs=";
+  };
+
+  vendorSha256 = "sha256-bsXXWyeZXZLV6igEvyvPpS92FruGiLDx/5CCTKPe0EU=";
+
+  meta = with lib; {
+    description = "A bootstrapping and management tool for k0s clusters.";
+    homepage = "https://k0sproject.io/";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ nickcao ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/cluster/k3s/default.nix b/nixpkgs/pkgs/applications/networking/cluster/k3s/default.nix
index 878d7e1184f3..dfeb61915eea 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/k3s/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/k3s/default.nix
@@ -44,8 +44,8 @@ with lib;
 # Those pieces of software we entirely ignore upstream's handling of, and just
 # make sure they're in the path if desired.
 let
-  k3sVersion = "1.21.0+k3s1";     # k3s git tag
-  k3sCommit = "2705431d9645d128441c578309574cd262285ae6"; # k3s git commit at the above version
+  k3sVersion = "1.21.2+k3s1";     # k3s git tag
+  k3sCommit = "5a67e8dc473f8945e8e181f6f0b0dbbc387f6fca"; # k3s git commit at the above version
 
   traefikChartVersion = "9.18.2"; # taken from ./scripts/download at TRAEFIK_VERSION
   k3sRootVersion = "0.8.1";       # taken from ./scripts/download at ROOT_VERSION
@@ -97,7 +97,7 @@ let
   k3sRepo = fetchgit {
     url = "https://github.com/k3s-io/k3s";
     rev = "v${k3sVersion}";
-    sha256 = "sha256-xsXxf2ZYrkpOHlSFqTsHwWF3kChUjxWRjyDR3Dhg2ho=";
+    sha256 = "sha256-ZRkdHQ4RJ6XqE+DKE6wwpxetuKDG3k/4HaHyFxHev1U=";
   };
   # Stage 1 of the k3s build:
   # Let's talk about how k3s is structured.
diff --git a/nixpkgs/pkgs/applications/networking/cluster/k3s/patches/0002-Add-nixpkgs-patches.patch b/nixpkgs/pkgs/applications/networking/cluster/k3s/patches/0002-Add-nixpkgs-patches.patch
index 244da314f595..dd26810a4563 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/k3s/patches/0002-Add-nixpkgs-patches.patch
+++ b/nixpkgs/pkgs/applications/networking/cluster/k3s/patches/0002-Add-nixpkgs-patches.patch
@@ -1,21 +1,19 @@
-From 1891be119e298ef7c86347a6b74d40ff539cf06e Mon Sep 17 00:00:00 2001
-From: Euan Kemp <euank@euank.com>
-Date: Sun, 31 May 2020 19:02:37 -0700
-Subject: [PATCH 2/2] Add nixpkgs patches
-
-These patches let us re-use the upstream build scripts when building for
-nix.
----
- scripts/build       | 20 ++++----------------
- scripts/package-cli | 10 ++++++----
- 2 files changed, 10 insertions(+), 20 deletions(-)
-
+-Subject: [PATCH 2/2] Add nixpkgs patches
+-Original patch by: Euan Kemp <euank@euank.com>
+-Adapted by: superherointj
+-
+-This patch allows us to re-use upstream build scripts when building for nix.
+----
+- 2 files changed:
+-   scripts/build
+-   scripts/package-cli
+-
 diff --git a/scripts/build b/scripts/build
-index 4ca6333c4a..df15f7db1d 100755
+index 2f3d1dc496..4f4e5aa897 100755
 --- a/scripts/build
 +++ b/scripts/build
 @@ -12,7 +12,8 @@ PKG_CONTAINERD="github.com/containerd/containerd"
- PKG_RANCHER_CONTAINERD="github.com/rancher/containerd"
+ PKG_K3S_CONTAINERD="github.com/k3s-io/containerd"
  PKG_CRICTL="github.com/kubernetes-sigs/cri-tools"
  
 -buildDate=$(date -u '+%Y-%m-%dT%H:%M:%SZ')
@@ -24,7 +22,7 @@ index 4ca6333c4a..df15f7db1d 100755
  
  VENDOR_PREFIX="${PKG}/vendor/"
  VERSIONFLAGS="
-@@ -92,17 +93,7 @@ cleanup() {
+@@ -89,17 +90,7 @@ cleanup() {
  }
  
  INSTALLBIN=$(pwd)/bin
@@ -43,23 +41,23 @@ index 4ca6333c4a..df15f7db1d 100755
  # echo Building agent
  # CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/k3s-agent ./cmd/agent/main.go
  echo Building server
-@@ -118,10 +109,7 @@ ln -s containerd ./bin/ctr
+@@ -116,10 +107,7 @@ ln -s containerd ./bin/ctr
  #CGO_ENABLED=1 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC_SQLITE" -o bin/ctr ./cmd/ctr/main.go
  # echo Building containerd
  # CGO_ENABLED=0 "${GO}" build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/containerd ./cmd/containerd/
 -echo Building runc
--rm -f ./vendor/github.com/opencontainers/runc/runc
--make EXTRA_LDFLAGS="-w -s" BUILDTAGS="$RUNC_TAGS" -C ./vendor/github.com/opencontainers/runc $RUNC_STATIC
--cp -f ./vendor/github.com/opencontainers/runc/runc ./bin/runc
+-rm -f ./build/src/github.com/opencontainers/runc/runc
+-make GOPATH=$(pwd)/build EXTRA_LDFLAGS="-w -s" BUILDTAGS="$RUNC_TAGS" -C ./build/src/github.com/opencontainers/runc $RUNC_STATIC
+-cp -f ./build/src/github.com/opencontainers/runc/runc ./bin/runc
 +# nixpkgs: we build runc separately
  
  echo Building containerd-shim
  rm -f ./vendor/github.com/containerd/containerd/bin/containerd-shim
 diff --git a/scripts/package-cli b/scripts/package-cli
-index d1aad638d9..90479b6fa1 100755
+index ab4a6dac63..044b5587d0 100755
 --- a/scripts/package-cli
 +++ b/scripts/package-cli
-@@ -49,15 +49,18 @@ fi
+@@ -50,15 +50,17 @@ fi
  
  CMD_NAME=dist/artifacts/k3s${BIN_SUFFIX}
  
@@ -81,4 +79,3 @@ index d1aad638d9..90479b6fa1 100755
 -./scripts/build-upload ${CMD_NAME} ${COMMIT}
 +# nixpkgs: skip uploading
 +# ./scripts/build-upload ${CMD_NAME} ${COMMIT}
-+
diff --git a/nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix b/nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix
index 8da48f8485f4..89d07da74829 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "k9s";
-  version = "0.24.13";
+  version = "0.24.14";
 
   src = fetchFromGitHub {
     owner  = "derailed";
     repo   = "k9s";
     rev    = "v${version}";
-    sha256 = "sha256-5gMRjnrk1FyTj3Lzp+6scLuqfP8rCUvDDBK33/RzG28=";
+    sha256 = "sha256-Kw3TT8IeJT0y2vSd38/y7BRq7PxMH2tiXV4/lOn5INA=";
   };
 
   buildFlagsArray = ''
diff --git a/nixpkgs/pkgs/applications/networking/cluster/kfctl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kfctl/default.nix
new file mode 100644
index 000000000000..52a049ab1bba
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/cluster/kfctl/default.nix
@@ -0,0 +1,32 @@
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
+
+buildGoModule rec {
+  pname = "kfctl";
+  version = "1.2.0";
+
+  src = fetchFromGitHub {
+    owner = "kubeflow";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-FY7o4QULobLY1djfcc2l6awE/v2stN7cc2lffMkjoPc=";
+  };
+
+  vendorSha256 = "sha256-+6sxXp0LKegZjEFv1CIQ6xYh+hXLn+o9LggRYamCzpI=";
+
+  subPackages = [ "cmd/kfctl" ];
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  postInstall = ''
+  installShellCompletion --cmd eksctl \
+    --bash <($out/bin/kfctl completion bash) \
+    --zsh <($out/bin/kfctl completion zsh)
+  '';
+
+  meta = with lib; {
+    description = "A CLI for deploying and managing Kubeflow";
+    homepage = "https://github.com/kubeflow/kfctl";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ mvnetbiz ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/cluster/kops/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kops/default.nix
index 4dc37364e7ba..54d13f819ab8 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/kops/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/kops/default.nix
@@ -53,11 +53,6 @@ rec {
 
   mkKops = generic;
 
-  kops_1_18 = mkKops {
-    version = "1.18.2";
-    sha256 = "17na83j6sfhk69w9ssvicc0xd1904z952ad3zzbpha50lcy6nlhp";
-  };
-
   kops_1_19 = mkKops rec {
     version = "1.19.2";
     sha256 = "15csxih1xy8myky37n5dyzp5mc31pc4bq9asaw6zz51mgw8ad5r9";
@@ -69,4 +64,10 @@ rec {
     sha256 = "011ib3xkj6nn7qax8d0ns8y4jhkwwmry1qnzxklvzssaxhmzs557";
     rev = "v${version}";
   };
+
+  kops_1_21 = mkKops rec {
+    version = "1.21.0";
+    sha256 = "sha256-T2i3qpg3GC7yaYCGrN1V5XXrUyT+Ce9Q4aV00gQJ7gM=";
+    rev = "v${version}";
+  };
 }
diff --git a/nixpkgs/pkgs/applications/networking/cluster/kube3d/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kube3d/default.nix
index a7a1737c1464..e565657a5cbd 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/kube3d/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/kube3d/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "kube3d";
-  version = "4.4.6";
+  version = "4.4.7";
 
   src = fetchFromGitHub {
     owner = "rancher";
     repo = "k3d";
     rev = "v${version}";
-    sha256 = "sha256-gId7zDrtkTjFN59yaFyeYwrDZV24hkkV+4dPr8Jr22E=";
+    sha256 = "sha256-S1vHmXUCP1ayPo3vvHAbNCqNm1ueJ0jE4NUBvg5P3MU=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubedb-cli/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubedb-cli/default.nix
new file mode 100644
index 000000000000..3d2771638842
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/cluster/kubedb-cli/default.nix
@@ -0,0 +1,25 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "kubedb-cli";
+  version = "0.19.0";
+
+  src = fetchFromGitHub {
+    owner = "kubedb";
+    repo = "cli";
+    rev = "v${version}";
+    sha256 = "sha256-CwAa2YqJ0R+L+VwxqruQmZJUctP4GgKszY49ZVyyNBE=";
+  };
+
+  vendorSha256 = null;
+
+  # Don't compile the documentation stuff
+  subPackages = [ "cmd/kubectl-dba" ];
+
+  meta = with lib; {
+    description = "kubectl plugin for KubeDB by AppsCode.";
+    homepage    = "https://github.com/kubedb/cli";
+    license     = licenses.unfree;
+    maintainers = [ maintainers.starcraft66 ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix
index 2dfbac5c5ac6..2a66b391ae8a 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation rec {
   pname = "kubernetes";
-  version = "1.21.2";
+  version = "1.21.3";
 
   src = fetchFromGitHub {
     owner = "kubernetes";
     repo = "kubernetes";
     rev = "v${version}";
-    sha256 = "sha256-GAX8ODjGj5LM44KgJC0N5uuOH4z33lDWoQgImOl8/xo=";
+    sha256 = "sha256-GMigdVuqJN6eIN0nhY5PVUEnCqjAYUzitetk2QmX5wQ=";
   };
 
   nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync installShellFiles ];
diff --git a/nixpkgs/pkgs/applications/networking/cluster/linkerd/default.nix b/nixpkgs/pkgs/applications/networking/cluster/linkerd/default.nix
index 7b5e5810581a..883d16319b17 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/linkerd/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/linkerd/default.nix
@@ -64,8 +64,8 @@ in
     };
     edge = generic {
       channel = "edge";
-      version = "21.7.1";
-      sha256 = "sha256-VLq776A0H2IZLBeYjXpYzFixcydw/OcYsvKFxeLuewo=";
-      vendorSha256 = "sha256-xSOPMFHfyCmG+yTzBfKR7F5KYV0gcKRNM0UrxpGBpE4=";
+      version = "21.7.3";
+      sha256 = "sha256-fEkqZ/4BQVnmOKUrrLmi6DKlMVNeqvW95bxbZX0o7iI=";
+      vendorSha256 = "sha256-NqOmmeEGWvy/LYfSpIdnJZX4lGweCgiL008ed05XIFs=";
     };
   }
diff --git a/nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix
index 418f3259178a..4909d734ff31 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "nerdctl";
-  version = "0.10.0";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = "containerd";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-cqIIpdkQ6DF7DKXvwCoJBQKG0+lL8iP/Vx0q7rL8prg=";
+    sha256 = "sha256-uYiGerxZb5GW1dOcflERF3wvgJ8VOtRmQkyzC/ztwjk=";
   };
 
-  vendorSha256 = "sha256-0+k1e7Sn+NYGAJDVUbUm0oedc1t2blezUhsjDIuIKvA=";
+  vendorSha256 = "sha256-kGSibuXutyOvDkmajIQ0AqrwR3VUiWoM1Y2zk3MwwyU=";
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
 
diff --git a/nixpkgs/pkgs/applications/networking/cluster/nomad/generic.nix b/nixpkgs/pkgs/applications/networking/cluster/nomad/generic.nix
index dc22ab41d8b6..f4ddc038d2b6 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/nomad/generic.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/nomad/generic.nix
@@ -53,6 +53,6 @@ buildGoPackage rec {
     description = "A Distributed, Highly Available, Datacenter-Aware Scheduler";
     platforms = platforms.unix;
     license = licenses.mpl20;
-    maintainers = with maintainers; [ rushmorem pradeepchhetri endocrimes ];
+    maintainers = with maintainers; [ rushmorem pradeepchhetri endocrimes maxeaubrey ];
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/cluster/octant/default.nix b/nixpkgs/pkgs/applications/networking/cluster/octant/default.nix
index dcdf134b26a9..dbbf65248713 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/octant/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/octant/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "octant";
-  version = "0.21.0";
+  version = "0.22.0";
 
   src =
     let
@@ -19,10 +19,10 @@ stdenv.mkDerivation rec {
       };
     in
     fetchsrc version {
-      x86_64-linux = "sha256-Ben2wAquHADWBv1MEfPWxs96pLz1bK2F6bLoYVTSkng=";
-      aarch64-linux = "sha256-1kK0Gu4cQYk+QDJJJiiDan4SnP3Xjr8nLOBtv26UDV4=";
-      x86_64-darwin = "sha256-gOkHpUTWKrikKYZmkfgck3Lf3g5Pakcn0i2A9Hd07UE=";
-      aarch64-darwin = "sha256-Xpl8odVXw4WzF7CEZ+Bbxa6oQDBv9VMzHCNOjIcFGzE=";
+      x86_64-linux = "sha256-1/vyV6pUqovVpovTYFF4d75wJvtTNdrbLZyjw1lLacA=";
+      aarch64-linux = "sha256-1duNW0Edj0jrpv/RMrebtZF4ph6j3PXCJ2RFejOopGQ=";
+      x86_64-darwin = "sha256-Ur5jBPk5hA6cGg+pPf36Ijh94gWEdaWlJK3yCMBYyEU=";
+      aarch64-darwin = "sha256-RaiXW+MUihk291UWmrf6gLpyrd5stIkhyWNFEQ0daCk=";
     };
 
   dontConfigure = true;
diff --git a/nixpkgs/pkgs/applications/networking/cluster/octant/desktop.nix b/nixpkgs/pkgs/applications/networking/cluster/octant/desktop.nix
index 4095a7907ebf..e793df71a585 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/octant/desktop.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/octant/desktop.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "octant-desktop";
-  version = "0.21.0";
+  version = "0.22.0";
   name = "${pname}-${version}";
 
   inherit (stdenv.hostPlatform) system;
@@ -15,8 +15,8 @@ let
   src = fetchurl {
     url = "https://github.com/vmware-tanzu/octant/releases/download/v${version}/Octant-${version}.${suffix}";
     sha256 = {
-      x86_64-linux = "sha256-Woridi8uGsxvccdeaDzVLs+2YrRKUnm3WbX5LhorM1Y=";
-      x86_64-darwin = "sha256-NF3bm8WFEs4kgrUp+7qCbj6Z6pUMRUp7h4nhJQDJnoY=";
+      x86_64-linux = "sha256-xMdNoH0UE/KLIQ0DjJfb+ZB/q2F+kyFEncrQ9YYJgE0=";
+      x86_64-darwin = "sha256-y3fmxrsQ0hCa1wuMiRGHf79kpi25qXv/idKrVT87oc0=";
     }.${system};
   };
 
diff --git a/nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix b/nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
index a7778af231d6..0db134bdb215 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
@@ -2,20 +2,18 @@
 
 buildGoModule rec {
   pname = "tektoncd-cli";
-  version = "0.19.1";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     owner = "tektoncd";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-duJSTk5LmJWbaVYybZZHWDe8E/ZqZLCCsdPIiH5d/G4=";
+    sha256 = "sha256-aVR1xNmL6M/m+1znt70vrCtuABCqDz0sDp8mDFI2uIg=";
   };
 
   vendorSha256 = null;
 
-  preBuild = ''
-    buildFlagsArray+=("-ldflags" "-s -w -X github.com/tektoncd/cli/pkg/cmd/version.clientVersion=${version}")
-  '';
+  ldflags = [ "-s" "-w" "-X github.com/tektoncd/cli/pkg/cmd/version.clientVersion=${version}" ];
 
   nativeBuildInputs = [ installShellFiles ];
 
@@ -27,7 +25,7 @@ buildGoModule rec {
     # Some tests try to write to the home dir
     export HOME="$TMPDIR"
     # Change the golden files to match our desired version
-    sed -i "s/dev/${version}/" pkg/cmd/version/testdata/TestGetVersions-*.golden
+    sed -i "s/dev/${version}/" pkg/cmd/version/testdata/{TestGetVersions-,TestGetComponentVersions/}*.golden
   '';
 
   postInstall = ''
@@ -43,8 +41,7 @@ buildGoModule rec {
   installCheckPhase = ''
     runHook preInstallCheck
     $out/bin/tkn --help
-    # New tkn version functionality outputs empty https://github.com/tektoncd/cli/issues/1389
-    # $out/bin/tkn version | grep "Client version: ${version}"
+    $out/bin/tkn version | grep "Client version: ${version}"
     runHook postInstallCheck
   '';
 
diff --git a/nixpkgs/pkgs/applications/networking/cluster/temporal/default.nix b/nixpkgs/pkgs/applications/networking/cluster/temporal/default.nix
new file mode 100644
index 000000000000..55f1a5a2c09e
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/cluster/temporal/default.nix
@@ -0,0 +1,43 @@
+{ lib, fetchFromGitHub, buildGoModule }:
+
+buildGoModule rec {
+  pname = "temporal";
+  version = "1.11.1";
+
+  src = fetchFromGitHub {
+    owner = "temporalio";
+    repo = "temporal";
+    rev = "v${version}";
+    sha256 = "sha256-upoWftm82QBdax0lbeu+Nmwscsj/fsOzGUPI+fzcKUM=";
+  };
+
+  vendorSha256 = "sha256-eO/23MQpdXQNPCIzMC9nxvrgUFuEPABJ7vkBZKv+XZI";
+
+  # Errors:
+  #  > === RUN   TestNamespaceHandlerGlobalNamespaceDisabledSuite
+  # gocql: unable to dial control conn 127.0.0.1:9042: dial tcp 127.0.0.1:9042: connect: connection refused
+  doCheck = false;
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/bin
+    install -Dm755 "$GOPATH/bin/cli" -T $out/bin/tctl
+    install -Dm755 "$GOPATH/bin/cassandra" -T $out/bin/temporal-cassandra
+    install -Dm755 "$GOPATH/bin/server" -T $out/bin/temporal-server
+    install -Dm755 "$GOPATH/bin/sql" -T $out/bin/temporal-sql
+    runHook postInstall
+  '';
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    $out/bin/tctl --version | grep ${version} > /dev/null
+  '';
+
+  meta = with lib; {
+    description = "A microservice orchestration platform which enables developers to build scalable applications without sacrificing productivity or reliability";
+    downloadPage = "https://github.com/temporalio/temporal";
+    homepage = "https://temporal.io";
+    license = licenses.mit;
+    maintainers = with maintainers; [ superherointj ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json
index e738a6ad7753..cc46bf16ac7d 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json
+++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json
@@ -533,10 +533,10 @@
     "owner": "mrparkers",
     "provider-source-address": "registry.terraform.io/mrparkers/keycloak",
     "repo": "terraform-provider-keycloak",
-    "rev": "v3.0.0",
-    "sha256": "1q9vzmj9c7mznv6al58d3rs5kk1fh28k1qccx46hcbk82z52da3a",
-    "vendorSha256": "0kh6lljvqd577s19gx0fmfsmx9wm3ikla3jz16lbwwb8ahbqcw1f",
-    "version": "3.0.0"
+    "rev": "v3.1.1",
+    "sha256": "0qh0y1j3y5hzcr8h8wzralv7h8dmrg8jnjccz0fzcmhbkazfrs4p",
+    "vendorSha256": "0il4rvwa23zghrq0b8qrzgxyjy0211v9z2a4ln2xmlhcz0105zg8",
+    "version": "3.1.1"
   },
   "ksyun": {
     "owner": "terraform-providers",
@@ -567,10 +567,10 @@
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/kubernetes-alpha",
     "repo": "terraform-provider-kubernetes-alpha",
-    "rev": "v0.3.3",
-    "sha256": "18i9yp0w6mmic95p6d6ah1hl3rmgkh264z1a05973yslpqhyx9yl",
+    "rev": "v0.5.0",
+    "sha256": "0yqm3wlya69w9g9kzgvm28mbbwp6wik51syjnbnj8dis5kspx8gd",
     "vendorSha256": null,
-    "version": "0.3.3"
+    "version": "0.5.0"
   },
   "launchdarkly": {
     "owner": "terraform-providers",
@@ -728,9 +728,10 @@
     "owner": "terraform-providers",
     "provider-source-address": "registry.terraform.io/hashicorp/oci",
     "repo": "terraform-provider-oci",
-    "rev": "v3.79.0",
-    "sha256": "11n2v537zniiv5xvhpypqrm09my8zybirvq4ly94hp69v73xj89c",
-    "version": "3.79.0"
+    "rev": "v4.35.0",
+    "sha256": "12acy39cr6pxq8gk483b6i78x463ml9pk10qp9jpz0dr05zcyhqw",
+    "vendorSha256": null,
+    "version": "4.35.0"
   },
   "okta": {
     "owner": "terraform-providers",
diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terraform/default.nix
index 691491ae7fd0..8d13fab793c9 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/terraform/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/terraform/default.nix
@@ -62,6 +62,7 @@ let
           marsam
           timstott
           zimbatm
+          maxeaubrey
         ];
       };
     } // attrs');
@@ -194,9 +195,9 @@ rec {
   };
 
   terraform_1_0 = mkTerraform {
-    version = "1.0.1";
-    sha256 = "0sy33wf2wjhybr5smmyla7ci61w8irk0nrv3vv7h87yli1dd9yj0";
-    vendorSha256 = "0ai7h85f0xdlh7q04l4hb9m5wajyqbylhvpjanlhkzvc60silhmx";
+    version = "1.0.3";
+    sha256 = "0m7r66nw0nppra90sjhbq5d0f4q525c73q6ncmy6w37j2nixz35z";
+    vendorSha256 = "07pzqvf9lwgc1fadmyam5hn7arlvzrjsplls445738jpn61854gg";
     patches = [ ./provider-path-0_15.patch ];
     passthru = { inherit plugins; };
   };
diff --git a/nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix
index 1717d3209007..589164e2769f 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "terragrunt";
-  version = "0.31.0";
+  version = "0.31.1";
 
   src = fetchFromGitHub {
     owner = "gruntwork-io";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-JRIwPOExPbwLS7ps4pJpvIRaZ9jZZjVK+POaUHAmiPI=";
+    sha256 = "sha256-vc3DGYb3vp55LRguhg3nG5zH7w1lTFEI2bx7kNffvas=";
   };
 
-  vendorSha256 = "sha256-lck4nabDhFA8N0lo+cIKiJjlg2TGx3qMExbblHQwbvQ=";
+  vendorSha256 = "sha256-lBhLaYn8adgfCXQJBsIVuwnA0vY8+tgeqE+C669AV+A=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/applications/networking/dnscontrol/default.nix b/nixpkgs/pkgs/applications/networking/dnscontrol/default.nix
index 69f71a7479e1..494a40c6bfe0 100644
--- a/nixpkgs/pkgs/applications/networking/dnscontrol/default.nix
+++ b/nixpkgs/pkgs/applications/networking/dnscontrol/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "dnscontrol";
-  version = "3.10.1";
+  version = "3.11.0";
 
   src = fetchFromGitHub {
     owner = "StackExchange";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-fYQqH/J027XJPML/qKMpuu2Nxuvb0cyjOu2czLH8SoM=";
+    sha256 = "sha256-ExpwJ4lMrYy1WztYo+RYa9jb8slIa3IJk/SUKA1fBKI=";
   };
 
-  vendorSha256 = "sha256-225TR9jTZSGEJZz3csl/pR/v2unUK67l08x5ESQTJzA=";
+  vendorSha256 = "sha256-IXA4YNdWR6DWIH4ceif2XcAdwnMr2kCuG3ozagtzsgo=";
 
   subPackages = [ "." ];
 
diff --git a/nixpkgs/pkgs/applications/networking/dyndns/dyndnsc/default.nix b/nixpkgs/pkgs/applications/networking/dyndns/dyndnsc/default.nix
index 66b1d2639d68..07854f48fcc6 100644
--- a/nixpkgs/pkgs/applications/networking/dyndns/dyndnsc/default.nix
+++ b/nixpkgs/pkgs/applications/networking/dyndns/dyndnsc/default.nix
@@ -13,7 +13,7 @@ python3Packages.buildPythonApplication rec {
     substituteInPlace setup.py --replace "bottle==" "bottle>="
   '';
 
-  nativeBuildInputs = with python3Packages; [ pytestrunner ];
+  nativeBuildInputs = with python3Packages; [ pytest-runner ];
   propagatedBuildInputs = with python3Packages; [
     daemonocle
     dnspython
diff --git a/nixpkgs/pkgs/applications/networking/flexget/default.nix b/nixpkgs/pkgs/applications/networking/flexget/default.nix
index 61e42ce22ec1..b898ce337421 100644
--- a/nixpkgs/pkgs/applications/networking/flexget/default.nix
+++ b/nixpkgs/pkgs/applications/networking/flexget/default.nix
@@ -1,12 +1,13 @@
 { lib, python3Packages }:
 
 python3Packages.buildPythonApplication rec {
-  pname = "FlexGet";
-  version = "3.1.127";
+  pname = "flexget";
+  version = "3.1.131";
 
   src = python3Packages.fetchPypi {
-    inherit pname version;
-    sha256 = "25a973eb54f2f9ccd422d536b29038c570de3584b8174d993119e3c6b434cc54";
+    pname = "FlexGet";
+    inherit version;
+    sha256 = "sha256-wjMtCrffRhk7NL+Z0PeljuDc3WjVWSMsjWLbqo8qUjU=";
   };
 
   postPatch = ''
@@ -61,9 +62,9 @@ python3Packages.buildPythonApplication rec {
   ];
 
   meta = with lib; {
-    homepage    = "https://flexget.com/";
+    homepage = "https://flexget.com/";
     description = "Multipurpose automation tool for all of your media";
-    license     = licenses.mit;
+    license = licenses.mit;
     maintainers = with maintainers; [ marsam ];
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/baresip/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/baresip/default.nix
index 03f0bf638180..122433d197aa 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/baresip/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/baresip/default.nix
@@ -45,7 +45,6 @@ stdenv.mkDerivation rec {
     platforms = with lib.platforms; linux;
     maintainers = with lib.maintainers; [raskin];
     license = lib.licenses.bsd3;
-    inherit version;
     downloadPage = "http://www.creytiv.com/pub/";
     updateWalker = true;
     downloadURLRegexp = "/baresip-.*[.]tar[.].*";
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix
index 0134fac0e202..ee43e4475d7d 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix
@@ -2,12 +2,12 @@
 
 let
   pname = "deltachat-electron";
-  version = "1.15.5";
+  version = "1.20.3";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://download.delta.chat/desktop/v${version}/DeltaChat-${version}.AppImage";
-    sha256 = "sha256-BTGwgC0zSr1tq/X4v/fS/12E7/mGVYQ0m+Bt6o7VL4o=";
+    sha256 = "sha256-u0YjaXb+6BOBWaZANPcaxp7maqlBWAtecSsCGbr67dk=";
   };
 
   appimageContents = appimageTools.extract { inherit name src; };
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/discord/base.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/discord/base.nix
index a8b2b02f0bfd..2d67236c90eb 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/discord/base.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/discord/base.nix
@@ -5,6 +5,7 @@
 , libX11, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext
 , libXfixes, libXi, libXrandr, libXrender, libXtst, libxcb, libxshmfence
 , mesa, nspr, nss, pango, systemd, libappindicator-gtk3, libdbusmenu
+, writeScript, common-updater-scripts
 }:
 
 let
@@ -71,7 +72,15 @@ in stdenv.mkDerivation rec {
     mimeType = "x-scheme-handler/discord";
   };
 
-  passthru.updateScript = ./update-discord.sh;
+  passthru.updateScript = writeScript "discord-update-script" ''
+    #!/usr/bin/env nix-shell
+    #!nix-shell -i bash -p curl gnugrep common-updater-scripts
+    set -eou pipefail;
+    url=$(curl -sI "https://discordapp.com/api/download/${builtins.replaceStrings ["discord-" "discord"] ["" "stable"] pname}?platform=linux&format=tar.gz" | grep -oP 'location: \K\S+')
+    version=''${url##https://dl*.discordapp.net/apps/linux/}
+    version=''${version%%/*.tar.gz}
+    update-source-version ${pname} "$version" --file=./pkgs/applications/networking/instant-messengers/discord/default.nix
+  '';
 
   meta = with lib; {
     description = "All-in-one cross-platform voice and text chat for gamers";
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/discord/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/discord/default.nix
index f7435aa3ae3b..d2d8c9a3ec5d 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/discord/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/discord/default.nix
@@ -27,10 +27,10 @@ in {
     pname = "discord-canary";
     binaryName = "DiscordCanary";
     desktopName = "Discord Canary";
-    version = "0.0.125";
+    version = "0.0.126";
     src = fetchurl {
       url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
-      sha256 = "0ly5a6l7rvl54mc39xma14jrcrf11q3ndnkkr16by5hy3palmz9g";
+      sha256 = "EraTDRKd6t0c9U68tSRdGkeB1hfqNS4KUewEXwkL8io=";
     };
   };
 }.${branch}
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/discord/update-discord.sh b/nixpkgs/pkgs/applications/networking/instant-messengers/discord/update-discord.sh
deleted file mode 100755
index 34c1574c65aa..000000000000
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/discord/update-discord.sh
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/usr/bin/env bash
-# script to generate ./default.nix
-
-set -e
-exec >"${BASH_SOURCE%/*}/default.nix"
-
-cat <<EOF
-{ branch ? "stable", pkgs }:
-# Generated by ./update-discord.sh
-let
-  inherit (pkgs) callPackage fetchurl;
-in {
-EOF
-
-for branch in "" ptb canary; do
-    url=$(curl -sI "https://discordapp.com/api/download${branch:+/}${branch}?platform=linux&format=tar.gz" | grep -oP 'location: \K\S+')
-    version=${url##https://dl*.discordapp.net/apps/linux/}
-    version=${version%%/*.tar.gz}
-    echo "  ${branch:-stable} = callPackage ./base.nix rec {"
-    echo "    pname = \"discord${branch:+-}${branch}\";"
-    case $branch in
-        "") suffix="" ;;
-        ptb) suffix="PTB" ;;
-        canary) suffix="Canary" ;;
-    esac
-    echo "    binaryName = \"Discord${suffix}\";"
-    echo "    desktopName = \"Discord${suffix:+ }${suffix}\";"
-    echo "    version = \"${version}\";"
-    echo "    src = fetchurl {"
-    echo "      url = \"${url//${version}/\$\{version\}}\";"
-    echo "      sha256 = \"$(nix-prefetch-url "$url")\";"
-    echo "    };"
-    echo "  };"
-done
-
-echo "}.\${branch}"
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/ferdi/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/ferdi/default.nix
index 5d3b251089cf..1b6bcd6758f8 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/ferdi/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/ferdi/default.nix
@@ -17,10 +17,10 @@ in
 mkFranzDerivation' rec {
   pname = "ferdi";
   name = "Ferdi";
-  version = "5.6.0-beta.6";
+  version = "5.6.0";
   src = fetchurl {
     url = "https://github.com/getferdi/ferdi/releases/download/v${version}/ferdi_${version}_amd64.deb";
-    sha256 = "sha256-Q1HSAEVcaxFyOq7oWqa6AJJpsBKRxbsKb9ydyK/gH/A=";
+    sha256 = "sha256-yaAYNQAvbtArw9qAtbTDD11a9nH2OQEPE8QLg1E79Yc=";
   };
   extraBuildInputs = [ xorg.libxshmfence ];
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/go-neb/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/go-neb/default.nix
index f1e335133d72..e554f631920b 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/go-neb/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/go-neb/default.nix
@@ -2,19 +2,19 @@
 
 buildGoModule {
   pname = "go-neb";
-  version = "unstable-2021-03-24";
+  version = "unstable-2021-07-21";
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "go-neb";
-    rev = "b6edd50d6e33de3bcdb35055fa6c5f0157f45321";
-    sha256 = "sha256-wFqkN4C0rWzWxa6+/LiHMMS8i/g3Q57f5z4cG2XZQzs=";
+    rev = "8916c80f8ce1732f64b50f9251242ca189082e76";
+    sha256 = "sha256-kuH4vbvS4G1bczxUdY4bd4oL4pIZzuueUxdEp4xuzJM=";
   };
 
   subPackages = [ "." ];
 
   buildInputs = [ olm ];
 
-  vendorSha256 = "sha256-sWrLWjODf25Z8QqCDg4KyVWmTc3PRiYpRL88yxK0j/M";
+  vendorSha256 = "sha256-5Vg7aUkqiFIQuxmsDOJjvXoeA5NjMoBoD0XBhC+o4GA=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
index 83f261cd4830..b932e699ac61 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
@@ -11,11 +11,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "jitsi-meet-electron";
-  version = "2.8.7";
+  version = "2.8.8";
 
   src = fetchurl {
     url = "https://github.com/jitsi/jitsi-meet-electron/releases/download/v${version}/jitsi-meet-x86_64.AppImage";
-    sha256 = "sha256-2VjYXDTb+u3gVM4FPwFzwyUj3O1t7fHpOrNU5Z+Hq2E=";
+    sha256 = "sha256-ORj0xSFzdyOVuybaDyTrawsVkJymKEHLbFxGUgzXNWY=";
     name = "${pname}-${version}.AppImage";
   };
 
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix
index 4918a4d91f82..ced0c77a96af 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix
@@ -13,13 +13,13 @@
 
 mkDerivation rec {
   pname = "kdeltachat";
-  version = "unstable-2021-07-04";
+  version = "unstable-2021-07-17";
 
   src = fetchFromSourcehut {
     owner = "~link2xt";
     repo = "kdeltachat";
-    rev = "5d3cddc47773b49d4a801d031c1de96c38617908";
-    sha256 = "1sah27pvdkilnyj41xf4awri9ya14gxayr99qksllz92ywd9lxad";
+    rev = "9e5fe2dc856795d0d3d8b6a3adf3fdd3015d9158";
+    sha256 = "12arcrnpacq2fbjbzs6a9yz6lfsj2dkga9chpld1ran3v6by58z9";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/matrixcli/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/matrixcli/default.nix
index aadb18606e11..7e88a77193b6 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/matrixcli/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/matrixcli/default.nix
@@ -1,6 +1,6 @@
 { lib, fetchgit
   , buildPythonApplication, buildPythonPackage
-  , pygobject3, pytestrunner, requests, responses, pytest, python-olm
+  , pygobject3, pytest-runner, requests, responses, pytest, python-olm
   , canonicaljson, olm
 }:
 let
@@ -20,7 +20,7 @@ let
 
     propagatedBuildInputs = [
       requests responses olm python-olm canonicaljson
-      pytestrunner pytest
+      pytest-runner pytest
     ];
 
     doCheck = false;
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/mirage/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/mirage/default.nix
index 42ea1c52fa9b..db30ede8a108 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/mirage/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/mirage/default.nix
@@ -54,6 +54,5 @@ mkDerivation rec {
     maintainers = with maintainers; [ colemickens ];
     broken = stdenv.isDarwin;
     inherit (qtbase.meta) platforms;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/neochat/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/neochat/default.nix
index c0e0c80b4595..b6706d647868 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/neochat/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/neochat/default.nix
@@ -3,56 +3,58 @@
 , fetchFromGitLab
 , pkg-config
 , cmake
-, qtquickcontrols2
-, qtmultimedia
-, qtgraphicaleffects
-, qtkeychain
-, libpulseaudio
-, olm
-, libsecret
 , cmark
 , extra-cmake-modules
+, kconfig
+, kdbusaddons
+, ki18n
 , kirigami2
 , kitemmodels
-, ki18n
 , knotifications
-, kdbusaddons
-, kconfig
-, libquotient
 , kquickimageedit
+, libpulseaudio
+, libquotient
+, libsecret
+, olm
+, qqc2-desktop-style
+, qtgraphicaleffects
+, qtkeychain
+, qtmultimedia
+, qtquickcontrols2
 }:
 
 mkDerivation rec {
   pname = "neochat";
-  version = "1.1.1";
+  version = "1.2";
 
   src = fetchFromGitLab {
     domain = "invent.kde.org";
     owner = "network";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-HvLPsU+fxlyPDP7i9OSnZ/C1RjouOQCp+4WCl6FlFJo=";
+    sha256 = "sha256-Kpv7BY/qS0A3xFlYFhz1RRNwQVsyhOTHHGDbWRTTv1I=";
   };
 
   nativeBuildInputs = [ cmake extra-cmake-modules pkg-config ];
 
   buildInputs = [
-    qtkeychain
-    qtquickcontrols2
-    qtmultimedia
-    qtgraphicaleffects
-    olm
-    libsecret
     cmark
+    kconfig
+    kdbusaddons
+    ki18n
     kirigami2
     kitemmodels
-    ki18n
     knotifications
-    kdbusaddons
-    kconfig
-    libquotient
     kquickimageedit
     libpulseaudio
+    libquotient
+    libsecret
+    olm
+    qtgraphicaleffects
+    qtkeychain
+    qtmultimedia
+    qtquickcontrols2
+    qqc2-desktop-style
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/oysttyer/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/oysttyer/default.nix
index e3595e07a788..33f3b90873d7 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/oysttyer/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/oysttyer/default.nix
@@ -33,7 +33,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    inherit version;
     description = "Perl Console Twitter Client";
     homepage    = "http://oysttyer.github.io/";
     maintainers = with maintainers; [ woffs ];
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/pidgin/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/pidgin/default.nix
index dc5a87397609..b5bdef03db73 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/pidgin/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/pidgin/default.nix
@@ -2,8 +2,9 @@
 , gtkspell2, aspell
 , gst_all_1, startupnotification, gettext
 , perlPackages, libxml2, nss, nspr, farstream
-, libXScrnSaver, ncurses, avahi, dbus, dbus-glib, intltool, libidn
-, lib, python, libICE, libXext, libSM
+, libXScrnSaver, avahi, dbus, dbus-glib, intltool, libidn
+, lib, python3, libICE, libXext, libSM
+, libgnt, ncurses
 , cyrus_sasl ? null
 , openssl ? null
 , gnutls ? null
@@ -16,28 +17,27 @@
 let unwrapped = stdenv.mkDerivation rec {
   pname = "pidgin";
   majorVersion = "2";
-  version = "${majorVersion}.13.0";
+  version = "${majorVersion}.14.6";
 
   src = fetchurl {
     url = "mirror://sourceforge/pidgin/${pname}-${version}.tar.bz2";
-    sha256 = "13vdqj70315p9rzgnbxjp9c51mdzf1l4jg1kvnylc4bidw61air7";
+    sha256 = "bb45f7c032f9efd6922a5dbf2840995775e5584771b23992d04f6eff7dff5336";
   };
 
-  inherit nss ncurses;
-
   nativeBuildInputs = [ makeWrapper ];
 
   NIX_CFLAGS_COMPILE = "-I${gst_all_1.gst-plugins-base.dev}/include/gstreamer-1.0";
 
   buildInputs = let
-    python-with-dbus = python.withPackages (pp: with pp; [ dbus-python ]);
+    python-with-dbus = python3.withPackages (pp: with pp; [ dbus-python ]);
   in [
     aspell startupnotification
     gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
     libxml2 nss nspr
-    libXScrnSaver ncurses python-with-dbus
+    libXScrnSaver python-with-dbus
     avahi dbus dbus-glib intltool libidn
     libICE libXext libSM cyrus_sasl
+    libgnt ncurses # optional: build finch - the console UI
   ]
   ++ (lib.optional (openssl != null) openssl)
   ++ (lib.optional (gnutls != null) gnutls)
@@ -62,6 +62,7 @@ let unwrapped = stdenv.mkDerivation rec {
     "--disable-meanwhile"
     "--disable-nm"
     "--disable-tcl"
+    "--disable-gevolution"
   ]
   ++ (lib.optionals (cyrus_sasl != null) [ "--enable-cyrus-sasl=yes" ])
   ++ (lib.optionals (gnutls != null) ["--enable-gnutls=yes" "--enable-nss=no"])
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/profanity/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/profanity/default.nix
index e7f8a9e77261..9d8a0d68e756 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/profanity/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/profanity/default.nix
@@ -21,13 +21,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "profanity";
-  version = "0.10.0";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = "profanity-im";
     repo = "profanity";
     rev = version;
-    sha256 = "0a9rzhnivxcr8v02xxzrbck7pvvv4c66ap2zy0gzxhri5p8ac03r";
+    sha256 = "0xmzsh0szm8x3hgw65j0cd2bp8cmrnq5pjz49lqajircyzflsngm";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/psi-plus/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
index c180cdb4e01f..01a8a71f0326 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
@@ -1,39 +1,91 @@
-{ lib, mkDerivation, fetchFromGitHub, cmake
-, qtbase, qtmultimedia, qtx11extras, qttools, qtwebengine
-, libidn, qca-qt5, libXScrnSaver, hunspell
-, libsecret, libgcrypt, libotr, html-tidy, libgpgerror, libsignal-protocol-c
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, cmake
+, qtbase
+, qtmultimedia
+, qtx11extras
+, qttools
+, libidn
+, qca-qt5
+, libXScrnSaver
+, hunspell
+, libsecret
+, libgcrypt
+, libotr
+, html-tidy
+, libgpgerror
+, libsignal-protocol-c
 , usrsctp
 
-# Voice messages
+, chatType ? "basic" # See the assertion below for available options
+, qtwebkit
+, qtwebengine
+
+, enablePlugins ? true
+
+  # Voice messages
 , voiceMessagesSupport ? true
 , gst_all_1
+
+, enablePsiMedia ? false
+, pkg-config
 }:
 
+assert builtins.elem (lib.toLower chatType) [
+  "basic" # Basic implementation, no web stuff involved
+  "webkit" # Legacy one, based on WebKit (see https://wiki.qt.io/Qt_WebKit)
+  "webengine" # QtWebEngine (see https://wiki.qt.io/QtWebEngine)
+];
+
+assert enablePsiMedia -> enablePlugins;
+
 mkDerivation rec {
   pname = "psi-plus";
-  version = "1.5.1520";
+  version = "1.5.1549";
 
   src = fetchFromGitHub {
     owner = "psi-plus";
     repo = "psi-plus-snapshots";
     rev = version;
-    sha256 = "0cj811qv0n8xck2qrnps2ybzrpvyjqz7nxkyccpaivq6zxj6mc12";
+    sha256 = "0jpv6qzfg6xjwkrnci7fav27nxm174i9l5g4vmsbchqpwfk90z2m";
   };
 
   cmakeFlags = [
-    "-DENABLE_PLUGINS=ON"
+    "-DCHAT_TYPE=${chatType}"
+    "-DENABLE_PLUGINS=${if enablePlugins then "ON" else "OFF"}"
+    "-DBUILD_PSIMEDIA=${if enablePsiMedia then "ON" else "OFF"}"
   ];
 
-  nativeBuildInputs = [ cmake qttools ];
+  nativeBuildInputs = [
+    cmake
+    qttools
+  ] ++ lib.optionals enablePsiMedia [
+    pkg-config
+  ];
 
   buildInputs = [
-    qtbase qtmultimedia qtx11extras qtwebengine
-    libidn qca-qt5 libXScrnSaver hunspell
-    libsecret libgcrypt libotr html-tidy libgpgerror libsignal-protocol-c
+    qtbase
+    qtmultimedia
+    qtx11extras
+    libidn
+    qca-qt5
+    libXScrnSaver
+    hunspell
+    libsecret
+    libgcrypt
+    libotr
+    html-tidy
+    libgpgerror
+    libsignal-protocol-c
     usrsctp
   ] ++ lib.optionals voiceMessagesSupport [
     gst_all_1.gst-plugins-base
     gst_all_1.gst-plugins-good
+  ] ++ lib.optionals (chatType == "webkit") [
+    qtwebkit
+  ] ++ lib.optionals (chatType == "webengine") [
+    qtwebengine
   ];
 
   preFixup = lib.optionalString voiceMessagesSupport ''
@@ -45,7 +97,7 @@ mkDerivation rec {
   meta = with lib; {
     homepage = "https://psi-plus.com";
     description = "XMPP (Jabber) client";
-    maintainers = with maintainers; [ orivej misuzu ];
+    maintainers = with maintainers; [ orivej misuzu unclechu ];
     license = licenses.gpl2Only;
     platforms = platforms.linux;
   };
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/quaternion/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/quaternion/default.nix
index f918cbdc2b89..31b37fc2dfb2 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/quaternion/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/quaternion/default.nix
@@ -42,6 +42,5 @@ mkDerivation rec {
     license = licenses.gpl3;
     maintainers = with maintainers; [ peterhoeg ];
     inherit (qtbase.meta) platforms;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
index a9de901cd870..a46649acb182 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
@@ -28,7 +28,7 @@ let
       else "");
 in stdenv.mkDerivation rec {
   pname = "signal-desktop";
-  version = "5.7.1"; # Please backport all updates to the stable channel.
+  version = "5.10.0"; # Please backport all updates to the stable channel.
   # All releases have a limited lifetime and "expire" 90 days after the release.
   # When releases "expire" the application becomes unusable until an update is
   # applied. The expiration date for the current release can be extracted with:
@@ -38,7 +38,7 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
-    sha256 = "1hjykjqf3n20aab9g3bwk5w8x8v61320xv6z4iqrwwdzfkb3ly20";
+    sha256 = "049i4nypqr6lx8f3w32pia6cfb3pmqmvasxjb5zhp6mxb3vn7wz3";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
index 47aa7c7330f2..959d1a96d8e1 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
@@ -1,8 +1,8 @@
-{ mkDerivation, lib, fetchFromGitHub, callPackage
+{ mkDerivation, lib, fetchFromGitHub, callPackage, fetchpatch
 , pkg-config, cmake, ninja, python3, wrapGAppsHook, wrapQtAppsHook, removeReferencesTo
 , qtbase, qtimageformats, gtk3, libsForQt5, lz4, xxHash
 , ffmpeg, openalSoft, minizip, libopus, alsa-lib, libpulseaudio, range-v3
-, tl-expected, hunspell, glibmm, webkitgtk
+, tl-expected, hunspell, glibmm, webkitgtk, jemalloc
 , libtgvoip, rnnoise, abseil-cpp, extra-cmake-modules
 # Transitive dependencies:
 , pcre, xorg, util-linux, libselinux, libsepol, epoxy
@@ -23,7 +23,7 @@ let
   tg_owt = callPackage ./tg_owt.nix {};
 in mkDerivation rec {
   pname = "telegram-desktop";
-  version = "2.8.4";
+  version = "2.8.11";
   # Note: Update via pkgs/applications/networking/instant-messengers/telegram/tdesktop/update.py
 
   # Telegram-Desktop with submodules
@@ -32,9 +32,17 @@ in mkDerivation rec {
     repo = "tdesktop";
     rev = "v${version}";
     fetchSubmodules = true;
-    sha256 = "sha256-IN3GQgdNM66/GxKa5EGKB/LIkgBxS8Y4mkPBaSEphmw=";
+    sha256 = "020ycgb77vx7rza590i3csrvq1zgm15rvpxqqcp0xkb4yh71i3hb";
   };
 
+  patches = [(fetchpatch {
+    # ref: https://github.com/desktop-app/lib_webview/pull/9
+    url = "https://github.com/desktop-app/lib_webview/commit/75e924934eee8624020befbef1f3cb5b865d3b86.patch";
+    sha256 = "sha256-rN4FVK4KT+xNf9IVdcpbxMqT0+t3SINJPRRQPyMiDP0=";
+    stripLen = 1;
+    extraPrefix = "Telegram/lib_webview/";
+  })];
+
   postPatch = ''
     substituteInPlace Telegram/CMakeLists.txt \
       --replace '"''${TDESKTOP_LAUNCHER_BASENAME}.appdata.xml"' '"''${TDESKTOP_LAUNCHER_BASENAME}.metainfo.xml"'
@@ -49,7 +57,7 @@ in mkDerivation rec {
   buildInputs = [
     qtbase qtimageformats gtk3 libsForQt5.kwayland libsForQt5.libdbusmenu lz4 xxHash
     ffmpeg openalSoft minizip libopus alsa-lib libpulseaudio range-v3
-    tl-expected hunspell glibmm webkitgtk
+    tl-expected hunspell glibmm webkitgtk jemalloc
     libtgvoip rnnoise abseil-cpp extra-cmake-modules
     tg_owt
     # Transitive dependencies:
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/tensor/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/tensor/default.nix
index 3969627a67a1..5bbdc6460c63 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/tensor/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/tensor/default.nix
@@ -60,6 +60,5 @@ mkDerivation rec {
     license = licenses.gpl3;
     maintainers = with maintainers; [ peterhoeg ];
     inherit (qtbase.meta) platforms;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/vk-cli/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/vk-cli/default.nix
new file mode 100644
index 000000000000..e1b3cc4f7753
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/vk-cli/default.nix
@@ -0,0 +1,55 @@
+{ stdenv
+, lib
+, fetchurl
+, curl
+, zulip
+, p7zip
+, glibc
+, ncurses
+, openssl
+}:
+
+stdenv.mkDerivation rec {
+  pname = "vk-cli";
+  version = "0.7.6";
+
+  src = fetchurl {
+    url = "https://github.com/vk-cli/vk/releases/download/${version}/vk-${version}-64-bin.7z";
+    sha256 = "sha256-Y40oLjddunrd7ZF1JbCcgjSCn8jFTubq69jhAVxInXw=";
+  };
+
+  nativeBuildInputs = [
+    p7zip
+  ];
+
+  buildInputs = [
+    curl
+    ncurses
+    openssl
+  ];
+
+  unpackPhase = ''
+    mkdir -p $TMP/
+    7z x $src -o$TMP/
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin/
+    mv $TMP/vk-${version}-64-bin vk-cli
+    install -D vk-cli --target-directory=$out/bin/
+  '';
+
+  postFixup = ''
+    patchelf $out/bin/vk-cli \
+      --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+      --set-rpath "${lib.makeLibraryPath [ curl zulip glibc ]}"
+  '';
+
+  meta = with lib; {
+    description = "A console (ncurses) client for vk.com written in D";
+    homepage = "https://github.com/vk-cli/vk";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ dan4ik605743 ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
index 168465807146..78cfa89e6d45 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
@@ -29,11 +29,11 @@
 assert pulseaudioSupport -> libpulseaudio != null;
 
 let
-  version = "5.6.22045.0607";
+  version = "5.7.26030.0627";
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://zoom.us/client/${version}/zoom_x86_64.pkg.tar.xz";
-      sha256 = "0zdk02zq9apxnfbxwnlda9z8nqkqa1h1javbh9wwj8yy3y3a1lb5";
+      sha256 = "1nooaafH+ajRtdrknXmFPclC4fJMpRTo+gBsaPHYfT0=";
     };
   };
 
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/zulip-term/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/zulip-term/default.nix
index e97ea7bb65f5..b2f80c70d240 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/zulip-term/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/zulip-term/default.nix
@@ -36,7 +36,7 @@ python3.pkgs.buildPythonApplication rec {
     glibcLocales
   ] ++ (with python3.pkgs; [
     pytestCheckHook
-    pytestcov
+    pytest-cov
     pytest-mock
   ]);
 
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/zulip/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/zulip/default.nix
index a4a1b3405b16..6e3ef93ec771 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/zulip/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/zulip/default.nix
@@ -5,12 +5,12 @@
 
 let
   pname = "zulip";
-  version = "5.7.0";
+  version = "5.8.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://github.com/zulip/zulip-desktop/releases/download/v${version}/Zulip-${version}-x86_64.AppImage";
-    sha256 = "0yfr0n84p3jp8mnnqww2dqpcj9gd7rwpygpq4v10rmrnli18qygw";
+    sha256 = "0z8lp56j6qvm57sfqdyqrqzj9add3drh1z4zsckg45jfw6yn3jdv";
     name="${pname}-${version}.AppImage";
   };
 
diff --git a/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix b/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix
index c82fb9ca7395..a900a469e031 100644
--- a/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix
+++ b/nixpkgs/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix
@@ -21,7 +21,7 @@ let
     python_magic
   ]);
 
-  version = "0.2.0";
+  version = "0.3.0";
 in buildPythonPackage {
   pname = "weechat-matrix";
   inherit version;
@@ -30,7 +30,7 @@ in buildPythonPackage {
     owner = "poljar";
     repo = "weechat-matrix";
     rev = version;
-    hash = "sha256-qsTdF9mGHac4rPs53mgoOElcujicRNXbJ7GsoptWSGc=";
+    hash = "sha256-o4kgneszVLENG167nWnk2FxM+PsMzi+PSyMUMIktZcc=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/networking/juju/default.nix b/nixpkgs/pkgs/applications/networking/juju/default.nix
index b4de49730fe8..a91255f54e34 100644
--- a/nixpkgs/pkgs/applications/networking/juju/default.nix
+++ b/nixpkgs/pkgs/applications/networking/juju/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "juju";
-  version = "2.8.7";
+  version = "2.9.5";
 
   src = fetchFromGitHub {
     owner = "juju";
     repo = "juju";
     rev = "juju-${version}";
-    sha256 = "sha256-ZiG+LMeQboFxaLIBSHjRNe5tt8bEguYXQp3nhkoMpek=";
+    sha256 = "sha256-oBwusx63a8AWNHqlNtG0S/SiIRM55fbc/CGN2MFJDYA=";
   };
 
-  vendorSha256 = "sha256-5R3TmwOzHgdEQhS4B4Bb0InghaEhUVxDSl7oZl3aNZ4=";
+  vendorSha256 = "sha256-VHUDqDsfY0c6r5sJbMX7JcXTIBXze9cd5qHqZWZAC2g=";
 
   # Disable tests because it attempts to use a mongodb instance
   doCheck = false;
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/claws-mail/default.nix b/nixpkgs/pkgs/applications/networking/mailreaders/claws-mail/default.nix
index e28680c245fb..5090b1fd0278 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/claws-mail/default.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/claws-mail/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, lib, fetchgit, wrapGAppsHook, autoreconfHook, bison, flex
+{ stdenv, lib, fetchgit, fetchpatch, wrapGAppsHook, autoreconfHook, bison, flex
 , curl, gtk2, gtk3, pkg-config, python2, python3, shared-mime-info
 , glib-networking, gsettings-desktop-schemas
 
-# Use the experimental gtk3 branch.
-, useGtk3 ? false
+# Selector between the GTK+ 3 and GTK+ 2 releases.
+, useGtk3
 
 # Package compatibility: old parameters whose name were not directly derived
 , enablePgp ? true
@@ -57,16 +57,15 @@
 with lib;
 
 let
-  version = if useGtk3 then "3.99.0" else "3.17.8";
+  # Last release and hash for both the GTK+ 3 and GTK+ 2 version.
+  version = if useGtk3 then "4.0.0" else "3.18.0";
 
-  # The official release uses gtk2 and contains the version tag.
   gtk2src = {
-    sha256 = "0l4f8q11iyj8pi120lrapgq51k5j64xf0jlczkzbm99rym752ch5";
+    sha256 = "1vsiy3xsppw4d8ylsz70wsyrvmgy88lp2hj7vrc353ckny80r9lh";
   };
 
-  # The corresponding commit in the gtk3 branch.
   gtk3src = {
-    sha256 = "176h1swh1zx6dqyzfz470x4a1xicnv0zhy8ir47k7p23g6y17i2k";
+    sha256 = "0mwnjiqg2sj61va0y9yi3v52iyr5kzmbnvsqxav3a48m2f8p27qn";
   };
 
   python = if useGtk3 then python3 else python2;
@@ -125,7 +124,19 @@ in stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" ];
 
-  patches = [ ./mime.patch ];
+  patches = [
+    ./mime.patch
+
+    # Fixes a bug with the automatic authentication method, resulting in errors
+    # with certain mail providers.
+    # <https://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=4497>
+    # This MUST be removed for the next release.
+    (fetchpatch {
+      name = "fix-automatic-auth.patch";
+      url = "https://git.claws-mail.org/?p=claws.git;a=patch;h=9c2585c58b49815a0eab8d683f0a94f75cbbe64e";
+      sha256 = "0v8v5q2p4h93lp7yq3gnlvarsrcssv96aks1wqy3187vsr4kdw7a";
+    })
+  ];
 
   preConfigure = ''
     # autotools check tries to dlopen libpython as a requirement for the python plugin
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/mailcheck/default.nix b/nixpkgs/pkgs/applications/networking/mailreaders/mailcheck/default.nix
index d66dcbf47c16..e9e5fb5f70e9 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/mailcheck/default.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/mailcheck/default.nix
@@ -17,8 +17,6 @@ stdenv.mkDerivation rec {
     license     = lib.licenses.gpl2;
     maintainers = with lib.maintainers; [ kovirobi ];
     platforms   = lib.platforms.linux;
-    inherit version;
-
     longDescription = ''
       A simple command line tool to check for new mail in local mbox and
       maildir and remote POP3 and IMAP mailboxes.
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/mutt/default.nix b/nixpkgs/pkgs/applications/networking/mailreaders/mutt/default.nix
index 1428fa6a4287..0c2ffdc7fffc 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/mutt/default.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/mutt/default.nix
@@ -27,11 +27,11 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "mutt";
-  version = "2.1.0";
+  version = "2.1.1";
 
   src = fetchurl {
     url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz";
-    sha256 = "0dqd6gg1wwhxjgdfl8j0kf93mw43kvd6wrwrzkscq2wjrsy5p0w0";
+    sha256 = "0jjjvqkqmpj55v111p1a1i2ry7mpd1bpphn1bhvlr18rgw7xdrja";
   };
 
   patches = optional smimeSupport (fetchpatch {
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/notmuch/mutt.nix b/nixpkgs/pkgs/applications/networking/mailreaders/notmuch/mutt.nix
index 18264c5c6af4..ffd30c754b47 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/notmuch/mutt.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/notmuch/mutt.nix
@@ -24,7 +24,8 @@ stdenv.mkDerivation rec {
 
   src = notmuch.src;
 
-  phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
+  dontConfigure = true;
+  dontBuild = true;
 
   installPhase = ''
     ${coreutils}/bin/install -Dm755 \
@@ -36,7 +37,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    inherit version;
     description = "Mutt support for notmuch";
     homepage    = "https://notmuchmail.org/";
     license     = with licenses; gpl3;
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix b/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
index f3634b744aa4..ae4999b4f5f2 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
@@ -41,6 +41,7 @@
 , pango
 , runtimeShell
 , writeScript
+, xdg-utils
 , xidel
 }:
 
@@ -164,6 +165,7 @@ stdenv.mkDerivation {
         --set MOZ_LEGACY_PROFILES 1 \
         --set MOZ_ALLOW_DOWNGRADE 1 \
         --prefix PATH : "${lib.getBin gnupg}/bin" \
+        --prefix PATH : "${lib.getBin xdg-utils}/bin" \
         --prefix LD_LIBRARY_PATH : "${lib.getLib gpgme}/lib"
     '';
 
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix b/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
index 82bf1800bb05..4b9e47aef5b1 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
@@ -1,665 +1,665 @@
 {
-  version = "78.11.0";
+  version = "78.12.0";
   sources = [
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/af/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/af/thunderbird-78.12.0.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "061da958c7e0b52c76cc3152cf541eabd855e7189f976b9743792e52ab733ea8";
+      sha256 = "39671f52392f2c10c7398376047e01d85c42ca8eb21d2c536e11fa575cca4874";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ar/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/ar/thunderbird-78.12.0.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "915ca02f6e7639adef01d8e332133762bd3f88df6a1c12e86a86c04010efcd69";
+      sha256 = "b3ac3c166b5eec0ae3857a89817a0a7088dddd5545aa4864705caf79aa8bae1a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ast/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/ast/thunderbird-78.12.0.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "6a1995efbca69e251ca70af570b02d94a99f83ef7927d667f9f856febc53ff40";
+      sha256 = "2a98210aef008bd04206eb4019d9b6d0301e21085d8c96e5d8f023c77b079900";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/be/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/be/thunderbird-78.12.0.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "28c87eb1651bb4fd00d8b52b3f0a4e0520ceeed76305ea124915c238562f28a2";
+      sha256 = "6309d4959ebcc9be6d139277f990562f8d912766d57d64fc3ec4078e214097cc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/bg/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/bg/thunderbird-78.12.0.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "24bb2cd51bdf4e99fe88a13c70289f3896cb17c911d556150f1c6e216f3ef5ce";
+      sha256 = "20fd0b411962c3ed0da4f6eb95d8c47dc57a7b366dee0e771708c2c67772619f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/br/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/br/thunderbird-78.12.0.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "473fe2acadfa6e4f6ba8eddcfd4377c3eeb583f6510461e6f51b9dcd89d36ace";
+      sha256 = "e9f43ff375066cbb23340f2138c0ebf7b2c18e0a57d7049437034a580d8ebc74";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ca/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/ca/thunderbird-78.12.0.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "d128adb596f6be2a940a2544ad653c812c177b3d08ddac7de716fc3ce603b71c";
+      sha256 = "2eaf6674ea616116457b7100b90f2b813eab906091a53bce71d52f4bdae17fb9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/cak/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/cak/thunderbird-78.12.0.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "cff975db463997677d392264e55bd73a3c1a36e34991f8bcbb0673980f428589";
+      sha256 = "f56dc013fad49782a074ef7d0721a12f43af5f029e690937d72e6a14d79c1505";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/cs/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/cs/thunderbird-78.12.0.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "90836d8c099594ca0e459d7d07232ab47d811cafc79ca5ad2999186f242fa8c2";
+      sha256 = "87fecc8661be9ee8891b74f83bd9a6746b826700a6ac46b550d5e2bcc93e560e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/cy/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/cy/thunderbird-78.12.0.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "2a844b7afe834dc6e0ad291a6d5cb9ca0389d703f9a8ca385aabf5e5f012c4c5";
+      sha256 = "4177b225e02341b96baa6528f1053c718e2e85d452b730a40ebf124a4c70d118";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/da/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/da/thunderbird-78.12.0.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "a37075627a6955abfc15508d2bb4a16ba330a4c64c89f95084635319ad5106e6";
+      sha256 = "9d8cb26a9011130ce973e9e7ecd20650296d406b7ce8b4cf8740ab7e9759e641";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/de/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/de/thunderbird-78.12.0.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "6e03c8b0f791cc09b04b3114e8b44950de974beabf0563705af625ac1226dbb2";
+      sha256 = "ee19d3702cd0fc0b193e09a3fc470c450ddc919d78471df071183c89c063f443";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/dsb/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/dsb/thunderbird-78.12.0.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "546f10d4653940798540797deeec54287cd1275b5ebf350661d49cd313228ddb";
+      sha256 = "20d78a72fb2c5d91e2534dd21aa00d9f958d2df61bec297e1662d7f594c76a5e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/el/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/el/thunderbird-78.12.0.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "b6fa7ae657a03c4f91905e95931af05b9af588a067a03a3a8a0d9faa8d40b59d";
+      sha256 = "c5014ec8b8382814e3184839192aa71e5610c8c0a6df8dfc9b6b596afbd22bcb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/en-CA/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/en-CA/thunderbird-78.12.0.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "5507e9b74cea95681a2c7c21cb5127a7369366bbdaa6a24dbafc7a4fbe11b924";
+      sha256 = "79f1c4166607a01cb32eec5ddb60892822f9047f43c7af3cdeb877ba9c7b7584";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/en-GB/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/en-GB/thunderbird-78.12.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "fcaa2b652b43367fcb720e8386cdc92346318bab67fd720c5958e7ec236c0844";
+      sha256 = "8dfe9daac9224dd4c64d689b7b066c126f72e75f283d8a66dcf3fa846e46c881";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/en-US/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/en-US/thunderbird-78.12.0.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "688a2f7274581fa4735a6d2f8166ba262999694889635bf3bc30ac77ad746fb3";
+      sha256 = "43c021edf529f388856432315d99fd1261a0034aa1cead97cc104598eba63d7e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/es-AR/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/es-AR/thunderbird-78.12.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "506a63de366968c6a3e66503def57e621cc2458ccf07ccc53ffdad72fdab8914";
+      sha256 = "5f6f86557456d717790a16053e663dce8878a4e7b60f4ee15d02ae753b5c8e78";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/es-ES/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/es-ES/thunderbird-78.12.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "974acf65d509929d6b8175ac99a2886f17d4dbc4a6b8d4ef50e82585e1ea9fe6";
+      sha256 = "f6e85e580871e225e5315eeb0aa7f2982f43352c6c4065966ead1eff47037989";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/et/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/et/thunderbird-78.12.0.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "504c97962170388d6fe249c24b6f5a62025ebf9bf4b30b65fbfd3baf12756809";
+      sha256 = "37ea60b93f1d57a1c5f30acdc93dcd73a35ab7107dc05b8e8eebe3a996454186";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/eu/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/eu/thunderbird-78.12.0.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "b4c4bd5b228f2b945dc8f280b12a72dd68dff10562c4f19b5a27fa94a95d9128";
+      sha256 = "9f7a1fc4b94017d6341c993209987e9647bf29973c3ffc3427ece6277cf92c5a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/fa/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/fa/thunderbird-78.12.0.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "4384d9579304ec344f616e00a51bebbf5038e212cc54d07586182fce9558af91";
+      sha256 = "dc36f3eb91e32ea44a30792f8d65ed225455567ec4b7ec386fe6ec6510caa5da";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/fi/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/fi/thunderbird-78.12.0.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "89bba8ff928caa79b8b1947be761388e441f01655f200f4a7fb9d9894b3ea4e6";
+      sha256 = "1fa2cfe9354f7a5b4c9aa0927ae83cad535e8cb448d8a2d82f7a946b5c142b22";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/fr/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/fr/thunderbird-78.12.0.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "c2953ff1879ed8f80f6b9f1a26c08ba1f5969e8b47b81a3eb3ab690698142bbb";
+      sha256 = "49887ce333f50f404a383291d813e3e8f891045247d2de353627998c47821a12";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/fy-NL/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/fy-NL/thunderbird-78.12.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "58057f7bb143512c1171296413050178f0a7a0651513e7c67d153af5874aa382";
+      sha256 = "e408da5478ea01797c260b414ff513e87e71c6de41d6ca0c8bc11780c06fad28";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ga-IE/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/ga-IE/thunderbird-78.12.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "94c070e79bba7a43f3fcc8b0b1759e424366f3ced72e2e53c5fe75689602a0ed";
+      sha256 = "6dc99c43a076c4575163e640260b27aaebef01ffcc1ce8b6c6e2da8c993eee72";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/gd/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/gd/thunderbird-78.12.0.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "a655074ab7d0f86318199ab32b77c889ccfd366f6a0d9d43b4bbeba54ae2ee1a";
+      sha256 = "3ba9424491565e4e576dbfe656e681892ff1084fcd8b9659beb6a17b36cc4c27";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/gl/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/gl/thunderbird-78.12.0.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "2835735ebf7f518aaf8d16ca3cedd3e7f7414e0cc1177a185b6e896da7e2c87f";
+      sha256 = "a8348d99ba729122d2d2cc0a10d60c38ff4b7e83eaf7ebd04a58d7fad5326664";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/he/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/he/thunderbird-78.12.0.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "804c359b76026631e5a0ecf40258782f24f0be4d34b700b2aa0532607e4c5651";
+      sha256 = "fcba79332eeba50f074a7f1864120414ca20152a16b4b9aed02dbc05d487cf10";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/hr/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/hr/thunderbird-78.12.0.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "d7278bc20c7eb6c071648b639064338ae8cf7535476c0493b642d45c0ae9804d";
+      sha256 = "d6a51f6c92ab53a73abb5733a9737d36f59aee7acd248ea656b7aa3c406e3980";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/hsb/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/hsb/thunderbird-78.12.0.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "fb520d80d1505b50b8d9e2a43c10512e001b120790c823eb41dcc076e68eca51";
+      sha256 = "a99dbdd453d31674178faecf37e61b414cc24468a39b8a5e5afa037bf938ffd7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/hu/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/hu/thunderbird-78.12.0.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "20639f623995f76b2f7d5f8d81e08145767d2a67d97fbd31542599abd4c80a57";
+      sha256 = "aa8384952169ea4f60c8bb11d47c39b81a9c327546ceacdefedb1a37a91e80b0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/hy-AM/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/hy-AM/thunderbird-78.12.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "bf4c1fcaa9bf928607dade6d8fd16b47fff6c248c07ef86fcb20c0b3a6841ba1";
+      sha256 = "2a3fd50c42b1aeea61e921e70f05c4ca74e03904c8400b7fa0e245816e42e0f9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/id/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/id/thunderbird-78.12.0.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "03665c9cfdd39e8ebb568151a28ecf02e425bae4241de74bdb47a0f9f38e26ba";
+      sha256 = "5b606b68a3f618ca0d3fadc5a8ee1da7aa636b6d1c1aee0b3e46c978c4a95ef3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/is/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/is/thunderbird-78.12.0.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "1efb313ae0fc03d402f306ca0258ea4c784a762a642f947065e154c382e9135b";
+      sha256 = "af75f627fc5eb5c0628bbc3ece9549c0daf967e267de850503314830384b340c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/it/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/it/thunderbird-78.12.0.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "95e1c07248c8ef1ab36b8a57729615a4f2ab9a4cb6148f1b0bca20554901ffca";
+      sha256 = "de55f082a0de2c6a3f5c04e6a3bc00f4dd79dc4c8c91d7218bbc50c5e31421a4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ja/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/ja/thunderbird-78.12.0.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "95c592c41b1199bc280c219a8b4873e2bdb18171c4cccff4809a5a87ccb52d0f";
+      sha256 = "5db89a1ef3e1546ac48e870c06a235e2f525a9634fed09ce706773cf2582c15b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ka/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/ka/thunderbird-78.12.0.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "85566d54dd72a9ae9d6e3e5b85ed2ad01fe7d6e08e33b02985bc4e78e55dc5e9";
+      sha256 = "524d9508d2b8ee337658d5538f9b290e08f0df9ef0c7ed0da9dc5e1e8dc2a9de";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/kab/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/kab/thunderbird-78.12.0.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "cf7f8a9975f9ce163bba8438121cd8090a498877d65d91694aac198f4307bc90";
+      sha256 = "7dd3d55f7a5b68b0ebaa96efb2091c320553bbee17b0329dce2ffdb5bed0954c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/kk/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/kk/thunderbird-78.12.0.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "9ef1e12e02ed3e8a05f58da73e0221ac6545c515eb2e236b4a99b4594afc10af";
+      sha256 = "f49fe966e1f22e542b62f7e2f3aa8a7377ec6997d5d0b3dc8f0e6986e0418111";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ko/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/ko/thunderbird-78.12.0.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "6d028659f0b239b81dae7dfe44b96015ef1a217cddb135fee3bd8884e7b442c5";
+      sha256 = "f48b05376ce85123a163ec54be9baa1325e38e1994753696a3054028a6f60ab2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/lt/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/lt/thunderbird-78.12.0.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "90f11349d4f5a674457f541b4edadd83b6a8f32f56eaa0a4d49e9b2c26dbbe47";
+      sha256 = "124b0f6e6f1db1cac8ac33f0878d8583c29913c65fb5ca1be4653a9592967407";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ms/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/ms/thunderbird-78.12.0.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "f235748f67ad749d8b020288df8c7251bcbd9d1bc4bb979554928f54270c1f88";
+      sha256 = "c2917bf55feb4c9efa905920add0bea79b715dc631960e283cb413d05e1e51ec";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/nb-NO/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/nb-NO/thunderbird-78.12.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "de2bfc3bfc2f285a42cbcc800867395d132a56f3aaed8ff687c9e95706164ad0";
+      sha256 = "1a5f059665aacea4f12f0f604979bc6de5059e50ab85710cf25d6f0478fd1acb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/nl/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/nl/thunderbird-78.12.0.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "4b7be1a4717a4b42bdf3b7583b2a1fa6cc9cfcad52ac7fafa4435230dec70048";
+      sha256 = "4efc6479b4948aa96e4c4a14f25ca6401058ddfea4b4175cdce851839327dd8e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/nn-NO/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/nn-NO/thunderbird-78.12.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "0ba39f2e8b6895216d97e13809749fb6a1237c5bfd0c1f8ef9e365218d1422e4";
+      sha256 = "910661eecc2d65c27f63597ed5bdc96973e39603a0c702e7dd760e87b373d7c8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/pa-IN/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/pa-IN/thunderbird-78.12.0.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "2bf07cc1f213c20b2f181cd104eb6cdd6b5f885ccff2774817ad95840addf3ef";
+      sha256 = "50aa0006b3252d7ba020a162b36f863c632fb3f6d13bf0589334ba3f34ae6ba4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/pl/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/pl/thunderbird-78.12.0.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "9d2607c5d61ef121a383eb71d5bb650ba0ccb6b441666bbac5a9f3b91377f574";
+      sha256 = "6f75b4492c9cf6bd3b03800a55b0e91a121e7e13ca1f451571cf25abde040487";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/pt-BR/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/pt-BR/thunderbird-78.12.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "cab1a3fabb975895b0c57bb4cb3b90f9386d0c33228b24edc13095d7d644d727";
+      sha256 = "ed8834d038affbd7fadc93dbb72d972a7dca77d9d9af4b5cbdb0cf4c36bd7b70";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/pt-PT/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/pt-PT/thunderbird-78.12.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "53b44f8caae2a2ca878435d988dbaec7c188c2fe236efcda8b92b4310aa3119f";
+      sha256 = "6add8c6de555561d892b23909e5b4828230567789f71467600483c8eb0f4e6d1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/rm/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/rm/thunderbird-78.12.0.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "f170779793afc440c273b8826cc456af903a98ac9694b1aae6ee50a5bec2be26";
+      sha256 = "c9ceb44aea4f61d4376d2519b233356ca48ab7eed6c62e0402c1c435baac379c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ro/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/ro/thunderbird-78.12.0.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "d0628abef66e2585db898834ddbd3ad9e97edea7269538dbd4b4520f22969b4a";
+      sha256 = "5d2889df62325331b5869e17af8125179ff9371c8860ad52b4cc8d4c21253e6e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ru/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/ru/thunderbird-78.12.0.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "077b682cc7365aab8fb3100d5f487fc873a16a4fcf71dc25e63a2604b57ccc00";
+      sha256 = "07aeda5b10bcdca5474ef156be35c38ebd15de68a3670e4e2532b045964d7164";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/si/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/si/thunderbird-78.12.0.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "7fc582c2f23b197da426ff0150941ea59fe1da26c84df41bff88039ff3fdf4fb";
+      sha256 = "a70410319bcab48a407f4b379e82029528b8998ec89d7105a85ffce5e804a285";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/sk/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/sk/thunderbird-78.12.0.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "cde3c240b1718085b36e9479eb9717202c1a179d9cd2cd094901074d666fb763";
+      sha256 = "4b110a5b7d3cab0a9145635c0e458e22eddddd97e407a229d8c8a5f5761d150d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/sl/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/sl/thunderbird-78.12.0.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "54ee18a338c727838db7cdca4c458d4b9248c626a3338ec83c41001d124d2917";
+      sha256 = "d253ee57d3eac036b1b758d45609db39b47dae05e282ccaace739993ef3cfccc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/sq/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/sq/thunderbird-78.12.0.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "511209ca3eb810250fef3b0b01f71941bc0436410716974244aa9b5b1193582b";
+      sha256 = "700a8e7798f8b92c6874febd71b188ab0a97a2ca62930db4cb36fb12e02cefe8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/sr/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/sr/thunderbird-78.12.0.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "d22da1e4ab790ffb3e8a8c3928adfe8c1b7b65c08a5dbaf2bb63473b08fb5207";
+      sha256 = "5485ce5280b71f9adc8ae2a544eecb8c8a12720efd604d93d5f2bf051f3edc0d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/sv-SE/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/sv-SE/thunderbird-78.12.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "c7826bfef5b705fb5d00b6ade07d092bfed25d74b6992308027e8ea99f2ed16b";
+      sha256 = "a3d0f4d3d32ebb2ec9b67fcbbbabf5640b714fbcd01a742c7cabd872c5bd94f4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/th/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/th/thunderbird-78.12.0.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "cba4789bcd072a21d5e131f0aed7aed1775f6122776f873b54fd9832bc5b621b";
+      sha256 = "2d6963ec130e14f5d0721782d5a4f724eaac5bab1b4e3469e19dbbdf1512396d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/tr/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/tr/thunderbird-78.12.0.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "8f8345e6722931b495755ccf67b0546443e11d435cfe809edd00f6e3565a17bc";
+      sha256 = "b6ada3486cbba66992db5a04138f03f12ac6fc004cb86558a4b8787481f39383";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/uk/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/uk/thunderbird-78.12.0.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "cce394a934ab0352cbd980d29a61fc1be4e66636ab5e31d358fa2efc82e17c19";
+      sha256 = "c24fa7aab502cfdb88703c0abe2444cfd1bc7b94cab1f34b0626240c2a75a8cb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/uz/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/uz/thunderbird-78.12.0.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "4a94d98472bcbb34a19b58c8e4caeb2e29c58d4d7496ba0d4af02a8aa0fe3802";
+      sha256 = "119d29856eb9656d89b5d06301f3abef4db106ddf3793dc0b9c0c7f2cb03428c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/vi/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/vi/thunderbird-78.12.0.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "a48de334712d154917d6285a84ab115f48e672fdbcd9a7469013d3b07524562e";
+      sha256 = "4aa063fd673684488c9565ca7f35b8b6aa2c944cec921131de8ac2dd483b5b8c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/zh-CN/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/zh-CN/thunderbird-78.12.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "6892a5236ac0abecaa657b98929fd9feeaa0ac9d4d64e000ced26687c4fa96a3";
+      sha256 = "78fd8d25250632336c574b4d02a9c397d2a01d91660a17a3dedc98155cce84d1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/zh-TW/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-x86_64/zh-TW/thunderbird-78.12.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "292ae08c031cd40a493348dcf39adfecbb9372288cd2cc4bb5ada9eaee5a7649";
+      sha256 = "724451f25a3e45cc23a277c4d1bf3ce76457d883d43b5a5f172340e6d8e81f41";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/af/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/af/thunderbird-78.12.0.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "26a1e66facb1839a8a2dcb2fffe3677a5d6f9c68343293625b22faf553ff1244";
+      sha256 = "6ee9ef2596d099bed0962199cf95bae3f8ce322cbc2d9d78195c1caa661297d2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ar/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/ar/thunderbird-78.12.0.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "6625bb6b5374ae174b21d53735c4d51d3d8464556ff42ac9b270908991837989";
+      sha256 = "dfa41ea4a15f074b2530b8e8383b76617e1a916344567e30dcc370660f0ab05a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ast/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/ast/thunderbird-78.12.0.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "57e8de5bbace8def637356ac7b519155411f8b5b2dd6496ebbdde102fea490fc";
+      sha256 = "602d1ee72a11a88004236572cb2fa22fdd86cbda81a74f89342e8371a295a140";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/be/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/be/thunderbird-78.12.0.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "c045e2b129cd373ed1b2a6ce4d12d4dd3dbcf92c380a1dd8fa237f001f7c5bda";
+      sha256 = "1e7d385da89801d9a949fef16de5904314e6e012a2693a936c122e9b8276b267";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/bg/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/bg/thunderbird-78.12.0.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "5bd9ded232f60b88be72a5cd301b02c6bc6a6651be48e08ebe5358aaa801dd6e";
+      sha256 = "e8c52029a88272d3371c42cdab8d8fd97d8a816032377d22285154686a557f08";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/br/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/br/thunderbird-78.12.0.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "1dc7583fe66a26b040e1a46281964898c5a79ead6516e02a0c1ec7a175962621";
+      sha256 = "49d0c56d04033da26b9e73cce83e7de55755b269e2c15003537c2cc53d1e57c1";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ca/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/ca/thunderbird-78.12.0.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "68cc1ba9382be6d5b90e94fdc6fd1403b2b07c67759be80d2623fcd41b16f51f";
+      sha256 = "c31cc0421858f4a31840d6924882ed692db260e66c16b4c916d82e2eb07ec229";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/cak/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/cak/thunderbird-78.12.0.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "006d1806c7ce336fb51bcc74d4907a6aacb43c0902e0b323b638f9a9d2664ed1";
+      sha256 = "5be14239cea98b350a05230efb5e15dbac7bb530f1c3f2b7f17c12b0d2ff75ba";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/cs/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/cs/thunderbird-78.12.0.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "5b342803243a51a9e521705c1082c87cc528ac59475d6b893ca475ecb10ee02c";
+      sha256 = "51260bbdeebf1cc18b7d36ad2a302841b29eee797d096ef033b5be03162177ad";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/cy/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/cy/thunderbird-78.12.0.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "55bf6bc1aa371ad52097e89dc26af4fd11a2afc73b4ece79ae3c3bf0294fe5fc";
+      sha256 = "8c6e1fce7834da9a3a820bcb9df6a27f77c132f0c513ed074c24af9de8858798";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/da/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/da/thunderbird-78.12.0.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "41d21b7065bb4a11b80990daf550a29e5d588965c83cb48a762bba7bcbbec502";
+      sha256 = "fabc99558863a646565eff20badf08805e2460e541a3907fab9c6b029dadc0de";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/de/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/de/thunderbird-78.12.0.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "190339793ab6b5bcbbea2e81a1c783fa91dc18ac702870bd045ba597d0c826d0";
+      sha256 = "dc6d7c639e6e9b3ef9f4c13054ec543ed1ec6d789ae2c5e0fce5650c7fa7932b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/dsb/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/dsb/thunderbird-78.12.0.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "068243c6d19d9c5ba9ff4ce9793db643555657593659176fb543eba5cbde7c44";
+      sha256 = "86edac99d1e2a8da228718f2fd78448948e207e3398f781ddec43d4c9ac9e425";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/el/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/el/thunderbird-78.12.0.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "ab93bb707a7bf50813b067c7d2f5f72e858073080e28094a917a4e5715612053";
+      sha256 = "0113409e306300aa4bbc9dacdd85ca52e5d71ca52962ff4628a96c4103337a1b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/en-CA/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/en-CA/thunderbird-78.12.0.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "2bbc9fe5efb8905d069174d939933b64dfeba6716f81487b4aedcea7e00fb48a";
+      sha256 = "1e792a76d371479abd43bdfb993cada3b23fbb547cfadf691b25f51cacf4265e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/en-GB/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/en-GB/thunderbird-78.12.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "6ac3648deccc9b3b01575791fadec6bb9210aeae4d32934f7ae7ddee7d857b93";
+      sha256 = "596ccfcaee2a005ea2ee0a93f9644666a5e7e955e22b799bf91766908dac7db9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/en-US/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/en-US/thunderbird-78.12.0.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "e423d465824e4b56f3899fb15dbac1b016832446ded5c46b8bde0c279ddd3df2";
+      sha256 = "97fcb2332b1343f9b5e06efff7ea5a73c80212512ac2b2959537d1e255a8ce44";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/es-AR/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/es-AR/thunderbird-78.12.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "925c762d84e4620b96b8feb73a4b5506fe3dc339c0ef316e23ef7ea636ad8da6";
+      sha256 = "0af5917c4828c08425709f0fc3aca7c74668ece53721666d6e4004b637469b17";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/es-ES/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/es-ES/thunderbird-78.12.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "d75ea97c5cfa524c93055af618cbbd27a6ef8c2125ebe963467f0e93f9f80ea3";
+      sha256 = "6283c85e34f6ab7d25fdebb5ed70b1d26c601b3416cef45cc8f06a15e723d9b7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/et/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/et/thunderbird-78.12.0.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "f925832734574c0056ce60edc9630db70d262b993c913da167f01b51f9ec14b1";
+      sha256 = "ab1cefeb07ead51998a7f54befb0a291c065d8a0d440a6d2c7972fa64f345948";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/eu/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/eu/thunderbird-78.12.0.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "60f27f7d725bb90ec93ab247c708442506e9532c050bc7a66b5d23db2dcab91a";
+      sha256 = "f4ce3787e3cd46c8bcadbc6ab2a728e3b76ee2556ad5e4129e4418e844a8c4e6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/fa/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/fa/thunderbird-78.12.0.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "505373b341db6e20b90d555815974a232b6ec685b4301e9b81305092806d721e";
+      sha256 = "35da798ea7f613489820e4e42b1c78c078c21ee7f7521ef5ba21a7602fb302ae";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/fi/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/fi/thunderbird-78.12.0.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "6f9c715ae0d7db81db3ee72d822ea1d9395b30d0a4a2f46c50f77e4a156df27f";
+      sha256 = "dd97b6c745b88a6493d280e5efc2165bc5895ec7ac56c1df63d7adcb860eec59";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/fr/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/fr/thunderbird-78.12.0.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "5600b094c00d9607e91f2c28aa99de75c87999a1d16739f926812a0e9bdcda53";
+      sha256 = "9d49108417933e1f79a285b99cf0e49f6a009a121084148da70f4cf93a238c34";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/fy-NL/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/fy-NL/thunderbird-78.12.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "3fd24a4704df03e83bdebdf9a98a085849a72de939aa21c8fb93051ca9ddab85";
+      sha256 = "efe33dbc8d7c6347359d30c63034a3553720ac806c1754752b0649d91ce293a4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ga-IE/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/ga-IE/thunderbird-78.12.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "1f69cea70de04de5458a877b9ac3c2cb9cb04a60f888cdb19118bb04156540e2";
+      sha256 = "c99c54902c522ec9472ed6ea4a85e6be9dd0e013a2835a38d90b4b77554c05dc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/gd/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/gd/thunderbird-78.12.0.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "d33666cb1812541a81f91b457a7d9d3dba3ede5b90f0e56d31d90dd8359e077b";
+      sha256 = "af46f3aa8480469783a625553688f7ef5ff00bdcd9be9c98af7d49f98e8cba7e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/gl/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/gl/thunderbird-78.12.0.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "5694106a7bccd7dacc35d89f4c2dc3080be40f937d5b3a18e6797a2dad1dfdc4";
+      sha256 = "bdf94938571db3959781b490fc74aaf1a48b42663b22ae32dfab97600772be0c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/he/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/he/thunderbird-78.12.0.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "77e2e3e1872c67de101d3fca87a3c308b26eb47f06222f0504a95e42f9248d39";
+      sha256 = "1e9f6f580751bcf518813a123a0e1f2f66cee92110516867b4844bbcaa2fa67f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/hr/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/hr/thunderbird-78.12.0.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "513c4d88387c7ac3463047b4e84c2f049dcb0dcc205bcf0d1b6935f94db16a88";
+      sha256 = "a6727dce9ac4074ed5685086f224cc956eacf04b3aa54fc4b7d669e2d3a548e2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/hsb/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/hsb/thunderbird-78.12.0.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "f2731aff055f734befefbd17778ccf8962c882266443b9ff5e6e6babcc09c0c4";
+      sha256 = "16f985d7c4520bd81bc1e5a8e939a2ce97e807ab0635625d38290b073defa79d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/hu/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/hu/thunderbird-78.12.0.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "c29018382b2d0d45727e23bbaf3a37661ccb7908912a24ed5ff3042766ecdec9";
+      sha256 = "9e7c771cd0dfd8dd1b42721f9129d1fdd760c2d3f7bce407adec6c4f3e0fc955";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/hy-AM/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/hy-AM/thunderbird-78.12.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "f9152a462ac758fe21c46e734bc8d8e727479f4cc8c7c26cda43bfc896244596";
+      sha256 = "4a5878d9be7d0b60347a19c2533fe22ff0f02aeb5228070ecdc1bb5bd0ca5490";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/id/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/id/thunderbird-78.12.0.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "e336ee15d25b0edca6492a765af7a6b0eed3ef30155c908e4940985e373304b5";
+      sha256 = "80bb061ed6efa9396627bb05ef26247e92b49fe50787e04add488cc3c69c5304";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/is/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/is/thunderbird-78.12.0.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "6495cec1de969c1f30ef042fe604027014161497ed77eb327451eb4a70f7b1a2";
+      sha256 = "4d96a6de273846f133a307967e4d96f6594c8f4fdd6c16efd39f10bd5121cf60";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/it/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/it/thunderbird-78.12.0.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "7bb395c5b3cda42c41196f06be6ed2f35eff958c3a9325807c42616b971087c3";
+      sha256 = "f10c633cd2ab40a4845fe7c681094bbe18b2d0240c10d77ab2e47c633e10baaf";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ja/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/ja/thunderbird-78.12.0.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "ec313b0754cffa5ed388e983faa394b146cb5227c99e74ee681ab833540b1cf4";
+      sha256 = "b97a41e3e48c29f60aa22e9ce98bb4bab641ba633877d3086e92d1904bc7e34a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ka/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/ka/thunderbird-78.12.0.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "13b8d137d2b1da647ed603208a4cd275e5cc11d3395a5709629ed8965c5c355d";
+      sha256 = "c2a0bdf08c8ae9f5ca5df56eef07331834d52d4d8fefbe87e3f5f7bd31f83457";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/kab/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/kab/thunderbird-78.12.0.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "a8780a5af7cd112d05a2b13469ff40d09c1909b2a09012a4ac7883b8555c3b71";
+      sha256 = "4475c84a76bf254c6126384c15bb9721750cb935b2ab49b4825bc1d2c9552cc4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/kk/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/kk/thunderbird-78.12.0.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "1a1b0ac46b10eda11ffa4a53dcf53c1dce2a2a52355e08e44960d135a8feea91";
+      sha256 = "5e74e269de716b9239dd45254d660679f8cacba3264aab7565be68c16143bf40";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ko/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/ko/thunderbird-78.12.0.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "312c211b3079191b5d53cf5052e0225fee2b4e699a848b3d29a8efdf3192185b";
+      sha256 = "b40047124044f3ba15f08526c1898f12d88e186f422202ce3aab1ee0f23cd0c7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/lt/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/lt/thunderbird-78.12.0.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "817b079ecff259043a0bf3abece031c15e04a2a615b49314d8377da6ee8feebc";
+      sha256 = "f7bb95f825b8aa20f40851fd0e99ac1574e26f2a5c69dd7bfdc2f865a11051b5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ms/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/ms/thunderbird-78.12.0.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "737b88b2fd394851143a798508b537b921fde8c0648856e09426102e7962ef7d";
+      sha256 = "473ea13ae580d09237a04e08331d883eff6c419d61f0ba1afaa1c5a948da98b8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/nb-NO/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/nb-NO/thunderbird-78.12.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "9754dd9cc6ca38970a50b3f26d0d2fe1cb1c3a66a77829489cf6f2098f7f244f";
+      sha256 = "efe8ac1e38a085caec95b817548c5cc06f45aac03bee5545cb65b93eb19efbf7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/nl/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/nl/thunderbird-78.12.0.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "b43da367f973e7b2899967c777514262f4503778d550bee27c5b11651555cc17";
+      sha256 = "a646a84098185d299118305c651788bef0a88f805b08ff51bcc87067a5460c06";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/nn-NO/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/nn-NO/thunderbird-78.12.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "cb0bae6a905c2ffc39f173519ab9dcdd7835c1b9c169f778727b55eeb8c67cfa";
+      sha256 = "14b765aa23671318b6356886f3bee0847570158c4215e0d106bc823df045414b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/pa-IN/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/pa-IN/thunderbird-78.12.0.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "d9d7c15ca519636ff93e0f1ec956e131b5bc92bb18a67c7958140ebd75ca84c0";
+      sha256 = "ddc9dae4e4f7a9cd99d8e2e5041ac52432b6835f7b6e0867bc7ea2ff7283ba95";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/pl/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/pl/thunderbird-78.12.0.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "7cbe410b721565b676d6a9c0d09e163a7452b0a9137672f654f8fdeca6212a27";
+      sha256 = "396373ad618f35be40c79f1e67ba67f1e72dbb2ee250459f610cc1ad2b7bd2c4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/pt-BR/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/pt-BR/thunderbird-78.12.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "aa4fbe2a656d937559c8556549f0cc2d9f8fa0c75ad1ede55c9e8877a63538cd";
+      sha256 = "0e62406a68fc33d7c77b10c2ae427c508ee491e33041be114b03c4eb630e8003";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/pt-PT/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/pt-PT/thunderbird-78.12.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "63a2c44c1ec1486574c8addf920e8561f792d01fb8179239fb268e5277e68782";
+      sha256 = "ba8e89a5a15fe69660758a83e3801800d1a15ab051d8ee581dd1b97b6a67ddd0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/rm/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/rm/thunderbird-78.12.0.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "8610c130d68a8d5f38ea179b13bdd17ab349cca8647470b4e2987937676f3c5e";
+      sha256 = "ac9705e6c64093d375db018116f66792eadef36fa32919bc467a0d08ed20fadc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ro/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/ro/thunderbird-78.12.0.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "d809cc26b134f707579e78e624f654b569d33d2282391943eeabfd494388f4f9";
+      sha256 = "4fdcb748d23044effd6fe4e94c525381e2dce3941c1829625c84eab795dc4797";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ru/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/ru/thunderbird-78.12.0.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "1d73258212131087d878fac0087f758cd11209aeeaff075b0352f8414769d3d7";
+      sha256 = "63f0d9be0baa91b3a65189ce9bee01d5984e04eba319484c69560cd10af750e9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/si/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/si/thunderbird-78.12.0.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "342ddb753fc1870321613e7668a741269bfff786f21ff22f4f8f84f5e1df9c2a";
+      sha256 = "db371618474a3812c641d9518f04035c353c9e184b91f713d9b70f09b693f6d0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/sk/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/sk/thunderbird-78.12.0.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "241cae2dbe7130a3df8d64e99fce375c0966df0cf4dbd6cbddfb069f736c3450";
+      sha256 = "6b5370c99076c0955e3b3fb58be9649656fd12a32126a4bf2d54d51e9147c7c5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/sl/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/sl/thunderbird-78.12.0.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "d09d44f1fd9e90e71e67334eed2df3eacdbc2509782e625e25aea3b993b1f28a";
+      sha256 = "5c5ef16ae617f18f4ad4774bda932d8858c35d6ef6e61a5bd1c730564193bedb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/sq/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/sq/thunderbird-78.12.0.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "afa21cf461d53c2a3e781e45b7802a0b5ffcb0ca4c4452865bdbf2bceeb13776";
+      sha256 = "e8462127bcfdfec2b651b11d569918e7ffff37c7ab0b556c10434273e59b43d9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/sr/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/sr/thunderbird-78.12.0.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "15b3faf5cef87e1101629410cdb169f81da94b5e1b0902d02b161ef67df15e8f";
+      sha256 = "9fe5e0091ebb9d3b0d07a6cc6dcb167b7608b0acc7ef5a5e24604e8d007001f5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/sv-SE/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/sv-SE/thunderbird-78.12.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "b42f3e8aefc4ebfc718ace6eda4d9416752dbec346f1a212fa637edfe08277dc";
+      sha256 = "1b6d4b29e53b933418ba25b8284d62d218076b1dde09006e0508a060190b81ca";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/th/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/th/thunderbird-78.12.0.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "0972ee48e0f8f0e6f81831a5c8b3d832c7af05477a3f824afb252c1f32d6843a";
+      sha256 = "68a90653d02c8b9f022b52693884f5bce8d60bb89c5099784347dd9c9e578c87";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/tr/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/tr/thunderbird-78.12.0.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "5dccdb0c97511aab0926caf679dced22609fb0e702b87078ac9379c94b3aed37";
+      sha256 = "9776f2eceb7bfc15292d621d874a7fa3f092223752b81b65623a3294044022d0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/uk/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/uk/thunderbird-78.12.0.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "526e1cdadbf15a0aee1b31607f39710f90fdd6ea23623c74fbc87928b0b2056c";
+      sha256 = "9c3dde23f775176780ff24d89d46659b293b22cee45df9a2dcf1bf3f8257c19c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/uz/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/uz/thunderbird-78.12.0.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "46454f21518cdeee20dcd0ed3f57a45cf8ab3a240d55cf2df36aed253307fb99";
+      sha256 = "b2d9d4b3e43fe3af5c602c4b429d4fb29461ace04498cf14b0f75fba7ea0c667";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/vi/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/vi/thunderbird-78.12.0.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "d624ec4f25277ae1b4b463e0c8381371562cf4185aab3ed67b9463b3dadde5dd";
+      sha256 = "c2c7a721d82ad59022020cad3dd152271a83207fbd0f61b91d3c464aed16bcaf";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/zh-CN/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/zh-CN/thunderbird-78.12.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "3699eefc2f941a4b32305a934a02bb94b5213c4584bfeb816859de471e2d2f08";
+      sha256 = "9e26860c8d78d13fffcc9eb418fb4d34a7da07b5604f8d01eddc10471e57dd70";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/zh-TW/thunderbird-78.11.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.12.0/linux-i686/zh-TW/thunderbird-78.12.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "9d6878ab69fcf266f1b226100a5b26d78d8d604f741827ae8f62fca665adf557";
+      sha256 = "403ab2f3262ce3e79d2261ca2afd8ddca98c116086dda620bbe54c45d2111632";
     }
     ];
 }
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird/default.nix b/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird/default.nix
index e042f39fd9c0..55d8b0df9e21 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird/default.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird/default.nix
@@ -50,6 +50,7 @@
 , unzip
 , which
 , writeScript
+, xdg-utils
 , xidel
 , xorg
 , yasm
@@ -73,13 +74,13 @@ assert waylandSupport -> gtk3Support == true;
 
 stdenv.mkDerivation rec {
   pname = "thunderbird";
-  version = "78.11.0";
+  version = "78.12.0";
 
   src = fetchurl {
     url =
       "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
     sha512 =
-      "1m12kx830pfzvby8j9i5nb9c5v71vlg4wr0qrjgg3pw5ml9j5x7myrqyfd49l2qppm3xjn08srvmf45avnwq0lrys4sb83iwsd46sf6";
+      "8a9275f6a454b16215e9440d8b68926e56221dbb416f77ea0cd0a42853bdd26f35514e792564879c387271bd43d8ee966577f133f8ae7781f43e8bec9ab78696";
   };
 
   nativeBuildInputs = [
@@ -312,6 +313,7 @@ stdenv.mkDerivation rec {
       --set MOZ_LEGACY_PROFILES 1
       --set MOZ_ALLOW_DOWNGRADE 1
       --prefix PATH : "${lib.getBin gnupg}/bin"
+      --prefix PATH : "${lib.getBin xdg-utils}/bin"
       --prefix LD_LIBRARY_PATH : "${lib.getLib gpgme}/lib"
     )
   '';
diff --git a/nixpkgs/pkgs/applications/networking/mullvad-vpn/default.nix b/nixpkgs/pkgs/applications/networking/mullvad-vpn/default.nix
index 33030e0c7eec..2fa486b83a91 100644
--- a/nixpkgs/pkgs/applications/networking/mullvad-vpn/default.nix
+++ b/nixpkgs/pkgs/applications/networking/mullvad-vpn/default.nix
@@ -42,11 +42,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "mullvad-vpn";
-  version = "2021.3";
+  version = "2021.4";
 
   src = fetchurl {
     url = "https://github.com/mullvad/mullvadvpn-app/releases/download/${version}/MullvadVPN-${version}_amd64.deb";
-    sha256 = "sha256-f7ZCDZ/RN+Z0Szmnx8mbzhKZiRPjqXTsgClfWViFYzo=";
+    sha256 = "sha256-JnHG4qD6nH2l7RCYHmb7Uszn0mrMsFtMHQ3cKpXcq00=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/networking/nextcloud-client/default.nix b/nixpkgs/pkgs/applications/networking/nextcloud-client/default.nix
index 8635b882fc95..cba8dd820b4a 100644
--- a/nixpkgs/pkgs/applications/networking/nextcloud-client/default.nix
+++ b/nixpkgs/pkgs/applications/networking/nextcloud-client/default.nix
@@ -21,13 +21,13 @@
 
 mkDerivation rec {
   pname = "nextcloud-client";
-  version = "3.2.3";
+  version = "3.2.4";
 
   src = fetchFromGitHub {
     owner = "nextcloud";
     repo = "desktop";
     rev = "v${version}";
-    sha256 = "sha256-NE0P6bG/msoP29c/1r/fTC5vDcqgkQuqfRK+IDftMqY=";
+    sha256 = "sha256-+APRR3Qj8jdDG2wc4hXFF40aTeoLGAXlsCsB4zKDI3Q=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/applications/networking/nym/default.nix b/nixpkgs/pkgs/applications/networking/nym/default.nix
index b7bffcd694e1..43fee635f454 100644
--- a/nixpkgs/pkgs/applications/networking/nym/default.nix
+++ b/nixpkgs/pkgs/applications/networking/nym/default.nix
@@ -10,26 +10,33 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "nym";
-  version = "0.10.0";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = "nymtech";
     repo = "nym";
     rev = "v${version}";
-    sha256 = "sha256-7x+B+6T0cnEOjXevA5n1k/SY1Q2tcu0bbZ9gIGoljw0=";
+    sha256 = "sha256-bZXbteryXkOxft63zUMWdpBgbDSvrBHQY3f70/+mBtI=";
   };
 
-  cargoSha256 = "0a7yja0ihjc66fqlshlaxpnpcpdy7h7gbv6120w2cr605qdnqvkx";
+  cargoSha256 = "0xwa114fs4h6y2a3nrl2dp0rv0k336xy9y330g9yix4g34qmrynq";
 
   nativeBuildInputs = [ pkg-config ];
 
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security libiconv ];
 
-  patches = [ ./ignore-networking-tests.patch ];
   checkType = "debug";
 
   passthru.updateScript = ./update.sh;
 
+  checkFlags = [
+    "--skip commands::upgrade::upgrade_tests"
+    "--skip allowed_hosts::tests::creating_a_new_host_store"
+    "--skip allowed_hosts::tests::getting_the_domain_root"
+    "--skip allowed_hosts::tests::requests_to_allowed_hosts"
+    "--skip allowed_hosts::tests::requests_to_unknown_hosts"
+  ];
+
   meta = with lib; {
     description = "A mixnet providing IP-level privacy";
     longDescription = ''
diff --git a/nixpkgs/pkgs/applications/networking/nym/ignore-networking-tests.patch b/nixpkgs/pkgs/applications/networking/nym/ignore-networking-tests.patch
deleted file mode 100644
index e971557e7ce0..000000000000
--- a/nixpkgs/pkgs/applications/networking/nym/ignore-networking-tests.patch
+++ /dev/null
@@ -1,123 +0,0 @@
-diff --git a/service-providers/network-requester/src/allowed_hosts.rs b/service-providers/network-requester/src/allowed_hosts.rs
-index 3026b4ee..fd156682 100644
---- a/service-providers/network-requester/src/allowed_hosts.rs
-+++ b/service-providers/network-requester/src/allowed_hosts.rs
-@@ -306,6 +306,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn leaves_a_com_alone() {
-             let filter = setup();
-             assert_eq!(
-@@ -315,6 +316,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn trims_subdomains_from_com() {
-             let filter = setup();
-             assert_eq!(
-@@ -324,6 +326,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn works_for_non_com_roots() {
-             let filter = setup();
-             assert_eq!(
-@@ -333,6 +336,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn works_for_non_com_roots_with_subdomains() {
-             let filter = setup();
-             assert_eq!(
-@@ -342,12 +346,14 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn returns_none_on_garbage() {
-             let filter = setup();
-             assert_eq!(None, filter.get_domain_root("::/&&%@"));
-         }
- 
-         #[test]
-+        #[ignore]
-         fn returns_none_on_nonsense_domains() {
-             let filter = setup();
-             assert_eq!(None, filter.get_domain_root("flappappa"));
-@@ -368,6 +374,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn are_not_allowed() {
-             let host = "unknown.com";
-             let mut filter = setup();
-@@ -375,6 +382,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn get_appended_once_to_the_unknown_hosts_list() {
-             let host = "unknown.com";
-             let mut filter = setup();
-@@ -405,6 +413,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn are_allowed() {
-             let host = "nymtech.net";
- 
-@@ -413,6 +422,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn are_allowed_for_subdomains() {
-             let host = "foomp.nymtech.net";
- 
-@@ -421,6 +431,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn are_not_appended_to_file() {
-             let mut filter = setup(&["nymtech.net"]);
- 
-@@ -436,6 +447,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn are_allowed_for_ipv4_addresses() {
-             let address_good = "1.1.1.1";
-             let address_good_port = "1.1.1.1:1234";
-@@ -448,6 +460,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn are_allowed_for_ipv6_addresses() {
-             let ip_v6_full = "2001:0db8:85a3:0000:0000:8a2e:0370:7334";
-             let ip_v6_full_rendered = "2001:0db8:85a3::8a2e:0370:7334";
-@@ -477,6 +490,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn are_allowed_for_ipv4_address_ranges() {
-             let range1 = "127.0.0.1/32";
-             let range2 = "1.2.3.4/24";
-@@ -495,6 +509,7 @@ mod tests {
-         }
- 
-         #[test]
-+        #[ignore]
-         fn are_allowed_for_ipv6_address_ranges() {
-             let range = "2620:0:2d0:200::7/32";
- 
diff --git a/nixpkgs/pkgs/applications/networking/remote/citrix-workspace/sources.nix b/nixpkgs/pkgs/applications/networking/remote/citrix-workspace/sources.nix
index 1256f47041aa..3fadac3f2912 100644
--- a/nixpkgs/pkgs/applications/networking/remote/citrix-workspace/sources.nix
+++ b/nixpkgs/pkgs/applications/networking/remote/citrix-workspace/sources.nix
@@ -89,6 +89,17 @@ let
       x86suffix = "38";
       homepage  = "https://www.citrix.com/downloads/workspace-app/linux/workspace-app-for-linux-latest.html";
     };
+
+    "21.06.0" = {
+      major     = "21";
+      minor     = "6";
+      patch     = "0";
+      x64hash   = "f3f98c60b0aaac31eb44dc98f22ee7ae7df229c960d5d29785eb5e9554f85f68";
+      x86hash   = "c2d9652ad9488a9ff171e62df8455ebe6890bcfade1cc289893ee35322d9d812";
+      x64suffix = "28";
+      x86suffix = "28";
+      homepage  = "https://www.citrix.com/downloads/workspace-app/linux/workspace-app-for-linux-latest.html";
+    };
   };
 
   # Retain attribute-names for abandoned versions of Citrix workspace to
diff --git a/nixpkgs/pkgs/applications/networking/remote/putty/default.nix b/nixpkgs/pkgs/applications/networking/remote/putty/default.nix
index e7544258acf1..aab30c24e207 100644
--- a/nixpkgs/pkgs/applications/networking/remote/putty/default.nix
+++ b/nixpkgs/pkgs/applications/networking/remote/putty/default.nix
@@ -3,7 +3,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.74";
+  version = "0.75";
   pname = "putty";
 
   src = fetchurl {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
       "https://the.earth.li/~sgtatham/putty/${version}/${pname}-${version}.tar.gz"
       "ftp://ftp.wayne.edu/putty/putty-website-mirror/${version}/${pname}-${version}.tar.gz"
     ];
-    sha256 = "0zc43g8ycyf712cdrja4k8ih5s3agw1k0nq0jkifdn8xwn4d7mfx";
+    sha256 = "1xgrr1fbirw79zafspg2b6crzfmlfw910y79md4r7gnxgq1kn5yk";
   };
 
   # glib-2.62 deprecations
diff --git a/nixpkgs/pkgs/applications/networking/remote/remmina/default.nix b/nixpkgs/pkgs/applications/networking/remote/remmina/default.nix
index e2f1cf2c8a2e..f61a00f89ada 100644
--- a/nixpkgs/pkgs/applications/networking/remote/remmina/default.nix
+++ b/nixpkgs/pkgs/applications/networking/remote/remmina/default.nix
@@ -13,13 +13,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "remmina";
-  version = "1.4.13";
+  version = "1.4.20";
 
   src = fetchFromGitLab {
     owner  = "Remmina";
     repo   = "Remmina";
     rev    = "v${version}";
-    sha256 = "sha256-R+RfczAnt5R0YmXt5SmH8gOuWOH0LZ/70pOMDAXJgsE=";
+    sha256 = "sha256-m3DUaoOD8COxMwCVBTipzCAz3mqIdunEbVPjyjAl9So=";
   };
 
   nativeBuildInputs = [ cmake ninja pkg-config wrapGAppsHook ];
diff --git a/nixpkgs/pkgs/applications/networking/remote/wayvnc/default.nix b/nixpkgs/pkgs/applications/networking/remote/wayvnc/default.nix
index 3e2231c10e82..f5641c762ecb 100644
--- a/nixpkgs/pkgs/applications/networking/remote/wayvnc/default.nix
+++ b/nixpkgs/pkgs/applications/networking/remote/wayvnc/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, meson, pkg-config, ninja, scdoc
+{ lib, stdenv, fetchFromGitHub, meson, pkg-config, ninja, scdoc, wayland-scanner
 , pixman, libxkbcommon, wayland, neatvnc, libdrm, libX11, aml, pam
 }:
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "0q48fgh6gf3jicy4bk3kq18h9lhqfq9qz32ri6j9ffvbb8mcw64s";
   };
 
-  nativeBuildInputs = [ meson pkg-config ninja scdoc wayland ];
+  nativeBuildInputs = [ meson pkg-config ninja scdoc wayland-scanner ];
   buildInputs = [ pixman libxkbcommon wayland neatvnc libdrm libX11 aml pam ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/networking/rofi-vpn/default.nix b/nixpkgs/pkgs/applications/networking/rofi-vpn/default.nix
new file mode 100644
index 000000000000..8ff83db294ff
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/rofi-vpn/default.nix
@@ -0,0 +1,40 @@
+{ stdenv
+, lib
+, fetchFromGitLab
+, makeWrapper
+, networkmanager
+, rofi-unwrapped
+}:
+
+stdenv.mkDerivation rec {
+  pname = "rofi-vpn";
+  version = "0.2.0";
+
+  src = fetchFromGitLab {
+    owner = "DamienCassou";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "04jcfb2jy8yyrk4mg68krwh3zb5qcyj1aq1bwk96fhybrq9k2hhp";
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    install -D --target-directory=$out/bin/ ./rofi-vpn
+
+    wrapProgram $out/bin/rofi-vpn \
+      --prefix PATH ":" ${lib.makeBinPath [ rofi-unwrapped networkmanager ]}
+
+    runHook postInstall
+  '';
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  meta = with lib; {
+    description = "Rofi-based interface to enable VPN connections with NetworkManager";
+    homepage = "https://gitlab.com/DamienCassou/rofi-vpn";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ DamienCassou ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/sniffers/wireshark/default.nix b/nixpkgs/pkgs/applications/networking/sniffers/wireshark/default.nix
index 4fe5272bc078..d9bc78bb2fe1 100644
--- a/nixpkgs/pkgs/applications/networking/sniffers/wireshark/default.nix
+++ b/nixpkgs/pkgs/applications/networking/sniffers/wireshark/default.nix
@@ -10,7 +10,7 @@ assert withQt  -> qt5  != null;
 with lib;
 
 let
-  version = "3.4.6";
+  version = "3.4.7";
   variant = if withQt then "qt" else "cli";
 
 in stdenv.mkDerivation {
@@ -20,7 +20,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://www.wireshark.org/download/src/all-versions/wireshark-${version}.tar.xz";
-    sha256 = "0a26kcj3n1a2kw1f3fc6s1x3rw3f3bj2cq6rp7k0kc4ciwh7i9hj";
+    sha256 = "17d00kl0s010wg2dfhy7sdbr2qm54lsi317fmbcvjz4rxx8ywk3c";
   };
 
   cmakeFlags = [
diff --git a/nixpkgs/pkgs/applications/networking/sync/acd_cli/default.nix b/nixpkgs/pkgs/applications/networking/sync/acd_cli/default.nix
index f630cb4071a4..95970a7b8709 100644
--- a/nixpkgs/pkgs/applications/networking/sync/acd_cli/default.nix
+++ b/nixpkgs/pkgs/applications/networking/sync/acd_cli/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitHub, buildPythonApplication, fuse
-, appdirs, colorama, python-dateutil, requests, requests_toolbelt
+, appdirs, colorama, python-dateutil, requests, requests-toolbelt
 , fusepy, sqlalchemy, setuptools }:
 
 buildPythonApplication rec {
@@ -16,7 +16,7 @@ buildPythonApplication rec {
   };
 
   propagatedBuildInputs = [ appdirs colorama python-dateutil fusepy requests
-                            requests_toolbelt setuptools sqlalchemy ];
+                            requests-toolbelt setuptools sqlalchemy ];
 
   makeWrapperArgs = [ "--prefix LIBFUSE_PATH : ${fuse}/lib/libfuse.so" ];
 
diff --git a/nixpkgs/pkgs/applications/networking/sync/rclone/default.nix b/nixpkgs/pkgs/applications/networking/sync/rclone/default.nix
index 0a74d19dfdb0..4b1a0bed048f 100644
--- a/nixpkgs/pkgs/applications/networking/sync/rclone/default.nix
+++ b/nixpkgs/pkgs/applications/networking/sync/rclone/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "rclone";
-  version = "1.55.1";
+  version = "1.56.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "1fyi12qz2igcf9rqsp9gmcgfnmgy4g04s2b03b95ml6klbf73cns";
+    sha256 = "03fqwsbpwb8vmgxg6knkp8f4xlvgg88n2c7inwjg8x91c7c77i0b";
   };
 
-  vendorSha256 = "199z3j62xw9h8yviyv4jfls29y2ri9511hcyp5ix8ahgk6ypz8vw";
+  vendorSha256 = "1gryisn63f6ss889s162ncvlsaznwgvgxdwk2pn5c5zw8dkmjdmi";
 
   subPackages = [ "." ];
 
diff --git a/nixpkgs/pkgs/applications/networking/syncthing/default.nix b/nixpkgs/pkgs/applications/networking/syncthing/default.nix
index 4b983faaf0b3..9db0abd0cb01 100644
--- a/nixpkgs/pkgs/applications/networking/syncthing/default.nix
+++ b/nixpkgs/pkgs/applications/networking/syncthing/default.nix
@@ -4,16 +4,16 @@ let
   common = { stname, target, postInstall ? "" }:
     buildGoModule rec {
       pname = stname;
-      version = "1.17.0";
+      version = "1.18.0";
 
       src = fetchFromGitHub {
         owner  = "syncthing";
         repo   = "syncthing";
         rev    = "v${version}";
-        sha256 = "1bm2xj5ypn63wxxpdix9b4hbam3s2z08jx2rk5adzd5yg499sxx0";
+        sha256 = "0hrdlc1dxbxvqxylk0i2f110c6bfp9azsnzqzmjj2b29xxbrmwca";
       };
 
-      vendorSha256 = "1jvd7d095wvf94y2di48pvqv9hiw3bj859q5yx9v6lglkwdgz6nw";
+      vendorSha256 = "1qqpxm4s1s2yp1zmi4m25y1a6r7kxc5rmvfsg50jmqsfnwligpz6";
 
       doCheck = false;
 
diff --git a/nixpkgs/pkgs/applications/networking/termius/default.nix b/nixpkgs/pkgs/applications/networking/termius/default.nix
index b1c9adfd9c11..fec775603939 100644
--- a/nixpkgs/pkgs/applications/networking/termius/default.nix
+++ b/nixpkgs/pkgs/applications/networking/termius/default.nix
@@ -12,11 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "termius";
-  version = "7.1.0";
+  version = "7.16.0";
 
   src = fetchurl {
+    # find the latest version by
+    # curl https://deb.termius.com/dists/squeeze/main/binary-amd64/Packages
     url = "https://deb.termius.com/pool/main/t/termius-app/termius-app_${version}_amd64.deb";
-    sha256 = "801579b931ca0ad5340085df8863042336e2b609dd1cd6771260c873f3d2bb73";
+    sha256 = "013nli61bk4x4hkhr6gcpzm1y8ycmqk3vr7q0w2dn2bfdwjg559v";
   };
 
   desktopItem = makeDesktopItem {
@@ -41,6 +43,8 @@ stdenv.mkDerivation rec {
   unpackPhase = "dpkg-deb -x $src .";
 
   installPhase = ''
+    runHook preInstall
+
     mkdir -p "$out/bin"
     cp -R "opt" "$out"
     cp -R "usr/share" "$out/share"
@@ -48,6 +52,8 @@ stdenv.mkDerivation rec {
     # Desktop file
     mkdir -p "$out/share/applications"
     cp "${desktopItem}/share/applications/"* "$out/share/applications"
+
+    runHook postInstall
   '';
 
   runtimeDependencies = [ (lib.getLib udev) ];
@@ -58,7 +64,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    broken = true;
     description = "A cross-platform SSH client with cloud data sync and more";
     homepage = "https://termius.com/";
     downloadPage = "https://termius.com/linux/";
diff --git a/nixpkgs/pkgs/applications/office/abiword/default.nix b/nixpkgs/pkgs/applications/office/abiword/default.nix
index e32502749dc3..0554713feb89 100644
--- a/nixpkgs/pkgs/applications/office/abiword/default.nix
+++ b/nixpkgs/pkgs/applications/office/abiword/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     # default and this patch can be removed.
     # https://github.com/NixOS/nixpkgs/issues/38506
     (fetchurl {
-      url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/enchant-2.1.patch?h=packages/abiword";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/d3ff951d3c7249927e7113b3de1653031db24596/abiword/trunk/enchant-2.1.patch";
       sha256 = "444dc2aadea3c80310a509b690097541573f6d2652c573d04da66a0f385fcfb2";
     })
   ];
diff --git a/nixpkgs/pkgs/applications/office/paperless/default.nix b/nixpkgs/pkgs/applications/office/paperless/default.nix
index 68032ebe8497..74bdacd95845 100644
--- a/nixpkgs/pkgs/applications/office/paperless/default.nix
+++ b/nixpkgs/pkgs/applications/office/paperless/default.nix
@@ -148,7 +148,7 @@ let
     pytest
     pytest-django
     pytest-env
-    pytest_xdist
+    pytest-xdist
   ];
 
   pyocrWithUserTesseract = pyPkgs:
diff --git a/nixpkgs/pkgs/applications/office/qownnotes/default.nix b/nixpkgs/pkgs/applications/office/qownnotes/default.nix
index 71717c010ddc..4f3fde81e980 100644
--- a/nixpkgs/pkgs/applications/office/qownnotes/default.nix
+++ b/nixpkgs/pkgs/applications/office/qownnotes/default.nix
@@ -3,13 +3,13 @@
 
 mkDerivation rec {
   pname = "qownnotes";
-  version = "21.5.2";
+  version = "21.7.4";
 
   src = fetchurl {
     url = "https://download.tuxfamily.org/${pname}/src/${pname}-${version}.tar.xz";
     # Fetch the checksum of current version with curl:
     # curl https://download.tuxfamily.org/qownnotes/src/qownnotes-<version>.tar.xz.sha256
-    sha256 = "cf68dc78e641ca66403621cef4002ddd09463ead2eb060812d8124d6749ba03b";
+    sha256 = "3957dc623b419582ef7ccc5cb04b8f97bed4e96e8ecc2e99bef9dca7ce255b8e";
   };
 
   nativeBuildInputs = [ qmake qttools ];
diff --git a/nixpkgs/pkgs/applications/office/timedoctor/default.nix b/nixpkgs/pkgs/applications/office/timedoctor/default.nix
index e6d3186578a4..4b97f7b3dcd9 100644
--- a/nixpkgs/pkgs/applications/office/timedoctor/default.nix
+++ b/nixpkgs/pkgs/applications/office/timedoctor/default.nix
@@ -36,9 +36,9 @@ appimageTools.wrapType2 {
     git
     glib
     glibc
-    gnome.gdk_pixbuf
-    gnome.gtk
-    gnome.gtk.dev
+    gdk-pixbuf
+    gtk3
+    gtk3.dev
     gnome.zenity
     gnome2.GConf
     gnumake
@@ -48,7 +48,7 @@ appimageTools.wrapType2 {
     gtk3.dev
     gtk3-x11
     gtk3-x11.dev
-    kdialog
+    plasma5Packages.kdialog
     libappindicator-gtk2.out
     libexif
     (libjpeg.override { enableJpeg8 = true; }).out
@@ -70,12 +70,12 @@ appimageTools.wrapType2 {
     sqlite.dev
     udev
     unzip
-    utillinux
+    util-linux
     watch
     wget
     which
     wrapGAppsHook
-    xdg_utils
+    xdg-utils
     xorg.libX11
     xorg.libXau
     xorg.libXaw
diff --git a/nixpkgs/pkgs/applications/office/todoman/default.nix b/nixpkgs/pkgs/applications/office/todoman/default.nix
index 5894c6c3e141..fc9f70094da1 100644
--- a/nixpkgs/pkgs/applications/office/todoman/default.nix
+++ b/nixpkgs/pkgs/applications/office/todoman/default.nix
@@ -44,8 +44,8 @@ buildPythonApplication rec {
     freezegun
     hypothesis
     pytest
-    pytestrunner
-    pytestcov
+    pytest-runner
+    pytest-cov
     glibcLocales
   ];
 
diff --git a/nixpkgs/pkgs/applications/office/watson/default.nix b/nixpkgs/pkgs/applications/office/watson/default.nix
index b212ae05a9d2..74e06d4311ce 100644
--- a/nixpkgs/pkgs/applications/office/watson/default.nix
+++ b/nixpkgs/pkgs/applications/office/watson/default.nix
@@ -2,8 +2,23 @@
 
 with pythonPackages;
 
-buildPythonApplication rec {
+let
+  # Watson is currently not compatible with Click 8. See the following
+  # upstream issues / MRs:
+  #
+  # https://github.com/TailorDev/Watson/issues/430
+  # https://github.com/TailorDev/Watson/pull/432
+  #
+  # Workaround the issue by providing click 7 explicitly.
+  click7 = pythonPackages.callPackage ../../../development/python-modules/click/7.nix {};
+  click7-didyoumean = click-didyoumean.override {
+    click = click7;
+  };
+in buildPythonApplication rec {
   pname = "watson";
+
+  # When you update Watson, please check whether the Click 7
+  # workaround above can go away.
   version = "2.0.1";
 
   src = fetchFromGitHub {
@@ -19,7 +34,7 @@ buildPythonApplication rec {
   '';
 
   checkInputs = [ pytestCheckHook pytest-mock mock pytest-datafiles ];
-  propagatedBuildInputs = [ arrow click click-didyoumean requests ];
+  propagatedBuildInputs = [ arrow click7 click7-didyoumean requests ];
   nativeBuildInputs = [ installShellFiles ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/science/astronomy/xplanet/default.nix b/nixpkgs/pkgs/applications/science/astronomy/xplanet/default.nix
index 82331a9496d4..8c0cb2be32b9 100644
--- a/nixpkgs/pkgs/applications/science/astronomy/xplanet/default.nix
+++ b/nixpkgs/pkgs/applications/science/astronomy/xplanet/default.nix
@@ -16,12 +16,12 @@ stdenv.mkDerivation rec {
   patches = [
     (fetchpatch {
       name = "giflib6.patch";
-      url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/giflib6.patch?h=packages/xplanet&id=ce6f25eb369dc011161613894f01fd0a6ae85a09";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-community/ce6f25eb369dc011161613894f01fd0a6ae85a09/trunk/giflib6.patch";
       sha256 = "173l0xkqq0v2bpaff7hhwc7y2aw5cclqw8988k1nalhyfbrjb8bl";
     })
     (fetchpatch {
       name = "xplanet-c++11.patch";
-      url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/xplanet-c++11.patch?h=packages/xplanet&id=ce6f25eb369dc011161613894f01fd0a6ae85a09";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-community/ce6f25eb369dc011161613894f01fd0a6ae85a09/trunk/xplanet-c++11.patch";
       sha256 = "0vldai78ixw49bxch774pps6pq4sp0p33qvkvxywcz7p8kzpg8q2";
     })
   ];
diff --git a/nixpkgs/pkgs/applications/science/biology/bcftools/default.nix b/nixpkgs/pkgs/applications/science/biology/bcftools/default.nix
index 46d39c1a7ba3..d0196c0e25a5 100644
--- a/nixpkgs/pkgs/applications/science/biology/bcftools/default.nix
+++ b/nixpkgs/pkgs/applications/science/biology/bcftools/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bcftools";
-  version = "1.11";
+  version = "1.13";
 
   src = fetchurl {
     url = "https://github.com/samtools/bcftools/releases/download/${version}/${pname}-${version}.tar.bz2";
-    sha256 = "0r508mp15pqzf8r1269kb4v5naw9zsvbwd3cz8s1yj7carsf9viw";
+    sha256 = "sha256-E7+h2ipe3aj6URlqR6C0r7P+8XUWRR5PDnhHfz3TC5A=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/science/biology/macse/default.nix b/nixpkgs/pkgs/applications/science/biology/macse/default.nix
index c78e142dcc6b..66f4a1671d1c 100644
--- a/nixpkgs/pkgs/applications/science/biology/macse/default.nix
+++ b/nixpkgs/pkgs/applications/science/biology/macse/default.nix
@@ -11,8 +11,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ makeWrapper ];
 
+  dontUnpack = true;
   dontBuild = true;
-  unpackPhase = ":";
 
   installPhase = ''
     runHook preInstall
diff --git a/nixpkgs/pkgs/applications/science/chemistry/dkh/default.nix b/nixpkgs/pkgs/applications/science/chemistry/dkh/default.nix
new file mode 100644
index 000000000000..a0bed24336a9
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/chemistry/dkh/default.nix
@@ -0,0 +1,32 @@
+{ lib, stdenv, gfortran, fetchFromGitHub, cmake } :
+
+stdenv.mkDerivation rec {
+  pname = "dkh";
+  version = "1.2";
+
+  src = fetchFromGitHub  {
+    owner = "psi4";
+    repo = pname;
+    rev = "v${version}";
+    sha256= "1wb4qmb9f8rnrwnnw1gdhzx1fmhy628bxfrg56khxy3j5ljxkhck";
+  };
+
+  nativeBuildInputs = [
+    gfortran
+    cmake
+  ];
+
+  cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
+
+  hardeningDisable = [
+    "format"
+  ];
+
+  meta = with lib; {
+    description = "Arbitrary-order scalar-relativistic Douglas-Kroll-Hess module";
+    license = licenses.lgpl3Only;
+    homepage = "https://github.com/psi4/dkh";
+    platforms = platforms.unix;
+    maintainers = [ maintainers.sheepforce ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/science/chemistry/octopus/default.nix b/nixpkgs/pkgs/applications/science/chemistry/octopus/default.nix
index 74ed1873efed..1927950c4fc4 100644
--- a/nixpkgs/pkgs/applications/science/chemistry/octopus/default.nix
+++ b/nixpkgs/pkgs/applications/science/chemistry/octopus/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitLab, symlinkJoin, gfortran, perl, procps
+{ lib, stdenv, fetchFromGitLab, gfortran, perl, procps
 , libyaml, libxc, fftw, blas, lapack, gsl, netcdf, arpack, autoreconfHook
 , python3
 }:
@@ -7,19 +7,24 @@ assert (!blas.isILP64) && (!lapack.isILP64);
 
 stdenv.mkDerivation rec {
   pname = "octopus";
-  version = "10.3";
+  version = "10.5";
 
   src = fetchFromGitLab {
     owner = "octopus-code";
     repo = "octopus";
     rev = version;
-    sha256 = "1axr3j53mi30gm3f645ga5jkhxbc7rbx432w2k2lgg6g9dv3fcs4";
+    sha256 = "1bgdkmsp6pwq3b6nxxkimrdmz71wqr8qi25gdzwpcv9wmcf1q27v";
   };
 
-  nativeBuildInputs = [ perl procps autoreconfHook ];
+  nativeBuildInputs = [
+    perl
+    procps
+    autoreconfHook
+    gfortran
+  ];
+
   buildInputs = [
     libyaml
-    gfortran
     libxc
     blas
     lapack
diff --git a/nixpkgs/pkgs/applications/science/electronics/diylc/default.nix b/nixpkgs/pkgs/applications/science/electronics/diylc/default.nix
index dac6713a495c..96a2c9a0489b 100644
--- a/nixpkgs/pkgs/applications/science/electronics/diylc/default.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/diylc/default.nix
@@ -2,11 +2,11 @@
 
 let
   pname = "diylc";
-  version = "4.17.0";
+  version = "4.18.0";
   files = {
     app = fetchurl {
       url = "https://github.com/bancika/diy-layout-creator/releases/download/v${version}/diylc-${version}.zip";
-      sha256 = "0cysqkrddhbs7rprm8xm21c286mz4apw66fxakhzlg50kjn0nwjv";
+      sha256 = "09fpp3dn086clgnjz5yj4fh5bnjvj6mvxkx9n3zamcwszjmxr40d";
     };
     icon16 = fetchurl {
       url = "https://raw.githubusercontent.com/bancika/diy-layout-creator/v${version}/diylc/diylc-core/src/org/diylc/core/images/icon_small.png";
@@ -41,8 +41,8 @@ stdenv.mkDerivation rec {
   installPhase = ''
     runHook preInstall
 
-    install -d $out/share/diylc
-    ${unzip}/bin/unzip -UU ${files.app} -d $out/share/diylc
+    mkdir -p $out/share/diylc
+    unzip -UU ${files.app} -d $out/share/diylc
     rm $out/share/diylc/diylc.exe
     rm $out/share/diylc/run.sh
 
@@ -51,10 +51,10 @@ stdenv.mkDerivation rec {
     install -Dm644 ${files.icon32} $out/share/icons/hicolor/32x32/apps/diylc_icon.png
     install -Dm644 ${files.icon48} $out/share/icons/hicolor/48x48/apps/diylc_icon.png
 
-    install -d $out/share/applications
+    mkdir -p $out/share/applications
     ln -s ${launcher}/share/applications/* $out/share/applications/
 
-    install -d $out/bin
+    mkdir -p $out/bin
     cat <<EOF > $out/bin/diylc
     #!${bash}/bin/sh
     cd $out/share/diylc
diff --git a/nixpkgs/pkgs/applications/science/electronics/kicad/base.nix b/nixpkgs/pkgs/applications/science/electronics/kicad/base.nix
index 9848eb58399d..596083c27098 100644
--- a/nixpkgs/pkgs/applications/science/electronics/kicad/base.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/kicad/base.nix
@@ -62,6 +62,7 @@ assert lib.assertMsg (!(stable && (sanitizeAddress || sanitizeThreads)))
   "Only kicad-unstable(-small) supports address/thread sanitation";
 assert lib.assertMsg (!(sanitizeAddress && sanitizeThreads))
   "'sanitizeAddress' and 'sanitizeThreads' are mutually exclusive, use one.";
+
 let
   inherit (lib) optional optionals;
 in
@@ -81,14 +82,16 @@ stdenv.mkDerivation rec {
 
   makeFlags = optionals (debug) [ "CFLAGS+=-Og" "CFLAGS+=-ggdb" ];
 
-  cmakeFlags = optionals (withScripting) [
+  cmakeFlags = optionals (stable && withScripting) [
     "-DKICAD_SCRIPTING=ON"
     "-DKICAD_SCRIPTING_MODULES=ON"
     "-DKICAD_SCRIPTING_PYTHON3=ON"
     "-DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON"
   ]
-  ++ optional (!withScripting)
+  ++ optionals (!withScripting) [
     "-DKICAD_SCRIPTING=OFF"
+    "-DKICAD_SCRIPTING_WXPYTHON=OFF"
+  ]
   ++ optional (withNgspice) "-DKICAD_SPICE=ON"
   ++ optional (!withOCE) "-DKICAD_USE_OCE=OFF"
   ++ optional (!withOCC) "-DKICAD_USE_OCC=OFF"
@@ -152,7 +155,10 @@ stdenv.mkDerivation rec {
     openssl
     boost
   ]
-  ++ optionals (withScripting) [ swig python wxPython ]
+  # unstable requires swig and python
+  # wxPython still optional
+  ++ optionals (withScripting || (!stable)) [ swig python ]
+  ++ optional (withScripting) wxPython
   ++ optional (withNgspice) libngspice
   ++ optional (withOCE) opencascade
   ++ optional (withOCC) opencascade-occt
diff --git a/nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix b/nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix
index c30c074a5de1..ae403d3f7332 100644
--- a/nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix
@@ -27,23 +27,23 @@
   };
   "kicad-unstable" = {
     kicadVersion = {
-      version =			"2021-05-16";
+      version =			"2021-07-12";
       src = {
-        rev =			"c33b2cfa8d16072b9d1bce558e443c4afa889d06";
-        sha256 =		"1fvbxjpf880ikjqjhzj8wlxj0845gzrj1yv35rk7akbg4vl9ph72";
+        rev =			"76a6177eb7fc2efe8b5fd522355e70c44a33b150";
+        sha256 =		"1a94z29if73cnxjx75vkgasm339dasbrjwbg2zk1c35pfygnwrj5";
       };
     };
     libVersion = {
-      version =			"2021-05-16";
+      version =			"2021-07-12";
       libSources = {
         i18n.rev =		"e89d9a89bec59199c1ade56ee2556591412ab7b0";
         i18n.sha256 =		"04zaqyhj3qr4ymyd3k5vjpcna64j8klpsygcgjcv29s3rdi8glfl";
-        symbols.rev =		"32de73ea01347a005790119eb4102c550815685c";
-        symbols.sha256 =	"0gj10v06rkxlxngc40d1sfmlcagy5p7jfxid0lch4w0wxfjmks7z";
+        symbols.rev =		"a6f64c12c9cdea4cda25cdd2c92708e7eb461d46";
+        symbols.sha256 =	"0j6ng3ysqlxcggjyq3bsgqzg6j50if74q2dpyrdh5pckfqvvmv20";
         templates.rev =		"073d1941c428242a563dcb5301ff5c7479fe9c71";
         templates.sha256 =	"14p06m2zvlzzz2w74y83f2zml7mgv5dhy2nyfkpblanxawrzxv1x";
-        footprints.rev =	"8fa36dfa3423d8777472e3475c1c2b0b2069624f";
-        footprints.sha256 =	"138xfkr0prxw2djkwc1m4mlp9km99v12sivbqhm1jkq5yxngdbin";
+        footprints.rev =	"1bacc7562198e2a2985df7f2fbcd7620b4fd0d46";
+        footprints.sha256 =	"1h17q0xpl4k4klg3mafzsbl88wzrg73xjsh8llyni2jzs531545a";
         packages3d.rev =	"d8b7e8c56d535f4d7e46373bf24c754a8403da1f";
         packages3d.sha256 =	"0dh8ixg0w43wzj5h3164dz6l1vl4llwxhi3qcdgj1lgvrs28aywd";
       };
diff --git a/nixpkgs/pkgs/applications/science/geometry/tetgen/default.nix b/nixpkgs/pkgs/applications/science/geometry/tetgen/default.nix
index 75eaa089ecfb..1e3c96ae8c62 100644
--- a/nixpkgs/pkgs/applications/science/geometry/tetgen/default.nix
+++ b/nixpkgs/pkgs/applications/science/geometry/tetgen/default.nix
@@ -16,7 +16,6 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    inherit version;
     description = "Quality Tetrahedral Mesh Generator and 3D Delaunay Triangulator";
     homepage = "http://tetgen.org/";
     license = lib.licenses.agpl3Plus;
diff --git a/nixpkgs/pkgs/applications/science/logic/boolector/default.nix b/nixpkgs/pkgs/applications/science/logic/boolector/default.nix
index 6916379bdea6..7d90dca46f59 100644
--- a/nixpkgs/pkgs/applications/science/logic/boolector/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/boolector/default.nix
@@ -1,26 +1,18 @@
-{ stdenv, fetchFromGitHub, fetchpatch, lib, python3
+{ stdenv, fetchFromGitHub, lib, python3
 , cmake, lingeling, btor2tools, gtest, gmp
 }:
 
 stdenv.mkDerivation rec {
   pname = "boolector";
-  version = "3.2.1";
+  version = "3.2.2";
 
   src = fetchFromGitHub {
     owner  = "boolector";
     repo   = "boolector";
-    rev    = "refs/tags/${version}";
-    sha256 = "0jkmaw678njqgkflzj9g374yk1mci8yqvsxkrqzlifn6bwhwb7ci";
+    rev    = version;
+    sha256 = "1smcy6yp8wvnw2brgnv5bf40v87k4v4fbdbrhi7987vja632k50z";
   };
 
-  # excludes development artifacts from install, will be included in next release
-  patches = [
-    (fetchpatch {
-      url = "https://github.com/Boolector/boolector/commit/4d240436e34e65096671099766344dd9126145b1.patch";
-      sha256 = "1girsbvlhkkl1hldl2gsjynwc3m92jskn798qhx0ydg6whrfgcgw";
-    })
-  ];
-
   postPatch = ''
     sed s@REPLACEME@file://${gtest.src}@ ${./cmake-gtest.patch} | patch -p1
   '';
diff --git a/nixpkgs/pkgs/applications/science/logic/cedille/default.nix b/nixpkgs/pkgs/applications/science/logic/cedille/default.nix
index 2b099e7664a6..611bbbe979f8 100644
--- a/nixpkgs/pkgs/applications/science/logic/cedille/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/cedille/default.nix
@@ -52,5 +52,10 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     maintainers = with maintainers; [ marsam mpickering ];
     platforms = platforms.unix;
+
+    # Broken due to Agda update.  See
+    # https://github.com/NixOS/nixpkgs/pull/129606#issuecomment-881107449.
+    broken = true;
+    hydraPlatforms = platforms.none;
   };
 }
diff --git a/nixpkgs/pkgs/applications/science/logic/coq/default.nix b/nixpkgs/pkgs/applications/science/logic/coq/default.nix
index b5c66289c9d3..cd19b9a94424 100644
--- a/nixpkgs/pkgs/applications/science/logic/coq/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/coq/default.nix
@@ -162,6 +162,7 @@ self = stdenv.mkDerivation {
   prefixKey = "-prefix ";
 
   buildFlags = [ "revision" "coq" "coqide" "bin/votour" ];
+  enableParallelBuilding = true;
 
   createFindlibDestdir = true;
 
diff --git a/nixpkgs/pkgs/applications/science/logic/gappa/default.nix b/nixpkgs/pkgs/applications/science/logic/gappa/default.nix
index c7c5c9c6fa70..be1d6f253bc5 100644
--- a/nixpkgs/pkgs/applications/science/logic/gappa/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/gappa/default.nix
@@ -4,8 +4,8 @@ stdenv.mkDerivation {
   name = "gappa-1.4.0";
 
   src = fetchurl {
-    url = "https://gforge.inria.fr/frs/download.php/file/38044/gappa-1.4.0.tar.gz";
-    sha256 = "sha256-/IDIf5XnFBqVllgH5GtQ6C8g7vxheaVcXNoZiXlsPGA=";
+    url = "https://gforge.inria.fr/frs/download.php/file/38436/gappa-1.4.0.tar.gz";
+    sha256 = "12x42z901pr05ldmparqdi8sq9s7fxbavhzk2dbq3l6hy247dwbb";
   };
 
   buildInputs = [ gmp mpfr boost.dev ];
diff --git a/nixpkgs/pkgs/applications/science/logic/isabelle/default.nix b/nixpkgs/pkgs/applications/science/logic/isabelle/default.nix
index 600ae83ff912..f9337f690255 100644
--- a/nixpkgs/pkgs/applications/science/logic/isabelle/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/isabelle/default.nix
@@ -1,20 +1,20 @@
-{ lib, stdenv, fetchurl, perl, perlPackages, makeWrapper, nettools, java, polyml, z3, rlwrap }:
+{ lib, stdenv, fetchurl, perl, perlPackages, makeWrapper, nettools, java, polyml, z3, rlwrap, makeDesktopItem }:
 # nettools needed for hostname
 
 stdenv.mkDerivation rec {
   pname = "isabelle";
-  version = "2020";
+  version = "2021";
 
   dirname = "Isabelle${version}";
 
   src = if stdenv.isDarwin
     then fetchurl {
       url = "https://isabelle.in.tum.de/website-${dirname}/dist/${dirname}_macos.tar.gz";
-      sha256 = "1sfr5filsaqj93g5y4p9n8g5652dhr4whj25x4lifdxr2pp560xx";
+      sha256 = "1c2qm2ksmpyxyccyyn4lyj2wqj5m74nz2i0c5abrd1hj45zcnh1m";
     }
     else fetchurl {
       url = "https://isabelle.in.tum.de/website-${dirname}/dist/${dirname}_linux.tar.gz";
-      sha256 = "1bibabhlsvf6qsjjkgxcpq3cvl1z7r8yfcgqbhbvsiv69n3gyfk3";
+      sha256 = "1isgc9w4q95638dcag9gxz1kmf97pkin3jz1dm2lhd64b2k12y2x";
     };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -48,6 +48,8 @@ stdenv.mkDerivation rec {
       ISABELLE_JDK_HOME=${java}
     EOF
 
+    sed -i -e 's/naproche_server : bool = true/naproche_server : bool = false/' contrib/naproche-*/etc/options
+
     echo ISABELLE_LINE_EDITOR=${rlwrap}/bin/rlwrap >>etc/settings
 
     for comp in contrib/jdk* contrib/polyml-* contrib/z3-*; do
@@ -66,9 +68,26 @@ stdenv.mkDerivation rec {
     cd $out/$dirname
     bin/isabelle install $out/bin
 
+    # icon
+    mkdir -p "$out/share/icons/hicolor/isabelle/apps"
+    cp "$out/Isabelle${version}/lib/icons/isabelle.xpm" "$out/share/icons/hicolor/isabelle/apps/"
+
+    # desktop item
+    mkdir -p "$out/share"
+    cp -r "${desktopItem}/share/applications" "$out/share/applications"
+
     wrapProgram $out/$dirname/src/HOL/Tools/ATP/scripts/remote_atp --set PERL5LIB ${perlPackages.makeFullPerlPath [ perlPackages.LWP ]}
   '';
 
+  desktopItem = makeDesktopItem {
+    name = "isabelle";
+    exec = "isabelle jedit";
+    icon = "isabelle";
+    desktopName = "Isabelle";
+    comment = meta.description;
+    categories = "Education;Science;Math;";
+  };
+
   meta = with lib; {
     description = "A generic proof assistant";
 
diff --git a/nixpkgs/pkgs/applications/science/logic/leo3/binary.nix b/nixpkgs/pkgs/applications/science/logic/leo3/binary.nix
index dda18c49b720..6196f6443702 100644
--- a/nixpkgs/pkgs/applications/science/logic/leo3/binary.nix
+++ b/nixpkgs/pkgs/applications/science/logic/leo3/binary.nix
@@ -3,27 +3,26 @@ stdenv.mkDerivation rec {
   pname = "leo3";
   version = "1.2";
 
-  jar = fetchurl {
+  src = fetchurl {
     url = "https://github.com/leoprover/Leo-III/releases/download/v${version}/leo3.jar";
     sha256 = "1lgwxbr1rnk72rnvc8raq5i1q71ckhn998pwd9xk6zf27wlzijk7";
   };
 
-  phases=["installPhase" "fixupPhase"];
+  dontUnpack = true;
 
   installPhase = ''
     mkdir -p "$out"/{bin,lib/java/leo3}
-    cp "${jar}" "$out/lib/java/leo3/leo3.jar"
+    cp "${src}" "$out/lib/java/leo3/leo3.jar"
     echo "#!${runtimeShell}" > "$out/bin/leo3"
     echo "'${openjdk}/bin/java' -jar '$out/lib/java/leo3/leo3.jar' \"\$@\""  >> "$out/bin/leo3"
     chmod a+x "$out/bin/leo3"
   '';
 
-  meta = {
-    inherit version;
+  meta = with lib; {
     description = "An automated theorem prover for classical higher-order logic with choice";
-    license = lib.licenses.bsd3;
-    maintainers = [lib.maintainers.raskin];
-    platforms = lib.platforms.linux;
+    license = licenses.bsd3;
+    maintainers = [maintainers.raskin];
+    platforms = platforms.linux;
     homepage = "https://page.mi.fu-berlin.de/lex/leo3/";
   };
 }
diff --git a/nixpkgs/pkgs/applications/science/logic/logisim/default.nix b/nixpkgs/pkgs/applications/science/logic/logisim/default.nix
index 1ca22cf769c6..9b3f42dd4ba8 100644
--- a/nixpkgs/pkgs/applications/science/logic/logisim/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/logisim/default.nix
@@ -1,29 +1,28 @@
 { lib, stdenv, fetchurl, jre, makeWrapper }:
 
-let version = "2.7.1"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "logisim";
-  inherit version;
+  version = "2.7.1";
 
   src = fetchurl {
-    url = "mirror://sourceforge/project/circuit/2.7.x/${version}/logisim-generic-${version}.jar";
+    url = "mirror://sourceforge/project/circuit/${lib.versions.majorMinor version}.x/${version}/logisim-generic-${version}.jar";
     sha256 = "1hkvc9zc7qmvjbl9579p84hw3n8wl3275246xlzj136i5b0phain";
   };
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
-  nativeBuildInputs = [makeWrapper];
+  nativeBuildInputs = [ makeWrapper ];
 
   installPhase = ''
-    mkdir -pv $out/bin
+    mkdir -p $out/bin
     makeWrapper ${jre}/bin/java $out/bin/logisim --add-flags "-jar $src"
   '';
 
-  meta = {
+  meta = with lib; {
     homepage = "http://ozark.hendrix.edu/~burch/logisim";
     description = "Educational tool for designing and simulating digital logic circuits";
-    license = lib.licenses.gpl2Plus;
-    platforms = lib.platforms.unix;
+    maintainers = with maintainers; [ ];
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/applications/science/logic/potassco/clingcon.nix b/nixpkgs/pkgs/applications/science/logic/potassco/clingcon.nix
index 4d64a813e621..0f3218b76736 100644
--- a/nixpkgs/pkgs/applications/science/logic/potassco/clingcon.nix
+++ b/nixpkgs/pkgs/applications/science/logic/potassco/clingcon.nix
@@ -32,7 +32,6 @@ stdenv.mkDerivation rec {
   ];
 
   meta = {
-    inherit version;
     description = "Extension of clingo to handle constraints over integers";
     license = lib.licenses.gpl3; # for now GPL3, next version MIT!
     platforms = lib.platforms.unix;
diff --git a/nixpkgs/pkgs/applications/science/logic/potassco/clingo.nix b/nixpkgs/pkgs/applications/science/logic/potassco/clingo.nix
index 091b098fa3f2..2e907a2d3a36 100644
--- a/nixpkgs/pkgs/applications/science/logic/potassco/clingo.nix
+++ b/nixpkgs/pkgs/applications/science/logic/potassco/clingo.nix
@@ -14,7 +14,6 @@ stdenv.mkDerivation rec {
   cmakeFlags = [ "-DCLINGO_BUILD_WITH_PYTHON=OFF" ];
 
   meta = {
-    inherit version;
     description = "ASP system to ground and solve logic programs";
     license = lib.licenses.mit;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/applications/science/logic/satallax/default.nix b/nixpkgs/pkgs/applications/science/logic/satallax/default.nix
index 8c88f47327e9..9bfad1fa010e 100644
--- a/nixpkgs/pkgs/applications/science/logic/satallax/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/satallax/default.nix
@@ -60,7 +60,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     description = "Automated theorem prover for higher-order logic";
     license = lib.licenses.mit ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/applications/science/logic/verifast/default.nix b/nixpkgs/pkgs/applications/science/logic/verifast/default.nix
index 2d625a1c1b29..e426f7b80989 100644
--- a/nixpkgs/pkgs/applications/science/logic/verifast/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/verifast/default.nix
@@ -27,8 +27,8 @@ stdenv.mkDerivation rec {
     sha256 = "169kshjq4cf4i9v92azv0xaflrnik5686w7fwcgdhd6qkbzflzl6";
   };
 
+  dontConfigure = true;
   dontStrip = true;
-  phases = "unpackPhase installPhase";
   installPhase = ''
     mkdir -p $out/bin
     cp -R bin $out/libexec
diff --git a/nixpkgs/pkgs/applications/science/logic/workcraft/default.nix b/nixpkgs/pkgs/applications/science/logic/workcraft/default.nix
index 7fb73419c072..63a946365604 100644
--- a/nixpkgs/pkgs/applications/science/logic/workcraft/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/workcraft/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ makeWrapper ];
 
-  phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
+  dontConfigure = true;
 
   installPhase = ''
   mkdir -p $out/share
@@ -28,6 +28,5 @@ stdenv.mkDerivation rec {
     platforms = lib.platforms.linux;
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ timor ];
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/applications/science/logic/z3/tptp.nix b/nixpkgs/pkgs/applications/science/logic/z3/tptp.nix
index bb912742b7c5..23136ddf7a70 100644
--- a/nixpkgs/pkgs/applications/science/logic/z3/tptp.nix
+++ b/nixpkgs/pkgs/applications/science/logic/z3/tptp.nix
@@ -23,7 +23,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     inherit (z3.meta) license homepage platforms;
     description = "TPTP wrapper for Z3 prover";
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/applications/science/math/engauge-digitizer/default.nix b/nixpkgs/pkgs/applications/science/math/engauge-digitizer/default.nix
new file mode 100644
index 000000000000..4c26dc2887c8
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/math/engauge-digitizer/default.nix
@@ -0,0 +1,60 @@
+{ lib, stdenv, fetchFromGitHub, fftw, libjpeg, log4cpp, openjpeg
+, libpng12, poppler, qtbase, qt5, qmake, wrapQtAppsHook
+}:
+
+stdenv.mkDerivation rec {
+  pname = "engauge-digitizer";
+  version = "12.2.2";
+
+  src = fetchFromGitHub {
+    owner = "markummitchell";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-Wj9o3wWbtHsEi6LFH4xDpwVR9BwcWc472jJ/QFDQZvY=";
+  };
+
+  nativeBuildInputs = [ qmake wrapQtAppsHook ];
+
+  buildInputs = [
+    qtbase
+    qt5.qttools
+    poppler
+    libpng12
+    openjpeg
+    openjpeg.dev
+    log4cpp
+    libjpeg
+    fftw
+  ];
+
+  qmakeFlags = [
+    "CONFIG+=jpeg2000"
+    "CONFIG+=pdf"
+    "CONFIG+=log4cpp_null"
+  ];
+
+  POPPLER_INCLUDE = "${poppler.dev}/include/poppler/qt5";
+
+  POPPLER_LIB = "${poppler}/lib";
+
+  OPENJPEG_INCLUDE = "${openjpeg.dev}/include/${openjpeg.pname}-${lib.versions.majorMinor openjpeg.version}";
+
+  OPENJPEG_LIB = "${openjpeg}/lib";
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin
+    cp bin/engauge $out/bin/
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Engauge Digitizer is a tool for recovering graph data from an image file";
+    homepage = "https://markummitchell.github.io/engauge-digitizer";
+    license = with licenses; [ gpl2Only ];
+    platforms = platforms.linux;
+    maintainers = [ maintainers.sheepforce ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/science/math/getdp/default.nix b/nixpkgs/pkgs/applications/science/math/getdp/default.nix
index 39d9c866caef..5ea3550d08a4 100644
--- a/nixpkgs/pkgs/applications/science/math/getdp/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/getdp/default.nix
@@ -1,15 +1,19 @@
 { lib, stdenv, fetchurl, cmake, gfortran, blas, lapack, mpi, petsc, python3 }:
 
 stdenv.mkDerivation rec {
-  name = "getdp-${version}";
+  pname = "getdp";
   version = "3.3.0";
   src = fetchurl {
     url = "http://getdp.info/src/getdp-${version}-source.tgz";
     sha256 = "1pfviy2bw8z5y6c15czvlvyjjg9pvpgrj9fr54xfi2gmvs7zkgpf";
   };
 
-  nativeBuildInputs = [ cmake gfortran ];
-  buildInputs = [ blas lapack mpi petsc python3 ];
+  inherit (petsc) mpiSupport;
+  nativeBuildInputs = [ cmake python3 ];
+  buildInputs = [ gfortran blas lapack petsc ]
+    ++ lib.optional mpiSupport mpi
+  ;
+  cmakeFlags = lib.optional mpiSupport "-DENABLE_MPI=1";
 
   meta = with lib; {
     description = "A General Environment for the Treatment of Discrete Problems";
diff --git a/nixpkgs/pkgs/applications/science/math/gfan/default.nix b/nixpkgs/pkgs/applications/science/math/gfan/default.nix
index 1a2835932c66..11a42d1cfdf8 100644
--- a/nixpkgs/pkgs/applications/science/math/gfan/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/gfan/default.nix
@@ -21,7 +21,6 @@ stdenv.mkDerivation rec {
   buildInputs = [ gmp mpir cddlib ];
 
   meta = {
-    inherit version;
     description = "A software package for computing Gröbner fans and tropical varieties";
     license = lib.licenses.gpl2 ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/applications/science/math/mathematica/l10ns.nix b/nixpkgs/pkgs/applications/science/math/mathematica/l10ns.nix
index d9f6a0c74e82..7de63c287eaa 100644
--- a/nixpkgs/pkgs/applications/science/math/mathematica/l10ns.nix
+++ b/nixpkgs/pkgs/applications/science/math/mathematica/l10ns.nix
@@ -8,10 +8,10 @@ let allVersions = with lib; flip map
   # N.B. Versions in this list should be ordered from newest to oldest.
   [
     {
-      version = "12.3.0";
+      version = "12.3.1";
       lang = "en";
       language = "English";
-      sha256 = "045df045f6e796ded59f64eb2e0f1949ac88dcba1d5b6e05fb53ea0a4aed7215";
+      sha256 = "51b9cab12fd91b009ea7ad4968a2c8a59e94dc55d2e6cc1d712acd5ba2c4d509";
     }
     {
       version = "11.3.0";
diff --git a/nixpkgs/pkgs/applications/science/math/nauty/default.nix b/nixpkgs/pkgs/applications/science/math/nauty/default.nix
index 05a7d874d919..a941a6334508 100644
--- a/nixpkgs/pkgs/applications/science/math/nauty/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/nauty/default.nix
@@ -30,7 +30,6 @@ stdenv.mkDerivation rec {
   '';
   checkTarget = "checks";
   meta = with lib; {
-    inherit version;
     description = "Programs for computing automorphism groups of graphs and digraphs";
     license = licenses.asl20;
     maintainers = teams.sage.members;
diff --git a/nixpkgs/pkgs/applications/science/math/pcalc/default.nix b/nixpkgs/pkgs/applications/science/math/pcalc/default.nix
index 1ee45ca266a1..cbf07135dec2 100644
--- a/nixpkgs/pkgs/applications/science/math/pcalc/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/pcalc/default.nix
@@ -1,26 +1,26 @@
-{ lib, stdenv, fetchgit, bison, flex }:
-
-with lib;
+{ lib, stdenv, fetchFromGitHub, bison, flex }:
 
 stdenv.mkDerivation rec {
   pname = "pcalc";
-  version = "20141224";
+  version = "20181202";
 
-  src = fetchgit {
-    url = "git://git.code.sf.net/p/pcalc/code";
-    rev = "181d60d3c880da4344fef7138065943eb3b9255f";
-    sha256 = "1hd5bh20j5xzvv6qa0fmzmv0h8sf38r7zgi7y0b6nk17pjq33v90";
+  src = fetchFromGitHub {
+    owner = "vapier";
+    repo = "pcalc";
+    rev = "d93be9e19ecc0b2674cf00ec91cbb79d32ccb01d";
+    sha256 = "sha256-m4xdsEJGKxLgp/d5ipxQ+cKG3z7rlvpPL6hELnDu6Hk=";
   };
 
   makeFlags = [ "DESTDIR= BINDIR=$(out)/bin" ];
-  buildInputs = [ bison flex ];
+  nativeBuildInputs = [ bison flex ];
+
+  enableParallelBuilding = true;
 
-  meta = {
-    homepage = "http://pcalc.sourceforge.net/";
+  meta = with lib; {
+    homepage = "https://vapier.github.io/pcalc/";
     description = "Programmer's calculator";
     license = licenses.gpl2;
     maintainers = with lib.maintainers; [ ftrvxmtrx ];
     platforms = lib.platforms.linux;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/applications/science/math/polymake/default.nix b/nixpkgs/pkgs/applications/science/math/polymake/default.nix
index 552881c5f1ad..b1abb31c7650 100644
--- a/nixpkgs/pkgs/applications/science/math/polymake/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/polymake/default.nix
@@ -37,7 +37,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     description = "Software for research in polyhedral geometry";
     license = lib.licenses.gpl2 ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/applications/science/math/pynac/default.nix b/nixpkgs/pkgs/applications/science/math/pynac/default.nix
index 54e26cd2ee85..138c97d73be1 100644
--- a/nixpkgs/pkgs/applications/science/math/pynac/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/pynac/default.nix
@@ -1,6 +1,5 @@
 { lib, stdenv
 , fetchFromGitHub
-, fetchpatch
 , autoreconfHook
 , pkg-config
 , flint
@@ -11,57 +10,16 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.27";
+  version = "0.7.29";
   pname = "pynac";
 
   src = fetchFromGitHub {
     owner = "pynac";
     repo = "pynac";
     rev = "pynac-${version}";
-    sha256 = "sha256-1HHCIeaNE2UsJNX92UlDGLJS8I4nC/8FnwX7Y4F9HpU=";
+    sha256 = "sha256-ocR7emXtKs+Xe2f6dh4xEDAacgiolY8mtlLnWnNBS8A=";
   };
 
-  patches = [
-    # the five patches below are included with sage 9.3. since pynac
-    # is a self-described "Sage Math support library", we include them
-    # here.
-
-    # https://trac.sagemath.org/ticket/30688
-    (fetchpatch {
-      name = "power_inf_loop.patch";
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/pynac/patches/power_inf_loop.patch?h=9.3";
-      sha256 = "sha256-VYeaJl8u2wl7FQ/6xnpZv1KpdNYEmJoPhuMrBADyTRs=";
-    })
-
-    # https://trac.sagemath.org/ticket/31479
-    (fetchpatch {
-      name = "disable_poly_mul_expand.patch";
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/pynac/patches/disable_poly_mul_expand.patch?h=9.3";
-      sha256 = "sha256-gRjoltU9Tzj7fjNyE25fY+iyDxERzSTOMigzxFpUqPo=";
-    })
-
-    # https://trac.sagemath.org/ticket/31530
-    (fetchpatch {
-      name = "too_much_sub.patch";
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/pynac/patches/too_much_sub.patch?h=9.3";
-      sha256 = "sha256-lw7xSQ/l+rzPu+ghWF4omYF0mKksGGPuuHJTktvbdis=";
-    })
-
-    # https://trac.sagemath.org/ticket/31554
-    (fetchpatch {
-      name = "handle_factor.patch";
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/pynac/patches/handle_factor.patch?h=9.3";
-      sha256 = "sha256-U1lb5qwBqZZgklfDMhBX4K5u8bz5x42O4w7hyNy2YVw=";
-    })
-
-    # https://trac.sagemath.org/ticket/31645
-    (fetchpatch {
-      name = "seriesbug.patch";
-      url = "https://git.sagemath.org/sage.git/plain/build/pkgs/pynac/patches/seriesbug.patch?h=9.3";
-      sha256 = "sha256-b3//oirN7JHDYqrvE+tDYcnKpSYQJ08yBzcNlII2Dts=";
-    })
-  ];
-
   buildInputs = [
     flint
     gmp
@@ -84,7 +42,7 @@ stdenv.mkDerivation rec {
       of the full GiNaC, and it is *only* meant to be used as a Python library.
     '';
     homepage    = "http://pynac.org";
-    license = licenses.gpl3;
+    license = licenses.gpl2Plus;
     maintainers = teams.sage.members;
     platforms   = platforms.unix;
   };
diff --git a/nixpkgs/pkgs/applications/science/math/ratpoints/default.nix b/nixpkgs/pkgs/applications/science/math/ratpoints/default.nix
index 14330b0f19b3..ec5d9ef366f8 100644
--- a/nixpkgs/pkgs/applications/science/math/ratpoints/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/ratpoints/default.nix
@@ -26,7 +26,6 @@ stdenv.mkDerivation rec {
   preInstall = ''mkdir -p "$out"/{bin,share,lib,include}'';
 
   meta = {
-    inherit version;
     description = "A program to find rational points on hyperelliptic curves";
     license = lib.licenses.gpl2Plus;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/applications/science/misc/golly/beta.nix b/nixpkgs/pkgs/applications/science/misc/golly/beta.nix
index 7741f7ba65bb..9846be8a43a8 100644
--- a/nixpkgs/pkgs/applications/science/misc/golly/beta.nix
+++ b/nixpkgs/pkgs/applications/science/misc/golly/beta.nix
@@ -41,7 +41,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     description = "Cellular automata simulation program";
     license = lib.licenses.gpl2;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/applications/science/misc/golly/default.nix b/nixpkgs/pkgs/applications/science/misc/golly/default.nix
index be61ec86b324..724a1008c1fb 100644
--- a/nixpkgs/pkgs/applications/science/misc/golly/default.nix
+++ b/nixpkgs/pkgs/applications/science/misc/golly/default.nix
@@ -29,7 +29,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     description = "Cellular automata simulation program";
     license = lib.licenses.gpl2;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/applications/science/misc/root/5.nix b/nixpkgs/pkgs/applications/science/misc/root/5.nix
index 75607fdda348..0da3014507a5 100644
--- a/nixpkgs/pkgs/applications/science/misc/root/5.nix
+++ b/nixpkgs/pkgs/applications/science/misc/root/5.nix
@@ -1,6 +1,27 @@
-{ lib, stdenv, fetchurl, fetchpatch, cmake, pcre, pkg-config, python2
-, libX11, libXpm, libXft, libXext, libGLU, libGL, zlib, libxml2, lz4, xz, gsl_1, xxHash
-, Cocoa, OpenGL, noSplash ? false }:
+{ lib
+, stdenv
+, fetchurl
+, fetchpatch
+, cmake
+, pcre
+, pkg-config
+, python2
+, libX11
+, libXpm
+, libXft
+, libXext
+, libGLU
+, libGL
+, zlib
+, libxml2
+, lz4
+, xz
+, gsl_1
+, xxHash
+, Cocoa
+, OpenGL
+, noSplash ? false
+}:
 
 stdenv.mkDerivation rec {
   pname = "root";
@@ -15,7 +36,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ pcre python2 zlib libxml2 lz4 xz gsl_1 xxHash ]
     ++ lib.optionals (!stdenv.isDarwin) [ libX11 libXpm libXft libXext libGLU libGL ]
     ++ lib.optionals (stdenv.isDarwin) [ Cocoa OpenGL ]
-    ;
+  ;
 
   patches = [
     ./sw_vers_root5.patch
diff --git a/nixpkgs/pkgs/applications/science/misc/root/default.nix b/nixpkgs/pkgs/applications/science/misc/root/default.nix
index a97be6ec76fd..8aa9006d5232 100644
--- a/nixpkgs/pkgs/applications/science/misc/root/default.nix
+++ b/nixpkgs/pkgs/applications/science/misc/root/default.nix
@@ -1,23 +1,73 @@
-{ stdenv, lib, fetchurl, makeWrapper, cmake, git, ftgl, gl2ps, glew, gsl
-, libX11, libXpm, libXft, libXext, libGLU, libGL, libxml2, lz4, xz, pcre, nlohmann_json
-, pkg-config, python, xxHash, zlib, zstd
-, libAfterImage, giflib, libjpeg, libtiff, libpng
-, Cocoa, CoreSymbolication, OpenGL, noSplash ? false }:
+{ stdenv
+, lib
+, fetchurl
+, makeWrapper
+, cmake
+, git
+, ftgl
+, gl2ps
+, glew
+, gsl
+, libX11
+, libXpm
+, libXft
+, libXext
+, libGLU
+, libGL
+, libxml2
+, lz4
+, xz
+, pcre
+, nlohmann_json
+, pkg-config
+, python
+, xxHash
+, zlib
+, zstd
+, libAfterImage
+, giflib
+, libjpeg
+, libtiff
+, libpng
+, Cocoa
+, CoreSymbolication
+, OpenGL
+, noSplash ? false
+}:
 
 stdenv.mkDerivation rec {
   pname = "root";
-  version = "6.24.00";
+  version = "6.24.02";
 
   src = fetchurl {
     url = "https://root.cern.ch/download/root_v${version}.source.tar.gz";
-    sha256 = "12crjzd7pzx5qpk2pb3z0rhmxlw5gsqaqzfl48qiq8c9l940b8wx";
+    sha256 = "sha256-BQfhCV4nnMxyQPZR0llmAkMlF5+oWhJZtpS1ZyOtfBw=";
   };
 
   nativeBuildInputs = [ makeWrapper cmake pkg-config git ];
-  buildInputs = [ ftgl gl2ps glew pcre zlib zstd libxml2 lz4 xz gsl xxHash libAfterImage giflib libjpeg libtiff libpng nlohmann_json python.pkgs.numpy ]
-    ++ lib.optionals (!stdenv.isDarwin) [ libX11 libXpm libXft libXext libGLU libGL ]
-    ++ lib.optionals (stdenv.isDarwin) [ Cocoa CoreSymbolication OpenGL ]
-    ;
+  buildInputs = [
+    ftgl
+    gl2ps
+    glew
+    pcre
+    zlib
+    zstd
+    libxml2
+    lz4
+    xz
+    gsl
+    xxHash
+    libAfterImage
+    giflib
+    libjpeg
+    libtiff
+    libpng
+    nlohmann_json
+    python.pkgs.numpy
+  ]
+  ++ lib.optionals (!stdenv.isDarwin) [ libX11 libXpm libXft libXext libGLU libGL ]
+  ++ lib.optionals (stdenv.isDarwin) [ Cocoa CoreSymbolication OpenGL ]
+  ;
 
   patches = [
     ./sw_vers.patch
diff --git a/nixpkgs/pkgs/applications/science/misc/simgrid/default.nix b/nixpkgs/pkgs/applications/science/misc/simgrid/default.nix
index 76937d19651b..23815442da7e 100644
--- a/nixpkgs/pkgs/applications/science/misc/simgrid/default.nix
+++ b/nixpkgs/pkgs/applications/science/misc/simgrid/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitLab, cmake, perl, python3, boost, valgrind
+{ lib, stdenv, fetchFromGitLab, fetchpatch, cmake, perl, python3, boost, valgrind
 # Optional requirements
 # Lua 5.3 needed and not available now
 #, luaSupport ? false, lua5
@@ -18,17 +18,26 @@ in
 
 stdenv.mkDerivation rec {
   pname = "simgrid";
-  version = "3.27";
+  version = "3.28";
 
   src = fetchFromGitLab {
     domain = "framagit.org";
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "13nwsyk030fhl3srhpc28j5s6594z0m38606f4ygc4qhv9wxw011";
+    sha256 = "0vylwgd4i89bvhbgfay0wq953324dwfmmr8jp9b4vvlc9m0017r9";
   };
 
-  nativeBuildInputs = [ cmake perl python3 boost valgrind ]
+  patches = [
+    (fetchpatch {
+      name = "fix-smpi-dirs-absolute.patch";
+      url = "https://framagit.org/simgrid/simgrid/-/commit/71f01e667577be1076646eb841e0a57bd5388545.patch";
+      sha256 = "0x3y324b6269687zfy43ilc48bwrs4nb7svh2mpg88lrz53rky15";
+    })
+  ];
+
+  propagatedBuildInputs = [ boost ];
+  nativeBuildInputs = [ cmake perl python3 valgrind ]
       ++ optionals fortranSupport [ gfortran ]
       ++ optionals buildJavaBindings [ openjdk ]
       ++ optionals buildDocumentation [ transfig ghostscript doxygen ]
@@ -90,6 +99,9 @@ stdenv.mkDerivation rec {
     cat <<EOW >CTestCustom.cmake
     SET(CTEST_CUSTOM_TESTS_IGNORE smpi-replay-multiple)
     EOW
+
+    # make sure tests are built in parallel (this can be long otherwise)
+    make tests -j $NIX_BUILD_CORES
   '';
 
   meta = {
diff --git a/nixpkgs/pkgs/applications/science/misc/snakemake/default.nix b/nixpkgs/pkgs/applications/science/misc/snakemake/default.nix
index 8919f85e44d9..419323cfa31f 100644
--- a/nixpkgs/pkgs/applications/science/misc/snakemake/default.nix
+++ b/nixpkgs/pkgs/applications/science/misc/snakemake/default.nix
@@ -2,20 +2,23 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "snakemake";
-  version = "6.5.0";
+  version = "6.6.1";
 
   propagatedBuildInputs = with python3Packages; [
     appdirs
-    ConfigArgParse
+    configargparse
     connection-pool
     datrie
     docutils
     filelock
     GitPython
+    jinja2
     jsonschema
     nbformat
+    networkx
     psutil
     pulp
+    pygraphviz
     pyyaml
     ratelimiter
     requests
@@ -28,7 +31,7 @@ python3Packages.buildPythonApplication rec {
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "b166ec74537e02553fcaf0ddcffc32dfdb9dcaa1260af297a56eded6a179b2ee";
+    sha256 = "91637a801342f3bc349c033b284fef7c0201b4e5e29d5650cb6c7f69096d4184";
   };
 
   doCheck = false; # Tests depend on Google Cloud credentials at ${HOME}/gcloud-service-key.json
diff --git a/nixpkgs/pkgs/applications/science/misc/toil/default.nix b/nixpkgs/pkgs/applications/science/misc/toil/default.nix
new file mode 100644
index 000000000000..a25fbe7565ce
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/misc/toil/default.nix
@@ -0,0 +1,39 @@
+{ lib, fetchFromGitHub, python3Packages }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "toil";
+  version = "5.4.0";
+
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    sha256 = "73c0648828bd3610c07b7648dd06d6ec27efefdb09473bf01d05d91eb899c9fd";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "docker = " "docker = 'docker' #" \
+      --replace "addict = " "addict = 'addict' #"
+  '';
+
+  propagatedBuildInputs = with python3Packages; [
+    addict
+    docker
+    pytz
+    pyyaml
+    enlighten
+    psutil
+    python-dateutil
+    dill
+  ];
+  checkInputs = with python3Packages; [ pytestCheckHook ];
+
+  pytestFlagsArray = [ "src/toil/test" ];
+  pythonImportsCheck = [ "toil" ];
+
+  meta = with lib; {
+    homepage = "https://toil.ucsc-cgl.org/";
+    license = with licenses; [ asl20 ];
+    description = "Workflow engine written in pure Python";
+    maintainers = with maintainers; [ veprbl ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/science/programming/fdr/default.nix b/nixpkgs/pkgs/applications/science/programming/fdr/default.nix
index 62e4c6876fd7..bc67c30aa61c 100644
--- a/nixpkgs/pkgs/applications/science/programming/fdr/default.nix
+++ b/nixpkgs/pkgs/applications/science/programming/fdr/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
     zlib
   ];
 
-  phases = [ "unpackPhase" "installPhase" ];
+  dontConfigure = true;
   installPhase = ''
     mkdir -p "$out"
 
diff --git a/nixpkgs/pkgs/applications/search/grepm/default.nix b/nixpkgs/pkgs/applications/search/grepm/default.nix
index 1225f036a498..7a3210459d1b 100644
--- a/nixpkgs/pkgs/applications/search/grepm/default.nix
+++ b/nixpkgs/pkgs/applications/search/grepm/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
     sha256 = "0ppprhfw06779hz1b10qvq62gsw73shccsav982dyi6xmqb6jqji";
   };
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   buildInputs = [ perlPackages.grepmail mutt ];
 
diff --git a/nixpkgs/pkgs/applications/system/glances/default.nix b/nixpkgs/pkgs/applications/system/glances/default.nix
index 0fc85cea05c1..e950fcfb1cda 100644
--- a/nixpkgs/pkgs/applications/system/glances/default.nix
+++ b/nixpkgs/pkgs/applications/system/glances/default.nix
@@ -1,5 +1,5 @@
 { stdenv, buildPythonApplication, fetchFromGitHub, isPyPy, lib
-, future, psutil, setuptools
+, defusedxml, future, psutil, setuptools
 # Optional dependencies:
 , bottle, pysnmp
 , hddtemp
@@ -9,14 +9,14 @@
 
 buildPythonApplication rec {
   pname = "glances";
-  version = "3.2.0";
+  version = "3.2.1";
   disabled = isPyPy;
 
   src = fetchFromGitHub {
     owner = "nicolargo";
     repo = "glances";
     rev = "v${version}";
-    sha256 = "126xpx8i85giy3hkhqh0qcln9i1qj5bfciaqh9486rkl54xm8zsr";
+    sha256 = "0m2cxmlyay2rr9hnc08s5q9xwdqy0nhzsl10by4f9ji0kiahnpl6";
   };
 
   # Some tests fail in the sandbox (they e.g. require access to /sys/class/power_supply):
@@ -37,6 +37,7 @@ buildPythonApplication rec {
 
   propagatedBuildInputs = [
     bottle
+    defusedxml
     future
     netifaces
     psutil
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/alacritty/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/alacritty/default.nix
index 60fb743f8591..e4c5eb752d73 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/alacritty/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/alacritty/default.nix
@@ -131,7 +131,7 @@ rustPlatform.buildRustPackage rec {
     description = "A cross-platform, GPU-accelerated terminal emulator";
     homepage = "https://github.com/alacritty/alacritty";
     license = licenses.asl20;
-    maintainers = with maintainers; [ Br1ght0ne mic92 cole-h ma27 ];
+    maintainers = with maintainers; [ Br1ght0ne mic92 ma27 ];
     platforms = platforms.unix;
     changelog = "https://github.com/alacritty/alacritty/blob/v${version}/CHANGELOG.md";
   };
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/coreterminal/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/coreterminal/default.nix
new file mode 100644
index 000000000000..e358fae0716f
--- /dev/null
+++ b/nixpkgs/pkgs/applications/terminal-emulators/coreterminal/default.nix
@@ -0,0 +1,42 @@
+{ mkDerivation
+, lib
+, fetchFromGitLab
+, cmake
+, ninja
+, qtbase
+, qtserialport
+, qtermwidget
+, libcprime
+}:
+
+mkDerivation rec {
+  pname = "coreterminal";
+  version = "4.2.0";
+
+  src = fetchFromGitLab {
+    owner = "cubocore/coreapps";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-YXs6VTem3AaK4n1DYwKP/jqNuf09Srn2THHyJJnArlc=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    ninja
+  ];
+
+  buildInputs = [
+    qtbase
+    qtserialport
+    qtermwidget
+    libcprime
+  ];
+
+  meta = with lib; {
+    description = "A terminal emulator from the C Suite";
+    homepage = "https://gitlab.com/cubocore/coreapps/coreterminal";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ dan4ik605743 ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/foot/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/foot/default.nix
index 4f8d6832eddd..f069338ae8a9 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/foot/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/foot/default.nix
@@ -15,6 +15,7 @@
 , scdoc
 , tllist
 , wayland-protocols
+, wayland-scanner
 , pkg-config
 , utf8proc
 , allowPgo ? true
@@ -26,7 +27,7 @@
 }:
 
 let
-  version = "1.8.1";
+  version = "1.8.2";
 
   # build stimuli file for PGO build and the script to generate it
   # independently of the foot's build, so we can cache the result
@@ -77,7 +78,7 @@ let
   }."${compilerName}";
 
   # ar with lto support
-  ar = {
+  ar = stdenv.cc.bintools.targetPrefix + {
     "clang" = "llvm-ar";
     "gcc" = "gcc-ar";
     "unknown" = "ar";
@@ -94,22 +95,27 @@ stdenv.mkDerivation rec {
 
   src = fetchzip {
     url = "https://codeberg.org/dnkl/${pname}/archive/${version}.tar.gz";
-    sha256 = "0yrz7n0wls8g8w7ja934icwxmng3sxh70x87qmzc9c9cb1wyd989";
+    sha256 = "1k0alz991cslls4926c5gq02pdq0vfw9jfpprh2a1vb59xgikv7h";
   };
 
+  depsBuildBuild = [
+    pkg-config
+  ];
+
   nativeBuildInputs = [
+    wayland-scanner
     meson
     ninja
     ncurses
     scdoc
-    tllist
-    wayland-protocols
     pkg-config
   ] ++ lib.optionals (compilerName == "clang") [
     stdenv.cc.cc.libllvm.out
   ];
 
   buildInputs = [
+    tllist
+    wayland-protocols
     fontconfig
     freetype
     pixman
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/terminator/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/terminator/default.nix
index 6ddeffe68eb8..e922a34423c0 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/terminator/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/terminator/default.nix
@@ -27,7 +27,7 @@ python3.pkgs.buildPythonApplication rec {
     intltool
     gobject-introspection
     wrapGAppsHook
-    python3.pkgs.pytestrunner
+    python3.pkgs.pytest-runner
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/delta/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/delta/default.nix
index 72a27cf06016..46d19f2814db 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/delta/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/delta/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "delta";
-  version = "0.8.2";
+  version = "0.8.3";
 
   src = fetchFromGitHub {
     owner = "dandavison";
     repo = pname;
     rev = version;
-    sha256 = "sha256-ztRwUf73ioygkgmE9t/EKJPerJJscJYG4YNeNdzXH1g=";
+    sha256 = "sha256-lwdsl3dzqrIL1JoBFmldwsCvNCWUcTlgeoEoCvmlTCQ=";
   };
 
-  cargoSha256 = "sha256-cCMHMGHfI0JyIL8+q2fyzamBGGHZx3mc2FpwTUa4S9Y=";
+  cargoSha256 = "sha256-7TvxkSJ3iWJnjD3Xe7WDXBNWIyl8U9XTCn9muUG1AmI=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/gh/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/gh/default.nix
index 16f87df678ca..a7ca5c4eaa6f 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/gh/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/gh/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gh";
-  version = "1.12.1";
+  version = "1.13.1";
 
   src = fetchFromGitHub {
     owner = "cli";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-P9fbkJSXRYZdVD1EKWWs0FKs8aQdPqHWESUqjsGgyPU=";
+    sha256 = "sha256-6ur1ZIJRghkZk5tLMJUmKn+XfjVGFE0MRSQ/Uz+Eans=";
   };
 
-  vendorSha256 = "sha256-ndsjmY/UCFyegm8yP7BopYMh5eZ8/fftWfxW4r5los0=";
+  vendorSha256 = "sha256-JJNyzMYAQT/pS1+eGYQsUpxDiwa6DP7JWhIBuTtnOiE=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-cola/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-cola/default.nix
index 707e0855d151..f0ff57b2cb0a 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-cola/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-cola/default.nix
@@ -5,13 +5,13 @@ let
 
 in buildPythonApplication rec {
   pname = "git-cola";
-  version = "3.9";
+  version = "3.10.1";
 
   src = fetchFromGitHub {
     owner = "git-cola";
     repo = "git-cola";
     rev = "v${version}";
-    sha256 = "11186pdgaw5p4iv10dqcnynf5pws2v9nhqqqca7z5b7m20fpfjl7";
+    sha256 = "120hds7v29v70qxz20ppxf2glmgbah16v7jyy9i6hb6cfqp68vr8";
   };
 
   buildInputs = [ git gettext ];
@@ -20,10 +20,8 @@ in buildPythonApplication rec {
 
   doCheck = false;
 
-  postFixup = ''
-    wrapQtApp $out/bin/git-cola
-    wrapQtApp $out/bin/git-dag
-
+  preFixup = ''
+    makeWrapperArgs+=("''${qtWrapperArgs[@]}")
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-machete/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-machete/default.nix
index 3dd241840c70..531d5a547e6e 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-machete/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-machete/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonApplication rec {
   pname = "git-machete";
-  version = "3.2.1";
+  version = "3.3.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1sw6b1jaddacfm4kvvhgxn743khmsi1c4b4f5mgvm3rabv0h473h";
+    sha256 = "0mq6hmb3wvj0ash27h4zyl46l3fikpf0mv3ng330lcy6v7bhy5b8";
   };
 
   nativeBuildInputs = [ installShellFiles pbr ];
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-sync/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-sync/default.nix
index add7bfc5526f..15d0fe9bc0fd 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-sync/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-sync/default.nix
@@ -1,15 +1,14 @@
-{ lib, stdenv, fetchFromGitHub, coreutils, gnugrep, gnused, makeWrapper, git
-}:
+{ lib, stdenv, fetchFromGitHub, coreutils, git, gnugrep, gnused, makeWrapper, inotify-tools }:
 
 stdenv.mkDerivation rec {
   pname = "git-sync";
-  version = "20151024";
+  version = "unstable-2021-07-14";
 
   src = fetchFromGitHub {
     owner = "simonthum";
     repo = "git-sync";
-    rev = "eb9adaf2b5fd65aac1e83d6544b9076aae6af5b7";
-    sha256 = "01if8y93wa0mwbkzkzx2v1vqh47zlz4k1dysl6yh5rmppd1psknz";
+    rev = "7d3d34bf3ee2483fba00948f5b97f964b849a590";
+    sha256 = "sha256-PuYREW5NBkYF1tlcLTbOI8570nvHn5ifN8OIInfNNxI=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -18,10 +17,11 @@ stdenv.mkDerivation rec {
 
   installPhase = ''
     mkdir -p $out/bin
-    cp -a git-sync $out/bin/git-sync
+    cp -a git-* $out/bin/
   '';
 
   wrapperPath = with lib; makeBinPath [
+    inotify-tools
     coreutils
     git
     gnugrep
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-vendor/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-vendor/default.nix
index c7884c2b52e7..ec4db1631b0f 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-vendor/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-vendor/default.nix
@@ -2,8 +2,8 @@
 }:
 
 let
-  version = "1.2.1";
-  sha256 = "sha256-sm5SmckaXVjF3odqzYrbC46E1nPzQ9cuNJnNSAa7RWY=";
+  version = "1.2.2";
+  sha256 = "sha256-PhxYiTMXg8qRqwbrZaw9UH7pdvXTEnrd09TiYPepzmk=";
 
 in stdenv.mkDerivation {
   pname = "git-vendor";
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/default.nix
index 075524340bf4..775c4dd09cde 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -337,8 +337,11 @@ stdenv.mkDerivation {
 
   stripDebugList = [ "lib" "libexec" "bin" "share/git/contrib/credential/libsecret" ];
 
-  passthru.tests = {
-    buildbot-integration = nixosTests.buildbot;
+  passthru = {
+    shellPath = "/bin/git-shell";
+    tests = {
+      buildbot-integration = nixosTests.buildbot;
+    };
   };
 
   meta = {
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/gitui/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/gitui/default.nix
index 3049012160df..4fc1bce44741 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/gitui/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/gitui/default.nix
@@ -1,16 +1,16 @@
 { lib, stdenv, rustPlatform, fetchFromGitHub, libiconv, perl, python3, Security, AppKit, openssl, xclip }:
 rustPlatform.buildRustPackage rec {
   pname = "gitui";
-  version = "0.16.1";
+  version = "0.16.2";
 
   src = fetchFromGitHub {
     owner = "extrawurst";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-8RPIPimDImLUR9oHVZZ7ZeKLtIhebv/d0kl4CQ5NFdU=";
+    sha256 = "sha256-FRPRkFGf6Z/+smK651wR6ETWrvvQ1AKalxXW6d6otIo=";
   };
 
-  cargoSha256 = "sha256-1IHbOjZV8Rc0el7J983B8pvnbt8+QtYiknZU/I85OnY=";
+  cargoSha256 = "sha256-3ubeZgB7XNKysy6s+cdg4GDj/Mn4Mdp9VupcbBRTRh4=";
 
   nativeBuildInputs = [ python3 perl ];
   buildInputs = [ openssl ]
diff --git a/nixpkgs/pkgs/applications/version-management/gitea/default.nix b/nixpkgs/pkgs/applications/version-management/gitea/default.nix
index 258e81acedfc..bd61d984c620 100644
--- a/nixpkgs/pkgs/applications/version-management/gitea/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/gitea/default.nix
@@ -16,12 +16,12 @@ with lib;
 
 buildGoPackage rec {
   pname = "gitea";
-  version = "1.14.4";
+  version = "1.14.5";
 
   # not fetching directly from the git repo, because that lacks several vendor files for the web UI
   src = fetchurl {
     url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
-    sha256 = "sha256-sl/Vml8QmwZEAd2PIYWQcP7s6NYeomGJQGKhRiddtoo=";
+    sha256 = "sha256-8nwLVpe/5IjXJqO179lN80B/3WGUL3LKM8OWdh/bYOE=";
   };
 
   unpackPhase = ''
diff --git a/nixpkgs/pkgs/applications/version-management/github-desktop/default.nix b/nixpkgs/pkgs/applications/version-management/github-desktop/default.nix
new file mode 100644
index 000000000000..650ec73619a6
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/github-desktop/default.nix
@@ -0,0 +1,73 @@
+{ stdenv
+, lib
+, fetchurl
+, autoPatchelfHook
+, wrapGAppsHook
+, gnome
+, libsecret
+, git
+, curl
+, nss
+, nspr
+, xorg
+, libdrm
+, alsa-lib
+, cups
+, mesa
+, systemd
+}:
+
+stdenv.mkDerivation rec {
+  pname = "github-desktop";
+  version = "2.9.0";
+
+  src = fetchurl {
+    url = "https://github.com/shiftkey/desktop/releases/download/release-${version}-linux4/GitHubDesktop-linux-${version}-linux4.deb";
+    sha256 = "sha256-kyzvvzSCfo6uaTA0Z1yqAUjr4A5p3OuIpaVQv64WW7M";
+  };
+
+  nativeBuildInputs = [
+    autoPatchelfHook
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    gnome.gnome-keyring
+    xorg.libXdamage
+    xorg.libX11
+    libsecret
+    git
+    curl
+    nss
+    nspr
+    libdrm
+    alsa-lib
+    cups
+    mesa
+  ];
+
+  unpackPhase = ''
+    mkdir -p $TMP/${pname} $out/{opt,bin}
+    cp $src $TMP/${pname}.deb
+    ar vx ${pname}.deb
+    tar --no-overwrite-dir -xvf data.tar.xz -C $TMP/${pname}/
+  '';
+
+  installPhase = ''
+    cp -R $TMP/${pname}/usr/share $out/
+    cp -R $TMP/${pname}/usr/lib/${pname}/* $out/opt/
+    ln -sf $out/opt/${pname} $out/bin/${pname}
+  '';
+
+  runtimeDependencies = [
+    (lib.getLib systemd)
+  ];
+
+  meta = with lib; {
+    description = "GUI for managing Git and GitHub.";
+    homepage = "https://desktop.github.com/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ dan4ik605743 ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/version-management/gitkraken/default.nix b/nixpkgs/pkgs/applications/version-management/gitkraken/default.nix
index c0cc9d5e2b11..3e10add49d48 100644
--- a/nixpkgs/pkgs/applications/version-management/gitkraken/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/gitkraken/default.nix
@@ -13,11 +13,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "gitkraken";
-  version = "7.6.1";
+  version = "7.7.0";
 
   src = fetchzip {
     url = "https://release.axocdn.com/linux/GitKraken-v${version}.tar.gz";
-    sha256 = "sha256-wpfTozXxanZkYtYQHY950PLsVO4lXLt5OOP/xDCrFEw=";
+    sha256 = "0zb94ipi777qkznxpgb7ah31mx9b63713k92vhxhz4glna59lvk3";
   };
 
   dontBuild = true;
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/data.json b/nixpkgs/pkgs/applications/version-management/gitlab/data.json
index bdc83b8e30b8..b214b663ae60 100644
--- a/nixpkgs/pkgs/applications/version-management/gitlab/data.json
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/data.json
@@ -1,13 +1,13 @@
 {
-  "version": "14.0.2",
-  "repo_hash": "1wnlkbjy7hm5lq6qc12dncmz321nhcnm8wvaz0ni1v5xpp3hv286",
+  "version": "14.0.5",
+  "repo_hash": "1rykrgzapqa3j2yqpd99fpyyrdp25h2xnx21gnjnkn58qljs4cgs",
   "owner": "gitlab-org",
   "repo": "gitlab",
-  "rev": "v14.0.2-ee",
+  "rev": "v14.0.5-ee",
   "passthru": {
-    "GITALY_SERVER_VERSION": "14.0.2",
+    "GITALY_SERVER_VERSION": "14.0.5",
     "GITLAB_PAGES_VERSION": "1.40.0",
     "GITLAB_SHELL_VERSION": "13.19.0",
-    "GITLAB_WORKHORSE_VERSION": "14.0.2"
+    "GITLAB_WORKHORSE_VERSION": "14.0.5"
   }
 }
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix
index 5aff7a34365b..ced652e68d96 100644
--- a/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix
@@ -21,14 +21,14 @@ let
       };
   };
 in buildGoModule rec {
-  version = "14.0.2";
+  version = "14.0.5";
   pname = "gitaly";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitaly";
     rev = "v${version}";
-    sha256 = "sha256-0mLGtvRHgMN3TtH/g4XLDubwZvtB0xr2U30fufj//KY=";
+    sha256 = "sha256-aZ+EDF9BOdsbE+Xsde259eRmQhnb6H5piLQsvzgVpGM=";
   };
 
   vendorSha256 = "sha256-U962bMmXNnenCYkSdk0Uy7Bz+b9JGU5rJHfblZoyC/I=";
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
index 94c14a739d38..e237c4fd480d 100644
--- a/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -5,7 +5,7 @@ in
 buildGoModule rec {
   pname = "gitlab-workhorse";
 
-  version = "14.0.2";
+  version = "14.0.5";
 
   src = fetchFromGitLab {
     owner = data.owner;
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
index 55839138c3af..62222b563963 100644
--- a/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
@@ -1667,4 +1667,4 @@ DEPENDENCIES
   yajl-ruby (~> 1.4.1)
 
 BUNDLED WITH
-   2.1.4
+   2.2.20
diff --git a/nixpkgs/pkgs/applications/version-management/mercurial/default.nix b/nixpkgs/pkgs/applications/version-management/mercurial/default.nix
index 3394d44a4be1..128b70c38e85 100644
--- a/nixpkgs/pkgs/applications/version-management/mercurial/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/mercurial/default.nix
@@ -90,7 +90,6 @@ let
     passthru.tests = {};
 
     meta = with lib; {
-      inherit version;
       description = "A fast, lightweight SCM system for very large distributed projects";
       homepage = "https://www.mercurial-scm.org";
       downloadPage = "https://www.mercurial-scm.org/release/";
diff --git a/nixpkgs/pkgs/applications/version-management/monotone-viz/default.nix b/nixpkgs/pkgs/applications/version-management/monotone-viz/default.nix
index cfde0721bafc..3c92a93851bf 100644
--- a/nixpkgs/pkgs/applications/version-management/monotone-viz/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/monotone-viz/default.nix
@@ -46,7 +46,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     description = "Monotone ancestry visualiser";
     license = lib.licenses.gpl2Plus ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/applications/version-management/nbstripout/default.nix b/nixpkgs/pkgs/applications/version-management/nbstripout/default.nix
index 3bea6d893341..5e556b40a890 100644
--- a/nixpkgs/pkgs/applications/version-management/nbstripout/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/nbstripout/default.nix
@@ -9,7 +9,7 @@ buildPythonApplication rec {
   # application, it would mess up the Python environment. Thus, don't add it
   # here, instead add it to PATH when running unit tests
   checkInputs = [ pytest pytest-flake8 git ];
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
   propagatedBuildInputs = [ ipython nbformat ];
 
   src = fetchPypi {
@@ -29,7 +29,6 @@ buildPythonApplication rec {
   '';
 
   meta = {
-    inherit version;
     description = "Strip output from Jupyter and IPython notebooks";
     homepage = "https://github.com/kynan/nbstripout";
     license = lib.licenses.mit;
diff --git a/nixpkgs/pkgs/applications/version-management/pijul/default.nix b/nixpkgs/pkgs/applications/version-management/pijul/default.nix
index d7aa8c8f0682..4c4cedd5a12c 100644
--- a/nixpkgs/pkgs/applications/version-management/pijul/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/pijul/default.nix
@@ -13,14 +13,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "pijul";
-  version = "1.0.0-alpha.50";
+  version = "1.0.0-alpha.52";
 
   src = fetchCrate {
     inherit version pname;
-    sha256 = "1hinnpbk83470sdif11v1wy1269jm7cpl0ycj2m89cxwk5g54cxg";
+    sha256 = "0m759zfh40kxswsv40z1l332lc8lfqppyv8188y4i6biqmgbx8f1";
   };
 
-  cargoSha256 = "0bc116nyykq8ddy7lnhxibx6hphn344d0fs7fbl2paax9ahbh2g0";
+  cargoSha256 = "0f31hw2zjvhkhsb0ykvw4c3d0qy8zirgsaz7yr89hy01rs23bh8z";
 
   cargoBuildFlags = lib.optional gitImportSupport "--features=git";
 
@@ -36,6 +36,6 @@ rustPlatform.buildRustPackage rec {
     description = "A distributed version control system";
     homepage = "https://pijul.org";
     license = with licenses; [ gpl2Plus ];
-    maintainers = with maintainers; [ gal_bolle dywedir ];
+    maintainers = with maintainers; [ gal_bolle dywedir fabianhjr ];
   };
 }
diff --git a/nixpkgs/pkgs/applications/video/ccextractor/default.nix b/nixpkgs/pkgs/applications/video/ccextractor/default.nix
index aa40291790e1..b559a85d44c6 100644
--- a/nixpkgs/pkgs/applications/video/ccextractor/default.nix
+++ b/nixpkgs/pkgs/applications/video/ccextractor/default.nix
@@ -4,13 +4,13 @@
 with lib;
 stdenv.mkDerivation rec {
   pname = "ccextractor";
-  version = "0.89";
+  version = "0.90";
 
   src = fetchFromGitHub {
     owner = "CCExtractor";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-847yt6pUTsDnVbrMQQPJ0pqu6UnKmYmr8UtR8+TP11A=";
+    sha256 = "sha256-NVFCwUZZVt8GrWXWyvoF8UrUZ/ix+GWubKtc3218k7o=";
   };
 
   sourceRoot = "source/src";
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/a4ksubtitles/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/a4ksubtitles/default.nix
index 8b91b5e5fa58..9c62198cb0f3 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/a4ksubtitles/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/a4ksubtitles/default.nix
@@ -3,13 +3,13 @@
 buildKodiAddon rec {
   pname = "a4ksubtitles";
   namespace = "service.subtitles.a4ksubtitles";
-  version = "2.6.0";
+  version = "2.8.0";
 
   src = fetchFromGitHub {
     owner = "a4k-openproject";
     repo = "a4kSubtitles";
     rev = "${namespace}/${namespace}-${version}";
-    sha256 = "1rzgrxdcws064ji65fdbzzmgd2pdlaak3apa5n1clkmzknn7n881";
+    sha256 = "0fg5mcvxdc3hqybp1spy7d1nnqirwhcvrblbwksikym9m3qgw2m5";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/certifi/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/certifi/default.nix
index b99a64f3eec3..1088f560adf9 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/certifi/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/certifi/default.nix
@@ -9,8 +9,11 @@ buildKodiAddon rec {
     sha256 = "1z49b8va7wdyr714c8ixb2sldi0igffcjj3xpbmga58ph0z985vy";
   };
 
-  passthru.updateScript = addonUpdateScript {
-    attrPath = "kodi.packages.certifi";
+  passthru = {
+    pythonPath = "lib";
+    updateScript = addonUpdateScript {
+      attrPath = "kodi.packages.certifi";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/chardet/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/chardet/default.nix
index cfe3d501cbd4..fe482447cfa3 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/chardet/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/chardet/default.nix
@@ -9,8 +9,11 @@ buildKodiAddon rec {
     sha256 = "1jsd165mb1b8jdan2jbjd3y3xa0xam2cxcccmwazkybpa0r6a7dj";
   };
 
-  passthru.updateScript = addonUpdateScript {
-    attrPath = "kodi.packages.chardet";
+  passthru = {
+    pythonPath = "lib";
+    updateScript = addonUpdateScript {
+      attrPath = "kodi.packages.chardet";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/dateutil/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/dateutil/default.nix
index 665858d3d573..54a22cedf905 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/dateutil/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/dateutil/default.nix
@@ -14,8 +14,11 @@ buildKodiAddon rec {
     six
   ];
 
-  passthru.updateScript = addonUpdateScript {
-    attrPath = "kodi.packages.dateutil";
+  passthru = {
+    pythonPath = "lib";
+    updateScript = addonUpdateScript {
+      attrPath = "kodi.packages.dateutil";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/idna/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/idna/default.nix
index c90f52ffdc94..01f16696faee 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/idna/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/idna/default.nix
@@ -9,8 +9,11 @@ buildKodiAddon rec {
     sha256 = "0pm86m8kh2p0brps3xzxcmmabvb4izkglzkj8dsn33br3vlc7cm7";
   };
 
-  passthru.updateScript = addonUpdateScript {
-    attrPath = "kodi.packages.idna";
+  passthru = {
+    pythonPath = "lib";
+    updateScript = addonUpdateScript {
+      attrPath = "kodi.packages.idna";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix
index e3cf4621ca67..784e0f7faf01 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix
@@ -2,13 +2,13 @@
 buildKodiBinaryAddon rec {
   pname = "inputstream-adaptive";
   namespace = "inputstream.adaptive";
-  version = "2.6.17";
+  version = "2.6.20";
 
   src = fetchFromGitHub {
     owner = "xbmc";
     repo = "inputstream.adaptive";
     rev = "${version}-${rel}";
-    sha256 = "sha256-MHwLTSyMF7vYiVTof3xePW2eOySCr4/xYlPvWSzBZUg=";
+    sha256 = "0g0pvfdmnd3frsd5sdckv3llwyjiw809rqy1slq3xj6i08xhcmd5";
   };
 
   extraNativeBuildInputs = [ gtest ];
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/inputstream-ffmpegdirect/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/inputstream-ffmpegdirect/default.nix
index 1e91c2679855..53abde6c3f4a 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/inputstream-ffmpegdirect/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/inputstream-ffmpegdirect/default.nix
@@ -3,13 +3,13 @@
 buildKodiBinaryAddon rec {
   pname = "inputstream-ffmpegdirect";
   namespace = "inputstream.ffmpegdirect";
-  version = "1.21.3";
+  version = "1.21.8";
 
   src = fetchFromGitHub {
     owner = "xbmc";
     repo = "inputstream.ffmpegdirect";
     rev = "${version}-${rel}";
-    sha256 = "sha256-OShd6sPGXXu0rlSwuQFMWqrLscE6Y0I2eV2YJYyZNMs=";
+    sha256 = "0iq89vfb3p3b5qhivxs95xk122vgmbpixdvqpmkxp19rlyn3z9j6";
   };
 
   extraBuildInputs = [ bzip2 zlib kodi.ffmpeg ];
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/inputstreamhelper/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/inputstreamhelper/default.nix
index 4ca45f8b7b90..fcf53e7a1694 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/inputstreamhelper/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/inputstreamhelper/default.nix
@@ -9,8 +9,11 @@ buildKodiAddon rec {
     sha256 = "0y4xn3ygwv1kb7gya7iwdga0g9sa89snpnram0wwqzqn8wn2lyb4";
   };
 
-  passthru.updateScript = addonUpdateScript {
-    attrPath = "kodi.packages.inputstreamhelper";
+  passthru = {
+    pythonPath = "lib";
+    updateScript = addonUpdateScript {
+      attrPath = "kodi.packages.inputstreamhelper";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/kodi-six/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/kodi-six/default.nix
index b4f1169b36db..24404ef349e2 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/kodi-six/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/kodi-six/default.nix
@@ -10,8 +10,11 @@ buildKodiAddon rec {
     sha256 = "14m232p9hx925pbk8knsg994m1nbpa5278zmcrnfblh4z84gjv4x";
   };
 
-  passthru.updateScript = addonUpdateScript {
-    attrPath = "kodi.packages.kodi-six";
+  passthru = {
+    pythonPath = "libs";
+    updateScript = addonUpdateScript {
+      attrPath = "kodi.packages.kodi-six";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/myconnpy/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/myconnpy/default.nix
index bd0c98137a5a..e39625545f6a 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/myconnpy/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/myconnpy/default.nix
@@ -9,8 +9,11 @@ buildKodiAddon rec {
     sha256 = "1cx3qdzw9lkkmbyvyrmc2i193is20fihn2sfl7kmv43f708vam0k";
   };
 
-  passthru.updateScript = addonUpdateScript {
-    attrPath = "kodi.packages.myconnpy";
+  passthru = {
+    pythonPath = "lib";
+    updateScript = addonUpdateScript {
+      attrPath = "kodi.packages.myconnpy";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/netflix/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/netflix/default.nix
index 20317b26828c..d9d11657e8b9 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/netflix/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/netflix/default.nix
@@ -3,13 +3,13 @@
 buildKodiAddon rec {
   pname = "netflix";
   namespace = "plugin.video.netflix";
-  version = "1.16.0";
+  version = "1.16.2";
 
   src = fetchFromGitHub {
     owner = "CastagnaIT";
     repo = namespace;
     rev = "v${version}";
-    sha256 = "0k5jz6zjsazf0z2xv7gk848p4hvkzd79d0kl71a5d20f96g3938k";
+    sha256 = "0yycwm8vrpkr4fsbf713mhpnaxfd849nhzp5r1898sb9vldab4xk";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/pdfreader/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/pdfreader/default.nix
index 8896a94c9c39..62a5853c796b 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/pdfreader/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/pdfreader/default.nix
@@ -11,6 +11,8 @@ buildKodiAddon rec {
     sha256 = "0nkqhlm1gyagq6xpdgqvd5qxyr2ngpml9smdmzfabc8b972mwjml";
   };
 
+  passthru.pythonPath = "lib/api";
+
   meta = with lib; {
     homepage = "https://forum.kodi.tv/showthread.php?tid=187421";
     description = "A comic book reader";
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/pvr-hdhomerun/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/pvr-hdhomerun/default.nix
index ba1a0241ffe8..7cdc5a0c6351 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/pvr-hdhomerun/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/pvr-hdhomerun/default.nix
@@ -2,13 +2,13 @@
 buildKodiBinaryAddon rec {
   pname = "pvr-hdhomerun";
   namespace = "pvr.hdhomerun";
-  version = "7.1.0";
+  version = "7.1.1";
 
   src = fetchFromGitHub {
     owner = "kodi-pvr";
     repo = "pvr.hdhomerun";
     rev = "${version}-${rel}";
-    sha256 = "0gbwjssnd319csq2kwlyjj1rskg19m1dxac5dl2dymvx5hn3zrgm";
+    sha256 = "sha256-mQeeeCOxhUTiUcOJ1OiIiJ+7envAIGO67Bp4EAf4sIE=";
   };
 
   extraBuildInputs = [ jsoncpp libhdhomerun ];
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/pvr-hts/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/pvr-hts/default.nix
index 5e7f39d911f1..30f5c895c355 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/pvr-hts/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/pvr-hts/default.nix
@@ -2,13 +2,13 @@
 buildKodiBinaryAddon rec {
   pname = "pvr-hts";
   namespace = "pvr.hts";
-  version = "8.3.0";
+  version = "8.3.4";
 
   src = fetchFromGitHub {
     owner = "kodi-pvr";
     repo = "pvr.hts";
     rev = "${version}-${rel}";
-    sha256 = "1lqd0kkfv06n8ax8ywsi1rx9glvx3pwi9yj9yb3fdf39xmd3hz7y";
+    sha256 = "15gv499r6jf89chp7xpv0z4v0nia907czs83lz57lxydqcbmmjnn";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/pvr-iptvsimple/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/pvr-iptvsimple/default.nix
index b6feec8ab039..7905ffc8ef5a 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/pvr-iptvsimple/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/pvr-iptvsimple/default.nix
@@ -6,13 +6,13 @@
 buildKodiBinaryAddon rec {
   pname = "pvr-iptvsimple";
   namespace = "pvr.iptvsimple";
-  version = "7.6.5";
+  version = "7.6.9";
 
   src = fetchFromGitHub {
     owner = "kodi-pvr";
     repo = "pvr.iptvsimple";
     rev = "${version}-${rel}";
-    sha256 = "sha256-Z4H+5dUYJ3vAgodPxWmttVhPVdPVYTJbmYxo1lzLHNA=";
+    sha256 = "1nj4qgr35cw5ly16w2fdgscz5245d7mgvm4sxgxy19jkyv7jmzn3";
   };
 
   extraBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/requests/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/requests/default.nix
index 0f2d5044f04c..c5759fcc325b 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/requests/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/requests/default.nix
@@ -16,8 +16,11 @@ buildKodiAddon rec {
     urllib3
   ];
 
-  passthru.updateScript = addonUpdateScript {
-    attrPath = "kodi.packages.requests";
+  passthru = {
+    pythonPath = "lib";
+    updateScript = addonUpdateScript {
+      attrPath = "kodi.packages.requests";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/signals/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/signals/default.nix
index bba7b112e9f0..b66b1e99a8bf 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/signals/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/signals/default.nix
@@ -9,8 +9,11 @@ buildKodiAddon rec {
     sha256 = "1qcjbakch8hvx02wc01zv014nmzgn6ahc4n2bj5mzr114ppd3hjs";
   };
 
-  passthru.updateScript = addonUpdateScript {
-    attrPath = "kodi.packages.signals";
+  passthru= {
+    pythonPath = "lib";
+    updateScript = addonUpdateScript {
+      attrPath = "kodi.packages.signals";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/urllib3/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/urllib3/default.nix
index 12d8e60d67be..de0fbb997654 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/urllib3/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/urllib3/default.nix
@@ -9,8 +9,11 @@ buildKodiAddon rec {
     sha256 = "1d2k6gbsnhdadcl1xc7igz4m71z2fcnpln5ppfjv455cmkk110vf";
   };
 
-  passthru.updateScript = addonUpdateScript {
-    attrPath = "kodi.packages.urllib3";
+  passthru = {
+    pythonPath = "lib";
+    updateScript = addonUpdateScript {
+      attrPath = "kodi.packages.urllib3";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/websocket/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/websocket/default.nix
index 3c83e1f9b000..423dfa73f34f 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/websocket/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/websocket/default.nix
@@ -14,8 +14,11 @@ buildKodiAddon rec {
     six
   ];
 
-  passthru.updateScript = addonUpdateScript {
-    attrPath = "kodi.packages.websocket";
+  passthru = {
+    pythonPath = "lib";
+    updateScript = addonUpdateScript {
+      attrPath = "kodi.packages.websocket";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi-packages/youtube/default.nix b/nixpkgs/pkgs/applications/video/kodi-packages/youtube/default.nix
index 65613658e0f0..8e57adbfb1af 100644
--- a/nixpkgs/pkgs/applications/video/kodi-packages/youtube/default.nix
+++ b/nixpkgs/pkgs/applications/video/kodi-packages/youtube/default.nix
@@ -16,8 +16,11 @@ buildKodiAddon rec {
     inputstreamhelper
   ];
 
-  passthru.updateScript = addonUpdateScript {
-    attrPath = "kodi.packages.youtube";
+  passthru = {
+    pythonPath = "resources/lib";
+    updateScript = addonUpdateScript {
+      attrPath = "kodi.packages.youtube";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/video/kodi/wrapper.nix b/nixpkgs/pkgs/applications/video/kodi/wrapper.nix
index 86164682138d..7377e638676e 100644
--- a/nixpkgs/pkgs/applications/video/kodi/wrapper.nix
+++ b/nixpkgs/pkgs/applications/video/kodi/wrapper.nix
@@ -1,8 +1,19 @@
-{ lib, makeWrapper, buildEnv, kodi, addons }:
+{ lib, makeWrapper, buildEnv, kodi, addons, callPackage }:
 
 let
+  kodiPackages = callPackage ../../../top-level/kodi-packages.nix { inherit kodi; };
+
   # linux distros are supposed to provide pillow and pycryptodome
-  requiredPythonPackages = with kodi.pythonPackages; [ pillow pycryptodome] ++ addons;
+  requiredPythonPath = with kodi.pythonPackages; makePythonPath ([ pillow pycryptodome ]);
+
+  # each kodi addon can potentially export a python module which should be included in PYTHONPATH
+  # see any addon which supplies `passthru.pythonPath` and the corresponding entry in the addons `addon.xml`
+  # eg. `<extension point="xbmc.python.module" library="lib" />` -> pythonPath = "lib";
+  additionalPythonPath =
+    let
+      addonsWithPythonPath = lib.filter (addon: addon ? pythonPath) addons;
+    in
+      lib.concatMapStringsSep ":" (addon: "${addon}${kodiPackages.addonDir}/${addon.namespace}/${addon.pythonPath}") addonsWithPythonPath;
 in
 
 buildEnv {
@@ -18,7 +29,7 @@ buildEnv {
     for exe in kodi{,-standalone}
     do
       makeWrapper ${kodi}/bin/$exe $out/bin/$exe \
-        --prefix PYTHONPATH : ${kodi.pythonPackages.makePythonPath requiredPythonPackages} \
+        --prefix PYTHONPATH : ${requiredPythonPath}:${additionalPythonPath} \
         --prefix KODI_HOME : $out/share/kodi \
         --prefix LD_LIBRARY_PATH ":" "${lib.makeLibraryPath
           (lib.concatMap
diff --git a/nixpkgs/pkgs/applications/video/streamlink/default.nix b/nixpkgs/pkgs/applications/video/streamlink/default.nix
index d7ade6899dc2..fde2833c98c3 100644
--- a/nixpkgs/pkgs/applications/video/streamlink/default.nix
+++ b/nixpkgs/pkgs/applications/video/streamlink/default.nix
@@ -7,13 +7,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "streamlink";
-  version = "2.1.1";
+  version = "2.2.0";
 
   src = fetchFromGitHub {
     owner = "streamlink";
     repo = "streamlink";
     rev = version;
-    sha256 = "14vqh4pck3q766qln7c57n9bz8zrlgfqrpkdn8x0ac9zhlhfn1zm";
+    sha256 = "1323v1pavmbb2vk3djdkxd8j6i3yrcgrkyl2d7xwkb7nwlla1x1v";
   };
 
   checkInputs = with python3.pkgs; [
@@ -43,7 +43,7 @@ python3.pkgs.buildPythonApplication rec {
     homepage = "https://github.com/streamlink/streamlink";
     description = "CLI for extracting streams from various websites to video player of your choosing";
     longDescription = ''
-      Streamlink is a CLI utility that pipes flash videos from online
+      Streamlink is a CLI utility that pipes videos from online
       streaming services to a variety of video players such as VLC, or
       alternatively, a browser.
 
@@ -51,6 +51,6 @@ python3.pkgs.buildPythonApplication rec {
     '';
     license = licenses.bsd2;
     platforms = platforms.linux ++ platforms.darwin;
-    maintainers = with maintainers; [ dezgeg zraexy ];
+    maintainers = with maintainers; [ dezgeg zraexy DeeUnderscore ];
   };
 }
diff --git a/nixpkgs/pkgs/applications/video/vdr/plugins.nix b/nixpkgs/pkgs/applications/video/vdr/plugins.nix
index cb2338c0e185..6f701779d4d1 100644
--- a/nixpkgs/pkgs/applications/video/vdr/plugins.nix
+++ b/nixpkgs/pkgs/applications/video/vdr/plugins.nix
@@ -23,13 +23,13 @@ in {
   ] mkPlugin);
 
   femon = stdenv.mkDerivation rec {
-
-    name = "vdr-femon-2.4.0";
+    pname = "vdr-femon";
+    version = "2.4.0";
 
     buildInputs = [ vdr ];
 
     src = fetchurl {
-      url = "http://www.saunalahti.fi/~rahrenbe/vdr/femon/files/${name}.tgz";
+      url = "http://www.saunalahti.fi/~rahrenbe/vdr/femon/files/${pname}-${version}.tgz";
       sha256 = "1hra1xslj8s68zbyr8zdqp8yap0aj1p6rxyc6cwy1j122kwcnapp";
     };
 
@@ -48,7 +48,6 @@ in {
   };
 
   vaapidevice = stdenv.mkDerivation {
-
     pname = "vdr-vaapidevice";
     version = "20190525";
 
@@ -84,7 +83,8 @@ in {
 
 
   markad = stdenv.mkDerivation rec {
-    name = "vdr-markad-2017-03-13";
+    pname = "vdr-markad";
+    version = "unstable-2017-03-13";
 
     src = fetchgit {
       url = "git://projects.vdr-developer.org/vdr-plugin-markad.git";
@@ -176,18 +176,16 @@ in {
 
   };
 
-  vnsiserver = let
-    name = "vnsiserver";
+  vnsiserver = stdenv.mkDerivation rec {
+    pname = "vdr-vnsiserver";
     version = "1.8.0";
-  in stdenv.mkDerivation {
-    name = "vdr-${name}-${version}";
 
     buildInputs = [ vdr ];
 
     installFlags = [ "DESTDIR=$(out)" ];
 
     src = fetchFromGitHub {
-      repo = "vdr-plugin-${name}";
+      repo = "vdr-plugin-vnsiserver";
       owner = "FernetMenta";
       rev = "v${version}";
       sha256 = "0n7idpxqx7ayd63scl6xwdx828ik4kb2mwz0c30cfjnmnxxd45lw";
@@ -204,7 +202,8 @@ in {
   };
 
   text2skin = stdenv.mkDerivation {
-    name = "vdr-text2skin-1.3.4-20170702";
+    pname = "vdr-text2skin";
+    version = "1.3.4-20170702";
 
     src = fetchgit {
       url = "git://projects.vdr-developer.org/vdr-plugin-text2skin.git";
@@ -226,7 +225,7 @@ in {
       mkdir -p $out/lib/vdr
     '';
 
-    installPhase = ":";
+    dontInstall = true;
 
     meta = with lib; {
       homepage = "https://projects.vdr-developer.org/projects/plg-text2skin";
@@ -308,7 +307,6 @@ in {
 
   in stdenv.mkDerivation rec {
     pname = "vdr-fritzbox";
-
     version = "1.5.3";
 
     src = fetchFromGitHub {
diff --git a/nixpkgs/pkgs/applications/video/wf-recorder/default.nix b/nixpkgs/pkgs/applications/video/wf-recorder/default.nix
index 0b8d1ad22b9f..18b35c0d398b 100644
--- a/nixpkgs/pkgs/applications/video/wf-recorder/default.nix
+++ b/nixpkgs/pkgs/applications/video/wf-recorder/default.nix
@@ -1,5 +1,6 @@
-{ lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config, wayland, scdoc
-, wayland-protocols, ffmpeg, x264, libpulseaudio, ocl-icd, opencl-headers
+{ lib, stdenv, fetchFromGitHub
+, meson, ninja, pkg-config, scdoc, wayland-scanner
+, wayland, wayland-protocols, ffmpeg, x264, libpulseaudio, ocl-icd, opencl-headers
 }:
 
 stdenv.mkDerivation rec {
@@ -13,9 +14,9 @@ stdenv.mkDerivation rec {
     sha256 = "1cw6kpcbl33wh95pvy32xrsrm6kkk1awccr3phyh885xjs3b3iim";
   };
 
-  nativeBuildInputs = [ meson ninja pkg-config wayland scdoc ];
+  nativeBuildInputs = [ meson ninja pkg-config wayland-scanner scdoc ];
   buildInputs = [
-    wayland-protocols ffmpeg x264 libpulseaudio ocl-icd opencl-headers
+    wayland wayland-protocols ffmpeg x264 libpulseaudio ocl-icd opencl-headers
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/virtualization/containerd/default.nix b/nixpkgs/pkgs/applications/virtualization/containerd/default.nix
index ca9ae20f3468..0c44805bedd3 100644
--- a/nixpkgs/pkgs/applications/virtualization/containerd/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/containerd/default.nix
@@ -10,7 +10,7 @@
 
 buildGoModule rec {
   pname = "containerd";
-  version = "1.5.2";
+  version = "1.5.4";
 
   outputs = [ "out" "man" ];
 
@@ -18,7 +18,7 @@ buildGoModule rec {
     owner = "containerd";
     repo = "containerd";
     rev = "v${version}";
-    sha256 = "sha256-RDLAmPBjDHCx9al+gstUTrvKc/L0vAm8IEd/mvX5Als=";
+    sha256 = "sha256-VV1cxA8tDRiPDxKV8OGu3T7sgutmyL+VPNqTeFcVjJA=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/applications/virtualization/cri-o/default.nix b/nixpkgs/pkgs/applications/virtualization/cri-o/default.nix
index 42095da8f52d..26e56ccc609e 100644
--- a/nixpkgs/pkgs/applications/virtualization/cri-o/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/cri-o/default.nix
@@ -15,13 +15,13 @@
 
 buildGoModule rec {
   pname = "cri-o";
-  version = "1.21.1";
+  version = "1.21.2";
 
   src = fetchFromGitHub {
     owner = "cri-o";
     repo = "cri-o";
     rev = "v${version}";
-    sha256 = "sha256-WoQeZkHuCQGv//UKTpvucJXq7xI9Fkil8V1B1qTM75k=";
+    sha256 = "sha256-hapXwd7K0xbkZ0MKkJ5wv4zfDKRTC3IC4oLYLL460oI=";
   };
   vendorSha256 = null;
 
diff --git a/nixpkgs/pkgs/applications/virtualization/docker-compose/default.nix b/nixpkgs/pkgs/applications/virtualization/docker-compose/default.nix
index cc8936806742..fd67aa554f04 100644
--- a/nixpkgs/pkgs/applications/virtualization/docker-compose/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/docker-compose/default.nix
@@ -8,12 +8,12 @@
 }:
 
 buildPythonApplication rec {
-  version = "1.28.6";
+  version = "1.29.2";
   pname = "docker-compose";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1d44906f7ab738ba2d1785130ed31b16111eee6dc5a1dbd7252091dae48c5281";
+    sha256 = "sha256-TIzZ0h0jdBJ5PRi9MxEASe6a+Nqz/iwhO70HM5WbCbc=";
   };
 
   # lots of networking and other fails
diff --git a/nixpkgs/pkgs/applications/virtualization/docker/buildx.nix b/nixpkgs/pkgs/applications/virtualization/docker/buildx.nix
index 84019395853b..020e22db6019 100644
--- a/nixpkgs/pkgs/applications/virtualization/docker/buildx.nix
+++ b/nixpkgs/pkgs/applications/virtualization/docker/buildx.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "docker-buildx";
-  version = "0.5.1";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "docker";
     repo = "buildx";
     rev = "v${version}";
-    sha256 = "0l03ncs1x4lhgy0kf7bd1zq00md8fi93f8xq6k0ans4400divfzk";
+    sha256 = "sha256-5j1+3FlLc0gYDnYvDsAdmILxgjHCU1bTVOytfaF03iU=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/applications/virtualization/docker/default.nix b/nixpkgs/pkgs/applications/virtualization/docker/default.nix
index ee7c4d6bcfad..ec358507c2d2 100644
--- a/nixpkgs/pkgs/applications/virtualization/docker/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/docker/default.nix
@@ -8,7 +8,7 @@ rec {
       , moby-src
       , runcRev, runcSha256
       , containerdRev, containerdSha256
-      , tiniRev, tiniSha256, buildxSupport ? false
+      , tiniRev, tiniSha256, buildxSupport ? true
       # package dependencies
       , stdenv, fetchFromGitHub, buildGoPackage
       , makeWrapper, installShellFiles, pkg-config, glibc
@@ -77,6 +77,10 @@ rec {
 
       extraPath = optionals (stdenv.isLinux) (makeBinPath [ iproute2 iptables e2fsprogs xz xfsprogs procps util-linux git ]);
 
+      postPatch = ''
+        patchShebangs hack/make.sh hack/make/
+      '';
+
       buildPhase = ''
         export GOCACHE="$TMPDIR/go-cache"
         # build engine
@@ -88,11 +92,6 @@ rec {
         cd -
       '';
 
-      postPatch = ''
-        patchShebangs .
-        substituteInPlace ./hack/make.sh --replace libsystemd-journal libsystemd
-      '';
-
       installPhase = ''
         cd ./go/src/${goPackagePath}
         install -Dm755 ./bundles/dynbinary-daemon/dockerd $out/libexec/docker/dockerd
@@ -144,6 +143,14 @@ rec {
       sqlite lvm2 btrfs-progs systemd libseccomp
     ] ++ optionals (buildxSupport) [ docker-buildx ];
 
+    postPatch = ''
+      patchShebangs man scripts/build/
+      substituteInPlace ./scripts/build/.variables --replace "set -eu" ""
+    '' + optionalString buildxSupport ''
+      substituteInPlace ./cli-plugins/manager/manager_unix.go --replace /usr/libexec/docker/cli-plugins \
+          ${lib.strings.makeSearchPathOutput "bin" "libexec/docker/cli-plugins" [docker-buildx]}
+    '';
+
     # Keep eyes on BUILDTIME format - https://github.com/docker/cli/blob/${version}/scripts/build/.variables
     buildPhase = ''
       export GOCACHE="$TMPDIR/go-cache"
@@ -162,14 +169,6 @@ rec {
       cd -
     '';
 
-    postPatch = ''
-      patchShebangs .
-      substituteInPlace ./scripts/build/.variables --replace "set -eu" ""
-    '' + optionalString buildxSupport ''
-      substituteInPlace ./cli-plugins/manager/manager_unix.go --replace /usr/libexec/docker/cli-plugins \
-          ${lib.strings.makeSearchPathOutput "bin" "libexec/docker/cli-plugins" [docker-buildx]}
-    '';
-
     outputs = ["out" "man"];
 
     installPhase = ''
@@ -211,7 +210,7 @@ rec {
       homepage = "https://www.docker.com/";
       description = "An open source project to pack, ship and run any application as a lightweight container";
       license = licenses.asl20;
-      maintainers = with maintainers; [ offline tailhook vdemeester periklis ];
+      maintainers = with maintainers; [ offline tailhook vdemeester periklis mikroskeem ];
       platforms = with platforms; linux ++ darwin;
     };
 
@@ -222,14 +221,14 @@ rec {
   # Get revisions from
   # https://github.com/moby/moby/tree/${version}/hack/dockerfile/install/*
   docker_20_10 = callPackage dockerGen rec {
-    version = "20.10.6";
+    version = "20.10.7";
     rev = "v${version}";
-    sha256 = "15kknb26vyzjgqmn8r81a1sy1i5br6bvngqd5xljihppnxvp2gvl";
+    sha256 = "1r854jrjph4v1n5lr82z0cl0241ycili4qr3qh3k3bmqx790cds3";
     moby-src = fetchFromGitHub {
       owner = "moby";
       repo = "moby";
       rev = "v${version}";
-      sha256 = "1l4ra9bsvydaxd2fy7dgxp7ynpp0mrlwvcdhxiafw596559ab6qk";
+      sha256 = "0xhn11kgcbzda4z9j0rflvq0nfivizh3jrzhanwn5vnghafy4zqw";
     };
     runcRev = "b9ee9c6314599f1b4a7f497e1f1f856fe433d3b7"; # v1.0.0-rc95
     runcSha256 = "18sbvmlvb6kird4w3rqsfrjdj7n25firabvdxsl0rxjfy9r1g2xb";
diff --git a/nixpkgs/pkgs/applications/virtualization/firecracker/default.nix b/nixpkgs/pkgs/applications/virtualization/firecracker/default.nix
index a8fbb1d09c16..1d049621aa5f 100644
--- a/nixpkgs/pkgs/applications/virtualization/firecracker/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/firecracker/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
     aarch64-linux = "0m7xs12g97z1ipzaf7dgknf3azlah0p6bdr9i454azvzg955238b";
   };
 
-  configurePhase = ":";
+  dontConfigure = true;
 
   buildPhase     = ''
     mv firecracker-* firecracker
diff --git a/nixpkgs/pkgs/applications/virtualization/looking-glass-client/0001-client-all-fix-more-maybe-uninitialized-when-O3-is-i.patch b/nixpkgs/pkgs/applications/virtualization/looking-glass-client/0001-client-all-fix-more-maybe-uninitialized-when-O3-is-i.patch
deleted file mode 100644
index 82ce050b587a..000000000000
--- a/nixpkgs/pkgs/applications/virtualization/looking-glass-client/0001-client-all-fix-more-maybe-uninitialized-when-O3-is-i.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 95a7293b30ff7b89d615daea00269ed32f4b70a2 Mon Sep 17 00:00:00 2001
-From: Geoffrey McRae <geoff@hostfission.com>
-Date: Tue, 23 Feb 2021 20:25:30 +1100
-Subject: [PATCH] [client] all: fix more `maybe-uninitialized` when `-O3` is in
- use
-
-Closes #475
----
- client/renderers/EGL/egl.c | 3 ++-
- client/src/main.c          | 5 +++--
- 2 files changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/client/renderers/EGL/egl.c b/client/renderers/EGL/egl.c
-index b7a5644..72ce50d 100644
---- a/client/renderers/EGL/egl.c
-+++ b/client/renderers/EGL/egl.c
-@@ -271,7 +271,8 @@ static void egl_calc_mouse_size(struct Inst * this)
-   if (!this->formatValid)
-     return;
- 
--  int w, h;
-+  int w  = 0, h = 0;
-+
-   switch(this->format.rotate)
-   {
-     case LG_ROTATE_0:
-diff --git a/client/src/main.c b/client/src/main.c
-index f05e929..f5d6fad 100644
---- a/client/src/main.c
-+++ b/client/src/main.c
-@@ -186,8 +186,9 @@ static void updatePositionInfo(void)
-   if (!g_state.haveSrcSize)
-     goto done;
- 
--  float srcW;
--  float srcH;
-+  float srcW = 0.0f;
-+  float srcH = 0.0f;
-+
-   switch(params.winRotate)
-   {
-     case LG_ROTATE_0:
--- 
-2.30.1
-
diff --git a/nixpkgs/pkgs/applications/virtualization/looking-glass-client/default.nix b/nixpkgs/pkgs/applications/virtualization/looking-glass-client/default.nix
index 345018bbe4ef..0d158cc3f96f 100644
--- a/nixpkgs/pkgs/applications/virtualization/looking-glass-client/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/looking-glass-client/default.nix
@@ -1,40 +1,54 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, SDL2, SDL2_ttf, spice-protocol
-, fontconfig, libX11, freefont_ttf, nettle, libpthreadstubs, libXau, libXdmcp
-, libXi, libXext, wayland, wayland-protocols, libffi, libGLU, libXScrnSaver
-, expat, libbfd
+
+{ stdenv, lib, fetchFromGitHub, fetchpatch, makeDesktopItem, cmake, pkg-config
+, SDL, SDL2_ttf, freefont_ttf, spice-protocol, nettle, libbfd, fontconfig
+, libXi, libXScrnSaver, libXinerama
+, wayland, wayland-protocols
 }:
 
+let
+  desktopItem = makeDesktopItem {
+    name = "looking-glass-client";
+    desktopName = "Looking Glass Client";
+    type = "Application";
+    exec = "looking-glass-client";
+    icon = "lg-logo";
+    terminal = true;
+  };
+in
 stdenv.mkDerivation rec {
   pname = "looking-glass-client";
-  version = "B3";
+  version = "B4";
 
   src = fetchFromGitHub {
     owner = "gnif";
     repo = "LookingGlass";
     rev = version;
-    sha256 = "1vmabjzn85p0brdian9lbpjq39agzn8k0limn8zjm713lh3n3c0f";
+    sha256 = "0fwmz0l1dcfwklgvxmv0galgj2q3nss90kc3jwgf6n80x27rsnhf";
     fetchSubmodules = true;
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
 
   buildInputs = [
-    SDL2 SDL2_ttf spice-protocol fontconfig libX11 freefont_ttf nettle
-    libpthreadstubs libXau libXdmcp libXi libXext wayland wayland-protocols
-    libffi libGLU libXScrnSaver expat libbfd
-  ];
-
-  patches = [
-    # error: ‘h’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
-    # Fixed upstream in master in 8771103abbfd04da9787dea760405364af0d82de, but not in B3.
-    # Including our own patch here since upstream commit patch doesnt apply cleanly on B3
-    ./0001-client-all-fix-more-maybe-uninitialized-when-O3-is-i.patch
+    SDL SDL2_ttf freefont_ttf spice-protocol
+    libbfd nettle fontconfig
+    libXi libXScrnSaver libXinerama
+    wayland wayland-protocols
   ];
-  patchFlags = "-p2";
 
-  sourceRoot = "source/client";
   NIX_CFLAGS_COMPILE = "-mavx"; # Fix some sort of AVX compiler problem.
 
+  postUnpack = ''
+    echo $version > source/VERSION
+    export sourceRoot="source/client"
+  '';
+
+  postInstall = ''
+    mkdir -p $out/share/pixmaps
+    ln -s ${desktopItem}/share/applications $out/share/
+    cp $src/resources/lg-logo.png $out/share/pixmaps
+  '';
+
   meta = with lib; {
     description = "A KVM Frame Relay (KVMFR) implementation";
     longDescription = ''
@@ -46,7 +60,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://looking-glass.io/";
     license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ alexbakker ];
+    maintainers = with maintainers; [ alexbakker babbaj ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/nixpkgs/pkgs/applications/virtualization/open-vm-tools/default.nix b/nixpkgs/pkgs/applications/virtualization/open-vm-tools/default.nix
index e74799574443..74d87a1b7407 100644
--- a/nixpkgs/pkgs/applications/virtualization/open-vm-tools/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/open-vm-tools/default.nix
@@ -1,18 +1,20 @@
-{ stdenv, lib, fetchFromGitHub, makeWrapper, autoreconfHook, fetchpatch,
-  fuse, libmspack, openssl, pam, xercesc, icu, libdnet, procps, libtirpc, rpcsvc-proto,
-  libX11, libXext, libXinerama, libXi, libXrender, libXrandr, libXtst,
-  pkg-config, glib, gdk-pixbuf-xlib, gtk3, gtkmm3, iproute2, dbus, systemd, which,
-  withX ? true }:
+{ stdenv, lib, fetchFromGitHub, makeWrapper, autoreconfHook
+, bash, fuse, libmspack, openssl, pam, xercesc, icu, libdnet, procps, libtirpc, rpcsvc-proto
+, libX11, libXext, libXinerama, libXi, libXrender, libXrandr, libXtst
+, pkg-config, glib, gdk-pixbuf-xlib, gtk3, gtkmm3, iproute2, dbus, systemd, which
+, libdrm, udev
+, withX ? true
+}:
 
 stdenv.mkDerivation rec {
   pname = "open-vm-tools";
-  version = "11.2.5";
+  version = "11.3.0";
 
   src = fetchFromGitHub {
     owner  = "vmware";
     repo   = "open-vm-tools";
     rev    = "stable-${version}";
-    sha256 = "sha256-Jv+NSKw/+l+b4lfVGgCZFlcTScO/WAO/d7DtI0FAEV4=";
+    sha256 = "1yfffxc7drr1hyg28jcvly7jn1bm4ca76lmma5ykbmba2qqszx49";
   };
 
   sourceRoot = "${src.name}/open-vm-tools";
@@ -20,32 +22,15 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "dev" ];
 
   nativeBuildInputs = [ autoreconfHook makeWrapper pkg-config ];
-  buildInputs = [ fuse glib icu libdnet libmspack libtirpc openssl pam procps rpcsvc-proto xercesc ]
+  buildInputs = [ fuse glib icu libdnet libdrm libmspack libtirpc openssl pam procps rpcsvc-proto udev xercesc ]
       ++ lib.optionals withX [ gdk-pixbuf-xlib gtk3 gtkmm3 libX11 libXext libXinerama libXi libXrender libXrandr libXtst ];
 
-  patches = [
-    # Fix building with glib 2.68. Remove after next release.
-    # We drop AUTHORS due to conflicts when applying.
-    # https://github.com/vmware/open-vm-tools/pull/505
-    (fetchpatch {
-      url = "https://github.com/vmware/open-vm-tools/commit/82931a1bcb39d5132910c7fb2ddc086c51d06662.patch";
-      stripLen = 1;
-      excludes = [ "AUTHORS" ];
-      sha256 = "0yz5hnngr5vd4416hvmh8734a9vxa18d2xd37kl7if0p9vik6zlg";
-    })
-  ];
-
   postPatch = ''
-     # Build bugfix for 10.1.0, stolen from Arch PKGBUILD
-     mkdir -p common-agent/etc/config
-     sed -i 's|.*common-agent/etc/config/Makefile.*|\\|' configure.ac
-
      sed -i 's,etc/vmware-tools,''${prefix}/etc/vmware-tools,' Makefile.am
      sed -i 's,^confdir = ,confdir = ''${prefix},' scripts/Makefile.am
      sed -i 's,usr/bin,''${prefix}/usr/bin,' scripts/Makefile.am
      sed -i 's,etc/vmware-tools,''${prefix}/etc/vmware-tools,' services/vmtoolsd/Makefile.am
      sed -i 's,$(PAM_PREFIX),''${prefix}/$(PAM_PREFIX),' services/vmtoolsd/Makefile.am
-     sed -i 's,$(UDEVRULESDIR),''${prefix}/$(UDEVRULESDIR),' udev/Makefile.am
 
      # Avoid a glibc >= 2.25 deprecation warning that gets fatal via -Werror.
      sed 1i'#include <sys/sysmacros.h>' -i lib/wiper/wiperPosix.c
@@ -54,24 +39,28 @@ stdenv.mkDerivation rec {
      sed -i 's,/sbin/shutdown,shutdown,' lib/system/systemLinux.c
   '';
 
-  configureFlags = [ "--without-kernel-modules" "--without-xmlsecurity" ]
-    ++ lib.optional (!withX) "--without-x";
+  configureFlags = [
+    "--without-kernel-modules"
+    "--without-xmlsecurity"
+    "--with-udev-rules-dir=${placeholder "out"}/lib/udev/rules.d"
+  ] ++ lib.optional (!withX) "--without-x";
 
   enableParallelBuilding = true;
 
   NIX_CFLAGS_COMPILE = builtins.toString [
-    # igrone glib-2.62 deprecations
-    # Drop in next stable release.
-    "-DGLIB_DISABLE_DEPRECATION_WARNINGS"
-
     # fix build with gcc9
     "-Wno-error=address-of-packed-member"
     "-Wno-error=format-overflow"
   ];
 
+  preConfigure = ''
+    mkdir -p ${placeholder "out"}/lib/udev/rules.d
+  '';
+
   postInstall = ''
     wrapProgram "$out/etc/vmware-tools/scripts/vmware/network" \
       --prefix PATH ':' "${lib.makeBinPath [ iproute2 dbus systemd which ]}"
+    substituteInPlace "$out/lib/udev/rules.d/99-vmware-scsi-udev.rules" --replace "/bin/sh" "${bash}/bin/sh"
   '';
 
   meta = with lib; {
@@ -82,7 +71,7 @@ stdenv.mkDerivation rec {
       better management of, and seamless user interactions with, guests.
     '';
     license = licenses.gpl2;
-    platforms =  [ "x86_64-linux" "i686-linux" ];
+    platforms =  [ "x86_64-linux" "i686-linux" "aarch64-linux" ];
     maintainers = with maintainers; [ joamaki ];
   };
 }
diff --git a/nixpkgs/pkgs/applications/virtualization/podman/default.nix b/nixpkgs/pkgs/applications/virtualization/podman/default.nix
index 5ab696ed1d57..e604cb259201 100644
--- a/nixpkgs/pkgs/applications/virtualization/podman/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/podman/default.nix
@@ -17,13 +17,13 @@
 
 buildGoModule rec {
   pname = "podman";
-  version = "3.2.2";
+  version = "3.2.3";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "podman";
     rev = "v${version}";
-    sha256 = "sha256-D1gtKaDZ7/SyySYWmDa3eDHbh2f5B3q1VEYKgl1pXCE=";
+    sha256 = "sha256-P8/4jehfcjM+r/pwW6fxrwquMVUqXxvvTur7Tesjmnc=";
   };
 
   vendorSha256 = null;
@@ -64,11 +64,9 @@ buildGoModule rec {
     installShellCompletion --fish completions/fish/*
     installShellCompletion --zsh completions/zsh/*
     MANDIR=$man/share/man make install.man-nobuild
-  '' + lib.optionalString stdenv.isLinux ''
     install -Dm644 cni/87-podman-bridge.conflist -t $out/etc/cni/net.d
     install -Dm644 contrib/tmpfile/podman.conf -t $out/lib/tmpfiles.d
     install -Dm644 contrib/systemd/system/podman.{socket,service} -t $out/lib/systemd/system
-  '' + ''
     runHook postInstall
   '';
 
diff --git a/nixpkgs/pkgs/applications/virtualization/podman/wrapper.nix b/nixpkgs/pkgs/applications/virtualization/podman/wrapper.nix
index c9ec18593dff..820e8ad18bcc 100644
--- a/nixpkgs/pkgs/applications/virtualization/podman/wrapper.nix
+++ b/nixpkgs/pkgs/applications/virtualization/podman/wrapper.nix
@@ -2,6 +2,7 @@
 , runCommand
 , makeWrapper
 , lib
+, stdenv
 , extraPackages ? []
 , podman # Docker compat
 , runc # Default container runtime
@@ -13,12 +14,14 @@
 , cni-plugins # not added to path
 , iptables
 , iproute2
+, qemu
+, xz
 }:
 
 let
   podman = podman-unwrapped;
 
-  binPath = lib.makeBinPath ([
+  binPath = lib.makeBinPath ([ ] ++ lib.optionals stdenv.isLinux [
     runc
     crun
     conmon
@@ -27,6 +30,9 @@ let
     util-linux
     iptables
     iproute2
+  ] ++ lib.optionals stdenv.isDarwin [
+    qemu
+    xz
   ] ++ extraPackages);
 
 in runCommand podman.name {
diff --git a/nixpkgs/pkgs/applications/virtualization/qemu/default.nix b/nixpkgs/pkgs/applications/virtualization/qemu/default.nix
index 7fd01a8ffa95..4df14e030aea 100644
--- a/nixpkgs/pkgs/applications/virtualization/qemu/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/qemu/default.nix
@@ -86,6 +86,16 @@ stdenv.mkDerivation rec {
   patches = [
     ./fix-qemu-ga.patch
     ./9p-ignore-noatime.patch
+    (fetchpatch {
+      name = "CVE-2021-3545.patch";
+      url = "https://gitlab.com/qemu-project/qemu/-/commit/121841b25d72d13f8cad554363138c360f1250ea.patch";
+      sha256 = "13dgfd8dmxcalh2nvb68iv0kyv4xxrvpdqdxf1h3bjr4451glag1";
+    })
+    (fetchpatch {
+      name = "CVE-2021-3546.patch";
+      url = "https://gitlab.com/qemu-project/qemu/-/commit/9f22893adcb02580aee5968f32baa2cd109b3ec2.patch";
+      sha256 = "1vkhm9vl671y4cra60b6704339qk1h5dyyb3dfvmvpsvfyh2pm7n";
+    })
   ] ++ optional nixosTestRunner ./force-uid0-on-9p.patch
     ++ optionals stdenv.hostPlatform.isMusl [
     (fetchpatch {
@@ -114,6 +124,18 @@ stdenv.mkDerivation rec {
     # This means `-accel hvf` is broken for now, on aarch64-darwin only.
     substituteInPlace meson.build \
       --replace 'if exe_sign' 'if false'
+
+    # glibc 2.33 compat fix: if `has_statx = true` is set, `tools/virtiofsd/passthrough_ll.c` will
+    # rely on `stx_mnt_id`[1] which is not part of glibc's `statx`-struct definition.
+    #
+    # `has_statx` will be set to `true` if a simple C program which uses a few `statx`
+    # consts & struct fields successfully compiles. It seems as this only builds on glibc-2.33
+    # since most likely[2] and because of that, the problematic code-path will be used.
+    #
+    # [1] https://github.com/torvalds/linux/commit/fa2fcf4f1df1559a0a4ee0f46915b496cc2ebf60#diff-64bab5a0a3fcb55e1a6ad77b1dfab89d2c9c71a770a07ecf44e6b82aae76a03a
+    # [2] https://sourceware.org/git/?p=glibc.git;a=blobdiff;f=io/bits/statx-generic.h;h=c34697e3c1fd79cddd60db294302e461ed8db6e2;hp=7a09e94be2abb92d2df612090c132e686a24d764;hb=88a2cf6c4bab6e94a65e9c0db8813709372e9180;hpb=c4e4b2e149705559d28b16a9b47ba2f6142d6a6c
+    substituteInPlace meson.build \
+      --replace 'has_statx = cc.links(statx_test)' 'has_statx = false'
   '';
 
   preConfigure = ''
diff --git a/nixpkgs/pkgs/applications/virtualization/runc/default.nix b/nixpkgs/pkgs/applications/virtualization/runc/default.nix
index 8f7a88a21827..2e024c20f41c 100644
--- a/nixpkgs/pkgs/applications/virtualization/runc/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/runc/default.nix
@@ -16,13 +16,13 @@
 
 buildGoModule rec {
   pname = "runc";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "opencontainers";
     repo = "runc";
     rev = "v${version}";
-    sha256 = "sha256-slNVSlyJLaqIFF4uJP/7u4M0AkJLQjqkHO5TeKFYgSA=";
+    sha256 = "sha256-xd46HlZenTNCzmnCGN3x7Ah8pPLwbG9LSMGmiPIPyv0=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/applications/virtualization/virtinst/default.nix b/nixpkgs/pkgs/applications/virtualization/virtinst/default.nix
deleted file mode 100644
index 37f03d8772f5..000000000000
--- a/nixpkgs/pkgs/applications/virtualization/virtinst/default.nix
+++ /dev/null
@@ -1,47 +0,0 @@
-{ lib, stdenv, fetchurl, python2Packages, intltool, libxml2Python }:
-
-with lib;
-
-let version = "0.600.4"; in
-
-stdenv.mkDerivation rec {
-  pname = "virtinst";
-  inherit version;
-
-  src = fetchurl {
-    url = "http://virt-manager.org/download/sources/virtinst/virtinst-${version}.tar.gz";
-    sha256 = "175laiy49dni8hzi0cn14bbsdsigvgr9h6d9z2bcvbpa29spldvf";
-  };
-
-  pythonPath = with python2Packages;
-    [ setuptools eventlet greenlet gflags netaddr carrot routes
-      PasteDeploy m2crypto ipy twisted
-      distutils_extra simplejson cheetah lockfile httplib2
-      # !!! should libvirt be a build-time dependency?  Note that
-      # libxml2Python is a dependency of libvirt.py.
-      libvirt libxml2Python urlgrabber
-    ];
-
-  buildInputs =
-    [ python2Packages.python
-      python2Packages.wrapPython
-      python2Packages.mox
-      intltool
-    ] ++ pythonPath;
-
-  buildPhase = "python setup.py build";
-
-  installPhase =
-    ''
-       python setup.py install --prefix="$out";
-       wrapPythonPrograms
-    '';
-
-  meta = {
-    homepage = "http://virt-manager.org";
-    license = lib.licenses.gpl2Plus;
-    maintainers = with lib.maintainers; [qknight];
-    description = "Command line tool which provides an easy way to provision operating systems into virtual machines";
-    platforms = with lib.platforms; linux;
-  };
-}
diff --git a/nixpkgs/pkgs/applications/window-managers/afterstep/default.nix b/nixpkgs/pkgs/applications/window-managers/afterstep/default.nix
index fbb4a7a5e490..ec7d3ae5004d 100644
--- a/nixpkgs/pkgs/applications/window-managers/afterstep/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/afterstep/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl, pkg-config
-, libjpeg, libtiff, libpng, freetype
+, libtiff
 , fltk, gtk
-, libX11, libXext, libICE
+, libICE, libSM
 , dbus
 , fetchpatch
 }:
@@ -24,8 +24,16 @@ stdenv.mkDerivation rec {
     })
   ];
 
+  postPatch = ''
+    # Causes fatal ldconfig cache generation attempt on non-NixOS Linux
+    for mkfile in autoconf/Makefile.common.lib.in libAfter{Base,Image}/Makefile.in; do
+      substituteInPlace $mkfile \
+        --replace 'test -w /etc' 'false'
+    done
+  '';
+
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ libjpeg libtiff libpng freetype fltk gtk libX11 libXext libICE dbus dbus ];
+  buildInputs = [ libtiff fltk gtk libICE libSM dbus ];
 
   # A strange type of bug: dbus is not immediately found by pkg-config
   preConfigure = ''
diff --git a/nixpkgs/pkgs/applications/window-managers/cage/default.nix b/nixpkgs/pkgs/applications/window-managers/cage/default.nix
index 7aabdf271970..963f86768832 100644
--- a/nixpkgs/pkgs/applications/window-managers/cage/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/cage/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub
-, meson, ninja, pkg-config, wayland, scdoc, makeWrapper
-, wlroots, wayland-protocols, pixman, libxkbcommon
+, meson, ninja, pkg-config, wayland-scanner, scdoc, makeWrapper
+, wlroots, wayland, wayland-protocols, pixman, libxkbcommon
 , systemd, libGL, libX11, mesa
 , xwayland ? null
 , nixosTests
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     sha256 = "0vm96gxinhy48m3x9p1sfldyd03w3gk6iflb7n9kn06j1vqyswr6";
   };
 
-  nativeBuildInputs = [ meson ninja pkg-config wayland scdoc makeWrapper ];
+  nativeBuildInputs = [ meson ninja pkg-config wayland-scanner scdoc makeWrapper ];
 
   buildInputs = [
     wlroots wayland wayland-protocols pixman libxkbcommon
diff --git a/nixpkgs/pkgs/applications/window-managers/i3/lock-blur.nix b/nixpkgs/pkgs/applications/window-managers/i3/lock-blur.nix
new file mode 100644
index 000000000000..a536a44d452b
--- /dev/null
+++ b/nixpkgs/pkgs/applications/window-managers/i3/lock-blur.nix
@@ -0,0 +1,21 @@
+{ i3lock-color, lib, fetchFromGitHub }:
+
+i3lock-color.overrideAttrs (oldAttrs : rec {
+  pname = "i3lock-blur";
+  version = "2.10";
+
+  src = fetchFromGitHub {
+    owner = "karulont";
+    repo = "i3lock-blur";
+    rev = version;
+    sha256 = "sha256-rBQHYVD9rurzTEXrgEnOziOP22D2EePC1+EV9Wi2pa0=";
+  };
+
+  meta = with lib; {
+    description = "An improved screenlocker based upon XCB and PAM with background blurring filter";
+    homepage = "https://github.com/karulont/i3lock-blur/";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ dan4ik605743 ];
+    platforms = platforms.all;
+  };
+})
diff --git a/nixpkgs/pkgs/applications/window-managers/i3/workstyle.nix b/nixpkgs/pkgs/applications/window-managers/i3/workstyle.nix
index b245139abefe..3f7c252c2c33 100644
--- a/nixpkgs/pkgs/applications/window-managers/i3/workstyle.nix
+++ b/nixpkgs/pkgs/applications/window-managers/i3/workstyle.nix
@@ -5,16 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "workstyle";
-  version = "0.2.1";
+  version = "unstable-2021-05-09";
 
   src = fetchFromGitHub {
     owner = "pierrechevalier83";
     repo = pname;
-    rev = "43b0b5bc0a66d40289ff26b8317f50510df0c5f9";
-    sha256 = "0f4hwf236823qmqy31fczjb1hf3fvvac3x79jz2l7li55r6fd8hn";
+    rev = "f2023750d802259ab3ee7d7d1762631ec157a0b1";
+    sha256 = "04xds691sw4pi2nq8xvdhn0312wwia60gkd8b1bjqy11zrqbivbx";
   };
 
-  cargoSha256 = "1hy68wvsxncsy4yx4biigfvwyq18c7yp1g543c6nca15cdzs1c54";
+  cargoSha256 = "0xwv8spr96z4aimjlr15bhwl6i3zqp7jr45d9zr3sbi9d8dbdja2";
 
   doCheck = false; # No tests
 
diff --git a/nixpkgs/pkgs/applications/window-managers/leftwm/default.nix b/nixpkgs/pkgs/applications/window-managers/leftwm/default.nix
index f4b72197f540..e8330ee29368 100644
--- a/nixpkgs/pkgs/applications/window-managers/leftwm/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/leftwm/default.nix
@@ -1,31 +1,32 @@
-{ lib, fetchFromGitHub, rustPlatform, libX11, libXinerama, makeWrapper }:
+{ lib, fetchFromGitHub, rustPlatform, libX11, libXinerama }:
 
 let
-    rpath = lib.makeLibraryPath [ libXinerama libX11 ];
+  rpathLibs = [ libXinerama libX11 ];
 in
 
 rustPlatform.buildRustPackage rec {
   pname = "leftwm";
-  version = "0.2.7";
+  version = "0.2.8";
 
   src = fetchFromGitHub {
     owner = "leftwm";
     repo = "leftwm";
     rev = version;
-    sha256 = "sha256-nRPt+Tyfq62o+3KjsXkHQHUMMslHFGNBd3s2pTb7l4w=";
+    sha256 = "sha256-T4A9NGT6sUSTKmLcAWjcp3Y8QQzZFAVSXevXtGm3szY=";
   };
 
-  cargoSha256 = "sha256-lmzA7XM8B5QJI4Wo0cKeMR3+np6jT6mdGzTry4g87ng=";
+  cargoSha256 = "sha256-2prRtdBxpYc2xI/bLZNlqs3mxESfO9GhNUSlKFF//eE=";
 
-  nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ libX11 libXinerama ];
+  buildInputs = rpathLibs;
 
   postInstall = ''
-    wrapProgram $out/bin/leftwm --prefix LD_LIBRARY_PATH : "${rpath}"
-    wrapProgram $out/bin/leftwm-state --prefix LD_LIBRARY_PATH : "${rpath}"
-    wrapProgram $out/bin/leftwm-worker --prefix LD_LIBRARY_PATH : "${rpath}"
+    for p in $out/bin/leftwm*; do
+      patchelf --set-rpath "${lib.makeLibraryPath rpathLibs}" $p
+    done
   '';
 
+  dontPatchELF = true;
+
   meta = with lib; {
     description = "A tiling window manager for the adventurer";
     homepage = "https://github.com/leftwm/leftwm";
diff --git a/nixpkgs/pkgs/applications/window-managers/openbox/default.nix b/nixpkgs/pkgs/applications/window-managers/openbox/default.nix
index 5e3392b20025..093b6d1884c2 100644
--- a/nixpkgs/pkgs/applications/window-managers/openbox/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/openbox/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     # Use fetchurl to avoid "fetchpatch: ignores file renames" #32084
     # This patch adds python3 support
     (fetchurl {
-      url = "https://git.archlinux.org/svntogit/community.git/plain/openbox/trunk/py3.patch?id=90cb57ef53d952bb6ab4c33a184f815bbe1791c0";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-community/90cb57ef53d952bb6ab4c33a184f815bbe1791c0/openbox/trunk/py3.patch";
       sha256 = "1ks99awlkhd5ph9kz94s1r6m1bfvh42g4rmxd14dyg5b421p1ljc";
     })
   ];
diff --git a/nixpkgs/pkgs/applications/window-managers/phosh/default.nix b/nixpkgs/pkgs/applications/window-managers/phosh/default.nix
index dc1080d97b29..9fa0959ed505 100644
--- a/nixpkgs/pkgs/applications/window-managers/phosh/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/phosh/default.nix
@@ -37,14 +37,14 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "phosh";
-  version = "0.11.0";
+  version = "0.12.0";
 
   src = fetchFromGitLab {
     domain = "source.puri.sm";
     owner = "Librem5";
     repo = pname;
     rev = "v${version}";
-    sha256 = "104qib4blh32s7bg6j3xza3s9syrxrvyh2wpyh5yx7v5wqarr20x";
+    sha256 = "1s0lgq04qz562iri535wpwvfkmmngdpclyl329cf7rc9ihy1kjvs";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/window-managers/sway/bg.nix b/nixpkgs/pkgs/applications/window-managers/sway/bg.nix
index c27405307919..1d5dea76b379 100644
--- a/nixpkgs/pkgs/applications/window-managers/sway/bg.nix
+++ b/nixpkgs/pkgs/applications/window-managers/sway/bg.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "swaybg";
-  version = "1.0";
+  version = "1.1";
 
   src = fetchFromGitHub {
     owner = "swaywm";
     repo = "swaybg";
-    rev = version;
-    sha256 = "1lmqz5bmig90gq2m7lwf02d2g7z4hzf8fhqz78c8vk92c6p4xwbc";
+    rev = "v${version}";
+    sha256 = "17508q9wsw6c1lsxlcbxj74z2naqhwi5c7lkbq24m4lk8qmy0576";
   };
 
   nativeBuildInputs = [ meson ninja pkg-config scdoc wayland-scanner ];
diff --git a/nixpkgs/pkgs/applications/window-managers/sway/default.nix b/nixpkgs/pkgs/applications/window-managers/sway/default.nix
index 97c449ba5dee..e6355f21a6de 100644
--- a/nixpkgs/pkgs/applications/window-managers/sway/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/sway/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, substituteAll, swaybg
-, meson, ninja, pkg-config, wayland, scdoc
-, libxkbcommon, pcre, json_c, libevdev, pango, cairo, libinput, librsvg
+, meson, ninja, pkg-config, wayland-scanner, scdoc
+, wayland, libxkbcommon, pcre, json_c, libevdev, pango, cairo, libinput, librsvg
 , wlroots, wayland-protocols, libdrm
 , gdkPixbufSupport ? true, gdk-pixbuf
 , xwaylandSupport ? !(lib.elem "-Dxwayland=disabled" (wlroots.mesonFlags or []))
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [
-    meson ninja pkg-config wayland scdoc
+    meson ninja pkg-config wayland-scanner scdoc
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/applications/window-managers/tinywl/default.nix b/nixpkgs/pkgs/applications/window-managers/tinywl/default.nix
index ea8a92615a46..965ec67b6e94 100644
--- a/nixpkgs/pkgs/applications/window-managers/tinywl/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/tinywl/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, wlroots, pkg-config
+{ lib, stdenv, wlroots, pkg-config, wayland-scanner
 , libxkbcommon, pixman, udev, wayland, wayland-protocols
 }:
 
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
 
   sourceRoot = "source/tinywl";
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config wayland-scanner ];
   buildInputs = [ libxkbcommon pixman udev wayland wayland-protocols wlroots ];
 
   installPhase = ''
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
 
   meta = with lib; {
     homepage = "https://github.com/swaywm/wlroots/tree/master/tinywl";
-    description = ''"minimum viable product" Wayland compositor based on wlroots.'';
+    description = ''A "minimum viable product" Wayland compositor based on wlroots'';
     maintainers = with maintainers; [ qyliss ];
     license = licenses.cc0;
     inherit (wlroots.meta) platforms;
diff --git a/nixpkgs/pkgs/applications/window-managers/weston/default.nix b/nixpkgs/pkgs/applications/window-managers/weston/default.nix
index 3a11444bcf44..598e78be2643 100644
--- a/nixpkgs/pkgs/applications/window-managers/weston/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/weston/default.nix
@@ -1,5 +1,5 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, wayland
-, libGL, mesa, libxkbcommon, cairo, libxcb
+{ lib, stdenv, fetchurl, meson, ninja, pkg-config, wayland-scanner
+, wayland, libGL, mesa, libxkbcommon, cairo, libxcb
 , libXcursor, xlibsWrapper, udev, libdrm, mtdev, libjpeg, pam, dbus, libinput, libevdev
 , colord, lcms2, pipewire ? null
 , pango ? null, libunwind ? null, freerdp ? null, vaapi ? null, libva ? null
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     sha256 = "1zlql0xgiqc3pvgbpnnvj4xvpd91pwva8qf83xfb23if377ddxaw";
   };
 
-  nativeBuildInputs = [ meson ninja pkg-config wayland ];
+  nativeBuildInputs = [ meson ninja pkg-config wayland-scanner ];
   buildInputs = [
     wayland libGL mesa libxkbcommon cairo libxcb libXcursor xlibsWrapper udev libdrm
     mtdev libjpeg pam dbus libinput libevdev pango libunwind freerdp vaapi libva
diff --git a/nixpkgs/pkgs/applications/window-managers/wmii-hg/default.nix b/nixpkgs/pkgs/applications/window-managers/wmii-hg/default.nix
index 0acad8edbe59..d0c35ab7cbb1 100644
--- a/nixpkgs/pkgs/applications/window-managers/wmii-hg/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/wmii-hg/default.nix
@@ -41,7 +41,6 @@ stdenv.mkDerivation rec {
     description = "A small window manager controlled by a 9P filesystem";
     maintainers = with lib.maintainers; [ kovirobi ];
     license = lib.licenses.mit;
-    inherit version;
     platforms = with lib.platforms; linux;
   };
 }
diff --git a/nixpkgs/pkgs/build-support/appimage/default.nix b/nixpkgs/pkgs/build-support/appimage/default.nix
index 6ba5890885d6..a759726eb104 100644
--- a/nixpkgs/pkgs/build-support/appimage/default.nix
+++ b/nixpkgs/pkgs/build-support/appimage/default.nix
@@ -45,7 +45,7 @@ rec {
       targetPkgs = pkgs: [ appimage-exec ]
         ++ defaultFhsEnvArgs.targetPkgs pkgs ++ extraPkgs pkgs;
 
-      runScript = "appimage-exec.sh -w ${src}";
+      runScript = "appimage-exec.sh -w ${src} --";
     } // (removeAttrs args (builtins.attrNames (builtins.functionArgs wrapAppImage))));
 
   wrapType2 = args@{ name, src, extraPkgs ? pkgs: [ ], ... }: wrapAppImage
diff --git a/nixpkgs/pkgs/build-support/build-fhs-userenv-bubblewrap/default.nix b/nixpkgs/pkgs/build-support/build-fhs-userenv-bubblewrap/default.nix
index 868686bd5c01..23718bf636c6 100644
--- a/nixpkgs/pkgs/build-support/build-fhs-userenv-bubblewrap/default.nix
+++ b/nixpkgs/pkgs/build-support/build-fhs-userenv-bubblewrap/default.nix
@@ -62,6 +62,7 @@ let
       # Fonts
       "fonts"
       # ALSA
+      "alsa"
       "asound.conf"
       # SSL
       "ssl/certs"
diff --git a/nixpkgs/pkgs/build-support/docker/default.nix b/nixpkgs/pkgs/build-support/docker/default.nix
index ffe5d69ec90d..4bda09670abf 100644
--- a/nixpkgs/pkgs/build-support/docker/default.nix
+++ b/nixpkgs/pkgs/build-support/docker/default.nix
@@ -132,6 +132,7 @@ rec {
     cp ${./tarsum.go} tarsum.go
     export GOPATH=$(pwd)
     export GOCACHE="$TMPDIR/go-cache"
+    export GO111MODULE=off
     mkdir -p src/github.com/docker/docker/pkg
     ln -sT ${docker.moby-src}/pkg/tarsum src/github.com/docker/docker/pkg/tarsum
     go build
diff --git a/nixpkgs/pkgs/build-support/emacs/elpa.nix b/nixpkgs/pkgs/build-support/emacs/elpa.nix
index 41a0670d0c84..08257ff25425 100644
--- a/nixpkgs/pkgs/build-support/emacs/elpa.nix
+++ b/nixpkgs/pkgs/build-support/emacs/elpa.nix
@@ -1,6 +1,6 @@
 # builder for Emacs packages built for packages.el
 
-{ lib, stdenv, emacs, texinfo, writeText }:
+{ lib, stdenv, emacs, texinfo, writeText, gcc }:
 
 with lib;
 
@@ -19,7 +19,7 @@ let
 
 in
 
-import ./generic.nix { inherit lib stdenv emacs texinfo writeText; } ({
+import ./generic.nix { inherit lib stdenv emacs texinfo writeText gcc; } ({
 
   phases = "installPhase fixupPhase distPhase";
 
@@ -28,7 +28,7 @@ import ./generic.nix { inherit lib stdenv emacs texinfo writeText; } ({
 
     emacs --batch -Q -l ${./elpa2nix.el} \
         -f elpa2nix-install-package \
-        "${src}" "$out/share/emacs/site-lisp/elpa"
+        "$src" "$out/share/emacs/site-lisp/elpa"
 
     runHook postInstall
   '';
diff --git a/nixpkgs/pkgs/build-support/emacs/generic.nix b/nixpkgs/pkgs/build-support/emacs/generic.nix
index 1456d9e423d8..ef154982ad06 100644
--- a/nixpkgs/pkgs/build-support/emacs/generic.nix
+++ b/nixpkgs/pkgs/build-support/emacs/generic.nix
@@ -1,6 +1,6 @@
 # generic builder for Emacs packages
 
-{ lib, stdenv, emacs, texinfo, writeText, ... }:
+{ lib, stdenv, emacs, texinfo, writeText, gcc, ... }:
 
 with lib;
 
@@ -72,6 +72,8 @@ stdenv.mkDerivation ({
 
   LIBRARY_PATH = "${lib.getLib stdenv.cc.libc}/lib";
 
+  nativeBuildInputs = [ gcc ];
+
   addEmacsNativeLoadPath = true;
 
   postInstall = ''
diff --git a/nixpkgs/pkgs/build-support/emacs/melpa.nix b/nixpkgs/pkgs/build-support/emacs/melpa.nix
index 824611b20c8a..408448f26a0e 100644
--- a/nixpkgs/pkgs/build-support/emacs/melpa.nix
+++ b/nixpkgs/pkgs/build-support/emacs/melpa.nix
@@ -1,7 +1,7 @@
 # builder for Emacs packages built for packages.el
 # using MELPA package-build.el
 
-{ lib, stdenv, fetchFromGitHub, emacs, texinfo, writeText }:
+{ lib, stdenv, fetchFromGitHub, emacs, texinfo, writeText, gcc }:
 
 with lib;
 
@@ -28,7 +28,7 @@ let
 
 in
 
-import ./generic.nix { inherit lib stdenv emacs texinfo writeText; } ({
+import ./generic.nix { inherit lib stdenv emacs texinfo writeText gcc; } ({
 
   ename =
     if ename == null
@@ -38,8 +38,8 @@ import ./generic.nix { inherit lib stdenv emacs texinfo writeText; } ({
   packageBuild = fetchFromGitHub {
     owner = "melpa";
     repo = "package-build";
-    rev = "0a22c3fbbf661822ec1791739953b937a12fa623";
-    sha256 = "0dpy5p34il600sc8ic5jdgb3glya9si3lrvhxab0swks8fdydjgs";
+    rev = "047801d301a73d4932f33f768d94a8ed26b8d524";
+    sha256 = "0ygzkpg7xc3mjjbxg1kcyz6fwbkb0prvca499f0ffmhfaiv28h59";
   };
 
   elpa2nix = ./elpa2nix.el;
@@ -70,7 +70,7 @@ import ./generic.nix { inherit lib stdenv emacs texinfo writeText; } ({
         -L "$NIX_BUILD_TOP/package-build" \
         -l "$melpa2nix" \
         -f melpa2nix-build-package \
-        $ename $version
+        $ename $version $commit
 
     runHook postBuild
     '';
diff --git a/nixpkgs/pkgs/build-support/emacs/melpa2nix.el b/nixpkgs/pkgs/build-support/emacs/melpa2nix.el
index 99c755e2afcb..bd2aadd5aeb5 100644
--- a/nixpkgs/pkgs/build-support/emacs/melpa2nix.el
+++ b/nixpkgs/pkgs/build-support/emacs/melpa2nix.el
@@ -12,5 +12,8 @@
   (if (not noninteractive)
       (error "`melpa2nix-build-package' is to be used only with -batch"))
   (pcase command-line-args-left
-    (`(,package ,version)
+    (`(,package ,version ,commit)
+     ;; Monkey-patch package-build so it doesn't shell out to git/hg.
+     (defun package-build--get-commit (&rest _)
+       commit)
      (package-build--package (package-recipe-lookup package) version))))
diff --git a/nixpkgs/pkgs/build-support/emacs/wrapper.nix b/nixpkgs/pkgs/build-support/emacs/wrapper.nix
index 571d0eb687ce..6b53f3fdd954 100644
--- a/nixpkgs/pkgs/build-support/emacs/wrapper.nix
+++ b/nixpkgs/pkgs/build-support/emacs/wrapper.nix
@@ -32,7 +32,7 @@ in customEmacsPackages.emacs.pkgs.withPackages (epkgs: [ epkgs.evil epkgs.magit
 
 */
 
-{ lib, lndir, makeWrapper, runCommand }: self:
+{ lib, lndir, makeWrapper, runCommand, gcc }: self:
 
 with lib;
 
@@ -65,7 +65,10 @@ runCommand
     # Store all paths we want to add to emacs here, so that we only need to add
     # one path to the load lists
     deps = runCommand "emacs-packages-deps"
-      { inherit explicitRequires lndir emacs; }
+      {
+        inherit explicitRequires lndir emacs;
+        nativeBuildInputs = lib.optional nativeComp gcc;
+      }
       ''
         findInputsOld() {
           local pkg="$1"; shift
diff --git a/nixpkgs/pkgs/build-support/fetchgit/nix-prefetch-git b/nixpkgs/pkgs/build-support/fetchgit/nix-prefetch-git
index 661e0d674c58..8110d670e41c 100755
--- a/nixpkgs/pkgs/build-support/fetchgit/nix-prefetch-git
+++ b/nixpkgs/pkgs/build-support/fetchgit/nix-prefetch-git
@@ -140,7 +140,7 @@ url_to_name(){
     fi
 }
 
-# Fetch everything and checkout the right sha1
+# Fetch and checkout the right sha1
 checkout_hash(){
     local hash="$1"
     local ref="$2"
@@ -149,6 +149,7 @@ checkout_hash(){
         hash=$(hash_from_ref "$ref")
     fi
 
+    clean_git fetch ${builder:+--progress} --depth=1 origin "$hash" || \
     clean_git fetch -t ${builder:+--progress} origin || return 1
 
     local object_type=$(git cat-file -t "$hash")
diff --git a/nixpkgs/pkgs/build-support/fetchurl/mirrors.nix b/nixpkgs/pkgs/build-support/fetchurl/mirrors.nix
index 292baed20dfe..e5095478002a 100644
--- a/nixpkgs/pkgs/build-support/fetchurl/mirrors.nix
+++ b/nixpkgs/pkgs/build-support/fetchurl/mirrors.nix
@@ -19,9 +19,9 @@
   sourceforge = [
     "https://downloads.sourceforge.net/"
     "https://prdownloads.sourceforge.net/"
-    "https://heanet.dl.sourceforge.net/sourceforge/"
-    "https://surfnet.dl.sourceforge.net/sourceforge/"
-    "https://dfn.dl.sourceforge.net/sourceforge/"
+    "https://netcologne.dl.sourceforge.net/sourceforge/"
+    "https://versaweb.dl.sourceforge.net/sourceforge/"
+    "https://freefr.dl.sourceforge.net/sourceforge/"
     "https://osdn.dl.sourceforge.net/sourceforge/"
     "https://kent.dl.sourceforge.net/sourceforge/"
   ];
diff --git a/nixpkgs/pkgs/build-support/icon-conv-tools/default.nix b/nixpkgs/pkgs/build-support/icon-conv-tools/default.nix
index 79d3838e6884..442f1f2235fa 100644
--- a/nixpkgs/pkgs/build-support/icon-conv-tools/default.nix
+++ b/nixpkgs/pkgs/build-support/icon-conv-tools/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, icoutils }:
 
 stdenv.mkDerivation {
-  name = "icon-conv-tools-0.0.0";
+  pname = "icon-conv-tools";
+  version = "0.0.0";
 
   src = ./bin;
 
diff --git a/nixpkgs/pkgs/build-support/libredirect/default.nix b/nixpkgs/pkgs/build-support/libredirect/default.nix
index 70da5bf5b5fb..4678d35442f6 100644
--- a/nixpkgs/pkgs/build-support/libredirect/default.nix
+++ b/nixpkgs/pkgs/build-support/libredirect/default.nix
@@ -1,7 +1,8 @@
 { stdenv, lib, coreutils }:
 
-stdenv.mkDerivation {
-  name = "libredirect-0";
+stdenv.mkDerivation rec {
+  pname = "libredirect";
+  version = "0";
 
   unpackPhase = ''
     cp ${./libredirect.c} libredirect.c
diff --git a/nixpkgs/pkgs/build-support/nix-gitignore/default.nix b/nixpkgs/pkgs/build-support/nix-gitignore/default.nix
index 5d7b945bf1b1..497dcb0660b0 100644
--- a/nixpkgs/pkgs/build-support/nix-gitignore/default.nix
+++ b/nixpkgs/pkgs/build-support/nix-gitignore/default.nix
@@ -41,6 +41,9 @@ in rec {
         let split = match "^(!?)(.*)" l;
         in [(elemAt split 1) (head split == "!")];
 
+      # regex -> regex
+      handleHashesBangs = replaceStrings ["\\#" "\\!"] ["#" "!"];
+
       # ignore -> regex
       substWildcards =
         let
@@ -86,7 +89,7 @@ in rec {
       mapPat = f: l: [(f (head l)) (last l)];
     in
       map (l: # `l' for "line"
-        mapPat (l: handleSlashSuffix (handleSlashPrefix (mapAroundCharclass substWildcards l)))
+        mapPat (l: handleSlashSuffix (handleSlashPrefix (handleHashesBangs (mapAroundCharclass substWildcards l))))
         (computeNegation l))
       (filter (l: !isList l && !isComment l)
       (split "\n" gitignore));
diff --git a/nixpkgs/pkgs/build-support/rust/build-rust-crate/build-crate.nix b/nixpkgs/pkgs/build-support/rust/build-rust-crate/build-crate.nix
index df3129d536dc..3441e2c5e7bf 100644
--- a/nixpkgs/pkgs/build-support/rust/build-rust-crate/build-crate.nix
+++ b/nixpkgs/pkgs/build-support/rust/build-rust-crate/build-crate.nix
@@ -12,7 +12,6 @@
       [
         (if release then "-C opt-level=3" else "-C debuginfo=2")
         "-C codegen-units=$NIX_BUILD_CORES"
-        "-C incremental=no"
         "--remap-path-prefix=$NIX_BUILD_TOP=/"
         (mkRustcDepArgs dependencies crateRenames)
         (mkRustcFeatureArgs crateFeatures)
diff --git a/nixpkgs/pkgs/build-support/rust/build-rust-crate/configure-crate.nix b/nixpkgs/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
index 3eaba1736fcd..d1010ac1adb3 100644
--- a/nixpkgs/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
+++ b/nixpkgs/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
@@ -24,7 +24,7 @@ let version_ = lib.splitString "-" crateVersion;
     version = lib.splitVersion (lib.head version_);
     rustcOpts = lib.foldl' (opts: opt: opts + " " + opt)
         (if release then "-C opt-level=3" else "-C debuginfo=2")
-        (["-C codegen-units=$NIX_BUILD_CORES -C incremental=no"] ++ extraRustcOpts);
+        (["-C codegen-units=$NIX_BUILD_CORES"] ++ extraRustcOpts);
     buildDeps = mkRustcDepArgs buildDependencies crateRenames;
     authors = lib.concatStringsSep ":" crateAuthors;
     optLevel = if release then 3 else 0;
diff --git a/nixpkgs/pkgs/build-support/rust/import-cargo-lock.nix b/nixpkgs/pkgs/build-support/rust/import-cargo-lock.nix
index 244572f79e80..83f4e0df4f2d 100644
--- a/nixpkgs/pkgs/build-support/rust/import-cargo-lock.nix
+++ b/nixpkgs/pkgs/build-support/rust/import-cargo-lock.nix
@@ -63,11 +63,19 @@ let
 
   # We can't use the existing fetchCrate function, since it uses a
   # recursive hash of the unpacked crate.
-  fetchCrate = pkg: fetchurl {
-    name = "crate-${pkg.name}-${pkg.version}.tar.gz";
-    url = "https://crates.io/api/v1/crates/${pkg.name}/${pkg.version}/download";
-    sha256 = pkg.checksum;
-  };
+  fetchCrate = pkg:
+    assert lib.assertMsg (pkg ? checksum) ''
+      Package ${pkg.name} does not have a checksum.
+      Please note that the Cargo.lock format where checksums used to be listed
+      under [metadata] is not supported.
+      If that is the case, running `cargo update` with a recent toolchain will
+      automatically update the format along with the crate's depenendencies.
+    '';
+    fetchurl {
+      name = "crate-${pkg.name}-${pkg.version}.tar.gz";
+      url = "https://crates.io/api/v1/crates/${pkg.name}/${pkg.version}/download";
+      sha256 = pkg.checksum;
+    };
 
   # Fetch and unpack a crate.
   mkCrate = pkg:
diff --git a/nixpkgs/pkgs/build-support/writers/test.nix b/nixpkgs/pkgs/build-support/writers/test.nix
index d0824b17bd1b..00cad9a96b53 100644
--- a/nixpkgs/pkgs/build-support/writers/test.nix
+++ b/nixpkgs/pkgs/build-support/writers/test.nix
@@ -193,7 +193,7 @@ let
     '';
 
 in runCommand "test-writers" {
-  passthru = { inherit writeTest bin simple; };
+  passthru = { inherit writeTest bin simple path; };
   meta.platforms = lib.platforms.all;
 } ''
   ${lib.concatMapStringsSep "\n" (test: writeTest "success" test.name "${test}/bin/${test.name}") (lib.attrValues bin)}
diff --git a/nixpkgs/pkgs/data/documentation/anarchism/default.nix b/nixpkgs/pkgs/data/documentation/anarchism/default.nix
index d0cda3da544c..b9cedffa1948 100644
--- a/nixpkgs/pkgs/data/documentation/anarchism/default.nix
+++ b/nixpkgs/pkgs/data/documentation/anarchism/default.nix
@@ -12,8 +12,6 @@ stdenv.mkDerivation rec {
     sha256 = "04ylk0y5b3jml2awmyz7m1hnymni8y1n83m0k6ychdh0px8frhm5";
   };
 
-  phases = [ "unpackPhase" "postPatch" "installPhase" ];
-
   postPatch = ''
     substituteInPlace debian/anarchism.desktop \
       --replace "/usr/bin/xdg-open" "${xdg-utils}/bin/xdg-open"
diff --git a/nixpkgs/pkgs/data/documentation/gnome-user-docs/default.nix b/nixpkgs/pkgs/data/documentation/gnome-user-docs/default.nix
index e76fee1a6eb8..ded70a91c955 100644
--- a/nixpkgs/pkgs/data/documentation/gnome-user-docs/default.nix
+++ b/nixpkgs/pkgs/data/documentation/gnome-user-docs/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-user-docs";
-  version = "40.1";
+  version = "40.3";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-user-docs/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "09ld9r29nz64s04fmp3b2wwldmfnwxp4w36dkh7mbz5pdd3z7fwk";
+    sha256 = "PeBXr6KsDebKcH9KdsKTLcvFVsHQ0cwCBWXcGHYpLM0=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/data/documentation/man-pages/default.nix b/nixpkgs/pkgs/data/documentation/man-pages/default.nix
index d31272c2a5fb..79a48acd9f24 100644
--- a/nixpkgs/pkgs/data/documentation/man-pages/default.nix
+++ b/nixpkgs/pkgs/data/documentation/man-pages/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "man-pages";
-  version = "5.11";
+  version = "5.12";
 
   src = fetchurl {
     url = "mirror://kernel/linux/docs/man-pages/${pname}-${version}.tar.xz";
-    sha256 = "sha256-PtpdzlGEWZ7Dfa40lM+WTFUDYumkH7ckeS2mEL2xPKo=";
+    sha256 = "07ip4f70nyxn24wy0fin6klq1hm1cjjvzr9zh5baqzssl1hckxbs";
   };
 
-  makeFlags = [ "MANDIR=$(out)/share/man" ];
+  makeFlags = [ "prefix=$(out)" ];
   postInstall = ''
     # conflict with shadow-utils
     rm $out/share/man/man5/passwd.5 \
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Linux development manual pages";
     homepage = "https://www.kernel.org/doc/man-pages/";
-    repositories.git = "http://git.kernel.org/pub/scm/docs/man-pages/man-pages";
+    repositories.git = "https://git.kernel.org/pub/scm/docs/man-pages/man-pages";
     license = licenses.gpl2Plus;
     platforms = with platforms; unix;
     priority = 30; # if a package comes with its own man page, prefer it
diff --git a/nixpkgs/pkgs/data/fonts/andika/default.nix b/nixpkgs/pkgs/data/fonts/andika/default.nix
index 5fa2f1b27108..aaa380098a27 100644
--- a/nixpkgs/pkgs/data/fonts/andika/default.nix
+++ b/nixpkgs/pkgs/data/fonts/andika/default.nix
@@ -1,7 +1,7 @@
 { lib, fetchzip }:
 
 let
-  version = "5.000";
+  version = "6.001";
 in
   fetchzip rec {
     name = "andika-${version}";
@@ -14,7 +14,7 @@ in
       unzip -j $downloadedFile \*OFL.txt \*OFL-FAQ.txt \*README.txt \*FONTLOG.txt -d "$out/share/doc/${name}"
     '';
 
-    sha256 = "1jy9vpcprpd1k48p20wh6jhyn909ibia8lr5i747p41l0s8a7lqy";
+    sha256 = "sha256-ukPFBLjHQbOosQ1h0ImVlz8HhNNMp0e41SjzUhQaZtc=";
 
     meta = with lib; {
       homepage = "https://software.sil.org/andika";
diff --git a/nixpkgs/pkgs/data/fonts/cascadia-code/default.nix b/nixpkgs/pkgs/data/fonts/cascadia-code/default.nix
index a78bf6b4a785..c223f9366af1 100644
--- a/nixpkgs/pkgs/data/fonts/cascadia-code/default.nix
+++ b/nixpkgs/pkgs/data/fonts/cascadia-code/default.nix
@@ -1,13 +1,13 @@
 { lib, fetchzip }:
 let
-  version = "2105.24";
+  version = "2106.17";
 in
 fetchzip {
   name = "cascadia-code-${version}";
 
   url = "https://github.com/microsoft/cascadia-code/releases/download/v${version}/CascadiaCode-${version}.zip";
 
-  sha256 = "sha256-j3IPzrch8oueOmCDa2gpD8uYFs8cKWjkxcmicZcfqQ8=";
+  sha256 = "sha256-EsXD6gY3q3KIk37vYPz731lLz5989cd+s5fz5rKIn2k=";
 
   postFetch = ''
     mkdir -p $out/share/fonts/
diff --git a/nixpkgs/pkgs/data/fonts/charis-sil/default.nix b/nixpkgs/pkgs/data/fonts/charis-sil/default.nix
index 6639cb57d8ba..75f1d89be770 100644
--- a/nixpkgs/pkgs/data/fonts/charis-sil/default.nix
+++ b/nixpkgs/pkgs/data/fonts/charis-sil/default.nix
@@ -1,7 +1,7 @@
 { lib, fetchzip }:
 
 let
-  version = "6.000";
+  version = "6.001";
 in
   fetchzip rec {
     name = "charis-sil-${version}";
@@ -14,7 +14,7 @@ in
       unzip -j $downloadedFile \*OFL.txt \*OFL-FAQ.txt \*README.txt \*FONTLOG.txt -d "$out/share/doc/${name}"
     '';
 
-    sha256 = "sha256-eMmC893rI42qzZVCI17i9XSAbQzXCK2fHVe5Pf1/VnM=";
+    sha256 = "sha256-eKSOvYuTMpAnTk4sRiWFUDJrTsF+K5716ALCepaUU08=";
 
     meta = with lib; {
       homepage = "https://software.sil.org/charis";
diff --git a/nixpkgs/pkgs/data/fonts/comic-neue/default.nix b/nixpkgs/pkgs/data/fonts/comic-neue/default.nix
index df618aea8110..7485d435cb23 100644
--- a/nixpkgs/pkgs/data/fonts/comic-neue/default.nix
+++ b/nixpkgs/pkgs/data/fonts/comic-neue/default.nix
@@ -10,8 +10,6 @@ stdenv.mkDerivation rec {
     stripRoot = false; # because it comes with a __MACOSX directory
   };
 
-  phases = [ "unpackPhase" "installPhase" ];
-
   installPhase = ''
     mkdir -pv $out/share/{doc/${pname}-${version},fonts/{opentype,truetype,WOFF,WOFF2}}
     cp -v ${pname}-${version}/{FONTLOG,OFL-FAQ,OFL}.txt $out/share/doc/
diff --git a/nixpkgs/pkgs/data/fonts/doulos-sil/default.nix b/nixpkgs/pkgs/data/fonts/doulos-sil/default.nix
index 3de4cfc0cae3..a1e686a320ed 100644
--- a/nixpkgs/pkgs/data/fonts/doulos-sil/default.nix
+++ b/nixpkgs/pkgs/data/fonts/doulos-sil/default.nix
@@ -1,7 +1,7 @@
 { lib, fetchzip }:
 
 let
-  version = "5.000";
+  version = "6.001";
 in
   fetchzip rec {
     name = "doulos-sil-${version}";
@@ -14,7 +14,7 @@ in
       unzip -j $downloadedFile \*OFL.txt \*OFL-FAQ.txt \*README.txt \*FONTLOG.txt -d "$out/share/doc/${name}"
     '';
 
-    sha256 = "04a9cr7jbw7d8llcj8xsqp9rp8w6gcgbd9sdwvi02kz7jhqa0vad";
+    sha256 = "sha256-MkeLLT7EAeSuCMxVVxVfajHufxr+xMLIz2hf3wF3U4o=";
 
     meta = with lib; {
       homepage = "https://software.sil.org/doulos";
diff --git a/nixpkgs/pkgs/data/fonts/iosevka/bin.nix b/nixpkgs/pkgs/data/fonts/iosevka/bin.nix
index b399741f9333..27577047ecac 100644
--- a/nixpkgs/pkgs/data/fonts/iosevka/bin.nix
+++ b/nixpkgs/pkgs/data/fonts/iosevka/bin.nix
@@ -22,7 +22,7 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ unzip ];
 
-  phases = [ "unpackPhase" ];
+  dontInstall = true;
 
   unpackPhase = ''
     mkdir -p $out/share/fonts
diff --git a/nixpkgs/pkgs/data/fonts/joypixels/default.nix b/nixpkgs/pkgs/data/fonts/joypixels/default.nix
index 146b832af9c7..593817275669 100644
--- a/nixpkgs/pkgs/data/fonts/joypixels/default.nix
+++ b/nixpkgs/pkgs/data/fonts/joypixels/default.nix
@@ -58,15 +58,15 @@ in
 
 stdenv.mkDerivation rec {
   pname = "joypixels";
-  version = "6.5.0";
+  version = "6.6.0";
 
   src = assert !acceptLicense -> throwLicense;
     with systemSpecific; fetchurl {
       name = fontFile;
       url = "https://cdn.joypixels.com/distributions/${systemTag}/font/${version}/${fontFile}";
       sha256 = {
-        darwin = "034bwxy6ljvhx9zlm6jkb8vw222sg79sjwlcjfql51rk6zkmv4wx";
-      }.${kernel.name} or "1v6hz0qhbnzayxhs5j9qfa2ggn7nak53ij7kr06m93wcmlnnln86";
+        darwin = "0qcmb2vn2nykyikzgnlma627zhks7ksy1vkgvpcmqwyxq4bd38d7";
+      }.${kernel.name} or "17gjaz7353zyprmds64p01qivy2r8pwf88nvvhi57idas2qd604n";
     };
 
   dontUnpack = true;
@@ -82,7 +82,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "The finest emoji you can use legally (formerly EmojiOne)";
     longDescription = ''
-      Updated for 2021! JoyPixels 6.5 includes 3,559 originally crafted icon
+      Updated for 2021! JoyPixels 6.6 includes 3,559 originally crafted icon
       designs and is 100% Unicode 13.1 compatible. We offer the largest
       selection of files ranging from png, svg, iconjar, sprites, and fonts.
     '';
diff --git a/nixpkgs/pkgs/data/fonts/kanit/default.nix b/nixpkgs/pkgs/data/fonts/kanit/default.nix
new file mode 100644
index 000000000000..9b5be79061c1
--- /dev/null
+++ b/nixpkgs/pkgs/data/fonts/kanit/default.nix
@@ -0,0 +1,39 @@
+{ lib, stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "kanit";
+  version = "unstable-2020-06-16";
+
+  src = fetchFromGitHub {
+    owner = "cadsondemak";
+    repo = pname;
+    rev = "467dfe842185681d8042cd608b8291199dd37cda";
+    sha256 = "0p0klb0376r8ki4ap2j99j7jcsq6wgb7m1hf3j1dkncwm7ikmg3h";
+  };
+
+  installPhase = ''
+    mkdir -p $out/share/doc/${pname}/css/ $out/share/fonts/{opentype,truetype}
+
+    cp $src/OFL.txt $src/documentation/{BRIEF.md,features.html} $out/share/doc/${pname}
+    cp $src/documentation/css/fonts.css $out/share/doc/${pname}/css
+    cp $src/fonts/otf/*.otf $out/share/fonts/opentype
+    cp $src/fonts/ttf/*.ttf $out/share/fonts/truetype
+  '';
+
+  meta = with lib; {
+    homepage = "https://cadsondemak.github.io/kanit/";
+    description = "A loopless Thai and sans serif Latin typeface for contemporary and futuristic uses";
+    longDescription = ''
+      Kanit means mathematics in Thai, and the Kanit typeface family is a formal
+      Loopless Thai and Sans Latin design. It is a combination of concepts,
+      mixing a Humanist Sans Serif motif with the curves of Capsulated Geometric
+      styles that makes it suitable for various uses, contemporary and
+      futuristic. A notable detail is that the stroke terminals have flat angles,
+      which allows the design to enjoy decreased spacing between letters while
+      preserving readability and legibility at smaller point sizes.
+    '';
+    license = licenses.ofl;
+    platforms = platforms.all;
+    maintainers = [ maintainers.toastal ];
+  };
+}
diff --git a/nixpkgs/pkgs/data/fonts/lobster-two/default.nix b/nixpkgs/pkgs/data/fonts/lobster-two/default.nix
deleted file mode 100644
index fb1595fe2fc7..000000000000
--- a/nixpkgs/pkgs/data/fonts/lobster-two/default.nix
+++ /dev/null
@@ -1,80 +0,0 @@
-{lib, stdenv, fetchurl}:
-
-let
-
-  # HG revision in which this version of the font can be fount.
-  rev = "8e98053718f9a15184c93d6530885791be71b756";
-
-  urlBase = "https://googlefontdirectory.googlecode.com/hg-history/${rev}/ofl/lobstertwo";
-
-  # Just a small convenience function.
-  fetch = {name, path ? "/src", sha256}:
-    {
-      inherit name;
-      file = fetchurl {
-        url = "${urlBase}${path}/${name}";
-        inherit sha256;
-      };
-    };
-
-  fontlog =
-    fetch {
-      name = "FONTLOG.txt";
-      path = "";
-      sha256 = "0n405i8m70q95y8w43gzr5yvkj7gx7rd3xa4rx6y8qcqv5g7v9if";
-    };
-
-  bold =
-    fetch {
-      name = "LobsterTwo-Bold.otf";
-      sha256 = "0gkayn96vvgngs9xnmcyyf16q4payk79ghvl354rl93ayb3gf7x0";
-    };
-
-  boldItalic =
-    fetch {
-      name = "LobsterTwo-BoldItalic.otf";
-      sha256 = "0wznqkvwjqi9s4bg10fpp2345by3nxa0m0w6b3al3zaqyx2p1dxp";
-    };
-
-  italic =
-    fetch {
-      name = "LobsterTwo-Italic.otf";
-      sha256 = "0lpnzwgwl5fm6gqy8bylbryz0hy94mf1mp615y5sh0wikdvk570z";
-    };
-
-  regular =
-    fetch {
-      name = "LobsterTwo-Regular.otf";
-      sha256 = "147m3sa3sqqbkbw1hgjdwnw8w0y37x58g5p09s7q2vm74flcpbq1";
-    };
-in
-
-  stdenv.mkDerivation rec {
-    pname = "lobstertwo";
-    version = "1.006";
-
-    phases = ["installPhase"];
-
-    installPhase = ''
-      mkdir -p $out/share/fonts/opentype
-      mkdir -p $out/share/doc/${pname}-${version}
-      cp -v ${fontlog.file} $out/share/doc/${pname}-${version}/${fontlog.name}
-      cp -v ${bold.file} $out/share/fonts/opentype/${bold.name}
-      cp -v ${boldItalic.file} $out/share/fonts/opentype/${boldItalic.name}
-      cp -v ${italic.file} $out/share/fonts/opentype/${italic.name}
-      cp -v ${regular.file} $out/share/fonts/opentype/${regular.name}
-    '';
-
-    outputHashAlgo = "sha256";
-    outputHashMode = "recursive";
-    outputHash = "0if9l8pzwgfnbdjg5yblcy08dwn9yj3wzz29l0fycia46xlzd4ym";
-
-    meta = with lib; {
-      homepage = "https://github.com/librefonts/lobstertwo";
-      description = "Script font with many ligatures";
-      license = licenses.ofl;
-      platforms = platforms.all;
-      maintainers = [maintainers.rycee];
-      broken = true; # googlecode.com RIP; can be built from sources
-    };
-  }
diff --git a/nixpkgs/pkgs/data/fonts/meslo-lg/default.nix b/nixpkgs/pkgs/data/fonts/meslo-lg/default.nix
index 7083b9e00313..a55fb65c56c2 100644
--- a/nixpkgs/pkgs/data/fonts/meslo-lg/default.nix
+++ b/nixpkgs/pkgs/data/fonts/meslo-lg/default.nix
@@ -21,7 +21,6 @@ stdenv.mkDerivation rec {
 
   sourceRoot = ".";
 
-  phases = [ "unpackPhase" "installPhase" ];
   unpackPhase = ''
     unzip -j ${meslo-lg}
     unzip -j ${meslo-lg-dz}
diff --git a/nixpkgs/pkgs/data/fonts/noto-fonts/default.nix b/nixpkgs/pkgs/data/fonts/noto-fonts/default.nix
index a2f96a5e980f..31cf42639d07 100644
--- a/nixpkgs/pkgs/data/fonts/noto-fonts/default.nix
+++ b/nixpkgs/pkgs/data/fonts/noto-fonts/default.nix
@@ -155,7 +155,6 @@ in
     '';
 
     meta = with lib; {
-      inherit version;
       description = "Color and Black-and-White emoji fonts";
       homepage = "https://github.com/googlefonts/noto-emoji";
       license = with licenses; [ ofl asl20 ];
diff --git a/nixpkgs/pkgs/data/fonts/unifont/default.nix b/nixpkgs/pkgs/data/fonts/unifont/default.nix
index 507faae53e35..7fb7387179a9 100644
--- a/nixpkgs/pkgs/data/fonts/unifont/default.nix
+++ b/nixpkgs/pkgs/data/fonts/unifont/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ libfaketime fonttosfnt mkfontscale ];
 
-  phases = [ "buildPhase" "installPhase" ];
+  dontUnpack = true;
 
   buildPhase =
     ''
diff --git a/nixpkgs/pkgs/data/fonts/unscii/default.nix b/nixpkgs/pkgs/data/fonts/unscii/default.nix
index 6fdeadf3776f..5b4d2cb740fa 100644
--- a/nixpkgs/pkgs/data/fonts/unscii/default.nix
+++ b/nixpkgs/pkgs/data/fonts/unscii/default.nix
@@ -61,7 +61,6 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "extra" ];
 
   meta = {
-    inherit version;
     description = "Bitmapped character-art-friendly Unicode fonts";
     # Basically GPL2+ with font exception — because of the Unifont-augmented
     # version. The reduced version is public domain.
diff --git a/nixpkgs/pkgs/data/icons/kora-icon-theme/default.nix b/nixpkgs/pkgs/data/icons/kora-icon-theme/default.nix
index a2426e842a6c..9e50fb0c1369 100644
--- a/nixpkgs/pkgs/data/icons/kora-icon-theme/default.nix
+++ b/nixpkgs/pkgs/data/icons/kora-icon-theme/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec  {
   pname = "kora-icon-theme";
-  version = "1.4.3";
+  version = "1.4.4";
 
   src = fetchFromGitHub  {
     owner = "bikass";
     repo = "kora";
     rev = "v${version}";
-    sha256 = "sha256-tSkTwhhugvDTzzcxIln1xq3ZY6boHJR0LRGy20ONO5U=";
+    sha256 = "sha256-79C/M5WXQswA1xuA6pwVSRlDtQC9+EzkwSEV3SdPzBc=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/data/icons/qogir-icon-theme/default.nix b/nixpkgs/pkgs/data/icons/qogir-icon-theme/default.nix
index e647b02f0109..00de4f6760cd 100644
--- a/nixpkgs/pkgs/data/icons/qogir-icon-theme/default.nix
+++ b/nixpkgs/pkgs/data/icons/qogir-icon-theme/default.nix
@@ -1,32 +1,39 @@
-{ lib, stdenv, fetchFromGitHub, gtk3, hicolor-icon-theme }:
+{ lib, stdenv, fetchFromGitHub, gtk3, hicolor-icon-theme, jdupes }:
 
 stdenv.mkDerivation rec {
   pname = "qogir-icon-theme";
-  version = "2020-11-22";
+  version = "2021-07-14";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "04rkpsiz8jg9i55mslsh7a6wgyp30ja3xss7qacqimdab236300d";
+    sha256 = "0anma2ss3yqr9njx4ay2nyxjkgnj7ky17c93ipwgrvgsv8jk5nn2";
   };
 
-  nativeBuildInputs = [ gtk3 ];
+  nativeBuildInputs = [ gtk3 jdupes ];
 
   propagatedBuildInputs = [ hicolor-icon-theme ];
 
   dontDropIconThemeCache = true;
 
+  # These fixup steps are slow and unnecessary.
+  dontPatchELF = true;
+  dontRewriteSymlinks = true;
+
   installPhase = ''
+    runHook preInstall
     patchShebangs install.sh
     mkdir -p $out/share/icons
     name= ./install.sh -d $out/share/icons
+    jdupes -l -r $out/share/icons
+    runHook postInstall
   '';
 
   meta = with lib; {
     description = "Flat colorful design icon theme";
     homepage = "https://github.com/vinceliuice/Qogir-icon-theme";
-    license = with licenses; [ gpl3 ];
+    license = with licenses; [ gpl3Only ];
     platforms = platforms.linux;
     maintainers = with maintainers; [ romildo ];
   };
diff --git a/nixpkgs/pkgs/data/machine-learning/mnist/default.nix b/nixpkgs/pkgs/data/machine-learning/mnist/default.nix
index f5b450b4f2ad..b4c4d43e99ae 100644
--- a/nixpkgs/pkgs/data/machine-learning/mnist/default.nix
+++ b/nixpkgs/pkgs/data/machine-learning/mnist/default.nix
@@ -29,7 +29,7 @@ in
       ln -s "${srcs.test-images}" "$out/${srcs.test-images.name}"
       ln -s "${srcs.test-labels}" "$out/${srcs.test-labels.name}"
     '';
-    phases = [ "installPhase" ];
+    dontUnpack = true;
     meta = with lib; {
       description = "A large database of handwritten digits";
       longDescription = ''
diff --git a/nixpkgs/pkgs/data/misc/cacert/setup-hook.sh b/nixpkgs/pkgs/data/misc/cacert/setup-hook.sh
index 77b68a5c251c..93b682fbbd12 100644
--- a/nixpkgs/pkgs/data/misc/cacert/setup-hook.sh
+++ b/nixpkgs/pkgs/data/misc/cacert/setup-hook.sh
@@ -1,3 +1,7 @@
 export NIX_SSL_CERT_FILE=@out@/etc/ssl/certs/ca-bundle.crt
-# left for compatibility
+
+# compatibility
+#  - openssl
 export SSL_CERT_FILE=@out@/etc/ssl/certs/ca-bundle.crt
+#  - Haskell x509-system
+export SYSTEM_CERTIFICATE_PATH=@out@/etc/ssl/certs/ca-bundle.crt
diff --git a/nixpkgs/pkgs/data/misc/hackage/pin.json b/nixpkgs/pkgs/data/misc/hackage/pin.json
index b44bcc923785..c15f3a011a23 100644
--- a/nixpkgs/pkgs/data/misc/hackage/pin.json
+++ b/nixpkgs/pkgs/data/misc/hackage/pin.json
@@ -1,6 +1,6 @@
 {
-  "commit": "1567e96c400fcd62dfc0d9412881591d6e1e9f22",
-  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/1567e96c400fcd62dfc0d9412881591d6e1e9f22.tar.gz",
-  "sha256": "04z26ypfp3nip2x6gwrv5k1lmckmmi03ry3z97syc72qqj59n9hq",
-  "msg": "Update from Hackage at 2021-06-26T12:56:56Z"
+  "commit": "360e4a3b93ab9fc49673c9d91eebd963ddd7e132",
+  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/360e4a3b93ab9fc49673c9d91eebd963ddd7e132.tar.gz",
+  "sha256": "0pzi0kjlma36s0z5wfcghn6h6lwx61vvq8f7322nz80fs4drpn64",
+  "msg": "Update from Hackage at 2021-07-07T20:16:30Z"
 }
diff --git a/nixpkgs/pkgs/data/misc/osinfo-db/default.nix b/nixpkgs/pkgs/data/misc/osinfo-db/default.nix
index ec0fa407d733..17a63debdc64 100644
--- a/nixpkgs/pkgs/data/misc/osinfo-db/default.nix
+++ b/nixpkgs/pkgs/data/misc/osinfo-db/default.nix
@@ -11,8 +11,6 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ osinfo-db-tools gettext libxml2 ];
 
-  phases = [ "installPhase" ];
-
   installPhase = ''
     osinfo-db-import --dir "$out/share/osinfo" "${src}"
   '';
diff --git a/nixpkgs/pkgs/data/misc/scowl/default.nix b/nixpkgs/pkgs/data/misc/scowl/default.nix
index a4d91eeb037a..15c2699d8bba 100644
--- a/nixpkgs/pkgs/data/misc/scowl/default.nix
+++ b/nixpkgs/pkgs/data/misc/scowl/default.nix
@@ -102,7 +102,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     description = "Spell checker oriented word lists";
     license = lib.licenses.mit;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/data/misc/shared-mime-info/default.nix b/nixpkgs/pkgs/data/misc/shared-mime-info/default.nix
index 63b8467e6cc5..416bf0095188 100644
--- a/nixpkgs/pkgs/data/misc/shared-mime-info/default.nix
+++ b/nixpkgs/pkgs/data/misc/shared-mime-info/default.nix
@@ -39,16 +39,16 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     itstool
-  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     libxml2
-    shared-mime-info
-  ];
+  ] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) shared-mime-info;
 
   buildInputs = [
     libxml2
     glib
   ];
 
+  strictDeps = true;
+
   mesonFlags = [
     "-Dupdate-mimedb=true"
   ];
diff --git a/nixpkgs/pkgs/data/misc/xorg-rgb/default.nix b/nixpkgs/pkgs/data/misc/xorg-rgb/default.nix
index 24689d571da6..056c56b4118e 100644
--- a/nixpkgs/pkgs/data/misc/xorg-rgb/default.nix
+++ b/nixpkgs/pkgs/data/misc/xorg-rgb/default.nix
@@ -11,7 +11,6 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [pkg-config];
   buildInputs = [xorgproto];
   meta = {
-    inherit version;
     description = "X11 colorname to RGB mapping database";
     license = lib.licenses.mit;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/data/themes/flat-remix-gnome/default.nix b/nixpkgs/pkgs/data/themes/flat-remix-gnome/default.nix
index cff5f9115843..f9eed54534cd 100644
--- a/nixpkgs/pkgs/data/themes/flat-remix-gnome/default.nix
+++ b/nixpkgs/pkgs/data/themes/flat-remix-gnome/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flat-remix-gnome";
-  version = "20210623";
+  version = "20210715";
 
   src = fetchFromGitHub {
     owner = "daniruiz";
     repo = pname;
     rev = version;
-    hash = "sha256-FKsbAvjhXb2ipe3XqACM6OwGYwbBbzvDjsUQYCIQ8NM=";
+    hash = "sha256-e7sXzmhfBfcp+KqIc9yuqqXLfYzVlQVn9TNYoa2lZcA=";
   };
 
   nativeBuildInputs = [ glib ];
diff --git a/nixpkgs/pkgs/data/themes/layan-gtk-theme/default.nix b/nixpkgs/pkgs/data/themes/layan-gtk-theme/default.nix
new file mode 100644
index 000000000000..7892fbe9f316
--- /dev/null
+++ b/nixpkgs/pkgs/data/themes/layan-gtk-theme/default.nix
@@ -0,0 +1,38 @@
+{ stdenv
+, fetchFromGitHub
+, lib
+, gtk-engine-murrine
+}:
+
+stdenv.mkDerivation rec {
+  pname = "layan-gtk-theme";
+  version = "2021-06-30";
+
+  src = fetchFromGitHub {
+    owner = "vinceliuice";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-FI8+AJlcPHGOzxN6HUKLtPGLe8JTfTQ9Az9NsvVUK7g=";
+  };
+
+  propagatedUserEnvPkgs = [ gtk-engine-murrine ];
+
+  postPatch = ''
+    patchShebangs install.sh
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/share/themes
+    unset name && ./install.sh -d $out/share/themes
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "A flat Material Design theme for GTK 3, GTK 2 and Gnome-Shell.";
+    homepage = "https://github.com/vinceliuice/Layan-gtk-theme";
+    license = licenses.gpl3Only;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.vanilla ];
+  };
+}
diff --git a/nixpkgs/pkgs/data/themes/matcha/default.nix b/nixpkgs/pkgs/data/themes/matcha/default.nix
index a3d473045e97..bb825c8044e2 100644
--- a/nixpkgs/pkgs/data/themes/matcha/default.nix
+++ b/nixpkgs/pkgs/data/themes/matcha/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "matcha-gtk-theme";
-  version = "2021-06-24";
+  version = "2021-07-08";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "sha256-YEa84y7ZhLqmN0kNSJR2/Txm5pZvSwuqnmckL4XnyjM=";
+    sha256 = "sha256-iTwPN31JvpFlCBWikOeSTda2wBEtg6ygy8o6ovqHPCw=";
   };
 
   buildInputs = [ gdk-pixbuf librsvg ];
diff --git a/nixpkgs/pkgs/data/themes/yaru/default.nix b/nixpkgs/pkgs/data/themes/yaru/default.nix
index b37a921bbab8..40cfaee17dfc 100644
--- a/nixpkgs/pkgs/data/themes/yaru/default.nix
+++ b/nixpkgs/pkgs/data/themes/yaru/default.nix
@@ -42,6 +42,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/ubuntu/yaru";
     license = with licenses; [ cc-by-sa-40 gpl3Plus lgpl21Only lgpl3Only ];
     platforms = platforms.linux;
-    maintainers = with maintainers; [ fortuneteller2k ];
+    maintainers = with maintainers; [ fortuneteller2k maxeaubrey ];
   };
 }
diff --git a/nixpkgs/pkgs/desktops/arcan/arcan.nix b/nixpkgs/pkgs/desktops/arcan/arcan.nix
new file mode 100644
index 000000000000..c6a57ecc3bda
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/arcan/arcan.nix
@@ -0,0 +1,157 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, SDL2
+, cmake
+, espeak
+, ffmpeg
+, file
+, freetype
+, harfbuzz
+, leptonica
+, libGL
+, libX11
+, libXau
+, libXcomposite
+, libXdmcp
+, libXfixes
+, libdrm
+, libffi
+, libusb1
+, libuvc
+, libvlc
+, libvncserver
+, libxcb
+, libxkbcommon
+, luajit
+, makeWrapper
+, mesa
+, openal
+, pkg-config
+, sqlite
+, tesseract
+, valgrind
+, wayland
+, wayland-protocols
+, xcbutil
+, xcbutilwm
+, xz
+, buildManPages ? true, ruby
+}:
+
+let
+  # TODO: investigate vendoring, especially OpenAL
+  # WARN: vendoring of OpenAL is required for running arcan_lwa
+  # INFO: maybe it needs leaveDotGit, but it is dangerous/impure
+  letoram-openal-src = fetchFromGitHub {
+    owner = "letoram";
+    repo = "openal";
+    rev = "1c7302c580964fee9ee9e1d89ff56d24f934bdef";
+    hash = "sha256-InqU59J0zvwJ20a7KU54xTM7d76VoOlFbtj7KbFlnTU=";
+  };
+in
+stdenv.mkDerivation rec {
+  pname = "arcan";
+  version = "0.6.1pre1+unstable=2021-07-10";
+
+  src = fetchFromGitHub {
+    owner = "letoram";
+    repo = "arcan";
+    rev = "25da999e6e03688c71c7df3852314c01ed610e0d";
+    hash = "sha256-+ZF6mD/Z0N/5QCjXe80z4L6JOE33+Yv4ZlwKvlG/c44=";
+  };
+
+  postUnpack = ''
+    (
+     cd $sourceRoot/external/git/
+     cp -a ${letoram-openal-src}/ openal/
+     chmod --recursive 744 openal/
+    )
+  '';
+
+  # TODO: work with upstream in order to get rid of these hardcoded paths
+  postPatch = ''
+    substituteInPlace ./src/platform/posix/paths.c \
+      --replace "/usr/bin" "$out/bin" \
+      --replace "/usr/share" "$out/share"
+
+    substituteInPlace ./src/CMakeLists.txt --replace "SETUID" "# SETUID"
+  '';
+
+  nativeBuildInputs = [
+    cmake
+    makeWrapper
+    pkg-config
+  ] ++ lib.optionals buildManPages [
+    ruby
+  ];
+
+  buildInputs = [
+    SDL2
+    espeak
+    ffmpeg
+    file
+    freetype
+    harfbuzz
+    leptonica
+    libGL
+    libX11
+    libXau
+    libXcomposite
+    libXdmcp
+    libXfixes
+    libdrm
+    libffi
+    libusb1
+    libuvc
+    libvlc
+    libvncserver
+    libxcb
+    libxkbcommon
+    luajit
+    mesa
+    openal
+    sqlite
+    tesseract
+    valgrind
+    wayland
+    wayland-protocols
+    xcbutil
+    xcbutilwm
+    xz
+  ];
+
+  # INFO: According to the source code, the manpages need to be generated before
+  # the configure phase
+  preConfigure = lib.optionalString buildManPages ''
+    (cd doc; ruby docgen.rb mangen)
+  '';
+
+  cmakeFlags = [
+    "-DBUILD_PRESET=everything"
+    # The upstream project recommends tagging the distribution
+    "-DDISTR_TAG=Nixpkgs"
+    "-DENGINE_BUILDTAG=${version}"
+    "-DHYBRID_SDL=on"
+    "-DSTATIC_OPENAL=off"
+    "../src"
+  ];
+
+  hardeningDisable = [
+    "format"
+  ];
+
+  meta = with lib; {
+    homepage = "https://arcan-fe.com/";
+    description = "Combined Display Server, Multimedia Framework, Game Engine";
+    longDescription = ''
+      Arcan is a portable and fast self-sufficient multimedia engine for
+      advanced visualization and analysis work in a wide range of applications
+      e.g. game development, real-time streaming video, monitoring and
+      surveillance, up to and including desktop compositors and window managers.
+    '';
+    license = with licenses; [ bsd3 gpl2Plus lgpl2Plus ];
+    maintainers = with maintainers; [ AndersonTorres ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/desktops/arcan/default.nix b/nixpkgs/pkgs/desktops/arcan/default.nix
new file mode 100644
index 000000000000..874035c4801e
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/arcan/default.nix
@@ -0,0 +1,42 @@
+{ callPackage, lib, pkgs }:
+
+rec {
+  # Dependencies
+
+  espeak = pkgs.espeak-ng;
+  ffmpeg = pkgs.ffmpeg-full;
+  harfbuzz = pkgs.harfbuzzFull;
+
+  # Arcan
+
+  arcan = callPackage ./arcan.nix { };
+  arcan-wrapped = callPackage ./wrapper.nix { };
+  xarcan = callPackage ./xarcan.nix { };
+
+  # Appls
+
+  durden = callPackage ./durden.nix { };
+  durden-wrapped = callPackage ./wrapper.nix {
+    name = "durden-wrapped";
+    appls = [ durden ];
+  };
+
+  pipeworld = callPackage ./pipeworld.nix { };
+  pipeworld-wrapped = callPackage ./wrapper.nix {
+    name = "pipeworld-wrapped";
+    appls = [ pipeworld ];
+  };
+
+  prio = callPackage ./prio.nix { };
+  prio-wrapped = callPackage ./wrapper.nix {
+    name = "prio-wrapped";
+    appls = [ prio ];
+  };
+
+  # One Expression to SymlinkJoin Them All
+
+  everyone-wrapped = callPackage ./wrapper.nix {
+    name = "everyone-wrapped";
+    appls = [ durden pipeworld ];
+  };
+}
diff --git a/nixpkgs/pkgs/desktops/arcan/durden.nix b/nixpkgs/pkgs/desktops/arcan/durden.nix
new file mode 100644
index 000000000000..f6837f96fb6b
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/arcan/durden.nix
@@ -0,0 +1,39 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+}:
+
+stdenv.mkDerivation rec {
+  pname = "durden";
+  version = "0.6.1+unstable=2021-07-11";
+
+  src = fetchFromGitHub {
+    owner = "letoram";
+    repo = pname;
+    rev = "8e0a5c07cade9ad9f606781615c9ebae7b28b6d5";
+    hash = "sha256-4cGuCAeYmmr4ACWt2akVQu2cPqqyE6p+XFaKWcFf3t0=";
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p ${placeholder "out"}/share/arcan/appl/
+    cp -a ./durden ${placeholder "out"}/share/arcan/appl/
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://durden.arcan-fe.com/";
+    description = "Reference Desktop Environment for Arcan";
+    longDescription = ''
+      Durden is a desktop environment for the Arcan Display Server. It serves
+      both as a reference showcase on how to take advantage of some of the
+      features in Arcan, and as a very competent entry to the advanced-user side
+      of the desktop environment spectrum.
+    '';
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ AndersonTorres ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/desktops/arcan/pipeworld.nix b/nixpkgs/pkgs/desktops/arcan/pipeworld.nix
new file mode 100644
index 000000000000..a48ce5044ca0
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/arcan/pipeworld.nix
@@ -0,0 +1,46 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+}:
+
+stdenv.mkDerivation rec {
+  pname = "pipeworld";
+  version = "0.0.0+unstable=2021-05-27";
+
+  src = fetchFromGitHub {
+    owner = "letoram";
+    repo = pname;
+    rev = "c26df9ca0225ce2fd4f89e7ec59d4ab1f94a4c2e";
+    hash = "sha256-RkDAbM1q4o61RGPLPLXHLvbvClp+bfjodlWgUGoODzA=";
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p ${placeholder "out"}/share/arcan/appl/
+    cp -a ./pipeworld ${placeholder "out"}/share/arcan/appl/
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/letoram/pipeworld";
+    description = "Dataflow 'spreadsheet' desktop environment";
+    longDescription = ''
+      Pipeworld is a zooming dataflow tool and desktop heavily inspired by
+      userland. It is built using the arcan desktop engine.
+
+      It combines the programmable processing of shell scripts and pipes, the
+      interactive visual addressing/programming model of spread sheets, the
+      scenegraph- and interactive controls-, IPC- and client processing- of
+      display servers into one model with zoomable tiling window management.
+
+      It can be used as a standalone desktop of its own, or as a normal
+      application within another desktop as a 'substitute' for your normal
+      terminal emulator.
+    '';
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ AndersonTorres ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/desktops/arcan/prio.nix b/nixpkgs/pkgs/desktops/arcan/prio.nix
new file mode 100644
index 000000000000..764d82fae9b7
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/arcan/prio.nix
@@ -0,0 +1,33 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+}:
+
+stdenv.mkDerivation rec {
+  pname = "prio";
+  version = "0.0.0+unstable=2018-09-13";
+
+  src = fetchFromGitHub {
+    owner = "letoram";
+    repo = pname;
+    rev = "c3f97491339d15f063d6937d5f89bcfaea774dd1";
+    hash = "sha256-Idv/duEYmDk/rO+TI8n+FY3VFDtUEh8C292jh12BJuM=";
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p ${placeholder "out"}/share/arcan/appl/prio
+    cp -a ./* ${placeholder "out"}/share/arcan/appl/prio
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/letoram/prio";
+    description = "Plan9- Rio like Window Manager for Arcan";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ AndersonTorres ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/desktops/arcan/wrapper.nix b/nixpkgs/pkgs/desktops/arcan/wrapper.nix
new file mode 100644
index 000000000000..4368b0ad3a59
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/arcan/wrapper.nix
@@ -0,0 +1,28 @@
+{ arcan
+, makeWrapper
+, symlinkJoin
+, appls ? [ ]
+, name ? "arcan-wrapped"
+}:
+
+symlinkJoin rec {
+  inherit name;
+
+  paths = appls ++ [ arcan ];
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  postBuild = ''
+    for prog in ${placeholder "out"}/bin/*; do
+      wrapProgram $prog \
+        --prefix PATH ":" "${placeholder "out"}/bin" \
+        --set ARCAN_APPLBASEPATH "${placeholder "out"}/share/arcan/appl/" \
+        --set ARCAN_BINPATH "${placeholder "out"}/bin/arcan_frameserver" \
+        --set ARCAN_LIBPATH "${placeholder "out"}/lib/" \
+        --set ARCAN_RESOURCEPATH "${placeholder "out"}/share/arcan/resources/" \
+        --set ARCAN_SCRIPTPATH "${placeholder "out"}/share/arcan/scripts/" \
+        --set ARCAN_STATEBASEPATH "\$HOME/.arcan/resources/savestates/"
+    done
+  '';
+}
+# TODO: set ARCAN_FONTPATH to a set of fonts that can be provided in a parameter
diff --git a/nixpkgs/pkgs/desktops/arcan/xarcan.nix b/nixpkgs/pkgs/desktops/arcan/xarcan.nix
new file mode 100644
index 000000000000..9bfd7e290733
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/arcan/xarcan.nix
@@ -0,0 +1,118 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, arcan
+, audit
+, dbus
+, epoxy
+, fontutil
+, libGL
+, libX11
+, libXau
+, libXdmcp
+, libXfont2
+, libdrm
+, libgcrypt
+, libmd
+, libselinux
+, libtirpc
+, libxcb
+, libxkbfile
+, libxshmfence
+, mesa
+, meson
+, nettle
+, ninja
+, openssl
+, pixman
+, pkg-config
+, systemd
+, xcbutil
+, xcbutilwm
+, xkbcomp
+, xkeyboard_config
+, xorgproto
+, xtrans
+}:
+
+stdenv.mkDerivation rec {
+  pname = "xarcan";
+  version = "0.6.0+unstable=2021-06-14";
+
+  src = fetchFromGitHub {
+    owner = "letoram";
+    repo = pname;
+    rev = "98d28a5f2c6860bb191fbc1c9e577c18e4c9a9b7";
+    hash = "sha256-UTIVDKnYD/q0K6G7NJUKh1tHcqnsuiJ/cQxWuPMJ2G4=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+  ];
+
+  buildInputs = [
+    arcan
+    audit
+    dbus
+    epoxy
+    fontutil
+    libGL
+    libX11
+    libXau
+    libXdmcp
+    libXfont2
+    libdrm
+    libgcrypt
+    libmd
+    libselinux
+    libtirpc
+    libxcb
+    libxkbfile
+    libxshmfence
+    mesa
+    nettle
+    openssl
+    pixman
+    systemd
+    xcbutil
+    xcbutilwm
+    xkbcomp
+    xkeyboard_config
+    xorgproto
+    xtrans
+  ];
+
+  configureFlags = [
+    "--disable-int10-module"
+    "--disable-static"
+    "--disable-xnest"
+    "--disable-xorg"
+    "--disable-xvfb"
+    "--disable-xwayland"
+    "--enable-glamor"
+    "--enable-glx"
+    "--enable-ipv6"
+    "--enable-kdrive"
+    "--enable-record"
+    "--enable-xarcan"
+    "--enable-xcsecurity"
+    "--with-xkb-bin-directory=${xkbcomp}/bin"
+    "--with-xkb-output=/tmp"
+    "--with-xkb-path=${xkeyboard_config}/share/X11/xkb"
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/letoram/letoram";
+    description = "Patched Xserver that bridges connections to Arcan";
+    longDescription = ''
+      xarcan is a patched X server with a KDrive backend that uses the
+      arcan-shmif to map Xlib/Xcb/X clients to a running arcan instance. It
+      allows running an X session as a window under Arcan.
+    '';
+    license = licenses.mit;
+    maintainers = with maintainers; [ AndersonTorres ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/desktops/cinnamon/nemo/default.nix b/nixpkgs/pkgs/desktops/cinnamon/nemo/default.nix
index e48b205d1802..c801342ff2c2 100644
--- a/nixpkgs/pkgs/desktops/cinnamon/nemo/default.nix
+++ b/nixpkgs/pkgs/desktops/cinnamon/nemo/default.nix
@@ -22,7 +22,7 @@
 
 stdenv.mkDerivation rec {
   pname = "nemo";
-  version = "5.0.0";
+  version = "5.0.3";
 
   # TODO: add plugins support (see https://github.com/NixOS/nixpkgs/issues/78327)
 
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     owner = "linuxmint";
     repo = pname;
     rev = version;
-    sha256 = "07n9p93iyrzb7636qqwknq8dd3im1y6wb9jfvif96mbvvdwsnfyz";
+    sha256 = "sha256-Ah1Rp/o4LPdYm+wj2W5ljjMkCI3PgoAHrlM8yEQP77o=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-boxes/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-boxes/default.nix
index 8d0e86b1a93b..529596cd6e17 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-boxes/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-boxes/default.nix
@@ -54,11 +54,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-boxes";
-  version = "40.2";
+  version = "40.3";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "hzN1mi2GpWNnWWpTSQRjO4HKqlxFpWNtsulZDHFK6Nk=";
+    sha256 = "//COj0Wkvm0zsKGpY6yzc5ujld6yFZDUOLsepvv3QFg=";
   };
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-maps/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-maps/default.nix
index 0a07428b1b22..779f1855371c 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-maps/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-maps/default.nix
@@ -29,11 +29,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-maps";
-  version = "40.2";
+  version = "40.3";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-g+gVAFTQxLWmPJoJvyx9+YmuaQ7Kwb5r97ExKqpjm9Q=";
+    sha256 = "sha256-p58Fz+u1UMUanGKwgDk2PXDdo90RP+cTR6lCW9cYaIk=";
   };
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/desktops/gnome/core/evince/default.nix b/nixpkgs/pkgs/desktops/gnome/core/evince/default.nix
index f5652d8c64a1..11cd3735e1d5 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/evince/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/evince/default.nix
@@ -44,13 +44,13 @@
 
 stdenv.mkDerivation rec {
   pname = "evince";
-  version = "40.2";
+  version = "40.4";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/evince/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "D/fseTdqipesTNJ00y6ATH4jbvLS1dP2Rt5uuIKmPHc=";
+    sha256 = "M0IFAODgYPF4pDUGMZfULa57Z+OcxDepZRCjPd9+lfs=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-desktop/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-desktop/default.nix
index 56bd074c2cb9..1a7887fc35da 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-desktop/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-desktop/default.nix
@@ -26,13 +26,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-desktop";
-  version = "40.1";
+  version = "40.3";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-desktop/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-igeJcwUhnFaZVJriBI9xVVFe+Xx85NZYXd2hXVhZ4c8=";
+    sha256 = "sha256-U9ZGlEbXoJsCaTZ2nllTUv3zvlYy80a7Af5XyLUWLOs=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix
index c11a1df883a0..ead50f1c9d1a 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix
@@ -27,11 +27,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-disk-utility";
-  version = "40.1";
+  version = "40.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-disk-utility/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-KkuZrBHKIzlLKMVYS56WKE6MWk2mXPBiB95U9Csf8UE=";
+    sha256 = "sha256-ztES6qh9j/ohOv1NC62TnPp662cbeySIWaHchNb1Iec=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix
index 0a7b60b7bca8..f507ef0e4bb6 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix
@@ -35,11 +35,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-initial-setup";
-  version = "40.2";
+  version = "40.3";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "O9cUg/YMDY9yQ5E7kmJe8Vx3iS/uP5MifqXw+XsMWqs=";
+    sha256 = "5QP9HUiFL112qr9iLR7ymWs4TYjaMf0WoQ1RPwmpDdc=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix
index 9ccaf8bd6375..8013e101913e 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extensions";
-  version = "40.2";
+  version = "40.3";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-shell-extensions/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "qFGN1Mg6eE+o05pe1gC/gdY3oY7r5ZDjticYPgv5FPg=";
+    sha256 = "nfh/qVNSAf68o9UI/b97rQFxz3ony2ZN1OPB+WxO0Es=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix
index c1bd10ce2ea3..aa7efdf51c83 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix
@@ -66,13 +66,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "gnome-shell";
-  version = "40.2";
+  version = "40.3";
 
   outputs = [ "out" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-shell/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-Tp2CmwOfoK3TO7ZYP8e04Cjtjc/3r4pXfgnMZpiMKBw=";
+    sha256 = "sha256-erEMbulpmCjdch6/jOHeRk3KqpHUlYI79LhMiTmejCs=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix
index 226b251ec46a..c8e637124ae4 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix
@@ -43,11 +43,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gnome-software";
-  version = "40.2";
+  version = "40.3";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-software/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "y9HdKguvw/U93kIAPEpKA3RsuNZNxdJ+uNvmc27nJ5Y=";
+    sha256 = "y39TbLCfWCyQdVyQl08+g9/5U56it8CWibtOCsP/yF8=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/desktops/gnome/default.nix b/nixpkgs/pkgs/desktops/gnome/default.nix
index ae2255acb911..979ddafc10f0 100644
--- a/nixpkgs/pkgs/desktops/gnome/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/default.nix
@@ -312,7 +312,7 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   # added 2019-02-08
   inherit (pkgs) atk glib gobject-introspection gspell webkitgtk gtk3 gtkmm3
-      libgtop libgudev libhttpseverywhere librsvg libsecret gdk_pixbuf gtksourceview gtksourceviewmm gtksourceview4
+      libgtop libgudev libhttpseverywhere librsvg libsecret gdk-pixbuf gtksourceview gtksourceviewmm gtksourceview4
       easytag meld orca rhythmbox shotwell gnome-usage
       clutter clutter-gst clutter-gtk cogl gtk-vnc libdazzle libgda libgit2-glib libgxps libgdata libgepub libpeas libgee geocode-glib libgweather librest libzapojit libmediaart gfbgraph gexiv2 folks totem-pl-parser gcr gsound libgnomekbd vte vte_290 gnome-menus gdl;
   inherit (pkgs) gsettings-desktop-schemas; # added 2019-04-16
diff --git a/nixpkgs/pkgs/desktops/gnome/devtools/gnome-devel-docs/default.nix b/nixpkgs/pkgs/desktops/gnome/devtools/gnome-devel-docs/default.nix
index 501aaa91c978..ca9b8f7fb81a 100644
--- a/nixpkgs/pkgs/desktops/gnome/devtools/gnome-devel-docs/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/devtools/gnome-devel-docs/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-devel-docs";
-  version = "40.0";
+  version = "40.3";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-devel-docs/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "0zqp01ks8m3s6jn5xqd05rw4fwbvxy5qvcfg9g50b2ar2j7v1ar8";
+    sha256 = "v+jyHcqx70sRVlThchK8sDtqEAgzQIA/SW8ia0oILPY=";
   };
 
   passthru = {
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/EasyScreenCast/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/EasyScreenCast/default.nix
index 57d78bf756ab..f08fc7ec0df6 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/EasyScreenCast/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/EasyScreenCast/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   makeFlags = [ "INSTALLBASE=$(out)/share/gnome-shell/extensions" ];
 
-  uuid = "EasyScreenCast@iacopodeenosee.gmail.com";
+  passthru.extensionUuid = "EasyScreenCast@iacopodeenosee.gmail.com";
 
   meta = with lib; {
     description = "Simplifies the use of the video recording function integrated in gnome shell";
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/appindicator/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/appindicator/default.nix
deleted file mode 100644
index 65576d292a8d..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/appindicator/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, gnome }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-appindicator";
-  version = "37";
-
-  src = fetchFromGitHub {
-    owner = "Ubuntu";
-    repo = "gnome-shell-extension-appindicator";
-    rev = "v${version}";
-    sha256 = "1yss91n94laakzhym409iyjs5gwhln2pkq0zrdrsxc3z70zlslxl";
-  };
-
-  # This package has a Makefile, but it's used for building a zip for
-  # publication to extensions.gnome.org. Disable the build phase so
-  # installing doesn't build an unnecessary release.
-  dontBuild = true;
-
-  uuid = "appindicatorsupport@rgcjonas.gmail.com";
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions/${uuid}
-    cp *.js $out/share/gnome-shell/extensions/${uuid}
-    cp -r interfaces-xml $out/share/gnome-shell/extensions/${uuid}
-    cp metadata.json $out/share/gnome-shell/extensions/${uuid}
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "AppIndicator/KStatusNotifierItem support for GNOME Shell";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ jonafato ];
-    platforms = gnome.gnome-shell.meta.platforms;
-    homepage = "https://github.com/Ubuntu/gnome-shell-extension-appindicator";
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/arcmenu/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/arcmenu/default.nix
index c3ed99b788b8..2720026357d2 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/arcmenu/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/arcmenu/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-arcmenu";
-  version = "10";
+  version = "12";
 
   src = fetchFromGitLab {
     owner = "arcmenu";
     repo = "ArcMenu";
     rev = "v${version}";
-    sha256 = "04kn3gnjz1wakp0pyiwm0alf0pwsralhis36miif9i6l5iv6a394";
+    sha256 = "sha256-R1OUDf/YMyMlxwXM9rNsrasPumHEoYhJK0evnYGeIkA=";
   };
 
   patches = [
@@ -24,7 +24,10 @@ stdenv.mkDerivation rec {
 
   makeFlags = [ "INSTALLBASE=${placeholder "out"}/share/gnome-shell/extensions" ];
 
-  uuid = "arcmenu@arcmenu.com";
+  passthru = {
+    extensionUuid = "arcmenu@arcmenu.com";
+    extensionPortalSlug = "arcmenu";
+  };
 
   meta = with lib; {
     description = "Application menu for GNOME Shell, designed to provide a more traditional user experience and workflow";
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/caffeine/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/caffeine/default.nix
index 8b2d538f4fea..7ac5f916736e 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/caffeine/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/caffeine/default.nix
@@ -11,7 +11,10 @@ stdenv.mkDerivation rec {
     sha256 = "0dyagnjmk91h96xr98mc177c473bqpxcv86qf6g3kyh3arwa9shs";
   };
 
-  uuid = "caffeine@patapon.info";
+  passthru = {
+   extensionPortalSlug = "caffeine";
+   extensionUuid = "caffeine@patapon.info";
+  };
 
   nativeBuildInputs = [
     glib gettext
@@ -27,7 +30,7 @@ stdenv.mkDerivation rec {
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/gnome-shell/extensions
-    cp -r ${uuid} $out/share/gnome-shell/extensions
+    cp -r "caffeine@patapon.info" $out/share/gnome-shell/extensions
     runHook postInstall
   '';
 
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/clipboard-indicator/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/clipboard-indicator/default.nix
deleted file mode 100644
index efdcab6a4634..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/clipboard-indicator/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, gettext, glib }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-clipboard-indicator";
-  version = "38";
-
-  src = fetchFromGitHub {
-    owner = "Tudmotu";
-    repo = "gnome-shell-extension-clipboard-indicator";
-    rev = "v${version}";
-    sha256 = "FNrh3b6la2BuWCsriYP5gG0/KNbkFPuq/YTXTj0aJAI=";
-  };
-
-  uuid = "clipboard-indicator@tudmotu.com";
-
-  nativeBuildInputs = [
-    gettext
-    glib
-  ];
-
-  makeFlags = [
-    "INSTALLPATH=${placeholder "out"}/share/gnome-shell/extensions/${uuid}/"
-  ];
-
-  meta = with lib; {
-    description = "Adds a clipboard indicator to the top panel and saves clipboard history";
-    license = licenses.mit;
-    maintainers = with maintainers; [ jonafato ];
-    platforms = platforms.linux;
-    homepage = "https://github.com/Tudmotu/gnome-shell-extension-clipboard-indicator";
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/clock-override/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/clock-override/default.nix
index 3e02d33857a6..1f749574c40c 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/clock-override/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/clock-override/default.nix
@@ -10,7 +10,10 @@ stdenv.mkDerivation rec {
     stripRoot = false;
   };
 
-  uuid = "clock-override@gnomeshell.kryogenix.org";
+  passthru = {
+    extensionUuid = "clock-override@gnomeshell.kryogenix.org";
+    extensionPortalSlug = "clock-override";
+  };
 
   nativeBuildInputs = [ gettext glib ];
 
@@ -22,8 +25,8 @@ stdenv.mkDerivation rec {
 
   installPhase = ''
     runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions/${uuid}
-    cp -r {convenience.js,extension.js,format.js,locale,metadata.json,prefs.js,schemas} $out/share/gnome-shell/extensions/${uuid}
+    mkdir -p "$out/share/gnome-shell/extensions/clock-override@gnomeshell.kryogenix.org"
+    cp -r {convenience.js,extension.js,format.js,locale,metadata.json,prefs.js,schemas} "$out/share/gnome-shell/extensions/clock-override@gnomeshell.kryogenix.org"
     runHook postInstall
   '';
 
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/dash-to-dock/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/dash-to-dock/default.nix
index 97815a844d75..ebf15cada970 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/dash-to-dock/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/dash-to-dock/default.nix
@@ -24,7 +24,10 @@ stdenv.mkDerivation rec {
     "INSTALLBASE=${placeholder "out"}/share/gnome-shell/extensions"
   ];
 
-  uuid = "dash-to-dock@micxgx.gmail.com";
+  passthru = {
+    extensionUuid = "dash-to-dock@micxgx.gmail.com";
+    extensionPortalSlug = "dash-to-dock";
+  };
 
   meta = with lib; {
     description = "A dock for the Gnome Shell";
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/dash-to-panel/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/dash-to-panel/default.nix
index 728f341589d8..6abff2c7b411 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/dash-to-panel/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/dash-to-panel/default.nix
@@ -17,7 +17,10 @@ stdenv.mkDerivation rec {
 
   makeFlags = [ "INSTALLBASE=$(out)/share/gnome-shell/extensions" ];
 
-  uuid = "dash-to-panel@jderose9.github.com";
+  passthru = {
+    extensionUuid = "dash-to-panel@jderose9.github.com";
+    extensionPortalSlug = "dash-to-panel";
+  };
 
   meta = with lib; {
     description = "An icon taskbar for Gnome Shell";
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/default.nix
index 0e1167561ebe..f98e2fb4e67a 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/default.nix
@@ -1,5 +1,6 @@
 { lib
 , callPackage
+, callPackages
 , config
 }:
 let
@@ -60,14 +61,16 @@ in rec {
   gnome40Extensions = mapUuidNames (produceExtensionsList "40");
 
   gnomeExtensions = lib.recurseIntoAttrs (
-    (mapReadableNames (produceExtensionsList "40"))
-    // (callPackage ./manuallyPackaged.nix {})
+    (mapReadableNames
+      (lib.attrValues (gnome40Extensions // (callPackages ./manuallyPackaged.nix {})))
+    )
     // lib.optionalAttrs (config.allowAliases or true) {
       unite-shell = gnomeExtensions.unite; # added 2021-01-19
       arc-menu = gnomeExtensions.arcmenu; # added 2021-02-14
 
       nohotcorner = throw "gnomeExtensions.nohotcorner removed since 2019-10-09: Since 3.34, it is a part of GNOME Shell configurable through GNOME Tweaks.";
       mediaplayer = throw "gnomeExtensions.mediaplayer deprecated since 2019-09-23: retired upstream https://github.com/JasonLG1979/gnome-shell-extensions-mediaplayer/blob/master/README.md";
+      remove-dropdown-arrows = throw "gnomeExtensions.remove-dropdown-arrows removed since 2021-05-25: The extensions has not seen an update sine GNOME 3.34. Furthermore, the functionality it provides is obsolete as of GNOME 40.";
     }
   );
 }
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/disable-unredirect/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/disable-unredirect/default.nix
deleted file mode 100644
index 166ab61565f8..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/disable-unredirect/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib, stdenv, fetchFromGitHub }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-disable-unredirect";
-  version = "unstable-2021-04-13";
-
-  src = fetchFromGitHub {
-    owner = "kazysmaster";
-    repo = "gnome-shell-extension-disable-unredirect";
-    rev = "2a4c0e6a7a7a5f1aad9907ee2cf43d0725e10c19";
-    sha256 = "06hbyy20xz0bvzg0vs5w4092nyfpg372c86cdm1akcjm72m5sim9";
-  };
-
-  uuid = "unredirect@vaina.lt";
-
-  installPhase = ''
-    runHook preInstall
-
-    mkdir -p $out/share/gnome-shell/extensions
-    cp -R ${uuid} $out/share/gnome-shell/extensions/${uuid}
-
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "Disables unredirect fullscreen windows in gnome-shell to avoid tearing";
-    license = licenses.gpl3Only;
-    homepage = "https://github.com/kazysmaster/gnome-shell-extension-disable-unredirect";
-    maintainers = with maintainers; [ eduardosm ];
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/draw-on-your-screen/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/draw-on-your-screen/default.nix
deleted file mode 100644
index 90e8bffeec97..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/draw-on-your-screen/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib, stdenv, fetchgit, gettext, gnome }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-draw-on-your-screen";
-  version = "10";
-
-  src = fetchgit {
-    url = "https://framagit.org/abakkk/DrawOnYourScreen/";
-    rev = "v${version}";
-    sha256 = "07adzg3mf6k0pmd9lc358w0w3l4pr3p6374day1qhmci2p4zxq6p";
-  };
-
-  uuid = "drawOnYourScreen@abakkk.framagit.org";
-
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions/${uuid}
-    cp -r . $out/share/gnome-shell/extensions/${uuid}
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "A drawing extension for GNOME Shell";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ ericdallo ahuzik ];
-    platforms = gnome.gnome-shell.meta.platforms;
-    homepage = "https://framagit.org/abakkk/DrawOnYourScreen";
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/drop-down-terminal/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/drop-down-terminal/default.nix
index a994e427fb0e..ebcf918df103 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/drop-down-terminal/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/drop-down-terminal/default.nix
@@ -11,7 +11,10 @@ stdenv.mkDerivation rec {
     sha256 = "0igfxgrjdqq6z6xg4rsawxn261pk25g5dw2pm3bhwz5sqsy4bq3i";
   };
 
-  uuid = "drop-down-terminal@gs-extensions.zzrough.org";
+  passthru = {
+    extensionUuid = "drop-down-terminal@gs-extensions.zzrough.org";
+    extensionPortalSlug = "drop-down-terminal";
+  };
 
   patches = [
     (substituteAll {
@@ -23,7 +26,7 @@ stdenv.mkDerivation rec {
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/gnome-shell/extensions
-    cp -r ${uuid} $out/share/gnome-shell/extensions/
+    cp -r "drop-down-terminal@gs-extensions.zzrough.org" $out/share/gnome-shell/extensions/
     runHook postInstall
   '';
 
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/dynamic-panel-transparency/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/dynamic-panel-transparency/default.nix
deleted file mode 100644
index aee636d45346..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/dynamic-panel-transparency/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, gnome, glib }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-dynamic-panel-transparency";
-  version = "unstable-2021-03-04";
-
-  src = fetchFromGitHub {
-    owner = "ewlsh";
-    repo = "dynamic-panel-transparency";
-    rev = "f9e720e98e40c7a2d87928d09a7313c9ef2e832c";
-    sha256 = "0njykxjiwlcmk0q8bsgqaznsryaw43fspfs6rzsjjz5p0xaq04nw";
-  };
-
-  uuid = "dynamic-panel-transparency@rockon999.github.io";
-
-  nativeBuildInputs = [ glib ];
-
-  buildPhase = ''
-    runHook preBuild
-    glib-compile-schemas --strict --targetdir=${uuid}/schemas/ ${uuid}/schemas
-    runHook postBuild
-  '';
-
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions/${uuid}
-    cp -r ${uuid} $out/share/gnome-shell/extensions
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "This extension fades your top panel to nothingness when there are no maximized windows present";
-    license = licenses.gpl3Only;
-    maintainers = with maintainers; [ rhoriguchi ];
-    homepage = "https://github.com/ewlsh/dynamic-panel-transparency";
-    broken = versionOlder gnome.gnome-shell.version "3.36";
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/emoji-selector/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/emoji-selector/default.nix
index 70f09463d121..6f249bcb635d 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/emoji-selector/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/emoji-selector/default.nix
@@ -11,20 +11,23 @@ stdenv.mkDerivation rec {
     sha256 = "0x60pg5nl5d73av494dg29hyfml7fbf2d03wm053vx1q8a3pxbyb";
   };
 
-  uuid = "emoji-selector@maestroschan.fr";
+  passthru = {
+    extensionUuid = "emoji-selector@maestroschan.fr";
+    extensionPortalSlug = "emoji-selector";
+  };
 
   nativeBuildInputs = [ glib ];
 
   buildPhase = ''
     runHook preBuild
-    glib-compile-schemas ./${uuid}/schemas
+    glib-compile-schemas "./emoji-selector@maestroschan.fr/schemas"
     runHook postBuild
   '';
 
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/gnome-shell/extensions
-    cp -r ${uuid} $out/share/gnome-shell/extensions
+    cp -r "emoji-selector@maestroschan.fr" $out/share/gnome-shell/extensions
     runHook postInstall
   '';
 
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/extensionRenames.nix b/nixpkgs/pkgs/desktops/gnome/extensions/extensionRenames.nix
index 912e47a104e9..9df97998891f 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/extensionRenames.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/extensionRenames.nix
@@ -14,6 +14,8 @@
   "lockkeys@fawtytoo" = "lock-keys-2";
 
 
+
+  # ############################################################################
   # These are conflicts for 3.38 extensions. They will very probably come back
   # once more of them support 40.
 
@@ -26,4 +28,24 @@
 
   # That extension is broken because of https://github.com/NixOS/nixpkgs/issues/118612
   #"flypie@schneegans.github.com" = null;
+
+
+
+  # ############################################################################
+  # Overrides for extensions that were manually packaged in the past but are gradually
+  # being replaced by automatic packaging where possible.
+  #
+  # The manually packaged ones:
+  "EasyScreenCast@iacopodeenosee.gmail.com" = "easyScreenCast"; # extensionPortalSlug is "easyscreencast"
+  "gnome-fuzzy-app-search@gnome-shell-extensions.Czarlie.gitlab.com" = "fuzzy-app-search"; # extensionPortalSlug is "gnome-fuzzy-app-search"
+  "TopIcons@phocean.net" = "topicons-plus"; # extensionPortalSlug is "topicons"
+  "paperwm@hedning:matrix.org" = "paperwm"; # is not on extensions.gnome.org
+  "no-title-bar@jonaspoehler.de" = "no-title-bar"; # extensionPortalSlug is "no-title-bar-forked"
+  # These extensions are automatically packaged at the moment. We preserve the old attribute name
+  # for backwards compatibility.
+  "appindicatorsupport@rgcjonas.gmail.com" = "appindicator"; # extensionPortalSlug is "appindicator-support"
+  "unredirect@vaina.lt" = "disable-unredirect"; # extensionPortalSlug is "disable-unredirect-fullscreen-windows"
+  "drawOnYourScreen@abakkk.framagit.org" = "draw-on-your-screen"; # extensionPortalSlug is "draw-on-you-screen"
+  "timepp@zagortenay333" = "timepp"; # extensionPortalSlug is "time"
+  "windowIsReady_Remover@nunofarruca@gmail.com" = "window-is-ready-remover"; # extensionPortalSlug is "window-is-ready-notification-remover"
 }
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/freon/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/freon/default.nix
index 9a884ac78ac7..39224e6245b6 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/freon/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/freon/default.nix
@@ -4,7 +4,10 @@ stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-freon";
   version = "44";
 
-  uuid = "freon@UshakovVasilii_Github.yahoo.com";
+  passthru = {
+    extensionUuid = "freon@UshakovVasilii_Github.yahoo.com";
+    extensionPortalSlug = "freon";
+  };
 
   src = fetchFromGitHub {
     owner = "UshakovVasilii";
@@ -17,14 +20,14 @@ stdenv.mkDerivation rec {
 
   buildPhase = ''
     runHook preBuild
-    glib-compile-schemas --strict --targetdir=${uuid}/schemas ${uuid}/schemas
+    glib-compile-schemas --strict --targetdir="freon@UshakovVasilii_Github.yahoo.com/schemas" "freon@UshakovVasilii_Github.yahoo.com/schemas"
     runHook postBuild
   '';
 
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/gnome-shell/extensions
-    cp -r ${uuid} $out/share/gnome-shell/extensions
+    cp -r "freon@UshakovVasilii_Github.yahoo.com" $out/share/gnome-shell/extensions
     runHook postInstall
   '';
 
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/fuzzy-app-search/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/fuzzy-app-search/default.nix
deleted file mode 100755
index 9ba9ddaf09b1..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/fuzzy-app-search/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib, stdenv, fetchFromGitLab, gnome, glib }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-fuzzy-app-search";
-  version = "4.0.1";
-
-  src = fetchFromGitLab {
-    owner = "Czarlie";
-    repo = "gnome-fuzzy-app-search";
-    rev = "v${version}";
-    sha256 = "127n3jc5d6cl0yrpjf8acdj76br97knks1wx4f6jcswkx9x47w0a";
-  };
-
-  uuid = "gnome-fuzzy-app-search@gnome-shell-extensions.Czarlie.gitlab.com";
-
-  nativeBuildInputs = [ glib ];
-
-  makeFlags = [ "INSTALL_PATH=$(out)/share/gnome-shell/extensions" ];
-
-  meta = with lib; {
-    description = "Fuzzy application search results for Gnome Search";
-    license = licenses.gpl3Only;
-    maintainers = with maintainers; [ rhoriguchi ];
-    homepage = "https://gitlab.com/Czarlie/gnome-fuzzy-app-search";
-    broken = versionOlder gnome.gnome-shell.version "3.18";
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/gsconnect/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/gsconnect/default.nix
index a777da990d83..96451d325bb0 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/gsconnect/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/gsconnect/default.nix
@@ -98,7 +98,10 @@ stdenv.mkDerivation rec {
     done
   '';
 
-  uuid = "gsconnect@andyholmes.github.io";
+  passthru = {
+    extensionUuid = "gsconnect@andyholmes.github.io";
+    extensionPortalSlug = "gsconnect";
+  };
 
   passthru = {
     tests = {
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/gtile/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/gtile/default.nix
deleted file mode 100644
index 3430dff1355b..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/gtile/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ stdenv, lib, fetchFromGitHub }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-gtile";
-  version = "44";
-
-  src = fetchFromGitHub {
-    owner = "gTile";
-    repo = "gTile";
-    rev = "V${version}";
-    sha256 = "0i00psc1ky70zljd14jzr627y7nd8xwnwrh4xpajl1f6djabh12s";
-  };
-
-  uuid = "gTile@vibou";
-
-  installPhase = ''
-    runHook preInstall
-
-    mkdir -p $out/share/gnome-shell/extensions/${uuid}
-    cp -r * $out/share/gnome-shell/extensions/${uuid}
-
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "A window tiling extension for Gnome. This is the new official home of the vibou.gTile extension.";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ mdsp ];
-    platforms = platforms.linux;
-    homepage = "https://github.com/gTile/gTile";
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/hot-edge/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/hot-edge/default.nix
deleted file mode 100644
index aaa5870996ab..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/hot-edge/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-}:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-hot-edge";
-  version = "jdoda";
-
-  src = fetchFromGitHub {
-    owner = "jdoda";
-    repo = "hotedge";
-    rev = "bb7f651becea5287241caf7cda246a68ab07dac8";
-    sha256 = "oeTs0kRan6b5relxzhK1IKbV0Yv2d5YdvvUPJ3fM9ik=";
-  };
-
-  dontBuild = true;
-
-  uuid = "hotedge@jonathan.jdoda.ca";
-
-  installPhase = ''
-    runHook preInstall
-    install -Dt $out/share/gnome-shell/extensions/${uuid} extension.js metadata.json stylesheet.css
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "Replace the top-left hot corner with a bottom hot edge";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ jtojnar ];
-    homepage = "https://github.com/jdoda/hotedge";
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/icon-hider/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/icon-hider/default.nix
index 820d96988c9a..b5b2ae8ec747 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/icon-hider/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/icon-hider/default.nix
@@ -11,12 +11,15 @@ stdenv.mkDerivation rec {
     sha256 = "18c8zkdrmdbghqqz7b450vhgpykgz25mgigwn2nggcb2lxmvm9ks";
   };
 
-  uuid = "icon-hider@kalnitsky.org";
+  passthru = {
+    extensionUuid = "icon-hider@kalnitsky.org";
+    extensionPortalSlug = "icon-hider";
+  };
 
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/gnome-shell/extensions
-    cp -r ${uuid} $out/share/gnome-shell/extensions
+    cp -r "icon-hider@kalnitsky.org" $out/share/gnome-shell/extensions
     runHook postInstall
   '';
 
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/impatience/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/impatience/default.nix
index 95477222163c..867534ba61d0 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/impatience/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/impatience/default.nix
@@ -24,11 +24,14 @@ stdenv.mkDerivation rec {
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/gnome-shell/extensions
-    cp -r impatience $out/share/gnome-shell/extensions/${uuid}
+    cp -r impatience "$out/share/gnome-shell/extensions/impatience@gfxmonk.net"
     runHook postInstall
   '';
 
-  uuid = "impatience@gfxmonk.net";
+  passthru = {
+    extensionUuid = "impatience@gfxmonk.net";
+    extensionPortalSlug = "impatience";
+  };
 
   meta = with lib; {
     description = "Speed up builtin gnome-shell animations";
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/manuallyPackaged.nix b/nixpkgs/pkgs/desktops/gnome/extensions/manuallyPackaged.nix
index 207ba6979c90..3e99f3143d24 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/manuallyPackaged.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/manuallyPackaged.nix
@@ -1,40 +1,26 @@
 { callPackage }:
 {
-  appindicator = callPackage ./appindicator { };
-  arcmenu = callPackage ./arcmenu { };
-  caffeine = callPackage ./caffeine { };
-  clipboard-indicator = callPackage ./clipboard-indicator { };
-  clock-override = callPackage ./clock-override { };
-  dash-to-dock = callPackage ./dash-to-dock { };
-  dash-to-panel = callPackage ./dash-to-panel { };
-  disable-unredirect = callPackage ./disable-unredirect { };
-  draw-on-your-screen = callPackage ./draw-on-your-screen { };
-  drop-down-terminal = callPackage ./drop-down-terminal { };
-  dynamic-panel-transparency = callPackage ./dynamic-panel-transparency { };
-  easyScreenCast = callPackage ./EasyScreenCast { };
-  emoji-selector = callPackage ./emoji-selector { };
-  freon = callPackage ./freon { };
-  fuzzy-app-search = callPackage ./fuzzy-app-search { };
-  gsconnect = callPackage ./gsconnect { };
-  hot-edge = callPackage ./hot-edge { };
-  icon-hider = callPackage ./icon-hider { };
-  impatience = callPackage ./impatience { };
-  material-shell = callPackage ./material-shell { };
-  mpris-indicator-button = callPackage ./mpris-indicator-button { };
-  night-theme-switcher = callPackage ./night-theme-switcher { };
-  no-title-bar = callPackage ./no-title-bar { };
-  noannoyance = callPackage ./noannoyance { };
-  paperwm = callPackage ./paperwm { };
-  pidgin-im-integration = callPackage ./pidgin-im-integration { };
-  remove-dropdown-arrows = callPackage ./remove-dropdown-arrows { };
-  sound-output-device-chooser = callPackage ./sound-output-device-chooser { };
-  system-monitor = callPackage ./system-monitor { };
-  taskwhisperer = callPackage ./taskwhisperer { };
-  tilingnome = callPackage ./tilingnome { };
-  timepp = callPackage ./timepp { };
-  topicons-plus = callPackage ./topicons-plus { };
-  unite = callPackage ./unite { };
-  window-corner-preview = callPackage ./window-corner-preview { };
-  window-is-ready-remover = callPackage ./window-is-ready-remover { };
-  workspace-matrix = callPackage ./workspace-matrix { };
+  "arcmenu@arcmenu.com" = callPackage ./arcmenu { };
+  "caffeine@patapon.info" = callPackage ./caffeine { };
+  "clock-override@gnomeshell.kryogenix.org" = callPackage ./clock-override { };
+  "dash-to-dock@micxgx.gmail.com" = callPackage ./dash-to-dock { };
+  "dash-to-panel@jderose9.github.com" = callPackage ./dash-to-panel { };
+  "drop-down-terminal@gs-extensions.zzrough.org" = callPackage ./drop-down-terminal { };
+  "EasyScreenCast@iacopodeenosee.gmail.com" = callPackage ./EasyScreenCast { };
+  "emoji-selector@maestroschan.fr" = callPackage ./emoji-selector { };
+  "freon@UshakovVasilii_Github.yahoo.com" = callPackage ./freon { };
+  "gsconnect@andyholmes.github.io" = callPackage ./gsconnect { };
+  "icon-hider@kalnitsky.org" = callPackage ./icon-hider { };
+  "impatience@gfxmonk.net" = callPackage ./impatience { };
+  "nightthemeswitcher@romainvigier.fr" = callPackage ./night-theme-switcher { };
+  "no-title-bar@jonaspoehler.de" = callPackage ./no-title-bar { };
+  "paperwm@hedning:matrix.org" = callPackage ./paperwm { };
+  "pidgin@muffinmad" = callPackage ./pidgin-im-integration { };
+  "sound-output-device-chooser@kgshank.net" = callPackage ./sound-output-device-chooser { };
+  "system-monitor@paradoxxx.zero.gmail.com" = callPackage ./system-monitor { };
+  "taskwhisperer-extension@infinicode.de" = callPackage ./taskwhisperer { };
+  "tilingnome@rliang.github.com" = callPackage ./tilingnome { };
+  "TopIcons@phocean.net" = callPackage ./topicons-plus { };
+  "unite@hardpixel.eu" = callPackage ./unite { };
+  "window-corner-preview@fabiomereu.it" = callPackage ./window-corner-preview { };
 }
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/material-shell/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/material-shell/default.nix
deleted file mode 100644
index 9b683c1af6b5..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/material-shell/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ stdenv, lib, fetchFromGitHub, gnome }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-material-shell";
-  version = "12";
-
-  src = fetchFromGitHub {
-    owner = "material-shell";
-    repo = "material-shell";
-    rev = version;
-    sha256 = "0ikrh70drwr0pqjcdz7l1ky8xllpnk7myprjd4s61nqkx9j2iz44";
-  };
-
-  # This package has a Makefile, but it's used for building a zip for
-  # publication to extensions.gnome.org. Disable the build phase so
-  # installing doesn't build an unnecessary release.
-  dontBuild = true;
-
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions/${uuid}
-    cp -r * $out/share/gnome-shell/extensions/${uuid}/
-    runHook postInstall
-  '';
-
-  uuid = "material-shell@papyelgringo";
-
-  meta = with lib; {
-    description = "A modern desktop interface for Linux";
-    license = licenses.mit;
-    maintainers = with maintainers; [ benley ];
-    homepage = "https://github.com/material-shell/material-shell";
-    platforms = gnome.gnome-shell.meta.platforms;
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/mpris-indicator-button/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/mpris-indicator-button/default.nix
deleted file mode 100644
index 8d9faaa89add..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/mpris-indicator-button/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ lib, stdenv
-, fetchFromGitHub
-, nix-update-script
-, gnome
-}:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-mpris-indicator-button-unstable";
-  version = "2020-03-21";
-
-  src = fetchFromGitHub {
-    owner = "JasonLG1979";
-    repo = "gnome-shell-extension-mpris-indicator-button";
-    rev = "de54160e7d905b8c48c0fe30a437f7c51efc1aa3";
-    sha256 = "0n5qlx51fxjq1nn10zhdwfy905j20sv7pwh2jc6fns757ac4pwwk";
-  };
-
-  uuid = "mprisindicatorbutton@JasonLG1979.github.io";
-
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions
-    cp -r ${uuid} $out/share/gnome-shell/extensions
-    runHook postInstall
-  '';
-
-  passthru = {
-    updateScript = nix-update-script {
-      attrPath = "gnomeExtensions.${pname}";
-    };
-  };
-
-
-  meta = with lib; {
-    description = "A simple MPRIS indicator button for GNOME Shell";
-    license = licenses.gpl3;
-    maintainers = with maintainers; [ ];
-    platforms = gnome.gnome-shell.meta.platforms;
-    homepage = "https://github.com/JasonLG1979/gnome-shell-extension-mpris-indicator-button";
-    broken = versionOlder gnome.gnome-shell.version "3.34";
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/night-theme-switcher/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/night-theme-switcher/default.nix
index a7ee6d566d42..d57ccdcff837 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/night-theme-switcher/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/night-theme-switcher/default.nix
@@ -14,12 +14,15 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ unzip ];
   buildInputs = [ glib gnome.gnome-shell ];
 
-  uuid = "nightthemeswitcher@romainvigier.fr";
+  passthru = {
+    extensionUuid = "nightthemeswitcher@romainvigier.fr";
+    extensionPortalSlug = "night-theme-switcher";
+  };
 
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/gnome-shell/extensions/
-    unzip build/${uuid}.shell-extension.zip -d $out/share/gnome-shell/extensions/${uuid}
+    unzip "build/nightthemeswitcher@romainvigier.fr.shell-extension.zip" -d "$out/share/gnome-shell/extensions/nightthemeswitcher@romainvigier.fr"
     runHook postInstall
   '';
 
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/no-title-bar/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/no-title-bar/default.nix
index ad588be18ce9..e46b49c8f6ea 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/no-title-bar/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/no-title-bar/default.nix
@@ -23,7 +23,9 @@ stdenv.mkDerivation rec {
 
   makeFlags = [ "INSTALLBASE=$(out)/share/gnome-shell/extensions" ];
 
-  uuid = "no-title-bar@jonaspoehler.de";
+  passthru = {
+    extensionUuid = "no-title-bar@jonaspoehler.de";
+  };
 
   meta = with lib; {
     description = "Integrates maximized windows with the top panel";
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/noannoyance/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/noannoyance/default.nix
deleted file mode 100644
index 1a53e6abd550..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/noannoyance/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ stdenv
-, lib
-, fetchFromGitHub }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-noannoyance";
-  version = "unstable-2021-01-17";
-
-  src = fetchFromGitHub {
-    owner = "BjoernDaase";
-    repo = "noannoyance";
-    rev = "f6e76916336aee2f7c4141796f3c40c870d2b347";
-    sha256 = "1iy3nif8rjjcwf83fg9ds93fi7vmhliynmlwqnx036s3msmxvgs3";
-  };
-
-  uuid = "noannoyance@daase.net";
-
-  dontBuild = true;
-
-  installPhase = ''
-    mkdir -p $out/share/gnome-shell/extensions/${uuid}
-    cp metadata.json extension.js $out/share/gnome-shell/extensions/${uuid}
-  '';
-
-  meta = with lib; {
-    description = "Removes the 'Window is ready' notification and puts the window into focus";
-    homepage = "https://github.com/BjoernDaase/noannoyance";
-    license = licenses.gpl2Only;
-    maintainers = with maintainers; [ tu-maurice ];
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/paperwm/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/paperwm/default.nix
index 201628b4b424..627c4b3f2c3f 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/paperwm/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/paperwm/default.nix
@@ -11,14 +11,14 @@ stdenv.mkDerivation rec {
     sha256 = "1jq15qrq3khqpjsjbcc17amdr1k53jkvambdacdf56xbqkycvlgs";
   };
 
-  uuid = "paperwm@hedning:matrix.org";
+  passthru.extensionUuid = "paperwm@hedning:matrix.org";
 
   dontBuild = true;
 
   installPhase = ''
     runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions/${uuid}
-    cp -r . $out/share/gnome-shell/extensions/${uuid}
+    mkdir -p "$out/share/gnome-shell/extensions/paperwm@hedning:matrix.org"
+    cp -r . "$out/share/gnome-shell/extensions/paperwm@hedning:matrix.org"
     runHook postInstall
   '';
 
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/pidgin-im-integration/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/pidgin-im-integration/default.nix
index 93ffcda830a1..92e0bfe94d70 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/pidgin-im-integration/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/pidgin-im-integration/default.nix
@@ -23,7 +23,10 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
-  uuid = "pidgin@muffinmad";
+  passthru = {
+    extensionUuid = "pidgin@muffinmad";
+    extensionPortalSlug = "pidgin-im-integration";
+  };
 
   meta = with lib; {
     homepage = "https://github.com/muffinmad/pidgin-im-gnome-shell-extension";
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/remove-dropdown-arrows/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/remove-dropdown-arrows/default.nix
deleted file mode 100644
index e310f5dcf10c..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/remove-dropdown-arrows/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib, stdenv, fetchFromGitHub }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-remove-dropdown-arrows";
-  version = "13";
-
-  src = fetchFromGitHub {
-    owner = "mpdeimos";
-    repo = "gnome-shell-remove-dropdown-arrows";
-    rev = "version/${version}";
-    sha256 = "09b2hnfbqym20pb1sfc8xiz7gs2kbs6b1s7xl8swc8dydhsbambk";
-  };
-
-  # This package has a Makefile, but it's used for publishing and linting, not
-  # for building. Disable the build phase so installing doesn't attempt to
-  # publish the extension.
-  dontBuild = true;
-
-  uuid = "remove-dropdown-arrows@mpdeimos.com";
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions/${uuid}
-    cp extension.js $out/share/gnome-shell/extensions/${uuid}
-    cp metadata.json $out/share/gnome-shell/extensions/${uuid}
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "Remove dropdown arrows from GNOME Shell Menus";
-    license = licenses.gpl3;
-    maintainers = with maintainers; [ jonafato ];
-    homepage = "https://github.com/mpdeimos/gnome-shell-remove-dropdown-arrows";
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/sound-output-device-chooser/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/sound-output-device-chooser/default.nix
index f01a2cd545e0..e439e5b5a50a 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/sound-output-device-chooser/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/sound-output-device-chooser/default.nix
@@ -27,7 +27,10 @@ stdenv.mkDerivation rec {
 
   dontBuild = true;
 
-  uuid = "sound-output-device-chooser@kgshank.net";
+  passthru = {
+    extensionUuid = "sound-output-device-chooser@kgshank.net";
+    extensionPortalSlug = "sound-output-device-chooser";
+  };
 
   makeFlags = [
     "INSTALL_DIR=${placeholder "out"}/share/gnome-shell/extensions"
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/system-monitor/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/system-monitor/default.nix
index 0a959de26819..439f02622a64 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/system-monitor/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/system-monitor/default.nix
@@ -28,18 +28,21 @@ stdenv.mkDerivation rec {
 
   buildPhase = ''
     runHook preBuild
-    glib-compile-schemas --targetdir=${uuid}/schemas ${uuid}/schemas
+    glib-compile-schemas --targetdir="system-monitor@paradoxxx.zero.gmail.com/schemas" "system-monitor@paradoxxx.zero.gmail.com/schemas"
     runHook postBuild
   '';
 
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/gnome-shell/extensions
-    cp -r ${uuid} $out/share/gnome-shell/extensions
+    cp -r "system-monitor@paradoxxx.zero.gmail.com" $out/share/gnome-shell/extensions
     runHook postInstall
   '';
 
-  uuid = "system-monitor@paradoxxx.zero.gmail.com";
+  passthru = {
+    extensionUuid = "system-monitor@paradoxxx.zero.gmail.com";
+    extensionPortalSlug = "system-monitor";
+  };
 
   meta = with lib; {
     description = "Display system informations in gnome shell status bar";
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/taskwhisperer/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/taskwhisperer/default.nix
index 68d07e2d1429..19936f6be61d 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/taskwhisperer/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/taskwhisperer/default.nix
@@ -19,7 +19,10 @@ stdenv.mkDerivation rec {
     taskwarrior
   ];
 
-  uuid = "taskwhisperer-extension@infinicode.de";
+  passthru = {
+    extensionUuid = "taskwhisperer-extension@infinicode.de";
+    extensionPortalSlug = "taskwhisperer";
+  };
 
   makeFlags = [
     "INSTALLBASE=${placeholder "out"}/share/gnome-shell/extensions"
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/tilingnome/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/tilingnome/default.nix
index c1ca77d9d73f..42c6467dba80 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/tilingnome/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/tilingnome/default.nix
@@ -21,12 +21,15 @@ stdenv.mkDerivation rec {
 
   installPhase = ''
     runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions/${uuid}
-    cp -r * $out/share/gnome-shell/extensions/${uuid}/
+    mkdir -p "$out/share/gnome-shell/extensions/tilingnome@rliang.github.com"
+    cp -r * "$out/share/gnome-shell/extensions/tilingnome@rliang.github.com/"
     runHook postInstall
   '';
 
-  uuid = "tilingnome@rliang.github.com";
+  passthru = {
+    extensionUuid = "tilingnome@rliang.github.com";
+    extensionPortalSlug = "tilingnome";
+  };
 
   meta = with lib; {
     description = "Tiling window management for GNOME Shell";
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/timepp/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/timepp/default.nix
deleted file mode 100644
index cb4234a2513c..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/timepp/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, gnome }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-timepp";
-  version = "unstable-2020-03-15";
-
-  src = fetchFromGitHub {
-    owner = "zagortenay333";
-    repo = "timepp__gnome";
-    rev = "34ae477a51267cc1e85992a80cf85a1a7b7005c1";
-    sha256 = "1v0xbrp0x5dwizscxh7h984pax4n92bj8iyw3qvjk27ynpxq8ag1";
-  };
-
-  uuid = "timepp@zagortenay333";
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions/${uuid}
-    cp -r . $out/share/gnome-shell/extensions/${uuid}
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "A todo.txt manager, time tracker, timer, stopwatch, pomodoro, and alarms gnome-shell extension.";
-    homepage = "https://github.com/zagortenay333/timepp__gnome";
-    license = licenses.gpl3;
-    maintainers = with maintainers; [ svsdep ];
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/topicons-plus/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/topicons-plus/default.nix
index 084548e1a105..eedfeb098c03 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/topicons-plus/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/topicons-plus/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   makeFlags = [ "INSTALL_PATH=$(out)/share/gnome-shell/extensions" ];
 
-  uuid = "TopIcons@phocean.net";
+  passthru.extensionUuid = "TopIcons@phocean.net";
 
   meta = with lib; {
     description = "Brings all icons back to the top panel, so that it's easier to keep track of apps running in the backround";
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/unite/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/unite/default.nix
index 228cb7061505..776139b36867 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/unite/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/unite/default.nix
@@ -11,7 +11,10 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-Ys2kWPj/FugW/LkvLAZdbj7Ufg/KShC+EX6QrjKNVH8=";
   };
 
-  uuid = "unite@hardpixel.eu";
+  passthru = {
+    extensionUuid = "unite@hardpixel.eu";
+    extensionPortalSlug = "unite";
+  };
 
   nativeBuildInputs = [ glib ];
 
@@ -19,14 +22,14 @@ stdenv.mkDerivation rec {
 
   buildPhase = ''
     runHook preBuild
-    glib-compile-schemas --strict --targetdir=${uuid}/schemas/ ${uuid}/schemas
+    glib-compile-schemas --strict --targetdir="unite@hardpixel.eu/schemas/" "unite@hardpixel.eu/schemas"
     runHook postBuild
   '';
 
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/gnome-shell/extensions
-    cp -r ${uuid} $out/share/gnome-shell/extensions
+    cp -r "unite@hardpixel.eu" $out/share/gnome-shell/extensions
     runHook postInstall
   '';
 
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/window-corner-preview/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/window-corner-preview/default.nix
index 0e71345bb8a7..ef0e22b7abed 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/window-corner-preview/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/window-corner-preview/default.nix
@@ -13,11 +13,15 @@ stdenv.mkDerivation rec {
 
   dontBuild = true;
 
-  uuid = "window-corner-preview@fabiomereu.it";
+  passthru = {
+    extensionUuid = "window-corner-preview@fabiomereu.it";
+    extensionPortalSlug = "window-corner-preview";
+  };
+
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/gnome-shell/extensions
-    cp -r ${uuid} $out/share/gnome-shell/extensions
+    cp -r "window-corner-preview@fabiomereu.it" $out/share/gnome-shell/extensions
     runHook postInstall
   '';
 
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/window-is-ready-remover/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/window-is-ready-remover/default.nix
deleted file mode 100644
index 3f0e9e71b571..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/window-is-ready-remover/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ lib, stdenv, fetchFromGitHub }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-window-is-ready-remover";
-  version = "1.02";
-
-  src = fetchFromGitHub {
-    owner = "nunofarruca";
-    repo = "WindowIsReady_Remover";
-    rev = "v${version}";
-    sha256 = "1xaf95gn0if44avvkjxyf8fl29y28idn9shnrks0m9k67jcwv8ns";
-  };
-
-  uuid = "windowIsReady_Remover@nunofarruca@gmail.com";
-
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions/
-    cp -r ${uuid} $out/share/gnome-shell/extensions/${uuid}
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "GNOME Shell extension removing window is ready notification";
-    homepage = "https://github.com/nunofarruca/WindowIsReady_Remover";
-    license = licenses.asl20;
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/workspace-matrix/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/workspace-matrix/default.nix
deleted file mode 100644
index eb1d6e7e319c..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/workspace-matrix/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, findutils, glib }:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-workspace-matrix";
-  version = "4.0.2";
-
-  src = fetchFromGitHub {
-    owner = "mzur";
-    repo = "gnome-shell-wsmatrix";
-    rev = "v${version}";
-    sha256 = "0dbn6b3fdd7yblk0mhsmaiqs3mwgcf3khkx1dsnlqn5hcs0a3myd";
-  };
-
-  uuid = "wsmatrix@martin.zurowietz.de";
-
-  nativeBuildInputs = [
-    findutils
-    glib
-  ];
-
-  buildFlags = "schemas";
-
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions
-    cp -r ${uuid} $out/share/gnome-shell/extensions
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "Arrange workspaces in a two dimensional grid with workspace thumbnails";
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ chkno ];
-    homepage =  "https://github.com/mzur/gnome-shell-wsmatrix";
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnustep/back/default.nix b/nixpkgs/pkgs/desktops/gnustep/back/default.nix
index 18986400c008..324605832377 100644
--- a/nixpkgs/pkgs/desktops/gnustep/back/default.nix
+++ b/nixpkgs/pkgs/desktops/gnustep/back/default.nix
@@ -1,21 +1,22 @@
 { gsmakeDerivation
 , cairo
-, fetchurl
+, fetchzip
 , base, gui
 , xlibsWrapper
 , freetype
 , pkg-config
 , libXmu
 }:
-let
-  version = "0.28.0";
-in
-gsmakeDerivation {
-  name = "gnustep-back-${version}";
-  src = fetchurl {
-    url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-back-${version}.tar.gz";
-    sha256 = "1ynd27zwga17mp2qlym90k2xsypdvz24w6gyy2rfvmv0gkvlgrjr";
+
+gsmakeDerivation rec {
+  pname = "gnustep-back";
+  version = "0.29.0";
+
+  src = fetchzip {
+    url = "ftp://ftp.gnustep.org/pub/gnustep/core/${pname}-${version}.tar.gz";
+    sha256 = "sha256-4n2SC68G0dpSz9nqCL5Kz76nyoRxWcRTWDwZsnMoHSM=";
   };
+
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ cairo base gui freetype xlibsWrapper libXmu ];
   meta = {
diff --git a/nixpkgs/pkgs/desktops/gnustep/base/default.nix b/nixpkgs/pkgs/desktops/gnustep/base/default.nix
index e661dae90990..4fe005c3749e 100644
--- a/nixpkgs/pkgs/desktops/gnustep/base/default.nix
+++ b/nixpkgs/pkgs/desktops/gnustep/base/default.nix
@@ -1,7 +1,7 @@
 { aspell, audiofile
 , gsmakeDerivation
 , cups
-, fetchurl, fetchpatch
+, fetchzip
 , gmp, gnutls
 , libffi, binutils-unwrapped
 , libjpeg, libtiff, libpng, giflib
@@ -11,14 +11,12 @@
 , pkg-config, portaudio
 , libiberty
 }:
-let
-  version = "1.27.0";
-in
-gsmakeDerivation {
-  name = "gnustep-base-${version}";
-  src = fetchurl {
-    url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-base-${version}.tar.gz";
-    sha256 = "10xjrv5d443wzll6lf9y65p6v9kvx7xxklhsm1j05y93vwgzl0w8";
+gsmakeDerivation rec {
+  pname = "gnustep-base";
+  version = "1.28.0";
+  src = fetchzip {
+    url = "ftp://ftp.gnustep.org/pub/gnustep/core/${pname}-${version}.tar.gz";
+    sha256 = "05vjz19v1w7yb7hm8qrc41bqh6xd8in7sgg2p0h1vldyyaa5sh90";
   };
   nativeBuildInputs = [ pkg-config ];
   propagatedBuildInputs = [
@@ -35,13 +33,10 @@ gsmakeDerivation {
   ];
   patches = [
     ./fixup-paths.patch
-    (fetchpatch {  # for icu68 compatibility, remove with next update(?)
-      url = "https://github.com/gnustep/libs-base/commit/06fa7792a51cb970e5d010a393cb88eb127830d7.patch";
-      sha256 = "150n1sa34av9ywc04j36jvj7ic9x6pgr123rbn2mx5fj76q23852";
-    })
   ];
 
   meta = {
     description = "An implementation of AppKit and Foundation libraries of OPENSTEP and Cocoa";
+    changelog = "https://github.com/gnustep/libs-base/releases/tag/base-${builtins.replaceStrings [ "." ] [ "_" ] version}";
   };
 }
diff --git a/nixpkgs/pkgs/desktops/gnustep/gorm/default.nix b/nixpkgs/pkgs/desktops/gnustep/gorm/default.nix
index 3817edad36bd..6320d0d2ff28 100644
--- a/nixpkgs/pkgs/desktops/gnustep/gorm/default.nix
+++ b/nixpkgs/pkgs/desktops/gnustep/gorm/default.nix
@@ -1,13 +1,11 @@
-{ fetchurl, base, back, gsmakeDerivation, gui }:
-let
-  version = "1.2.26";
-in
-gsmakeDerivation {
-  name = "gorm-${version}";
+{ fetchzip, base, back, gsmakeDerivation, gui }:
+gsmakeDerivation rec {
+  pname = "gorm";
+  version = "1.2.28";
 
-  src = fetchurl {
+  src = fetchzip {
     url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/gorm-${version}.tar.gz";
-    sha256 = "063f8rlz8py931hfrh95jxvr68bzs33bvckfigzbagp73n892jnw";
+    sha256 = "0n92xr16w0wnwfzh7i9xhsly61pyz9l9f615dp324a6r3444hn0z";
   };
   buildInputs = [ base back gui ];
 
diff --git a/nixpkgs/pkgs/desktops/gnustep/gui/default.nix b/nixpkgs/pkgs/desktops/gnustep/gui/default.nix
index 8356a608c833..e8c3ea27fa4d 100644
--- a/nixpkgs/pkgs/desktops/gnustep/gui/default.nix
+++ b/nixpkgs/pkgs/desktops/gnustep/gui/default.nix
@@ -1,22 +1,19 @@
-{ gsmakeDerivation, fetchurl, fetchpatch, base }:
-let
-  version = "0.28.0";
-in
-gsmakeDerivation {
-  name = "gnustep-gui-${version}";
-  src = fetchurl {
-    url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-gui-${version}.tar.gz";
-    sha256 = "05wk8kbl75qj0jgawgyv9sp98wsgz5vl1s0d51sads0p0kk2sv8z";
+{ gsmakeDerivation, fetchzip, base }:
+
+gsmakeDerivation rec {
+  version = "0.29.0";
+  pname = "gnustep-gui";
+
+  src = fetchzip {
+    url = "ftp://ftp.gnustep.org/pub/gnustep/core/${pname}-${version}.tar.gz";
+    sha256 = "0x6n48p178r4zd8f4sqjfqd6rp49w00wr59w19lpwlmrdv7bn538";
   };
   buildInputs = [ base ];
   patches = [
     ./fixup-all.patch
-    (fetchpatch {  # for icu68 compatibility, remove with next update(?)
-      url = "https://github.com/gnustep/libs-gui/commit/05572b2d01713f5caf07f334f17ab639be8a1cff.patch";
-      sha256 = "04z287dk8jf3hdwzk8bpnv49qai2dcdlh824yc9bczq291pjy2xc";
-    })
   ];
   meta = {
     description = "A GUI class library of GNUstep";
+    changelog = "https://github.com/gnustep/libs-gui/releases/tag/gui-${builtins.replaceStrings [ "." ] [ "_" ] version}";
   };
 }
diff --git a/nixpkgs/pkgs/desktops/gnustep/make/default.nix b/nixpkgs/pkgs/desktops/gnustep/make/default.nix
index f96eb7388b3d..ce2c1f2f144b 100644
--- a/nixpkgs/pkgs/desktops/gnustep/make/default.nix
+++ b/nixpkgs/pkgs/desktops/gnustep/make/default.nix
@@ -1,12 +1,8 @@
 { lib, stdenv, fetchurl, clang, which, libobjc }:
 
-let
-  version = "2.9.0";
-in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "gnustep-make";
-  inherit version;
+  version = "2.9.0";
 
   src = fetchurl {
     url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-make-${version}.tar.gz";
@@ -32,6 +28,7 @@ stdenv.mkDerivation {
   meta = {
     description = "A build manager for GNUstep";
     homepage = "http://gnustep.org/";
+    changelog = "https://github.com/gnustep/tools-make/releases/tag/make-${builtins.replaceStrings [ "." ] [ "_" ] version}";
     license = lib.licenses.lgpl2Plus;
     maintainers = with lib.maintainers; [ ashalkhakov matthewbauer ];
     platforms = lib.platforms.unix;
diff --git a/nixpkgs/pkgs/desktops/lxde/core/lxappearance/default.nix b/nixpkgs/pkgs/desktops/lxde/core/lxappearance/default.nix
index 21d824553337..97b434c9f605 100644
--- a/nixpkgs/pkgs/desktops/lxde/core/lxappearance/default.nix
+++ b/nixpkgs/pkgs/desktops/lxde/core/lxappearance/default.nix
@@ -5,6 +5,7 @@
 , libX11
 , gtk2
 , gtk3
+, wrapGAppsHook
 , withGtk3 ? true
 }:
 
@@ -20,6 +21,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     intltool
+    wrapGAppsHook
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/desktops/mate/caja-with-extensions/default.nix b/nixpkgs/pkgs/desktops/mate/caja-with-extensions/default.nix
index 125e39d1f461..dd9ab9be1d37 100644
--- a/nixpkgs/pkgs/desktops/mate/caja-with-extensions/default.nix
+++ b/nixpkgs/pkgs/desktops/mate/caja-with-extensions/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   pname = "${caja.pname}-with-extensions";
   version = caja.version;
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix
index 791c2508e120..8b02af57d42d 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix
@@ -19,7 +19,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-calculator";
-  version = "1.6.1";
+  version = "1.6.2";
 
   repoName = "calculator";
 
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "sha256-LGY111wPldxuSfqhZ2E2TeJjexcGbfS25RjLw+Wi99c=";
+    sha256 = "sha256-kOQr94PAfLPv4LjY2WDdTtlbf3/tYf+NUESZ94+L41M=";
   };
 
   passthru = {
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-code/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-code/default.nix
index e8b10227eaa4..50a32420de09 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-code/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-code/default.nix
@@ -1,6 +1,5 @@
 { lib, stdenv
 , fetchFromGitHub
-, fetchpatch
 , nix-update-script
 , pantheon
 , pkg-config
@@ -12,11 +11,12 @@
 , gtk3
 , granite
 , libgee
+, libhandy
 , elementary-icon-theme
 , appstream
 , libpeas
 , editorconfig-core-c
-, gtksourceview3
+, gtksourceview4
 , gtkspell3
 , libsoup
 , vte
@@ -25,11 +25,12 @@
 , ctags
 , libgit2-glib
 , wrapGAppsHook
+, polkit
 }:
 
 stdenv.mkDerivation rec {
   pname = "elementary-code";
-  version = "3.4.1";
+  version = "6.0.0";
 
   repoName = "code";
 
@@ -37,17 +38,9 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "sha256-4AEayj+K/lOW6jEYmvmdan1kTqqqLL1YzwcU7/3PH5U=";
+    sha256 = "1w1m52mq3zr9alkxk1c0s4ncscka1km5ppd0r6zm86qan9cjwq0f";
   };
 
-  patches = [
-    # Fix build with latest Vala.
-    (fetchpatch {
-      url = "https://github.com/elementary/code/commit/c50580d3336296823da9a2c50b824f21fde50286.patch";
-      sha256 = "F+ZYlnZWYCU68G4oayLfbTnvSnTb4YA0zHVGD/Uf3KA=";
-    })
-  ];
-
   passthru = {
     updateScript = nix-update-script {
       attrPath = "pantheon.${pname}";
@@ -60,6 +53,10 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
+
+    # polkit is needed for ITS rules
+    polkit
+
     python3
     vala
     wrapGAppsHook
@@ -71,10 +68,11 @@ stdenv.mkDerivation rec {
     elementary-icon-theme
     granite
     gtk3
-    gtksourceview3
+    gtksourceview4
     gtkspell3
     libgee
     libgit2-glib
+    libhandy
     libpeas
     libsoup
     vte
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix
index 21aeb38530fd..2e20314d480a 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix
@@ -11,15 +11,17 @@
 , glib
 , granite
 , libgee
+, libhandy
 , elementary-icon-theme
 , elementary-gtk-theme
 , gettext
 , wrapGAppsHook
+, appstream
 }:
 
 stdenv.mkDerivation rec {
   pname = "elementary-feedback";
-  version = "1.0";
+  version = "6.0.0";
 
   repoName = "feedback";
 
@@ -27,7 +29,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "sha256-GkVnowqGXwnEgplT34Po/BKzC2F/IQE2kIw0SLSLhGU=";
+    sha256 = "1fh9a0nfvbrxamki9avm9by760csj2nqy4ya7wzbnqbrrvjwd3fv";
   };
 
   passthru = {
@@ -47,11 +49,13 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
+    appstream
     elementary-icon-theme
     granite
     gtk3
     elementary-gtk-theme
     libgee
+    libhandy
     glib
   ];
 
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/default.nix
index b909f2472ad0..c990ecb24d6b 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/default.nix
@@ -25,15 +25,15 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-mail";
-  version = "unstable-2021-06-21";
+  version = "6.0.0";
 
   repoName = "mail";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = repoName;
-    rev = "c64c87fabb31dea8dc388152d5a835401993acf4";
-    sha256 = "yEUg1IbYbzOJiklnqR23X+aGVE9j4F9iH8FkmlB15x4=";
+    rev = version;
+    sha256 = "07iiipl0nsp63g5bn1y2hg6bmgj6i9cxqcfpd7q3vmldnkijvaxs";
   };
 
   passthru = {
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-music/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-music/default.nix
index 5a5c314b3e9b..fe6c3f187fe3 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-music/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-music/default.nix
@@ -1,6 +1,5 @@
 { lib, stdenv
 , fetchFromGitHub
-, fetchpatch
 , nix-update-script
 , pantheon
 , pkg-config
@@ -16,6 +15,7 @@
 , json-glib
 , libgda
 , libgpod
+, libhandy
 , libnotify
 , libpeas
 , libsoup
@@ -31,7 +31,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-music";
-  version = "5.0.5";
+  version = "5.1.0";
 
   repoName = "music";
 
@@ -39,17 +39,9 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "sha256-3GZoBCu9rF+BnNk9APBzKWO1JYg1XYWwrEvwcjWvYDE=";
+    sha256 = "13v7rii9ardyd661s6d4hvvs4ig44v7s3qd1bx7imaigr72gg58b";
   };
 
-  patches = [
-    # Fix build with latest Vala.
-    (fetchpatch {
-      url = "https://github.com/elementary/music/commit/9ed3bbb3a0d68e289a772b4603f58e52a4973316.patch";
-      sha256 = "fFO97SQzTc2fYFJFGfFPSUCdkCgZxfX1fjDQ7GH4BUs=";
-    })
-  ];
-
   passthru = {
     updateScript = nix-update-script {
       attrPath = "pantheon.${pname}";
@@ -82,6 +74,7 @@ stdenv.mkDerivation rec {
     libgda
     libgee
     libgpod
+    libhandy
     libnotify
     libpeas
     libsignon-glib
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-photos/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-photos/default.nix
index 7280051361a9..bced420dbc0a 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-photos/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-photos/default.nix
@@ -1,6 +1,5 @@
 { lib, stdenv
 , fetchFromGitHub
-, fetchpatch
 , nix-update-script
 , pantheon
 , meson
@@ -12,6 +11,7 @@
 , libaccounts-glib
 , libexif
 , libgee
+, libhandy
 , geocode-glib
 , gexiv2
 , libgphoto2
@@ -35,7 +35,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-photos";
-  version = "2.7.0";
+  version = "2.7.1";
 
   repoName = "photos";
 
@@ -43,17 +43,9 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "sha256-bTk4shryAWWMrKX3mza6xQ05qpBPf80Ey7fmYgKLUiY=";
+    sha256 = "1dql14k43rv3in451amiwv4z71hz3ailx67hd8gw1ka3yw12128p";
   };
 
-  patches = [
-    # Fix build with latest Vala.
-    (fetchpatch {
-      url = "https://github.com/elementary/photos/commit/27e529fc96da828982563e2e19a6f0cef883a29e.patch";
-      sha256 = "w39wh45VHggCs62TN6wpUEyz/hJ1y7qL1Ox+sp0Pt2s=";
-    })
-  ];
-
   passthru = {
     updateScript = nix-update-script {
       attrPath = "pantheon.${pname}";
@@ -88,6 +80,7 @@ stdenv.mkDerivation rec {
     libgee
     libgphoto2
     libgudev
+    libhandy
     libraw
     librest
     libsoup
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
index 46f279dd7957..6e6beba50cec 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
@@ -12,6 +12,7 @@
 , gtk3
 , libxml2
 , granite
+, libhandy
 , libnotify
 , vte
 , libgee
@@ -23,7 +24,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-terminal";
-  version = "5.5.2";
+  version = "6.0.0";
 
   repoName = "terminal";
 
@@ -31,7 +32,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "sha256-giVmL0zYEVYJ40ZBQ9dDb4hOx4HaYRt7tUTOu37lMYU=";
+    sha256 = "08akr4sv4jy9kd4s26kib6j7i8hc3vs0sp71fifv7ww4mi9cm6jc";
   };
 
   passthru = {
@@ -57,6 +58,7 @@ stdenv.mkDerivation rec {
     granite
     gtk3
     libgee
+    libhandy
     libnotify
     pcre2
     vte
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-videos/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-videos/default.nix
index e5506093719d..95df9a613a82 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-videos/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-videos/default.nix
@@ -20,7 +20,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-videos";
-  version = "2.7.2";
+  version = "2.7.3";
 
   repoName = "videos";
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "sha256-MSyhCXsziQ0MD4lGp9X/9odidjT/L+2Aihwd1qCGvB0=";
+    sha256 = "04nl9kn33dysvsg0n5qx1z8qgrifkgfwsm7gh1l308v3n8c69lh7";
   };
 
   passthru = {
diff --git a/nixpkgs/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix b/nixpkgs/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix
index 55935b2ee0e0..bd4845172c52 100644
--- a/nixpkgs/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix
@@ -13,7 +13,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-icon-theme";
-  version = "5.3.1";
+  version = "6.0.0";
 
   repoName = "icons";
 
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "sha256-6XFzjpuHpGIZ+azkPuFcSF7p66sDonwLwjvlNBZDRmc=";
+    sha256 = "0k94zi8fzi0nf5q471fmrlz8jjkv8m6vav1spzv7ynkg2hik8d9b";
   };
 
   passthru = {
diff --git a/nixpkgs/pkgs/desktops/pantheon/artwork/elementary-sound-theme/default.nix b/nixpkgs/pkgs/desktops/pantheon/artwork/elementary-sound-theme/default.nix
index a89ea19079ed..d273f03f4bda 100644
--- a/nixpkgs/pkgs/desktops/pantheon/artwork/elementary-sound-theme/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/artwork/elementary-sound-theme/default.nix
@@ -9,7 +9,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-sound-theme";
-  version = "1.0";
+  version = "1.1.0";
 
   repoName = "sound-theme";
 
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "sha256-v8ludbPCJaMHCxuzjZchTJwpGiF6UJlVMIMFg+lAhbU=";
+    sha256 = "sha256-fR6gtKx9J6o2R1vQZ5yx4kEX3Ak+q8I6hRVMZzyB2E8=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/pantheon/granite/default.nix b/nixpkgs/pkgs/desktops/pantheon/granite/default.nix
index 3d4dc6bd84ab..2397dd8ffcf5 100644
--- a/nixpkgs/pkgs/desktops/pantheon/granite/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/granite/default.nix
@@ -18,7 +18,7 @@
 
 stdenv.mkDerivation rec {
   pname = "granite";
-  version = "6.0.0";
+  version = "6.1.0";
 
   outputs = [ "out" "dev" ];
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "sha256-RGukXeFmtnyCfK8pKdvTHL0t8yhEYwAiiPelTy1Xcf0=";
+    sha256 = "02hn4abnsn6fm2m33pjmlnkj8dljsm292z62vn8ccvy7l8f9my6l";
   };
 
   passthru = {
diff --git a/nixpkgs/pkgs/desktops/plasma-5/3rdparty/addons/krunner-symbols.nix b/nixpkgs/pkgs/desktops/plasma-5/3rdparty/addons/krunner-symbols.nix
new file mode 100644
index 000000000000..7a0b61622570
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/plasma-5/3rdparty/addons/krunner-symbols.nix
@@ -0,0 +1,40 @@
+{ lib, stdenv
+, cmake, fetchFromGitHub, extra-cmake-modules
+, qtbase, wrapQtAppsHook, ki18n, kdelibs4support, krunner
+}:
+
+stdenv.mkDerivation rec {
+  pname = "krunner-symbols";
+  version = "1.1.0";
+
+  src = fetchFromGitHub {
+    owner = "domschrei";
+    repo = "krunner-symbols";
+    rev = version;
+    sha256 = "sha256-YsoZdPTWpk3/YERwerrVEcaf2IfGVJwpq32onhP8Exo=";
+  };
+
+  buildInputs = [ qtbase ki18n kdelibs4support krunner ];
+  nativeBuildInputs = [ cmake wrapQtAppsHook extra-cmake-modules ];
+
+  postPatch = ''
+    # symbols.cpp hardcodes the location of configuration files
+    substituteInPlace symbols.cpp \
+      --replace "/usr/share/config/krunner-symbol" "$out/share/config/krunner-symbol"
+
+    # change cmake flag names to output using the correct qt-plugin prefix and kservice location
+    substituteInPlace CMakeLists.txt \
+      --replace "LOCATION_PLUGIN" "KDE_INSTALL_PLUGINDIR" \
+      --replace "LOCATION_DESKTOP" "KDE_INSTALL_KSERVICES5DIR"
+  '';
+
+  cmakeFlags = [ "-DLOCATION_CONFIG=share/config" ];
+
+  meta = with lib; {
+    description = "A little krunner plugin (Plasma 5) to retrieve unicode symbols, or any other string, based on a corresponding keyword";
+    homepage = "https://github.com/domschrei/krunner-symbols";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ hqurve ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/desktops/plasma-5/default.nix b/nixpkgs/pkgs/desktops/plasma-5/default.nix
index 4b41e5ad9d5f..9252aa7b39ba 100644
--- a/nixpkgs/pkgs/desktops/plasma-5/default.nix
+++ b/nixpkgs/pkgs/desktops/plasma-5/default.nix
@@ -158,6 +158,7 @@ let
         kwin-dynamic-workspaces = callPackage ./3rdparty/kwin/scripts/dynamic-workspaces.nix { };
         kwin-tiling = callPackage ./3rdparty/kwin/scripts/tiling.nix { };
         krohnkite = callPackage ./3rdparty/kwin/scripts/krohnkite.nix { };
+        krunner-symbols = callPackage ./3rdparty/addons/krunner-symbols.nix { };
         parachute = callPackage ./3rdparty/kwin/scripts/parachute.nix { };
       };
 
diff --git a/nixpkgs/pkgs/development/arduino/platformio/core.nix b/nixpkgs/pkgs/development/arduino/platformio/core.nix
index ee8bbeabbfee..344835b831b3 100644
--- a/nixpkgs/pkgs/development/arduino/platformio/core.nix
+++ b/nixpkgs/pkgs/development/arduino/platformio/core.nix
@@ -1,30 +1,74 @@
-{ stdenv, lib, buildPythonApplication
-, ajsonrpc
-, bottle
-, click
-, click-completion
-, colorama
+{ stdenv, lib, python3
+, fetchFromGitHub
 , git
-, jsondiff
-, lockfile
-, marshmallow
-, pyelftools
-, pyserial
-, pytest
-, requests
-, semantic-version
 , spdx-license-list-data
-, starlette
-, tabulate
-, tox
-, uvicorn
-, wsproto
-, zeroconf
 , version, src
 }:
 
 let
-  args = lib.concatStringsSep " " ((map (e: "--deselect tests/${e}") [
+  python = python3.override {
+    packageOverrides = self: super: {
+      aiofiles = super.aiofiles.overridePythonAttrs (oldAttrs: rec {
+        version = "0.6.0";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "e0281b157d3d5d59d803e3f4557dcc9a3dff28a4dd4829a9ff478adae50ca092";
+        };
+      });
+
+      click = super.click.overridePythonAttrs (oldAttrs: rec {
+        version = "7.1.2";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "06kbzd6sjfkqan3miwj9wqyddfxc2b6hi7p5s4dvqjb3gif2bdfj";
+        };
+      });
+
+      uvicorn = super.uvicorn.overridePythonAttrs (oldAttrs: rec {
+        version = "0.13.2";
+        src = fetchFromGitHub {
+          owner = "encode";
+          repo = "uvicorn";
+          rev = version;
+          sha256 = "04zgmp9z46k72ay6cz7plga6d3w3a6x41anabm7ramp7jdqf6na9";
+        };
+      });
+    };
+  };
+in
+with python.pkgs; buildPythonApplication rec {
+  pname = "platformio";
+  inherit version src;
+
+  propagatedBuildInputs = [
+    ajsonrpc
+    bottle
+    click
+    click-completion
+    colorama
+    git
+    lockfile
+    marshmallow
+    pyelftools
+    pyserial
+    requests
+    semantic-version
+    starlette
+    tabulate
+    uvicorn
+    wsproto
+    zeroconf
+  ];
+
+  HOME = "/tmp";
+
+  checkInputs = [
+    jsondiff
+    pytestCheckHook
+    tox
+  ];
+
+  pytestFlagsArray = (map (e: "--deselect tests/${e}") [
     "commands/test_ci.py::test_ci_boards"
     "commands/test_ci.py::test_ci_build_dir"
     "commands/test_ci.py::test_ci_keep_build_dir"
@@ -88,44 +132,10 @@ let
     "commands/test_update.py"
     "test_maintenance.py"
     "test_ino2cpp.py"
-  ]));
-
-in buildPythonApplication rec {
-  pname = "platformio";
-  inherit version src;
-
-  propagatedBuildInputs = [
-    ajsonrpc
-    bottle
-    click
-    click-completion
-    colorama
-    git
-    lockfile
-    marshmallow
-    pyelftools
-    pyserial
-    requests
-    semantic-version
-    starlette
-    tabulate
-    uvicorn
-    wsproto
-    zeroconf
+  ]) ++ [
+    "tests"
   ];
 
-  HOME = "/tmp";
-
-  checkInputs = [ pytest tox jsondiff ];
-
-  checkPhase = ''
-    runHook preCheck
-
-    py.test -v tests ${args}
-
-    runHook postCheck
-  '';
-
   patches = [
     ./fix-searchpath.patch
     ./use-local-spdx-license-list.patch
diff --git a/nixpkgs/pkgs/development/beam-modules/default.nix b/nixpkgs/pkgs/development/beam-modules/default.nix
index 6cfa2721bfcd..b6be8c3e7fbd 100644
--- a/nixpkgs/pkgs/development/beam-modules/default.nix
+++ b/nixpkgs/pkgs/development/beam-modules/default.nix
@@ -39,6 +39,7 @@ let
 
       erlang-ls = callPackage ./erlang-ls { };
       erlfmt = callPackage ./erlfmt { };
+      elvis-erlang = callPackage ./elvis-erlang { };
 
       # BEAM-based languages.
       elixir = elixir_1_12;
diff --git a/nixpkgs/pkgs/development/beam-modules/elvis-erlang/default.nix b/nixpkgs/pkgs/development/beam-modules/elvis-erlang/default.nix
new file mode 100644
index 000000000000..81888bdde21e
--- /dev/null
+++ b/nixpkgs/pkgs/development/beam-modules/elvis-erlang/default.nix
@@ -0,0 +1,46 @@
+{ fetchFromGitHub, fetchgit, fetchHex, rebar3WithPlugins, rebar3-nix, rebar3Relx
+, buildRebar3, writeScript, lib }:
+
+let
+  owner = "inaka";
+  repo = "elvis";
+in rebar3Relx rec {
+  releaseType = "escript";
+  # The package name "elvis" is already taken
+  pname = "elvis-erlang";
+  version = "1.0.1";
+  src = fetchFromGitHub {
+    inherit owner repo;
+    sha256 = "139mgd4cwc0vazxfnssyym61jd9g45wn1nc53mjfzx5dkrrn4dc5";
+    rev = version;
+  };
+  beamDeps = builtins.attrValues (import ./rebar-deps.nix {
+    inherit fetchHex fetchgit fetchFromGitHub;
+    builder = buildRebar3;
+  });
+  passthru.updateScript = writeScript "update.sh" ''
+    #!/usr/bin/env nix-shell
+    #!nix-shell -i bash -p bash common-updater-scripts git nix-prefetch-git gnutar gzip "rebar3WithPlugins {globalPlugins = [beamPackages.rebar3-nix];}"
+
+    set -euo pipefail
+
+    latest=$(list-git-tags https://github.com/${owner}/${repo}.git | sort -V | tail -1)
+    if [ "$latest" != "${version}" ]; then
+      nixpkgs="$(git rev-parse --show-toplevel)"
+      nix_path="$nixpkgs/pkgs/development/beam-modules/elvis-erlang"
+      update-source-version elvis-erlang "$latest" --version-key=version --print-changes --file="$nix_path/default.nix"
+      tmpdir=$(mktemp -d)
+      cp -R $(nix-build $nixpkgs --no-out-link -A elvis-erlang.src)/* "$tmpdir"
+      (cd "$tmpdir" && HOME=. rebar3 nix lock -o "$nix_path/rebar-deps.nix")
+    else
+      echo "${repo} is already up-to-date"
+    fi
+  '';
+  meta = with lib; {
+    homepage = "https://github.com/inaka/elvis";
+    description = "Erlang Style Reviewer";
+    platforms = platforms.unix;
+    license = licenses.asl20;
+    maintainers = with lib.maintainers; [ dlesl ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/beam-modules/elvis-erlang/rebar-deps.nix b/nixpkgs/pkgs/development/beam-modules/elvis-erlang/rebar-deps.nix
new file mode 100644
index 000000000000..93c3db16eb93
--- /dev/null
+++ b/nixpkgs/pkgs/development/beam-modules/elvis-erlang/rebar-deps.nix
@@ -0,0 +1,168 @@
+# Generated by rebar3_nix
+let fetchOnly = { src, ... }: src;
+in { builder ? fetchOnly, fetchHex, fetchgit, fetchFromGitHub, overrides ? (x: y: { }) }:
+let
+  self = packages // (overrides self packages);
+  packages = with self; {
+    unicode_util_compat = builder {
+      name = "unicode_util_compat";
+      version = "0.7.0";
+      src = fetchHex {
+        pkg = "unicode_util_compat";
+        version = "0.7.0";
+        sha256 = "sha256-Je7m1n32GWDPanlCOVZlmbCeF+Zo03ACR7xJhjgVJSE=";
+      };
+      beamDeps = [ ];
+    };
+    ssl_verify_fun = builder {
+      name = "ssl_verify_fun";
+      version = "1.1.6";
+      src = fetchHex {
+        pkg = "ssl_verify_fun";
+        version = "1.1.6";
+        sha256 = "sha256-vbDSRx9FPIj/OQjnaG+G+b4yfQZcwewW+kVAGX6gRoA=";
+      };
+      beamDeps = [ ];
+    };
+    parse_trans = builder {
+      name = "parse_trans";
+      version = "3.4.0";
+      src = fetchHex {
+        pkg = "parse_trans";
+        version = "3.4.0";
+        sha256 = "sha256-+Z42iDC+pEVSIk434ElDpUh08IuFkEhd6NE4MrY6LcM=";
+      };
+      beamDeps = [ ];
+    };
+    mimerl = builder {
+      name = "mimerl";
+      version = "1.2.0";
+      src = fetchHex {
+        pkg = "mimerl";
+        version = "1.2.0";
+        sha256 = "sha256-8nhYVlCqWBmGJkY46/aY+LsZ3yl/Zq2RsYkQ38bhkyM=";
+      };
+      beamDeps = [ ];
+    };
+    metrics = builder {
+      name = "metrics";
+      version = "1.0.1";
+      src = fetchHex {
+        pkg = "metrics";
+        version = "1.0.1";
+        sha256 = "sha256-abCa3dxPdKQHFq5U0UD5O+sPuJeNhjbq3tDDG28JnxY=";
+      };
+      beamDeps = [ ];
+    };
+    idna = builder {
+      name = "idna";
+      version = "6.1.1";
+      src = fetchHex {
+        pkg = "idna";
+        version = "6.1.1";
+        sha256 = "sha256-kjdut4lEEu0ZrEdeSob3tBPBufu1vRbczVeTQVeUTOo=";
+      };
+      beamDeps = [ unicode_util_compat ];
+    };
+    certifi = builder {
+      name = "certifi";
+      version = "2.6.1";
+      src = fetchHex {
+        pkg = "certifi";
+        version = "2.6.1";
+        sha256 = "sha256-UkyXtJkbOEndXBemMSI4licsawr0RneLpGdaHf9Tu34=";
+      };
+      beamDeps = [ ];
+    };
+    zipper = builder {
+      name = "zipper";
+      version = "1.0.1";
+      src = fetchHex {
+        pkg = "zipper";
+        version = "1.0.1";
+        sha256 = "sha256-ah/T4fDMHR31ZCyaDOIXgDZBGwpclkKFHR2idr1zfC0=";
+      };
+      beamDeps = [ ];
+    };
+    lager = builder {
+      name = "lager";
+      version = "3.9.1";
+      src = fetchHex {
+        pkg = "lager";
+        version = "3.9.1";
+        sha256 = "sha256-P1m6daBKmeXxi/kcifRtzlNvg8bLQV/ibm51pivvN9w=";
+      };
+      beamDeps = [ goldrush ];
+    };
+    katana_code = builder {
+      name = "katana_code";
+      version = "1.1.2";
+      src = fetchHex {
+        pkg = "katana_code";
+        version = "1.1.2";
+        sha256 = "sha256-5+YWKkToJqA/aLUDt9kpgbiUv4NMHvDmR3g/fWaIAhw=";
+      };
+      beamDeps = [ ];
+    };
+    jsx = builder {
+      name = "jsx";
+      version = "2.10.0";
+      src = fetchHex {
+        pkg = "jsx";
+        version = "2.10.0";
+        sha256 = "sha256-moPjcEgHKYAWlo21Bvn60PAn3jdUbrg4s64QZMOgrWI=";
+      };
+      beamDeps = [ ];
+    };
+    hackney = builder {
+      name = "hackney";
+      version = "1.17.1";
+      src = fetchHex {
+        pkg = "hackney";
+        version = "1.17.1";
+        sha256 = "sha256-0sup48gQOtAyBiPp8cM+jTeKFeqr4u6K5EGJjz01oYw=";
+      };
+      beamDeps = [ certifi idna metrics mimerl parse_trans ssl_verify_fun unicode_util_compat ];
+    };
+    goldrush = builder {
+      name = "goldrush";
+      version = "0.1.9";
+      src = fetchHex {
+        pkg = "goldrush";
+        version = "0.1.9";
+        sha256 = "sha256-mctBKM/8syJ1geXU2APVQT+mQ/TrllI/d9nmk32ZTOs=";
+      };
+      beamDeps = [ ];
+    };
+    getopt = builder {
+      name = "getopt";
+      version = "1.0.2";
+      src = fetchHex {
+        pkg = "getopt";
+        version = "1.0.2";
+        sha256 = "sha256-oAKa6kMi+4KmH2h2ptnGbcmHi2y2H6oT3zGHOE/U6iY=";
+      };
+      beamDeps = [ ];
+    };
+    elvis_core = builder {
+      name = "elvis_core";
+      version = "1.1.2";
+      src = fetchHex {
+        pkg = "elvis_core";
+        version = "1.1.2";
+        sha256 = "sha256-xO5Cp6fC/FZ/Pqa1FQFkzWgpDxEA6bGaTPiG2Kocpzw=";
+      };
+      beamDeps = [ katana_code zipper ];
+    };
+    egithub = builder {
+      name = "egithub";
+      version = "0.7.0";
+      src = fetchHex {
+        pkg = "egithub";
+        version = "0.7.0";
+        sha256 = "sha256-4AnOEe/YAI0PntWdnEiOPpq+MCoPLNbWY+TMJnVvzEw=";
+      };
+      beamDeps = [ goldrush hackney jsx lager ];
+    };
+  };
+in self
diff --git a/nixpkgs/pkgs/development/beam-modules/erlang-ls/default.nix b/nixpkgs/pkgs/development/beam-modules/erlang-ls/default.nix
index 4e9461dc743b..7635e46237b4 100644
--- a/nixpkgs/pkgs/development/beam-modules/erlang-ls/default.nix
+++ b/nixpkgs/pkgs/development/beam-modules/erlang-ls/default.nix
@@ -12,8 +12,9 @@ let
       });
     });
   };
-in rebar3Relx {
-  name = "erlang-ls";
+in
+rebar3Relx {
+  pname = "erlang-ls";
   inherit version;
   src = fetchFromGitHub {
     inherit owner repo;
diff --git a/nixpkgs/pkgs/development/beam-modules/erlfmt/default.nix b/nixpkgs/pkgs/development/beam-modules/erlfmt/default.nix
index c903906802e3..da577f2264c0 100644
--- a/nixpkgs/pkgs/development/beam-modules/erlfmt/default.nix
+++ b/nixpkgs/pkgs/development/beam-modules/erlfmt/default.nix
@@ -1,7 +1,7 @@
 { fetchFromGitHub, rebar3Relx, lib }:
 
 rebar3Relx rec {
-  name = "erlfmt";
+  pname = "erlfmt";
   version = "1.0.0";
   releaseType = "escript";
   src = fetchFromGitHub {
diff --git a/nixpkgs/pkgs/development/beam-modules/rebar3-release.nix b/nixpkgs/pkgs/development/beam-modules/rebar3-release.nix
index 16344f2f194c..59771c340295 100644
--- a/nixpkgs/pkgs/development/beam-modules/rebar3-release.nix
+++ b/nixpkgs/pkgs/development/beam-modules/rebar3-release.nix
@@ -1,28 +1,34 @@
-{ stdenv, erlang, rebar3WithPlugins, openssl,
-  lib }:
-
-{ name, version
+{ stdenv
+, erlang
+, rebar3WithPlugins
+, openssl
+, lib
+}:
+
+{ pname
+, version
 , src
-, beamDeps ? []
-, buildPlugins ? []
+, beamDeps ? [ ]
+, buildPlugins ? [ ]
 , checkouts ? null
 , releaseType
-, buildInputs ? []
+, buildInputs ? [ ]
 , setupHook ? null
 , profile ? "default"
 , installPhase ? null
 , buildPhase ? null
 , configurePhase ? null
-, meta ? {}
-, ... }@attrs:
+, meta ? { }
+, ...
+}@attrs:
 
 with lib;
 
 let
   shell = drv: stdenv.mkDerivation {
-          name = "interactive-shell-${drv.name}";
-          buildInputs = [ drv ];
-    };
+    name = "interactive-shell-${drv.pname}";
+    buildInputs = [ drv ];
+  };
 
   customPhases = filterAttrs
     (_: v: v != null)
@@ -38,65 +44,65 @@ let
   };
 
   pkg =
-    assert beamDeps != [] -> checkouts == null;
+    assert beamDeps != [ ] -> checkouts == null;
     self: stdenv.mkDerivation (attrs // {
 
-    name = "${name}-${version}";
-    inherit version;
-
-    buildInputs = buildInputs ++ [ erlang rebar3 openssl ] ++ beamDeps;
-
-    # ensure we strip any native binaries (eg. NIFs, ports)
-    stripDebugList = lib.optional (releaseType == "release") "rel";
-
-    inherit src;
-
-    REBAR_IGNORE_DEPS = beamDeps != [ ];
-
-    configurePhase = ''
-      runHook preConfigure
-      ${lib.optionalString (checkouts != null)
-      "cp --no-preserve=all -R ${checkouts}/_checkouts ."}
-      runHook postConfigure
-    '';
-
-    buildPhase = ''
-      runHook preBuild
-      HOME=. DEBUG=1 rebar3 as ${profile} ${if releaseType == "escript"
-                                            then "escriptize"
-                                            else "release"}
-      runHook postBuild
-    '';
-
-    installPhase = ''
-      runHook preInstall
-      dir=${if releaseType == "escript"
-            then "bin"
-            else "rel"}
-      mkdir -p "$out/$dir" "$out/bin"
-      cp -R --preserve=mode "_build/${profile}/$dir" "$out"
-      ${lib.optionalString (releaseType == "release")
-        "find $out/rel/*/bin -type f -executable -exec ln -s -t $out/bin {} \\;"}
-      runHook postInstall
-    '';
-
-    postInstall = ''
-      for dir in $out/rel/*/erts-*; do
-        echo "ERTS found in $dir - removing references to erlang to reduce closure size"
-        for f in $dir/bin/{erl,start}; do
-          substituteInPlace "$f" --replace "${erlang}/lib/erlang" "''${dir/\/erts-*/}"
+      name = "${pname}-${version}";
+      inherit version pname;
+
+      buildInputs = buildInputs ++ [ erlang rebar3 openssl ] ++ beamDeps;
+
+      # ensure we strip any native binaries (eg. NIFs, ports)
+      stripDebugList = lib.optional (releaseType == "release") "rel";
+
+      inherit src;
+
+      REBAR_IGNORE_DEPS = beamDeps != [ ];
+
+      configurePhase = ''
+        runHook preConfigure
+        ${lib.optionalString (checkouts != null)
+        "cp --no-preserve=all -R ${checkouts}/_checkouts ."}
+        runHook postConfigure
+      '';
+
+      buildPhase = ''
+        runHook preBuild
+        HOME=. DEBUG=1 rebar3 as ${profile} ${if releaseType == "escript"
+                                              then "escriptize"
+                                              else "release"}
+        runHook postBuild
+      '';
+
+      installPhase = ''
+        runHook preInstall
+        dir=${if releaseType == "escript"
+              then "bin"
+              else "rel"}
+        mkdir -p "$out/$dir" "$out/bin"
+        cp -R --preserve=mode "_build/${profile}/$dir" "$out"
+        ${lib.optionalString (releaseType == "release")
+          "find $out/rel/*/bin -type f -executable -exec ln -s -t $out/bin {} \\;"}
+        runHook postInstall
+      '';
+
+      postInstall = ''
+        for dir in $out/rel/*/erts-*; do
+          echo "ERTS found in $dir - removing references to erlang to reduce closure size"
+          for f in $dir/bin/{erl,start}; do
+            substituteInPlace "$f" --replace "${erlang}/lib/erlang" "''${dir/\/erts-*/}"
+          done
         done
-      done
-    '';
-
-    meta = {
-      inherit (erlang.meta) platforms;
-    } // meta;
-
-    passthru = ({
-      packageName = name;
-      env = shell self;
-    } // (if attrs ? passthru then attrs.passthru else {}));
-  } // customPhases);
+      '';
+
+      meta = {
+        inherit (erlang.meta) platforms;
+      } // meta;
+
+      passthru = ({
+        packageName = pname;
+        env = shell self;
+      } // (if attrs ? passthru then attrs.passthru else { }));
+    } // customPhases);
 in
-  fix pkg
+fix pkg
diff --git a/nixpkgs/pkgs/development/compilers/abcl/default.nix b/nixpkgs/pkgs/development/compilers/abcl/default.nix
index fff88eddd19e..f3a3541e7cf8 100644
--- a/nixpkgs/pkgs/development/compilers/abcl/default.nix
+++ b/nixpkgs/pkgs/development/compilers/abcl/default.nix
@@ -29,7 +29,6 @@ stdenv.mkDerivation rec {
   '';
   buildInputs = [jre ant jdk jre];
   meta = {
-    inherit version;
     description = "A JVM-based Common Lisp implementation";
     license = lib.licenses.gpl3 ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/compilers/apache-flex-sdk/default.nix b/nixpkgs/pkgs/development/compilers/apache-flex-sdk/default.nix
index 800b1ea55e38..5b5b21aa73d7 100644
--- a/nixpkgs/pkgs/development/compilers/apache-flex-sdk/default.nix
+++ b/nixpkgs/pkgs/development/compilers/apache-flex-sdk/default.nix
@@ -19,7 +19,7 @@ in stdenv.mkDerivation rec {
 
   buildInputs = [ jre ];
 
-  buildPhase = ":";
+  dontBuild = true;
 
   postPatch = ''
     shopt -s extglob
@@ -45,7 +45,7 @@ in stdenv.mkDerivation rec {
     cp ${playerglobal} $t/frameworks/libs/player/${playerglobal_ver}/playerglobal.swc
   '';
 
-  fixupPhase = ":";
+  dontFixup = true;
 
   meta = with lib; {
     description = "Flex SDK for Adobe Flash / ActionScript";
diff --git a/nixpkgs/pkgs/development/compilers/binaryen/default.nix b/nixpkgs/pkgs/development/compilers/binaryen/default.nix
index d2d866a2804b..ee47ebd98887 100644
--- a/nixpkgs/pkgs/development/compilers/binaryen/default.nix
+++ b/nixpkgs/pkgs/development/compilers/binaryen/default.nix
@@ -1,24 +1,16 @@
-{ lib, stdenv, cmake, python3, fetchFromGitHub, fetchpatch, emscripten }:
+{ lib, stdenv, cmake, python3, fetchFromGitHub, emscripten }:
 
 stdenv.mkDerivation rec {
   pname = "binaryen";
-  version = "96";
+  version = "99";
 
   src = fetchFromGitHub {
     owner = "WebAssembly";
     repo = "binaryen";
     rev = "version_${version}";
-    sha256 = "1mqpb6yy87aifpbcy0lczi3bp6kddrwi6d0g6lrhjrdxx2kvbdag";
+    sha256 = "1a6ixxm1f8mrr9mn6a0pimajdzsdr4w1qhr92skxq67168vvc1ic";
   };
 
-  patches = [
-    # Adds --minimize-wasm-changes option required by emscripten 2.0.1
-    (fetchpatch {
-      url = "https://patch-diff.githubusercontent.com/raw/WebAssembly/binaryen/pull/3044.patch";
-      sha256 = "1hdbc9h9zhh2d3bl4sqv6v9psfmny715612bwpjdln0ibdvc129s";
-    })
-  ];
-
   nativeBuildInputs = [ cmake python3 ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/compilers/clasp/default.nix b/nixpkgs/pkgs/development/compilers/clasp/default.nix
index 31a669c313e0..3aa7063f5513 100644
--- a/nixpkgs/pkgs/development/compilers/clasp/default.nix
+++ b/nixpkgs/pkgs/development/compilers/clasp/default.nix
@@ -118,7 +118,6 @@ stdenv.mkDerivation rec {
   CLASP_SRC_DONTTOUCH = "true";
 
   meta = {
-    inherit version;
     description = "A Common Lisp implementation based on LLVM with C++ integration";
     license = lib.licenses.lgpl21Plus ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/compilers/dmd/binary.nix b/nixpkgs/pkgs/development/compilers/dmd/binary.nix
index de0964155fcb..f47e447334b4 100644
--- a/nixpkgs/pkgs/development/compilers/dmd/binary.nix
+++ b/nixpkgs/pkgs/development/compilers/dmd/binary.nix
@@ -43,7 +43,6 @@ in stdenv.mkDerivation {
   '';
 
   meta = with lib; {
-    inherit version;
     description = "Digital Mars D Compiler Package";
     # As of 2.075 all sources and binaries use the boost license
     license = licenses.boost;
diff --git a/nixpkgs/pkgs/development/compilers/emscripten/default.nix b/nixpkgs/pkgs/development/compilers/emscripten/default.nix
index 648ec156abea..a142008e2e30 100644
--- a/nixpkgs/pkgs/development/compilers/emscripten/default.nix
+++ b/nixpkgs/pkgs/development/compilers/emscripten/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "emscripten";
-  version = "2.0.1";
+  version = "2.0.10";
 
   llvmEnv = symlinkJoin {
     name = "emscripten-llvm-${version}";
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "emscripten-core";
     repo = "emscripten";
-    sha256 = "06dsd819qjv4n2ihrz1mpn5aigmbv0gpkm7iw06wrqx30nzphnpk";
+    sha256 = "0jy4n1pykk9vkm5da9v3qsfrl6j7yhngcazh2792xxs6wzfcs9gk";
     rev = version;
   };
 
@@ -43,10 +43,14 @@ stdenv.mkDerivation rec {
     sed -i '/^def/!s/root_is_writable()/True/' tools/shared.py
     sed -i "/^def check_sanity/a\\  return" tools/shared.py
 
+    # super ugly: monkeypatch to add sysroot/include to the include
+    # path because they are otherwise not part of Nix's clang.
+    sed -i "490a\\ '/include'," tools/shared.py
+
     # required for wasm2c
     ln -s ${nodeModules}/node_modules .
 
-    echo "EMSCRIPTEN_ROOT = '$appdir'" > .emscripten
+    echo "EMSCRIPTEN_ROOT = '$out/share/emscripten'" > .emscripten
     echo "LLVM_ROOT = '${llvmEnv}/bin'" >> .emscripten
     echo "NODE_JS = '${nodejs}/bin/node'" >> .emscripten
     echo "JS_ENGINES = [NODE_JS]" >> .emscripten
@@ -74,7 +78,7 @@ stdenv.mkDerivation rec {
     chmod -R +w $appdir
 
     mkdir -p $out/bin
-    for b in em++ em-config emar embuilder.py emcc emcmake emconfigure emlink.py emmake emranlib emrun emscons; do
+    for b in em++ em-config emar embuilder.py emcc emcmake emconfigure emmake emranlib emrun emscons; do
       makeWrapper $appdir/$b $out/bin/$b \
         --set NODE_PATH ${nodeModules}/node_modules \
         --set EM_EXCLUSIVE_CACHE_ACCESS 1 \
diff --git a/nixpkgs/pkgs/development/compilers/emscripten/package.json b/nixpkgs/pkgs/development/compilers/emscripten/package.json
index 039d215efcd7..36cd2efe27a0 100644
--- a/nixpkgs/pkgs/development/compilers/emscripten/package.json
+++ b/nixpkgs/pkgs/development/compilers/emscripten/package.json
@@ -1,15 +1,15 @@
 {
   "name": "emscripten",
-  "version": "2.0.1",
-  "private": true,
+  "version": "2.0.10",
   "devDependencies": {
+    "es-check": "^5.1.0",
     "ws": "~0.4.28"
   },
   "dependencies": {
-    "google-closure-compiler": "20200224.0.0",
+    "acorn": "7.3.1",
+    "google-closure-compiler": "20200920.0.0",
     "html-minifier-terser": "5.0.2",
     "source-map": "0.5.6",
-    "wasm2c": "1.0.0",
-    "acorn": "7.3.1"
+    "wasm2c": "1.0.0"
   }
 }
diff --git a/nixpkgs/pkgs/development/compilers/emscripten/yarn.lock b/nixpkgs/pkgs/development/compilers/emscripten/yarn.lock
index 079b254a4728..948fcd4ed7f1 100644
--- a/nixpkgs/pkgs/development/compilers/emscripten/yarn.lock
+++ b/nixpkgs/pkgs/development/compilers/emscripten/yarn.lock
@@ -7,6 +7,31 @@ acorn@7.3.1:
   resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.3.1.tgz#85010754db53c3fbaf3b9ea3e083aa5c5d147ffd"
   integrity sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==
 
+acorn@^6.4.1:
+  version "6.4.2"
+  resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6"
+  integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==
+
+ansi-escapes@^1.1.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e"
+  integrity sha1-06ioOzGapneTZisT52HHkRQiMG4=
+
+ansi-regex@^2.0.0:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
+  integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
+
+ansi-regex@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998"
+  integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=
+
+ansi-styles@^2.2.1:
+  version "2.2.1"
+  resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
+  integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=
+
 ansi-styles@^3.2.1:
   version "3.2.1"
   resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
@@ -14,6 +39,42 @@ ansi-styles@^3.2.1:
   dependencies:
     color-convert "^1.9.0"
 
+ansi@^0.3.0, ansi@~0.3.1:
+  version "0.3.1"
+  resolved "https://registry.yarnpkg.com/ansi/-/ansi-0.3.1.tgz#0c42d4fb17160d5a9af1e484bace1c66922c1b21"
+  integrity sha1-DELU+xcWDVqa8eSEus4cZpIsGyE=
+
+are-we-there-yet@~1.1.2:
+  version "1.1.5"
+  resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21"
+  integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==
+  dependencies:
+    delegates "^1.0.0"
+    readable-stream "^2.0.6"
+
+async@~1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/async/-/async-1.0.0.tgz#f8fc04ca3a13784ade9e1641af98578cfbd647a9"
+  integrity sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=
+
+balanced-match@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
+  integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
+
+bluebird@^3.4.7:
+  version "3.7.2"
+  resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
+  integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==
+
+brace-expansion@^1.1.7:
+  version "1.1.11"
+  resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
+  integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
+  dependencies:
+    balanced-match "^1.0.0"
+    concat-map "0.0.1"
+
 buffer-from@^1.0.0:
   version "1.1.1"
   resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
@@ -27,6 +88,21 @@ camel-case@^3.0.0:
     no-case "^2.2.0"
     upper-case "^1.1.1"
 
+caporal@1.4.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/caporal/-/caporal-1.4.0.tgz#d6087b815e3df97c3a0f55dbb82850fae29ed585"
+  integrity sha512-3pWfIwKVdIbB/gWmpLloO6iGAXTRi9mcTinPOwvHfzH3BYjOhLgq2XRG3hKtp+F6vBcBXxMgCobUzBAx1d8T4A==
+  dependencies:
+    bluebird "^3.4.7"
+    cli-table3 "^0.5.0"
+    colorette "^1.0.1"
+    fast-levenshtein "^2.0.6"
+    lodash "^4.17.14"
+    micromist "1.1.0"
+    prettyjson "^1.2.1"
+    tabtab "^2.2.2"
+    winston "^2.3.1"
+
 chalk@2.x:
   version "2.4.2"
   resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
@@ -36,6 +112,17 @@ chalk@2.x:
     escape-string-regexp "^1.0.5"
     supports-color "^5.3.0"
 
+chalk@^1.0.0:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
+  integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=
+  dependencies:
+    ansi-styles "^2.2.1"
+    escape-string-regexp "^1.0.2"
+    has-ansi "^2.0.0"
+    strip-ansi "^3.0.0"
+    supports-color "^2.0.0"
+
 clean-css@^4.2.1:
   version "4.2.3"
   resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78"
@@ -43,6 +130,28 @@ clean-css@^4.2.1:
   dependencies:
     source-map "~0.6.0"
 
+cli-cursor@^1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987"
+  integrity sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=
+  dependencies:
+    restore-cursor "^1.0.1"
+
+cli-table3@^0.5.0:
+  version "0.5.1"
+  resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.5.1.tgz#0252372d94dfc40dbd8df06005f48f31f656f202"
+  integrity sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw==
+  dependencies:
+    object-assign "^4.1.0"
+    string-width "^2.1.1"
+  optionalDependencies:
+    colors "^1.1.2"
+
+cli-width@^2.0.0:
+  version "2.2.1"
+  resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48"
+  integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==
+
 clone-buffer@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58"
@@ -67,6 +176,11 @@ cloneable-readable@^1.0.0:
     process-nextick-args "^2.0.0"
     readable-stream "^2.3.5"
 
+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=
+
 color-convert@^1.9.0:
   version "1.9.3"
   resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
@@ -79,6 +193,21 @@ color-name@1.1.3:
   resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
   integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
 
+colorette@^1.0.1:
+  version "1.2.2"
+  resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94"
+  integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==
+
+colors@1.0.x:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b"
+  integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=
+
+colors@^1.1.2:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78"
+  integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==
+
 commander@^2.20.0:
   version "2.20.3"
   resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
@@ -94,62 +223,174 @@ commander@~2.1.0:
   resolved "https://registry.yarnpkg.com/commander/-/commander-2.1.0.tgz#d121bbae860d9992a3d517ba96f56588e47c6781"
   integrity sha1-0SG7roYNmZKj1Re6lvVliOR8Z4E=
 
+concat-map@0.0.1:
+  version "0.0.1"
+  resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
+  integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
+
+concat-stream@^1.4.7:
+  version "1.6.2"
+  resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
+  integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
+  dependencies:
+    buffer-from "^1.0.0"
+    inherits "^2.0.3"
+    readable-stream "^2.2.2"
+    typedarray "^0.0.6"
+
 core-util-is@~1.0.0:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
   integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
 
-escape-string-regexp@^1.0.5:
+cycle@1.0.x:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/cycle/-/cycle-1.0.3.tgz#21e80b2be8580f98b468f379430662b046c34ad2"
+  integrity sha1-IegLK+hYD5i0aPN5QwZisEbDStI=
+
+debug@^2.2.0:
+  version "2.6.9"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
+  integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
+  dependencies:
+    ms "2.0.0"
+
+delegates@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
+  integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=
+
+es-check@^5.1.0:
+  version "5.2.4"
+  resolved "https://registry.yarnpkg.com/es-check/-/es-check-5.2.4.tgz#76fe2d96ad238bd8ec1d9c3b3d0e98ddbcc723e7"
+  integrity sha512-FZ3qAJ9hwguqPvGGagaKAVDnusSkezeHbiKNM5rOepOjloeVuX2e6meMxQ+mKcnWbAFucCG7fszNrzUT8bvHcQ==
+  dependencies:
+    acorn "^6.4.1"
+    caporal "1.4.0"
+    glob "^7.1.2"
+
+escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
   version "1.0.5"
   resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
   integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
 
-google-closure-compiler-java@^20200224.0.0:
-  version "20200224.0.0"
-  resolved "https://registry.yarnpkg.com/google-closure-compiler-java/-/google-closure-compiler-java-20200224.0.0.tgz#03d71aefd0a07010fd8a7057d09c76f6729767bc"
-  integrity sha512-palFcDoScauZjWIsGDzMK6h+IctcRb55I3wJX8Ko/DTSz72xwadRdKm0lGt8OoYL7SKEO+IjgD7s8XrAGpLnlQ==
-
-google-closure-compiler-js@^20200224.0.0:
-  version "20200224.0.0"
-  resolved "https://registry.yarnpkg.com/google-closure-compiler-js/-/google-closure-compiler-js-20200224.0.0.tgz#cf4b598abf7be686c683e530529756805b8af500"
-  integrity sha512-70VKN0kbnTRtu2dqxDjWZQGfEQIHj7b7oUUCsYPO5oEXCDfgxNc13oYUJXvrTONLRWlHCNl/I8FNrVOwZ3gY/g==
+exit-hook@^1.0.0:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8"
+  integrity sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=
 
-google-closure-compiler-linux@^20200224.0.0:
-  version "20200224.0.0"
-  resolved "https://registry.yarnpkg.com/google-closure-compiler-linux/-/google-closure-compiler-linux-20200224.0.0.tgz#d9608b224b4d8f38d4d34e99a24da54bca6b1902"
-  integrity sha512-/BaE889EPrXWOKJVolA9++e99xBDMzeFBf7zF7nBB8PUmU5DlvtsoLL82xnT6nbZC1ktHaETlVx+vYGju8zKBQ==
+extend@^3.0.0:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
+  integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
 
-google-closure-compiler-osx@^20200224.0.0:
-  version "20200224.0.0"
-  resolved "https://registry.yarnpkg.com/google-closure-compiler-osx/-/google-closure-compiler-osx-20200224.0.0.tgz#aee62d8b878a662fc73b92419603168c0c3a35ed"
-  integrity sha512-WXVNW9nPUqjvCe38mUIlBGEPVPCTKLtdaXC+q+kQdonkJFHNrpdyYWa746Y8cNP/byQyDNpPsqcKseZTLh17sQ==
+external-editor@^1.1.0:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-1.1.1.tgz#12d7b0db850f7ff7e7081baf4005700060c4600b"
+  integrity sha1-Etew24UPf/fnCBuvQAVwAGDEYAs=
+  dependencies:
+    extend "^3.0.0"
+    spawn-sync "^1.0.15"
+    tmp "^0.0.29"
+
+eyes@0.1.x:
+  version "0.1.8"
+  resolved "https://registry.yarnpkg.com/eyes/-/eyes-0.1.8.tgz#62cf120234c683785d902348a800ef3e0cc20bc0"
+  integrity sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=
+
+fast-levenshtein@^2.0.6:
+  version "2.0.6"
+  resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
+  integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
+
+figures@^1.3.5:
+  version "1.7.0"
+  resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e"
+  integrity sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=
+  dependencies:
+    escape-string-regexp "^1.0.5"
+    object-assign "^4.1.0"
 
-google-closure-compiler-windows@^20200224.0.0:
-  version "20200224.0.0"
-  resolved "https://registry.yarnpkg.com/google-closure-compiler-windows/-/google-closure-compiler-windows-20200224.0.0.tgz#cae323b898625ca57b0e87aaddde021a414dda58"
-  integrity sha512-l6w2D8r9+GC9CQTAYEMAuNI996Zb6YV5qG7+FR0gCoL6h6S3Mc7mi87bafgwaicsVcmmHE/9kCBuW4ZyTMs5Fg==
+fs.realpath@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
+  integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
 
-google-closure-compiler@20200224.0.0:
-  version "20200224.0.0"
-  resolved "https://registry.yarnpkg.com/google-closure-compiler/-/google-closure-compiler-20200224.0.0.tgz#ec0e708d9716a48e12fff43fe37fa5cec732a283"
-  integrity sha512-V81dRYygdHbZtOtU16VX26xAdJBB1UZyfSg3OTzdNl3l/xEIx1D/L7TYUqjeTXsxcy+JruJ/UfUlIJAOaMRTog==
+gauge@~1.2.5:
+  version "1.2.7"
+  resolved "https://registry.yarnpkg.com/gauge/-/gauge-1.2.7.tgz#e9cec5483d3d4ee0ef44b60a7d99e4935e136d93"
+  integrity sha1-6c7FSD09TuDvRLYKfZnkk14TbZM=
+  dependencies:
+    ansi "^0.3.0"
+    has-unicode "^2.0.0"
+    lodash.pad "^4.1.0"
+    lodash.padend "^4.1.0"
+    lodash.padstart "^4.1.0"
+
+glob@^7.1.2:
+  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"
+
+google-closure-compiler-java@^20200920.0.0:
+  version "20200920.0.0"
+  resolved "https://registry.yarnpkg.com/google-closure-compiler-java/-/google-closure-compiler-java-20200920.0.0.tgz#23519b14e004f2a9eda4f5b887842ae46ad7022e"
+  integrity sha512-q8m/+QLBWrzjg5VZ2b4B628zDvbi0Gyenj9bvZQlPY7mqj68HXhe5aOfKzZO7vXgHDXMvsvI3v/1g5mPAku/5w==
+
+google-closure-compiler-linux@^20200920.0.0:
+  version "20200920.0.0"
+  resolved "https://registry.yarnpkg.com/google-closure-compiler-linux/-/google-closure-compiler-linux-20200920.0.0.tgz#622c28a784e8a93f9cc5e7cd7b675d2ed0e11d0b"
+  integrity sha512-F5HcTbeklcaxdWzlZu5b1ZKzCt1kSBUWsBfvlrDCFkA2pdBxIIC2VPokGAUZCqlfno2J2gYARz8FNCrx0tCx5g==
+
+google-closure-compiler-osx@^20200920.0.0:
+  version "20200920.0.0"
+  resolved "https://registry.yarnpkg.com/google-closure-compiler-osx/-/google-closure-compiler-osx-20200920.0.0.tgz#6157a06e7d851d25d60de95c4bcd464d768278b1"
+  integrity sha512-2WY+HaUWVQNg9WZs9d4Op3zvS6yIVN2AIouU4grwYWXfFk+CMXZou0ASlsOURaYc2WZ22LW/G1w3vINDoCkSww==
+
+google-closure-compiler-windows@^20200920.0.0:
+  version "20200920.0.0"
+  resolved "https://registry.yarnpkg.com/google-closure-compiler-windows/-/google-closure-compiler-windows-20200920.0.0.tgz#755ddeb8032530c6ed13962e328d9af3269d0748"
+  integrity sha512-0c4Dem3em3ASNpcR/2USx1Kvb+I7L2MvsV1IZ5Pu98jTuhnkmlccQqPzk2rZR6lllVbVFXTb6tju0JxZ7Zoxjg==
+
+google-closure-compiler@20200920.0.0:
+  version "20200920.0.0"
+  resolved "https://registry.yarnpkg.com/google-closure-compiler/-/google-closure-compiler-20200920.0.0.tgz#e1c54b7f1be8cbb33649d8d05e761bbf11e4eaa3"
+  integrity sha512-IOC77xL3+pYcAM+OVfcILKdrZNEy767JmpdVs2sq3I9+4JoHeKaJrmQXgbcXN2reUmzBw5b5m9Kd036Cr8ouBA==
   dependencies:
     chalk "2.x"
-    google-closure-compiler-java "^20200224.0.0"
-    google-closure-compiler-js "^20200224.0.0"
+    google-closure-compiler-java "^20200920.0.0"
     minimist "1.x"
     vinyl "2.x"
     vinyl-sourcemaps-apply "^0.2.0"
   optionalDependencies:
-    google-closure-compiler-linux "^20200224.0.0"
-    google-closure-compiler-osx "^20200224.0.0"
-    google-closure-compiler-windows "^20200224.0.0"
+    google-closure-compiler-linux "^20200920.0.0"
+    google-closure-compiler-osx "^20200920.0.0"
+    google-closure-compiler-windows "^20200920.0.0"
+
+has-ansi@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
+  integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=
+  dependencies:
+    ansi-regex "^2.0.0"
 
 has-flag@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
   integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
 
+has-unicode@^2.0.0:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
+  integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=
+
 he@^1.2.0:
   version "1.2.0"
   resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
@@ -168,26 +409,137 @@ html-minifier-terser@5.0.2:
     relateurl "^0.2.7"
     terser "^4.3.9"
 
-inherits@^2.0.1, inherits@~2.0.3:
+inflight@^1.0.4:
+  version "1.0.6"
+  resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
+  integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
+  dependencies:
+    once "^1.3.0"
+    wrappy "1"
+
+inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3:
   version "2.0.4"
   resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
   integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
 
+inquirer@^1.0.2:
+  version "1.2.3"
+  resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-1.2.3.tgz#4dec6f32f37ef7bb0b2ed3f1d1a5c3f545074918"
+  integrity sha1-TexvMvN+97sLLtPx0aXD9UUHSRg=
+  dependencies:
+    ansi-escapes "^1.1.0"
+    chalk "^1.0.0"
+    cli-cursor "^1.0.1"
+    cli-width "^2.0.0"
+    external-editor "^1.1.0"
+    figures "^1.3.5"
+    lodash "^4.3.0"
+    mute-stream "0.0.6"
+    pinkie-promise "^2.0.0"
+    run-async "^2.2.0"
+    rx "^4.1.0"
+    string-width "^1.0.1"
+    strip-ansi "^3.0.0"
+    through "^2.3.6"
+
+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"
+  integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
+
 isarray@~1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
   integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
 
+isstream@0.1.x:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
+  integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=
+
+lodash.camelcase@^4.3.0:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6"
+  integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY=
+
+lodash.difference@^4.5.0:
+  version "4.5.0"
+  resolved "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz#9ccb4e505d486b91651345772885a2df27fd017c"
+  integrity sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=
+
+lodash.pad@^4.1.0:
+  version "4.5.1"
+  resolved "https://registry.yarnpkg.com/lodash.pad/-/lodash.pad-4.5.1.tgz#4330949a833a7c8da22cc20f6a26c4d59debba70"
+  integrity sha1-QzCUmoM6fI2iLMIPaibE1Z3runA=
+
+lodash.padend@^4.1.0:
+  version "4.6.1"
+  resolved "https://registry.yarnpkg.com/lodash.padend/-/lodash.padend-4.6.1.tgz#53ccba047d06e158d311f45da625f4e49e6f166e"
+  integrity sha1-U8y6BH0G4VjTEfRdpiX05J5vFm4=
+
+lodash.padstart@^4.1.0:
+  version "4.6.1"
+  resolved "https://registry.yarnpkg.com/lodash.padstart/-/lodash.padstart-4.6.1.tgz#d2e3eebff0d9d39ad50f5cbd1b52a7bce6bb611b"
+  integrity sha1-0uPuv/DZ05rVD1y9G1KnvOa7YRs=
+
+lodash.uniq@^4.5.0:
+  version "4.5.0"
+  resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
+  integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=
+
+lodash@^4.17.14, lodash@^4.3.0:
+  version "4.17.21"
+  resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
+  integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
+
 lower-case@^1.1.1:
   version "1.1.4"
   resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac"
   integrity sha1-miyr0bno4K6ZOkv31YdcOcQujqw=
 
-minimist@1.x:
+micromist@1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/micromist/-/micromist-1.1.0.tgz#a490bcf9a4b918ad9eed8e52d0ec98b9c3b2d3c8"
+  integrity sha512-+CQ76pabE9egniSEdmDuH+j2cYyIBKP97kujG8ZLZyLCRq5ExwtIy4DPHPFrq4jVbhMRBnyjuH50KU9Ohs8QCg==
+  dependencies:
+    lodash.camelcase "^4.3.0"
+
+minimatch@^3.0.4:
+  version "3.0.4"
+  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
+  integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
+  dependencies:
+    brace-expansion "^1.1.7"
+
+minimist@1.x, minimist@^1.2.0, 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==
 
+mkdirp@^0.5.1:
+  version "0.5.5"
+  resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
+  integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
+  dependencies:
+    minimist "^1.2.5"
+
+ms@2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
+  integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
+
+mute-stream@0.0.6:
+  version "0.0.6"
+  resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.6.tgz#48962b19e169fd1dfc240b3f1e7317627bbc47db"
+  integrity sha1-SJYrGeFp/R38JAs/HnMXYnu8R9s=
+
 nan@~1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/nan/-/nan-1.0.0.tgz#ae24f8850818d662fcab5acf7f3b95bfaa2ccf38"
@@ -200,11 +552,52 @@ no-case@^2.2.0:
   dependencies:
     lower-case "^1.1.1"
 
+npmlog@^2.0.3:
+  version "2.0.4"
+  resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-2.0.4.tgz#98b52530f2514ca90d09ec5b22c8846722375692"
+  integrity sha1-mLUlMPJRTKkNCexbIsiEZyI3VpI=
+  dependencies:
+    ansi "~0.3.1"
+    are-we-there-yet "~1.1.2"
+    gauge "~1.2.5"
+
+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=
+
+object-assign@^4.1.0:
+  version "4.1.1"
+  resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
+  integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
+
+once@^1.3.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
+  integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
+  dependencies:
+    wrappy "1"
+
+onetime@^1.0.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789"
+  integrity sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=
+
 options@>=0.0.5:
   version "0.0.6"
   resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f"
   integrity sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=
 
+os-shim@^0.1.2:
+  version "0.1.3"
+  resolved "https://registry.yarnpkg.com/os-shim/-/os-shim-0.1.3.tgz#6b62c3791cf7909ea35ed46e17658bb417cb3917"
+  integrity sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=
+
+os-tmpdir@~1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
+  integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
+
 param-case@^2.1.1:
   version "2.1.1"
   resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247"
@@ -212,12 +605,37 @@ param-case@^2.1.1:
   dependencies:
     no-case "^2.2.0"
 
+path-is-absolute@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
+  integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
+
+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=
+
+prettyjson@^1.2.1:
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/prettyjson/-/prettyjson-1.2.1.tgz#fcffab41d19cab4dfae5e575e64246619b12d289"
+  integrity sha1-/P+rQdGcq0365eV15kJGYZsS0ok=
+  dependencies:
+    colors "^1.1.2"
+    minimist "^1.2.0"
+
 process-nextick-args@^2.0.0, process-nextick-args@~2.0.0:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
   integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
 
-readable-stream@^2.3.5:
+readable-stream@^2.0.6, readable-stream@^2.2.2, readable-stream@^2.3.5:
   version "2.3.7"
   resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
   integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
@@ -245,6 +663,24 @@ replace-ext@^1.0.0:
   resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.1.tgz#2d6d996d04a15855d967443631dd5f77825b016a"
   integrity sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==
 
+restore-cursor@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541"
+  integrity sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=
+  dependencies:
+    exit-hook "^1.0.0"
+    onetime "^1.0.0"
+
+run-async@^2.2.0:
+  version "2.4.1"
+  resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455"
+  integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==
+
+rx@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782"
+  integrity sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=
+
 safe-buffer@~5.1.0, safe-buffer@~5.1.1:
   version "5.1.2"
   resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
@@ -273,6 +709,36 @@ source-map@^0.6.0, source-map@~0.6.0, source-map@~0.6.1:
   resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
   integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
 
+spawn-sync@^1.0.15:
+  version "1.0.15"
+  resolved "https://registry.yarnpkg.com/spawn-sync/-/spawn-sync-1.0.15.tgz#b00799557eb7fb0c8376c29d44e8a1ea67e57476"
+  integrity sha1-sAeZVX63+wyDdsKdROih6mfldHY=
+  dependencies:
+    concat-stream "^1.4.7"
+    os-shim "^0.1.2"
+
+stack-trace@0.0.x:
+  version "0.0.10"
+  resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0"
+  integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=
+
+string-width@^1.0.1:
+  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@^2.1.1:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
+  integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
+  dependencies:
+    is-fullwidth-code-point "^2.0.0"
+    strip-ansi "^4.0.0"
+
 string_decoder@~1.1.1:
   version "1.1.1"
   resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
@@ -280,6 +746,25 @@ string_decoder@~1.1.1:
   dependencies:
     safe-buffer "~5.1.0"
 
+strip-ansi@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
+  integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
+  dependencies:
+    ansi-regex "^2.0.0"
+
+strip-ansi@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f"
+  integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8=
+  dependencies:
+    ansi-regex "^3.0.0"
+
+supports-color@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
+  integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=
+
 supports-color@^5.3.0:
   version "5.5.0"
   resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
@@ -287,6 +772,20 @@ supports-color@^5.3.0:
   dependencies:
     has-flag "^3.0.0"
 
+tabtab@^2.2.2:
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/tabtab/-/tabtab-2.2.2.tgz#7a047f143b010b4cbd31f857e82961512cbf4e14"
+  integrity sha1-egR/FDsBC0y9MfhX6ClhUSy/ThQ=
+  dependencies:
+    debug "^2.2.0"
+    inquirer "^1.0.2"
+    lodash.difference "^4.5.0"
+    lodash.uniq "^4.5.0"
+    minimist "^1.2.0"
+    mkdirp "^0.5.1"
+    npmlog "^2.0.3"
+    object-assign "^4.1.0"
+
 terser@^4.3.9:
   version "4.8.0"
   resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17"
@@ -296,11 +795,28 @@ terser@^4.3.9:
     source-map "~0.6.1"
     source-map-support "~0.5.12"
 
+through@^2.3.6:
+  version "2.3.8"
+  resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
+  integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=
+
 tinycolor@0.x:
   version "0.0.1"
   resolved "https://registry.yarnpkg.com/tinycolor/-/tinycolor-0.0.1.tgz#320b5a52d83abb5978d81a3e887d4aefb15a6164"
   integrity sha1-MgtaUtg6u1l42Bo+iH1K77FaYWQ=
 
+tmp@^0.0.29:
+  version "0.0.29"
+  resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.29.tgz#f25125ff0dd9da3ccb0c2dd371ee1288bb9128c0"
+  integrity sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA=
+  dependencies:
+    os-tmpdir "~1.0.1"
+
+typedarray@^0.0.6:
+  version "0.0.6"
+  resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
+  integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
+
 upper-case@^1.1.1:
   version "1.1.3"
   resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598"
@@ -335,6 +851,23 @@ wasm2c@1.0.0:
   resolved "https://registry.yarnpkg.com/wasm2c/-/wasm2c-1.0.0.tgz#761671e141c46b8a7c6c54429db1e6bfa3cd0ec0"
   integrity sha512-4SIESF2JNxrry6XFa/UQcsQibn+bxPkQ/oqixiXz2o8fsMl8J4vtvhH/evgbi8vZajAlaukuihEcQTWb9tVLUA==
 
+winston@^2.3.1:
+  version "2.4.5"
+  resolved "https://registry.yarnpkg.com/winston/-/winston-2.4.5.tgz#f2e431d56154c4ea765545fc1003bd340c95b59a"
+  integrity sha512-TWoamHt5yYvsMarGlGEQE59SbJHqGsZV8/lwC+iCcGeAe0vUaOh+Lv6SYM17ouzC/a/LB1/hz/7sxFBtlu1l4A==
+  dependencies:
+    async "~1.0.0"
+    colors "1.0.x"
+    cycle "1.0.x"
+    eyes "0.1.x"
+    isstream "0.1.x"
+    stack-trace "0.0.x"
+
+wrappy@1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
+  integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
+
 ws@~0.4.28:
   version "0.4.32"
   resolved "https://registry.yarnpkg.com/ws/-/ws-0.4.32.tgz#787a6154414f3c99ed83c5772153b20feb0cec32"
diff --git a/nixpkgs/pkgs/development/compilers/emscripten/yarn.nix b/nixpkgs/pkgs/development/compilers/emscripten/yarn.nix
index af01d9c6869b..d0c3395f28af 100644
--- a/nixpkgs/pkgs/development/compilers/emscripten/yarn.nix
+++ b/nixpkgs/pkgs/development/compilers/emscripten/yarn.nix
@@ -10,6 +10,46 @@
       };
     }
     {
+      name = "acorn___acorn_6.4.2.tgz";
+      path = fetchurl {
+        name = "acorn___acorn_6.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz";
+        sha1 = "35866fd710528e92de10cf06016498e47e39e1e6";
+      };
+    }
+    {
+      name = "ansi_escapes___ansi_escapes_1.4.0.tgz";
+      path = fetchurl {
+        name = "ansi_escapes___ansi_escapes_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz";
+        sha1 = "d3a8a83b319aa67793662b13e761c7911422306e";
+      };
+    }
+    {
+      name = "ansi_regex___ansi_regex_2.1.1.tgz";
+      path = fetchurl {
+        name = "ansi_regex___ansi_regex_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz";
+        sha1 = "c3b33ab5ee360d86e0e628f0468ae7ef27d654df";
+      };
+    }
+    {
+      name = "ansi_regex___ansi_regex_3.0.0.tgz";
+      path = fetchurl {
+        name = "ansi_regex___ansi_regex_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz";
+        sha1 = "ed0317c322064f79466c02966bddb605ab37d998";
+      };
+    }
+    {
+      name = "ansi_styles___ansi_styles_2.2.1.tgz";
+      path = fetchurl {
+        name = "ansi_styles___ansi_styles_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz";
+        sha1 = "b432dd3358b634cf75e1e4664368240533c1ddbe";
+      };
+    }
+    {
       name = "ansi_styles___ansi_styles_3.2.1.tgz";
       path = fetchurl {
         name = "ansi_styles___ansi_styles_3.2.1.tgz";
@@ -18,6 +58,54 @@
       };
     }
     {
+      name = "ansi___ansi_0.3.1.tgz";
+      path = fetchurl {
+        name = "ansi___ansi_0.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi/-/ansi-0.3.1.tgz";
+        sha1 = "0c42d4fb17160d5a9af1e484bace1c66922c1b21";
+      };
+    }
+    {
+      name = "are_we_there_yet___are_we_there_yet_1.1.5.tgz";
+      path = fetchurl {
+        name = "are_we_there_yet___are_we_there_yet_1.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz";
+        sha1 = "4b35c2944f062a8bfcda66410760350fe9ddfc21";
+      };
+    }
+    {
+      name = "async___async_1.0.0.tgz";
+      path = fetchurl {
+        name = "async___async_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/async/-/async-1.0.0.tgz";
+        sha1 = "f8fc04ca3a13784ade9e1641af98578cfbd647a9";
+      };
+    }
+    {
+      name = "balanced_match___balanced_match_1.0.2.tgz";
+      path = fetchurl {
+        name = "balanced_match___balanced_match_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz";
+        sha1 = "e83e3a7e3f300b34cb9d87f615fa0cbf357690ee";
+      };
+    }
+    {
+      name = "bluebird___bluebird_3.7.2.tgz";
+      path = fetchurl {
+        name = "bluebird___bluebird_3.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz";
+        sha1 = "9f229c15be272454ffa973ace0dbee79a1b0c36f";
+      };
+    }
+    {
+      name = "brace_expansion___brace_expansion_1.1.11.tgz";
+      path = fetchurl {
+        name = "brace_expansion___brace_expansion_1.1.11.tgz";
+        url  = "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz";
+        sha1 = "3c7fcbf529d87226f3d2f52b966ff5271eb441dd";
+      };
+    }
+    {
       name = "buffer_from___buffer_from_1.1.1.tgz";
       path = fetchurl {
         name = "buffer_from___buffer_from_1.1.1.tgz";
@@ -34,6 +122,14 @@
       };
     }
     {
+      name = "caporal___caporal_1.4.0.tgz";
+      path = fetchurl {
+        name = "caporal___caporal_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/caporal/-/caporal-1.4.0.tgz";
+        sha1 = "d6087b815e3df97c3a0f55dbb82850fae29ed585";
+      };
+    }
+    {
       name = "chalk___chalk_2.4.2.tgz";
       path = fetchurl {
         name = "chalk___chalk_2.4.2.tgz";
@@ -42,6 +138,14 @@
       };
     }
     {
+      name = "chalk___chalk_1.1.3.tgz";
+      path = fetchurl {
+        name = "chalk___chalk_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz";
+        sha1 = "a8115c55e4a702fe4d150abd3872822a7e09fc98";
+      };
+    }
+    {
       name = "clean_css___clean_css_4.2.3.tgz";
       path = fetchurl {
         name = "clean_css___clean_css_4.2.3.tgz";
@@ -50,6 +154,30 @@
       };
     }
     {
+      name = "cli_cursor___cli_cursor_1.0.2.tgz";
+      path = fetchurl {
+        name = "cli_cursor___cli_cursor_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz";
+        sha1 = "64da3f7d56a54412e59794bd62dc35295e8f2987";
+      };
+    }
+    {
+      name = "cli_table3___cli_table3_0.5.1.tgz";
+      path = fetchurl {
+        name = "cli_table3___cli_table3_0.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.5.1.tgz";
+        sha1 = "0252372d94dfc40dbd8df06005f48f31f656f202";
+      };
+    }
+    {
+      name = "cli_width___cli_width_2.2.1.tgz";
+      path = fetchurl {
+        name = "cli_width___cli_width_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz";
+        sha1 = "b0433d0b4e9c847ef18868a4ef16fd5fc8271c48";
+      };
+    }
+    {
       name = "clone_buffer___clone_buffer_1.0.0.tgz";
       path = fetchurl {
         name = "clone_buffer___clone_buffer_1.0.0.tgz";
@@ -82,6 +210,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 = "color_convert___color_convert_1.9.3.tgz";
       path = fetchurl {
         name = "color_convert___color_convert_1.9.3.tgz";
@@ -98,6 +234,30 @@
       };
     }
     {
+      name = "colorette___colorette_1.2.2.tgz";
+      path = fetchurl {
+        name = "colorette___colorette_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz";
+        sha1 = "cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94";
+      };
+    }
+    {
+      name = "colors___colors_1.0.3.tgz";
+      path = fetchurl {
+        name = "colors___colors_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz";
+        sha1 = "0433f44d809680fdeb60ed260f1b0c262e82a40b";
+      };
+    }
+    {
+      name = "colors___colors_1.4.0.tgz";
+      path = fetchurl {
+        name = "colors___colors_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz";
+        sha1 = "c50491479d4c1bdaed2c9ced32cf7c7dc2360f78";
+      };
+    }
+    {
       name = "commander___commander_2.20.3.tgz";
       path = fetchurl {
         name = "commander___commander_2.20.3.tgz";
@@ -122,6 +282,22 @@
       };
     }
     {
+      name = "concat_map___concat_map_0.0.1.tgz";
+      path = fetchurl {
+        name = "concat_map___concat_map_0.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz";
+        sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
+      };
+    }
+    {
+      name = "concat_stream___concat_stream_1.6.2.tgz";
+      path = fetchurl {
+        name = "concat_stream___concat_stream_1.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz";
+        sha1 = "904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34";
+      };
+    }
+    {
       name = "core_util_is___core_util_is_1.0.2.tgz";
       path = fetchurl {
         name = "core_util_is___core_util_is_1.0.2.tgz";
@@ -130,6 +306,38 @@
       };
     }
     {
+      name = "cycle___cycle_1.0.3.tgz";
+      path = fetchurl {
+        name = "cycle___cycle_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/cycle/-/cycle-1.0.3.tgz";
+        sha1 = "21e80b2be8580f98b468f379430662b046c34ad2";
+      };
+    }
+    {
+      name = "debug___debug_2.6.9.tgz";
+      path = fetchurl {
+        name = "debug___debug_2.6.9.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz";
+        sha1 = "5d128515df134ff327e90a4c93f4e077a536341f";
+      };
+    }
+    {
+      name = "delegates___delegates_1.0.0.tgz";
+      path = fetchurl {
+        name = "delegates___delegates_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz";
+        sha1 = "84c6e159b81904fdca59a0ef44cd870d31250f9a";
+      };
+    }
+    {
+      name = "es_check___es_check_5.2.4.tgz";
+      path = fetchurl {
+        name = "es_check___es_check_5.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/es-check/-/es-check-5.2.4.tgz";
+        sha1 = "76fe2d96ad238bd8ec1d9c3b3d0e98ddbcc723e7";
+      };
+    }
+    {
       name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
       path = fetchurl {
         name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
@@ -138,51 +346,123 @@
       };
     }
     {
-      name = "google_closure_compiler_java___google_closure_compiler_java_20200224.0.0.tgz";
+      name = "exit_hook___exit_hook_1.1.1.tgz";
+      path = fetchurl {
+        name = "exit_hook___exit_hook_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz";
+        sha1 = "f05ca233b48c05d54fff07765df8507e95c02ff8";
+      };
+    }
+    {
+      name = "extend___extend_3.0.2.tgz";
+      path = fetchurl {
+        name = "extend___extend_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz";
+        sha1 = "f8b1136b4071fbd8eb140aff858b1019ec2915fa";
+      };
+    }
+    {
+      name = "external_editor___external_editor_1.1.1.tgz";
+      path = fetchurl {
+        name = "external_editor___external_editor_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/external-editor/-/external-editor-1.1.1.tgz";
+        sha1 = "12d7b0db850f7ff7e7081baf4005700060c4600b";
+      };
+    }
+    {
+      name = "eyes___eyes_0.1.8.tgz";
+      path = fetchurl {
+        name = "eyes___eyes_0.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/eyes/-/eyes-0.1.8.tgz";
+        sha1 = "62cf120234c683785d902348a800ef3e0cc20bc0";
+      };
+    }
+    {
+      name = "fast_levenshtein___fast_levenshtein_2.0.6.tgz";
       path = fetchurl {
-        name = "google_closure_compiler_java___google_closure_compiler_java_20200224.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/google-closure-compiler-java/-/google-closure-compiler-java-20200224.0.0.tgz";
-        sha1 = "03d71aefd0a07010fd8a7057d09c76f6729767bc";
+        name = "fast_levenshtein___fast_levenshtein_2.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz";
+        sha1 = "3d8a5c66883a16a30ca8643e851f19baa7797917";
       };
     }
     {
-      name = "google_closure_compiler_js___google_closure_compiler_js_20200224.0.0.tgz";
+      name = "figures___figures_1.7.0.tgz";
       path = fetchurl {
-        name = "google_closure_compiler_js___google_closure_compiler_js_20200224.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/google-closure-compiler-js/-/google-closure-compiler-js-20200224.0.0.tgz";
-        sha1 = "cf4b598abf7be686c683e530529756805b8af500";
+        name = "figures___figures_1.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz";
+        sha1 = "cbe1e3affcf1cd44b80cadfed28dc793a9701d2e";
       };
     }
     {
-      name = "google_closure_compiler_linux___google_closure_compiler_linux_20200224.0.0.tgz";
+      name = "fs.realpath___fs.realpath_1.0.0.tgz";
       path = fetchurl {
-        name = "google_closure_compiler_linux___google_closure_compiler_linux_20200224.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/google-closure-compiler-linux/-/google-closure-compiler-linux-20200224.0.0.tgz";
-        sha1 = "d9608b224b4d8f38d4d34e99a24da54bca6b1902";
+        name = "fs.realpath___fs.realpath_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz";
+        sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f";
       };
     }
     {
-      name = "google_closure_compiler_osx___google_closure_compiler_osx_20200224.0.0.tgz";
+      name = "gauge___gauge_1.2.7.tgz";
       path = fetchurl {
-        name = "google_closure_compiler_osx___google_closure_compiler_osx_20200224.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/google-closure-compiler-osx/-/google-closure-compiler-osx-20200224.0.0.tgz";
-        sha1 = "aee62d8b878a662fc73b92419603168c0c3a35ed";
+        name = "gauge___gauge_1.2.7.tgz";
+        url  = "https://registry.yarnpkg.com/gauge/-/gauge-1.2.7.tgz";
+        sha1 = "e9cec5483d3d4ee0ef44b60a7d99e4935e136d93";
       };
     }
     {
-      name = "google_closure_compiler_windows___google_closure_compiler_windows_20200224.0.0.tgz";
+      name = "glob___glob_7.1.7.tgz";
       path = fetchurl {
-        name = "google_closure_compiler_windows___google_closure_compiler_windows_20200224.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/google-closure-compiler-windows/-/google-closure-compiler-windows-20200224.0.0.tgz";
-        sha1 = "cae323b898625ca57b0e87aaddde021a414dda58";
+        name = "glob___glob_7.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz";
+        sha1 = "3b193e9233f01d42d0b3f78294bbeeb418f94a90";
       };
     }
     {
-      name = "google_closure_compiler___google_closure_compiler_20200224.0.0.tgz";
+      name = "google_closure_compiler_java___google_closure_compiler_java_20200920.0.0.tgz";
       path = fetchurl {
-        name = "google_closure_compiler___google_closure_compiler_20200224.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/google-closure-compiler/-/google-closure-compiler-20200224.0.0.tgz";
-        sha1 = "ec0e708d9716a48e12fff43fe37fa5cec732a283";
+        name = "google_closure_compiler_java___google_closure_compiler_java_20200920.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/google-closure-compiler-java/-/google-closure-compiler-java-20200920.0.0.tgz";
+        sha1 = "23519b14e004f2a9eda4f5b887842ae46ad7022e";
+      };
+    }
+    {
+      name = "google_closure_compiler_linux___google_closure_compiler_linux_20200920.0.0.tgz";
+      path = fetchurl {
+        name = "google_closure_compiler_linux___google_closure_compiler_linux_20200920.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/google-closure-compiler-linux/-/google-closure-compiler-linux-20200920.0.0.tgz";
+        sha1 = "622c28a784e8a93f9cc5e7cd7b675d2ed0e11d0b";
+      };
+    }
+    {
+      name = "google_closure_compiler_osx___google_closure_compiler_osx_20200920.0.0.tgz";
+      path = fetchurl {
+        name = "google_closure_compiler_osx___google_closure_compiler_osx_20200920.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/google-closure-compiler-osx/-/google-closure-compiler-osx-20200920.0.0.tgz";
+        sha1 = "6157a06e7d851d25d60de95c4bcd464d768278b1";
+      };
+    }
+    {
+      name = "google_closure_compiler_windows___google_closure_compiler_windows_20200920.0.0.tgz";
+      path = fetchurl {
+        name = "google_closure_compiler_windows___google_closure_compiler_windows_20200920.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/google-closure-compiler-windows/-/google-closure-compiler-windows-20200920.0.0.tgz";
+        sha1 = "755ddeb8032530c6ed13962e328d9af3269d0748";
+      };
+    }
+    {
+      name = "google_closure_compiler___google_closure_compiler_20200920.0.0.tgz";
+      path = fetchurl {
+        name = "google_closure_compiler___google_closure_compiler_20200920.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/google-closure-compiler/-/google-closure-compiler-20200920.0.0.tgz";
+        sha1 = "e1c54b7f1be8cbb33649d8d05e761bbf11e4eaa3";
+      };
+    }
+    {
+      name = "has_ansi___has_ansi_2.0.0.tgz";
+      path = fetchurl {
+        name = "has_ansi___has_ansi_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz";
+        sha1 = "34f5049ce1ecdf2b0649af3ef24e45ed35416d91";
       };
     }
     {
@@ -194,6 +474,14 @@
       };
     }
     {
+      name = "has_unicode___has_unicode_2.0.1.tgz";
+      path = fetchurl {
+        name = "has_unicode___has_unicode_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz";
+        sha1 = "e0e6fe6a28cf51138855e086d1691e771de2a8b9";
+      };
+    }
+    {
       name = "he___he_1.2.0.tgz";
       path = fetchurl {
         name = "he___he_1.2.0.tgz";
@@ -210,6 +498,14 @@
       };
     }
     {
+      name = "inflight___inflight_1.0.6.tgz";
+      path = fetchurl {
+        name = "inflight___inflight_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz";
+        sha1 = "49bd6331d7d02d0c09bc910a1075ba8165b56df9";
+      };
+    }
+    {
       name = "inherits___inherits_2.0.4.tgz";
       path = fetchurl {
         name = "inherits___inherits_2.0.4.tgz";
@@ -218,6 +514,30 @@
       };
     }
     {
+      name = "inquirer___inquirer_1.2.3.tgz";
+      path = fetchurl {
+        name = "inquirer___inquirer_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/inquirer/-/inquirer-1.2.3.tgz";
+        sha1 = "4dec6f32f37ef7bb0b2ed3f1d1a5c3f545074918";
+      };
+    }
+    {
+      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";
+        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz";
+        sha1 = "a3b30a5c4f199183167aaab93beefae3ddfb654f";
+      };
+    }
+    {
       name = "isarray___isarray_1.0.0.tgz";
       path = fetchurl {
         name = "isarray___isarray_1.0.0.tgz";
@@ -226,6 +546,70 @@
       };
     }
     {
+      name = "isstream___isstream_0.1.2.tgz";
+      path = fetchurl {
+        name = "isstream___isstream_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz";
+        sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
+      };
+    }
+    {
+      name = "lodash.camelcase___lodash.camelcase_4.3.0.tgz";
+      path = fetchurl {
+        name = "lodash.camelcase___lodash.camelcase_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz";
+        sha1 = "b28aa6288a2b9fc651035c7711f65ab6190331a6";
+      };
+    }
+    {
+      name = "lodash.difference___lodash.difference_4.5.0.tgz";
+      path = fetchurl {
+        name = "lodash.difference___lodash.difference_4.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz";
+        sha1 = "9ccb4e505d486b91651345772885a2df27fd017c";
+      };
+    }
+    {
+      name = "lodash.pad___lodash.pad_4.5.1.tgz";
+      path = fetchurl {
+        name = "lodash.pad___lodash.pad_4.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.pad/-/lodash.pad-4.5.1.tgz";
+        sha1 = "4330949a833a7c8da22cc20f6a26c4d59debba70";
+      };
+    }
+    {
+      name = "lodash.padend___lodash.padend_4.6.1.tgz";
+      path = fetchurl {
+        name = "lodash.padend___lodash.padend_4.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.padend/-/lodash.padend-4.6.1.tgz";
+        sha1 = "53ccba047d06e158d311f45da625f4e49e6f166e";
+      };
+    }
+    {
+      name = "lodash.padstart___lodash.padstart_4.6.1.tgz";
+      path = fetchurl {
+        name = "lodash.padstart___lodash.padstart_4.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.padstart/-/lodash.padstart-4.6.1.tgz";
+        sha1 = "d2e3eebff0d9d39ad50f5cbd1b52a7bce6bb611b";
+      };
+    }
+    {
+      name = "lodash.uniq___lodash.uniq_4.5.0.tgz";
+      path = fetchurl {
+        name = "lodash.uniq___lodash.uniq_4.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz";
+        sha1 = "d0225373aeb652adc1bc82e4945339a842754773";
+      };
+    }
+    {
+      name = "lodash___lodash_4.17.21.tgz";
+      path = fetchurl {
+        name = "lodash___lodash_4.17.21.tgz";
+        url  = "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz";
+        sha1 = "679591c564c3bffaae8454cf0b3df370c3d6911c";
+      };
+    }
+    {
       name = "lower_case___lower_case_1.1.4.tgz";
       path = fetchurl {
         name = "lower_case___lower_case_1.1.4.tgz";
@@ -234,6 +618,22 @@
       };
     }
     {
+      name = "micromist___micromist_1.1.0.tgz";
+      path = fetchurl {
+        name = "micromist___micromist_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/micromist/-/micromist-1.1.0.tgz";
+        sha1 = "a490bcf9a4b918ad9eed8e52d0ec98b9c3b2d3c8";
+      };
+    }
+    {
+      name = "minimatch___minimatch_3.0.4.tgz";
+      path = fetchurl {
+        name = "minimatch___minimatch_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz";
+        sha1 = "5166e286457f03306064be5497e8dbb0c3d32083";
+      };
+    }
+    {
       name = "minimist___minimist_1.2.5.tgz";
       path = fetchurl {
         name = "minimist___minimist_1.2.5.tgz";
@@ -242,6 +642,30 @@
       };
     }
     {
+      name = "mkdirp___mkdirp_0.5.5.tgz";
+      path = fetchurl {
+        name = "mkdirp___mkdirp_0.5.5.tgz";
+        url  = "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz";
+        sha1 = "d91cefd62d1436ca0f41620e251288d420099def";
+      };
+    }
+    {
+      name = "ms___ms_2.0.0.tgz";
+      path = fetchurl {
+        name = "ms___ms_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz";
+        sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8";
+      };
+    }
+    {
+      name = "mute_stream___mute_stream_0.0.6.tgz";
+      path = fetchurl {
+        name = "mute_stream___mute_stream_0.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.6.tgz";
+        sha1 = "48962b19e169fd1dfc240b3f1e7317627bbc47db";
+      };
+    }
+    {
       name = "nan___nan_1.0.0.tgz";
       path = fetchurl {
         name = "nan___nan_1.0.0.tgz";
@@ -258,6 +682,46 @@
       };
     }
     {
+      name = "npmlog___npmlog_2.0.4.tgz";
+      path = fetchurl {
+        name = "npmlog___npmlog_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/npmlog/-/npmlog-2.0.4.tgz";
+        sha1 = "98b52530f2514ca90d09ec5b22c8846722375692";
+      };
+    }
+    {
+      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 = "object_assign___object_assign_4.1.1.tgz";
+      path = fetchurl {
+        name = "object_assign___object_assign_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz";
+        sha1 = "2109adc7965887cfc05cbbd442cac8bfbb360863";
+      };
+    }
+    {
+      name = "once___once_1.4.0.tgz";
+      path = fetchurl {
+        name = "once___once_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz";
+        sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1";
+      };
+    }
+    {
+      name = "onetime___onetime_1.1.0.tgz";
+      path = fetchurl {
+        name = "onetime___onetime_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz";
+        sha1 = "a1f7838f8314c516f05ecefcbc4ccfe04b4ed789";
+      };
+    }
+    {
       name = "options___options_0.0.6.tgz";
       path = fetchurl {
         name = "options___options_0.0.6.tgz";
@@ -266,6 +730,22 @@
       };
     }
     {
+      name = "os_shim___os_shim_0.1.3.tgz";
+      path = fetchurl {
+        name = "os_shim___os_shim_0.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/os-shim/-/os-shim-0.1.3.tgz";
+        sha1 = "6b62c3791cf7909ea35ed46e17658bb417cb3917";
+      };
+    }
+    {
+      name = "os_tmpdir___os_tmpdir_1.0.2.tgz";
+      path = fetchurl {
+        name = "os_tmpdir___os_tmpdir_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz";
+        sha1 = "bbe67406c79aa85c5cfec766fe5734555dfa1274";
+      };
+    }
+    {
       name = "param_case___param_case_2.1.1.tgz";
       path = fetchurl {
         name = "param_case___param_case_2.1.1.tgz";
@@ -274,6 +754,38 @@
       };
     }
     {
+      name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
+      path = fetchurl {
+        name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
+        sha1 = "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f";
+      };
+    }
+    {
+      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 = "prettyjson___prettyjson_1.2.1.tgz";
+      path = fetchurl {
+        name = "prettyjson___prettyjson_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/prettyjson/-/prettyjson-1.2.1.tgz";
+        sha1 = "fcffab41d19cab4dfae5e575e64246619b12d289";
+      };
+    }
+    {
       name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
       path = fetchurl {
         name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
@@ -314,6 +826,30 @@
       };
     }
     {
+      name = "restore_cursor___restore_cursor_1.0.1.tgz";
+      path = fetchurl {
+        name = "restore_cursor___restore_cursor_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz";
+        sha1 = "34661f46886327fed2991479152252df92daa541";
+      };
+    }
+    {
+      name = "run_async___run_async_2.4.1.tgz";
+      path = fetchurl {
+        name = "run_async___run_async_2.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz";
+        sha1 = "8440eccf99ea3e70bd409d49aab88e10c189a455";
+      };
+    }
+    {
+      name = "rx___rx_4.1.0.tgz";
+      path = fetchurl {
+        name = "rx___rx_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz";
+        sha1 = "a5f13ff79ef3b740fe30aa803fb09f98805d4782";
+      };
+    }
+    {
       name = "safe_buffer___safe_buffer_5.1.2.tgz";
       path = fetchurl {
         name = "safe_buffer___safe_buffer_5.1.2.tgz";
@@ -354,6 +890,38 @@
       };
     }
     {
+      name = "spawn_sync___spawn_sync_1.0.15.tgz";
+      path = fetchurl {
+        name = "spawn_sync___spawn_sync_1.0.15.tgz";
+        url  = "https://registry.yarnpkg.com/spawn-sync/-/spawn-sync-1.0.15.tgz";
+        sha1 = "b00799557eb7fb0c8376c29d44e8a1ea67e57476";
+      };
+    }
+    {
+      name = "stack_trace___stack_trace_0.0.10.tgz";
+      path = fetchurl {
+        name = "stack_trace___stack_trace_0.0.10.tgz";
+        url  = "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz";
+        sha1 = "547c70b347e8d32b4e108ea1a2a159e5fdde19c0";
+      };
+    }
+    {
+      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_2.1.1.tgz";
+      path = fetchurl {
+        name = "string_width___string_width_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz";
+        sha1 = "ab93f27a8dc13d28cac815c462143a6d9012ae9e";
+      };
+    }
+    {
       name = "string_decoder___string_decoder_1.1.1.tgz";
       path = fetchurl {
         name = "string_decoder___string_decoder_1.1.1.tgz";
@@ -362,6 +930,30 @@
       };
     }
     {
+      name = "strip_ansi___strip_ansi_3.0.1.tgz";
+      path = fetchurl {
+        name = "strip_ansi___strip_ansi_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz";
+        sha1 = "6a385fb8853d952d5ff05d0e8aaf94278dc63dcf";
+      };
+    }
+    {
+      name = "strip_ansi___strip_ansi_4.0.0.tgz";
+      path = fetchurl {
+        name = "strip_ansi___strip_ansi_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz";
+        sha1 = "a8479022eb1ac368a871389b635262c505ee368f";
+      };
+    }
+    {
+      name = "supports_color___supports_color_2.0.0.tgz";
+      path = fetchurl {
+        name = "supports_color___supports_color_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz";
+        sha1 = "535d045ce6b6363fa40117084629995e9df324c7";
+      };
+    }
+    {
       name = "supports_color___supports_color_5.5.0.tgz";
       path = fetchurl {
         name = "supports_color___supports_color_5.5.0.tgz";
@@ -370,6 +962,14 @@
       };
     }
     {
+      name = "tabtab___tabtab_2.2.2.tgz";
+      path = fetchurl {
+        name = "tabtab___tabtab_2.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/tabtab/-/tabtab-2.2.2.tgz";
+        sha1 = "7a047f143b010b4cbd31f857e82961512cbf4e14";
+      };
+    }
+    {
       name = "terser___terser_4.8.0.tgz";
       path = fetchurl {
         name = "terser___terser_4.8.0.tgz";
@@ -378,6 +978,14 @@
       };
     }
     {
+      name = "through___through_2.3.8.tgz";
+      path = fetchurl {
+        name = "through___through_2.3.8.tgz";
+        url  = "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz";
+        sha1 = "0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5";
+      };
+    }
+    {
       name = "tinycolor___tinycolor_0.0.1.tgz";
       path = fetchurl {
         name = "tinycolor___tinycolor_0.0.1.tgz";
@@ -386,6 +994,22 @@
       };
     }
     {
+      name = "tmp___tmp_0.0.29.tgz";
+      path = fetchurl {
+        name = "tmp___tmp_0.0.29.tgz";
+        url  = "https://registry.yarnpkg.com/tmp/-/tmp-0.0.29.tgz";
+        sha1 = "f25125ff0dd9da3ccb0c2dd371ee1288bb9128c0";
+      };
+    }
+    {
+      name = "typedarray___typedarray_0.0.6.tgz";
+      path = fetchurl {
+        name = "typedarray___typedarray_0.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz";
+        sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777";
+      };
+    }
+    {
       name = "upper_case___upper_case_1.1.3.tgz";
       path = fetchurl {
         name = "upper_case___upper_case_1.1.3.tgz";
@@ -426,6 +1050,22 @@
       };
     }
     {
+      name = "winston___winston_2.4.5.tgz";
+      path = fetchurl {
+        name = "winston___winston_2.4.5.tgz";
+        url  = "https://registry.yarnpkg.com/winston/-/winston-2.4.5.tgz";
+        sha1 = "f2e431d56154c4ea765545fc1003bd340c95b59a";
+      };
+    }
+    {
+      name = "wrappy___wrappy_1.0.2.tgz";
+      path = fetchurl {
+        name = "wrappy___wrappy_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz";
+        sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
+      };
+    }
+    {
       name = "ws___ws_0.4.32.tgz";
       path = fetchurl {
         name = "ws___ws_0.4.32.tgz";
diff --git a/nixpkgs/pkgs/development/compilers/fennel/default.nix b/nixpkgs/pkgs/development/compilers/fennel/default.nix
new file mode 100644
index 000000000000..6165a522c3aa
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/fennel/default.nix
@@ -0,0 +1,31 @@
+{ lib, stdenv, fetchFromSourcehut, installShellFiles, lua }:
+
+stdenv.mkDerivation rec {
+  pname = "fennel";
+  version = "0.9.2";
+
+  src = fetchFromSourcehut {
+    owner = "~technomancy";
+    repo = pname;
+    rev = version;
+    sha256 = "1kpm3lzxzwkhxm4ghpbx8iw0ni7gb73y68lsc3ll2rcx0fwv9303";
+  };
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  buildInputs = [ lua ];
+
+  makeFlags = [ "PREFIX=${placeholder "out"}" ];
+
+  postInstall = ''
+    installManPage fennel.1
+  '';
+
+  meta = with lib; {
+    description = "A Lua Lisp language";
+    homepage = "https://fennel-lang.org/";
+    license = licenses.mit;
+    platforms = lua.meta.platforms;
+    maintainers = [ maintainers.maaslalani ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/fpc/default.nix b/nixpkgs/pkgs/development/compilers/fpc/default.nix
index 5c8293866515..4721cac27834 100644
--- a/nixpkgs/pkgs/development/compilers/fpc/default.nix
+++ b/nixpkgs/pkgs/development/compilers/fpc/default.nix
@@ -46,6 +46,5 @@ stdenv.mkDerivation rec {
     maintainers = [ maintainers.raskin ];
     license = with licenses; [ gpl2 lgpl2 ];
     platforms = platforms.linux;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/10/default.nix b/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/10/default.nix
index 943ddd100a21..441ce6cdcd59 100644
--- a/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/10/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/10/default.nix
@@ -6,7 +6,8 @@
 
 stdenv.mkDerivation rec {
   pname = "gcc-arm-embedded";
-  version = "10-2020-q4-major";
+  version = "10.2.1";
+  release = "10-2020-q4-major";
   subdir = "10-2020q4";
 
   suffix = {
@@ -16,7 +17,7 @@ stdenv.mkDerivation rec {
   }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
   src = fetchurl {
-    url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-${suffix}.tar.bz2";
+    url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${release}-${suffix}.tar.bz2";
     sha256 = {
       aarch64-linux = "0spkbh7vnda1w0nvavk342nb24nqxn8kln3k9j85mzil560qqg9l";
       x86_64-darwin = "1h5xn0npwkilqxg7ifrymsl7kjpafr9r9gjqgcpb0kjxavijvldy";
diff --git a/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/6/default.nix b/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/6/default.nix
index 266863d95b2e..bab73948ace1 100644
--- a/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/6/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/6/default.nix
@@ -6,7 +6,8 @@
 
 stdenv.mkDerivation rec {
   pname = "gcc-arm-embedded";
-  version = "6-2017-q2-update";
+  version = "6.3.1";
+  release = "6-2017-q2-update";
   subdir = "6-2017q2";
 
   suffix = {
@@ -15,7 +16,7 @@ stdenv.mkDerivation rec {
   }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
   src = fetchurl {
-    url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-${suffix}.tar.bz2";
+    url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${release}-${suffix}.tar.bz2";
     sha256 = {
       x86_64-darwin = "0019ylpq4inq7p5gydpmc9m8ni72fz2csrjlqmgx1698998q0c3x";
       x86_64-linux  = "1hvwi02mx34al525sngnl0cm7dkmzxfkb1brq9kvbv28wcplp3p6";
diff --git a/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/7/default.nix b/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/7/default.nix
index 4f2135446f61..ccd99e096f85 100644
--- a/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/7/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/7/default.nix
@@ -6,7 +6,8 @@
 
 stdenv.mkDerivation rec {
   pname = "gcc-arm-embedded";
-  version = "7-2018-q2-update";
+  version = "7.3.1";
+  release = "7-2018-q2-update";
   subdir = "7-2018q2";
 
   suffix = {
@@ -15,7 +16,7 @@ stdenv.mkDerivation rec {
   }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
   src = fetchurl {
-    url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-${suffix}.tar.bz2";
+    url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${release}-${suffix}.tar.bz2";
     sha256 = {
       x86_64-darwin = "0nc7m0mpa39qyhfyydxkkyqm7spfc27xf6ygi2vd2aym4r9azi61";
       x86_64-linux  = "0sgysp3hfpgrkcbfiwkp0a7ymqs02khfbrjabm52b5z61sgi05xv";
diff --git a/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/8/default.nix b/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/8/default.nix
index 2d85113527c0..363e87ecb65a 100644
--- a/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/8/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/8/default.nix
@@ -6,7 +6,8 @@
 
 stdenv.mkDerivation rec {
   pname = "gcc-arm-embedded";
-  version = "8-2019-q3-update";
+  version = "8.3.1";
+  release = "8-2019-q3-update";
   subdir = "8-2019q3/RC1.1";
 
   suffix = {
@@ -15,7 +16,7 @@ stdenv.mkDerivation rec {
   }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
   src = fetchurl {
-    url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-${suffix}.tar.bz2";
+    url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${release}-${suffix}.tar.bz2";
     sha256 = {
       x86_64-darwin = "fc235ce853bf3bceba46eff4b95764c5935ca07fc4998762ef5e5b7d05f37085";
       x86_64-linux  = "b50b02b0a16e5aad8620e9d7c31110ef285c1dde28980b1a9448b764d77d8f92";
diff --git a/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/9/default.nix b/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/9/default.nix
index 944d7c7b1593..6ff1567286da 100644
--- a/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/9/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc-arm-embedded/9/default.nix
@@ -6,7 +6,8 @@
 
 stdenv.mkDerivation rec {
   pname = "gcc-arm-embedded";
-  version = "9-2020-q2-update";
+  version = "9.3.1";
+  release = "9-2020-q2-update";
   subdir = "9-2020q2";
 
   suffix = {
@@ -16,7 +17,7 @@ stdenv.mkDerivation rec {
   }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
   src = fetchurl {
-    url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-${suffix}.tar.bz2";
+    url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${release}-${suffix}.tar.bz2";
     sha256 = {
       aarch64-linux = "1b5q2y710hy7lddj8vj3zl54gfl74j30kx3hk3i81zrcbv16ah8z";
       x86_64-darwin = "1ils9z16wrvglh72m428y5irmd36biq79yj86756whib8izbifdv";
diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.10.2-binary.nix b/nixpkgs/pkgs/development/compilers/ghc/8.10.2-binary.nix
index ad1a47e5cc9f..3ef4ebb9b98f 100644
--- a/nixpkgs/pkgs/development/compilers/ghc/8.10.2-binary.nix
+++ b/nixpkgs/pkgs/development/compilers/ghc/8.10.2-binary.nix
@@ -1,6 +1,7 @@
 { lib, stdenv
 , fetchurl, perl, gcc
-, ncurses6, gmp, glibc, libiconv, numactl
+, ncurses5
+, ncurses6, gmp, libiconv, numactl
 , llvmPackages
 
   # minimal = true; will remove files that aren't strictly necessary for
@@ -14,68 +15,191 @@
 assert stdenv.targetPlatform == stdenv.hostPlatform;
 
 let
+  downloadsUrl = "https://downloads.haskell.org/ghc";
+
+  version = "8.10.2";
+
+  # Information about available bindists that we use in the build.
+  #
+  # # Bindist library checking
+  #
+  # The field `archSpecificLibraries` also provides a way for us get notified
+  # early when the upstream bindist changes its dependencies (e.g. because a
+  # newer Debian version is used that uses a new `ncurses` version).
+  #
+  # Usage:
+  #
+  # * You can find the `fileToCheckFor` of libraries by running `readelf -d`
+  #   on the compiler binary (`exePathForLibraryCheck`).
+  # * To skip library checking for an architecture,
+  #   set `exePathForLibraryCheck = null`.
+  # * To skip file checking for a specific arch specfic library,
+  #   set `fileToCheckFor = null`.
+  ghcBinDists = {
+    # Binary distributions for the default libc (e.g. glibc, or libSystem on Darwin)
+    # nixpkgs uses for the respective system.
+    defaultLibc = {
+      i686-linux = {
+        src = {
+          url = "${downloadsUrl}/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
+          sha256 = "0bvwisl4w0z5z8z0da10m9sv0mhm9na2qm43qxr8zl23mn32mblx";
+        };
+        exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
+        archSpecificLibraries = [
+          # The i686-linux bindist provided by GHC HQ is currently built on Debian 9,
+          # which link it against `libtinfo.so.5` (ncurses 5).
+          # Other bindists are linked `libtinfo.so.6` (ncurses 6).
+          { nixPackage = ncurses5; fileToCheckFor = "libtinfo.so.5"; }
+        ];
+      };
+      x86_64-linux = {
+        src = {
+          url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-deb10-linux.tar.xz";
+          sha256 = "0chnzy9j23b2wa8clx5arwz8wnjfxyjmz9qkj548z14cqf13slcl";
+        };
+        exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
+        archSpecificLibraries = [
+          { nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
+        ];
+      };
+      armv7l-linux = {
+        src = {
+          url = "${downloadsUrl}/${version}/ghc-${version}-armv7-deb10-linux.tar.xz";
+          sha256 = "1j41cq5d3rmlgz7hzw8f908fs79gc5mn3q5wz277lk8zdf19g75v";
+        };
+        exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
+        archSpecificLibraries = [
+          { nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
+        ];
+      };
+      aarch64-linux = {
+        src = {
+          url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-deb10-linux.tar.xz";
+          sha256 = "14smwl3741ixnbgi0l51a7kh7xjkiannfqx15b72svky0y4l3wjw";
+        };
+        exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
+        archSpecificLibraries = [
+          { nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
+          { nixPackage = numactl; fileToCheckFor = null; }
+        ];
+      };
+      x86_64-darwin = {
+        src = {
+          url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
+          sha256 = "1hngyq14l4f950hzhh2d204ca2gfc98pc9xdasxihzqd1jq75dzd";
+        };
+        exePathForLibraryCheck = null; # we don't have a library check for darwin yet
+        archSpecificLibraries = [
+          { nixPackage = ncurses6; fileToCheckFor = null; }
+          { nixPackage = libiconv; fileToCheckFor = null; }
+        ];
+      };
+    };
+    # Binary distributions for the musl libc for the respective system.
+    musl = {
+      x86_64-linux = {
+        src = {
+          url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-alpine3.10-linux-integer-simple.tar.xz";
+          sha256 = "0xpcbyaxqyhbl6f0i3s4rp2jm67nqpkfh2qlbj3i2fiaix89ml0l";
+        };
+        exePathForLibraryCheck = "bin/ghc";
+        archSpecificLibraries = [
+          # In contrast to glibc builds, the musl-bindist uses `libncursesw.so.*`
+          # instead of `libtinfo.so.*.`
+          { nixPackage = ncurses6; fileToCheckFor = "libncursesw.so.6"; }
+        ];
+      };
+    };
+  };
+
+  distSetName = if stdenv.hostPlatform.isMusl then "musl" else "defaultLibc";
+
+  binDistUsed = ghcBinDists.${distSetName}.${stdenv.hostPlatform.system}
+    or (throw "cannot bootstrap GHC on this platform ('${stdenv.hostPlatform.system}' with libc '${distSetName}')");
+
   useLLVM = !stdenv.targetPlatform.isx86;
 
-  libPath = lib.makeLibraryPath ([
-    ncurses6 gmp
-  ] ++ lib.optional (stdenv.hostPlatform.isDarwin) libiconv
-    ++ lib.optional (stdenv.hostPlatform.isAarch64) numactl);
+  libPath =
+    lib.makeLibraryPath (
+      [
+        gmp
+      ]
+      # Add arch-specific libraries.
+      ++ map ({ nixPackage, ... }: nixPackage) binDistUsed.archSpecificLibraries
+    );
 
   libEnvVar = lib.optionalString stdenv.hostPlatform.isDarwin "DY"
     + "LD_LIBRARY_PATH";
 
-  glibcDynLinker = assert stdenv.isLinux;
-    if stdenv.hostPlatform.libc == "glibc" then
-       # Could be stdenv.cc.bintools.dynamicLinker, keeping as-is to avoid rebuild.
-       ''"$(cat $NIX_CC/nix-support/dynamic-linker)"''
-    else
-      "${lib.getLib glibc}/lib/ld-linux*";
-
-  downloadsUrl = "https://downloads.haskell.org/ghc";
-
 in
 
 stdenv.mkDerivation rec {
-  version = "8.10.2";
+  inherit version;
 
   name = "ghc-${version}-binary";
 
-  # https://downloads.haskell.org/~ghc/8.10.2/
-  src = fetchurl ({
-    i686-linux = {
-      url = "${downloadsUrl}/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
-      sha256 = "0bvwisl4w0z5z8z0da10m9sv0mhm9na2qm43qxr8zl23mn32mblx";
-    };
-    x86_64-linux = {
-      url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-deb10-linux.tar.xz";
-      sha256 = "0chnzy9j23b2wa8clx5arwz8wnjfxyjmz9qkj548z14cqf13slcl";
-    };
-    armv7l-linux = {
-      url = "${downloadsUrl}/${version}/ghc-${version}-armv7-deb10-linux.tar.xz";
-      sha256 = "1j41cq5d3rmlgz7hzw8f908fs79gc5mn3q5wz277lk8zdf19g75v";
-    };
-    aarch64-linux = {
-      url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-deb10-linux.tar.xz";
-      sha256 = "14smwl3741ixnbgi0l51a7kh7xjkiannfqx15b72svky0y4l3wjw";
-    };
-    x86_64-darwin = {
-      url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
-      sha256 = "1hngyq14l4f950hzhh2d204ca2gfc98pc9xdasxihzqd1jq75dzd";
-    };
-  }.${stdenv.hostPlatform.system}
-    or (throw "cannot bootstrap GHC on this platform"));
+  src = fetchurl binDistUsed.src;
 
   nativeBuildInputs = [ perl ];
-  propagatedBuildInputs = lib.optionals useLLVM [ llvmPackages.llvm ];
+  propagatedBuildInputs =
+    lib.optionals useLLVM [ llvmPackages.llvm ]
+    # Because musl bindists currently provide no way to tell where
+    # libgmp is (see not [musl bindists have no .buildinfo]), we need
+    # to propagate `gmp`, otherwise programs built by this ghc will
+    # fail linking with `cannot find -lgmp` errors.
+    # Also, as of writing, the release pages of musl bindists claim
+    # that they use `integer-simple` and do not require `gmp`; however
+    # that is incorrect, so `gmp` is required until a release has been
+    # made that includes https://gitlab.haskell.org/ghc/ghc/-/issues/20059.
+    # (Note that for packaging the `-binary` compiler, nixpkgs does not care
+    # about whether or not `gmp` is used; this comment is just here to explain
+    # why the `gmp` dependency exists despite what the release page says.)
+    ++ lib.optionals stdenv.hostPlatform.isMusl [ gmp ]; # musl bindist needs this
 
+  # Set LD_LIBRARY_PATH or equivalent so that the programs running as part
+  # of the bindist installer can find the libraries they expect.
   # Cannot patchelf beforehand due to relative RPATHs that anticipate
-  # the final install location/
+  # the final install location.
   ${libEnvVar} = libPath;
 
   postUnpack =
+    # Verify our assumptions of which `libtinfo.so` (ncurses) version is used,
+    # so that we know when ghc bindists upgrade that and we need to update the
+    # version used in `libPath`.
+    lib.optionalString
+      (binDistUsed.exePathForLibraryCheck != null)
+      # Note the `*` glob because some GHCs have a suffix when unpacked, e.g.
+      # the musl bindist has dir `ghc-VERSION-x86_64-unknown-linux/`.
+      # As a result, don't shell-quote this glob when splicing the string.
+      (let buildExeGlob = ''ghc-${version}*/"${binDistUsed.exePathForLibraryCheck}"''; in
+        lib.concatStringsSep "\n" [
+          (''
+            echo "Checking that ghc binary exists in bindist at ${buildExeGlob}"
+            if ! test -e ${buildExeGlob}; then
+              echo >&2 "GHC binary ${binDistUsed.exePathForLibraryCheck} could not be found in the bindist build directory (at ${buildExeGlob}) for arch ${stdenv.hostPlatform.system}, please check that ghcBinDists correctly reflect the bindist dependencies!"; exit 1;
+            fi
+          '')
+          (lib.concatMapStringsSep
+            "\n"
+            ({ fileToCheckFor, nixPackage }:
+              lib.optionalString (fileToCheckFor != null) ''
+                echo "Checking bindist for ${fileToCheckFor} to ensure that is still used"
+                if ! readelf -d ${buildExeGlob} | grep "${fileToCheckFor}"; then
+                  echo >&2 "File ${fileToCheckFor} could not be found in ${binDistUsed.exePathForLibraryCheck} for arch ${stdenv.hostPlatform.system}, please check that ghcBinDists correctly reflect the bindist dependencies!"; exit 1;
+                fi
+
+                echo "Checking that the nix package ${nixPackage} contains ${fileToCheckFor}"
+                if ! test -e "${lib.getLib nixPackage}/lib/${fileToCheckFor}"; then
+                  echo >&2 "Nix package ${nixPackage} did not contain ${fileToCheckFor} for arch ${stdenv.hostPlatform.system}, please check that ghcBinDists correctly reflect the bindist dependencies!"; exit 1;
+                fi
+              ''
+            )
+            binDistUsed.archSpecificLibraries
+          )
+        ])
     # GHC has dtrace probes, which causes ld to try to open /usr/lib/libdtrace.dylib
     # during linking
-    lib.optionalString stdenv.isDarwin ''
+    + lib.optionalString stdenv.isDarwin ''
       export NIX_LDFLAGS+=" -no_dtrace_dof"
       # not enough room in the object files for the full path to libiconv :(
       for exe in $(find . -type f -executable); do
@@ -91,6 +215,9 @@ stdenv.mkDerivation rec {
       patchShebangs ghc-${version}/configure
     '' +
     # We have to patch the GMP paths for the integer-gmp package.
+    # Note [musl bindists have no .buildinfo]
+    # Note that musl bindists do not contain them; unclear if that's intended;
+    # see: https://gitlab.haskell.org/ghc/ghc/-/issues/20073#note_363231
     ''
       find . -name integer-gmp.buildinfo \
           -exec sed -i "s@extra-lib-dirs: @extra-lib-dirs: ${gmp.out}/lib@" {} \;
@@ -106,21 +233,8 @@ stdenv.mkDerivation rec {
     '' +
     # Rename needed libraries and binaries, fix interpreter
     lib.optionalString stdenv.isLinux ''
-      find . -type f -perm -0100 -exec patchelf \
-          --replace-needed libncurses${lib.optionalString stdenv.is64bit "w"}.so.6 libncurses.so \
-          --interpreter ${glibcDynLinker} {} \;
-
-      sed -i "s|/usr/bin/perl|perl\x00        |" ghc-${version}/ghc/stage2/build/tmp/ghc-stage2
-      sed -i "s|/usr/bin/gcc|gcc\x00        |" ghc-${version}/ghc/stage2/build/tmp/ghc-stage2
-    '' +
-    # We're kludging a glibc bindist into working with non-glibc...
-    # Here we patch up the use of `__strdup` (part of glibc binary ABI)
-    # to instead use `strdup` since musl doesn't provide __strdup
-    # (`__strdup` is defined to be an alias of `strdup` anyway[1]).
-    # [1] http://refspecs.linuxbase.org/LSB_4.0.0/LSB-Core-generic/LSB-Core-generic/baselib---strdup-1.html
-    # Use objcopy magic to make the change:
-    lib.optionalString stdenv.hostPlatform.isMusl ''
-      find ./ghc-${version}/rts -name "libHSrts*.a" -exec ''${OBJCOPY:-objcopy} --redefine-sym __strdup=strdup {} \;
+      find . -type f -executable -exec patchelf \
+          --interpreter ${stdenv.cc.bintools.dynamicLinker} {} \;
     '';
 
   # fix for `configure: error: Your linker is affected by binutils #16177`
@@ -130,15 +244,33 @@ stdenv.mkDerivation rec {
 
   configurePlatforms = [ ];
   configureFlags = [
-    "--with-gmp-libraries=${lib.getLib gmp}/lib"
     "--with-gmp-includes=${lib.getDev gmp}/include"
+    # Note `--with-gmp-libraries` does nothing for GHC bindists:
+    # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6124
   ] ++ lib.optional stdenv.isDarwin "--with-gcc=${./gcc-clang-wrapper.sh}"
+    # From: https://github.com/NixOS/nixpkgs/pull/43369/commits
     ++ lib.optional stdenv.hostPlatform.isMusl "--disable-ld-override";
 
   # No building is necessary, but calling make without flags ironically
   # calls install-strip ...
   dontBuild = true;
 
+  # Apparently necessary for the ghc Alpine (musl) bindist:
+  # When we strip, and then run the
+  #     patchelf --set-rpath "${libPath}:$(patchelf --print-rpath $p)" $p
+  # below, running ghc (e.g. during `installCheckPhase)` gives some apparently
+  # corrupted rpath or whatever makes the loader work on nonsensical strings:
+  #     running install tests
+  #     Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: : symbol not found
+  #     Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: ir6zf6c9f86pfx8sr30n2vjy-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/../lib/x86_64-linux-ghc-8.10.5/libHSexceptions-0.10.4-ghc8.10.5.so: symbol not found
+  #     Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: y/lib/ghc-8.10.5/bin/../lib/x86_64-linux-ghc-8.10.5/libHStemplate-haskell-2.16.0.0-ghc8.10.5.so: symbol not found
+  #     Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: 8.10.5/libHStemplate-haskell-2.16.0.0-ghc8.10.5.so: symbol not found
+  #     Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: �: symbol not found
+  #     Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: �?: symbol not found
+  #     Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: 64-linux-ghc-8.10.5/libHSexceptions-0.10.4-ghc8.10.5.so: symbol not found
+  # This is extremely bogus and should be investigated.
+  dontStrip = if stdenv.hostPlatform.isMusl then true else false; # `if` for explicitness
+
   # On Linux, use patchelf to modify the executables so that they can
   # find editline/gmp.
   postFixup = lib.optionalString stdenv.isLinux
@@ -186,13 +318,23 @@ stdenv.mkDerivation rec {
     find $out -type f -name '*.p_o' -delete
     find $out -type f -name '*.p_hi' -delete
     find $out -type f -name '*_p.a' -delete
-    rm $out/lib/ghc-*/bin/ghc-iserv-prof
+    # `-f` because e.g. musl bindist does not have this file.
+    rm -f $out/lib/ghc-*/bin/ghc-iserv-prof
     # Hydra will redistribute this derivation, so we have to keep the docs for
     # legal reasons (retaining the legal notices etc)
     # As a last resort we could unpack the docs separately and symlink them in.
     # They're in $out/share/{doc,man}.
   '';
 
+  # In nixpkgs, musl based builds currently enable `pie` hardening by default
+  # (see `defaultHardeningFlags` in `make-derivation.nix`).
+  # But GHC cannot currently produce outputs that are ready for `-pie` linking.
+  # Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
+  # See:
+  # * https://github.com/NixOS/nixpkgs/issues/129247
+  # * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
+  hardeningDisable = lib.optional stdenv.targetPlatform.isMusl "pie";
+
   doInstallCheck = true;
   installCheckPhase = ''
     unset ${libEnvVar}
@@ -221,7 +363,16 @@ stdenv.mkDerivation rec {
     homepage = "http://haskell.org/ghc";
     description = "The Glasgow Haskell Compiler";
     license = lib.licenses.bsd3;
-    platforms = ["x86_64-linux" "armv7l-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
+    # HACK: since we can't encode the libc / abi in platforms, we need
+    # to make the platform list dependent on the evaluation platform
+    # in order to avoid eval errors with musl which supports less
+    # platforms than the default libcs (i. e. glibc / libSystem).
+    # This is done for the benefit of Hydra, so `packagePlatforms`
+    # won't return any platforms that would cause an evaluation
+    # failure for `pkgsMusl.haskell.compiler.ghc8102Binary`, as
+    # long as the evaluator runs on a platform that supports
+    # `pkgsMusl`.
+    platforms = builtins.attrNames ghcBinDists.${distSetName};
     hydraPlatforms = builtins.filter (p: minimal || p != "aarch64-linux") platforms;
     maintainers = with lib.maintainers; [ lostnet ];
   };
diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.10.4.nix b/nixpkgs/pkgs/development/compilers/ghc/8.10.4.nix
index f007dcf78987..10ca2f6662c2 100644
--- a/nixpkgs/pkgs/development/compilers/ghc/8.10.4.nix
+++ b/nixpkgs/pkgs/development/compilers/ghc/8.10.4.nix
@@ -38,6 +38,20 @@
   ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
     (if useLLVM then "perf-cross" else "perf-cross-ncg")
 
+, #  Whether to build sphinx documentation.
+  enableDocs ? (
+    # Docs disabled for musl and cross because it's a large task to keep
+    # all `sphinx` dependencies building in those environments.
+    # `sphinx` pulls in among others:
+    # Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
+    (stdenv.targetPlatform == stdenv.hostPlatform)
+    && !stdenv.hostPlatform.isMusl
+  )
+
+, enableHaddockProgram ?
+    # Disabled for cross; see note [HADDOCK_DOCS].
+    (stdenv.targetPlatform == stdenv.hostPlatform)
+
 , # Whether to disable the large address space allocator
   # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
   disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
@@ -45,6 +59,10 @@
 
 assert !enableIntegerSimple -> gmp != null;
 
+# Cross cannot currently build the `haddock` program for silly reasons,
+# see note [HADDOCK_DOCS].
+assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
+
 let
   inherit (stdenv) buildPlatform hostPlatform targetPlatform;
 
@@ -60,14 +78,26 @@ let
     ifneq \"\$(BuildFlavour)\" \"\"
     include mk/flavours/\$(BuildFlavour).mk
     endif
+    BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
+    BUILD_SPHINX_PDF = NO
+  '' +
+  # Note [HADDOCK_DOCS]:
+  # Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
+  # program is built (which we generally always want to have a complete GHC install)
+  # and whether it is run on the GHC sources to generate hyperlinked source code
+  # (which is impossible for cross-compilation); see:
+  # https://gitlab.haskell.org/ghc/ghc/-/issues/20077
+  # This implies that currently a cross-compiled GHC will never have a `haddock`
+  # program, so it can never generate haddocks for any packages.
+  # If this is solved in the future, we'd like to unconditionally
+  # build the haddock program (removing the `enableHaddockProgram` option).
+  ''
+    HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
     DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
     INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
   '' + lib.optionalString (targetPlatform != hostPlatform) ''
     Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
     CrossCompilePrefix = ${targetPrefix}
-    HADDOCK_DOCS = NO
-    BUILD_SPHINX_HTML = NO
-    BUILD_SPHINX_PDF = NO
   '' + lib.optionalString (!enableProfiledLibs) ''
     GhcLibWays = "v dyn"
   '' + lib.optionalString enableRelocatedStaticLibs ''
@@ -217,8 +247,10 @@ stdenv.mkDerivation (rec {
   dontAddExtraLibs = true;
 
   nativeBuildInputs = [
-    perl autoconf automake m4 python3 sphinx
+    perl autoconf automake m4 python3
     ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
+  ] ++ lib.optionals enableDocs [
+    sphinx
   ];
 
   # For building runtime libs
@@ -238,7 +270,16 @@ stdenv.mkDerivation (rec {
 
   checkTarget = "test";
 
-  hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie";
+  hardeningDisable =
+    [ "format" ]
+    # In nixpkgs, musl based builds currently enable `pie` hardening by default
+    # (see `defaultHardeningFlags` in `make-derivation.nix`).
+    # But GHC cannot currently produce outputs that are ready for `-pie` linking.
+    # Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
+    # See:
+    # * https://github.com/NixOS/nixpkgs/issues/129247
+    # * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
+    ++ lib.optional stdenv.targetPlatform.isMusl "pie";
 
   postInstall = ''
     # Install the bash completion file.
diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.6.5-binary.nix b/nixpkgs/pkgs/development/compilers/ghc/8.6.5-binary.nix
index 8a0994b8b6a5..ea4542a38b22 100644
--- a/nixpkgs/pkgs/development/compilers/ghc/8.6.5-binary.nix
+++ b/nixpkgs/pkgs/development/compilers/ghc/8.6.5-binary.nix
@@ -121,8 +121,9 @@ stdenv.mkDerivation rec {
 
   configurePlatforms = [ ];
   configureFlags = [
-    "--with-gmp-libraries=${lib.getLib gmp}/lib"
     "--with-gmp-includes=${lib.getDev gmp}/include"
+    # Note `--with-gmp-libraries` does nothing for GHC bindists:
+    # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6124
   ] ++ lib.optional stdenv.isDarwin "--with-gcc=${./gcc-clang-wrapper.sh}"
     ++ lib.optional stdenv.hostPlatform.isMusl "--disable-ld-override";
 
@@ -152,6 +153,15 @@ stdenv.mkDerivation rec {
     done
   '';
 
+  # In nixpkgs, musl based builds currently enable `pie` hardening by default
+  # (see `defaultHardeningFlags` in `make-derivation.nix`).
+  # But GHC cannot currently produce outputs that are ready for `-pie` linking.
+  # Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
+  # See:
+  # * https://github.com/NixOS/nixpkgs/issues/129247
+  # * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
+  hardeningDisable = lib.optional stdenv.targetPlatform.isMusl "pie";
+
   doInstallCheck = true;
   installCheckPhase = ''
     unset ${libEnvVar}
@@ -180,5 +190,7 @@ stdenv.mkDerivation rec {
     license = lib.licenses.bsd3;
     platforms = ["x86_64-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
     hydraPlatforms = builtins.filter (p: p != "aarch64-linux") platforms;
+    # build segfaults, use ghc8102Binary which has proper musl support instead
+    broken = stdenv.hostPlatform.isMusl;
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/ghc/8.8.4.nix b/nixpkgs/pkgs/development/compilers/ghc/8.8.4.nix
index 544b96f5e4f0..238266147167 100644
--- a/nixpkgs/pkgs/development/compilers/ghc/8.8.4.nix
+++ b/nixpkgs/pkgs/development/compilers/ghc/8.8.4.nix
@@ -38,6 +38,20 @@
   ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
     (if useLLVM then "perf-cross" else "perf-cross-ncg")
 
+, #  Whether to build sphinx documentation.
+  enableDocs ? (
+    # Docs disabled for musl and cross because it's a large task to keep
+    # all `sphinx` dependencies building in those environments.
+    # `sphinx` pullls in among others:
+    # Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
+    (stdenv.targetPlatform == stdenv.hostPlatform)
+    && !stdenv.hostPlatform.isMusl
+  )
+
+, enableHaddockProgram ?
+    # Disabled for cross; see note [HADDOCK_DOCS].
+    (stdenv.targetPlatform == stdenv.hostPlatform)
+
 , # Whether to disable the large address space allocator
   # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
   disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
@@ -45,6 +59,10 @@
 
 assert !enableIntegerSimple -> gmp != null;
 
+# Cross cannot currently build the `haddock` program for silly reasons,
+# see note [HADDOCK_DOCS].
+assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
+
 let
   inherit (stdenv) buildPlatform hostPlatform targetPlatform;
 
@@ -60,6 +78,21 @@ let
     ifneq \"\$(BuildFlavour)\" \"\"
     include mk/flavours/\$(BuildFlavour).mk
     endif
+    BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
+    BUILD_SPHINX_PDF = NO
+  '' +
+  # Note [HADDOCK_DOCS]:
+  # Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
+  # program is built (which we generally always want to have a complete GHC install)
+  # and whether it is run on the GHC sources to generate hyperlinked source code
+  # (which is impossible for cross-compilation); see:
+  # https://gitlab.haskell.org/ghc/ghc/-/issues/20077
+  # This implies that currently a cross-compiled GHC will never have a `haddock`
+  # program, so it can never generate haddocks for any packages.
+  # If this is solved in the future, we'd like to unconditionally
+  # build the haddock program (removing the `enableHaddockProgram` option).
+  ''
+    HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
     DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
     INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
   ''
@@ -72,9 +105,6 @@ let
   + lib.optionalString (targetPlatform != hostPlatform) ''
     Stage1Only = ${if (targetPlatform.system == hostPlatform.system && !targetPlatform.isiOS) then "NO" else "YES"}
     CrossCompilePrefix = ${targetPrefix}
-    HADDOCK_DOCS = NO
-    BUILD_SPHINX_HTML = NO
-    BUILD_SPHINX_PDF = NO
   '' + lib.optionalString dontStrip ''
     STRIP_CMD = :
   '' + lib.optionalString (!enableProfiledLibs) ''
@@ -142,11 +172,14 @@ stdenv.mkDerivation (rec {
   postPatch = "patchShebangs .";
 
   # GHC is a bit confused on its cross terminology.
-  preConfigure = lib.optionalString stdenv.isAarch64 ''
+  preConfigure =
     # Aarch64 allow backward bootstrapping since earlier versions are unstable.
-    find . -name \*\.cabal\* -exec sed -i -e 's/\(base.*\)4.14/\14.16/' {} \; \
-      -exec sed -i -e 's/\(prim.*\)0.6/\10.8/' {} \;
-  '' + ''
+    # Same for musl, as earlier versions do not provide a musl bindist for bootstrapping.
+    lib.optionalString (stdenv.isAarch64 || stdenv.hostPlatform.isMusl) ''
+      find . -name \*\.cabal\* -exec sed -i -e 's/\(base.*\)4.14/\14.16/' {} \; \
+        -exec sed -i -e 's/\(prim.*\)0.6/\10.8/' {} \;
+    ''
+  + ''
     for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
       export "''${env#TARGET_}=''${!env}"
     done
@@ -224,8 +257,10 @@ stdenv.mkDerivation (rec {
   dontAddExtraLibs = true;
 
   nativeBuildInputs = [
-    perl autoconf automake m4 python3 sphinx
+    perl autoconf automake m4 python3
     ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
+  ] ++ lib.optionals enableDocs [
+    sphinx
   ];
 
   # For building runtime libs
@@ -245,7 +280,16 @@ stdenv.mkDerivation (rec {
 
   checkTarget = "test";
 
-  hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie";
+  hardeningDisable =
+    [ "format" ]
+    # In nixpkgs, musl based builds currently enable `pie` hardening by default
+    # (see `defaultHardeningFlags` in `make-derivation.nix`).
+    # But GHC cannot currently produce outputs that are ready for `-pie` linking.
+    # Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
+    # See:
+    # * https://github.com/NixOS/nixpkgs/issues/129247
+    # * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
+    ++ lib.optional stdenv.targetPlatform.isMusl "pie";
 
   postInstall = ''
     # Install the bash completion file.
diff --git a/nixpkgs/pkgs/development/compilers/ghc/9.0.1.nix b/nixpkgs/pkgs/development/compilers/ghc/9.0.1.nix
index f5a6b5f32fa8..d2ae51c66dee 100644
--- a/nixpkgs/pkgs/development/compilers/ghc/9.0.1.nix
+++ b/nixpkgs/pkgs/development/compilers/ghc/9.0.1.nix
@@ -39,6 +39,20 @@
   ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
     (if useLLVM then "perf-cross" else "perf-cross-ncg")
 
+, #  Whether to build sphinx documentation.
+  enableDocs ? (
+    # Docs disabled for musl and cross because it's a large task to keep
+    # all `sphinx` dependencies building in those environments.
+    # `sphinx` pullls in among others:
+    # Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
+    (stdenv.targetPlatform == stdenv.hostPlatform)
+    && !stdenv.hostPlatform.isMusl
+  )
+
+, enableHaddockProgram ?
+    # Disabled for cross; see note [HADDOCK_DOCS].
+    (stdenv.targetPlatform == stdenv.hostPlatform)
+
 , # Whether to disable the large address space allocator
   # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
   disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
@@ -46,6 +60,10 @@
 
 assert !enableIntegerSimple -> gmp != null;
 
+# Cross cannot currently build the `haddock` program for silly reasons,
+# see note [HADDOCK_DOCS].
+assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
+
 let
   inherit (stdenv) buildPlatform hostPlatform targetPlatform;
 
@@ -61,14 +79,26 @@ let
     ifneq \"\$(BuildFlavour)\" \"\"
     include mk/flavours/\$(BuildFlavour).mk
     endif
+    BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
+    BUILD_SPHINX_PDF = NO
+  '' +
+  # Note [HADDOCK_DOCS]:
+  # Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
+  # program is built (which we generally always want to have a complete GHC install)
+  # and whether it is run on the GHC sources to generate hyperlinked source code
+  # (which is impossible for cross-compilation); see:
+  # https://gitlab.haskell.org/ghc/ghc/-/issues/20077
+  # This implies that currently a cross-compiled GHC will never have a `haddock`
+  # program, so it can never generate haddocks for any packages.
+  # If this is solved in the future, we'd like to unconditionally
+  # build the haddock program (removing the `enableHaddockProgram` option).
+  ''
+    HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
     DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
     INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
   '' + lib.optionalString (targetPlatform != hostPlatform) ''
     Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
     CrossCompilePrefix = ${targetPrefix}
-    HADDOCK_DOCS = NO
-    BUILD_SPHINX_HTML = NO
-    BUILD_SPHINX_PDF = NO
   '' + lib.optionalString (!enableProfiledLibs) ''
     GhcLibWays = "v dyn"
   '' + lib.optionalString enableRelocatedStaticLibs ''
@@ -143,7 +173,7 @@ stdenv.mkDerivation (rec {
 
     echo -n "${buildMK}" > mk/build.mk
     sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
-  '' + lib.optionalString (stdenv.isLinux) ''
+  '' + lib.optionalString (stdenv.isLinux && hostPlatform.libc == "glibc") ''
     export LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive"
   '' + lib.optionalString (!stdenv.isDarwin) ''
     export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
@@ -204,8 +234,10 @@ stdenv.mkDerivation (rec {
   dontAddExtraLibs = true;
 
   nativeBuildInputs = [
-    perl autoconf automake m4 python3 sphinx
+    perl autoconf automake m4 python3
     ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
+  ] ++ lib.optionals enableDocs [
+    sphinx
   ];
 
   # For building runtime libs
@@ -225,7 +257,16 @@ stdenv.mkDerivation (rec {
 
   checkTarget = "test";
 
-  hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie";
+  hardeningDisable =
+    [ "format" ]
+    # In nixpkgs, musl based builds currently enable `pie` hardening by default
+    # (see `defaultHardeningFlags` in `make-derivation.nix`).
+    # But GHC cannot currently produce outputs that are ready for `-pie` linking.
+    # Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
+    # See:
+    # * https://github.com/NixOS/nixpkgs/issues/129247
+    # * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
+    ++ lib.optional stdenv.targetPlatform.isMusl "pie";
 
   postInstall = ''
     # Install the bash completion file.
diff --git a/nixpkgs/pkgs/development/compilers/ghc/head.nix b/nixpkgs/pkgs/development/compilers/ghc/head.nix
index ec236731afd7..2ea14b78cc4a 100644
--- a/nixpkgs/pkgs/development/compilers/ghc/head.nix
+++ b/nixpkgs/pkgs/development/compilers/ghc/head.nix
@@ -46,6 +46,20 @@
   ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
     (if useLLVM then "perf-cross" else "perf-cross-ncg")
 
+, #  Whether to build sphinx documentation.
+  enableDocs ? (
+    # Docs disabled for musl and cross because it's a large task to keep
+    # all `sphinx` dependencies building in those environments.
+    # `sphinx` pullls in among others:
+    # Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
+    (stdenv.targetPlatform == stdenv.hostPlatform)
+    && !stdenv.hostPlatform.isMusl
+  )
+
+, enableHaddockProgram ?
+    # Disabled for cross; see note [HADDOCK_DOCS].
+    (stdenv.targetPlatform == stdenv.hostPlatform)
+
 , # Whether to disable the large address space allocator
   # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
   disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
@@ -53,6 +67,10 @@
 
 assert !enableNativeBignum -> gmp != null;
 
+# Cross cannot currently build the `haddock` program for silly reasons,
+# see note [HADDOCK_DOCS].
+assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
+
 let
   inherit (stdenv) buildPlatform hostPlatform targetPlatform;
 
@@ -68,14 +86,26 @@ let
     ifneq \"\$(BuildFlavour)\" \"\"
     include mk/flavours/\$(BuildFlavour).mk
     endif
+    BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
+    BUILD_SPHINX_PDF = NO
+  '' +
+  # Note [HADDOCK_DOCS]:
+  # Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
+  # program is built (which we generally always want to have a complete GHC install)
+  # and whether it is run on the GHC sources to generate hyperlinked source code
+  # (which is impossible for cross-compilation); see:
+  # https://gitlab.haskell.org/ghc/ghc/-/issues/20077
+  # This implies that currently a cross-compiled GHC will never have a `haddock`
+  # program, so it can never generate haddocks for any packages.
+  # If this is solved in the future, we'd like to unconditionally
+  # build the haddock program (removing the `enableHaddockProgram` option).
+  ''
+    HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
     DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
     BIGNUM_BACKEND = ${if enableNativeBignum then "native" else "gmp"}
   '' + lib.optionalString (targetPlatform != hostPlatform) ''
     Stage1Only = ${if (targetPlatform.system == hostPlatform.system && !targetPlatform.isiOS) then "NO" else "YES"}
     CrossCompilePrefix = ${targetPrefix}
-    HADDOCK_DOCS = NO
-    BUILD_SPHINX_HTML = NO
-    BUILD_SPHINX_PDF = NO
   '' + lib.optionalString dontStrip ''
     STRIP_CMD = :
   '' + lib.optionalString (!enableProfiledLibs) ''
@@ -221,8 +251,10 @@ stdenv.mkDerivation (rec {
   dontAddExtraLibs = true;
 
   nativeBuildInputs = [
-    perl autoconf autoreconfHook automake m4 python3 sphinx
+    perl autoconf autoreconfHook automake m4 python3
     ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
+  ] ++ lib.optionals enableDocs [
+    sphinx
   ];
 
   # For building runtime libs
@@ -242,7 +274,16 @@ stdenv.mkDerivation (rec {
 
   checkTarget = "test";
 
-  hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie";
+  hardeningDisable =
+    [ "format" ]
+    # In nixpkgs, musl based builds currently enable `pie` hardening by default
+    # (see `defaultHardeningFlags` in `make-derivation.nix`).
+    # But GHC cannot currently produce outputs that are ready for `-pie` linking.
+    # Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
+    # See:
+    # * https://github.com/NixOS/nixpkgs/issues/129247
+    # * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
+    ++ lib.optional stdenv.targetPlatform.isMusl "pie";
 
   postInstall = ''
     # Install the bash completion file.
diff --git a/nixpkgs/pkgs/development/compilers/go/1.14.nix b/nixpkgs/pkgs/development/compilers/go/1.14.nix
index e8a90ac0b8df..21080fd96cb6 100644
--- a/nixpkgs/pkgs/development/compilers/go/1.14.nix
+++ b/nixpkgs/pkgs/development/compilers/go/1.14.nix
@@ -41,6 +41,7 @@ let
     "armv6l" = "arm";
     "armv7l" = "arm";
     "powerpc64le" = "ppc64le";
+    "mips" = "mips";
   }.${platform.parsed.cpu.name} or (throw "Unsupported system");
 
   # We need a target compiler which is still runnable at build time,
diff --git a/nixpkgs/pkgs/development/compilers/go/1.15.nix b/nixpkgs/pkgs/development/compilers/go/1.15.nix
index 0a9b0ba9b278..74ab1342dab5 100644
--- a/nixpkgs/pkgs/development/compilers/go/1.15.nix
+++ b/nixpkgs/pkgs/development/compilers/go/1.15.nix
@@ -41,6 +41,7 @@ let
     "armv6l" = "arm";
     "armv7l" = "arm";
     "powerpc64le" = "ppc64le";
+    "mips" = "mips";
   }.${platform.parsed.cpu.name} or (throw "Unsupported system");
 
   # We need a target compiler which is still runnable at build time,
@@ -50,11 +51,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "go";
-  version = "1.15.13";
+  version = "1.15.14";
 
   src = fetchurl {
     url = "https://dl.google.com/go/go${version}.src.tar.gz";
-    sha256 = "sha256-mQaeciNHnM5FU/hPh0uTRfb0BF8nz1CJSJtUbaYZokQ=";
+    sha256 = "sha256-YKSlxI1j0KE+yohJAJtiRin/QpyLxdGmqMPE2p805wo=";
   };
 
   # perl is used for testing go vet
diff --git a/nixpkgs/pkgs/development/compilers/go/1.16.nix b/nixpkgs/pkgs/development/compilers/go/1.16.nix
index 26cfb898ecf0..49a2f9656f35 100644
--- a/nixpkgs/pkgs/development/compilers/go/1.16.nix
+++ b/nixpkgs/pkgs/development/compilers/go/1.16.nix
@@ -41,6 +41,7 @@ let
     "armv6l" = "arm";
     "armv7l" = "arm";
     "powerpc64le" = "ppc64le";
+    "mips" = "mips";
   }.${platform.parsed.cpu.name} or (throw "Unsupported system");
 
   # We need a target compiler which is still runnable at build time,
@@ -50,11 +51,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "go";
-  version = "1.16.5";
+  version = "1.16.6";
 
   src = fetchurl {
     url = "https://dl.google.com/go/go${version}.src.tar.gz";
-    sha256 = "sha256-e/p+WQjHzJ512l3fMGbXy88/2fpRlFhRMl7rwX9QuoA=";
+    sha256 = "sha256-o6XUvEAbUdsGXk+TtSM0ek00OuDAsIplw0I7BaE4A30=";
   };
 
   # perl is used for testing go vet
diff --git a/nixpkgs/pkgs/development/compilers/gprolog/default.nix b/nixpkgs/pkgs/development/compilers/gprolog/default.nix
index 87bf767f5bdc..b21f0196d4b4 100644
--- a/nixpkgs/pkgs/development/compilers/gprolog/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gprolog/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "gprolog-1.4.5";
+  name = "gprolog-1.5.0";
 
   src = fetchurl {
     urls = [
       "mirror://gnu/gprolog/${name}.tar.gz"
       "http://www.gprolog.org/${name}.tar.gz"
     ];
-    sha256 = "0z4cc42n3k6i35b8mr816iwsvrpxshw6d7dgz6s2h1hy0l7g1p5z";
+    sha256 = "sha256-ZwZCtDwPqifr1olh77F+vnB2iPkbaAlWbd1gYTlRLAE=";
   };
 
   hardeningDisable = lib.optional stdenv.isi686 "pic";
diff --git a/nixpkgs/pkgs/development/compilers/idris2/default.nix b/nixpkgs/pkgs/development/compilers/idris2/default.nix
index ac0f3312414e..c399772a9f32 100644
--- a/nixpkgs/pkgs/development/compilers/idris2/default.nix
+++ b/nixpkgs/pkgs/development/compilers/idris2/default.nix
@@ -48,7 +48,8 @@ stdenv.mkDerivation rec {
   postInstall = let
     includedLibs = [ "base" "contrib" "network" "prelude" ];
     name = "${pname}-${version}";
-    packagePaths = builtins.map (l: "$out/${name}/" + l) includedLibs;
+    packagePaths =
+      builtins.map (l: "$out/${name}/${l}-${version}") includedLibs;
     additionalIdris2Paths = builtins.concatStringsSep ":" packagePaths;
   in ''
     # Remove existing idris2 wrapper that sets incorrect LD_LIBRARY_PATH
diff --git a/nixpkgs/pkgs/development/compilers/inklecate/default.nix b/nixpkgs/pkgs/development/compilers/inklecate/default.nix
new file mode 100644
index 000000000000..6ed01d9bbcf6
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/inklecate/default.nix
@@ -0,0 +1,54 @@
+{ lib, stdenv, fetchurl, unzip, makeWrapper }:
+
+stdenv.mkDerivation rec {
+  pname = "inklecate";
+  version = "1.0.0";
+
+  src =
+    if stdenv.isLinux then
+      fetchurl {
+        url    = "https://github.com/inkle/ink/releases/download/v${version}/inklecate_linux.zip";
+        sha256 = "6e17db766222998ba0ae5a5da9857e34896e683b9ec42fad528c3f8bea7398ea";
+        name   = "${pname}-${version}";
+      }
+    else if stdenv.isDarwin then
+      fetchurl {
+        url    = "https://github.com/inkle/ink/releases/download/v${version}/inklecate_mac.zip";
+        sha256 = "b6f4dd1f95c180637ce193dbb5fa6d59aeafe49a2121a05b7822e6cbbaa6931f";
+        name   = "${pname}-${version}";
+      }
+    else throw "Not supported on ${stdenv.hostPlatform.system}.";
+
+  # Work around the "unpacker appears to have produced no directories"
+  # case that happens when the archive doesn't have a subdirectory.
+  setSourceRoot = "sourceRoot=$(pwd)";
+
+  nativeBuildInputs = [ unzip makeWrapper ];
+
+  unpackPhase = ''
+    unzip -qq -j $src -d $pname-$version
+
+    rm $pname-$version/ink-engine-runtime.dll
+    rm $pname-$version/ink_compiler.dll
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin/
+
+    cp $pname-$version/inklecate $out/bin/inklecate
+  '';
+
+
+  meta = with lib; {
+    description     = "Compiler for ink, inkle's scripting language";
+    longDescription = ''
+      Inklecate is a command-line compiler for ink, inkle's open source
+      scripting language for writing interactive narrative
+      '';
+    homepage        = "https://www.inklestudios.com/ink/";
+    downloadPage    = "https://github.com/inkle/ink/releases";
+    license         = licenses.mit;
+    platforms       = platforms.unix;
+    maintainers     = with maintainers; [ shreerammodi ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/compilers/jrsonnet/default.nix b/nixpkgs/pkgs/development/compilers/jrsonnet/default.nix
index a8b4a76b7dea..512e0aa0247b 100644
--- a/nixpkgs/pkgs/development/compilers/jrsonnet/default.nix
+++ b/nixpkgs/pkgs/development/compilers/jrsonnet/default.nix
@@ -2,20 +2,20 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "jrsonnet";
-  version = "0.4.1";
+  version = "0.4.2";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "CertainLach";
     repo = "jrsonnet";
-    sha256 = "sha256-vDZpb5Z8XOVc6EJ1Nul07kC8ppqcGzKPb4DEarqq2yg=";
+    sha256 = "sha256-OX+iJJ3vdCsWWr8x31psV9Vne6xWDZnJc83NbJqMK1A=";
   };
 
   postInstall = ''
     ln -s $out/bin/jrsonnet $out/bin/jsonnet
   '';
 
-  cargoSha256 = "sha256-SR3m2meW8mTaxiYgeY/m7HFPrHGVtium/VRU6vWKxys=";
+  cargoSha256 = "sha256-eFfAU9Q3nYAJK+kKP1Y6ONjOIfkuYTlelrFrEW9IJ8c=";
 
   meta = {
     description = "Purely-functional configuration language that helps you define JSON data";
diff --git a/nixpkgs/pkgs/development/compilers/julia/1.6-bin.nix b/nixpkgs/pkgs/development/compilers/julia/1.6-bin.nix
index 19aab27ba748..d8640228513e 100644
--- a/nixpkgs/pkgs/development/compilers/julia/1.6-bin.nix
+++ b/nixpkgs/pkgs/development/compilers/julia/1.6-bin.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "julia-bin";
-  version = "1.6.1";
+  version = "1.6.2";
 
   src = {
     x86_64-linux = fetchurl {
       url = "https://julialang-s3.julialang.org/bin/linux/x64/${lib.versions.majorMinor version}/julia-${version}-linux-x86_64.tar.gz";
-      sha256 = "01i5sm4vqb0y5qznql571zap19b42775drrcxnzsyhpaqgg8m23w";
+      sha256 = "0h1jh8gbvxb0pl1an0fbbg4lbd0sa24yj2f4yqwavw8dbdvvbd1y";
     };
   }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
diff --git a/nixpkgs/pkgs/development/compilers/kotlin/default.nix b/nixpkgs/pkgs/development/compilers/kotlin/default.nix
index 07d90f9e013e..7e46e4bf2eaf 100644
--- a/nixpkgs/pkgs/development/compilers/kotlin/default.nix
+++ b/nixpkgs/pkgs/development/compilers/kotlin/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "kotlin";
-  version = "1.5.20";
+  version = "1.5.21";
 
   src = fetchurl {
     url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip";
-    sha256 = "12wa7blf7l4360rfm8fk5x36ij0x1m61wrjrxkvligdavmil5wzd";
+    sha256 = "sha256-8zE6/dar8bjHXGKS9OQfLbr+/I9scnYse6mz2u712lk=";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/nixpkgs/pkgs/development/compilers/ldc/binary.nix b/nixpkgs/pkgs/development/compilers/ldc/binary.nix
index 3a07009296a8..7b43a2c2e8d8 100644
--- a/nixpkgs/pkgs/development/compilers/ldc/binary.nix
+++ b/nixpkgs/pkgs/development/compilers/ldc/binary.nix
@@ -32,7 +32,6 @@ in stdenv.mkDerivation {
   '';
 
   meta = with lib; {
-    inherit version;
     description = "The LLVM-based D Compiler";
     homepage = "https://github.com/ldc-developers/ldc";
     # from https://github.com/ldc-developers/ldc/blob/master/LICENSE
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix
index 87cdca834ea7..d6ee37524415 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/clang/default.nix
@@ -9,7 +9,7 @@ let
     pname = "clang";
     inherit version;
 
-    src = fetch "clang" "1vd9rhhrd8ghdg111lac7w8by71y9l14yh5zxfijsm6lj4p4avp2";
+    src = fetch "clang" "0px4gl27az6cdz6adds89qzdwb1cqpjsfvrldbz9qvpmphrj34bf";
     inherit clang-tools-extra_src;
 
     unpackPhase = ''
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/X86-support-extension.patch b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/X86-support-extension.patch
index f6f9336ad5ad..66742e5b1498 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/X86-support-extension.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/X86-support-extension.patch
@@ -2,9 +2,7 @@ diff --git a/lib/builtins/CMakeLists.txt b/lib/builtins/CMakeLists.txt
 index 3a66dd9c3fb..7efc85d9f9f 100644
 --- a/lib/builtins/CMakeLists.txt
 +++ b/lib/builtins/CMakeLists.txt
-@@ -301,6 +301,10 @@ if (NOT MSVC)
-     i386/umoddi3.S
-   )
+@@ -345,4 +345,8 @@ if (NOT MSVC)
  
 +  set(i486_SOURCES ${i386_SOURCES})
 +  set(i586_SOURCES ${i386_SOURCES})
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/default.nix
index cde1317ca35d..fdc134bdf4b1 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/default.nix
@@ -12,7 +12,7 @@ in
 stdenv.mkDerivation {
   pname = "compiler-rt" + lib.optionalString (haveLibc) "-libc";
   inherit version;
-  src = fetch "compiler-rt" "0d444qihq9jhqnfv003cr704v363va72zl6qaw2algj1c85cva45";
+  src = fetch "compiler-rt" "1950rg294izdwkaasi7yjrmadc9mzdd5paf0q63jjcq2m3rdbj5l";
 
   nativeBuildInputs = [ cmake python3 llvm.dev ];
   buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/default.nix
index 35228eac43be..212c6e52876f 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/default.nix
@@ -18,7 +18,7 @@
 }:
 
 let
-  release_version = "12.0.0";
+  release_version = "12.0.1";
   candidate = ""; # empty or "rcN"
   dash-candidate = lib.optionalString (candidate != "") "-${candidate}";
   version = "${release_version}${dash-candidate}"; # differentiating these (variables) is important for RCs
@@ -29,7 +29,7 @@ let
     inherit sha256;
   };
 
-  clang-tools-extra_src = fetch "clang-tools-extra" "0p3dzr0qa7mar83y66xa5m5apynf6ia0lsdsq6axwnm64ysy0hdd";
+  clang-tools-extra_src = fetch "clang-tools-extra" "1r9a4fdz9ci58b5z2inwvm4z4cdp6scrivnaw05dggkxz7yrwrb5";
 
   llvm_meta = {
     license     = lib.licenses.ncsa;
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libcxx/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/libcxx/default.nix
index 1c9a7dd3c53b..3ddcb7997505 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/libcxx/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/libcxx/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
   pname = "libcxx";
   inherit version;
 
-  src = fetch "libcxx" "1wf3ww29xkx7prs7pdwicy5qqfapib26110jgmkjrbka9z57bjvx";
+  src = fetch "libcxx" "05cx39ldlxchck454lgfly1xj0c7x65iyx4hqhiihrlg6p6qj854";
 
   postUnpack = ''
     unpackFile ${libcxxabi.src}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/default.nix
index e360cf8d0b2f..16eaed20d78c 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/libcxxabi/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
   pname = "libcxxabi";
   inherit version;
 
-  src = fetch "libcxxabi" "1cbmzspwjlr8f6sp73pw6ivf4dpg6rpc61by0q1m2zca2k6yif3a";
+  src = fetch "libcxxabi" "1l4idd8npbkm168d26kqn529yv3npsd8f2dm8a7iwyknj7iyivw8";
 
   outputs = [ "out" "dev" ];
 
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/libunwind/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/libunwind/default.nix
index abfe950614ad..8ed246876959 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/libunwind/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/libunwind/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
   pname = "libunwind";
   inherit version;
 
-  src = fetch pname "1x8wpmsrsgnwj2v5ih52ylni7r6n8gzkcj6hx65zbxski2rablly";
+  src = fetch pname "192ww6n81lj2mb9pj4043z79jp3cf58a9c2qrxjwm5c3a64n1shb";
 
   postUnpack = ''
     unpackFile ${libcxx.src}
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix
index e2c7470d2fc5..f9b0effbff30 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   pname = "lld";
   inherit version;
 
-  src = fetch pname "1zakyxk5bwnh7jarckcd4rbmzi58jgn2dbah5j5cwcyfyfbx9drc";
+  src = fetch pname "0qg3fgc7wj34hdkqn21y03zcmsdd01szhhm1hfki63iifrm3y2v9";
 
   patches = [
     ./gnu-install-dirs.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/lldb/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/lldb/default.nix
index 0712396cccfa..b6659034e813 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/lldb/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/lldb/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation (rec {
   pname = "lldb";
   inherit version;
 
-  src = fetch pname "1v85qyq3snk81vjmwq5q7xikyyqsfpqy2c4qmr81mps4avsw1g0l";
+  src = fetch pname "0g3pj1m3chafavpr35r9fynm85y2hdyla6klj0h28khxs2613i78";
 
   patches = [
     ./procfs.patch
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/llvm/default.nix
index 8413f0f5745b..361c6798385d 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/llvm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/llvm/default.nix
@@ -34,8 +34,8 @@ in stdenv.mkDerivation (rec {
   pname = "llvm";
   inherit version;
 
-  src = fetch pname "0l4b79gwfvxild974aigcq1yigypjsk2j5p59syhl6ksd744gp29";
-  polly_src = fetch "polly" "1ixl9yj526n8iqh9ckyiah2vzravs9d1akybqq7rvy32n9vgr6hd";
+  src = fetch pname "1pzx9zrmd7r3481sbhwvkms68fwhffpp4mmz45dgrkjpyl2q96kx";
+  polly_src = fetch "polly" "1yfm9ixda4a2sx7ak5vswijx4ydk5lv1c1xh39xmd2kh299y4m12";
 
   unpackPhase = ''
     unpackFile $src
@@ -84,6 +84,8 @@ in stdenv.mkDerivation (rec {
     substituteInPlace unittests/IR/CMakeLists.txt \
       --replace "PassBuilderCallbacksTest.cpp" ""
     rm unittests/IR/PassBuilderCallbacksTest.cpp
+    # TODO: Fix failing tests:
+    rm test/DebugInfo/X86/vla-multi.ll
   '' + optionalString stdenv.hostPlatform.isMusl ''
     patch -p1 -i ${../../TLI-musl.patch}
     substituteInPlace unittests/Support/CMakeLists.txt \
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/openmp/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/openmp/default.nix
index c107258dd189..8ed1bf71f008 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/openmp/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/openmp/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   pname = "openmp";
   inherit version;
 
-  src = fetch pname "0z8n1wanby6aq3i7d91mgk72hb33zfl5blayk0a22cs7l8i706zb";
+  src = fetch pname "14dh0r6h2xh747ffgnsl4z08h0ri04azi9vf79cbz7ma1r27kzk0";
 
   nativeBuildInputs = [ cmake perl ];
   buildInputs = [ llvm ];
diff --git a/nixpkgs/pkgs/development/compilers/mint/default.nix b/nixpkgs/pkgs/development/compilers/mint/default.nix
index 1024ddb6a8a6..adb7490785e4 100644
--- a/nixpkgs/pkgs/development/compilers/mint/default.nix
+++ b/nixpkgs/pkgs/development/compilers/mint/default.nix
@@ -1,18 +1,18 @@
-{ lib, fetchFromGitHub, crystal_0_36, openssl }:
+{ lib, fetchFromGitHub, crystal_1_0, openssl }:
 
 let
-  crystal = crystal_0_36;
+  crystal = crystal_1_0;
 
 in
 crystal.buildCrystalPackage rec {
-  version = "0.11.0";
+  version = "0.14.0";
   pname = "mint";
 
   src = fetchFromGitHub {
     owner = "mint-lang";
     repo = "mint";
     rev = version;
-    sha256 = "sha256-QqO4Kc8hf6WNCENPvLwYIF9gtXG/VRR7DhyZvxB4VsA=";
+    sha256 = "1mf9d0jpdb21hkzaqvwyx2171dv3hr50zhl07p85wpf0d3n5wml8";
   };
 
   postPatch = ''
@@ -34,6 +34,6 @@ crystal.buildCrystalPackage rec {
     license = licenses.bsd3;
     maintainers = with maintainers; [ manveru ];
     platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ];
-    broken = lib.versionOlder crystal.version "0.33";
+    broken = lib.versionOlder crystal.version "1.0";
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/mint/shards.nix b/nixpkgs/pkgs/development/compilers/mint/shards.nix
index 595f9c5ebee7..49ba1ad74325 100644
--- a/nixpkgs/pkgs/development/compilers/mint/shards.nix
+++ b/nixpkgs/pkgs/development/compilers/mint/shards.nix
@@ -2,79 +2,55 @@
   admiral = {
     owner = "jwaldrip";
     repo = "admiral.cr";
-    rev = "v1.11.2";
-    sha256 = "0rxsy41d0qpw9h1d3jvhmbmzqba9yhgyzc0jrdbg28f59fl7zp7q";
+    rev = "v1.11.4";
+    sha256 = "1rpybhhzz892s2dp2kzbkkn1c8c7574275ql6amhbvc6ds5j3i46";
   };
   ameba = {
     owner = "crystal-ameba";
     repo = "ameba";
-    rev = "v0.13.3";
-    sha256 = "0yhb8vfrfzsm3a45h2jmcrn1n7jy3zn2hwims3dikgq8kaggws9y";
+    rev = "v0.14.2";
+    sha256 = "1l1q1icpzg1zvhfj8948w36j7ikaj7w816677zi29vi6y2d1dmf2";
   };
   baked_file_system = {
     owner = "schovi";
     repo = "baked_file_system";
-    rev = "7183bfde8d86a976a6912f582b51cbd1783456af";
-    sha256 = "0s1bsrimz30wfkkfmb4bm49mx44nhqj0hky8jkn0kz0mpc28mkkl";
-  };
-  diff = {
-    owner = "MakeNowJust";
-    repo = "crystal-diff";
-    rev = "v1.1.0";
-    sha256 = "1q5q2d5mp1r8c6k5v4755sb3b6awiz85d1j280djzhbd0pggk3z7";
+    rev = "v0.10.0";
+    sha256 = "10f25sby8ipps5c2jj4j2q30kscgv4g1s5nhdddmldhg9isj0jli";
   };
   dotenv = {
     owner = "gdotdesign";
     repo = "cr-dotenv";
-    rev = "v0.3.1";
-    sha256 = "1xp7c3g8dj1hqk2b885qr4y0s8661gpp9q28lv6rhr0ckllc6zgz";
+    rev = "v1.0.0";
+    sha256 = "00pdawysns1w1iqwh6j3shilpwh41ljz1chsqkacn6dj2yn21n0r";
   };
   exception_page = {
     owner = "crystal-loot";
     repo = "exception_page";
-    rev = "v0.1.4";
-    sha256 = "0bsp2m89sl0bg9d5szbs1nxyk7yk58rkk24aibr39hhb5zi70pqi";
+    rev = "v0.1.5";
+    sha256 = "0nlph4rmavwsndf94hisdikh3qhhkyyh97cc39mvbqzrqrc6lbx3";
   };
   kemal = {
     owner = "kemalcr";
     repo = "kemal";
-    rev = "v0.27.0";
-    sha256 = "01p5fkm6q9k6390dhhw3dwwzlxhxafykknkkcayv1k4ynn126hi7";
+    rev = "v1.0.0";
+    sha256 = "0yy6mkqyxlgdi6svj206iprw3njrxw61y2s2wwz78yz7j6sly1wf";
   };
   kilt = {
     owner = "jeromegn";
     repo = "kilt";
-    rev = "v0.4.0";
-    sha256 = "1w9ib6j4xhwxdxx58nzc06gw7ci7vga03vgj1z1bnklamb0b0l0k";
+    rev = "v0.4.1";
+    sha256 = "1bhmmk4djnysf2fr0020dakn1730a33xzi10c8lg1a343x77rm64";
   };
   markd = {
     owner = "icyleaf";
     repo = "markd";
-    rev = "620845abb6776d1765d20d86cc0220aa40f89a91";
-    sha256 = "1nq1ddmd2kgnl8vrk0y65lqhy145740a3s68kn0advm2xx8rbhmy";
+    rev = "v0.4.0";
+    sha256 = "0zi39ik7zqnidysafwn6icpr0gdb6z40v63bx5hablarpf2r9637";
   };
   radix = {
     owner = "luislavena";
     repo = "radix";
-    rev = "v0.3.9";
-    sha256 = "19pksfr7ddc31hvikb433jg0zav1ar93k6zmsgaf3vsrjnvia3ix";
-  };
-  string_inflection = {
-    owner = "mosop";
-    repo = "string_inflection";
-    rev = "v0.2.1";
-    sha256 = "10vkr28h7n53ijjv57ldxhh473086qg313lzs55a7wsh0zgc104m";
-  };
-  time_format = {
-    owner = "vladfaust";
-    repo = "time_format.cr";
-    rev = "v0.1.1";
-    sha256 = "0mmssnabf476i07sajm7s3rlvfcav4lkh0n8g12rybxr6c9f683v";
-  };
-  tree_template = {
-    owner = "gdotdesign";
-    repo = "tree_template";
-    rev = "7e24c92208cc99938f3fbd8f5fecda22bcbe3cc3";
-    sha256 = "0ixscq7nqlp83x976d41kq83a5gw9kkk7lnxhlsc91000hm5h3wq";
+    rev = "v0.4.1";
+    sha256 = "1l08cydkdidq9yyil1wl240hvk41iycv04jrg6nx5mkvzw4z1bzg";
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/obliv-c/default.nix b/nixpkgs/pkgs/development/compilers/obliv-c/default.nix
index 8a647a31c7cb..b7ec54ace7aa 100644
--- a/nixpkgs/pkgs/development/compilers/obliv-c/default.nix
+++ b/nixpkgs/pkgs/development/compilers/obliv-c/default.nix
@@ -33,7 +33,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     description = "A GCC wrapper that makes it easy to embed secure computation protocols inside regular C programs";
     license = lib.licenses.bsd3;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/compilers/ocaml/4.13.nix b/nixpkgs/pkgs/development/compilers/ocaml/4.13.nix
index dc805f7e61cc..008d2cd6d075 100644
--- a/nixpkgs/pkgs/development/compilers/ocaml/4.13.nix
+++ b/nixpkgs/pkgs/development/compilers/ocaml/4.13.nix
@@ -1,9 +1,9 @@
 import ./generic.nix {
   major_version = "4";
   minor_version = "13";
-  patch_version = "0-alpha1";
+  patch_version = "0-alpha2";
   src = fetchTarball {
-    url = "https://caml.inria.fr/pub/distrib/ocaml-4.13/ocaml-4.13.0~alpha1.tar.xz";
-    sha256 = "071k12q8m2w9bcwvfclyc46pwd9r49v6av36fhjdlqq29niyq915";
+    url = "https://caml.inria.fr/pub/distrib/ocaml-4.13/ocaml-4.13.0~alpha2.tar.xz";
+    sha256 = "0krb0254i6ihbymjn6mwgzcfrzsvpk9hbagl0agm6wml21zpcsif";
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/11.nix b/nixpkgs/pkgs/development/compilers/openjdk/11.nix
index bf85fd353350..0f19b19b6049 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/11.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/11.nix
@@ -11,8 +11,8 @@
 let
   major = "11";
   minor = "0";
-  update = "11";
-  build = "9";
+  update = "12";
+  build = "7";
 
   openjdk = stdenv.mkDerivation rec {
     pname = "openjdk" + lib.optionalString headless "-headless";
@@ -22,7 +22,7 @@ let
       owner = "openjdk";
       repo = "jdk${major}u";
       rev = "jdk-${version}";
-      sha256 = "0jncsj424340xjfwv6sx5hy9sas80qa3ymkx0ng3by3z01y5rgfx";
+      sha256 = "0s8g6gj5vhm7hbp05cqaxasjrkwr41fm634qim8q6slklm4pkkli";
     };
 
     nativeBuildInputs = [ pkg-config autoconf unzip ];
diff --git a/nixpkgs/pkgs/development/compilers/polyml/default.nix b/nixpkgs/pkgs/development/compilers/polyml/default.nix
index d2a150334228..2af100d067bc 100644
--- a/nixpkgs/pkgs/development/compilers/polyml/default.nix
+++ b/nixpkgs/pkgs/development/compilers/polyml/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "polyml";
-  version = "5.8.1";
+  version = "5.8.2";
 
   prePatch = lib.optionalString stdenv.isDarwin ''
     substituteInPlace configure.ac --replace stdc++ c++
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     owner = "polyml";
     repo = "polyml";
     rev = "v${version}";
-    sha256 = "0gcx2fjiwsiazlyfhm7zlrd563blc4fy9w2mspib9divbavaxin6";
+    sha256 = "0vvla816g9rk9aa75gq63rb7bf6yla27p8wh1s1ycgq2in2zk0py";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/compilers/ponyc/default.nix b/nixpkgs/pkgs/development/compilers/ponyc/default.nix
index 36a83d47d6fd..086d4d30127e 100644
--- a/nixpkgs/pkgs/development/compilers/ponyc/default.nix
+++ b/nixpkgs/pkgs/development/compilers/ponyc/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation (rec {
   pname = "ponyc";
-  version = "0.41.1";
+  version = "0.42.0";
 
   src = fetchFromGitHub {
     owner = "ponylang";
     repo = pname;
     rev = version;
-    sha256 = "02wx070cy1193xzv58vh79yzwgpqiayqlwd3i285698fppbcg69a";
+    sha256 = "1s8glmzz0g5lj1fjwwy4m3n660smiq5wl9r1lg686wqh42hcgnsy";
 
 # Due to a bug in LLVM 9.x, ponyc has to include its own vendored patched
 # LLVM.  (The submodule is a specific tag in the LLVM source tree).
diff --git a/nixpkgs/pkgs/development/compilers/ponyc/make-safe-for-sandbox.patch b/nixpkgs/pkgs/development/compilers/ponyc/make-safe-for-sandbox.patch
index 49addcbc616e..8190cc2ee02e 100644
--- a/nixpkgs/pkgs/development/compilers/ponyc/make-safe-for-sandbox.patch
+++ b/nixpkgs/pkgs/development/compilers/ponyc/make-safe-for-sandbox.patch
@@ -1,21 +1,21 @@
---- a/lib/CMakeLists.txt	2021-05-27 15:58:36.819331229 -0400
-+++ b/lib/CMakeLists.txt	2021-05-27 16:00:19.768268649 -0400
-@@ -10,12 +10,12 @@
+--- a/lib/CMakeLists.txt.orig	2021-07-07 13:40:20.209410160 -0400
++++ a/lib/CMakeLists.txt	2021-07-07 13:43:11.886969662 -0400
+@@ -15,12 +15,12 @@
  endif()
  
  ExternalProject_Add(gbenchmark
--    URL https://github.com/google/benchmark/archive/v1.5.2.tar.gz
-+    SOURCE_DIR gbenchmark-prefix/src/benchmark
+-    URL ${PONYC_GBENCHMARK_URL}
++	SOURCE_DIR gbenchmark-prefix/src/benchmark
      CMAKE_ARGS -DCMAKE_BUILD_TYPE=${PONYC_LIBS_BUILD_TYPE} -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DBENCHMARK_ENABLE_GTEST_TESTS=OFF -DCMAKE_CXX_FLAGS=-fpic --no-warn-unused-cli
  )
  
  ExternalProject_Add(googletest
 -    URL https://github.com/google/googletest/archive/release-1.8.1.tar.gz
-+    URL @googletest@
++	URL @googletest@
      CMAKE_ARGS -DCMAKE_BUILD_TYPE=${PONYC_LIBS_BUILD_TYPE} -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DCMAKE_CXX_FLAGS=-fpic -Dgtest_force_shared_crt=ON --no-warn-unused-cli
  )
  
-@@ -28,75 +28,6 @@
+@@ -33,75 +33,6 @@
      COMPONENT library
  )
  
diff --git a/nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix b/nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix
index 568407c3614e..adf9dd13c71f 100644
--- a/nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix
+++ b/nixpkgs/pkgs/development/compilers/purescript/purescript/default.nix
@@ -18,19 +18,19 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "purescript";
-  version = "0.14.2";
+  version = "0.14.3";
 
   src =
     if stdenv.isDarwin
     then
     fetchurl {
       url = "https://github.com/${pname}/${pname}/releases/download/v${version}/macos.tar.gz";
-      sha256 = "1ga2hn9br71dyzn3p9jvjiksvnq21p6i5hp1z1j5fpz9la28nqzf";
+      sha256 = "1ipksp6kx3h030xf1y3y30gazrdz893pklanwak27hbqfy3ckssj";
     }
     else
     fetchurl {
       url = "https://github.com/${pname}/${pname}/releases/download/v${version}/linux64.tar.gz";
-      sha256 = "1kv7dm1nw85lw3brrclkj7xc9p021jx3n8wgp2fg3572s86ypskw";
+      sha256 = "158jyjpfgd84gbwpxqj41mvpy0fmb1d1iqq2h42sc7041v2f38p0";
     };
 
 
diff --git a/nixpkgs/pkgs/development/compilers/rasm/default.nix b/nixpkgs/pkgs/development/compilers/rasm/default.nix
index 0feaabc92e62..0f617d0f6618 100644
--- a/nixpkgs/pkgs/development/compilers/rasm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/rasm/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "0.117";
 
   src = fetchurl {
-    url = "www.roudoudou.com/export/cpc/rasm/${pname}_v0117_src.zip";
+    url = "http://www.roudoudou.com/export/cpc/rasm/${pname}_v0117_src.zip";
     sha256 = "1hwily4cfays59qm7qd1ax48i7cpbxhs5l9mfpyn7m2lxsfqrl3z";
   };
 
diff --git a/nixpkgs/pkgs/development/compilers/sbcl/common.nix b/nixpkgs/pkgs/development/compilers/sbcl/common.nix
index b020eeafc5cb..eb3f6aba200c 100644
--- a/nixpkgs/pkgs/development/compilers/sbcl/common.nix
+++ b/nixpkgs/pkgs/development/compilers/sbcl/common.nix
@@ -110,7 +110,6 @@ stdenv.mkDerivation rec {
   '');
 
   meta = sbclBootstrap.meta // {
-    inherit version;
     updateWalker = true;
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/solc/default.nix b/nixpkgs/pkgs/development/compilers/solc/default.nix
index c01cc761e8c6..eea60786f4af 100644
--- a/nixpkgs/pkgs/development/compilers/solc/default.nix
+++ b/nixpkgs/pkgs/development/compilers/solc/default.nix
@@ -99,7 +99,6 @@ let
       homepage = "https://github.com/ethereum/solidity";
       license = licenses.gpl3;
       maintainers = with maintainers; [ dbrock akru lionello sifmelcara ];
-      inherit version;
     };
   };
 in
diff --git a/nixpkgs/pkgs/development/compilers/vala/default.nix b/nixpkgs/pkgs/development/compilers/vala/default.nix
index 69d5789bfb0b..e3a005564d06 100644
--- a/nixpkgs/pkgs/development/compilers/vala/default.nix
+++ b/nixpkgs/pkgs/development/compilers/vala/default.nix
@@ -100,7 +100,7 @@ let
       homepage = "https://wiki.gnome.org/Projects/Vala";
       license = licenses.lgpl21Plus;
       platforms = platforms.unix;
-      maintainers = with maintainers; [ antono jtojnar peterhoeg ];
+      maintainers = with maintainers; [ antono jtojnar peterhoeg maxeaubrey ];
     };
   });
 
diff --git a/nixpkgs/pkgs/development/compilers/vyper/default.nix b/nixpkgs/pkgs/development/compilers/vyper/default.nix
index d0bfa5b0b962..74c2503523e8 100644
--- a/nixpkgs/pkgs/development/compilers/vyper/default.nix
+++ b/nixpkgs/pkgs/development/compilers/vyper/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi, writeText, asttokens
-, pycryptodome, pytest_xdist, pytestcov, recommonmark, semantic-version, sphinx
-, sphinx_rtd_theme, pytestrunner }:
+, pycryptodome, pytest-xdist, pytest-cov, recommonmark, semantic-version, sphinx
+, sphinx_rtd_theme, pytest-runner }:
 
 let
   sample-contract = writeText "example.vy" ''
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     sha256 = "e763561a161c35c03b92a0c176096dd9b4c78ab003c2f08324d443f459b3de84";
   };
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
 
   postPatch = ''
     substituteInPlace setup.py \
diff --git a/nixpkgs/pkgs/development/coq-modules/hierarchy-builder/default.nix b/nixpkgs/pkgs/development/coq-modules/hierarchy-builder/default.nix
index dabcc44261b5..491ff959eced 100644
--- a/nixpkgs/pkgs/development/coq-modules/hierarchy-builder/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/hierarchy-builder/default.nix
@@ -5,9 +5,10 @@ with lib; mkCoqDerivation {
   owner = "math-comp";
   inherit version;
   defaultVersion = with versions; switch coq.coq-version [
-    { case = isGe "8.12";         out = "1.0.0"; }
+    { case = isGe "8.12";         out = "1.1.0"; }
     { case = range "8.11" "8.12"; out = "0.10.0"; }
   ] null;
+  release."1.1.0".sha256  = "sha256-spno5ty4kU4WWiOfzoqbXF8lWlNSlySWcRReR3zE/4Q=";
   release."1.0.0".sha256  = "0yykygs0z6fby6vkiaiv3azy1i9yx4rqg8xdlgkwnf2284hffzpp";
   release."0.10.0".sha256 = "1a3vry9nzavrlrdlq3cys3f8kpq3bz447q8c4c7lh2qal61wb32h";
   releaseRev = v: "v${v}";
@@ -16,11 +17,14 @@ with lib; mkCoqDerivation {
 
   propagatedBuildInputs = [ coq-elpi ];
 
+  mlPlugin = true;
+
+  installFlags = [ "DESTDIR=$(out)" "COQMF_COQLIB=lib/coq/${coq.coq-version}" ];
   extraInstallFlags = [ "VFILES=structures.v" ];
 
   meta = {
-    description = "Coq plugin embedding ELPI.";
-    maintainers = [ maintainers.cohencyril ];
-    license = licenses.lgpl21;
+    description = "High level commands to declare a hierarchy based on packed classes";
+    maintainers = with maintainers; [ cohencyril siraben ];
+    license = licenses.mit;
   };
 }
diff --git a/nixpkgs/pkgs/development/coq-modules/math-classes/default.nix b/nixpkgs/pkgs/development/coq-modules/math-classes/default.nix
index c5bd1098c0b4..e61019b91c67 100644
--- a/nixpkgs/pkgs/development/coq-modules/math-classes/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/math-classes/default.nix
@@ -4,8 +4,10 @@ with lib; mkCoqDerivation {
 
   pname = "math-classes";
   inherit version;
-  defaultVersion = if versions.range "8.6" "8.12" coq.coq-version then "8.12.0" else null;
+  defaultVersion = if versions.range "8.11" "8.13" coq.coq-version then "8.13.0" else
+                   if versions.range "8.6"  "8.10" coq.coq-version then "8.12.0" else null;
   release."8.12.0".sha256 = "14nd6a08zncrl5yg2gzk0xf4iinwq4hxnsgm4fyv07ydbkxfb425";
+  release."8.13.0".sha256 = "1ln7ziivfbxzbdvlhbvyg3v30jgblncmwcsam6gg3d1zz6r7cbby";
 
   extraBuildInputs = [ bignums ];
 
diff --git a/nixpkgs/pkgs/development/coq-modules/mathcomp-analysis/default.nix b/nixpkgs/pkgs/development/coq-modules/mathcomp-analysis/default.nix
index 003727c608fc..b06f057f82e4 100644
--- a/nixpkgs/pkgs/development/coq-modules/mathcomp-analysis/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/mathcomp-analysis/default.nix
@@ -8,6 +8,7 @@ let mca = mkCoqDerivation {
   pname = "analysis";
   owner = "math-comp";
 
+  release."0.3.9".sha256 = "sha256-uUU9diBwUqBrNRLiDc0kz0CGkwTZCUmigPwLbpDOeg4=";
   release."0.3.6".sha256 = "0g2j7b2hca4byz62ssgg90bkbc8wwp7xkb2d3225bbvihi92b4c5";
   release."0.3.4".sha256 = "18mgycjgg829dbr7ps77z6lcj03h3dchjbj5iir0pybxby7gd45c";
   release."0.3.3".sha256 = "1m2mxcngj368vbdb8mlr91hsygl430spl7lgyn9qmn3jykack867";
@@ -16,7 +17,7 @@ let mca = mkCoqDerivation {
 
   inherit version;
   defaultVersion = with versions; switch [ coq.version mathcomp.version ]  [
-      { cases = [ (range "8.11" "8.13") "1.12.0" ];             out = "0.3.6"; }
+      { cases = [ (range "8.11" "8.13") "1.12.0" ];             out = "0.3.9"; }
       { cases = [ (range "8.11" "8.13") "1.11.0" ];             out = "0.3.4"; }
       { cases = [ (range "8.10" "8.12") "1.11.0" ];             out = "0.3.3"; }
       { cases = [ (range "8.10" "8.11") "1.11.0" ];             out = "0.3.1"; }
diff --git a/nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix b/nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix
index 6502890af2be..0af98bbfc07a 100644
--- a/nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix
+++ b/nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix
@@ -10,8 +10,7 @@
 }:
 
 let deps = import ./deps.nix { inherit fetchurl; };
-
-    version = "2020-10-08";
+    version = "2021-05-20";
 
     # Build the nuget source needed for the later build all by itself
     # since it's a time-consuming step that only depends on ./deps.nix.
@@ -49,8 +48,8 @@ stdenv.mkDerivation {
   src = fetchFromGitHub {
     owner = "microsoft";
     repo = "python-language-server";
-    rev = "76a29da373a4bb1e81b052f25802f3ca872d0a67";
-    sha256 = "16jb90lacdrhi4dpp084bqzx351mv23f4mhl4lz5h6rkfzj5jxgg";
+    rev = "86825796eae15d4d46919bc6e32f1197196ba1b3";
+    sha256 = "sha256-izDE7Oil9g47Jf3eHPtW5coNixF71t9i0oYSuelakCo=";
   };
 
   buildInputs = [dotnet-sdk_3 openssl icu];
diff --git a/nixpkgs/pkgs/development/guile-modules/guile-git/default.nix b/nixpkgs/pkgs/development/guile-modules/guile-git/default.nix
index 254afae0cc4f..0b3dfefcbe8c 100644
--- a/nixpkgs/pkgs/development/guile-modules/guile-git/default.nix
+++ b/nixpkgs/pkgs/development/guile-modules/guile-git/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "guile-git";
-  version = "0.5.1";
+  version = "0.5.2";
 
   src = fetchFromGitLab {
     owner = "guile-git";
     repo = pname;
     rev = "v${version}";
-    sha256 = "7Cnuyk9xAPTvz9R44O3lvKDrT6tUQui7YzxIoqhRfPQ=";
+    sha256 = "x6apF9fmwzrkyzAexKjClOTFrbE31+fVhSLyFZkKRYU=";
   };
 
   postConfigure = ''
diff --git a/nixpkgs/pkgs/development/haskell-modules/cabal2nix-unstable.nix b/nixpkgs/pkgs/development/haskell-modules/cabal2nix-unstable.nix
index 8b058b2dc057..6a769a47ef88 100644
--- a/nixpkgs/pkgs/development/haskell-modules/cabal2nix-unstable.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/cabal2nix-unstable.nix
@@ -8,10 +8,10 @@
 }:
 mkDerivation {
   pname = "cabal2nix";
-  version = "unstable-2021-06-12";
+  version = "unstable-2021-07-08";
   src = fetchzip {
-    url = "https://github.com/NixOS/cabal2nix/archive/01feffa0aeee835504e0c0ccf4bca2e33a698252.tar.gz";
-    sha256 = "0clckh0qqvjcb8szy1d6qqlxj6sqp28jc2p3vhzhkf95cv491si9";
+    url = "https://github.com/NixOS/cabal2nix/archive/b28902718d89f6a14a836d95a7093bc46e4f8bb5.tar.gz";
+    sha256 = "1jdbz0krwzzsl3vb10xgman642v49bbgwyl6dw3p9aw6s7a8nfgk";
   };
   isLibrary = true;
   isExecutable = true;
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-common.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-common.nix
index b6e5274be003..9594c0788c79 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-common.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-common.nix
@@ -64,7 +64,7 @@ self: super: {
       name = "git-annex-${super.git-annex.version}-src";
       url = "git://git-annex.branchable.com/";
       rev = "refs/tags/" + super.git-annex.version;
-      sha256 = "1hf2i36ayscdg7fa81akx031chg8c3scbjphj4c1qawif41bynmm";
+      sha256 = "0nvaaba06dgkl2kfq6ldmj0v6mm2dh7wfky6lsxxy5kskbncyqjr";
       # delete android and Android directories which cause issues on
       # darwin (case insensitive directory). Since we don't need them
       # during the build process, we can delete it to prevent a hash
@@ -1828,22 +1828,30 @@ EOT
 
   # 2021-05-09: compilation requires patches from master,
   # remove at next release (current is 0.1.0.4).
-  large-hashable = appendPatches super.large-hashable [
-    # Fix compilation of TH code for GHC >= 8.8
-    (pkgs.fetchpatch {
-      url = "https://github.com/factisresearch/large-hashable/commit/ee7afe4bd181cf15a324c7f4823f7a348e4a0e6b.patch";
-      sha256 = "1ha77v0bc6prxacxhpdfgcsgw8348gvhl9y81smigifgjbinphxv";
-      excludes = [
-        ".travis.yml"
-        "stack**"
-      ];
-    })
-    # Fix cpp invocation
-    (pkgs.fetchpatch {
-      url = "https://github.com/factisresearch/large-hashable/commit/7b7c2ed6ac6e096478e8ee00160fa9d220df853a.patch";
-      sha256 = "1sf9h3k8jbbgfshzrclaawlwx7k2frb09z2a64f93jhvk6ci6vgx";
-    })
-  ];
+  large-hashable = overrideCabal super.large-hashable (drv: {
+    # fix line endings which are an issue all of a sudden for an unknown reason
+    prePatch = ''
+      find . -type f -print0 | xargs -0 ${pkgs.buildPackages.dos2unix}/bin/dos2unix
+    '' + (drv.prePatch or "");
+    # allow newer template haskell
+    jailbreak = true;
+    patches = [
+      # Fix compilation of TH code for GHC >= 8.8
+      (pkgs.fetchpatch {
+        url = "https://github.com/factisresearch/large-hashable/commit/ee7afe4bd181cf15a324c7f4823f7a348e4a0e6b.patch";
+        sha256 = "1ha77v0bc6prxacxhpdfgcsgw8348gvhl9y81smigifgjbinphxv";
+        excludes = [
+          ".travis.yml"
+          "stack**"
+        ];
+      })
+      # Fix cpp invocation
+      (pkgs.fetchpatch {
+        url = "https://github.com/factisresearch/large-hashable/commit/7b7c2ed6ac6e096478e8ee00160fa9d220df853a.patch";
+        sha256 = "1sf9h3k8jbbgfshzrclaawlwx7k2frb09z2a64f93jhvk6ci6vgx";
+      })
+    ];
+  });
 
   # BSON defaults to requiring network instead of network-bsd which is
   # required nowadays: https://github.com/mongodb-haskell/bson/issues/26
@@ -1938,6 +1946,14 @@ EOT
 
   # Flakey tests
   # upstream https://github.com/circuithub/rel8/issues/86
-  rel8 = dontCheck super.rel8;
+  rel8 = dontCheck (super.rel8.override {
+    opaleye = dontCheck super.opaleye_0_7_2_0;
+  });
+
+  # Release 1.0.0.0 added version bounds (was unrestricted before),
+  # but with too strict lower bounds for our lts-18.
+  graphql = assert pkgs.lib.versionOlder self.parser-combinators.version "1.3.0";
+    assert pkgs.lib.versionOlder self.hspec.version "2.8.2";
+    doJailbreak super.graphql;
 
 } // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix
index 7731c73f0f64..20c64dbbccf9 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix
@@ -106,7 +106,7 @@ self: super: {
   retry = dontCheck super.retry;
 
   # hlint 3.3 needs a ghc-lib-parser newer than the one from stackage
-  hlint = super.hlint_3_3_0.overrideScope (self: super: {
+  hlint = super.hlint_3_3_1.overrideScope (self: super: {
     ghc-lib-parser = overrideCabal self.ghc-lib-parser_9_0_1_20210324 {
       doHaddock = false;
     };
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
index f21266e5004d..302c2722ee08 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
@@ -74,6 +74,7 @@ broken-packages:
   - aeson-filthy
   - aeson-flowtyped
   - aeson-match-qq
+  - aeson-modern-tojson
   - aeson-options
   - aeson-prefix
   - aeson-schema
@@ -90,6 +91,7 @@ broken-packages:
   - Agata
   - agda-language-server
   - agda-snippets
+  - agda-unused
   - AGI
   - ag-pictgen
   - AhoCorasick
@@ -261,6 +263,7 @@ broken-packages:
   - aws-route53
   - aws-sdk-text-converter
   - aws-simple
+  - aws-xray-client-persistent
   - axel
   - azubi
   - azure-acs
@@ -659,6 +662,7 @@ broken-packages:
   - clock-extras
   - clogparse
   - clone-all
+  - closed-intervals
   - closure
   - cloudfront-signer
   - clr-inline
@@ -1088,6 +1092,7 @@ broken-packages:
   - doctest-prop
   - docusign-example
   - docvim
+  - dominion
   - domplate
   - do-spaces
   - dotfs
@@ -1776,6 +1781,7 @@ broken-packages:
   - hakismet
   - hakka
   - hako
+  - hakyll-agda
   - hakyll-blaze-templates
   - hakyll-contrib
   - hakyll-contrib-csv
@@ -1904,6 +1910,7 @@ broken-packages:
   - haskell-src-match
   - haskell-src-meta-mwotton
   - haskell-stack-trace-plugin
+  - haskell-to-elm
   - HaskellTorrent
   - HaskellTutorials
   - haskell-type-exts
@@ -2202,6 +2209,7 @@ broken-packages:
   - Hricket
   - hs2bf
   - hs2ps
+  - hsakamai
   - hsaml2
   - hsay
   - hsbc
@@ -2379,6 +2387,7 @@ broken-packages:
   - hw-json-simd
   - hw-mquery
   - hworker
+  - hw-prim-bits
   - hw-simd
   - hwsl2
   - hx
@@ -2755,6 +2764,7 @@ broken-packages:
   - linear-maps
   - linear-opengl
   - linearscan
+  - linear-smc
   - linear-vect
   - line-drawing
   - lines-of-action
@@ -3104,6 +3114,7 @@ broken-packages:
   - MuCheck
   - mud
   - muesli
+  - mu-graphql
   - mulang
   - multext-east-msd
   - multiaddr
@@ -3183,6 +3194,7 @@ broken-packages:
   - nested-sequence
   - netclock
   - netease-fm
+  - net-mqtt-rpc
   - netrium
   - NetSNMP
   - netspec
@@ -3261,6 +3273,8 @@ broken-packages:
   - np-extras
   - np-linear
   - nptools
+  - nri-kafka
+  - nri-postgresql
   - ntp-control
   - ntrip-client
   - n-tuple
@@ -4503,6 +4517,7 @@ broken-packages:
   - streamdeck
   - streamed
   - stream-fusion
+  - streaming-benchmarks
   - streaming-conduit
   - streaming-events
   - streaming-lzma
@@ -4511,6 +4526,7 @@ broken-packages:
   - streaming-png
   - streaming-utils
   - streaming-with
+  - streamly-examples
   - streamly-fsnotify
   - stream-monad
   - streamproc
@@ -4529,6 +4545,7 @@ broken-packages:
   - stripe-http-streams
   - stripe-signature
   - stripe-tests
+  - strong-path
   - strongswan-sql
   - structural-traversal
   - structures
@@ -4743,6 +4760,7 @@ broken-packages:
   - thrift
   - Thrift
   - throttled-io-loop
+  - throwable-exceptions
   - th-sccs
   - th-tc
   - th-to-exp
@@ -4787,6 +4805,7 @@ broken-packages:
   - Titim
   - tkhs
   - tkyprof
+  - tmp-postgres
   - todo
   - tofromxml
   - to-haskell
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
index 45d0bdcd0cbb..c63942afe1af 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
@@ -115,6 +115,7 @@ extra-packages:
   - crackNum < 3.0                      # 2021-05-21: 3.0 removed the lib which sbv 7.13 uses
   - ShellCheck == 0.7.1                 # 2021-05-09: haskell-ci 0.12.1 pins this version
   - hackage-db < 2.1.1                  # 2021-06-10: Need older hackage-db as long as Cabal < 3.4, see https://github.com/NixOS/cabal2nix/issues/501
+  - opaleye < 0.7.3.0                   # 2021-07-11: for rel8 <= 1.0.0.1, see https://github.com/circuithub/rel8/issues/95#issuecomment-877616118
 
 package-maintainers:
   abbradar:
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
index 69f518322c2a..2098609cd696 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
@@ -1,4 +1,4 @@
-# Stackage LTS 18.0
+# Stackage LTS 18.1
 # This file is auto-generated by
 # maintainers/scripts/haskell/update-stackage.sh
 default-package-overrides:
@@ -33,7 +33,7 @@ default-package-overrides:
   - aeson-with ==0.1.2.0
   - aeson-yak ==0.1.1.3
   - aeson-yaml ==1.1.0.0
-  - Agda ==2.6.1.3
+  - Agda ==2.6.2
   - agda2lagda ==0.2021.6.1
   - al ==0.1.4.2
   - alarmclock ==0.7.0.5
@@ -202,8 +202,8 @@ default-package-overrides:
   - auto-update ==0.1.6
   - avro ==0.5.2.0
   - aws-cloudfront-signed-cookies ==0.2.0.8
-  - aws-xray-client ==0.1.0.0
-  - aws-xray-client-wai ==0.1.0.0
+  - aws-xray-client ==0.1.0.1
+  - aws-xray-client-wai ==0.1.0.1
   - backprop ==0.2.6.4
   - backtracking ==0.1.0
   - bank-holidays-england ==0.2.0.6
@@ -211,7 +211,7 @@ default-package-overrides:
   - base16 ==0.3.0.1
   - base16-bytestring ==1.0.1.0
   - base16-lens ==0.1.3.2
-  - base32 ==0.2.0.0
+  - base32 ==0.2.1.0
   - base32-lens ==0.1.1.1
   - base32string ==0.9.1
   - base58-bytestring ==0.1.0
@@ -233,7 +233,7 @@ default-package-overrides:
   - bcp47 ==0.2.0.4
   - bcp47-orphans ==0.1.0.4
   - bcrypt ==0.0.11
-  - bech32 ==1.1.0
+  - bech32 ==1.1.1
   - bech32-th ==1.0.2
   - bench ==1.0.12
   - benchpress ==0.2.2.17
@@ -304,7 +304,7 @@ default-package-overrides:
   - buffer-pipe ==0.0
   - bugsnag-haskell ==0.0.4.1
   - bugsnag-hs ==0.2.0.4
-  - bugzilla-redhat ==0.3.1
+  - bugzilla-redhat ==0.3.2
   - burrito ==1.2.0.2
   - butcher ==1.3.3.2
   - buttplug-hs-core ==0.1.0.0
@@ -420,13 +420,13 @@ default-package-overrides:
   - Color ==0.3.2
   - colorful-monoids ==0.2.1.3
   - colorize-haskell ==1.0.1
-  - colour ==2.3.5
+  - colour ==2.3.6
   - combinatorial ==0.1.0.1
   - comfort-array ==0.4.1
   - comfort-graph ==0.0.3.1
-  - commonmark ==0.2
+  - commonmark ==0.2.1
   - commonmark-extensions ==0.2.1.2
-  - commonmark-pandoc ==0.2.1
+  - commonmark-pandoc ==0.2.1.1
   - commutative ==0.0.2
   - comonad ==5.0.8
   - comonad-extras ==4.0.1
@@ -490,7 +490,7 @@ default-package-overrides:
   - crc32c ==0.0.0
   - credential-store ==0.1.2
   - criterion ==1.5.9.0
-  - criterion-measurement ==0.1.2.0
+  - criterion-measurement ==0.1.3.0
   - cron ==0.7.0
   - crypto-api ==0.13.3
   - crypto-cipher-types ==0.0.9
@@ -555,7 +555,7 @@ default-package-overrides:
   - data-hash ==0.2.0.1
   - data-interval ==2.1.0
   - data-inttrie ==0.1.4
-  - data-lens-light ==0.1.2.2
+  - data-lens-light ==0.1.2.3
   - data-memocombinators ==0.5.1
   - data-msgpack ==0.0.13
   - data-msgpack-types ==0.0.3
@@ -680,7 +680,7 @@ default-package-overrides:
   - elynx-seq ==0.5.1.1
   - elynx-tools ==0.5.1.1
   - elynx-tree ==0.5.1.1
-  - email-validate ==2.3.2.13
+  - email-validate ==2.3.2.15
   - emd ==0.2.0.0
   - emojis ==0.1
   - enclosed-exceptions ==1.0.3
@@ -703,7 +703,7 @@ default-package-overrides:
   - errors ==2.3.0
   - errors-ext ==0.4.2
   - ersatz ==0.4.9
-  - esqueleto ==3.5.0.0
+  - esqueleto ==3.5.2.0
   - essence-of-live-coding ==0.2.5
   - essence-of-live-coding-gloss ==0.2.5
   - essence-of-live-coding-pulse ==0.2.5
@@ -729,7 +729,7 @@ default-package-overrides:
   - expiring-cache-map ==0.0.6.1
   - explicit-exception ==0.1.10
   - exp-pairs ==0.2.1.0
-  - express ==0.1.14
+  - express ==0.1.16
   - extended-reals ==0.2.4.0
   - extensible-effects ==5.0.0.1
   - extensible-exceptions ==0.1.1.4
@@ -803,7 +803,7 @@ default-package-overrides:
   - forkable-monad ==0.2.0.3
   - forma ==1.1.3
   - format-numbers ==0.1.0.1
-  - formatting ==7.1.2
+  - formatting ==7.1.3
   - foundation ==0.0.26.1
   - fourmolu ==0.3.0.0
   - free ==5.1.7
@@ -850,8 +850,8 @@ default-package-overrides:
   - generics-eot ==0.4.0.1
   - generics-sop ==0.5.1.1
   - generics-sop-lens ==0.2.0.1
-  - geniplate-mirror ==0.7.7
-  - genvalidity ==0.11.0.0
+  - geniplate-mirror ==0.7.8
+  - genvalidity ==0.11.0.2
   - genvalidity-aeson ==0.3.0.0
   - genvalidity-bytestring ==0.6.0.0
   - genvalidity-containers ==0.9.0.0
@@ -898,11 +898,11 @@ default-package-overrides:
   - ghc-prof ==1.4.1.8
   - ghc-source-gen ==0.4.0.0
   - ghc-syntax-highlighter ==0.0.6.0
-  - ghc-tcplugins-extra ==0.4.1
-  - ghc-trace-events ==0.1.2.2
-  - ghc-typelits-extra ==0.4.2
-  - ghc-typelits-knownnat ==0.7.5
-  - ghc-typelits-natnormalise ==0.7.4
+  - ghc-tcplugins-extra ==0.4.2
+  - ghc-trace-events ==0.1.2.3
+  - ghc-typelits-extra ==0.4.3
+  - ghc-typelits-knownnat ==0.7.6
+  - ghc-typelits-natnormalise ==0.7.6
   - ghc-typelits-presburger ==0.6.0.0
   - ghost-buster ==0.1.1.0
   - gi-atk ==2.0.23
@@ -923,7 +923,7 @@ default-package-overrides:
   - ginger ==0.10.1.0
   - gingersnap ==0.3.1.0
   - gi-pango ==1.0.24
-  - githash ==0.1.6.0
+  - githash ==0.1.6.1
   - github-release ==1.3.7
   - github-rest ==1.0.3
   - github-types ==0.2.1
@@ -974,7 +974,7 @@ default-package-overrides:
   - hamtsolo ==1.0.3
   - HandsomeSoup ==0.4.2
   - hapistrano ==0.4.2.0
-  - happstack-server ==7.7.1
+  - happstack-server ==7.7.1.1
   - happy ==1.20.0
   - happy-meta ==0.2.0.11
   - HasBigDecimal ==0.1.1
@@ -1006,7 +1006,7 @@ default-package-overrides:
   - hasql-optparse-applicative ==0.3.0.6
   - hasql-pool ==0.5.2
   - hasql-queue ==1.2.0.2
-  - hasql-transaction ==1.0.0.2
+  - hasql-transaction ==1.0.1
   - hasty-hamiltonian ==1.3.4
   - HaTeX ==3.22.3.0
   - HaXml ==1.25.5
@@ -1015,7 +1015,7 @@ default-package-overrides:
   - hdaemonize ==0.5.6
   - HDBC ==2.4.0.3
   - HDBC-session ==0.1.2.0
-  - headroom ==0.4.1.0
+  - headroom ==0.4.2.0
   - heap ==1.0.4
   - heaps ==0.4
   - hebrew-time ==0.1.2
@@ -1025,7 +1025,7 @@ default-package-overrides:
   - hedgehog-fn ==1.0
   - hedgehog-quickcheck ==0.1.1
   - hedis ==0.14.4
-  - hedn ==0.3.0.2
+  - hedn ==0.3.0.3
   - here ==1.2.13
   - heredoc ==0.2.0.0
   - heterocephalus ==1.0.5.4
@@ -1163,7 +1163,7 @@ default-package-overrides:
   - http-media ==0.8.0.0
   - http-query ==0.1.0.1
   - http-reverse-proxy ==0.6.0
-  - http-streams ==0.8.7.2
+  - http-streams ==0.8.8.1
   - http-types ==0.12.3
   - human-readable-duration ==0.2.1.4
   - HUnit ==1.6.2.0
@@ -1212,7 +1212,7 @@ default-package-overrides:
   - hybrid-vectors ==0.2.2
   - hyper ==0.2.1.1
   - hyperloglog ==0.4.4
-  - hyphenation ==0.8.1
+  - hyphenation ==0.8.2
   - iconv ==0.4.1.3
   - identicon ==0.2.2
   - ieee754 ==0.8.0
@@ -1240,7 +1240,7 @@ default-package-overrides:
   - influxdb ==1.9.1.2
   - ini ==0.4.1
   - inj ==1.0
-  - inline-c ==0.9.1.4
+  - inline-c ==0.9.1.5
   - inline-c-cpp ==0.4.0.3
   - inline-r ==0.10.4
   - inliterate ==0.1.0
@@ -1394,7 +1394,7 @@ default-package-overrides:
   - lift-generics ==0.2
   - lift-type ==0.1.0.1
   - line ==4.0.1
-  - linear ==1.21.5
+  - linear ==1.21.6
   - linear-circuit ==0.1.0.2
   - linenoise ==0.3.2
   - linux-file-extents ==0.2.0.0
@@ -1606,7 +1606,7 @@ default-package-overrides:
   - netlib-comfort-array ==0.0.0.1
   - netlib-ffi ==0.1.1
   - net-mqtt ==0.7.1.1
-  - net-mqtt-lens ==0.1.0.0
+  - net-mqtt-lens ==0.1.1.0
   - netpbm ==1.0.4
   - nettle ==0.3.0
   - netwire ==5.0.3
@@ -1646,7 +1646,7 @@ default-package-overrides:
   - nowdoc ==0.1.1.0
   - nqe ==0.6.3
   - nri-env-parser ==0.1.0.7
-  - nri-observability ==0.1.0.3
+  - nri-observability ==0.1.1.1
   - nri-prelude ==0.6.0.2
   - nsis ==0.3.3
   - numbers ==3000.2.0.2
@@ -1673,7 +1673,7 @@ default-package-overrides:
   - OneTuple ==0.2.2.1
   - Only ==0.1
   - oo-prototypes ==0.1.0.0
-  - opaleye ==0.7.1.0
+  - opaleye ==0.7.3.0
   - OpenAL ==1.7.0.5
   - openapi3 ==3.1.0
   - open-browser ==0.2.1.0
@@ -1698,7 +1698,7 @@ default-package-overrides:
   - options ==1.2.1.1
   - optparse-applicative ==0.16.1.0
   - optparse-generic ==1.4.4
-  - optparse-simple ==0.1.1.3
+  - optparse-simple ==0.1.1.4
   - optparse-text ==0.1.1.0
   - ordered-containers ==0.2.2
   - ormolu ==0.1.4.1
@@ -1708,12 +1708,12 @@ default-package-overrides:
   - pager ==0.1.1.0
   - pagination ==0.2.2
   - pagure-cli ==0.2
-  - pandoc ==2.14.0.2
+  - pandoc ==2.14.0.3
   - pandoc-dhall-decoder ==0.1.0.1
   - pandoc-plot ==1.2.3
   - pandoc-throw ==0.1.0.0
   - pandoc-types ==1.22
-  - pantry ==0.5.2.2
+  - pantry ==0.5.2.3
   - parallel ==3.2.2.0
   - parameterized ==0.5.0.0
   - paripari ==0.7.0.0
@@ -1758,11 +1758,11 @@ default-package-overrides:
   - persist ==0.1.1.5
   - persistable-record ==0.6.0.5
   - persistable-types-HDBC-pg ==0.0.3.5
-  - persistent ==2.13.0.2
+  - persistent ==2.13.1.1
   - persistent-mtl ==0.2.2.0
   - persistent-mysql ==2.13.0.1
   - persistent-pagination ==0.1.1.2
-  - persistent-postgresql ==2.13.0.2
+  - persistent-postgresql ==2.13.0.3
   - persistent-qq ==2.12.0.1
   - persistent-sqlite ==2.13.0.3
   - persistent-template ==2.12.0.0
@@ -1770,7 +1770,7 @@ default-package-overrides:
   - persistent-typed-db ==0.1.0.4
   - pg-harness-client ==0.6.0
   - pgp-wordlist ==0.1.0.3
-  - pg-transact ==0.3.1.1
+  - pg-transact ==0.3.2.0
   - phantom-state ==0.2.1.2
   - pid1 ==0.1.2.0
   - pinboard ==0.10.2.0
@@ -2083,7 +2083,7 @@ default-package-overrides:
   - sequenceTools ==1.5.0
   - serf ==0.1.1.0
   - serialise ==0.2.3.0
-  - servant ==0.18.2
+  - servant ==0.18.3
   - servant-auth ==0.4.0.0
   - servant-auth-client ==0.4.1.0
   - servant-auth-docs ==0.2.10.0
@@ -2091,23 +2091,23 @@ default-package-overrides:
   - servant-auth-swagger ==0.2.10.1
   - servant-auth-wordpress ==1.0.0.2
   - servant-blaze ==0.9.1
-  - servant-client ==0.18.2
-  - servant-client-core ==0.18.2
+  - servant-client ==0.18.3
+  - servant-client-core ==0.18.3
   - servant-conduit ==0.15.1
-  - servant-docs ==0.11.8
+  - servant-docs ==0.11.9
   - servant-elm ==0.7.2
   - servant-errors ==0.1.6.0
   - servant-exceptions ==0.2.1
   - servant-exceptions-server ==0.2.1
-  - servant-foreign ==0.15.3
-  - servant-http-streams ==0.18.2
+  - servant-foreign ==0.15.4
+  - servant-http-streams ==0.18.3
   - servant-machines ==0.15.1
   - servant-multipart ==0.12.1
   - servant-multipart-api ==0.12.1
   - servant-openapi3 ==2.0.1.2
-  - servant-pipes ==0.15.2
+  - servant-pipes ==0.15.3
   - servant-rawm ==1.0.0.0
-  - servant-server ==0.18.2
+  - servant-server ==0.18.3
   - servant-swagger ==1.1.10
   - servant-swagger-ui ==0.3.5.3.47.1
   - servant-swagger-ui-core ==0.3.5
@@ -2118,9 +2118,9 @@ default-package-overrides:
   - set-cover ==0.1.1
   - setenv ==0.1.1.3
   - setlocale ==1.0.0.10
-  - sexp-grammar ==2.3.0
+  - sexp-grammar ==2.3.1
   - SHA ==1.6.4.4
-  - shake ==0.19.4
+  - shake ==0.19.5
   - shake-language-c ==0.12.0
   - shake-plus ==0.3.3.1
   - shake-plus-extended ==0.4.1.0
@@ -2143,7 +2143,7 @@ default-package-overrides:
   - simple-affine-space ==0.1.1
   - simple-cabal ==0.1.3
   - simple-cmd ==0.2.3
-  - simple-cmd-args ==0.1.6
+  - simple-cmd-args ==0.1.7
   - simple-log ==0.9.12
   - simple-reflect ==0.3.3
   - simple-sendfile ==0.2.30
@@ -2161,8 +2161,8 @@ default-package-overrides:
   - skein ==1.0.9.4
   - skews ==0.1.0.3
   - skip-var ==0.1.1.0
-  - skylighting ==0.10.5.1
-  - skylighting-core ==0.10.5.1
+  - skylighting ==0.10.5.2
+  - skylighting-core ==0.10.5.2
   - slack-api ==0.12
   - slack-progressbar ==0.1.0.1
   - slick ==1.1.1.0
@@ -2244,7 +2244,7 @@ default-package-overrides:
   - Stream ==0.4.7.2
   - streaming ==0.2.3.0
   - streaming-attoparsec ==1.0.0.1
-  - streaming-bytestring ==0.2.0
+  - streaming-bytestring ==0.2.1
   - streaming-commons ==0.2.2.1
   - streamly ==0.7.3
   - streams ==3.3
@@ -2264,7 +2264,7 @@ default-package-overrides:
   - string-random ==0.1.4.1
   - stringsearch ==0.3.6.6
   - string-transform ==1.1.1
-  - stripe-concepts ==1.0.2.8
+  - stripe-concepts ==1.0.3
   - stripe-core ==2.6.2
   - stripe-haskell ==2.6.2
   - stripe-http-client ==2.6.2
@@ -2329,7 +2329,7 @@ default-package-overrides:
   - tasty-program ==1.0.5
   - tasty-quickcheck ==0.10.1.2
   - tasty-rerun ==1.1.18
-  - tasty-silver ==3.2.1
+  - tasty-silver ==3.2.2
   - tasty-smallcheck ==0.8.2
   - tasty-test-reporter ==0.1.1.4
   - tasty-th ==0.1.7
@@ -2338,7 +2338,7 @@ default-package-overrides:
   - TCache ==0.12.1
   - tce-conf ==1.3
   - tdigest ==0.2.1.1
-  - template-haskell-compat-v0208 ==0.1.5
+  - template-haskell-compat-v0208 ==0.1.6
   - temporary ==1.3
   - temporary-rc ==1.2.0.3
   - temporary-resourcet ==0.1.0.1
@@ -2408,7 +2408,7 @@ default-package-overrides:
   - th-test-utils ==1.1.0
   - th-utilities ==0.2.4.3
   - thyme ==0.3.5.5
-  - tidal ==1.7.5
+  - tidal ==1.7.7
   - tile ==0.3.0.0
   - time-compat ==1.9.5
   - timeit ==2.0
@@ -2443,7 +2443,7 @@ default-package-overrides:
   - transformers-bifunctors ==0.1
   - transformers-compat ==0.6.6
   - transformers-fix ==1.0
-  - traverse-with-class ==1.0.1.0
+  - traverse-with-class ==1.0.1.1
   - tree-diff ==0.2
   - tree-fun ==0.8.1.0
   - tree-view ==0.5.1
@@ -2451,7 +2451,7 @@ default-package-overrides:
   - triplesec ==0.2.2.1
   - trivial-constraint ==0.7.0.0
   - tsv2csv ==0.1.0.2
-  - ttc ==1.1.0.0
+  - ttc ==1.1.0.1
   - ttl-hashtables ==1.4.1.0
   - ttrie ==0.1.2.1
   - tuple ==0.3.0.2
@@ -2502,7 +2502,7 @@ default-package-overrides:
   - unipatterns ==0.0.0.0
   - uniplate ==1.6.13
   - uniprot-kb ==0.1.2.0
-  - uniq-deep ==1.2.0
+  - uniq-deep ==1.2.1
   - unique ==0.0.1
   - unique-logic ==0.4
   - unique-logic-tf ==0.5.1
@@ -2527,7 +2527,7 @@ default-package-overrides:
   - unordered-containers ==0.2.14.0
   - unsafe ==0.0
   - urbit-hob ==0.3.3
-  - uri-bytestring ==0.3.3.0
+  - uri-bytestring ==0.3.3.1
   - uri-bytestring-aeson ==0.1.0.8
   - uri-encode ==1.5.0.7
   - url ==2.1.3
@@ -2541,7 +2541,7 @@ default-package-overrides:
   - uuid-types ==1.0.5
   - validation ==1.1.1
   - validation-selective ==0.1.0.1
-  - validity ==0.11.0.0
+  - validity ==0.11.0.1
   - validity-aeson ==0.2.0.4
   - validity-bytestring ==0.4.1.1
   - validity-containers ==0.5.0.4
@@ -2568,7 +2568,7 @@ default-package-overrides:
   - vector-instances ==3.4
   - vector-mmap ==0.0.3
   - vector-rotcev ==0.1.0.0
-  - vector-sized ==1.4.3.1
+  - vector-sized ==1.4.4
   - vector-space ==0.16
   - vector-split ==1.0.0.2
   - vector-th-unbox ==0.2.1.9
@@ -2604,7 +2604,7 @@ default-package-overrides:
   - wai-slack-middleware ==0.2.0
   - wai-websockets ==3.0.1.2
   - wakame ==0.1.0.0
-  - warp ==3.3.16
+  - warp ==3.3.17
   - warp-tls ==3.3.1
   - warp-tls-uid ==0.2.0.6
   - wave ==0.2.0
@@ -2658,7 +2658,7 @@ default-package-overrides:
   - xdg-basedir ==0.2.2
   - xdg-userdirs ==0.1.0.2
   - xeno ==0.4.2
-  - xlsx ==0.8.3
+  - xlsx ==0.8.4
   - xlsx-tabular ==0.2.2.1
   - xml ==1.3.14
   - xml-basic ==0.1.3.1
@@ -2681,12 +2681,12 @@ default-package-overrides:
   - xxhash-ffi ==0.2.0.0
   - yaml ==0.11.5.0
   - yamlparse-applicative ==0.2.0.0
-  - yesod ==1.6.1.1
+  - yesod ==1.6.1.2
   - yesod-auth ==1.6.10.3
   - yesod-auth-hashdb ==1.7.1.7
   - yesod-auth-oauth2 ==0.6.3.4
   - yesod-bin ==1.6.1
-  - yesod-core ==1.6.20.1
+  - yesod-core ==1.6.20.2
   - yesod-fb ==0.6.1
   - yesod-form ==1.7.0
   - yesod-gitrev ==0.2.1
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
index fdad31819ac5..e8e415695cf1 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
@@ -480,6 +480,7 @@ dont-distribute-packages:
  - avers-api
  - avers-api-docs
  - avers-server
+ - aviation-navigation
  - avro-piper
  - awesomium
  - awesomium-glut
@@ -564,6 +565,7 @@ dont-distribute-packages:
  - bip32
  - birch-beer
  - bird
+ - biscuit-servant
  - bit-array
  - bitcoin-address
  - bitcoin-api
@@ -807,7 +809,6 @@ dont-distribute-packages:
  - convertible-text
  - coordinate
  - copilot
- - copilot-c99
  - copilot-cbmc
  - copilot-language
  - copilot-libraries
@@ -1443,6 +1444,7 @@ dont-distribute-packages:
  - hasql-cursor-query
  - hasql-postgres
  - hasql-postgres-options
+ - hasql-queue
  - hasql-th
  - hastache-aeson
  - haste-app
@@ -1832,6 +1834,11 @@ dont-distribute-packages:
  - keera-hails-reactive-yampa
  - keera-hails-reactivelenses
  - keera-posture
+ - keid-core
+ - keid-geometry
+ - keid-render-basic
+ - keid-resource-gltf
+ - keid-ui-dearimgui
  - kevin
  - keysafe
  - keyvaluehash
@@ -2333,6 +2340,7 @@ dont-distribute-packages:
  - polysemy-fs
  - polysemy-fskvstore
  - polysemy-http
+ - polysemy-keyed-state
  - polysemy-kvstore-jsonfile
  - polysemy-log
  - polysemy-log-co
@@ -2344,6 +2352,7 @@ dont-distribute-packages:
  - polysemy-path
  - polysemy-plugin
  - polysemy-readline
+ - polysemy-req
  - polysemy-resume
  - polysemy-test
  - polysemy-time
@@ -2884,6 +2893,7 @@ dont-distribute-packages:
  - swearjure
  - sweet-egison
  - switch
+ - sydtest-persistent-postgresql
  - sylvia
  - sym-plot
  - symantic-atom
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix
index facd3ec5a3d8..ef0bd0656ffd 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix
@@ -914,4 +914,9 @@ self: super: builtins.intersectAttrs super {
 
   cachix = generateOptparseApplicativeCompletion "cachix" super.cachix;
 
+  # Enable extra optimisations which increase build time, but also
+  # later compiler performance, so we should do this for user's benefit.
+  # Flag added in Agda 2.6.2
+  Agda = appendConfigureFlag super.Agda "-foptimise-heavily";
+
 }
diff --git a/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix b/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix
index 4e8e61c05b08..c895053704be 100644
--- a/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix
@@ -784,40 +784,6 @@ self: {
 
   "Agda" = callPackage
     ({ mkDerivation, aeson, alex, array, async, base, binary
-     , blaze-html, boxes, bytestring, Cabal, containers, data-hash
-     , deepseq, directory, edit-distance, emacs, equivalence, exceptions
-     , filepath, geniplate-mirror, ghc-compact, gitrev, happy, hashable
-     , hashtables, haskeline, ieee754, mtl, murmur-hash, pretty, process
-     , regex-tdfa, split, stm, strict, template-haskell, text, time
-     , transformers, unordered-containers, uri-encode, zlib
-     }:
-     mkDerivation {
-       pname = "Agda";
-       version = "2.6.1.3";
-       sha256 = "1rx1r21kpgz27g2qn6fqgdpkl5b07c2fl86j3clylpp9rr0ch6xv";
-       isLibrary = true;
-       isExecutable = true;
-       enableSeparateDataOutput = true;
-       setupHaskellDepends = [ base Cabal directory filepath process ];
-       libraryHaskellDepends = [
-         aeson array async base binary blaze-html boxes bytestring
-         containers data-hash deepseq directory edit-distance equivalence
-         exceptions filepath geniplate-mirror ghc-compact gitrev hashable
-         hashtables haskeline ieee754 mtl murmur-hash pretty process
-         regex-tdfa split stm strict template-haskell text time transformers
-         unordered-containers uri-encode zlib
-       ];
-       libraryToolDepends = [ alex happy ];
-       executableHaskellDepends = [ base directory filepath process ];
-       executableToolDepends = [ emacs ];
-       description = "A dependently typed functional programming language and proof assistant";
-       license = "unknown";
-       hydraPlatforms = lib.platforms.none;
-       maintainers = with lib.maintainers; [ abbradar turion ];
-     }) {inherit (pkgs) emacs;};
-
-  "Agda_2_6_2" = callPackage
-    ({ mkDerivation, aeson, alex, array, async, base, binary
      , blaze-html, boxes, bytestring, Cabal, case-insensitive
      , containers, data-hash, deepseq, directory, edit-distance, emacs
      , equivalence, exceptions, filepath, ghc-compact, gitrev, happy
@@ -8824,8 +8790,8 @@ self: {
      }:
      mkDerivation {
        pname = "HMock";
-       version = "0.2.0.0";
-       sha256 = "1i5b9fxb5fii3ib97dncr5pfsylj5bsppi45qx7wq1idmz0fq3rj";
+       version = "0.3.0.0";
+       sha256 = "0rvb3a0nbf8i0qfg7na5rvd966amids07l8w8ka6b7hdw46lkczn";
        libraryHaskellDepends = [
          base constraints containers data-default exceptions extra
          monad-control mono-traversable mtl regex-tdfa stm syb
@@ -11889,8 +11855,8 @@ self: {
     ({ mkDerivation, base, containers, mtl }:
      mkDerivation {
        pname = "Kawaii-Parser";
-       version = "0.0.0";
-       sha256 = "163rh1vciljl35wc5wrcr1ky2vb536pv6hhnl3r97mfjc9c9k2wm";
+       version = "1.0.1";
+       sha256 = "032kglqc4pfhig7wqqsps0g490ajp1yffl4h4lr3qs98vi7vl4x6";
        libraryHaskellDepends = [ base containers mtl ];
        description = "A simple parsing library";
        license = lib.licenses.bsd3;
@@ -20434,6 +20400,8 @@ self: {
        pname = "Unixutils";
        version = "1.54.2";
        sha256 = "040wj8mr2k7spwns3vnadcgynqq4h7zy3lf62lvx7gasjmaj5m4w";
+       revision = "1";
+       editedCabalFile = "1rhr1isy8vq8ys29p4hcjh889dpfandqm2q5zcxyw4szl068jqc0";
        libraryHaskellDepends = [
          base bytestring directory exceptions filepath mtl process
          process-extras pureMD5 regex-tdfa unix zlib
@@ -20759,8 +20727,8 @@ self: {
     ({ mkDerivation, base, bytestring, transformers, vector, vulkan }:
      mkDerivation {
        pname = "VulkanMemoryAllocator";
-       version = "0.6";
-       sha256 = "15hmvswhwy7g0i5ybsjby8x4dwyg0j381rh425kjzv9qbjp4dw2r";
+       version = "0.6.0.1";
+       sha256 = "082i8jhx9s977j8dgn6v92h9nzkblcyw820jk87bg14w4lcgi91v";
        libraryHaskellDepends = [
          base bytestring transformers vector vulkan
        ];
@@ -21121,12 +21089,12 @@ self: {
        platforms = lib.platforms.none;
      }) {};
 
-  "Win32_2_12_0_0" = callPackage
+  "Win32_2_12_0_1" = callPackage
     ({ mkDerivation }:
      mkDerivation {
        pname = "Win32";
-       version = "2.12.0.0";
-       sha256 = "068k26s1vxwz94w7bkqs9xbkh0z2mp1mimyklarr8rh26v978qin";
+       version = "2.12.0.1";
+       sha256 = "1nivdwjp9x9i64xg8gf3xj8khm9dfq6n5m8kvvlhz7i7ypl4mv72";
        description = "A binding to Windows Win32 API";
        license = lib.licenses.bsd3;
        platforms = lib.platforms.none;
@@ -21923,8 +21891,8 @@ self: {
      }:
      mkDerivation {
        pname = "Z-Data";
-       version = "0.8.8.0";
-       sha256 = "01x0z7fv0nyyisc9ras79nwbys4g9d13kxwnvgdi8m9p6jvcgy8s";
+       version = "0.9.0.0";
+       sha256 = "1i5xa299vkvvs4j9mxzyfbw3wgcraihyk9x6wxk0plgj385zl3hr";
        setupHaskellDepends = [ base Cabal ];
        libraryHaskellDepends = [
          base bytestring case-insensitive containers deepseq ghc-prim
@@ -24834,6 +24802,20 @@ self: {
        broken = true;
      }) {};
 
+  "aeson-modern-tojson" = callPackage
+    ({ mkDerivation, aeson, base, inspection-testing }:
+     mkDerivation {
+       pname = "aeson-modern-tojson";
+       version = "0.1.0.0";
+       sha256 = "066yrs4r0ymsf62y1fjaim5l5dddgk7x1ng9m76j36zc8n0xwiqy";
+       libraryHaskellDepends = [ aeson base ];
+       testHaskellDepends = [ aeson base inspection-testing ];
+       description = "Provide a handy way for derving ToJSON proprely";
+       license = lib.licenses.isc;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "aeson-native" = callPackage
     ({ mkDerivation, attoparsec, base, blaze-builder
      , blaze-textual-native, bytestring, containers, deepseq, hashable
@@ -25527,6 +25509,8 @@ self: {
        testHaskellDepends = [ base containers filepath hspec text ];
        description = "Check for unused code in an Agda project";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "agda2lagda" = callPackage
@@ -35982,6 +35966,25 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "aviation-navigation" = callPackage
+    ({ mkDerivation, base, lens, mtl, optparse-applicative, radian }:
+     mkDerivation {
+       pname = "aviation-navigation";
+       version = "0.1.0.0";
+       sha256 = "17nb2ryrxdy3sv68cnbv7saw5k9wh9nyas74bpsyn0p8grw71sd5";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base lens mtl optparse-applicative radian
+       ];
+       executableHaskellDepends = [
+         base lens mtl optparse-applicative radian
+       ];
+       description = "Aviation Navigation functions";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "aviation-units" = callPackage
     ({ mkDerivation, base, lens }:
      mkDerivation {
@@ -36267,6 +36270,8 @@ self: {
        pname = "aws-arn";
        version = "0.1.0.0";
        sha256 = "0wwmrpmcw01wifcpfsb81fx54c49zgg80h2y11cjpr7qkwdhiqwd";
+       revision = "1";
+       editedCabalFile = "0jcz4wwi46mxymv7d15h5qj2xq8v9b02jqa4ap5r3fa9q6bl9sh3";
        libraryHaskellDepends = [
          base deriving-compat hashable lens text
        ];
@@ -36647,8 +36652,8 @@ self: {
      }:
      mkDerivation {
        pname = "aws-lambda-haskell-runtime-wai";
-       version = "2.0.1";
-       sha256 = "13h0cxmxzr7bgma1ry1yj9dhqzqvh5sgzv6nqyvb0xy8n3gysbcn";
+       version = "2.0.2";
+       sha256 = "0r309kyc9a38zdldhcdzc7b8h5sjckszzs5y3pygqrbf12xg5n21";
        libraryHaskellDepends = [
          aeson aws-lambda-haskell-runtime base binary bytestring
          case-insensitive http-types iproute network text
@@ -36938,8 +36943,8 @@ self: {
      }:
      mkDerivation {
        pname = "aws-xray-client";
-       version = "0.1.0.0";
-       sha256 = "0rb46hz2y9mz0prgyb5m2v31j05cx18j6yl01pawhrb6v8pb7z00";
+       version = "0.1.0.1";
+       sha256 = "1b179i32aw3xi72vnxmgvgczq14ay159cji9mmk345shdiac6crj";
        libraryHaskellDepends = [
          aeson base bytestring deepseq http-types lens network random text
          time
@@ -36959,14 +36964,16 @@ self: {
      }:
      mkDerivation {
        pname = "aws-xray-client-persistent";
-       version = "0.1.0.1";
-       sha256 = "1b45g9gswr2c16xphprqkrpyh2q29kgnr10hm29zjw5pcahgc8mg";
+       version = "0.1.0.2";
+       sha256 = "0c2x2bwrddzg1if4fiznmyl62priwr3m626vm0lqndmgjxv13snd";
        libraryHaskellDepends = [
          aws-xray-client base conduit containers lens persistent random
          resourcet text time
        ];
        description = "A client for AWS X-Ray integration with Persistent";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "aws-xray-client-wai" = callPackage
@@ -36976,8 +36983,8 @@ self: {
      }:
      mkDerivation {
        pname = "aws-xray-client-wai";
-       version = "0.1.0.0";
-       sha256 = "1vrgx2l3f08bd73z0an15zh3fla0d5sxqvwbsk1jxkrjfy2c43rd";
+       version = "0.1.0.1";
+       sha256 = "0b2rnls3qk7qzn9swfqmslxrw466gs6lhh7zi677k5b0dzh237vp";
        libraryHaskellDepends = [
          aws-xray-client base bytestring containers http-types lens random
          text time unliftio unliftio-core vault wai
@@ -38202,31 +38209,6 @@ self: {
      }:
      mkDerivation {
        pname = "base32";
-       version = "0.2.0.0";
-       sha256 = "0xvilxcdcvz07f3qpad35whjd35c9ykicip2cdsd54ysxg71mwzm";
-       revision = "2";
-       editedCabalFile = "0chbgkq65mh6nc48a3hywcv7idfqgb3acv4b7gmz8m6szqq4mx95";
-       libraryHaskellDepends = [
-         base bytestring deepseq ghc-byteorder text text-short
-       ];
-       testHaskellDepends = [
-         base bytestring memory QuickCheck random-bytestring tasty
-         tasty-hunit tasty-quickcheck text text-short
-       ];
-       benchmarkHaskellDepends = [
-         base bytestring criterion deepseq memory random-bytestring text
-       ];
-       description = "Fast RFC 4648-compliant Base32 encoding";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "base32_0_2_1_0" = callPackage
-    ({ mkDerivation, base, bytestring, criterion, deepseq
-     , ghc-byteorder, memory, QuickCheck, random-bytestring, tasty
-     , tasty-hunit, tasty-quickcheck, text, text-short
-     }:
-     mkDerivation {
-       pname = "base32";
        version = "0.2.1.0";
        sha256 = "1c1qzbri6m8b2m1cr68vrjbny6wlvfyrbfyzd61s83a3y3w39plp";
        revision = "1";
@@ -38243,7 +38225,6 @@ self: {
        ];
        description = "Fast RFC 4648-compliant Base32 encoding";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "base32-bytestring" = callPackage
@@ -39267,8 +39248,8 @@ self: {
      }:
      mkDerivation {
        pname = "beam-core";
-       version = "0.9.0.0";
-       sha256 = "0ixaxjmgg162ff7srvwmkv5lp1kfb0b6wmrpaz97rsmlpa5vf6ji";
+       version = "0.9.1.0";
+       sha256 = "1rw3db9qmf08wi5gcd0cbsz5cpndf8cwkbzkh74gbwwpcpa7lg39";
        libraryHaskellDepends = [
          aeson base bytestring containers dlist free ghc-prim hashable
          microlens mtl network-uri scientific tagged text time vector
@@ -39291,8 +39272,8 @@ self: {
      }:
      mkDerivation {
        pname = "beam-migrate";
-       version = "0.5.0.0";
-       sha256 = "0xrmb5nmn5ffzgcpsjilagz5ppm283kfjvvbnsvpvnh6p6i0xc99";
+       version = "0.5.1.0";
+       sha256 = "0wvbs7lda7pxsrymm2dv2km1w3snd8mjwijagn06ylrc2pjn6sjz";
        libraryHaskellDepends = [
          aeson base beam-core bytestring containers deepseq dependent-map
          dependent-sum free ghc-prim hashable haskell-src-exts microlens mtl
@@ -39344,17 +39325,18 @@ self: {
      , haskell-src-exts, hedgehog, lifted-base, monad-control, mtl
      , network-uri, postgresql-libpq, postgresql-simple, scientific
      , tagged, tasty, tasty-hunit, text, time, tmp-postgres
-     , unordered-containers, uuid, uuid-types, vector
+     , transformers-base, unordered-containers, uuid, uuid-types, vector
      }:
      mkDerivation {
        pname = "beam-postgres";
-       version = "0.5.0.0";
-       sha256 = "03dd9qzw3b2rqva2pn4iaq5lswn8gb7lrlsa6nmc0bfn1w9i4a7k";
+       version = "0.5.1.0";
+       sha256 = "17npmh5agnxy12n93hrpi83al80csmvigbm3mlsvx92l4mcif2ml";
        libraryHaskellDepends = [
          aeson attoparsec base beam-core beam-migrate bytestring
          case-insensitive conduit free hashable haskell-src-exts lifted-base
          monad-control mtl network-uri postgresql-libpq postgresql-simple
-         scientific tagged text time unordered-containers uuid-types vector
+         scientific tagged text time transformers-base unordered-containers
+         uuid-types vector
        ];
        testHaskellDepends = [
          aeson base beam-core beam-migrate bytestring hedgehog
@@ -39367,17 +39349,19 @@ self: {
 
   "beam-sqlite" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, beam-core, beam-migrate
-     , bytestring, dlist, free, hashable, mtl, network-uri, scientific
-     , sqlite-simple, tasty, tasty-expected-failure, tasty-hunit, text
-     , time, unix
+     , bytestring, dlist, free, hashable, monad-control, mtl
+     , network-uri, scientific, sqlite-simple, tasty
+     , tasty-expected-failure, tasty-hunit, text, time
+     , transformers-base, unix
      }:
      mkDerivation {
        pname = "beam-sqlite";
-       version = "0.5.0.0";
-       sha256 = "1ng67jspdwp4prfzp9lzhl1g26q9bfpmxpwv0q392y8wwrq6zxrj";
+       version = "0.5.1.0";
+       sha256 = "1vfrma27rchq3p4h0p21m3lhz46yxyagbrb39r9jb8w20whja2gr";
        libraryHaskellDepends = [
          aeson attoparsec base beam-core beam-migrate bytestring dlist free
-         hashable mtl network-uri scientific sqlite-simple text time unix
+         hashable monad-control mtl network-uri scientific sqlite-simple
+         text time transformers-base unix
        ];
        testHaskellDepends = [
          base beam-core beam-migrate sqlite-simple tasty
@@ -39472,35 +39456,6 @@ self: {
      }:
      mkDerivation {
        pname = "bech32";
-       version = "1.1.0";
-       sha256 = "0s7kqy128k71rnpv22awf643djhsyd8ipihx38lvslsxk8klr8i0";
-       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_1_1_1" = 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.1";
        sha256 = "0ibdibki3f51wpxby3cl6p0xzd32ddczlg2dcqxy7lgx7j3h9xgn";
        isLibrary = true;
@@ -42346,8 +42301,8 @@ self: {
      }:
      mkDerivation {
        pname = "biscuit-haskell";
-       version = "0.1.0.0";
-       sha256 = "0h37sl493ribsvqw98xy4g9vii3xc3ap6vvjffn7xg29b62s0lrx";
+       version = "0.1.1.0";
+       sha256 = "1sq2icbxk6wg4fpsdy0id08qz6nsi175gw0akimppl36b1bmn3sv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -42374,6 +42329,27 @@ self: {
        broken = true;
      }) {};
 
+  "biscuit-servant" = callPackage
+    ({ mkDerivation, base, biscuit-haskell, bytestring, hspec
+     , http-client, mtl, servant, servant-client, servant-client-core
+     , servant-server, text, wai, warp
+     }:
+     mkDerivation {
+       pname = "biscuit-servant";
+       version = "0.1.1.0";
+       sha256 = "1rkqmn037d7xc0i5w1rik4d2agb6r77fg3c6207i0pgasbb17zsv";
+       libraryHaskellDepends = [
+         base biscuit-haskell bytestring mtl servant-server text wai
+       ];
+       testHaskellDepends = [
+         base biscuit-haskell bytestring hspec http-client servant
+         servant-client servant-client-core servant-server text warp
+       ];
+       description = "Servant support for the Biscuit security token";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "bisect-binary" = callPackage
     ({ mkDerivation, base, bytestring, directory, filepath, hashable
      , haskeline, integer-logarithms, optparse-applicative, process
@@ -42768,23 +42744,21 @@ self: {
      }) {};
 
   "bitcoin-scripting" = callPackage
-    ({ mkDerivation, attoparsec, base, base16-bytestring, bytestring
-     , cereal, containers, haskoin-core, tasty, tasty-hunit
-     , tasty-quickcheck, text, transformers
+    ({ mkDerivation, attoparsec, base, bytestring, cereal, containers
+     , haskoin-core, tasty, tasty-hunit, tasty-quickcheck, text
+     , transformers
      }:
      mkDerivation {
        pname = "bitcoin-scripting";
-       version = "0.1.0";
-       sha256 = "1hd45rr4mq7dizdw7d1wkypr15azaaqc4fy6rkr9gim93jzc8707";
-       revision = "1";
-       editedCabalFile = "002i80rqigg3avydg9xhsa8ppyjw6a0r39hbimdghmv8db4wnpbl";
+       version = "0.2.0";
+       sha256 = "00ml3vnfigymzn8qqzl241q1k0zc4gn9p5zv1339jqv5fz0dvg1b";
        libraryHaskellDepends = [
-         attoparsec base base16-bytestring bytestring cereal containers
-         haskoin-core text transformers
+         attoparsec base bytestring cereal containers haskoin-core text
+         transformers
        ];
        testHaskellDepends = [
-         base base16-bytestring bytestring cereal haskoin-core tasty
-         tasty-hunit tasty-quickcheck text
+         base bytestring cereal haskoin-core tasty tasty-hunit
+         tasty-quickcheck text
        ];
        description = "Resources for working with miniscript, and script descriptors";
        license = lib.licenses.bsd3;
@@ -46686,26 +46660,6 @@ self: {
 
   "bugzilla-redhat" = callPackage
     ({ mkDerivation, aeson, base, blaze-builder, bytestring, connection
-     , containers, http-conduit, http-types, iso8601-time, resourcet
-     , text, time, transformers, unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "bugzilla-redhat";
-       version = "0.3.1";
-       sha256 = "088ya35lwxnvg0x996agy2ky8kp4r3j2i1ja15fy3afcqfpvbqiv";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson base blaze-builder bytestring connection containers
-         http-conduit http-types iso8601-time resourcet text time
-         transformers unordered-containers vector
-       ];
-       description = "A Haskell interface to the Bugzilla native REST API";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "bugzilla-redhat_0_3_2" = callPackage
-    ({ mkDerivation, aeson, base, blaze-builder, bytestring, connection
      , containers, hspec, http-conduit, http-types, iso8601-time
      , resourcet, text, time, transformers, unordered-containers, vector
      }:
@@ -46723,7 +46677,6 @@ self: {
        testHaskellDepends = [ aeson base hspec time ];
        description = "A Haskell interface to the Bugzilla native REST API";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "build" = callPackage
@@ -50477,8 +50430,8 @@ self: {
      }:
      mkDerivation {
        pname = "camfort";
-       version = "1.0.1";
-       sha256 = "1jwlkrf4aja71sbxxlxsd7syh6sb4vgv2pb18mvj5ppm6al2ykp3";
+       version = "1.1.0";
+       sha256 = "0y6ds8lhhs0r4ns35y6zrph3bjkq9kdx4zp7kb8knsn0cpd3haz1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -53960,39 +53913,40 @@ self: {
   "chessIO" = callPackage
     ({ mkDerivation, attoparsec, base, binary, brick, bytestring
      , containers, deepseq, directory, extra, file-embed, filepath
-     , hashable, haskeline, lens, megaparsec, MonadRandom
+     , hashable, haskeline, HUnit, lens, megaparsec, MonadRandom
      , mono-traversable, mtl, o-clock, optparse-applicative, parallel
      , prettyprinter, process, random, rosezipper, stm, template-haskell
-     , text, th-lift-instances, time, unordered-containers, vector
-     , vector-binary-instances, vector-instances, vty
+     , text, th-compat, th-lift-instances, time, unordered-containers
+     , vector, vector-binary-instances, vector-instances, vty
      }:
      mkDerivation {
        pname = "chessIO";
-       version = "0.7.0.0";
-       sha256 = "1jb1c702c58g0pkk43g1mp7clm0wbkq993j880v3p7cxbyj5n9bh";
+       version = "0.8.0.0";
+       sha256 = "16xgq8xvfvk6rsjzaimd29b867ffml2h9nldsy5d5sninbmbq0k8";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          attoparsec base binary bytestring containers deepseq extra
          file-embed hashable lens megaparsec MonadRandom mono-traversable
          o-clock prettyprinter process random stm template-haskell text
-         th-lift-instances unordered-containers vector
+         th-compat th-lift-instances unordered-containers vector
          vector-binary-instances vector-instances
        ];
        executableHaskellDepends = [
          attoparsec base binary brick bytestring containers deepseq extra
          file-embed filepath hashable haskeline lens megaparsec MonadRandom
          mono-traversable mtl o-clock optparse-applicative prettyprinter
-         process random rosezipper stm template-haskell text
+         process random rosezipper stm template-haskell text th-compat
          th-lift-instances time unordered-containers vector
          vector-binary-instances vector-instances vty
        ];
        testHaskellDepends = [
          attoparsec base binary bytestring containers deepseq directory
-         extra file-embed hashable lens megaparsec MonadRandom
+         extra file-embed hashable HUnit lens megaparsec MonadRandom
          mono-traversable o-clock parallel prettyprinter process random stm
-         template-haskell text th-lift-instances time unordered-containers
-         vector vector-binary-instances vector-instances
+         template-haskell text th-compat th-lift-instances time
+         unordered-containers vector vector-binary-instances
+         vector-instances
        ];
        description = "Basic chess library";
        license = lib.licenses.bsd3;
@@ -56740,8 +56694,8 @@ self: {
      }:
      mkDerivation {
        pname = "closed-intervals";
-       version = "0.1.0.1";
-       sha256 = "19vmiwwzv9g4nl1mzkqc7r9bw67n9y7kk3v0jc2vc8yjzrmqgy7v";
+       version = "0.1.1.0";
+       sha256 = "0wmxacb9msr7bip5pz9qwgvg9kgvpyylps6xhsg85blhd2bplmbi";
        libraryHaskellDepends = [ base containers time ];
        testHaskellDepends = [
          base containers doctest-exitcode-stdio doctest-lib QuickCheck time
@@ -56749,6 +56703,8 @@ self: {
        ];
        description = "Closed intervals of totally ordered types";
        license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "closure" = callPackage
@@ -58701,23 +58657,6 @@ self: {
      }:
      mkDerivation {
        pname = "colour";
-       version = "2.3.5";
-       sha256 = "1rq4l46jx4lpdppy71wf7m1n7pw2jwy788rm35ycwzb1g4clg39v";
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [ base ];
-       testHaskellDepends = [
-         base QuickCheck random test-framework test-framework-quickcheck2
-       ];
-       description = "A model for human colour/color perception";
-       license = lib.licenses.mit;
-     }) {};
-
-  "colour_2_3_6" = callPackage
-    ({ mkDerivation, base, QuickCheck, random, test-framework
-     , test-framework-quickcheck2
-     }:
-     mkDerivation {
-       pname = "colour";
        version = "2.3.6";
        sha256 = "0wgqj64mh2y2zk77kv59k3xb3dk4wmgfp988y74sp9a4d76mvlrc";
        enableSeparateDataOutput = true;
@@ -58727,7 +58666,6 @@ self: {
        ];
        description = "A model for human colour/color perception";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "colour-accelerate" = callPackage
@@ -59243,28 +59181,6 @@ self: {
      }:
      mkDerivation {
        pname = "commonmark";
-       version = "0.2";
-       sha256 = "083xrmyxsgn6ivrxqgmjbqvv4k64n7a330pbf1n7xbsjqh78cg28";
-       libraryHaskellDepends = [
-         base bytestring containers parsec text transformers
-         unicode-transforms
-       ];
-       testHaskellDepends = [
-         base parsec tasty tasty-hunit tasty-quickcheck text
-         unicode-transforms
-       ];
-       benchmarkHaskellDepends = [ base tasty-bench text ];
-       description = "Pure Haskell commonmark parser";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "commonmark_0_2_1" = callPackage
-    ({ mkDerivation, base, bytestring, containers, parsec, tasty
-     , tasty-bench, tasty-hunit, tasty-quickcheck, text, transformers
-     , unicode-transforms
-     }:
-     mkDerivation {
-       pname = "commonmark";
        version = "0.2.1";
        sha256 = "1vba7v1zaqh811v3j4x42g7mhwvxwgzm997kq1kzd0njby14fq5b";
        libraryHaskellDepends = [
@@ -59278,7 +59194,6 @@ self: {
        benchmarkHaskellDepends = [ base tasty-bench text ];
        description = "Pure Haskell commonmark parser";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "commonmark-cli" = callPackage
@@ -59330,8 +59245,8 @@ self: {
      }:
      mkDerivation {
        pname = "commonmark-pandoc";
-       version = "0.2.1";
-       sha256 = "0i5qavci8j63d15i2c6cbm0b53kcjh7s4vxadfgf4vkp2sy1ybvw";
+       version = "0.2.1.1";
+       sha256 = "15rfaz49msswb7gh5wyxpm9vckbf3wzyd2m5m2f3hggb82ydk5cp";
        libraryHaskellDepends = [
          base commonmark commonmark-extensions pandoc-types text
        ];
@@ -62922,12 +62837,12 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "containers_0_6_4_1" = callPackage
+  "containers_0_6_5_1" = callPackage
     ({ mkDerivation, array, base, deepseq }:
      mkDerivation {
        pname = "containers";
-       version = "0.6.4.1";
-       sha256 = "0vn43a7bf49pih9b65b359xf3658d96dpm9j35i8x8j61vlrcsid";
+       version = "0.6.5.1";
+       sha256 = "1zlyvkamzc87hr7r3ckyvgwhszdk9i18jrsv2cmkh9v093gvl7ni";
        libraryHaskellDepends = [ array base deepseq ];
        description = "Assorted concrete container types";
        license = lib.licenses.bsd3;
@@ -63872,8 +63787,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot";
-       version = "3.3";
-       sha256 = "166nin0861i2ak06gdhj6sv6zv7cc60wmqgv4mly9hjf0qp3w6j1";
+       version = "3.4";
+       sha256 = "1cl7w9z08rnzsig09q65i6j4644zj469isd1mjjiwp23yiqs5gfh";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -63886,26 +63801,20 @@ self: {
      }) {};
 
   "copilot-c99" = callPackage
-    ({ mkDerivation, base, containers, copilot-core, copilot-language
-     , csv, directory, filepath, hspec, language-c99
-     , language-c99-simple, language-c99-util, mtl, pretty, process
-     , QuickCheck
+    ({ mkDerivation, base, containers, copilot-core, directory
+     , filepath, language-c99, language-c99-simple, language-c99-util
+     , mtl, pretty
      }:
      mkDerivation {
        pname = "copilot-c99";
-       version = "3.3";
-       sha256 = "09qjfhf0dkccbi4kycwqavv7bxdpfj2j50vkljmzrxh59xq00jnz";
+       version = "3.4";
+       sha256 = "14ajk29p4da777r9klfqhcyi5qkrz16qn5f6h22kgw1vqj9vm4ja";
        libraryHaskellDepends = [
          base containers copilot-core directory filepath language-c99
          language-c99-simple language-c99-util mtl pretty
        ];
-       testHaskellDepends = [
-         base copilot-core copilot-language csv hspec language-c99
-         language-c99-simple pretty process QuickCheck
-       ];
        description = "A compiler for Copilot targeting C99";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "copilot-cbmc" = callPackage
@@ -63929,8 +63838,8 @@ self: {
     ({ mkDerivation, base, dlist, mtl, pretty }:
      mkDerivation {
        pname = "copilot-core";
-       version = "3.3";
-       sha256 = "19k206hsqd3lw2k40cjpjhnwfjsfraagw622bxn97rk4195jqhy6";
+       version = "3.4";
+       sha256 = "01bxajyxd9na6msjnh6klnhc71xryc7nxz96pylyqn39978by7p0";
        libraryHaskellDepends = [ base dlist mtl pretty ];
        description = "An intermediate representation for Copilot";
        license = lib.licenses.bsd3;
@@ -63942,8 +63851,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-language";
-       version = "3.3";
-       sha256 = "1x39jyn82j9mydsbi8n24a2nx8j00gcxw2rsxqagjpwqx10igyr2";
+       version = "3.4";
+       sha256 = "0i3ha9mpjizqalhnv2vvcgzs75r3ld7c4qhaknip3jw1d0j76fx6";
        libraryHaskellDepends = [
          array base containers copilot-core copilot-theorem data-reify
          ghc-prim mtl
@@ -63959,8 +63868,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-libraries";
-       version = "3.3";
-       sha256 = "0f8g67j26g1k5xph6zg5crypj0ys8mf0i5pazn04sy02lslsdmd9";
+       version = "3.4";
+       sha256 = "13ypvpqr0g3xrvdria35c83yxpk3727wm6n8jdsihq7ilkhl00mf";
        libraryHaskellDepends = [
          array base containers copilot-language data-reify mtl parsec
        ];
@@ -63994,8 +63903,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-theorem";
-       version = "3.3";
-       sha256 = "1js4j9alfnlxi6zsvcdj8zf2r04lm9rp22r6zq6qkhams6pmmxly";
+       version = "3.4";
+       sha256 = "1mrw6i4dwg8cx56821vcy0bnzyhxcch0k9byrkazg3jgplvalfbr";
        libraryHaskellDepends = [
          ansi-terminal base bimap bv-sized containers copilot-core
          data-default directory filepath libBF mtl panic parameterized-utils
@@ -65115,6 +65024,27 @@ self: {
        ];
      }) {};
 
+  "crackNum_3_2" = callPackage
+    ({ mkDerivation, base, directory, filepath, libBF, process, sbv
+     , tasty, tasty-golden
+     }:
+     mkDerivation {
+       pname = "crackNum";
+       version = "3.2";
+       sha256 = "1q9isxg65s9bsafqlcwpl82xypra4cxf935wxi5npbxi6dw5w13i";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base directory filepath libBF process sbv tasty tasty-golden
+       ];
+       description = "Crack various integer and floating-point data formats";
+       license = lib.licenses.bsd3;
+       platforms = [
+         "armv7l-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"
+       ];
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "craft" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, async, base
      , bytestring, conduit, conduit-combinators, conduit-extra
@@ -65628,8 +65558,8 @@ self: {
      }:
      mkDerivation {
        pname = "criterion-measurement";
-       version = "0.1.2.0";
-       sha256 = "03p71mfnnfjx9dnf0yhrhdcr30zc2nwn5f8lql48cabccpd3793l";
+       version = "0.1.3.0";
+       sha256 = "1ffmjcpmdx2sx0sr3g5n2s8dhrbmh7606zfnymv2v9h1rf36xf3x";
        libraryHaskellDepends = [
          aeson base base-compat binary containers deepseq vector
        ];
@@ -67013,23 +66943,24 @@ self: {
     ({ mkDerivation, array, attoparsec, base, blaze-builder, bytestring
      , conduit, conduit-extra, containers, data-default, directory
      , exceptions, ghc-prim, HUnit, mmorph, monad-control, mtl
-     , primitive, resourcet, semigroups, test-framework
-     , test-framework-hunit, text, transformers, unordered-containers
-     , vector
+     , ordered-containers, primitive, resourcet, semigroups
+     , test-framework, test-framework-hunit, text, transformers
+     , unordered-containers, vector
      }:
      mkDerivation {
        pname = "csv-conduit";
-       version = "0.7.2.0";
-       sha256 = "1bclavsan00mv0n0dy0ap6byk4w5fwnhpvxhdhx94r7bxfqi2r0q";
+       version = "0.7.3.0";
+       sha256 = "1xh11h4qibjcv8b0rk5mwdzww183kpjqzl3x22rbfryjvrp0n07w";
        libraryHaskellDepends = [
          array attoparsec base blaze-builder bytestring conduit
          conduit-extra containers data-default exceptions ghc-prim mmorph
-         monad-control mtl primitive resourcet semigroups text transformers
-         unordered-containers vector
+         monad-control mtl ordered-containers primitive resourcet semigroups
+         text transformers unordered-containers vector
        ];
        testHaskellDepends = [
-         base bytestring containers directory HUnit mtl primitive
-         test-framework test-framework-hunit text transformers vector
+         base bytestring conduit containers directory HUnit mtl
+         ordered-containers primitive test-framework test-framework-hunit
+         text transformers vector
        ];
        description = "A flexible, fast, conduit-based CSV parser library for Haskell";
        license = lib.licenses.bsd3;
@@ -67327,8 +67258,8 @@ self: {
      }:
      mkDerivation {
        pname = "cuda";
-       version = "0.10.2.0";
-       sha256 = "0fkjibnnxradhsbasx1mw0c088cfwypnk6a5002rxpzxid5qrp9l";
+       version = "0.11.0.0";
+       sha256 = "0j35p4i611jkxa3i59gvc7vgbkzx7ckri1fd1n0ryv8akn4gl9m8";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal directory filepath ];
@@ -68070,6 +68001,19 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "d10_0_3_0_1" = callPackage
+    ({ mkDerivation, base, hedgehog, template-haskell }:
+     mkDerivation {
+       pname = "d10";
+       version = "0.3.0.1";
+       sha256 = "0fw6hl0ikfxgqhns18f0h3hs2ihi2d09jpjvmgrzddf3d8lrrlnh";
+       libraryHaskellDepends = [ base template-haskell ];
+       testHaskellDepends = [ base hedgehog template-haskell ];
+       description = "Digits 0-9";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "d3d11binding" = callPackage
     ({ mkDerivation, base, c-storable-deriving, d3d11, D3DCompiler
      , d3dx11, d3dxof, dxgi, dxguid, vect, Win32
@@ -69755,23 +69699,11 @@ self: {
     ({ mkDerivation, base, mtl, template-haskell }:
      mkDerivation {
        pname = "data-lens-light";
-       version = "0.1.2.2";
-       sha256 = "0vmkvhl7zcsaxnx7d7b59cnrdnlnr9cfn910rpn34jny7fkydlvj";
-       libraryHaskellDepends = [ base mtl template-haskell ];
-       description = "Simple lenses, minimum dependencies";
-       license = lib.licenses.mit;
-     }) {};
-
-  "data-lens-light_0_1_2_3" = callPackage
-    ({ mkDerivation, base, mtl, template-haskell }:
-     mkDerivation {
-       pname = "data-lens-light";
        version = "0.1.2.3";
        sha256 = "1xczbmgin315qh9wpl6v2vvnp6hv1irfbfqs7pk034qcpx61fwdl";
        libraryHaskellDepends = [ base mtl template-haskell ];
        description = "Simple lenses, minimum dependencies";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "data-lens-template" = callPackage
@@ -71670,6 +71602,30 @@ self: {
        broken = true;
      }) {};
 
+  "dear-imgui" = callPackage
+    ({ mkDerivation, base, containers, directory, filepath, glew
+     , inline-c, inline-c-cpp, managed, megaparsec, parser-combinators
+     , scientific, SDL2, sdl2, StateVar, template-haskell, text, th-lift
+     , transformers, unliftio, unordered-containers
+     }:
+     mkDerivation {
+       pname = "dear-imgui";
+       version = "1.0.1";
+       sha256 = "06w88awpcgjdj7d0alikswcqg76gn7pv8njn7dvb4w8dxllypib2";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers directory filepath inline-c inline-c-cpp managed
+         megaparsec parser-combinators scientific sdl2 StateVar
+         template-haskell text th-lift transformers unliftio
+         unordered-containers
+       ];
+       libraryPkgconfigDepends = [ glew SDL2 ];
+       doHaddock = false;
+       description = "Haskell bindings for Dear ImGui";
+       license = lib.licenses.bsd3;
+     }) {inherit (pkgs) SDL2; inherit (pkgs) glew;};
+
   "debian" = callPackage
     ({ mkDerivation, base, bytestring, bz2, Cabal, containers
      , directory, either, exceptions, filepath, hostname, HUnit, lens
@@ -74831,6 +74787,8 @@ self: {
        pname = "diagrams-pgf";
        version = "1.4.1.1";
        sha256 = "10glg5pqy8zw6l77wnskcawl8da0c10sqfg9dx2jydksd3xpns2f";
+       revision = "1";
+       editedCabalFile = "00hs5jk49g734majid3sx2wrl9r2flcjn70gqhaiibj6q0hyw206";
        libraryHaskellDepends = [
          base bytestring bytestring-builder colour containers diagrams-core
          diagrams-lib directory filepath hashable JuicyPixels mtl
@@ -78225,8 +78183,8 @@ self: {
      }:
      mkDerivation {
        pname = "dockerfile-creator";
-       version = "0.1.0.0";
-       sha256 = "110qv5v7zh484c3w9zfyinpkpy787nqj161gag8kn50k63w5ff9w";
+       version = "0.1.1.0";
+       sha256 = "04dd5y0wpznkkvs4izlczizm98l1w6xnqgjynn9lvnh13mwvv1g1";
        libraryHaskellDepends = [
          base bytestring data-default-class free language-docker megaparsec
          mtl template-haskell text th-lift th-lift-instances time
@@ -78841,6 +78799,8 @@ self: {
        testHaskellDepends = [ base containers hspec lens mtl random ];
        description = "A simulator for the board game Dominion";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "domplate" = callPackage
@@ -83170,8 +83130,8 @@ self: {
      }:
      mkDerivation {
        pname = "elm-syntax";
-       version = "0.3.0.0";
-       sha256 = "0pv0ly51wpbfr11rng57pasn5sgq7xz986jy36n8qb03q6irvsn9";
+       version = "0.3.1.0";
+       sha256 = "172xc5nvk2091vbd23ia6dp36d8v2jammb4hvnbk4365y7cgas2l";
        libraryHaskellDepends = [
          base bound deriving-compat hashable prettyprinter text
          unordered-containers
@@ -83580,8 +83540,8 @@ self: {
      }:
      mkDerivation {
        pname = "email-validate";
-       version = "2.3.2.13";
-       sha256 = "0wh955b9wwqwl8jbkzyxxaf8q9y80dbh0f6vaxxzh2cc7zqc31im";
+       version = "2.3.2.15";
+       sha256 = "0n67wss6k8lhwfkybkhsa04bbdfdv541sacbxlylkx2hqpj5r5gh";
        libraryHaskellDepends = [
          attoparsec base bytestring template-haskell
        ];
@@ -85034,6 +84994,17 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "error" = callPackage
+    ({ mkDerivation, base, text }:
+     mkDerivation {
+       pname = "error";
+       version = "0.1.0.0";
+       sha256 = "145gxlcqnaxvsrw54xijigfh5ffkh0d6i7r239ysy09ci8ybzfqx";
+       libraryHaskellDepends = [ base text ];
+       description = "The canonical error type";
+       license = lib.licenses.mit;
+     }) {};
+
   "error-analyze" = callPackage
     ({ mkDerivation, base, HUnit, tasty, tasty-hunit, text }:
      mkDerivation {
@@ -85483,34 +85454,6 @@ self: {
 
   "esqueleto" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, blaze-html, bytestring
-     , conduit, containers, exceptions, hspec, monad-logger, mtl, mysql
-     , mysql-simple, persistent, persistent-mysql, persistent-postgresql
-     , persistent-sqlite, postgresql-libpq, postgresql-simple, resourcet
-     , tagged, text, time, transformers, unliftio, unordered-containers
-     , vector
-     }:
-     mkDerivation {
-       pname = "esqueleto";
-       version = "3.5.0.0";
-       sha256 = "00mamdsm4yc8gdvb5zfnhnp7iqkg7h9fd5jgzrbdh9q7isyc6kiy";
-       libraryHaskellDepends = [
-         aeson attoparsec base blaze-html bytestring conduit containers
-         monad-logger persistent resourcet tagged text time transformers
-         unliftio unordered-containers
-       ];
-       testHaskellDepends = [
-         aeson attoparsec base blaze-html bytestring conduit containers
-         exceptions hspec monad-logger mtl mysql mysql-simple persistent
-         persistent-mysql persistent-postgresql persistent-sqlite
-         postgresql-libpq postgresql-simple resourcet tagged text time
-         transformers unliftio unordered-containers vector
-       ];
-       description = "Type-safe EDSL for SQL queries on persistent backends";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "esqueleto_3_5_2_0" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, blaze-html, bytestring
      , conduit, containers, exceptions, hspec, hspec-core, monad-logger
      , mtl, mysql, mysql-simple, persistent, persistent-mysql
      , persistent-postgresql, persistent-sqlite, postgresql-simple
@@ -85535,7 +85478,6 @@ self: {
        ];
        description = "Type-safe EDSL for SQL queries on persistent backends";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "ess" = callPackage
@@ -87803,8 +87745,8 @@ self: {
     ({ mkDerivation, base, containers, fgl, mtl, transformers }:
      mkDerivation {
        pname = "exploring-interpreters";
-       version = "0.3.1.0";
-       sha256 = "0765nfr65lphp768j3snzpqpz6f4nrmkvsb6ishflhnxnp99xgyz";
+       version = "0.3.2.0";
+       sha256 = "0wf35nnqqlvmzn8l3dxrvnr1w9clrzvmpw2vls2zyxnh9dsvrhf7";
        libraryHaskellDepends = [ base containers fgl mtl transformers ];
        description = "A generic exploring interpreter for exploratory programming";
        license = lib.licenses.bsd3;
@@ -87836,15 +87778,29 @@ self: {
     ({ mkDerivation, base, leancheck, template-haskell }:
      mkDerivation {
        pname = "express";
-       version = "0.1.14";
-       sha256 = "19sjh12sjpxhk7wg2b3abga7bpk6ckry19zi58imqmy8xbh6ds39";
+       version = "0.1.16";
+       sha256 = "04a1iv3dzyni7b0yvzqf1s8l0wg07hk9sg6d59hdbsl4f3kw8ki4";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base leancheck ];
        benchmarkHaskellDepends = [ base leancheck ];
-       description = "Dynamically-typed expressions involving applications and variables";
+       description = "Dynamically-typed expressions involving function application and variables";
        license = lib.licenses.bsd3;
      }) {};
 
+  "express_1_0_0" = callPackage
+    ({ mkDerivation, base, leancheck, template-haskell }:
+     mkDerivation {
+       pname = "express";
+       version = "1.0.0";
+       sha256 = "1aymnlq1nkw7qvrydmy0447ls5lnnjkhvpgicr56p2v65xrd37qx";
+       libraryHaskellDepends = [ base template-haskell ];
+       testHaskellDepends = [ base leancheck ];
+       benchmarkHaskellDepends = [ base leancheck ];
+       description = "Dynamically-typed expressions involving function application and variables";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "expression-parser" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -88704,7 +88660,7 @@ self: {
        broken = true;
      }) {};
 
-  "fakedata_1_0" = callPackage
+  "fakedata_1_0_1" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, containers, deepseq
      , directory, exceptions, fakedata-parser, filepath, gauge, hashable
      , hspec, hspec-discover, QuickCheck, random, regex-tdfa
@@ -88713,14 +88669,14 @@ self: {
      }:
      mkDerivation {
        pname = "fakedata";
-       version = "1.0";
-       sha256 = "1bbb90i6pm8ih1br81hwwz2bb2yvkx6fv44xkw0qv741n9a9rcz0";
+       version = "1.0.1";
+       sha256 = "08z3qhj93smpd2ksix3i7wcxqkz5533pkx9xf4xjq60qm99scmw6";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          attoparsec base bytestring containers directory exceptions
-         fakedata-parser filepath hashable QuickCheck random regex-tdfa
-         string-random template-haskell text time transformers
-         unordered-containers vector yaml
+         fakedata-parser filepath hashable random string-random
+         template-haskell text time transformers unordered-containers vector
+         yaml
        ];
        testHaskellDepends = [
          attoparsec base bytestring containers directory exceptions
@@ -88731,9 +88687,9 @@ self: {
        testToolDepends = [ hspec-discover ];
        benchmarkHaskellDepends = [
          attoparsec base bytestring containers deepseq directory exceptions
-         fakedata-parser filepath gauge hashable QuickCheck random
-         regex-tdfa string-random template-haskell text time transformers
-         unordered-containers vector yaml
+         fakedata-parser filepath gauge hashable random string-random
+         template-haskell text time transformers unordered-containers vector
+         yaml
        ];
        description = "Library for producing fake data";
        license = lib.licenses.bsd3;
@@ -93808,6 +93764,29 @@ self: {
        maintainers = with lib.maintainers; [ Gabriel439 ];
      }) {};
 
+  "foldl_1_4_12" = callPackage
+    ({ mkDerivation, base, bytestring, comonad, containers
+     , contravariant, criterion, doctest, hashable, primitive
+     , profunctors, random, semigroupoids, text, transformers
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "foldl";
+       version = "1.4.12";
+       sha256 = "0zf4yljh3s2ddxa7dhzdglmylj14kfldhkclc44g37zvjq6kcnag";
+       libraryHaskellDepends = [
+         base bytestring comonad containers contravariant hashable primitive
+         profunctors random semigroupoids text transformers
+         unordered-containers vector
+       ];
+       testHaskellDepends = [ base doctest ];
+       benchmarkHaskellDepends = [ base criterion ];
+       description = "Composable, streaming, and efficient left folds";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ Gabriel439 ];
+     }) {};
+
   "foldl-exceptions" = callPackage
     ({ mkDerivation, base, doctest, foldl, safe-exceptions }:
      mkDerivation {
@@ -94469,8 +94448,8 @@ self: {
      }:
      mkDerivation {
        pname = "formatting";
-       version = "7.1.2";
-       sha256 = "13sdc3wc8ahf18g5yld9bqi5yhbbg1w1r69rims93c5bxhiw3f9f";
+       version = "7.1.3";
+       sha256 = "1vrc2i1b6lxx2aq5hysfl3gl6miq2wbhxc384axvgrkqjbibnqc0";
        libraryHaskellDepends = [
          base clock double-conversion ghc-prim old-locale scientific text
          time transformers
@@ -94629,8 +94608,8 @@ self: {
      }:
      mkDerivation {
        pname = "fortran-src";
-       version = "0.4.3";
-       sha256 = "0wmyx0zlz2hmbrag8wgm8k33z9p0c2ylf3490hf9nz9b2303wflq";
+       version = "0.5.0";
+       sha256 = "1bza9aav1yy4yzv7lwwi1x466i9h7ar4xvwva1r7992msqp05pxb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -94660,8 +94639,8 @@ self: {
      }:
      mkDerivation {
        pname = "fortran-src-extras";
-       version = "0.1.0";
-       sha256 = "0q4wrif8mx5h6i2wsw2qa1hqdn95ii7211fnk8vj5g9ki3vrnlk8";
+       version = "0.2.0";
+       sha256 = "0wp1qq7fnzxlar0z7lh4g2fnalwp7xnqg43ws6c9b79xvahk58zi";
        libraryHaskellDepends = [
          aeson base binary bytestring containers directory filepath
          fortran-src GenericPretty optparse-applicative text uniplate
@@ -97389,30 +97368,30 @@ self: {
     ({ mkDerivation, aeson, alex, ansi-terminal, array, base, binary
      , blaze-html, bmp, bytestring, bytestring-to-vector, cmark-gfm
      , containers, directory, directory-tree, dlist, file-embed
-     , filepath, free, gitrev, happy, hashable, haskeline
-     , language-c-quote, mainland-pretty, megaparsec, mtl
-     , neat-interpolation, parallel, parser-combinators, pcg-random
-     , process, process-extras, QuickCheck, regex-tdfa, srcloc, tasty
-     , tasty-hunit, tasty-quickcheck, template-haskell, temporary
-     , terminal-size, text, time, transformers, unordered-containers
-     , utf8-string, vector, vector-binary-instances, versions
-     , zip-archive, zlib
+     , filepath, free, futhark-data, futhark-server, gitrev, happy
+     , hashable, haskeline, language-c-quote, mainland-pretty
+     , megaparsec, mtl, neat-interpolation, parallel, parser-combinators
+     , pcg-random, process, process-extras, QuickCheck, regex-tdfa
+     , srcloc, tasty, tasty-hunit, tasty-quickcheck, template-haskell
+     , temporary, terminal-size, text, time, transformers
+     , unordered-containers, utf8-string, vector
+     , vector-binary-instances, versions, zip-archive, zlib
      }:
      mkDerivation {
        pname = "futhark";
-       version = "0.19.6";
-       sha256 = "1wpg2ad2xv60xsdvnq3246nps3ldc00n58k7jxmh8lrx5bjzg263";
+       version = "0.19.7";
+       sha256 = "1c3la98gsw3xxvakg4zsknwn3z3whn75r5vr9rf6w6f48jl0829k";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson ansi-terminal array base binary blaze-html bmp bytestring
          bytestring-to-vector cmark-gfm containers directory directory-tree
-         dlist file-embed filepath free gitrev hashable haskeline
-         language-c-quote mainland-pretty megaparsec mtl neat-interpolation
-         parallel pcg-random process process-extras regex-tdfa srcloc
-         template-haskell temporary terminal-size text time transformers
-         unordered-containers utf8-string vector vector-binary-instances
-         versions zip-archive zlib
+         dlist file-embed filepath free futhark-data futhark-server gitrev
+         hashable haskeline language-c-quote mainland-pretty megaparsec mtl
+         neat-interpolation parallel pcg-random process process-extras
+         regex-tdfa srcloc template-haskell temporary terminal-size text
+         time transformers unordered-containers utf8-string vector
+         vector-binary-instances versions zip-archive zlib
        ];
        libraryToolDepends = [ alex happy ];
        executableHaskellDepends = [ base text ];
@@ -97453,8 +97432,8 @@ self: {
      }:
      mkDerivation {
        pname = "futhark-server";
-       version = "1.0.0.0";
-       sha256 = "00b0qblbx6sg6nk15zasbhbw9i63dmmpcsqdkqvxskr31qzj6vaa";
+       version = "1.1.0.0";
+       sha256 = "0mv3q4a6l3xp0qjlhh9f8bvgbmrmr4hypnkapb2wsn0fvb0iw2kb";
        libraryHaskellDepends = [
          base binary bytestring directory futhark-data mtl process temporary
          text
@@ -98961,6 +98940,8 @@ self: {
        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
@@ -98980,6 +98961,18 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "generic-arbitrary_0_2_0" = callPackage
+    ({ mkDerivation, base, QuickCheck }:
+     mkDerivation {
+       pname = "generic-arbitrary";
+       version = "0.2.0";
+       sha256 = "1wlrsj9l57vqdkaablb8ypq2g1i4mishjag00fyf2imr2cvzkamg";
+       libraryHaskellDepends = [ base QuickCheck ];
+       description = "Generic implementation for QuickCheck's Arbitrary";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "generic-binary" = callPackage
     ({ mkDerivation, base, binary, bytestring, ghc-prim }:
      mkDerivation {
@@ -99114,8 +99107,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "generic-enumeration";
-       version = "0.1.0.0";
-       sha256 = "1wwhbn3hpanr5ya1dc8spaf1r38sc1hglpz3d6mqizlna0p9a68l";
+       version = "0.1.0.1";
+       sha256 = "0bznwb8kkifbsd8yi0mp6cym90adjg30fzgj8181nsga4w9vzsab";
        libraryHaskellDepends = [ base ];
        description = "Generically derived enumerations";
        license = lib.licenses.mit;
@@ -99726,23 +99719,11 @@ self: {
     ({ mkDerivation, base, mtl, template-haskell }:
      mkDerivation {
        pname = "geniplate-mirror";
-       version = "0.7.7";
-       sha256 = "08w4rslxzv6z85qzam1yazjb6vrzcr55vsjjyjgsi86pb1a8hr3b";
-       libraryHaskellDepends = [ base mtl template-haskell ];
-       description = "Use Template Haskell to generate Uniplate-like functions";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "geniplate-mirror_0_7_8" = callPackage
-    ({ mkDerivation, base, mtl, template-haskell }:
-     mkDerivation {
-       pname = "geniplate-mirror";
        version = "0.7.8";
        sha256 = "1kw4q7l556sfd82r2p0z3cv4sg8kcr45wb4s2sy996bs3ymn8fjb";
        libraryHaskellDepends = [ base mtl template-haskell ];
        description = "Use Template Haskell to generate Uniplate-like functions";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "geniserver" = callPackage
@@ -99800,27 +99781,12 @@ self: {
      }:
      mkDerivation {
        pname = "genvalidity";
-       version = "0.11.0.0";
-       sha256 = "0kqhmgq7p94980br47jd6k9m2vjb62idx8x5hrcmybf0dakyscbl";
-       libraryHaskellDepends = [ base QuickCheck random validity ];
-       testHaskellDepends = [ base hspec hspec-core QuickCheck ];
-       description = "Testing utilities for the validity library";
-       license = lib.licenses.mit;
-     }) {};
-
-  "genvalidity_0_11_0_2" = callPackage
-    ({ mkDerivation, base, hspec, hspec-core, QuickCheck, random
-     , validity
-     }:
-     mkDerivation {
-       pname = "genvalidity";
        version = "0.11.0.2";
        sha256 = "16bd5dx0ngc8z7mij23i2l3a8v3c112x8ksd623alik18zx7pi8j";
        libraryHaskellDepends = [ base QuickCheck random validity ];
        testHaskellDepends = [ base hspec hspec-core QuickCheck ];
        description = "Testing utilities for the validity library";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "genvalidity-aeson" = callPackage
@@ -102107,23 +102073,11 @@ self: {
     ({ mkDerivation, base, ghc }:
      mkDerivation {
        pname = "ghc-tcplugins-extra";
-       version = "0.4.1";
-       sha256 = "0v9y444gydfyk56y7adpabd633yv1d8jmddvgg272n8jpdpagw67";
-       libraryHaskellDepends = [ base ghc ];
-       description = "Utilities for writing GHC type-checker plugins";
-       license = lib.licenses.bsd2;
-     }) {};
-
-  "ghc-tcplugins-extra_0_4_2" = callPackage
-    ({ mkDerivation, base, ghc }:
-     mkDerivation {
-       pname = "ghc-tcplugins-extra";
        version = "0.4.2";
        sha256 = "1gddqcczb8ixmrlfbfb06dc470jsjhvsxx3q2nsd4mcx2x6jdk08";
        libraryHaskellDepends = [ base ghc ];
        description = "Utilities for writing GHC type-checker plugins";
        license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "ghc-time-alloc-prof" = callPackage
@@ -102162,8 +102116,8 @@ self: {
     ({ mkDerivation, base, bytestring, tasty-bench, text }:
      mkDerivation {
        pname = "ghc-trace-events";
-       version = "0.1.2.2";
-       sha256 = "18vhv99lrfjx6bxww77qxg7gwqmvpylvlrq1bji0hd6mcxxdjn69";
+       version = "0.1.2.3";
+       sha256 = "11m2ihzlncvxp8x2zgbnzbyybz2lbpdl5flk4gzmq0qz0957j7qd";
        libraryHaskellDepends = [ base bytestring text ];
        benchmarkHaskellDepends = [ base bytestring tasty-bench ];
        description = "Faster traceEvent and traceMarker, and binary object logging for eventlog";
@@ -102178,29 +102132,6 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-typelits-extra";
-       version = "0.4.2";
-       sha256 = "0xpy52rib25iz5h89nqlj27isjk57pjbhlvlfam5q0g3x92572h4";
-       libraryHaskellDepends = [
-         base containers ghc ghc-prim ghc-tcplugins-extra
-         ghc-typelits-knownnat ghc-typelits-natnormalise integer-gmp
-         transformers
-       ];
-       testHaskellDepends = [
-         base ghc-typelits-knownnat ghc-typelits-natnormalise tasty
-         tasty-hunit
-       ];
-       description = "Additional type-level operations on GHC.TypeLits.Nat";
-       license = lib.licenses.bsd2;
-     }) {};
-
-  "ghc-typelits-extra_0_4_3" = callPackage
-    ({ mkDerivation, base, containers, ghc, ghc-prim
-     , ghc-tcplugins-extra, ghc-typelits-knownnat
-     , ghc-typelits-natnormalise, integer-gmp, tasty, tasty-hunit
-     , transformers
-     }:
-     mkDerivation {
-       pname = "ghc-typelits-extra";
        version = "0.4.3";
        sha256 = "06g40q0n2d10c2zksx5rrjkvm5ywi3rh41hbiwy4zs28x9idsv18";
        libraryHaskellDepends = [
@@ -102214,7 +102145,6 @@ self: {
        ];
        description = "Additional type-level operations on GHC.TypeLits.Nat";
        license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "ghc-typelits-knownnat" = callPackage
@@ -102224,26 +102154,6 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-typelits-knownnat";
-       version = "0.7.5";
-       sha256 = "1xraiil3nq02jdb4blkmsrdp36qhykv2xvwg3kaiyw5bgfl15gl3";
-       libraryHaskellDepends = [
-         base ghc ghc-prim ghc-tcplugins-extra ghc-typelits-natnormalise
-         template-haskell transformers
-       ];
-       testHaskellDepends = [
-         base ghc-typelits-natnormalise tasty tasty-hunit tasty-quickcheck
-       ];
-       description = "Derive KnownNat constraints from other KnownNat constraints";
-       license = lib.licenses.bsd2;
-     }) {};
-
-  "ghc-typelits-knownnat_0_7_6" = callPackage
-    ({ mkDerivation, base, ghc, ghc-prim, ghc-tcplugins-extra
-     , ghc-typelits-natnormalise, tasty, tasty-hunit, tasty-quickcheck
-     , template-haskell, transformers
-     }:
-     mkDerivation {
-       pname = "ghc-typelits-knownnat";
        version = "0.7.6";
        sha256 = "10m4y0hf25w2i40464pz85lqs5dr8cznl191icnibc5fjynyzd9v";
        libraryHaskellDepends = [
@@ -102255,7 +102165,6 @@ self: {
        ];
        description = "Derive KnownNat constraints from other KnownNat constraints";
        license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "ghc-typelits-natnormalise" = callPackage
@@ -102264,22 +102173,6 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-typelits-natnormalise";
-       version = "0.7.4";
-       sha256 = "0d8wwb1i6jj11cylf2n42r08hfygv9gwy89xyxp4kdclyw9mfwrp";
-       libraryHaskellDepends = [
-         base containers ghc ghc-tcplugins-extra integer-gmp transformers
-       ];
-       testHaskellDepends = [ base tasty tasty-hunit template-haskell ];
-       description = "GHC typechecker plugin for types of kind GHC.TypeLits.Nat";
-       license = lib.licenses.bsd2;
-     }) {};
-
-  "ghc-typelits-natnormalise_0_7_6" = callPackage
-    ({ mkDerivation, base, containers, ghc, ghc-tcplugins-extra
-     , integer-gmp, tasty, tasty-hunit, template-haskell, transformers
-     }:
-     mkDerivation {
-       pname = "ghc-typelits-natnormalise";
        version = "0.7.6";
        sha256 = "09d70iw58m5g6yi8k2b52f1g0pfdqm5fzhs8rd7fgrgmi70np9bx";
        libraryHaskellDepends = [
@@ -102288,7 +102181,6 @@ self: {
        testHaskellDepends = [ base tasty tasty-hunit template-haskell ];
        description = "GHC typechecker plugin for types of kind GHC.TypeLits.Nat";
        license = lib.licenses.bsd2;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "ghc-typelits-presburger" = callPackage
@@ -102578,8 +102470,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghcide";
-       version = "1.4.0.2";
-       sha256 = "1xqvfby6yb734lfiyxmzs17zaz56v7fh9rrfz9p81mdgspsqc739";
+       version = "1.4.0.3";
+       sha256 = "1znf54l3g44cskx5blfaibf1frgyhy5z7906rdvyzb0dqfmkbzpw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -102930,6 +102822,8 @@ self: {
        pname = "ghcup";
        version = "0.1.14.2";
        sha256 = "1k18ira2i2ja4hd65fdxk3ab21xzh4fvd982q2rfjshzkds1a3hv";
+       revision = "1";
+       editedCabalFile = "1vy71ly44jibq8bil0ns80m2zn9gcpnz8f9w2mn4j404gajpqagk";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -104456,8 +104350,8 @@ self: {
      }:
      mkDerivation {
        pname = "git-annex";
-       version = "8.20210621";
-       sha256 = "01i8mgxz4ca0c50g2w2qgr3m04l5zsw17r0cadn3kwyld662r98n";
+       version = "8.20210630";
+       sha256 = "0mxzddaf7ra807aazx9gd4rl5565xzky0hwiyby0a06yqnf02266";
        configureFlags = [
          "-fassistant" "-f-benchmark" "-fdbus" "-f-debuglocks" "-fmagicmime"
          "-fnetworkbsd" "-fpairing" "-fproduction" "-fs3" "-ftorrentparser"
@@ -104824,14 +104718,14 @@ self: {
      }:
      mkDerivation {
        pname = "git-repair";
-       version = "1.20210111";
-       sha256 = "08kdip1pg300yr50xwyklf9xpmcq8pgkym60yz97qj83yhlcszb7";
+       version = "1.20210629";
+       sha256 = "01k3xwd45ybmfw400zrvfnsnwj1v9xd4hg8iys8h8yk0b2mf2nbj";
        isLibrary = false;
        isExecutable = true;
        setupHaskellDepends = [
          async base bytestring Cabal data-default directory exceptions
-         filepath filepath-bytestring hslogger IfElse mtl process split unix
-         unix-compat
+         filepath filepath-bytestring hslogger IfElse mtl process split time
+         unix unix-compat
        ];
        executableHaskellDepends = [
          async attoparsec base bytestring containers data-default deepseq
@@ -104956,25 +104850,6 @@ self: {
 
   "githash" = callPackage
     ({ mkDerivation, base, bytestring, directory, filepath, hspec
-     , process, template-haskell, temporary, unliftio
-     }:
-     mkDerivation {
-       pname = "githash";
-       version = "0.1.6.0";
-       sha256 = "1mcfzgvqiirlz8vc02wlvvfyf6742f3901ks8rphhabl4b4v1djl";
-       libraryHaskellDepends = [
-         base bytestring directory filepath process template-haskell
-       ];
-       testHaskellDepends = [
-         base bytestring directory filepath hspec process template-haskell
-         temporary unliftio
-       ];
-       description = "Compile git revision info into Haskell projects";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "githash_0_1_6_1" = callPackage
-    ({ mkDerivation, base, bytestring, directory, filepath, hspec
      , process, template-haskell, temporary, th-compat, unliftio
      }:
      mkDerivation {
@@ -104991,7 +104866,6 @@ self: {
        ];
        description = "Compile git revision info into Haskell projects";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "github" = callPackage
@@ -106031,8 +105905,8 @@ self: {
        pname = "glirc";
        version = "2.38";
        sha256 = "1azykkb9rc4q97v9xiqfjv0iys0wswa3nsy10smdkpp7yvv4mca7";
-       revision = "1";
-       editedCabalFile = "04f35w57jq6gpi6d3d83c9bswwl724rbd0dbl835ilhl18kpfscj";
+       revision = "2";
+       editedCabalFile = "082ndcgp9z1w5pa3s5ss7kqhg66y01lbj57k14zq6zs6c54s4b5i";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal filepath ];
@@ -109643,8 +109517,8 @@ self: {
      }:
      mkDerivation {
        pname = "gopro-plus";
-       version = "0.4.1.3";
-       sha256 = "1924d0qymm18zy5pw04irf1nmwdbkbscxcvw4cmjqm9xj7cnyja0";
+       version = "0.5.0.0";
+       sha256 = "1bykxdqhynyq3xg09f4vv39lypprg0285pi7wpsbjmi5vg8w17pd";
        libraryHaskellDepends = [
          aeson base bytestring containers exceptions filepath
          generic-deriving lens lens-aeson mtl random retry text time
@@ -110748,21 +110622,20 @@ self: {
     ({ mkDerivation, aeson, base, conduit, containers, exceptions
      , hspec, hspec-expectations, hspec-megaparsec, megaparsec
      , parser-combinators, QuickCheck, raw-strings-qq, scientific, text
-     , transformers, unordered-containers
+     , transformers, unordered-containers, vector
      }:
      mkDerivation {
        pname = "graphql";
-       version = "0.11.1.0";
-       sha256 = "093gk2w2qrvarcv7xn0d0saa1j35cy0isw5vz04h08gy37s2nspc";
+       version = "1.0.0.0";
+       sha256 = "09r2a444l18pzy0952hkpl98vkmldi8j94hr6qf16xg5y9nic3nd";
        libraryHaskellDepends = [
          aeson base conduit containers exceptions hspec-expectations
          megaparsec parser-combinators scientific text transformers
-         unordered-containers
+         unordered-containers vector
        ];
        testHaskellDepends = [
-         aeson base conduit containers exceptions hspec hspec-expectations
-         hspec-megaparsec megaparsec parser-combinators QuickCheck
-         raw-strings-qq scientific text transformers unordered-containers
+         aeson base conduit exceptions hspec hspec-megaparsec megaparsec
+         QuickCheck raw-strings-qq scientific text unordered-containers
        ];
        description = "Haskell GraphQL implementation";
        license = "MPL-2.0 AND BSD-3-Clause";
@@ -114603,8 +114476,8 @@ self: {
      }:
      mkDerivation {
        pname = "hadolint";
-       version = "2.5.0";
-       sha256 = "0snh5sp47xqncsb19jp29kc2mjln6gpbhwxmvsqy0z9wgch0ldgb";
+       version = "2.6.0";
+       sha256 = "0kxj853j4kr9vfp66mc47bd0ylzddbj6in6i7sjlcx4i861n3xnj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -115169,6 +115042,8 @@ self: {
        ];
        description = "Wrapper to integrate literate Agda files with Hakyll";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "hakyll-alectryon" = callPackage
@@ -116918,34 +116793,6 @@ self: {
     ({ mkDerivation, base, base64-bytestring, blaze-html, bytestring
      , containers, directory, exceptions, extensible-exceptions
      , filepath, hslogger, html, HUnit, monad-control, mtl, network
-     , network-bsd, network-uri, old-locale, parsec, process, semigroups
-     , sendfile, syb, system-filepath, text, threads, time, transformers
-     , transformers-base, transformers-compat, unix, utf8-string, xhtml
-     , zlib
-     }:
-     mkDerivation {
-       pname = "happstack-server";
-       version = "7.7.1";
-       sha256 = "1zxdv7nihw3kjq2fvw5cl3s27pwm5gkli3sl15iqxfm7mdxz8rm0";
-       libraryHaskellDepends = [
-         base base64-bytestring blaze-html bytestring containers directory
-         exceptions extensible-exceptions filepath hslogger html
-         monad-control mtl network network-bsd network-uri old-locale parsec
-         process semigroups sendfile syb system-filepath text threads time
-         transformers transformers-base transformers-compat unix utf8-string
-         xhtml zlib
-       ];
-       testHaskellDepends = [
-         base bytestring containers HUnit parsec zlib
-       ];
-       description = "Web related tools and services";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "happstack-server_7_7_1_1" = callPackage
-    ({ mkDerivation, base, base64-bytestring, blaze-html, bytestring
-     , containers, directory, exceptions, extensible-exceptions
-     , filepath, hslogger, html, HUnit, monad-control, mtl, network
      , network-uri, old-locale, parsec, process, semigroups, sendfile
      , syb, system-filepath, text, threads, time, transformers
      , transformers-base, transformers-compat, unix, utf8-string, xhtml
@@ -116968,7 +116815,6 @@ self: {
        ];
        description = "Web related tools and services";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "happstack-server-tls" = callPackage
@@ -117536,6 +117382,32 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "hasbolt_0_1_6_1" = callPackage
+    ({ mkDerivation, base, base64-bytestring, binary, bytestring
+     , connection, containers, criterion, data-binary-ieee754
+     , data-default, deepseq, deepseq-generics, hspec, mtl, network
+     , QuickCheck, text
+     }:
+     mkDerivation {
+       pname = "hasbolt";
+       version = "0.1.6.1";
+       sha256 = "1skniw27z4p3103anh2jc546h0jkvsacsnwnf32zz7a4paw6z280";
+       libraryHaskellDepends = [
+         base binary bytestring connection containers data-binary-ieee754
+         data-default deepseq deepseq-generics mtl network text
+       ];
+       testHaskellDepends = [
+         base binary bytestring containers hspec QuickCheck text
+       ];
+       benchmarkHaskellDepends = [
+         base base64-bytestring binary bytestring criterion data-default
+         hspec
+       ];
+       description = "Haskell driver for Neo4j 3+ (BOLT protocol)";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "hasbolt-extras" = callPackage
     ({ mkDerivation, aeson, aeson-casing, base, bytestring, containers
      , data-default, doctest, free, hasbolt, lens, mtl
@@ -119940,6 +119812,8 @@ self: {
        ];
        description = "Generate Elm types and JSON encoders and decoders from Haskell types";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "haskell-token-utils" = callPackage
@@ -122572,6 +122446,7 @@ self: {
        ];
        description = "A PostgreSQL backed queue";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hasql-simple" = callPackage
@@ -122599,8 +122474,8 @@ self: {
      }:
      mkDerivation {
        pname = "hasql-th";
-       version = "0.4.0.8";
-       sha256 = "14h71s7dha1g0zfi3vsg5y6lsn09x8c9nqv1nqiqmw2m19adx7gi";
+       version = "0.4.0.9";
+       sha256 = "0z3falhkyyqpzqh116xwzvjj0xb391bwahh64sasnw4vf2i0drb9";
        libraryHaskellDepends = [
          base bytestring containers contravariant foldl hasql
          postgresql-syntax template-haskell template-haskell-compat-v0208
@@ -122618,8 +122493,8 @@ self: {
      }:
      mkDerivation {
        pname = "hasql-transaction";
-       version = "1.0.0.2";
-       sha256 = "1ig6fny9c90cmfsh6kcdhj9ps2arn1y80ic2w7ps6mn8wgl0cr82";
+       version = "1.0.1";
+       sha256 = "1a83x2jrv9bhjrxfgvqfwrqv5cx1f401rmvz0k44yww5p816jk9s";
        libraryHaskellDepends = [
          base bytestring bytestring-tree-builder contravariant
          contravariant-extras hasql mtl transformers
@@ -124417,8 +124292,8 @@ self: {
      }:
      mkDerivation {
        pname = "headed-megaparsec";
-       version = "0.2";
-       sha256 = "1s2alhwmkk5czilm1m2dp72xpbdjhn7yhghrs1aca2js71x5j7qj";
+       version = "0.2.0.1";
+       sha256 = "1bkjk5bzlzsigqdcb3vyqmjxddf4hm7b5a4ppb0iwh5n78whxpjc";
        libraryHaskellDepends = [
          base case-insensitive megaparsec parser-combinators selective
        ];
@@ -124448,26 +124323,28 @@ self: {
      }) {};
 
   "headroom" = callPackage
-    ({ mkDerivation, aeson, base, doctest, either, file-embed
-     , generic-data, hspec, hspec-discover, microlens, microlens-th, mtl
-     , mustache, optparse-applicative, pcre-heavy, pcre-light
-     , QuickCheck, rio, string-interpolate, template-haskell, time, yaml
+    ({ mkDerivation, aeson, base, doctest, either, extra, file-embed
+     , generic-data, hspec, hspec-discover, http-client, http-types
+     , microlens, microlens-th, modern-uri, mtl, mustache
+     , optparse-applicative, pcre-heavy, pcre-light, QuickCheck, req
+     , rio, string-interpolate, template-haskell, time, vcs-ignore, yaml
      }:
      mkDerivation {
        pname = "headroom";
-       version = "0.4.1.0";
-       sha256 = "1f98x1qm567wsa58nyavj7lfi2fmm6zrmjc0cwg0dyhvi63n9qp0";
+       version = "0.4.2.0";
+       sha256 = "1rg1n3pa6lh1a1flk8g8r5m1s77hl0cyd0c129rw8h1w2w2kkpj0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base either file-embed generic-data microlens microlens-th
-         mtl mustache optparse-applicative pcre-heavy pcre-light rio
-         string-interpolate template-haskell time yaml
+         aeson base either extra file-embed generic-data http-client
+         http-types microlens microlens-th modern-uri mtl mustache
+         optparse-applicative pcre-heavy pcre-light req rio
+         string-interpolate template-haskell time vcs-ignore yaml
        ];
        executableHaskellDepends = [ base optparse-applicative rio ];
        testHaskellDepends = [
-         aeson base doctest hspec mtl optparse-applicative pcre-light
-         QuickCheck rio string-interpolate time
+         aeson base doctest hspec modern-uri mtl optparse-applicative
+         pcre-light QuickCheck rio string-interpolate time
        ];
        testToolDepends = [ hspec-discover ];
        description = "License Header Manager";
@@ -125171,27 +125048,6 @@ self: {
      }:
      mkDerivation {
        pname = "hedn";
-       version = "0.3.0.2";
-       sha256 = "1w9p9h06rgz80153b2q59bblpn124nicn1sscyyjc1cfwda2h0b4";
-       libraryHaskellDepends = [
-         base containers deepseq deriving-compat megaparsec
-         parser-combinators prettyprinter scientific template-haskell text
-         time uuid-types vector
-       ];
-       testHaskellDepends = [
-         base containers hedgehog megaparsec text time uuid-types vector
-       ];
-       description = "EDN parsing and encoding";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "hedn_0_3_0_3" = callPackage
-    ({ mkDerivation, base, containers, deepseq, deriving-compat
-     , hedgehog, megaparsec, parser-combinators, prettyprinter
-     , scientific, template-haskell, text, time, uuid-types, vector
-     }:
-     mkDerivation {
-       pname = "hedn";
        version = "0.3.0.3";
        sha256 = "0amfsmnly9yxzv1j34ya8kq9fqd067kgklx7rswy5g7aflj3bpwl";
        libraryHaskellDepends = [
@@ -125204,7 +125060,6 @@ self: {
        ];
        description = "EDN parsing and encoding";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hedn-functor" = callPackage
@@ -127867,18 +127722,18 @@ self: {
     ({ mkDerivation, algebraic-graphs, ansi-terminal, array, base
      , bytestring, containers, directory, extra, filepath, ghc
      , ghc-paths, hie-compat, hspec, lucid, mtl, optparse-applicative
-     , process, sqlite-simple, temporary, text
+     , process, sqlite-simple, temporary, terminal-size, text
      }:
      mkDerivation {
        pname = "hiedb";
-       version = "0.3.0.1";
-       sha256 = "1ci68q5r42rarmj12vrmggnj7c7jb8sw3wnmzrq2gn7vqhrr05jc";
+       version = "0.4.0.0";
+       sha256 = "1frcl9mxmn97qc97l3kw21ksapyndn6jq7yfxxrr0fvzn7jji7wv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          algebraic-graphs ansi-terminal array base bytestring containers
          directory extra filepath ghc hie-compat lucid mtl
-         optparse-applicative sqlite-simple text
+         optparse-applicative sqlite-simple terminal-size text
        ];
        executableHaskellDepends = [ base ghc-paths ];
        testHaskellDepends = [
@@ -129705,6 +129560,51 @@ self: {
        maintainers = with lib.maintainers; [ peti ];
      }) {};
 
+  "hledger_1_22" = callPackage
+    ({ mkDerivation, aeson, ansi-terminal, base, base-compat-batteries
+     , bytestring, cmdargs, containers, data-default, Decimal, Diff
+     , directory, extra, filepath, githash, hashable, haskeline
+     , hledger-lib, lucid, math-functions, megaparsec, mtl, old-time
+     , process, regex-tdfa, safe, shakespeare, split, tabular, tasty
+     , temporary, terminfo, text, time, timeit, transformers
+     , unordered-containers, utf8-string, utility-ht, wizards
+     }:
+     mkDerivation {
+       pname = "hledger";
+       version = "1.22";
+       sha256 = "1w7akdl9pn77s3fnb5wq3f7k2xpxnf91ann8qy5gpq66nszm6pqc";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson ansi-terminal base base-compat-batteries bytestring cmdargs
+         containers data-default Decimal Diff directory extra filepath
+         githash hashable haskeline hledger-lib lucid math-functions
+         megaparsec mtl old-time process regex-tdfa safe shakespeare split
+         tabular tasty temporary terminfo text time timeit transformers
+         unordered-containers utf8-string utility-ht wizards
+       ];
+       executableHaskellDepends = [
+         aeson ansi-terminal base base-compat-batteries bytestring cmdargs
+         containers data-default Decimal directory extra filepath githash
+         haskeline hledger-lib math-functions megaparsec mtl old-time
+         process regex-tdfa safe shakespeare split tabular tasty temporary
+         terminfo text time timeit transformers unordered-containers
+         utf8-string utility-ht wizards
+       ];
+       testHaskellDepends = [
+         aeson ansi-terminal base base-compat-batteries bytestring cmdargs
+         containers data-default Decimal directory extra filepath githash
+         haskeline hledger-lib math-functions megaparsec mtl old-time
+         process regex-tdfa safe shakespeare split tabular tasty temporary
+         terminfo text time timeit transformers unordered-containers
+         utf8-string utility-ht wizards
+       ];
+       description = "Command-line interface for the hledger accounting system";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ peti ];
+     }) {};
+
   "hledger-api" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, data-default
      , Decimal, docopt, either, hledger, hledger-lib, microlens
@@ -129896,6 +129796,43 @@ self: {
        license = lib.licenses.gpl3Only;
      }) {};
 
+  "hledger-lib_1_22" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, array, base
+     , base-compat-batteries, blaze-markup, bytestring, call-stack
+     , cassava, cassava-megaparsec, cmdargs, containers, data-default
+     , Decimal, directory, doctest, extra, file-embed, filepath, Glob
+     , hashtables, megaparsec, mtl, old-time, parser-combinators
+     , pretty-simple, regex-tdfa, safe, tabular, tasty, tasty-hunit
+     , template-haskell, text, time, timeit, transformers, uglymemo
+     , unordered-containers, utf8-string
+     }:
+     mkDerivation {
+       pname = "hledger-lib";
+       version = "1.22";
+       sha256 = "06qddk2nhjq3g02in3hcxz4hfwq9fcb3356shzbljx7ssmzjakzm";
+       libraryHaskellDepends = [
+         aeson aeson-pretty ansi-terminal array base base-compat-batteries
+         blaze-markup bytestring call-stack cassava cassava-megaparsec
+         cmdargs containers data-default Decimal directory extra file-embed
+         filepath Glob hashtables megaparsec mtl old-time parser-combinators
+         pretty-simple regex-tdfa safe tabular tasty tasty-hunit
+         template-haskell text time timeit transformers uglymemo
+         unordered-containers utf8-string
+       ];
+       testHaskellDepends = [
+         aeson aeson-pretty ansi-terminal array base base-compat-batteries
+         blaze-markup bytestring call-stack cassava cassava-megaparsec
+         cmdargs containers data-default Decimal directory doctest extra
+         file-embed filepath Glob hashtables megaparsec mtl old-time
+         parser-combinators pretty-simple regex-tdfa safe tabular tasty
+         tasty-hunit template-haskell text time timeit transformers uglymemo
+         unordered-containers utf8-string
+       ];
+       description = "A reusable library providing the core functionality of hledger";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "hledger-makeitso" = callPackage
     ({ mkDerivation, base, containers, foldl, HUnit, stm, text, time
      , turtle
@@ -129968,6 +129905,31 @@ self: {
        maintainers = with lib.maintainers; [ peti ];
      }) {};
 
+  "hledger-ui_1_22" = callPackage
+    ({ mkDerivation, ansi-terminal, async, base, base-compat-batteries
+     , brick, cmdargs, containers, data-default, directory, extra
+     , filepath, fsnotify, hledger, hledger-lib, megaparsec, microlens
+     , microlens-platform, process, safe, split, text, text-zipper, time
+     , transformers, unix, vector, vty
+     }:
+     mkDerivation {
+       pname = "hledger-ui";
+       version = "1.22";
+       sha256 = "1izidpxwygghq0c3z7pygf9c9qlsydw89gs6475hsd4qiqc06gjr";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         ansi-terminal async base base-compat-batteries brick cmdargs
+         containers data-default directory extra filepath fsnotify hledger
+         hledger-lib megaparsec microlens microlens-platform process safe
+         split text text-zipper time transformers unix vector vty
+       ];
+       description = "Curses-style terminal interface for the hledger accounting system";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ peti ];
+     }) {};
+
   "hledger-vty" = callPackage
     ({ mkDerivation, base, cmdargs, hledger, hledger-lib, HUnit, safe
      , time, vty
@@ -130025,6 +129987,43 @@ self: {
        maintainers = with lib.maintainers; [ peti ];
      }) {};
 
+  "hledger-web_1_22" = callPackage
+    ({ mkDerivation, aeson, base, blaze-html, blaze-markup, bytestring
+     , case-insensitive, clientsession, cmdargs, conduit, conduit-extra
+     , containers, data-default, Decimal, directory, extra, filepath
+     , hjsmin, hledger, hledger-lib, hspec, http-client, http-conduit
+     , http-types, megaparsec, mtl, network, shakespeare
+     , template-haskell, text, time, transformers, unix-compat
+     , unordered-containers, utf8-string, wai, wai-cors, wai-extra
+     , wai-handler-launch, warp, yaml, yesod, yesod-core, yesod-form
+     , yesod-static, yesod-test
+     }:
+     mkDerivation {
+       pname = "hledger-web";
+       version = "1.22";
+       sha256 = "0miy111zz8yqw0i87sn91aiplznc7fbirznpar8y5mch8z4wn4bs";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base blaze-html blaze-markup bytestring case-insensitive
+         clientsession cmdargs conduit conduit-extra containers data-default
+         Decimal directory extra filepath hjsmin hledger hledger-lib hspec
+         http-client http-conduit http-types megaparsec mtl network
+         shakespeare template-haskell text time transformers unix-compat
+         unordered-containers utf8-string wai wai-cors wai-extra
+         wai-handler-launch warp yaml yesod yesod-core yesod-form
+         yesod-static yesod-test
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base hledger hledger-lib hspec text yesod yesod-test
+       ];
+       description = "Web-based user interface for the hledger accounting system";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ peti ];
+     }) {};
+
   "hlibBladeRF" = callPackage
     ({ mkDerivation, base, bindings-DSL, bytestring, hlint, libbladeRF
      }:
@@ -134519,6 +134518,29 @@ self: {
        license = lib.licenses.bsd3;
      }) {inherit (pkgs) ruby;};
 
+  "hs" = callPackage
+    ({ mkDerivation, base, containers, data-default, directory
+     , enum-text, filepath, fmt, optparse-applicative, possibly, text
+     , typed-process
+     }:
+     mkDerivation {
+       pname = "hs";
+       version = "0.1.0.2";
+       sha256 = "03hfjw777v2dkj1qcswb9ylqypiqhx5xcsnmksq99si3bi1xyrgm";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers data-default directory enum-text filepath fmt
+         optparse-applicative possibly text typed-process
+       ];
+       executableHaskellDepends = [
+         base containers data-default directory enum-text filepath fmt
+         optparse-applicative possibly text typed-process
+       ];
+       description = "GHC-toolchain installer broker";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "hs-GeoIP" = callPackage
     ({ mkDerivation, base, bytestring, deepseq, GeoIP }:
      mkDerivation {
@@ -135580,6 +135602,8 @@ self: {
        ];
        description = "Akamai API(Edgegrid and Netstorage)";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "hsaml2" = callPackage
@@ -141152,8 +141176,8 @@ self: {
      }:
      mkDerivation {
        pname = "http-streams";
-       version = "0.8.7.2";
-       sha256 = "1q0lp8hkzfc0srci9y794q5cqkih50r3iw2c32wbx8h502jcvv1q";
+       version = "0.8.8.1";
+       sha256 = "0jh7ps2hi72pjzrjwkmq8sq0djwjv9nf9cbxhjb121grg0gzzrbh";
        libraryHaskellDepends = [
          aeson attoparsec base base64-bytestring blaze-builder bytestring
          case-insensitive directory HsOpenSSL http-common io-streams mtl
@@ -143107,6 +143131,8 @@ self: {
        benchmarkHaskellDepends = [ base criterion vector ];
        description = "Primitive support for bit manipulation";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "hw-rankselect" = callPackage
@@ -144560,16 +144586,17 @@ self: {
      }) {};
 
   "hyphenation" = callPackage
-    ({ mkDerivation, base, bytestring, containers, text
+    ({ mkDerivation, base, bytestring, containers, file-embed, text
      , unordered-containers, zlib
      }:
      mkDerivation {
        pname = "hyphenation";
-       version = "0.8.1";
-       sha256 = "0pzm9sfn1bw7yvwhby9a6d9z2ghcn91rcbj08x380gff31kn8lbx";
+       version = "0.8.2";
+       sha256 = "05330kd99cg9v6w26sj87wk2nfvpmn2r177kr66vr9n0rlmia60y";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         base bytestring containers text unordered-containers zlib
+         base bytestring containers file-embed text unordered-containers
+         zlib
        ];
        description = "Configurable Knuth-Liang hyphenation";
        license = lib.licenses.bsd2;
@@ -144925,8 +144952,8 @@ self: {
      }:
      mkDerivation {
        pname = "ice40-prim";
-       version = "0.3.1.0";
-       sha256 = "11q09jyckl9q84qv6xxypf5kalxgbrpgq65bqysa26i6xll4p4d0";
+       version = "0.3.1.1";
+       sha256 = "1g0hfkkzgfkqsyyyhpxz7w4g2v5ay5k7d2xs2dp7m6lpzrgs5dl0";
        libraryHaskellDepends = [
          base clash-prelude ghc-typelits-extra ghc-typelits-knownnat
          ghc-typelits-natnormalise interpolate
@@ -145690,6 +145717,42 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "ihaskell_0_10_2_1" = callPackage
+    ({ mkDerivation, aeson, base, base64-bytestring, bytestring, cereal
+     , cmdargs, containers, directory, exceptions, filepath, ghc
+     , ghc-boot, ghc-parser, ghc-paths, haskeline, here, hlint, hspec
+     , hspec-contrib, http-client, http-client-tls, HUnit
+     , ipython-kernel, mtl, parsec, process, random, raw-strings-qq
+     , setenv, shelly, split, stm, strict, text, time, transformers
+     , unix, unordered-containers, utf8-string, vector
+     }:
+     mkDerivation {
+       pname = "ihaskell";
+       version = "0.10.2.1";
+       sha256 = "1bpxm51c8f0cl7cvg7d2f39fnar7a811s3fgxvxmvsb7yw3v92vc";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson base base64-bytestring bytestring cereal cmdargs containers
+         directory exceptions filepath ghc ghc-boot ghc-parser ghc-paths
+         haskeline hlint http-client http-client-tls ipython-kernel mtl
+         parsec process random shelly split stm strict text time
+         transformers unix unordered-containers utf8-string vector
+       ];
+       executableHaskellDepends = [
+         aeson base bytestring containers directory ghc ipython-kernel
+         process strict text transformers unix unordered-containers
+       ];
+       testHaskellDepends = [
+         base directory ghc ghc-paths here hspec hspec-contrib HUnit
+         raw-strings-qq setenv shelly text transformers
+       ];
+       description = "A Haskell backend kernel for the IPython project";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "ihaskell-aeson" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, here
      , ihaskell, text
@@ -147711,8 +147774,8 @@ self: {
      }:
      mkDerivation {
        pname = "inline-c";
-       version = "0.9.1.4";
-       sha256 = "021r3ghn3cv1nykkkgyd50gq5cmczam8j37xqfi7vmyx5iwdv0a2";
+       version = "0.9.1.5";
+       sha256 = "0a0m3bhh910c5g46cwkxgflsgw5ab7lzymwll9hijyvwgnsw3h7i";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -149541,8 +149604,8 @@ self: {
     ({ mkDerivation, base, binary, bytestring, iproute }:
      mkDerivation {
        pname = "ip2proxy";
-       version = "3.0.0";
-       sha256 = "1hi1q0kiqqp96w29y9699s66rmyr7k0fp6s7z86ll9n3bmf0a4g4";
+       version = "3.1.0";
+       sha256 = "03naiwlxzfmym6ms03z0a9ap2x9f40aqlssyjbb37krhlmmnf0l8";
        libraryHaskellDepends = [ base binary bytestring iproute ];
        description = "IP2Proxy Haskell package for proxy detection";
        license = lib.licenses.mit;
@@ -152438,14 +152501,20 @@ self: {
      }) {};
 
   "jsaddle-hello" = callPackage
-    ({ mkDerivation, base, jsaddle, lens, text }:
+    ({ mkDerivation, base, Cabal, cabal-macosx, jsaddle, jsaddle-warp
+     , jsaddle-webkit2gtk, lens, text
+     }:
      mkDerivation {
        pname = "jsaddle-hello";
-       version = "2.0.0.0";
-       sha256 = "1bn0x8pgafdpf2ddxwinqriqdbdm9j5ca7ka3caqci1qb5sh86ll";
-       isLibrary = false;
+       version = "2.0.0.1";
+       sha256 = "08ciwhp1k5ff75z9pq5zyp1vfgzc9aryj4czz3hg57r922yhq5ph";
+       isLibrary = true;
        isExecutable = true;
-       executableHaskellDepends = [ base jsaddle lens text ];
+       setupHaskellDepends = [ base Cabal cabal-macosx ];
+       libraryHaskellDepends = [ base jsaddle lens text ];
+       executableHaskellDepends = [
+         base jsaddle-warp jsaddle-webkit2gtk lens text
+       ];
        description = "JSaddle Hello World, an example package";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
@@ -155499,6 +155568,108 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {inherit (pkgs) SDL_mixer;};
 
+  "keid-core" = callPackage
+    ({ mkDerivation, adjunctions, base, binary, bytestring
+     , cryptohash-md5, derive-storable, derive-storable-plugin
+     , distributive, foldl, geomancy, GLFW-b, ktx-codec
+     , neat-interpolation, optparse-applicative, optparse-simple
+     , resourcet, rio, rio-app, StateVar, tagged, template-haskell, text
+     , transformers, unagi-chan, unliftio, vector, vulkan, vulkan-utils
+     , VulkanMemoryAllocator, zstd
+     }:
+     mkDerivation {
+       pname = "keid-core";
+       version = "0.1.0.0";
+       sha256 = "05h4dp27sp23ihmr8hvflqr1bqyf590s607sxl9vc1k46k9hc179";
+       libraryHaskellDepends = [
+         adjunctions base binary bytestring cryptohash-md5 derive-storable
+         derive-storable-plugin distributive foldl geomancy GLFW-b ktx-codec
+         neat-interpolation optparse-applicative optparse-simple resourcet
+         rio rio-app StateVar tagged template-haskell text transformers
+         unagi-chan unliftio vector vulkan vulkan-utils
+         VulkanMemoryAllocator zstd
+       ];
+       description = "Core parts of Keid engine";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "keid-geometry" = callPackage
+    ({ mkDerivation, base, geomancy, keid-core, rio, rio-app, vulkan }:
+     mkDerivation {
+       pname = "keid-geometry";
+       version = "0.1.0.0";
+       sha256 = "1bhmxgbza1l9qr25g8ad31j70z1dmvsa5gd05fgpwha9liixahsc";
+       libraryHaskellDepends = [
+         base geomancy keid-core rio rio-app vulkan
+       ];
+       description = "Geometry primitives for Keid engine";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "keid-render-basic" = callPackage
+    ({ mkDerivation, aeson, base, binary, bytestring, cryptohash-md5
+     , derive-storable, derive-storable-plugin, foldl, geomancy, GLFW-b
+     , keid-core, neat-interpolation, resourcet, rio, rio-app, tagged
+     , text, unliftio, vector, vulkan, vulkan-utils
+     , VulkanMemoryAllocator, zstd
+     }:
+     mkDerivation {
+       pname = "keid-render-basic";
+       version = "0.1.0.0";
+       sha256 = "1rjvf5bxh3llfq1pd9hwy8laida9rhw4f49ca5hn69cnpchpngmy";
+       libraryHaskellDepends = [
+         aeson base binary bytestring cryptohash-md5 derive-storable
+         derive-storable-plugin foldl geomancy GLFW-b keid-core
+         neat-interpolation resourcet rio rio-app tagged text unliftio
+         vector vulkan vulkan-utils VulkanMemoryAllocator zstd
+       ];
+       description = "Basic rendering programs for Keid engine";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "keid-resource-gltf" = callPackage
+    ({ mkDerivation, base, bytestring, containers, derive-storable
+     , derive-storable-plugin, geomancy, gltf-codec, keid-core, rio
+     , rio-app, vulkan
+     }:
+     mkDerivation {
+       pname = "keid-resource-gltf";
+       version = "0.1.0.0";
+       sha256 = "1b5dbrlhb44xmgsv4l5mfwficlkjy3k36b01sha0j6yq1bv6mvhj";
+       libraryHaskellDepends = [
+         base bytestring containers derive-storable derive-storable-plugin
+         geomancy gltf-codec keid-core rio rio-app vulkan
+       ];
+       description = "GLTF loader for Keid engine";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "keid-ui-dearimgui" = callPackage
+    ({ mkDerivation, base, binary, bytestring, cryptohash-md5
+     , dear-imgui, derive-storable, derive-storable-plugin, foldl
+     , geomancy, GLFW-b, keid-core, neat-interpolation, resourcet, rio
+     , rio-app, tagged, unliftio, vector, vulkan, vulkan-utils
+     , VulkanMemoryAllocator, zstd
+     }:
+     mkDerivation {
+       pname = "keid-ui-dearimgui";
+       version = "0.1.0.0";
+       sha256 = "1650h7mbzmkpzs2wjvjh3zwmjkvbcg1h36yk6frlvvf80fhhihjc";
+       libraryHaskellDepends = [
+         base binary bytestring cryptohash-md5 dear-imgui derive-storable
+         derive-storable-plugin foldl geomancy GLFW-b keid-core
+         neat-interpolation resourcet rio rio-app tagged unliftio vector
+         vulkan vulkan-utils VulkanMemoryAllocator zstd
+       ];
+       description = "DearImGui elements for Keid engine";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "keiretsu" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, async, base, bytestring
      , conduit, conduit-extra, directory, filepath, hslogger, network
@@ -159350,6 +159521,8 @@ self: {
        pname = "large-hashable";
        version = "0.1.0.4";
        sha256 = "13k2k8rqbk40whzn4hpa92ypws2c1gh5fb4zh0diy5m0kxfk9hz9";
+       revision = "1";
+       editedCabalFile = "1xfl265ryvrjra2nsjvlcmwgilbnxhp8pwxy54wi1ada645nwgbr";
        libraryHaskellDepends = [
          aeson base base16-bytestring bytes bytestring containers scientific
          strict template-haskell text time transformers unordered-containers
@@ -161413,6 +161586,23 @@ self: {
        license = lib.licenses.bsd3;
      }) {inherit (pkgs) leveldb;};
 
+  "levenshtein" = callPackage
+    ({ mkDerivation, base, binary, data-default, deepseq, hashable
+     , hspec, hspec-discover, QuickCheck
+     }:
+     mkDerivation {
+       pname = "levenshtein";
+       version = "0.1.3.0";
+       sha256 = "1h9xygy65npn2a5pgngqzm39k9ms3krzn1in9h0adln6aq2kcgdx";
+       libraryHaskellDepends = [
+         base binary data-default deepseq hashable QuickCheck
+       ];
+       testHaskellDepends = [ base hspec QuickCheck ];
+       testToolDepends = [ hspec-discover ];
+       description = "Calculate the edit distance between two foldables";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "levmar" = callPackage
     ({ mkDerivation, base, bindings-levmar, hmatrix, vector }:
      mkDerivation {
@@ -161815,8 +162005,8 @@ self: {
        pname = "libfuse3";
        version = "0.1.2.0";
        sha256 = "0a59b4xag5vzisrnvf4v1zkdsdzky96h8w2mdj6cip3vgr196frb";
-       revision = "2";
-       editedCabalFile = "0fbf1zrw5i3jag6yrzxsxcx82dag7a3mw5rmz6ab6v3gm9w8m9b2";
+       revision = "3";
+       editedCabalFile = "1w59kyc8hvlmbq8n6i7nz8cg8mkzzhfizfpgcm17adxlh6a68ana";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -163366,8 +163556,8 @@ self: {
      }:
      mkDerivation {
        pname = "linear";
-       version = "1.21.5";
-       sha256 = "19pvz467wd8gss95qfi90xnd5fwm6dpdppr21g5n30x4m7niymn3";
+       version = "1.21.6";
+       sha256 = "0ax6prmc7b53w0lz5ddc40wrjj9bm7wldpp57283gx9hdf8qrb35";
        libraryHaskellDepends = [
          adjunctions base base-orphans binary bytes cereal containers
          deepseq distributive ghc-prim hashable indexed-traversable lens
@@ -163545,6 +163735,20 @@ self: {
        broken = true;
      }) {};
 
+  "linear-smc" = callPackage
+    ({ mkDerivation, array, base, constraints }:
+     mkDerivation {
+       pname = "linear-smc";
+       version = "1.0.0";
+       sha256 = "13b1gvpnpxvkswigd9cdq289m6d68vqddnq95p0i65vr2hhard8i";
+       libraryHaskellDepends = [ base constraints ];
+       testHaskellDepends = [ array base constraints ];
+       description = "Build SMC morphisms using linear types";
+       license = lib.licenses.lgpl3Plus;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "linear-socket" = callPackage
     ({ mkDerivation, base, bytestring, hspec, network, tasty-hspec }:
      mkDerivation {
@@ -164244,16 +164448,16 @@ self: {
      }) {};
 
   "lion" = callPackage
-    ({ mkDerivation, base, Cabal, clash-prelude, generic-monoid
+    ({ mkDerivation, base, clash-prelude, generic-monoid
      , ghc-typelits-extra, ghc-typelits-knownnat
      , ghc-typelits-natnormalise, ice40-prim, lens, mtl
      }:
      mkDerivation {
        pname = "lion";
-       version = "0.2.0.0";
-       sha256 = "0i0sr8jiaigpfhy4wnvblnrx5bl7l1vbh0pzjpdzks6r3g07h58f";
+       version = "0.3.0.0";
+       sha256 = "0yz5p4wvdl518nqc0vjjrmvl5danm9hp37gnar8ancf2nrfh9gr9";
        libraryHaskellDepends = [
-         base Cabal clash-prelude generic-monoid ghc-typelits-extra
+         base clash-prelude generic-monoid ghc-typelits-extra
          ghc-typelits-knownnat ghc-typelits-natnormalise ice40-prim lens mtl
        ];
        description = "RISC-V Core";
@@ -164301,14 +164505,18 @@ self: {
      }) {};
 
   "liquid-base" = callPackage
-    ({ mkDerivation, base, Cabal, liquid-ghc-prim, liquidhaskell }:
+    ({ mkDerivation, base, Cabal, integer-gmp, liquid-ghc-prim
+     , liquidhaskell
+     }:
      mkDerivation {
        pname = "liquid-base";
-       version = "4.14.1.0";
-       sha256 = "0w5pwksyf8fbr8v8j5mshcysxlbz4lxdvmayc3pj8cm8xcdrvzkm";
+       version = "4.15.0.0";
+       sha256 = "1f1lqdd65a3z0by0i3dr51hahcsq8s3vcc0xyxlvb5pp3vsz89vm";
        enableSeparateDataOutput = true;
        setupHaskellDepends = [ base Cabal liquidhaskell ];
-       libraryHaskellDepends = [ base liquid-ghc-prim liquidhaskell ];
+       libraryHaskellDepends = [
+         base integer-gmp liquid-ghc-prim liquidhaskell
+       ];
        description = "Drop-in base replacement for LiquidHaskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
@@ -164350,8 +164558,8 @@ self: {
     ({ mkDerivation, ansi-terminal, array, ascii-progress, async
      , attoparsec, base, binary, boxes, cereal, cmdargs, containers
      , deepseq, directory, fgl, filepath, git, hashable, intern, mtl
-     , nettools, ocaml, parallel, parsec, pretty, process, stm, syb
-     , tasty, tasty-ant-xml, tasty-hunit, tasty-rerun, text, text-format
+     , nettools, parallel, parsec, pretty, process, stm, syb, tasty
+     , tasty-ant-xml, tasty-hunit, tasty-rerun, text, text-format
      , transformers, unordered-containers, z3
      }:
      mkDerivation {
@@ -164368,7 +164576,6 @@ self: {
          text-format transformers unordered-containers
        ];
        executableHaskellDepends = [ base ];
-       executableSystemDepends = [ ocaml ];
        testHaskellDepends = [
          base containers directory filepath mtl process stm tasty
          tasty-ant-xml tasty-hunit tasty-rerun transformers
@@ -164378,14 +164585,14 @@ self: {
        description = "Predicate Abstraction-based Horn-Clause/Implication Constraint Solver";
        license = lib.licenses.bsd3;
      }) {inherit (pkgs) git; inherit (pkgs) nettools; 
-         inherit (pkgs) ocaml; inherit (pkgs) z3;};
+         inherit (pkgs) z3;};
 
   "liquid-ghc-prim" = callPackage
     ({ mkDerivation, base, Cabal, ghc-prim, liquidhaskell }:
      mkDerivation {
        pname = "liquid-ghc-prim";
-       version = "0.6.1";
-       sha256 = "1zpb0izg4y98xz87ivn6rs5nfshvawrxyb5hc8jzif2p17j0aqpb";
+       version = "0.7.0";
+       sha256 = "0pyhdg0fcvg0hm6m541hkr9spl3mghf9s4nkl62vi0hfwp1gd5bb";
        enableSeparateDataOutput = true;
        setupHaskellDepends = [ base Cabal liquidhaskell ];
        libraryHaskellDepends = [ ghc-prim liquidhaskell ];
@@ -164889,17 +165096,17 @@ self: {
 
   "list-zipper" = callPackage
     ({ mkDerivation, base, checkers, comonad, deriving-compat, hedgehog
-     , hedgehog-fn, lens, mtl, QuickCheck, semigroupoids, semigroups
-     , tasty, tasty-hedgehog, tasty-hunit, tasty-quickcheck
-     , transformers
+     , hedgehog-fn, lens, MonadRandom, mtl, QuickCheck, random-shuffle
+     , semigroupoids, semigroups, tasty, tasty-hedgehog, tasty-hunit
+     , tasty-quickcheck, transformers
      }:
      mkDerivation {
        pname = "list-zipper";
-       version = "0.0.10";
-       sha256 = "0vnylv1w7lkvlh7kmaz06gbq7fiz6dm44rl2s9r2nrnfslm4bjr3";
+       version = "0.0.11";
+       sha256 = "0p68plalb2cj8bmhwkkfd5vjcrxbmbbi7flwlhrf10j2fyl6qs1h";
        libraryHaskellDepends = [
-         base comonad deriving-compat lens mtl semigroupoids semigroups
-         transformers
+         base comonad deriving-compat lens MonadRandom mtl random-shuffle
+         semigroupoids semigroups transformers
        ];
        testHaskellDepends = [
          base checkers hedgehog hedgehog-fn lens mtl QuickCheck tasty
@@ -168039,8 +168246,8 @@ self: {
      }:
      mkDerivation {
        pname = "lumberjack";
-       version = "1.0.0.0";
-       sha256 = "1avv2qsncq10dfx3kqvd7q9dzwk1wmf39a61zw2cr8a8jpg89mfi";
+       version = "1.0.0.1";
+       sha256 = "0m0xyy42d2ibmnyhixf5hs65a2b1fhbjzx5j3430wcvzb4h71fdc";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -180362,6 +180569,8 @@ self: {
        ];
        description = "GraphQL support for Mu";
        license = lib.licenses.asl20;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "mu-grpc-client" = callPackage
@@ -184186,14 +184395,48 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "net-mqtt_0_8_0_2" = callPackage
+    ({ mkDerivation, async, attoparsec, attoparsec-binary, base, binary
+     , bytestring, checkers, conduit, conduit-extra, connection
+     , containers, deepseq, HUnit, network-conduit-tls, network-uri
+     , optparse-applicative, QuickCheck, stm, tasty, tasty-hunit
+     , tasty-quickcheck, text, websockets
+     }:
+     mkDerivation {
+       pname = "net-mqtt";
+       version = "0.8.0.2";
+       sha256 = "0rvsyb9msp1dkba941094d07apdinlda0hg4pb32jxs17wwnj0a7";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         async attoparsec attoparsec-binary base binary bytestring conduit
+         conduit-extra connection containers deepseq network-conduit-tls
+         network-uri QuickCheck stm text websockets
+       ];
+       executableHaskellDepends = [
+         async attoparsec attoparsec-binary base binary bytestring conduit
+         conduit-extra connection containers deepseq network-conduit-tls
+         network-uri optparse-applicative QuickCheck stm text websockets
+       ];
+       testHaskellDepends = [
+         async attoparsec attoparsec-binary base binary bytestring checkers
+         conduit conduit-extra connection containers deepseq HUnit
+         network-conduit-tls network-uri QuickCheck stm tasty tasty-hunit
+         tasty-quickcheck text websockets
+       ];
+       description = "An MQTT Protocol Implementation";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "net-mqtt-lens" = callPackage
     ({ mkDerivation, base, HUnit, lens, net-mqtt, tasty, tasty-hunit
      , tasty-quickcheck
      }:
      mkDerivation {
        pname = "net-mqtt-lens";
-       version = "0.1.0.0";
-       sha256 = "1g0vvay4fdvr2n0hxi4w4av39wd70jgi3yixfx98xxydilw1v110";
+       version = "0.1.1.0";
+       sha256 = "0rlib45yqlcij12pij8y690n3ajma35fyj8292b1vggk07dscycq";
        libraryHaskellDepends = [ base lens net-mqtt ];
        testHaskellDepends = [
          base HUnit lens net-mqtt tasty tasty-hunit tasty-quickcheck
@@ -184208,8 +184451,8 @@ self: {
      }:
      mkDerivation {
        pname = "net-mqtt-rpc";
-       version = "0.1.2.1";
-       sha256 = "01qkix666jh7yvm0gl195brjbi8yw06nnp86iksahvch2bnsz9ax";
+       version = "0.2.0.0";
+       sha256 = "1ql1hjvx41gspjbpr4rldrcn0xj483g2cphvxbb51m4x6n690lkn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -184221,6 +184464,8 @@ self: {
        ];
        description = "Make RPC calls via an MQTT broker";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "net-spider" = callPackage
@@ -187978,10 +188223,8 @@ self: {
      }:
      mkDerivation {
        pname = "nothunks";
-       version = "0.1.2";
-       sha256 = "0z9calmdw4bk4cdwrfq5nkxxks2f82q59i7kv6lnsgwyl4nqvg2y";
-       revision = "1";
-       editedCabalFile = "18q60yrm0fwb7zs4saxv4f3gk2av4dmbjag04kxzrllfy34h3y6z";
+       version = "0.1.3";
+       sha256 = "0lqfhnyxhmhajvsgmz5h428pb5zrdy9zvbc5inzhd83cv31yk4f1";
        libraryHaskellDepends = [
          base bytestring containers ghc-heap stm text time vector
        ];
@@ -188273,53 +188516,81 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "nri-kafka" = callPackage
+    ({ mkDerivation, aeson, async, base, bytestring, conduit
+     , containers, hw-kafka-client, nri-env-parser, nri-observability
+     , nri-prelude, safe-exceptions, stm, text, time, unix, uuid
+     }:
+     mkDerivation {
+       pname = "nri-kafka";
+       version = "0.1.0.0";
+       sha256 = "0ifdmli7arrlpmh1l4q974rv0bw3xirfk96xrahfab3zp36r4x3y";
+       libraryHaskellDepends = [
+         aeson async base bytestring conduit containers hw-kafka-client
+         nri-env-parser nri-observability nri-prelude safe-exceptions stm
+         text time unix uuid
+       ];
+       testHaskellDepends = [
+         aeson async base bytestring conduit containers hw-kafka-client
+         nri-env-parser nri-observability nri-prelude safe-exceptions stm
+         text time unix uuid
+       ];
+       description = "Functions for working with Kafka";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "nri-observability" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, async, base, bugsnag-hs
-     , bytestring, directory, hostname, http-client, http-client-tls
-     , nri-env-parser, nri-prelude, random, safe-exceptions, stm, text
-     , time, unordered-containers
+     , bytestring, conduit, directory, hostname, http-client
+     , http-client-tls, nri-env-parser, nri-prelude, random
+     , safe-exceptions, stm, text, time, unordered-containers, uuid
      }:
      mkDerivation {
        pname = "nri-observability";
-       version = "0.1.0.3";
-       sha256 = "0njpgc873rh09hkg7pnagkmmrd8nibdq4q1p44wa3n71xzwzy771";
+       version = "0.1.1.1";
+       sha256 = "15vlk59jl8wsxw48r72hdxnhhgk4p5xx598nbzp3ap88iqhm35d5";
        libraryHaskellDepends = [
-         aeson aeson-pretty async base bugsnag-hs bytestring directory
-         hostname http-client http-client-tls nri-env-parser nri-prelude
-         random safe-exceptions stm text time unordered-containers
+         aeson aeson-pretty async base bugsnag-hs bytestring conduit
+         directory hostname http-client http-client-tls nri-env-parser
+         nri-prelude random safe-exceptions stm text time
+         unordered-containers uuid
        ];
        testHaskellDepends = [
-         aeson aeson-pretty async base bugsnag-hs bytestring directory
-         hostname http-client http-client-tls nri-env-parser nri-prelude
-         random safe-exceptions stm text time unordered-containers
+         aeson aeson-pretty async base bugsnag-hs bytestring conduit
+         directory hostname http-client http-client-tls nri-env-parser
+         nri-prelude random safe-exceptions stm text time
+         unordered-containers uuid
        ];
        description = "Report log spans collected by nri-prelude";
        license = lib.licenses.bsd3;
      }) {};
 
-  "nri-observability_0_1_1_0" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, async, base, bugsnag-hs
-     , bytestring, directory, hostname, http-client, http-client-tls
-     , nri-env-parser, nri-prelude, random, safe-exceptions, stm, text
-     , time, unordered-containers, uuid
+  "nri-postgresql" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, filepath
+     , network, nri-env-parser, nri-observability, nri-prelude
+     , postgresql-typed, resource-pool, resourcet, safe-exceptions
+     , template-haskell, text, time
      }:
      mkDerivation {
-       pname = "nri-observability";
-       version = "0.1.1.0";
-       sha256 = "17zr60z6i07cnqs6x2r3lzd5hk0g8sh10hyckh84ynyjpdzksggd";
+       pname = "nri-postgresql";
+       version = "0.1.0.1";
+       sha256 = "1kl5wriqdshhc2fjaicj60hrwrw2c6y8vrq2pv4fagn0gxa78fvc";
        libraryHaskellDepends = [
-         aeson aeson-pretty async base bugsnag-hs bytestring directory
-         hostname http-client http-client-tls nri-env-parser nri-prelude
-         random safe-exceptions stm text time unordered-containers uuid
+         aeson attoparsec base bytestring filepath network nri-env-parser
+         nri-observability nri-prelude postgresql-typed resource-pool
+         resourcet safe-exceptions template-haskell text time
        ];
        testHaskellDepends = [
-         aeson aeson-pretty async base bugsnag-hs bytestring directory
-         hostname http-client http-client-tls nri-env-parser nri-prelude
-         random safe-exceptions stm text time unordered-containers uuid
+         aeson attoparsec base bytestring filepath network nri-env-parser
+         nri-observability nri-prelude postgresql-typed resource-pool
+         resourcet safe-exceptions template-haskell text time
        ];
-       description = "Report log spans collected by nri-prelude";
+       description = "Make queries against Postgresql";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "nri-prelude" = callPackage
@@ -190702,7 +190973,7 @@ self: {
        broken = true;
      }) {};
 
-  "opaleye" = callPackage
+  "opaleye_0_7_2_0" = callPackage
     ({ mkDerivation, aeson, base, base16-bytestring, bytestring
      , case-insensitive, containers, contravariant, dotenv, hspec
      , hspec-discover, multiset, postgresql-simple, pretty
@@ -190712,10 +190983,8 @@ self: {
      }:
      mkDerivation {
        pname = "opaleye";
-       version = "0.7.1.0";
-       sha256 = "0i4ndy9dd6jb4dzx8a5fv8jsmnmp7p1kx2qr012xj1qjq36sqpy6";
-       revision = "3";
-       editedCabalFile = "14y8nnng9307wb1mafzdr2fmn37cwyfpw9sby8lf9sj467rvghrq";
+       version = "0.7.2.0";
+       sha256 = "1qz34isgb5hl2ab5vij3zw1h3xwvl3a0d1k02n156xszibnkcgf1";
        libraryHaskellDepends = [
          aeson base base16-bytestring bytestring case-insensitive
          contravariant postgresql-simple pretty product-profunctors
@@ -190730,9 +190999,10 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "An SQL-generating DSL targeting PostgreSQL";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
-  "opaleye_0_7_2_0" = callPackage
+  "opaleye" = callPackage
     ({ mkDerivation, aeson, base, base16-bytestring, bytestring
      , case-insensitive, containers, contravariant, dotenv, hspec
      , hspec-discover, multiset, postgresql-simple, pretty
@@ -190742,8 +191012,8 @@ self: {
      }:
      mkDerivation {
        pname = "opaleye";
-       version = "0.7.2.0";
-       sha256 = "1qz34isgb5hl2ab5vij3zw1h3xwvl3a0d1k02n156xszibnkcgf1";
+       version = "0.7.3.0";
+       sha256 = "0ls8hk8iy47hna1y7kbakzv9ihp61lv605f1ap4di95fv03wy288";
        libraryHaskellDepends = [
          aeson base base16-bytestring bytestring case-insensitive
          contravariant postgresql-simple pretty product-profunctors
@@ -190758,7 +191028,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "An SQL-generating DSL targeting PostgreSQL";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "opaleye-classy" = callPackage
@@ -192713,8 +192982,8 @@ self: {
        pname = "optparse-generic";
        version = "1.4.4";
        sha256 = "0xy0kc8qximsiqpnc1fmh5zlsh6n26s7scrixin5bwnylg056j74";
-       revision = "1";
-       editedCabalFile = "14vbfbl2va3s2pa4qjyyny1i15s2iw9993ld5b0qsqdv1z6nfjz1";
+       revision = "2";
+       editedCabalFile = "172x8990wx4jhyb7yp9k18nd6q4sis8km09x2afr238siqviclrc";
        libraryHaskellDepends = [
          base bytestring Only optparse-applicative system-filepath text time
          transformers void
@@ -192741,24 +193010,6 @@ self: {
 
   "optparse-simple" = callPackage
     ({ mkDerivation, base, bytestring, directory, githash
-     , optparse-applicative, template-haskell, transformers
-     }:
-     mkDerivation {
-       pname = "optparse-simple";
-       version = "0.1.1.3";
-       sha256 = "1wymqhac2sngkka8w880gq6y1kk3xs0flbv4mrhfgzrplhax8r9k";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         base githash optparse-applicative template-haskell transformers
-       ];
-       testHaskellDepends = [ base bytestring directory ];
-       description = "Simple interface to optparse-applicative";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "optparse-simple_0_1_1_4" = callPackage
-    ({ mkDerivation, base, bytestring, directory, githash
      , optparse-applicative, template-haskell, th-compat, transformers
      }:
      mkDerivation {
@@ -192774,7 +193025,6 @@ self: {
        testHaskellDepends = [ base bytestring directory ];
        description = "Simple interface to optparse-applicative";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "optparse-text" = callPackage
@@ -194383,64 +194633,6 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc";
-       version = "2.14.0.2";
-       sha256 = "1jnckx29l6plg1zbkjdfj530djjl8zszwr54zsg0k0is4pcswa9f";
-       configureFlags = [ "-fhttps" "-f-trypandoc" ];
-       isLibrary = true;
-       isExecutable = true;
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [
-         aeson aeson-pretty array attoparsec base base64-bytestring binary
-         blaze-html blaze-markup bytestring case-insensitive citeproc
-         commonmark commonmark-extensions commonmark-pandoc connection
-         containers data-default deepseq directory doclayout doctemplates
-         emojis exceptions file-embed filepath Glob haddock-library hslua
-         hslua-module-path hslua-module-system hslua-module-text HsYAML HTTP
-         http-client http-client-tls http-types ipynb jira-wiki-markup
-         JuicyPixels mtl network network-uri pandoc-types parsec process
-         random safe scientific SHA skylighting skylighting-core split syb
-         tagsoup temporary texmath text text-conversions time
-         unicode-collation unicode-transforms unix unordered-containers xml
-         xml-conduit zip-archive zlib
-       ];
-       executableHaskellDepends = [ base ];
-       testHaskellDepends = [
-         base bytestring containers Diff directory doctemplates exceptions
-         filepath Glob hslua mtl pandoc-types process QuickCheck tasty
-         tasty-golden tasty-hunit tasty-lua tasty-quickcheck text time xml
-         zip-archive
-       ];
-       benchmarkHaskellDepends = [
-         base bytestring containers deepseq mtl tasty-bench text time
-       ];
-       postInstall = ''
-         mkdir -p $out/share/man/man1
-         mv "man/"*.1 $out/share/man/man1/
-       '';
-       description = "Conversion between markup formats";
-       license = lib.licenses.gpl2Plus;
-       maintainers = with lib.maintainers; [ peti ];
-     }) {};
-
-  "pandoc_2_14_0_3" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, array, attoparsec, base
-     , base64-bytestring, binary, blaze-html, blaze-markup, bytestring
-     , case-insensitive, citeproc, commonmark, commonmark-extensions
-     , commonmark-pandoc, connection, containers, data-default, deepseq
-     , Diff, directory, doclayout, doctemplates, emojis, exceptions
-     , file-embed, filepath, Glob, haddock-library, hslua
-     , hslua-module-path, hslua-module-system, hslua-module-text, HsYAML
-     , HTTP, http-client, http-client-tls, http-types, ipynb
-     , jira-wiki-markup, JuicyPixels, mtl, network, network-uri
-     , pandoc-types, parsec, process, QuickCheck, random, safe
-     , scientific, SHA, skylighting, skylighting-core, split, syb
-     , tagsoup, tasty, tasty-bench, tasty-golden, tasty-hunit, tasty-lua
-     , tasty-quickcheck, temporary, texmath, text, text-conversions
-     , time, unicode-collation, unicode-transforms, unix
-     , unordered-containers, xml, xml-conduit, zip-archive, zlib
-     }:
-     mkDerivation {
-       pname = "pandoc";
        version = "2.14.0.3";
        sha256 = "1pgd6125mrvzj2faxbsfmackb7kchzcr6bjkrwqbyn9hzxdzbqw2";
        configureFlags = [ "-fhttps" "-f-trypandoc" ];
@@ -194477,7 +194669,6 @@ self: {
        '';
        description = "Conversion between markup formats";
        license = lib.licenses.gpl2Plus;
-       hydraPlatforms = lib.platforms.none;
        maintainers = with lib.maintainers; [ peti ];
      }) {};
 
@@ -195208,8 +195399,8 @@ self: {
      }:
      mkDerivation {
        pname = "pantry";
-       version = "0.5.2.2";
-       sha256 = "05ykb6jn19jiakrn6mdcz3gyc6v6hkg3r8drwxncf04syz0l60mm";
+       version = "0.5.2.3";
+       sha256 = "17r9fgs83dp0s9wq14q5hvf5vnl8d7cg9p9dnbixgsysq6g6d29g";
        libraryHaskellDepends = [
          aeson ansi-terminal base bytestring Cabal casa-client casa-types
          conduit conduit-extra containers cryptonite cryptonite-conduit
@@ -196678,14 +196869,27 @@ self: {
      }) {};
 
   "parsley" = callPackage
-    ({ mkDerivation, base, parsley-core, template-haskell, text }:
+    ({ mkDerivation, array, attoparsec, base, bytestring, containers
+     , criterion, deepseq, happy, megaparsec, mtl, parsec, parsley-core
+     , parsley-garnish, tasty, tasty-hunit, tasty-quickcheck
+     , template-haskell, text, th-test-utils
+     }:
      mkDerivation {
        pname = "parsley";
-       version = "1.0.0.0";
-       sha256 = "08g89wgynvr58xypcpvd552v7h16cb1rbfggiyr8dj49bmgm0hwx";
+       version = "1.0.0.1";
+       sha256 = "0z4w6hwa0yj34xsqp63kqy3wkk51k343fv8ijbk0s4w4hdx7d7jb";
        libraryHaskellDepends = [
          base parsley-core template-haskell text
        ];
+       testHaskellDepends = [
+         base deepseq parsley-garnish tasty tasty-hunit tasty-quickcheck
+         template-haskell th-test-utils
+       ];
+       benchmarkHaskellDepends = [
+         array attoparsec base bytestring containers criterion deepseq
+         megaparsec mtl parsec parsley-garnish template-haskell text
+       ];
+       benchmarkToolDepends = [ happy ];
        description = "A fast parser combinator library backed by Typed Template Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
@@ -196699,8 +196903,8 @@ self: {
      }:
      mkDerivation {
        pname = "parsley-core";
-       version = "1.0.0.0";
-       sha256 = "0vcvxnmnml5jsjicx6rhskkb30ggz95wjlfcj1fzxc9si9vlkh4j";
+       version = "1.3.0.0";
+       sha256 = "0qx5q7a9hkj9swpwlxh24c19pf9i6yvlmp44xiwshflz4cf1n8dq";
        libraryHaskellDepends = [
          array base bytestring containers dependent-map dependent-sum
          ghc-prim hashable mtl pretty-terminal template-haskell text
@@ -198053,6 +198257,30 @@ self: {
        license = lib.licenses.asl20;
      }) {};
 
+  "pcre2_2_0_0" = callPackage
+    ({ mkDerivation, base, containers, criterion, hspec
+     , microlens-platform, mtl, pcre-light, regex-pcre-builtin
+     , template-haskell, text
+     }:
+     mkDerivation {
+       pname = "pcre2";
+       version = "2.0.0";
+       sha256 = "1jkyc2s3x5n7zrw9b78gk8jj262xfmg8cva2gr7mlzzl0hd9r11y";
+       libraryHaskellDepends = [
+         base containers mtl template-haskell text
+       ];
+       testHaskellDepends = [
+         base containers hspec microlens-platform mtl template-haskell text
+       ];
+       benchmarkHaskellDepends = [
+         base containers criterion microlens-platform mtl pcre-light
+         regex-pcre-builtin template-haskell text
+       ];
+       description = "Regular expressions via the PCRE2 C library (included)";
+       license = lib.licenses.asl20;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "pdf-slave" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, bytestring
      , containers, directory, exceptions, haskintex, HaTeX
@@ -199272,8 +199500,8 @@ self: {
      }:
      mkDerivation {
        pname = "persistent";
-       version = "2.13.0.2";
-       sha256 = "1fn3hjn3pxxnawvdif691vmxahnmal5ivr5rll0f26ia7rjqrnn2";
+       version = "2.13.1.1";
+       sha256 = "0sg51psmpjsz9hiva0gn3xcnd74a6dwbzx1bzi918idcfkpbn496";
        libraryHaskellDepends = [
          aeson attoparsec base base64-bytestring blaze-html bytestring
          conduit containers fast-logger http-api-data lift-type monad-logger
@@ -199297,43 +199525,6 @@ self: {
        maintainers = with lib.maintainers; [ psibi ];
      }) {};
 
-  "persistent_2_13_0_4" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, base64-bytestring
-     , blaze-html, bytestring, conduit, containers, criterion, deepseq
-     , fast-logger, file-embed, hspec, http-api-data, lift-type
-     , monad-logger, mtl, path-pieces, QuickCheck, quickcheck-instances
-     , resource-pool, resourcet, scientific, shakespeare, silently
-     , template-haskell, text, th-lift-instances, time, transformers
-     , unliftio, unliftio-core, unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "persistent";
-       version = "2.13.0.4";
-       sha256 = "04q4x50p2jpsp7fzrb61rs225hnrl8n1khmdvf0z6inkwq462w6a";
-       libraryHaskellDepends = [
-         aeson attoparsec base base64-bytestring blaze-html bytestring
-         conduit containers fast-logger http-api-data lift-type monad-logger
-         mtl path-pieces resource-pool resourcet scientific silently
-         template-haskell text th-lift-instances time transformers unliftio
-         unliftio-core unordered-containers vector
-       ];
-       testHaskellDepends = [
-         aeson attoparsec base base64-bytestring blaze-html bytestring
-         conduit containers fast-logger hspec http-api-data monad-logger mtl
-         path-pieces QuickCheck quickcheck-instances resource-pool resourcet
-         scientific shakespeare silently template-haskell text
-         th-lift-instances time transformers unliftio unliftio-core
-         unordered-containers vector
-       ];
-       benchmarkHaskellDepends = [
-         base criterion deepseq file-embed template-haskell text
-       ];
-       description = "Type-safe, multi-backend data serialization";
-       license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       maintainers = with lib.maintainers; [ psibi ];
-     }) {};
-
   "persistent-audit" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring
      , getopt-generics, hashable, hspec, mongoDB, persistent
@@ -199404,8 +199595,8 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-discover";
-       version = "0.1.0.1";
-       sha256 = "1vncymwn132x3mf468r94r6wa6890zgmvjhq64gr5bhzh3mnah6c";
+       version = "0.1.0.4";
+       sha256 = "0p5nfxs885siy0a629iwqxksz3704zyinfhl55n74crxad3kgacj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -199433,10 +199624,8 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-documentation";
-       version = "0.1.0.2";
-       sha256 = "0ys864vjzl97c9qv0gg5q9zviammrfvm0schvh7ckr9pdg062z17";
-       revision = "1";
-       editedCabalFile = "0pzgmwqjyzpql7d6bk9xkzkjvm21giq7f420y4fqq4wli3g2cwmx";
+       version = "0.1.0.3";
+       sha256 = "03p3ppjrn9j76bwgq7n921c2h0xkzsf9ish6nx6bhxdggyq3bfwy";
        libraryHaskellDepends = [
          base containers mtl persistent template-haskell text
        ];
@@ -199741,39 +199930,6 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-postgresql";
-       version = "2.13.0.2";
-       sha256 = "1cbrwzk2s3xrdxpas64slk1habn38xspdg09xj2yazszkmr31hrh";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson attoparsec base blaze-builder bytestring conduit containers
-         monad-logger mtl persistent postgresql-libpq postgresql-simple
-         resource-pool resourcet string-conversions text time transformers
-         unliftio-core
-       ];
-       testHaskellDepends = [
-         aeson base bytestring containers fast-logger hspec
-         hspec-expectations hspec-expectations-lifted http-api-data HUnit
-         monad-logger path-pieces persistent persistent-qq persistent-test
-         QuickCheck quickcheck-instances resourcet text time transformers
-         unliftio unliftio-core unordered-containers vector
-       ];
-       description = "Backend for the persistent library using postgresql";
-       license = lib.licenses.mit;
-     }) {};
-
-  "persistent-postgresql_2_13_0_3" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, blaze-builder, bytestring
-     , conduit, containers, fast-logger, hspec, hspec-expectations
-     , hspec-expectations-lifted, http-api-data, HUnit, monad-logger
-     , mtl, path-pieces, persistent, persistent-qq, persistent-test
-     , postgresql-libpq, postgresql-simple, QuickCheck
-     , quickcheck-instances, resource-pool, resourcet
-     , string-conversions, text, time, transformers, unliftio
-     , unliftio-core, unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "persistent-postgresql";
        version = "2.13.0.3";
        sha256 = "06f5yyv8bj3m4zpjwr1k66hkmh1gfy624rnq2g12sjrpz8nrax6j";
        isLibrary = true;
@@ -199793,7 +199949,6 @@ self: {
        ];
        description = "Backend for the persistent library using postgresql";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "persistent-protobuf" = callPackage
@@ -200336,14 +200491,14 @@ self: {
      }) {};
 
   "pg-transact" = callPackage
-    ({ mkDerivation, async, base, bytestring, exceptions, hspec
-     , hspec-expectations-lifted, monad-control, postgresql-libpq
-     , postgresql-simple, tmp-postgres, transformers
+    ({ mkDerivation, async, base, bytestring, criterion, deepseq
+     , exceptions, hspec, hspec-expectations-lifted, monad-control
+     , postgresql-libpq, postgresql-simple, tmp-postgres, transformers
      }:
      mkDerivation {
        pname = "pg-transact";
-       version = "0.3.1.1";
-       sha256 = "1z101hbfan8aidq7lcnzzni4b7ji8sbbqx1yar6ykf6wmzmn2pcd";
+       version = "0.3.2.0";
+       sha256 = "0ch44w9hdvylpcnz1d89v75m4y0rjv1h572bcmcx2n77zs19w45g";
        libraryHaskellDepends = [
          base bytestring exceptions monad-control postgresql-simple
          transformers
@@ -200352,6 +200507,9 @@ self: {
          async base bytestring exceptions hspec hspec-expectations-lifted
          postgresql-libpq postgresql-simple tmp-postgres
        ];
+       benchmarkHaskellDepends = [
+         base criterion deepseq postgresql-simple tmp-postgres
+       ];
        description = "A postgresql-simple transaction monad";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
@@ -200947,28 +201105,30 @@ self: {
      }) {};
 
   "phonetic-languages-simplified-generalized-examples-array" = callPackage
-    ({ mkDerivation, base, heaps, mmsyn2-array, parallel
+    ({ mkDerivation, base, heaps, mmsyn2-array, mmsyn3, parallel
      , phonetic-languages-constraints-array
      , phonetic-languages-filters-array
      , phonetic-languages-permutations-array
      , phonetic-languages-phonetics-basics, phonetic-languages-plus
      , phonetic-languages-simplified-base
      , phonetic-languages-simplified-generalized-examples-common
-     , phonetic-languages-simplified-generalized-properties-array, subG
+     , phonetic-languages-simplified-generalized-properties-array
+     , process, subG
      }:
      mkDerivation {
        pname = "phonetic-languages-simplified-generalized-examples-array";
-       version = "0.3.0.0";
-       sha256 = "15k2nij8rpf1yvm5kjgkrvx1y4zlfskxfdxjbjirmaidamr2ha6d";
+       version = "0.4.1.1";
+       sha256 = "1xk4vj7bj93s8r9l09z2w9h0sbkd73qcv441jisa04m0s6hlhgby";
        libraryHaskellDepends = [
-         base heaps mmsyn2-array parallel
+         base heaps mmsyn2-array mmsyn3 parallel
          phonetic-languages-constraints-array
          phonetic-languages-filters-array
          phonetic-languages-permutations-array
          phonetic-languages-phonetics-basics phonetic-languages-plus
          phonetic-languages-simplified-base
          phonetic-languages-simplified-generalized-examples-common
-         phonetic-languages-simplified-generalized-properties-array subG
+         phonetic-languages-simplified-generalized-properties-array process
+         subG
        ];
        description = "Helps to create texts with the given phonetic properties (e. g. poetic).";
        license = lib.licenses.mit;
@@ -204876,8 +205036,8 @@ self: {
      }:
      mkDerivation {
        pname = "polysemy-chronos";
-       version = "0.1.2.2";
-       sha256 = "15vi5x099r38jk3lnynpi8my4fp06fkzwvrxgpvxdfp9ilg2al6h";
+       version = "0.1.2.3";
+       sha256 = "0awsnl207i1fi7qv4cqhfa22r2diq7js6s06xgwgxbzd0wmq2j9g";
        libraryHaskellDepends = [
          aeson base chronos containers polysemy polysemy-plugin
          polysemy-time relude text
@@ -204886,7 +205046,7 @@ self: {
          aeson base chronos containers hedgehog polysemy polysemy-plugin
          polysemy-test polysemy-time relude tasty tasty-hedgehog text
        ];
-       description = "Polysemy effect for chronos";
+       description = "Polysemy-time Interpreters for Chronos";
        license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
      }) {};
@@ -204993,6 +205153,27 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "polysemy-keyed-state" = callPackage
+    ({ mkDerivation, base, constraints, constraints-extras, hspec
+     , polysemy, QuickCheck, some, StateVar, trivial-constraint
+     }:
+     mkDerivation {
+       pname = "polysemy-keyed-state";
+       version = "0.1";
+       sha256 = "00jcb0rd7s8yvflqx6xjas10lgh0dmg4ywb18cbkm8xd0pdn0d2j";
+       libraryHaskellDepends = [
+         base constraints constraints-extras polysemy some StateVar
+         trivial-constraint
+       ];
+       testHaskellDepends = [
+         base constraints constraints-extras hspec polysemy QuickCheck some
+         StateVar trivial-constraint
+       ];
+       description = "Effect for a set of stateful values indexed by a type of keys";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "polysemy-kvstore-jsonfile" = callPackage
     ({ mkDerivation, aeson, base, containers, exceptions, extra, path
      , polysemy, polysemy-zoo, unliftio-path
@@ -205199,14 +205380,26 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "polysemy-req" = callPackage
+    ({ mkDerivation, base, polysemy, req }:
+     mkDerivation {
+       pname = "polysemy-req";
+       version = "0.1.0";
+       sha256 = "1vji169hk7an0dal8chk3h3jb6yxjh037arp15zkc8y5m0r5wbnm";
+       libraryHaskellDepends = [ base polysemy req ];
+       description = "Polysemy effect for req";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "polysemy-resume" = callPackage
     ({ mkDerivation, base, hedgehog, polysemy, polysemy-plugin
      , polysemy-test, relude, tasty, tasty-hedgehog, text, transformers
      }:
      mkDerivation {
        pname = "polysemy-resume";
-       version = "0.1.0.2";
-       sha256 = "0s6ayc1qlpvpasysf9z5jcy3gfqc9agg76xxlahpjn1ysaswbgmq";
+       version = "0.1.0.3";
+       sha256 = "02nlhkhzjr5zg8q4ff0an1vxm5vxwkq1d83j4980xkq20582sfvl";
        libraryHaskellDepends = [ base polysemy relude transformers ];
        testHaskellDepends = [
          base hedgehog polysemy polysemy-plugin polysemy-test relude tasty
@@ -205224,8 +205417,8 @@ self: {
      }:
      mkDerivation {
        pname = "polysemy-test";
-       version = "0.3.1.3";
-       sha256 = "0m6zczyw4shgrpfyz23m9n3626mxcfqj0sdfcrnlkz7n0k0k0470";
+       version = "0.3.1.4";
+       sha256 = "0cysny71f92d4ncx0mjglc3wjc7yna2x6113rq8kk4s5z0zsqj7z";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          base containers either hedgehog path path-io polysemy
@@ -205250,8 +205443,8 @@ self: {
      }:
      mkDerivation {
        pname = "polysemy-time";
-       version = "0.1.2.2";
-       sha256 = "1q08dwyp4v28s31gfq2ha8irfhczxzhg9c96wps6iz5xl7cir9va";
+       version = "0.1.2.3";
+       sha256 = "0hxh9i3rw434igzx41nzbgglnvgvvgrxbgwz7cb25srj4911n69j";
        libraryHaskellDepends = [
          aeson base composition containers data-default either polysemy
          relude string-interpolate template-haskell text time torsor
@@ -205261,7 +205454,7 @@ self: {
          polysemy polysemy-plugin polysemy-test relude string-interpolate
          tasty tasty-hedgehog template-haskell text time torsor
        ];
-       description = "Polysemy effect for time";
+       description = "Polysemy Effect for Time";
        license = "BSD-2-Clause-Patent";
        hydraPlatforms = lib.platforms.none;
      }) {};
@@ -206099,16 +206292,17 @@ self: {
      }) {inherit (pkgs) acl;};
 
   "posix-api" = callPackage
-    ({ mkDerivation, base, byteslice, primitive, primitive-addr
-     , primitive-offset, primitive-unlifted, systemd, tasty, tasty-hunit
+    ({ mkDerivation, base, byte-order, byteslice, primitive
+     , primitive-addr, primitive-offset, primitive-unlifted, run-st
+     , systemd, tasty, tasty-hunit
      }:
      mkDerivation {
        pname = "posix-api";
-       version = "0.3.4.0";
-       sha256 = "163bblw200jr2vghc7i9g9xls6vhihayxvb4am4lr3j047ifqbmb";
+       version = "0.3.5.0";
+       sha256 = "0ygww5fcikalyqzliqdrcd4n4g8plhr01gz5p6zd0c5f1y9jgw7x";
        libraryHaskellDepends = [
-         base byteslice primitive primitive-addr primitive-offset
-         primitive-unlifted
+         base byte-order byteslice primitive primitive-addr primitive-offset
+         primitive-unlifted run-st
        ];
        librarySystemDepends = [ systemd ];
        testHaskellDepends = [
@@ -206359,32 +206553,32 @@ self: {
      }) {};
 
   "postgres-websockets" = callPackage
-    ({ mkDerivation, aeson, alarmclock, async, auto-update, base
-     , base64-bytestring, bytestring, contravariant, either, envparse
-     , hasql, hasql-notifications, hasql-pool, hspec, hspec-wai
-     , hspec-wai-json, http-types, jose, lens, lens-aeson, network
-     , postgresql-libpq, protolude, retry, stm, stm-containers
-     , stringsearch, text, time, unordered-containers, wai
-     , wai-app-static, wai-extra, wai-websockets, warp, websockets
+    ({ mkDerivation, aeson, alarmclock, auto-update, base
+     , base64-bytestring, bytestring, either, envparse, hasql
+     , hasql-notifications, hasql-pool, hspec, http-types, jose, lens
+     , lens-aeson, network, postgresql-libpq, protolude, retry, stm
+     , stm-containers, text, time, unordered-containers, wai
+     , wai-app-static, wai-extra, wai-websockets, warp, warp-tls
+     , websockets
      }:
      mkDerivation {
        pname = "postgres-websockets";
-       version = "0.10.0.0";
-       sha256 = "1rhpv9dams24iy9wpj0v69blr2109xprz7yj1y0ng9cw3bnsrldm";
+       version = "0.11.1.0";
+       sha256 = "1q7pgklgc0d93hwacv3akx1vi29hvanj7lpyl29nzzwwk2y2pird";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson alarmclock async auto-update base base64-bytestring
-         bytestring contravariant either envparse hasql hasql-notifications
-         hasql-pool http-types jose lens postgresql-libpq protolude retry
-         stm stm-containers stringsearch text time unordered-containers wai
-         wai-app-static wai-extra wai-websockets warp websockets
+         aeson alarmclock auto-update base base64-bytestring bytestring
+         either envparse hasql hasql-notifications hasql-pool http-types
+         jose lens postgresql-libpq protolude retry stm stm-containers text
+         time unordered-containers wai wai-app-static wai-extra
+         wai-websockets warp warp-tls websockets
        ];
        executableHaskellDepends = [ base protolude ];
        testHaskellDepends = [
-         aeson base hasql hasql-notifications hasql-pool hspec hspec-wai
-         hspec-wai-json http-types lens lens-aeson network protolude stm
-         time unordered-containers wai-extra websockets
+         aeson base hasql hasql-notifications hasql-pool hspec http-types
+         lens lens-aeson network protolude stm time unordered-containers
+         wai-extra websockets
        ];
        description = "Middleware to map LISTEN/NOTIFY messages to Websockets";
        license = lib.licenses.bsd3;
@@ -206708,6 +206902,27 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "postgresql-replicant" = callPackage
+    ({ mkDerivation, aeson, async, attoparsec, base, binary, bits
+     , bytestring, cereal, containers, hspec, keep-alive
+     , postgresql-libpq, scientific, stm, text, time
+     }:
+     mkDerivation {
+       pname = "postgresql-replicant";
+       version = "0.1.0.1";
+       sha256 = "1jlmbi5inwwpwyvrfg13b91fv642xcahfv8nhi0y6dqrvfj69h0q";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson async attoparsec base bits bytestring cereal containers
+         keep-alive postgresql-libpq scientific stm text time
+       ];
+       executableHaskellDepends = [ base postgresql-libpq ];
+       testHaskellDepends = [ base binary bytestring cereal hspec ];
+       description = "PostgreSQL logical streaming replication library";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "postgresql-schema" = callPackage
     ({ mkDerivation, base, basic-prelude, optparse-applicative
      , postgresql-simple, shelly, text, time
@@ -206944,19 +207159,18 @@ self: {
      }) {};
 
   "postgresql-syntax" = callPackage
-    ({ mkDerivation, base, bytestring, case-insensitive, fast-builder
-     , hashable, headed-megaparsec, hedgehog, megaparsec
-     , parser-combinators, QuickCheck, quickcheck-instances, rerebase
-     , tasty, tasty-hunit, tasty-quickcheck, text, text-builder
-     , unordered-containers
+    ({ mkDerivation, base, bytestring, case-insensitive, hashable
+     , headed-megaparsec, hedgehog, megaparsec, parser-combinators
+     , QuickCheck, quickcheck-instances, rerebase, tasty, tasty-hunit
+     , tasty-quickcheck, text, text-builder, unordered-containers
      }:
      mkDerivation {
        pname = "postgresql-syntax";
-       version = "0.3.0.3";
-       sha256 = "0zylrzd8dfks1jdx1yq1i2n2a7sxa8b04h6km9lx3bdpbpv84y7i";
+       version = "0.4";
+       sha256 = "133p9w35q7ynb15i97k9ci4w14vp5117v3hmgm4ys3jj07apjyxd";
        libraryHaskellDepends = [
-         base bytestring case-insensitive fast-builder hashable
-         headed-megaparsec megaparsec parser-combinators text text-builder
+         base bytestring case-insensitive hashable headed-megaparsec
+         megaparsec parser-combinators text text-builder
          unordered-containers
        ];
        testHaskellDepends = [
@@ -209080,6 +209294,29 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "primitive-extras_0_10_1_1" = callPackage
+    ({ mkDerivation, base, bytestring, cereal, deferred-folds, focus
+     , foldl, list-t, primitive, primitive-unlifted, profunctors
+     , QuickCheck, quickcheck-instances, rerebase, tasty, tasty-hunit
+     , tasty-quickcheck, vector
+     }:
+     mkDerivation {
+       pname = "primitive-extras";
+       version = "0.10.1.1";
+       sha256 = "117bgh5bafzvamkpl4g97c8vprs4lndl5pjc3nl6wqj7jbrgpw25";
+       libraryHaskellDepends = [
+         base bytestring cereal deferred-folds focus foldl list-t primitive
+         primitive-unlifted profunctors vector
+       ];
+       testHaskellDepends = [
+         cereal deferred-folds focus primitive QuickCheck
+         quickcheck-instances rerebase tasty tasty-hunit tasty-quickcheck
+       ];
+       description = "Extras for the \"primitive\" library";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "primitive-foreign" = callPackage
     ({ mkDerivation, base, primitive, QuickCheck }:
      mkDerivation {
@@ -209554,16 +209791,14 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "process_1_6_11_0" = callPackage
+  "process_1_6_12_0" = callPackage
     ({ mkDerivation, base, bytestring, deepseq, directory, filepath
      , unix
      }:
      mkDerivation {
        pname = "process";
-       version = "1.6.11.0";
-       sha256 = "0nv8c2hnx1l6xls6b61l8sm7j250qfbj1fjj5n6m15ppk9f0d9jd";
-       revision = "2";
-       editedCabalFile = "1yz98g78syad217c816q5rrdb7w93lpsp3pcc4djsy050w9ji56n";
+       version = "1.6.12.0";
+       sha256 = "1zw551zrnq70ip9dsc564aw1zf90l48jf59rxhjgx4d00ngs165x";
        libraryHaskellDepends = [ base deepseq directory filepath unix ];
        testHaskellDepends = [ base bytestring directory ];
        description = "Process libraries";
@@ -210853,8 +211088,8 @@ self: {
      }:
      mkDerivation {
        pname = "proteaaudio";
-       version = "0.9.0";
-       sha256 = "0y1vvcy0rdiraphi6c9i1xsw5zwdqsw0id40xhgvk37va36ryl3p";
+       version = "0.9.1";
+       sha256 = "1l2rxhs5v8mi77qw98849m0w2swwxvg5wm6d4j123sa29riyb70a";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring ];
@@ -210872,8 +211107,8 @@ self: {
     ({ mkDerivation, base, bytestring, c2hs, SDL2 }:
      mkDerivation {
        pname = "proteaaudio-sdl";
-       version = "0.9.0";
-       sha256 = "0ksdb89phsdjjq5q043wvqi3swibfd1840180jg3m8wj3zcy5g3k";
+       version = "0.9.1";
+       sha256 = "1qgb7zj7sj8sc3b7fwfq51s5m997dqgx74dmmkfam2s4v46fhqr4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring ];
@@ -212350,8 +212585,8 @@ self: {
      }:
      mkDerivation {
        pname = "purescript";
-       version = "0.14.2";
-       sha256 = "12gk4c311v39gh0kp5s97gia2xrglzzkpnhisbpxc4h7nd9dqf5m";
+       version = "0.14.3";
+       sha256 = "0g0zly5wh75w8p09zq6sy25phbb432vb0allmcbx34vd84nm70ia";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -212464,8 +212699,8 @@ self: {
      }:
      mkDerivation {
        pname = "purescript-cst";
-       version = "0.2.0.0";
-       sha256 = "0spsl9aq7hg2pkqawwjirgdr8ypzpb9amf2pznxmn6wm9ppaq73s";
+       version = "0.3.0.0";
+       sha256 = "15gf3fxpqngnx75w7g8nyvmj452y3x9p8ymwwk4mkzql0zps2fy2";
        libraryHaskellDepends = [
          aeson array base base-compat bytestring containers deepseq dlist
          filepath microlens mtl protolude scientific semigroups serialise
@@ -212600,8 +212835,8 @@ self: {
      }:
      mkDerivation {
        pname = "push-notify-apn";
-       version = "0.2.0.1";
-       sha256 = "1p33nwazxk4kk52vw6i8rrsgy8i3bzn0klp56bv6nj1751z3mzbj";
+       version = "0.2.0.2";
+       sha256 = "194xn4wrnpdcyc76b9qplyfv15qgrqb60x41j43lwskh8yvr57sx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -218090,21 +218325,21 @@ self: {
 
   "recover-rtti" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, ghc-heap
-     , ghc-prim, mtl, QuickCheck, sop-core, stm, tasty, tasty-quickcheck
-     , text, unordered-containers, vector
+     , ghc-prim, mtl, primitive, QuickCheck, sop-core, stm, tasty
+     , tasty-quickcheck, text, unordered-containers, vector
      }:
      mkDerivation {
        pname = "recover-rtti";
-       version = "0.3.0.0";
-       sha256 = "0zk08jzsww8sv3q9h1mnc6a8ckqlf3lvc5cxwfbni7rb9giz6zia";
+       version = "0.4.0.0";
+       sha256 = "15nyshkbl7yh9h19ia3hgyciq2mn11nvsp258pb3f8d8xjjyk820";
        libraryHaskellDepends = [
-         aeson base bytestring containers ghc-heap mtl sop-core stm text
-         unordered-containers vector
+         aeson base bytestring containers ghc-heap mtl primitive sop-core
+         stm text unordered-containers vector
        ];
        testHaskellDepends = [
-         aeson base bytestring containers ghc-heap ghc-prim mtl QuickCheck
-         sop-core stm tasty tasty-quickcheck text unordered-containers
-         vector
+         aeson base bytestring containers ghc-heap ghc-prim mtl primitive
+         QuickCheck sop-core stm tasty tasty-quickcheck text
+         unordered-containers vector
        ];
        description = "Recover run-time type information from the GHC heap";
        license = lib.licenses.bsd3;
@@ -218114,8 +218349,8 @@ self: {
     ({ mkDerivation, base, composition-prelude }:
      mkDerivation {
        pname = "recursion";
-       version = "2.2.4.3";
-       sha256 = "0k5as7i7xyas6qhpr7wpnnf0rc93nsh4s9gsxdsk72xkwd86chkj";
+       version = "2.2.4.4";
+       sha256 = "09zssx2yqz22hm678ik5zz2zkanzfazcyfqmwlxc9mk6gxxdy6ia";
        libraryHaskellDepends = [ base composition-prelude ];
        description = "A recursion schemes library for Haskell";
        license = lib.licenses.bsd3;
@@ -220727,6 +220962,8 @@ self: {
        pname = "rel8";
        version = "1.0.0.1";
        sha256 = "1kwvib3chqw5xrz6v7z0jy75mgyhqqb755xzn02zz2hvjwfcqc6v";
+       revision = "1";
+       editedCabalFile = "04lq11nxq5n6l6hlgqi78xbfknvx7s5mycwzcp2a0p99kcn3x9a4";
        libraryHaskellDepends = [
          aeson base bytestring case-insensitive contravariant hasql opaleye
          profunctors scientific semialign semigroupoids text these time
@@ -221996,6 +222233,8 @@ self: {
        pname = "req";
        version = "3.9.1";
        sha256 = "0468ah4142jrqp5l3pw4izrw6f6kznisan888b30jhif4c6xncr0";
+       revision = "1";
+       editedCabalFile = "0g2g8l1nhmqxgk2ylvavv7rw6bq73d3awd21l438mzzljqj4kvh8";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson authenticate-oauth base blaze-builder bytestring
@@ -222353,8 +222592,8 @@ self: {
        pname = "resolv";
        version = "0.1.2.0";
        sha256 = "0wa6wsh6i52q4ah2z0hgzlks325kigch4yniz0y15nw4skxbm8l1";
-       revision = "2";
-       editedCabalFile = "0nn5dalsl9sradkpv4awsb90v8cvcqvw4hd58yvpp4vpfybnk90h";
+       revision = "3";
+       editedCabalFile = "0af5dsdyn04i76d012xhhfkkml10bqzl6q2yivkhf8rlvh1fiii5";
        libraryHaskellDepends = [
          base base16-bytestring binary bytestring containers
        ];
@@ -223004,6 +223243,27 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "retry_0_9_0_0" = callPackage
+    ({ mkDerivation, base, exceptions, ghc-prim, hedgehog, HUnit, mtl
+     , random, stm, tasty, tasty-hedgehog, tasty-hunit, time
+     , transformers
+     }:
+     mkDerivation {
+       pname = "retry";
+       version = "0.9.0.0";
+       sha256 = "0n304r6vyx238558z62kz7nii8y58h2z4iyx54gbkxmz9dsck4ff";
+       libraryHaskellDepends = [
+         base exceptions ghc-prim random transformers
+       ];
+       testHaskellDepends = [
+         base exceptions ghc-prim hedgehog HUnit mtl random stm tasty
+         tasty-hedgehog tasty-hunit time transformers
+       ];
+       description = "Retry combinators for monadic actions that may fail";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "retryer" = callPackage
     ({ mkDerivation, base, optparse-applicative, process }:
      mkDerivation {
@@ -231852,34 +232112,6 @@ self: {
      }:
      mkDerivation {
        pname = "servant";
-       version = "0.18.2";
-       sha256 = "18mfjj9za8g9rgj7a6j0ly6lf1ykfwrlpy3cf53lv1gxvb19gmk5";
-       revision = "1";
-       editedCabalFile = "0f783bj89vb7j5cj5hk6hdmplhk3ay1z6swsinlr7a7f9h59x6vh";
-       libraryHaskellDepends = [
-         aeson attoparsec base base-compat bifunctors bytestring
-         case-insensitive deepseq http-api-data http-media http-types mmorph
-         mtl network-uri QuickCheck singleton-bool sop-core
-         string-conversions tagged text transformers vault
-       ];
-       testHaskellDepends = [
-         aeson base base-compat bytestring hspec http-media mtl QuickCheck
-         quickcheck-instances string-conversions text transformers
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "A family of combinators for defining webservices APIs";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "servant_0_18_3" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, base-compat, bifunctors
-     , bytestring, case-insensitive, deepseq, hspec, hspec-discover
-     , http-api-data, http-media, http-types, mmorph, mtl, network-uri
-     , QuickCheck, quickcheck-instances, singleton-bool, sop-core
-     , string-conversions, tagged, text, transformers, vault
-     }:
-     mkDerivation {
-       pname = "servant";
        version = "0.18.3";
        sha256 = "033ykm8l7a9bjcwb3v9d0ljglq1sxpjm1iss7nqakpyxljcg2sxp";
        libraryHaskellDepends = [
@@ -231895,7 +232127,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "A family of combinators for defining webservices APIs";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "servant-JuicyPixels" = callPackage
@@ -232352,15 +232583,15 @@ self: {
      }) {};
 
   "servant-checked-exceptions" = callPackage
-    ({ mkDerivation, base, bytestring, hspec-wai, http-types, servant
-     , servant-checked-exceptions-core, servant-client
+    ({ mkDerivation, base, bytestring, hspec, hspec-wai, http-types
+     , servant, servant-checked-exceptions-core, servant-client
      , servant-client-core, servant-server, tasty, tasty-hspec
      , tasty-hunit, wai, world-peace
      }:
      mkDerivation {
        pname = "servant-checked-exceptions";
-       version = "2.2.0.0";
-       sha256 = "1shbnrjk2d0lq9nskl95jkfgr4ad79nx4k87zjg4c4m6m09nf5bh";
+       version = "2.2.0.1";
+       sha256 = "0md5ck09phkplf0kqzj79sac92s8pw1pmic3bxcwcda80h26ck2j";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -232368,8 +232599,8 @@ self: {
          servant-client servant-client-core servant-server wai world-peace
        ];
        testHaskellDepends = [
-         base hspec-wai http-types servant servant-server tasty tasty-hspec
-         tasty-hunit wai
+         base hspec hspec-wai http-types servant servant-server tasty
+         tasty-hspec tasty-hunit wai
        ];
        description = "Checked exceptions for Servant APIs";
        license = lib.licenses.bsd3;
@@ -232382,8 +232613,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-checked-exceptions-core";
-       version = "2.2.0.0";
-       sha256 = "1irakwsdj6f0yjp0cpgai6x01yq99qd2rwy1w3pb7xwiksdnxx6c";
+       version = "2.2.0.1";
+       sha256 = "023fb1a15wjx6bwfix072sprckzkn2kzdkwbh6dr2yh4rg5snvrn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -232435,38 +232666,6 @@ self: {
      }:
      mkDerivation {
        pname = "servant-client";
-       version = "0.18.2";
-       sha256 = "0acwpjmi5r62jgmpw508jq942kq5dhdy5602w9v7g318inxzwwi1";
-       revision = "1";
-       editedCabalFile = "1phjfsqzmwc5m45f9zbpp76f7f9z96v0in7ngxz6pj8r90bcv8ga";
-       libraryHaskellDepends = [
-         base base-compat bytestring containers deepseq exceptions
-         http-client http-media http-types kan-extensions monad-control mtl
-         semigroupoids servant servant-client-core stm text time
-         transformers transformers-base transformers-compat
-       ];
-       testHaskellDepends = [
-         aeson base base-compat bytestring entropy hspec http-api-data
-         http-client http-types HUnit kan-extensions markdown-unlit mtl
-         network QuickCheck servant servant-client-core servant-server
-         sop-core stm tdigest text transformers transformers-compat wai warp
-       ];
-       testToolDepends = [ hspec-discover markdown-unlit ];
-       description = "Automatic derivation of querying functions for servant";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "servant-client_0_18_3" = callPackage
-    ({ mkDerivation, aeson, base, base-compat, bytestring, containers
-     , deepseq, entropy, exceptions, hspec, hspec-discover
-     , http-api-data, http-client, http-media, http-types, HUnit
-     , kan-extensions, markdown-unlit, monad-control, mtl, network
-     , QuickCheck, semigroupoids, servant, servant-client-core
-     , servant-server, sop-core, stm, tdigest, text, time, transformers
-     , transformers-base, transformers-compat, wai, warp
-     }:
-     mkDerivation {
-       pname = "servant-client";
        version = "0.18.3";
        sha256 = "0ddn7x9z2znkkyn6l2x6a85vq673q4vppr0q9n56ibvl3k3saxj0";
        libraryHaskellDepends = [
@@ -232484,7 +232683,6 @@ self: {
        testToolDepends = [ hspec-discover markdown-unlit ];
        description = "Automatic derivation of querying functions for servant";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "servant-client-core" = callPackage
@@ -232495,29 +232693,6 @@ self: {
      }:
      mkDerivation {
        pname = "servant-client-core";
-       version = "0.18.2";
-       sha256 = "0b449c28z20sx98pc2d4p65jr3m9glsa47jjc2w4gf90jisl173r";
-       revision = "2";
-       editedCabalFile = "0clbchlla9r0scz0giqmy3pwsnlfcf19hwkqj3yl1y77qx7kv4lr";
-       libraryHaskellDepends = [
-         aeson base base-compat base64-bytestring bytestring containers
-         deepseq exceptions free http-media http-types network-uri safe
-         servant sop-core template-haskell text transformers
-       ];
-       testHaskellDepends = [ base base-compat deepseq hspec QuickCheck ];
-       testToolDepends = [ hspec-discover ];
-       description = "Core functionality and class for client function generation for servant APIs";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "servant-client-core_0_18_3" = callPackage
-    ({ mkDerivation, aeson, base, base-compat, base64-bytestring
-     , bytestring, containers, deepseq, exceptions, free, hspec
-     , hspec-discover, http-media, http-types, network-uri, QuickCheck
-     , safe, servant, sop-core, template-haskell, text, transformers
-     }:
-     mkDerivation {
-       pname = "servant-client-core";
        version = "0.18.3";
        sha256 = "1iln4axymmmk3ib0wxmpzjgq16lip8nz7xich3ysgzx6g2n15xsd";
        libraryHaskellDepends = [
@@ -232529,7 +232704,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Core functionality and class for client function generation for servant APIs";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "servant-client-js" = callPackage
@@ -232687,36 +232861,6 @@ self: {
      }:
      mkDerivation {
        pname = "servant-docs";
-       version = "0.11.8";
-       sha256 = "0zbsv75zyfg44l4822qnmvw2naxcxwgnpzc55jnvz766l2dydjrb";
-       revision = "1";
-       editedCabalFile = "0bfhypzm02aqwckjrvjmhvf602di0pmp4r0rjbfcraxzvkrzm6qv";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson aeson-pretty base base-compat bytestring case-insensitive
-         hashable http-media http-types lens servant string-conversions text
-         universe-base unordered-containers
-       ];
-       executableHaskellDepends = [
-         aeson base lens servant string-conversions text
-       ];
-       testHaskellDepends = [
-         aeson base base-compat lens servant string-conversions tasty
-         tasty-golden tasty-hunit transformers
-       ];
-       description = "generate API docs for your servant webservice";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "servant-docs_0_11_9" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, base, base-compat, bytestring
-     , case-insensitive, hashable, http-media, http-types, lens, servant
-     , string-conversions, tasty, tasty-golden, tasty-hunit, text
-     , transformers, universe-base, unordered-containers
-     }:
-     mkDerivation {
-       pname = "servant-docs";
        version = "0.11.9";
        sha256 = "0ynjyyxlzb2j5d92rryqqa97rp16582mbmvnv7syczha5ziq24nk";
        isLibrary = true;
@@ -232735,7 +232879,6 @@ self: {
        ];
        description = "generate API docs for your servant webservice";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "servant-docs-simple" = callPackage
@@ -232967,25 +233110,6 @@ self: {
      }:
      mkDerivation {
        pname = "servant-foreign";
-       version = "0.15.3";
-       sha256 = "1bz2ry5pd8cx5pmsvg7q29r9gd5kqjjv9nd97f7abwjqi8as2413";
-       revision = "2";
-       editedCabalFile = "1fdbxyyp2h5gcighjrww2mbg8z6givmhx2in8293kw58w7y2im0i";
-       libraryHaskellDepends = [
-         base base-compat http-types lens servant text
-       ];
-       testHaskellDepends = [ base hspec servant ];
-       testToolDepends = [ hspec-discover ];
-       description = "Helpers for generating clients for servant APIs in any programming language";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "servant-foreign_0_15_4" = callPackage
-    ({ mkDerivation, base, base-compat, hspec, hspec-discover
-     , http-types, lens, servant, text
-     }:
-     mkDerivation {
-       pname = "servant-foreign";
        version = "0.15.4";
        sha256 = "0bznb73rbgfgkg7n4pxghkqsfca0yw9vak73c6w8sqvc2mjnc7mz";
        libraryHaskellDepends = [
@@ -232995,7 +233119,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Helpers for generating clients for servant APIs in any programming language";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "servant-gdp" = callPackage
@@ -233158,43 +233281,6 @@ self: {
      }:
      mkDerivation {
        pname = "servant-http-streams";
-       version = "0.18.2";
-       sha256 = "1kyiv8qamw9dxv2ax7hx9n7w9507vjvwn89x4nvlsc87nq91hvg0";
-       revision = "1";
-       editedCabalFile = "0hkcyz93px5x6l5nyh9ymswhwpfidbji2kmlhrw7ksg4zsxkl2p9";
-       libraryHaskellDepends = [
-         base base-compat bytestring case-insensitive containers deepseq
-         exceptions http-common http-media http-streams http-types
-         io-streams kan-extensions monad-control mtl semigroupoids servant
-         servant-client-core text time transformers transformers-base
-         transformers-compat
-       ];
-       testHaskellDepends = [
-         aeson base base-compat bytestring deepseq entropy hspec
-         http-api-data http-streams http-types HUnit kan-extensions
-         markdown-unlit mtl network QuickCheck servant servant-client-core
-         servant-server stm tdigest text transformers transformers-compat
-         wai warp
-       ];
-       testToolDepends = [ hspec-discover markdown-unlit ];
-       description = "Automatic derivation of querying functions for servant";
-       license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "servant-http-streams_0_18_3" = callPackage
-    ({ mkDerivation, aeson, base, base-compat, bytestring
-     , case-insensitive, containers, deepseq, entropy, exceptions, hspec
-     , hspec-discover, http-api-data, http-common, http-media
-     , http-streams, http-types, HUnit, io-streams, kan-extensions
-     , markdown-unlit, monad-control, mtl, network, QuickCheck
-     , semigroupoids, servant, servant-client-core, servant-server, stm
-     , tdigest, text, time, transformers, transformers-base
-     , transformers-compat, wai, warp
-     }:
-     mkDerivation {
-       pname = "servant-http-streams";
        version = "0.18.3";
        sha256 = "0cc4qmbzq4n1yp5yfg76w1skkksh13qlbza9i2pgsxa9sc39s5fa";
        libraryHaskellDepends = [
@@ -233603,8 +233689,8 @@ self: {
        pname = "servant-openapi3";
        version = "2.0.1.2";
        sha256 = "1lqvycbv49x0i3adbsdlcl49n65wxfjzhiz9pj11hg4k0j952q5p";
-       revision = "1";
-       editedCabalFile = "19mag4xbiswaxpdxjn5yj3jbascbwza0y89zppgzb342prqdryjr";
+       revision = "2";
+       editedCabalFile = "0cb41wx0lgssda2v26cn36c32j2g0q6gsif7jyy3c5fhaqmn3svv";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          aeson aeson-pretty base base-compat bytestring hspec http-media
@@ -233682,27 +233768,6 @@ self: {
      }:
      mkDerivation {
        pname = "servant-pipes";
-       version = "0.15.2";
-       sha256 = "1r5irq09j64iapi5n9mzsph984r5f7cyr6zz4sw3xqh648dmf75h";
-       libraryHaskellDepends = [
-         base bytestring monad-control mtl pipes pipes-safe servant
-       ];
-       testHaskellDepends = [
-         base base-compat bytestring http-client http-media pipes
-         pipes-bytestring pipes-safe servant servant-client servant-server
-         wai warp
-       ];
-       description = "Servant Stream support for pipes";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "servant-pipes_0_15_3" = callPackage
-    ({ mkDerivation, base, base-compat, bytestring, http-client
-     , http-media, monad-control, mtl, pipes, pipes-bytestring
-     , pipes-safe, servant, servant-client, servant-server, wai, warp
-     }:
-     mkDerivation {
-       pname = "servant-pipes";
        version = "0.15.3";
        sha256 = "1sd01f95rkraa0zdqqg2vwx91zsih0i0hqqkz55nnw9bsbsqhq1n";
        libraryHaskellDepends = [
@@ -233715,7 +233780,6 @@ self: {
        ];
        description = "Servant Stream support for pipes";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "servant-polysemy" = callPackage
@@ -234120,43 +234184,6 @@ self: {
      }:
      mkDerivation {
        pname = "servant-server";
-       version = "0.18.2";
-       sha256 = "05ricb3w1app6c094zwaq2jnqv53jpf4n89ffynm31dvf6h9qdih";
-       revision = "1";
-       editedCabalFile = "0xhq2rpc4ry1xgwz835bcm8qdnsifpc8wck9wa5r510ff21dqw4d";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         base base-compat base64-bytestring bytestring containers exceptions
-         filepath http-api-data http-media http-types monad-control mtl
-         network network-uri resourcet servant sop-core string-conversions
-         tagged text transformers transformers-base wai wai-app-static word8
-       ];
-       executableHaskellDepends = [
-         aeson base base-compat servant text wai warp
-       ];
-       testHaskellDepends = [
-         aeson base base-compat base64-bytestring bytestring directory hspec
-         hspec-wai http-types mtl QuickCheck resourcet safe servant
-         should-not-typecheck string-conversions temporary text transformers
-         transformers-compat wai wai-extra
-       ];
-       testToolDepends = [ hspec-discover ];
-       description = "A family of combinators for defining webservices APIs and serving them";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "servant-server_0_18_3" = callPackage
-    ({ mkDerivation, aeson, base, base-compat, base64-bytestring
-     , bytestring, containers, directory, exceptions, filepath, hspec
-     , hspec-discover, hspec-wai, http-api-data, http-media, http-types
-     , monad-control, mtl, network, network-uri, QuickCheck, resourcet
-     , safe, servant, should-not-typecheck, sop-core, string-conversions
-     , tagged, temporary, text, transformers, transformers-base
-     , transformers-compat, wai, wai-app-static, wai-extra, warp, word8
-     }:
-     mkDerivation {
-       pname = "servant-server";
        version = "0.18.3";
        sha256 = "1gng0in85as45aprwy19xaqlgmwfx0pkly150d2v96knhbcwsshk";
        isLibrary = true;
@@ -234179,7 +234206,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "A family of combinators for defining webservices APIs and serving them";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "servant-server-namedargs" = callPackage
@@ -234478,6 +234504,8 @@ self: {
        pname = "servant-swagger-ui";
        version = "0.3.5.3.47.1";
        sha256 = "00bmkj87rnd9zmg54h3z8k9zgs5d17lcdn9gp006xixa6g494cms";
+       revision = "1";
+       editedCabalFile = "1dn93dhr8qaxr3raz5myrps1bkhlr6bha8q3kwhyj4q7ahdvj4nj";
        libraryHaskellDepends = [
          aeson base bytestring file-embed-lzma servant servant-server
          servant-swagger-ui-core text
@@ -234495,6 +234523,8 @@ self: {
        pname = "servant-swagger-ui-core";
        version = "0.3.5";
        sha256 = "0ckvrwrb3x39hfl2hixcj3fhibh0vqsh6y7n1lsm25yvzfrg02zd";
+       revision = "1";
+       editedCabalFile = "0fk7bj8fndxf1aw8xhhacjp8rrvx10gj7kh9d2pvjavnz310ymxg";
        libraryHaskellDepends = [
          aeson base blaze-markup bytestring http-media servant servant-blaze
          servant-server text transformers transformers-compat wai-app-static
@@ -234511,6 +234541,8 @@ self: {
        pname = "servant-swagger-ui-jensoleg";
        version = "0.3.4";
        sha256 = "04s4syfmnjwa52xqm29x2sfi1ka6p7fpjff0pxry099rh0d59hkm";
+       revision = "1";
+       editedCabalFile = "0yvgbyqdkjp5qv88gm7wgcl5rb4haijc4jfmmfcq8g63ya7msx9x";
        libraryHaskellDepends = [
          aeson base bytestring file-embed-lzma servant servant-server
          servant-swagger-ui-core text
@@ -234527,6 +234559,8 @@ self: {
        pname = "servant-swagger-ui-redoc";
        version = "0.3.4.1.22.3";
        sha256 = "0ln2sz7ffhddk4dqvczpxb5g8f6bic7sandn5zifpz2jg7lgzy0f";
+       revision = "1";
+       editedCabalFile = "1w6h6g8hlsyv87xxxyrsjz5gdkphmxgc4y63g8mmv4hgdncrb1jk";
        libraryHaskellDepends = [
          aeson base bytestring file-embed-lzma servant servant-server
          servant-swagger-ui-core text
@@ -235503,8 +235537,8 @@ self: {
      }:
      mkDerivation {
        pname = "sexp-grammar";
-       version = "2.3.0";
-       sha256 = "1ky0jj47xp6g8shk5znrhncj71sg0p653csj1ds2yl36s7fiwgdk";
+       version = "2.3.1";
+       sha256 = "05vj998wzj1wja4848kd04c89jb8pmvdyl40aw6qvc9fq0qzw6m4";
        libraryHaskellDepends = [
          array base bytestring containers data-fix deepseq
          invertible-grammar prettyprinter recursion-schemes scientific
@@ -235891,8 +235925,8 @@ self: {
      }:
      mkDerivation {
        pname = "shake";
-       version = "0.19.4";
-       sha256 = "1vkkgncar07na4kn3i02b2zdyjdjxl10hrcz2l23c498yrrqibjv";
+       version = "0.19.5";
+       sha256 = "105agfvn75czyq3jbmppybv776njlsqc7k4m1xnx0n78qjmcnpb9";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -236948,10 +236982,8 @@ self: {
      }:
      mkDerivation {
        pname = "shh";
-       version = "0.7.1.0";
-       sha256 = "03b8h6sjnrlksvpr9f451469j5xngqpb6g3hyxmxp7h7h4xrsvq2";
-       revision = "1";
-       editedCabalFile = "1sv4rxkwvsb1j42k6bhbvig8215xzmgmqaxacljq03aqqv3x3jf2";
+       version = "0.7.1.4";
+       sha256 = "1yriini033kja8w9hrxyfbc62nbwg4fb5nl8rj004gdkbaiz7wbl";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -237941,8 +237973,8 @@ self: {
     ({ mkDerivation, base, optparse-applicative }:
      mkDerivation {
        pname = "simple-cmd-args";
-       version = "0.1.6";
-       sha256 = "18dikz7hy61wgrbpgnxmgfp1i485hkhgrdnqbkzl2mrmmjn8p1zd";
+       version = "0.1.7";
+       sha256 = "0lf0pyiv02sg2yh9avj92fm75sni61qnaq3rmjw5vlczy03ksxpc";
        libraryHaskellDepends = [ base optparse-applicative ];
        description = "Simple command args parsing and execution";
        license = lib.licenses.bsd3;
@@ -238491,8 +238523,8 @@ self: {
     ({ mkDerivation, base, process }:
      mkDerivation {
        pname = "simple-smt";
-       version = "0.9.6";
-       sha256 = "1smr9lbr46nghbyk39j5v2s53zw1k2v1sbwwzj5js5h61xj33zs9";
+       version = "0.9.7";
+       sha256 = "17arwga9irr5aacf0mrdnp1lw1vqlfl3kzwaaiwcw39idlprdnb4";
        libraryHaskellDepends = [ base process ];
        description = "A simple way to interact with an SMT solver process";
        license = lib.licenses.bsd3;
@@ -239793,27 +239825,6 @@ self: {
      }:
      mkDerivation {
        pname = "skylighting";
-       version = "0.10.5.1";
-       sha256 = "11y2j9c4gw0x5h974jrp0yppy5dys9i0nxdbzm374nwx8mjwdl4w";
-       configureFlags = [ "-fexecutable" ];
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         base binary containers skylighting-core
-       ];
-       executableHaskellDepends = [
-         base blaze-html bytestring containers pretty-show text
-       ];
-       description = "syntax highlighting library";
-       license = lib.licenses.gpl2Only;
-     }) {};
-
-  "skylighting_0_10_5_2" = callPackage
-    ({ mkDerivation, base, binary, blaze-html, bytestring, containers
-     , pretty-show, skylighting-core, text
-     }:
-     mkDerivation {
-       pname = "skylighting";
        version = "0.10.5.2";
        sha256 = "152ywiy7h04xjy0fdl571jwahl6c9350isqbm4p0na4cjd9cczzh";
        configureFlags = [ "-fexecutable" ];
@@ -239827,7 +239838,6 @@ self: {
        ];
        description = "syntax highlighting library";
        license = lib.licenses.gpl2Only;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "skylighting-core" = callPackage
@@ -239840,37 +239850,6 @@ self: {
      }:
      mkDerivation {
        pname = "skylighting-core";
-       version = "0.10.5.1";
-       sha256 = "14mz7krfkidgplhp49w84ryz74jrsdqll44wqd0my0m28v2vg9ka";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson ansi-terminal attoparsec base base64-bytestring binary
-         blaze-html bytestring case-insensitive colour containers directory
-         filepath mtl safe text transformers utf8-string xml-conduit
-       ];
-       testHaskellDepends = [
-         aeson base bytestring containers Diff directory filepath
-         pretty-show QuickCheck tasty tasty-golden tasty-hunit
-         tasty-quickcheck text
-       ];
-       benchmarkHaskellDepends = [
-         base containers criterion directory filepath text
-       ];
-       description = "syntax highlighting library";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "skylighting-core_0_10_5_2" = callPackage
-    ({ mkDerivation, aeson, ansi-terminal, attoparsec, base
-     , base64-bytestring, binary, blaze-html, bytestring
-     , case-insensitive, colour, containers, criterion, Diff, directory
-     , filepath, mtl, pretty-show, QuickCheck, safe, tasty, tasty-golden
-     , tasty-hunit, tasty-quickcheck, text, transformers, utf8-string
-     , xml-conduit
-     }:
-     mkDerivation {
-       pname = "skylighting-core";
        version = "0.10.5.2";
        sha256 = "0bskci0gng6nf324wna9ss4xbr1mwjkgk3mlfkr96r1m3wza5g3d";
        isLibrary = true;
@@ -239890,7 +239869,6 @@ self: {
        ];
        description = "syntax highlighting library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "skylighting-extensions" = callPackage
@@ -245507,8 +245485,8 @@ self: {
      }:
      mkDerivation {
        pname = "sr-extra";
-       version = "1.85.1";
-       sha256 = "15x8d413m8ldl81b5yx13nprr4k0aszx33mjm880za0k90s8r65x";
+       version = "1.88";
+       sha256 = "1cpigfdpgcy3bpp51snza0wwd88ky04hwqlzbmvmwkwznd7wqxrb";
        libraryHaskellDepends = [
          base base64-bytestring bytestring bzlib Cabal cereal containers
          Diff directory exceptions fgl filemanip filepath generic-data
@@ -246018,18 +245996,20 @@ self: {
      }) {};
 
   "stack-all" = callPackage
-    ({ mkDerivation, base, config-ini, directory, extra, filepath
-     , process, simple-cmd, simple-cmd-args, text
+    ({ mkDerivation, aeson, base, bytestring, config-ini, directory
+     , extra, filepath, http-query, process, simple-cmd, simple-cmd-args
+     , text, time, unordered-containers, xdg-basedir
      }:
      mkDerivation {
        pname = "stack-all";
-       version = "0.2.2";
-       sha256 = "0bk22ryqvyc4r058yj3ngq33wv24m7r1alnbvg4c0h08fmwxi4m0";
+       version = "0.3";
+       sha256 = "0bxrchryn0r02bbkxwwyi9rlkknjqwbiypbfj47q9fzyb2rv9gk1";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         base config-ini directory extra filepath process simple-cmd
-         simple-cmd-args text
+         aeson base bytestring config-ini directory extra filepath
+         http-query process simple-cmd simple-cmd-args text time
+         unordered-containers xdg-basedir
        ];
        description = "CLI tool for building across Stackage major versions";
        license = lib.licenses.bsd3;
@@ -248968,28 +248948,25 @@ self: {
      }) {};
 
   "streaming-benchmarks" = callPackage
-    ({ mkDerivation, base, bench-graph, bytestring, Chart
-     , Chart-diagrams, conduit, csv, deepseq, directory, drinkery, gauge
-     , getopt-generics, machines, mtl, pipes, random, split, streaming
-     , streamly, template-haskell, text, transformers, typed-process
-     , vector
+    ({ mkDerivation, base, bytestring, conduit, containers, deepseq
+     , dlist, drinkery, gauge, machines, mtl, pipes, random, streaming
+     , streamly, template-haskell, text, transformers, vector
      }:
      mkDerivation {
        pname = "streaming-benchmarks";
-       version = "0.2.0";
-       sha256 = "1vpflmvz2vrll9bangl61rdjnngdxbrmpzg3xha8h85ij3458c0x";
+       version = "0.3.0";
+       sha256 = "0cy65d1aph2wk3yc7kj8ywq40f8jgpx72isywnnw2sg9jz9jnd85";
        isLibrary = false;
        isExecutable = true;
-       executableHaskellDepends = [
-         base bench-graph bytestring Chart Chart-diagrams csv directory
-         getopt-generics split text transformers typed-process
-       ];
        benchmarkHaskellDepends = [
-         base conduit deepseq drinkery gauge machines mtl pipes random
-         streaming streamly template-haskell transformers vector
+         base bytestring conduit containers deepseq dlist drinkery gauge
+         machines mtl pipes random streaming streamly template-haskell text
+         transformers vector
        ];
-       description = "Benchmarks to compare streaming packages";
+       description = "Measures and compares the performance of streaming libraries";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "streaming-binary" = callPackage
@@ -249055,27 +249032,6 @@ self: {
      }:
      mkDerivation {
        pname = "streaming-bytestring";
-       version = "0.2.0";
-       sha256 = "1vmbg84xc7ix7ihs96ia13gdpi7z3grrkq9qai6j8s1klnzpljhi";
-       libraryHaskellDepends = [
-         base bytestring deepseq exceptions ghc-prim mmorph mtl resourcet
-         streaming transformers transformers-base
-       ];
-       testHaskellDepends = [
-         base bytestring resourcet smallcheck streaming tasty tasty-hunit
-         tasty-smallcheck transformers
-       ];
-       description = "Fast, effectful byte streams";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "streaming-bytestring_0_2_1" = callPackage
-    ({ mkDerivation, base, bytestring, deepseq, exceptions, ghc-prim
-     , mmorph, mtl, resourcet, smallcheck, streaming, tasty, tasty-hunit
-     , tasty-smallcheck, transformers, transformers-base
-     }:
-     mkDerivation {
-       pname = "streaming-bytestring";
        version = "0.2.1";
        sha256 = "1yri2g0wx2fila25ang04nsv4i12b4yhwqwcfkkpx1sz8fhzibxy";
        libraryHaskellDepends = [
@@ -249088,7 +249044,6 @@ self: {
        ];
        description = "Fast, effectful byte streams";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "streaming-cassava" = callPackage
@@ -249500,6 +249455,27 @@ self: {
        maintainers = with lib.maintainers; [ maralorn ];
      }) {};
 
+  "streamly_0_8_0" = callPackage
+    ({ mkDerivation, atomic-primops, base, containers, deepseq
+     , directory, exceptions, fusion-plugin-types, ghc-prim, heaps
+     , lockfree-queue, monad-control, mtl, network, primitive
+     , transformers, transformers-base
+     }:
+     mkDerivation {
+       pname = "streamly";
+       version = "0.8.0";
+       sha256 = "1ng1zfayk21z03rr3m1kwhrj0if4yl3nggp971r25rks9rb01il5";
+       libraryHaskellDepends = [
+         atomic-primops base containers deepseq directory exceptions
+         fusion-plugin-types ghc-prim heaps lockfree-queue monad-control mtl
+         network primitive transformers transformers-base
+       ];
+       description = "Dataflow programming and declarative concurrency";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       maintainers = with lib.maintainers; [ maralorn ];
+     }) {};
+
   "streamly-archive" = callPackage
     ({ mkDerivation, archive, base, bytestring, cryptonite, directory
      , filepath, QuickCheck, streamly, tar, tasty, tasty-hunit
@@ -249585,6 +249561,27 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "streamly-examples" = callPackage
+    ({ mkDerivation, base, containers, directory, exceptions, hashable
+     , mtl, network, random, streamly, transformers, transformers-base
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "streamly-examples";
+       version = "0.1.0";
+       sha256 = "0ny22z33wwkg9bbziwcj77k6gb8lwj1v0y5z6mw8sw20k4ca93q3";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base containers directory exceptions hashable mtl network random
+         streamly transformers transformers-base unordered-containers vector
+       ];
+       description = "Examples for Streamly";
+       license = lib.licenses.asl20;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "streamly-fsnotify" = callPackage
     ({ mkDerivation, base, filepath, fsnotify, semirings, streamly
      , text, time
@@ -249593,8 +249590,8 @@ self: {
        pname = "streamly-fsnotify";
        version = "1.1.1.0";
        sha256 = "1xcw4rsrysh96d91wjmyzb5s7cls3rf0ilpv8dn525iqzv11fl3l";
-       revision = "1";
-       editedCabalFile = "0lcpps69dk4xr4wd1z5zpykvsfqrd0jlqx87rqbzjndgrw9xh685";
+       revision = "2";
+       editedCabalFile = "0axnmnqcgcs5j805clm1mqyhvfil019n8r8530sjgjbp7m34wrkh";
        libraryHaskellDepends = [
          base filepath fsnotify semirings streamly text time
        ];
@@ -250439,8 +250436,8 @@ self: {
     ({ mkDerivation, base, bytestring, text }:
      mkDerivation {
        pname = "stripe-concepts";
-       version = "1.0.2.8";
-       sha256 = "03sqgmbbjqi18wjb96sc3lvc6p3bqk5sgsgbcf9z8k9rbdspribm";
+       version = "1.0.3";
+       sha256 = "1wykg9flg0qliqlz3ywkmnqhh55aa61r4mvbhsly6ib8r6knr382";
        libraryHaskellDepends = [ base bytestring text ];
        description = "Types for the Stripe API";
        license = lib.licenses.mit;
@@ -250680,6 +250677,28 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "strong-path" = callPackage
+    ({ mkDerivation, base, exceptions, filepath, path, tasty
+     , tasty-discover, tasty-hspec, tasty-quickcheck, template-haskell
+     }:
+     mkDerivation {
+       pname = "strong-path";
+       version = "1.0.0.0";
+       sha256 = "0xpflbqzdbf7pk2v5c5acd5j4ijldklx0vvypw36zvy50ld4ffpz";
+       libraryHaskellDepends = [
+         base exceptions filepath path template-haskell
+       ];
+       testHaskellDepends = [
+         base filepath path tasty tasty-discover tasty-hspec
+         tasty-quickcheck
+       ];
+       testToolDepends = [ tasty-discover ];
+       description = "Strongly typed paths in Haskell";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "strongswan-sql" = callPackage
     ({ mkDerivation, asn1-encoding, asn1-types, attoparsec, base
      , bytestring, data-default, failable, haskeline, io-streams
@@ -251136,8 +251155,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "subG";
-       version = "0.4.2.0";
-       sha256 = "17fzdwlmh8ykwqn9h9a60wpnvqbgbz0wk6cgcrglbj0i41jy28jv";
+       version = "0.5.2.0";
+       sha256 = "0s2fzzrw3fqr02lqifm1qfily5gnvrlsswpnj7hvnv0bsgql9b23";
        libraryHaskellDepends = [ base ];
        description = "Some extension to the Foldable and Monoid classes";
        license = lib.licenses.mit;
@@ -252520,8 +252539,8 @@ self: {
      }:
      mkDerivation {
        pname = "swiss-ephemeris";
-       version = "1.3.0.1";
-       sha256 = "1y30qx18ps412r28grlxpfxw3ikirbf3kkxmqwd75ydxp9apn52k";
+       version = "1.3.0.2";
+       sha256 = "0p8fzkd4wqvmc5fjlsb0ri6645n1rg304m8nm9085ipy1svi7sn0";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base directory hspec QuickCheck ];
        testToolDepends = [ hspec-discover ];
@@ -252694,7 +252713,7 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
-  "sydtest_0_3_0_1" = callPackage
+  "sydtest_0_3_0_2" = callPackage
     ({ mkDerivation, async, base, bytestring, containers, Diff, dlist
      , envparse, filepath, MonadRandom, mtl, optparse-applicative, path
      , path-io, pretty-show, QuickCheck, quickcheck-io, random-shuffle
@@ -252703,8 +252722,8 @@ self: {
      }:
      mkDerivation {
        pname = "sydtest";
-       version = "0.3.0.1";
-       sha256 = "0ddbjs2p2vzmzadggyvdpknmcw935jmj2m9nxki2apc9ciq6skig";
+       version = "0.3.0.2";
+       sha256 = "1823g9czwgf0p0jyxlddqwnpwhs3622892c9ah6cacvl9xfl3sg9";
        libraryHaskellDepends = [
          async base bytestring containers Diff dlist envparse filepath
          MonadRandom mtl optparse-applicative path path-io pretty-show
@@ -253088,27 +253107,30 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
-  "sydtest-yesod_0_2_0_1" = callPackage
-    ({ mkDerivation, base, blaze-builder, bytestring, case-insensitive
-     , conduit, containers, cookie, exceptions, http-client, http-types
-     , monad-logger, mtl, network, persistent, persistent-sqlite
+  "sydtest-yesod_0_3_0_0" = callPackage
+    ({ mkDerivation, base, binary, blaze-builder, bytestring
+     , case-insensitive, conduit, containers, cookie, exceptions
+     , http-client, http-client-tls, http-types, monad-logger, mtl
+     , network, network-uri, persistent, persistent-sqlite
      , persistent-template, pretty-show, QuickCheck, resourcet, sydtest
      , sydtest-discover, sydtest-persistent-sqlite, sydtest-wai, text
      , time, wai, xml-conduit, yesod, yesod-core, yesod-form, yesod-test
      }:
      mkDerivation {
        pname = "sydtest-yesod";
-       version = "0.2.0.1";
-       sha256 = "1h2gqwp968n1gyg9r7x82c6kdnnfs7m341j7w7wbx3rcvd57c2jf";
+       version = "0.3.0.0";
+       sha256 = "19pc9yxfw355xvp27i0g1xdlwg8hck8p4y7mnvxrwvwnp911akkf";
        libraryHaskellDepends = [
-         base blaze-builder bytestring case-insensitive containers cookie
-         exceptions http-client http-types mtl network pretty-show sydtest
-         sydtest-wai text time wai xml-conduit yesod-core yesod-test
+         base binary blaze-builder bytestring case-insensitive containers
+         cookie exceptions http-client http-client-tls http-types mtl
+         network network-uri pretty-show sydtest sydtest-wai text time wai
+         xml-conduit yesod-core yesod-test
        ];
        testHaskellDepends = [
          base bytestring conduit cookie http-client http-types monad-logger
          mtl persistent persistent-sqlite persistent-template QuickCheck
-         resourcet sydtest sydtest-persistent-sqlite text yesod yesod-form
+         resourcet sydtest sydtest-persistent-sqlite text yesod yesod-core
+         yesod-form
        ];
        testToolDepends = [ sydtest-discover ];
        description = "A yesod companion library for sydtest";
@@ -254526,6 +254548,23 @@ self: {
        maintainers = with lib.maintainers; [ sternenseemann ];
      }) {};
 
+  "systemd-socket-activation" = callPackage
+    ({ mkDerivation, base, containers, network, text, transformers
+     , unix
+     }:
+     mkDerivation {
+       pname = "systemd-socket-activation";
+       version = "1";
+       sha256 = "10y7g2y62v48n6zkpgpjqyf2a7fqm8d9mx24vcwk6bcxkq1bciz2";
+       revision = "1";
+       editedCabalFile = "084phqk9wb0slsmb7pj68nivhjx3w6hs0djq589j771v579vck0r";
+       libraryHaskellDepends = [
+         base containers network text transformers unix
+       ];
+       description = "Let systemd bind the server's socket for you";
+       license = lib.licenses.mit;
+     }) {};
+
   "systemstats" = callPackage
     ({ mkDerivation, base, micrologger, optparse-applicative, statgrab
      , text, text-format, transformers
@@ -256033,8 +256072,8 @@ self: {
      }:
      mkDerivation {
        pname = "tasty-checklist";
-       version = "1.0.0.0";
-       sha256 = "1ahy4nmkbqpfw38ny6w85q5whsidk3xyy8m6v6ndik2i8jjh8qr4";
+       version = "1.0.1.0";
+       sha256 = "0nj4xjnlrd3righ0d0yv4py7wjls51khjyacpgjs3s5knaxyippp";
        libraryHaskellDepends = [
          base exceptions parameterized-utils text
        ];
@@ -256513,6 +256552,20 @@ self: {
        broken = true;
      }) {};
 
+  "tasty-prelude" = callPackage
+    ({ mkDerivation, base, tasty, tasty-expected-failure, tasty-focus
+     }:
+     mkDerivation {
+       pname = "tasty-prelude";
+       version = "0.1.0.0";
+       sha256 = "0kccgw0g45cll69hc9f5sifzpsmvcjskcyfvfqnd5zmdh4vcnj70";
+       libraryHaskellDepends = [
+         base tasty tasty-expected-failure tasty-focus
+       ];
+       description = "Unopinionated top-level entry point to tasty ecosystem";
+       license = lib.licenses.mpl20;
+     }) {};
+
   "tasty-program" = callPackage
     ({ mkDerivation, base, deepseq, directory, filepath, process, tasty
      }:
@@ -256584,29 +256637,6 @@ self: {
      }:
      mkDerivation {
        pname = "tasty-silver";
-       version = "3.2.1";
-       sha256 = "1i39xks5rjpnid2y1n16fyb01wj7hpdw0n5ci1rnsps5f16nkcxr";
-       libraryHaskellDepends = [
-         ansi-terminal async base bytestring containers deepseq directory
-         filepath mtl optparse-applicative process process-extras regex-tdfa
-         stm tagged tasty temporary text
-       ];
-       testHaskellDepends = [
-         base directory filepath process tasty tasty-hunit temporary
-         transformers
-       ];
-       description = "A fancy test runner, including support for golden tests";
-       license = lib.licenses.mit;
-     }) {};
-
-  "tasty-silver_3_2_2" = callPackage
-    ({ mkDerivation, ansi-terminal, async, base, bytestring, containers
-     , deepseq, directory, filepath, mtl, optparse-applicative, process
-     , process-extras, regex-tdfa, stm, tagged, tasty, tasty-hunit
-     , temporary, text, transformers
-     }:
-     mkDerivation {
-       pname = "tasty-silver";
        version = "3.2.2";
        sha256 = "0zsl6nna8ir215qyxhyh2czx4i16hzw1n1m8jw8ym02j6sp6iz13";
        libraryHaskellDepends = [
@@ -256620,7 +256650,6 @@ self: {
        ];
        description = "A fancy test runner, including support for golden tests";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "tasty-smallcheck" = callPackage
@@ -257364,28 +257393,29 @@ self: {
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, cron
      , filepath, hashable, http-api-data, http-client, http-client-tls
      , monad-control, mtl, pretty-show, profunctors, servant
-     , servant-client, servant-multipart, split, stm, template-haskell
-     , text, time, transformers, unordered-containers
+     , servant-client, servant-multipart, servant-multipart-api
+     , servant-multipart-client, split, stm, template-haskell, text
+     , time, transformers, unordered-containers
      }:
      mkDerivation {
        pname = "telegram-bot-simple";
-       version = "0.3.5";
-       sha256 = "08b650z513lbmmb46xinwgdb3csgpx9rjk5vn345xb9b0ki94chq";
+       version = "0.3.7";
+       sha256 = "09bi2rbajiv3p2anky9zjnbvxxd79d70p3im94zrp14db0zjhnp7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson aeson-pretty base bytestring cron filepath hashable
          http-api-data http-client http-client-tls monad-control mtl
          pretty-show profunctors servant servant-client servant-multipart
-         split stm template-haskell text time transformers
-         unordered-containers
+         servant-multipart-api servant-multipart-client split stm
+         template-haskell text time transformers unordered-containers
        ];
        executableHaskellDepends = [
          aeson aeson-pretty base bytestring cron filepath hashable
          http-api-data http-client http-client-tls monad-control mtl
          pretty-show profunctors servant servant-client servant-multipart
-         split stm template-haskell text time transformers
-         unordered-containers
+         servant-multipart-api servant-multipart-client split stm
+         template-haskell text time transformers unordered-containers
        ];
        description = "Easy to use library for building Telegram bots";
        license = lib.licenses.bsd3;
@@ -257601,23 +257631,11 @@ self: {
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "template-haskell-compat-v0208";
-       version = "0.1.5";
-       sha256 = "1s1ynp568i7y5v062kliia46c3cmaijslf2hlmdkkqfdvf8fmzp1";
-       libraryHaskellDepends = [ base template-haskell ];
-       description = "A backwards compatibility layer for Template Haskell newer than 2.8";
-       license = lib.licenses.mit;
-     }) {};
-
-  "template-haskell-compat-v0208_0_1_6" = callPackage
-    ({ mkDerivation, base, template-haskell }:
-     mkDerivation {
-       pname = "template-haskell-compat-v0208";
        version = "0.1.6";
        sha256 = "1s2ba86y2r9n4r1dwfg734y3nfqxak560s8srd04kbn623hnrkw8";
        libraryHaskellDepends = [ base template-haskell ];
        description = "A backwards compatibility layer for Template Haskell newer than 2.8";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "template-haskell-optics" = callPackage
@@ -258571,27 +258589,27 @@ self: {
 
   "tesla" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, bytestring, casing
-     , containers, cryptonite, exceptions, generic-deriving, HUnit, lens
-     , lens-aeson, memory, monad-logger, mtl, random, retry, tagsoup
-     , tasty, tasty-hunit, tasty-quickcheck, template-haskell, text
-     , time, unliftio-core, vector, wreq
+     , containers, cryptonite, exceptions, generic-deriving, http-client
+     , HUnit, lens, lens-aeson, memory, monad-logger, mtl, random, retry
+     , tagsoup, tasty, tasty-hunit, tasty-quickcheck, template-haskell
+     , text, time, unliftio-core, vector, wreq
      }:
      mkDerivation {
        pname = "tesla";
-       version = "0.4.1.0";
-       sha256 = "0rnzgcwkgwnpjlf2r47a28zwkbnsb75wfmdiwnq4w99i2f519dnd";
+       version = "0.4.1.3";
+       sha256 = "1g4kl1lnbx37ffqir3w20j5aifl3196cnb28366c77jmp9dmwxna";
        libraryHaskellDepends = [
          aeson base base64-bytestring bytestring casing containers
-         cryptonite exceptions generic-deriving lens lens-aeson memory
-         monad-logger mtl random retry tagsoup template-haskell text time
-         unliftio-core vector wreq
+         cryptonite exceptions generic-deriving http-client lens lens-aeson
+         memory monad-logger mtl random retry tagsoup template-haskell text
+         time unliftio-core vector wreq
        ];
        testHaskellDepends = [
          aeson base base64-bytestring bytestring casing containers
-         cryptonite exceptions generic-deriving HUnit lens lens-aeson memory
-         monad-logger mtl random retry tagsoup tasty tasty-hunit
-         tasty-quickcheck template-haskell text time unliftio-core vector
-         wreq
+         cryptonite exceptions generic-deriving http-client HUnit lens
+         lens-aeson memory monad-logger mtl random retry tagsoup tasty
+         tasty-hunit tasty-quickcheck template-haskell text time
+         unliftio-core vector wreq
        ];
        description = "Tesla API client";
        license = lib.licenses.bsd3;
@@ -260279,14 +260297,16 @@ self: {
      }) {};
 
   "text1" = callPackage
-    ({ mkDerivation, base, binary, HUnit, lens, QuickCheck, semigroups
-     , text
+    ({ mkDerivation, base, binary, HUnit, lens, QuickCheck
+     , semigroupoids, semigroups, text
      }:
      mkDerivation {
        pname = "text1";
-       version = "0.0.6.1";
-       sha256 = "10kzl1gwi08pxzs8flr5bhfcwqgcl0jz9cadw3hqmbmynpij95ij";
-       libraryHaskellDepends = [ base binary lens semigroups text ];
+       version = "0.0.7.0";
+       sha256 = "0ph9vyx88mwh4d6n0wxbhicjc1x3d645kglw82nr5ggapgsab2a1";
+       libraryHaskellDepends = [
+         base binary lens semigroupoids semigroups text
+       ];
        testHaskellDepends = [
          base HUnit lens QuickCheck semigroups text
        ];
@@ -261784,6 +261804,8 @@ self: {
        testToolDepends = [ tasty-discover ];
        description = "throwable-exceptions gives the easy way to throw exceptions";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "thumbnail" = callPackage
@@ -261998,28 +262020,6 @@ self: {
      }:
      mkDerivation {
        pname = "tidal";
-       version = "1.7.5";
-       sha256 = "0mcq1sll148qfwkyad6y9k64zrlbkflzba9wqcgqydgfm0jyr7z7";
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [
-         base bifunctors bytestring clock colour containers deepseq hosc
-         network parsec primitive random text transformers
-       ];
-       testHaskellDepends = [
-         base containers deepseq hosc microspec parsec
-       ];
-       benchmarkHaskellDepends = [ base criterion weigh ];
-       description = "Pattern language for improvised music";
-       license = lib.licenses.gpl3Only;
-     }) {};
-
-  "tidal_1_7_7" = callPackage
-    ({ mkDerivation, base, bifunctors, bytestring, clock, colour
-     , containers, criterion, deepseq, hosc, microspec, network, parsec
-     , primitive, random, text, transformers, weigh
-     }:
-     mkDerivation {
-       pname = "tidal";
        version = "1.7.7";
        sha256 = "19r9h45yd2xwmah81xqmwx5bi5gi0x2hqhq2nqa47jgb0nd12a25";
        enableSeparateDataOutput = true;
@@ -262033,7 +262033,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion weigh ];
        description = "Pattern language for improvised music";
        license = lib.licenses.gpl3Only;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "tidal-midi" = callPackage
@@ -263792,6 +263791,8 @@ self: {
        ];
        description = "Start and stop a temporary postgres";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "tmpl" = callPackage
@@ -265111,8 +265112,8 @@ self: {
      }:
      mkDerivation {
        pname = "tracing";
-       version = "0.0.7.0";
-       sha256 = "0mm2s367n7zggnbgcvhffjin47pfyzr76ywg60vhfjcb1zzmkv4l";
+       version = "0.0.7.2";
+       sha256 = "06cqj4801inww5lw5c1qbjp5yrbg5rpifnkr9w5lws8654v44iim";
        libraryHaskellDepends = [
          aeson base base16-bytestring bytestring case-insensitive containers
          http-client mtl network random stm text time transformers unliftio
@@ -265939,27 +265940,12 @@ self: {
      }:
      mkDerivation {
        pname = "traverse-with-class";
-       version = "1.0.1.0";
-       sha256 = "1yni197sxfpsjvjablhn8mjqpp1mz0v30r73f9ncs3pjcl93g6yn";
-       libraryHaskellDepends = [ base template-haskell transformers ];
-       testHaskellDepends = [ base tasty tasty-hunit ];
-       description = "Generic applicative traversals";
-       license = lib.licenses.mit;
-     }) {};
-
-  "traverse-with-class_1_0_1_1" = callPackage
-    ({ mkDerivation, base, tasty, tasty-hunit, template-haskell
-     , transformers
-     }:
-     mkDerivation {
-       pname = "traverse-with-class";
        version = "1.0.1.1";
        sha256 = "0c0h902hr3gnlmlvqjhz3k5abyg0ays2g2c1kwrhbz0nhgfwk656";
        libraryHaskellDepends = [ base template-haskell transformers ];
        testHaskellDepends = [ base tasty tasty-hunit ];
        description = "Generic applicative traversals";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "travis" = callPackage
@@ -266598,8 +266584,8 @@ self: {
        pname = "trie-simple";
        version = "0.4.1.1";
        sha256 = "0h3wfq4fjakkwvrv35l25709xv528h1c08cr754gvk4l8vqnk6k7";
-       revision = "2";
-       editedCabalFile = "1v3aiqn3c91md7y0wqcdvafy1fwjr8hfsg17ykqr1si8ax6hy5j0";
+       revision = "3";
+       editedCabalFile = "02h7dw73879gvy0jrxd7a4rzfhi2fcr5jivqc4ck97w67w2pg8zm";
        libraryHaskellDepends = [ base containers deepseq mtl ];
        testHaskellDepends = [ base containers hspec QuickCheck vector ];
        benchmarkHaskellDepends = [
@@ -267146,22 +267132,6 @@ self: {
      }:
      mkDerivation {
        pname = "ttc";
-       version = "1.1.0.0";
-       sha256 = "02b55f0dwgxvpr8x2727ryb6zhvz73l6l001szm4i821q0p4h00g";
-       libraryHaskellDepends = [ base bytestring template-haskell text ];
-       testHaskellDepends = [
-         base bytestring tasty tasty-hunit template-haskell text
-       ];
-       description = "Textual Type Classes";
-       license = lib.licenses.mit;
-     }) {};
-
-  "ttc_1_1_0_1" = callPackage
-    ({ mkDerivation, base, bytestring, tasty, tasty-hunit
-     , template-haskell, text
-     }:
-     mkDerivation {
-       pname = "ttc";
        version = "1.1.0.1";
        sha256 = "0vngp6md5viz4r57q0qn3pf09ph6kpkzvdigsxmgqcic2ha1a4n1";
        libraryHaskellDepends = [ base bytestring template-haskell text ];
@@ -267170,7 +267140,6 @@ self: {
        ];
        description = "Textual Type Classes";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "ttl-hashtables" = callPackage
@@ -269080,6 +269049,24 @@ self: {
        broken = true;
      }) {};
 
+  "typeable-mock" = callPackage
+    ({ mkDerivation, base, call-stack, containers, hspec
+     , variadic-function
+     }:
+     mkDerivation {
+       pname = "typeable-mock";
+       version = "0.1.0.1";
+       sha256 = "1hfjyk5r2xikwfdz5hfiffc22dci821xzcj8lnml4kh7d0w55mfa";
+       libraryHaskellDepends = [
+         base call-stack containers variadic-function
+       ];
+       testHaskellDepends = [
+         base call-stack containers hspec variadic-function
+       ];
+       description = "Mock functions and expressions anywhere";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "typeable-th" = callPackage
     ({ mkDerivation, base, template-haskell, transformers }:
      mkDerivation {
@@ -271320,8 +271307,8 @@ self: {
     ({ mkDerivation, base, bytestring, unordered-containers }:
      mkDerivation {
        pname = "uniq-deep";
-       version = "1.2.0";
-       sha256 = "1r0gq0mlnl9wdn3v0pdq3vnwn6r4pzc6j7ssha93lms9380kl4nx";
+       version = "1.2.1";
+       sha256 = "0281yfiv6qmq1q5pvrvf6qg4nwzzav6rvb4mcdzqshsrbw9n12ig";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -272967,22 +272954,20 @@ self: {
   "uri-bytestring" = callPackage
     ({ mkDerivation, attoparsec, base, base-compat, blaze-builder
      , bytestring, containers, criterion, deepseq, deepseq-generics
-     , hedgehog, HUnit, network-uri, safe, semigroups, tasty
-     , tasty-hedgehog, tasty-hunit, template-haskell, th-lift-instances
-     , transformers
+     , hedgehog, HUnit, network-uri, safe, tasty, tasty-hedgehog
+     , tasty-hunit, template-haskell, th-lift-instances, transformers
      }:
      mkDerivation {
        pname = "uri-bytestring";
-       version = "0.3.3.0";
-       sha256 = "1zpynqz2q29cfk77n0d6lrnzmrqqi5nijvqd2pkz2fax3s6qhysz";
+       version = "0.3.3.1";
+       sha256 = "0s0k26v5x6601rbpkjkl5vp3dkp9xwj1dlgy4xkl470i4sna1rzk";
        libraryHaskellDepends = [
          attoparsec base blaze-builder bytestring containers
          template-haskell th-lift-instances
        ];
        testHaskellDepends = [
          attoparsec base base-compat blaze-builder bytestring containers
-         hedgehog HUnit safe semigroups tasty tasty-hedgehog tasty-hunit
-         transformers
+         hedgehog HUnit safe tasty tasty-hedgehog tasty-hunit transformers
        ];
        benchmarkHaskellDepends = [
          base blaze-builder bytestring criterion deepseq deepseq-generics
@@ -274592,25 +274577,12 @@ self: {
     ({ mkDerivation, base, hspec }:
      mkDerivation {
        pname = "validity";
-       version = "0.11.0.0";
-       sha256 = "1jawa7d37al29zp2b5hba9w348g926ckbxp51l9bprii5v47lyln";
-       libraryHaskellDepends = [ base ];
-       testHaskellDepends = [ base hspec ];
-       description = "Validity typeclass";
-       license = lib.licenses.mit;
-     }) {};
-
-  "validity_0_11_0_1" = callPackage
-    ({ mkDerivation, base, hspec }:
-     mkDerivation {
-       pname = "validity";
        version = "0.11.0.1";
        sha256 = "086nj5ymp4mxxfw9qjgjhd4j3z7gl2y9d89p0b7bkap5ampgdw2x";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base hspec ];
        description = "Validity typeclass";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "validity-aeson" = callPackage
@@ -274907,6 +274879,18 @@ self: {
        broken = true;
      }) {};
 
+  "variadic-function" = callPackage
+    ({ mkDerivation, base, hspec }:
+     mkDerivation {
+       pname = "variadic-function";
+       version = "0.1.0.2";
+       sha256 = "0kwrhraq45vb9bs0xn4xbahywwrxcspmvmc4l133rilgzx2gcv5w";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base hspec ];
+       description = "Create and transform functions with variable arity";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "variation" = callPackage
     ({ mkDerivation, base, cereal, containers, deepseq, semigroupoids
      }:
@@ -275418,6 +275402,24 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "vector-builder_0_3_8_2" = callPackage
+    ({ mkDerivation, attoparsec, base, QuickCheck, quickcheck-instances
+     , rerebase, tasty, tasty-hunit, tasty-quickcheck, vector
+     }:
+     mkDerivation {
+       pname = "vector-builder";
+       version = "0.3.8.2";
+       sha256 = "1g1zxp6xcwcq3372a5qqs44cl09a48p21m1jsys5bsampprlmcgs";
+       libraryHaskellDepends = [ base vector ];
+       testHaskellDepends = [
+         attoparsec QuickCheck quickcheck-instances rerebase tasty
+         tasty-hunit tasty-quickcheck
+       ];
+       description = "Vector builder";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "vector-bytes-instances" = callPackage
     ({ mkDerivation, base, bytes, tasty, tasty-quickcheck, vector }:
      mkDerivation {
@@ -275712,8 +275714,8 @@ self: {
      }:
      mkDerivation {
        pname = "vector-sized";
-       version = "1.4.3.1";
-       sha256 = "0vm6wvbn3g4r028p46yh24rz7pr429w03jshpwyj2z2c6b058klr";
+       version = "1.4.4";
+       sha256 = "0rlzwxcxzrxg7nwqijigj80fr4fyi5c2a8785898kir5hcyd6v1d";
        libraryHaskellDepends = [
          adjunctions base binary comonad deepseq distributive
          finite-typelits hashable indexed-list-literals primitive vector
@@ -277275,13 +277277,20 @@ self: {
      }) {};
 
   "vulkan" = callPackage
-    ({ mkDerivation, base, bytestring, transformers, vector, vulkan }:
+    ({ mkDerivation, base, bytestring, containers, inline-c, tasty
+     , tasty-discover, tasty-hunit, template-haskell, transformers
+     , vector, vulkan
+     }:
      mkDerivation {
        pname = "vulkan";
-       version = "3.11";
-       sha256 = "0kpnchaidl555zr5k166kmxnb8kiablnwjhi2gb665v64shj3k2k";
+       version = "3.11.2";
+       sha256 = "1pvszf89q1b7r5a1lzdvc28cylmlgnvvss5nw6497iclzh6hs82i";
        libraryHaskellDepends = [ base bytestring transformers vector ];
        libraryPkgconfigDepends = [ vulkan ];
+       testHaskellDepends = [
+         base containers inline-c tasty tasty-hunit template-haskell
+       ];
+       testToolDepends = [ tasty-discover ];
        description = "Bindings to the Vulkan graphics API";
        license = lib.licenses.bsd3;
        platforms = [ "aarch64-linux" "x86_64-linux" ];
@@ -277843,8 +277852,8 @@ self: {
        pname = "wai-handler-hal";
        version = "0.1.0.0";
        sha256 = "0sjw01k5dyhdi33ld1pd4mf9plpij0spzxf2b228cjyc8x5zx7rj";
-       revision = "1";
-       editedCabalFile = "0gnl0xfsx1ahm0w0xykdzm96h3riz497wz9gxdmvzv0aflcg6jw9";
+       revision = "2";
+       editedCabalFile = "0aj45x1czwd69hd4yxsc607njb1qwxz926izzh79axfkrzgiij9k";
        libraryHaskellDepends = [
          base base64-bytestring bytestring case-insensitive hal http-types
          network text unordered-containers vault wai
@@ -279489,39 +279498,6 @@ self: {
      }:
      mkDerivation {
        pname = "warp";
-       version = "3.3.16";
-       sha256 = "1qnngw7afh448hv7fzp4l36j7hz6f8a8f1qga976j8l53qhmgcf1";
-       libraryHaskellDepends = [
-         array auto-update base bsb-http-chunked bytestring case-insensitive
-         containers ghc-prim hashable http-date http-types http2 iproute
-         network simple-sendfile stm streaming-commons text time-manager
-         unix unix-compat unliftio vault wai word8 x509
-       ];
-       testHaskellDepends = [
-         array async auto-update base bsb-http-chunked bytestring
-         case-insensitive containers directory ghc-prim hashable hspec
-         http-client http-date http-types http2 HUnit iproute network
-         process QuickCheck simple-sendfile stm streaming-commons text time
-         time-manager unix unix-compat unliftio vault wai word8 x509
-       ];
-       benchmarkHaskellDepends = [
-         auto-update base bytestring containers gauge hashable http-date
-         http-types network time-manager unix unix-compat unliftio x509
-       ];
-       description = "A fast, light-weight web server for WAI applications";
-       license = lib.licenses.mit;
-     }) {};
-
-  "warp_3_3_17" = callPackage
-    ({ mkDerivation, array, async, auto-update, base, bsb-http-chunked
-     , bytestring, case-insensitive, containers, directory, gauge
-     , ghc-prim, hashable, hspec, http-client, http-date, http-types
-     , http2, HUnit, iproute, network, process, QuickCheck
-     , simple-sendfile, stm, streaming-commons, text, time, time-manager
-     , unix, unix-compat, unliftio, vault, wai, word8, x509
-     }:
-     mkDerivation {
-       pname = "warp";
        version = "3.3.17";
        sha256 = "0v54ca3wpa79gdyiikwhbv9h8b5vr3d60piq3ndb2v7s7fi1qpm0";
        libraryHaskellDepends = [
@@ -279543,7 +279519,6 @@ self: {
        ];
        description = "A fast, light-weight web server for WAI applications";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "warp-dynamic" = callPackage
@@ -279609,8 +279584,8 @@ self: {
     ({ mkDerivation, base, network, systemd, unix, wai, warp }:
      mkDerivation {
        pname = "warp-systemd";
-       version = "0.1.1.0";
-       sha256 = "1gi9xkaa3wi5n2vhmlc7s4zm48l2fakwnd7bw007hzfqi17zz13x";
+       version = "0.2.0.0";
+       sha256 = "114ipqsfvg4bx15n7mnpym8pnj668854s4vdz188awzd0n60hf8z";
        libraryHaskellDepends = [ base network systemd unix wai warp ];
        description = "Socket activation and other systemd integration for the Warp web server (WAI)";
        license = lib.licenses.bsd3;
@@ -281795,8 +281770,8 @@ self: {
        pname = "windns";
        version = "0.1.0.1";
        sha256 = "016d1cf51jqvhbzlf5kbizv4l4dymradac1420rl47q2k5faczq8";
-       revision = "2";
-       editedCabalFile = "129amxjf05b6vi9ln8ijxry062av8bmv3wnng0jis71fyw8ldr0p";
+       revision = "3";
+       editedCabalFile = "10jidn34rmv0amhw3c24pkl64q5xl3c6l9yqwcvqdn0vkbd0bf2v";
        libraryHaskellDepends = [ base bytestring deepseq ];
        librarySystemDepends = [ dnsapi ];
        description = "Domain Name Service (DNS) lookup via the <windns.h>/dnsapi.dll standard library";
@@ -283102,16 +283077,16 @@ self: {
 
   "wreq-helper" = callPackage
     ({ mkDerivation, aeson, aeson-result, base, bytestring, http-client
-     , lens, text, wreq
+     , text
      }:
      mkDerivation {
        pname = "wreq-helper";
-       version = "0.1.0.0";
-       sha256 = "18kmh3swa3bbrkfj1dldi7iy6brdvyhfrbdn8gsz2kcarvhnv5f2";
+       version = "0.2.0.0";
+       sha256 = "181qsfcbkzzri9w1r7wx4a0aq6ahkp3b6nhiras6hg3bcql4wq28";
        libraryHaskellDepends = [
-         aeson aeson-result base bytestring http-client lens text wreq
+         aeson aeson-result base bytestring http-client text
        ];
-       description = "Wreq response process";
+       description = "HTTP/HTTPS response process";
        license = lib.licenses.bsd3;
      }) {};
 
@@ -284611,34 +284586,6 @@ self: {
      }:
      mkDerivation {
        pname = "xlsx";
-       version = "0.8.3";
-       sha256 = "11g6bfir21wgafnkzzx26r6mz8m39isaz2yqw92k5ymdb1qhs95q";
-       libraryHaskellDepends = [
-         attoparsec base base64-bytestring binary-search bytestring conduit
-         containers data-default deepseq errors extra filepath lens mtl
-         network-uri old-locale safe text time transformers vector xeno
-         xml-conduit zip-archive zlib
-       ];
-       testHaskellDepends = [
-         base bytestring containers Diff groom lens mtl raw-strings-qq
-         smallcheck tasty tasty-hunit tasty-smallcheck text time vector
-         xml-conduit
-       ];
-       benchmarkHaskellDepends = [ base bytestring criterion ];
-       description = "Simple and incomplete Excel file parser/writer";
-       license = lib.licenses.mit;
-     }) {};
-
-  "xlsx_0_8_4" = callPackage
-    ({ mkDerivation, attoparsec, base, base64-bytestring, binary-search
-     , bytestring, conduit, containers, criterion, data-default, deepseq
-     , Diff, errors, extra, filepath, groom, lens, mtl, network-uri
-     , old-locale, raw-strings-qq, safe, smallcheck, tasty, tasty-hunit
-     , tasty-smallcheck, text, time, transformers, vector, xeno
-     , xml-conduit, zip-archive, zlib
-     }:
-     mkDerivation {
-       pname = "xlsx";
        version = "0.8.4";
        sha256 = "0xmz9qpqyz2gwlrjsy2m79s4xswb6lz7fbvybd4awg5vy0y6pl41";
        libraryHaskellDepends = [
@@ -284655,7 +284602,6 @@ self: {
        benchmarkHaskellDepends = [ base bytestring criterion ];
        description = "Simple and incomplete Excel file parser/writer";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "xlsx-tabular" = callPackage
@@ -287174,20 +287120,18 @@ self: {
 
   "yarn-lock" = callPackage
     ({ mkDerivation, ansi-wl-pprint, base, containers, either
-     , megaparsec, neat-interpolation, protolude, quickcheck-instances
-     , tasty, tasty-hunit, tasty-quickcheck, tasty-th, text
+     , megaparsec, neat-interpolation, quickcheck-instances, tasty
+     , tasty-hunit, tasty-quickcheck, tasty-th, text
      }:
      mkDerivation {
        pname = "yarn-lock";
-       version = "0.6.4";
-       sha256 = "0vab0k1z2b8j18d5bqiraa4zpxr9rqg2s52y28j3qk292lmpmni9";
-       libraryHaskellDepends = [
-         base containers either megaparsec protolude text
-       ];
+       version = "0.6.5";
+       sha256 = "1x4zhczp6qgzm3sgmc2j5mjffg1ibfpvkxfwh2dv5bcx9nzv7bxy";
+       libraryHaskellDepends = [ base containers either megaparsec text ];
        testHaskellDepends = [
          ansi-wl-pprint base containers either megaparsec neat-interpolation
-         protolude quickcheck-instances tasty tasty-hunit tasty-quickcheck
-         tasty-th text
+         quickcheck-instances tasty tasty-hunit tasty-quickcheck tasty-th
+         text
        ];
        description = "Represent and parse yarn.lock files";
        license = lib.licenses.mit;
@@ -287604,8 +287548,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod";
-       version = "1.6.1.1";
-       sha256 = "1iiaixd1xrqjcvknl9g3yvr26nbpfa2amh2ayfxmnpjlxvdhfnyn";
+       version = "1.6.1.2";
+       sha256 = "13r0ispprj41kgn2rkc7zhy1rxfmgpjbmdlnys15h0ihhh3zhw2f";
        libraryHaskellDepends = [
          aeson base bytestring conduit data-default-class directory
          fast-logger file-embed monad-logger shakespeare streaming-commons
@@ -288207,6 +288151,8 @@ self: {
        pname = "yesod-comments";
        version = "0.9.2";
        sha256 = "1isw8cwzwwsm7p3hqj0ynwncsdfg7x0ihphyv02awchqbgc2c87i";
+       revision = "1";
+       editedCabalFile = "1p1ilvvqyh20mg89cfacjqawwahbx7nk5yg5n9l2i8mqwdfijbdj";
        libraryHaskellDepends = [
          base bytestring directory friendly-time gravatar old-locale
          persistent template-haskell text time wai yesod yesod-auth
@@ -288273,8 +288219,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-core";
-       version = "1.6.20.1";
-       sha256 = "1y24sn30fm7bjq9rfv4lclz3vraaac9qbd2xgz949agm2irjwg4p";
+       version = "1.6.20.2";
+       sha256 = "184j6nslwrfxw4zmsxlii6gs1z0h350kgmbnr5y3wwk3n4dsdzyb";
        libraryHaskellDepends = [
          aeson auto-update base blaze-html blaze-markup bytestring
          case-insensitive cereal clientsession conduit conduit-extra
@@ -288585,8 +288531,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-form-bootstrap4";
-       version = "3.0.0";
-       sha256 = "19lnn0xw13gcvp2jzw01pq47jfhxgwm1c84px3xm582p9vqyygx7";
+       version = "3.0.1";
+       sha256 = "0yf4b14y8b5066lwdr7r2ayiavsnkar3s8q984yb1nrz5956f7qd";
        libraryHaskellDepends = [
          base blaze-html blaze-markup shakespeare text yesod-core yesod-form
        ];
@@ -288708,6 +288654,8 @@ self: {
        pname = "yesod-goodies";
        version = "0.0.5";
        sha256 = "0wxdwyb5dg00ycb09kbl1m12w2bzi6kxbjr4dqgrwfd3dgypcjdz";
+       revision = "1";
+       editedCabalFile = "1b6aw2xqq50i7zqgshllbna890m53ksq4l49l6rm1r0gw06ydnd0";
        libraryHaskellDepends = [
          base blaze-html bytestring directory HTTP old-locale pandoc pureMD5
          text time yesod yesod-form
@@ -288795,6 +288743,8 @@ self: {
        pname = "yesod-links";
        version = "0.3.0";
        sha256 = "0i1b4lgwv98pp7251fm3h4cdb1d868fqwm6175rk7zg699g2v61y";
+       revision = "1";
+       editedCabalFile = "0pnzl4j9pwljjgnfwv8hwhcdf222nm43jsdbxrixi2lbvi2w9hjc";
        libraryHaskellDepends = [ base text yesod-core ];
        description = "A typeclass which simplifies creating link widgets throughout your site";
        license = lib.licenses.bsd3;
@@ -289235,15 +289185,15 @@ self: {
      }) {};
 
   "yesod-recaptcha2" = callPackage
-    ({ mkDerivation, aeson, base, classy-prelude, http-conduit
+    ({ mkDerivation, aeson, base, http-conduit, string-transform, text
      , yesod-core, yesod-form
      }:
      mkDerivation {
        pname = "yesod-recaptcha2";
-       version = "1.0.1";
-       sha256 = "0mf9n016jxiq6ayq80fv9zldfjh9yskcq8p9grfr0dl8njj88yn5";
+       version = "1.0.2";
+       sha256 = "0ql05yxq3k8sywncaz3cf3xaihf4pd0ijn139ms8snyps36k6l8h";
        libraryHaskellDepends = [
-         aeson base classy-prelude http-conduit yesod-core yesod-form
+         aeson base http-conduit string-transform text yesod-core yesod-form
        ];
        description = "yesod recaptcha2";
        license = lib.licenses.mit;
diff --git a/nixpkgs/pkgs/development/haskell-modules/make-package-set.nix b/nixpkgs/pkgs/development/haskell-modules/make-package-set.nix
index 5d178e3b5a1b..b79aace9e3b7 100644
--- a/nixpkgs/pkgs/development/haskell-modules/make-package-set.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/make-package-set.nix
@@ -348,7 +348,7 @@ in package-set { inherit pkgs lib callPackage; } self // {
         #       );
         #     });
         #   in
-        #   hpkgs.shellFor {
+        #   haskellPkgs.shellFor {
         #     packages = p: [ p.foo ];
         #     genericBuilderArgsModifier = args: args // { doCheck = true; doBenchmark = true };
         #   }
diff --git a/nixpkgs/pkgs/development/interpreters/clojure/clooj.nix b/nixpkgs/pkgs/development/interpreters/clojure/clooj.nix
index 1809f9fd2dc0..42d6d67ee15b 100644
--- a/nixpkgs/pkgs/development/interpreters/clojure/clooj.nix
+++ b/nixpkgs/pkgs/development/interpreters/clojure/clooj.nix
@@ -1,20 +1,18 @@
 { lib, stdenv, fetchurl, jre, makeWrapper }:
 
-let version = "0.4.4"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "clooj";
-  inherit version;
+  version = "0.4.4";
 
   jar = fetchurl {
     # mirrored as original mediafire.com source does not work without user interaction
-    url = "https://archive.org/download/clooj-0.4.4-standalone/clooj-0.4.4-standalone.jar";
+    url = "https://archive.org/download/clooj-${version}-standalone/clooj-${version}-standalone.jar";
     sha256 = "0hbc29bg2a86rm3sx9kvj7h7db9j0kbnrb706wsfiyk3zi3bavnd";
   };
 
   nativeBuildInputs = [ makeWrapper ];
 
-  phases = "installPhase";
+  dontUnpack = true;
 
   installPhase = ''
     mkdir -p $out/share/java
diff --git a/nixpkgs/pkgs/development/interpreters/cyclone/default.nix b/nixpkgs/pkgs/development/interpreters/cyclone/default.nix
index c0a11cf9f026..0d2984904d85 100644
--- a/nixpkgs/pkgs/development/interpreters/cyclone/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/cyclone/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub, libck, darwin }:
 
 let
-  version = "0.21";
+  version = "0.30.0";
   bootstrap = stdenv.mkDerivation {
     pname = "cyclone-bootstrap";
     inherit version;
@@ -10,7 +10,7 @@ let
       owner = "justinethier";
       repo = "cyclone-bootstrap";
       rev = "v${version}";
-      sha256 = "0bb3a7x7vzmdyhm4nilm8bcn4q50pwqryggnxz21n16v6xakwjmr";
+      sha256 = "sha256-/zAcCBdJ7YQXsspdjrMca1Oj9SUUFXQKLwZPoZLhHYg=";
     };
 
     enableParallelBuilding = true;
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
     owner = "justinethier";
     repo = "cyclone";
     rev = "v${version}";
-    sha256 = "1vb4yaprs2bwbxmxx2zkqvysxx8r9qww2q1nqkz8yps3ji715jw7";
+    sha256 = "sha256-a3wiqKlIbnvIhyrI0lyVGciQiM7KSuYH5iUfGFrgOuM=";
   };
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/development/interpreters/eff/default.nix b/nixpkgs/pkgs/development/interpreters/eff/default.nix
index 8dba500c15bd..cddb773ec168 100644
--- a/nixpkgs/pkgs/development/interpreters/eff/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/eff/default.nix
@@ -1,11 +1,8 @@
 { lib, stdenv, fetchFromGitHub, which, ocamlPackages }:
 
-let version = "5.0"; in
-
-stdenv.mkDerivation {
-
+stdenv.mkDerivation rec {
   pname = "eff";
-  inherit version;
+  version = "5.0";
 
   src = fetchFromGitHub {
     owner = "matijapretnar";
diff --git a/nixpkgs/pkgs/development/interpreters/gnu-apl/default.nix b/nixpkgs/pkgs/development/interpreters/gnu-apl/default.nix
index 108da08b80d7..0f666dd9af5d 100644
--- a/nixpkgs/pkgs/development/interpreters/gnu-apl/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/gnu-apl/default.nix
@@ -36,7 +36,6 @@ stdenv.mkDerivation rec {
     license     = licenses.gpl3Plus;
     maintainers = [ maintainers.kovirobi ];
     platforms   = with platforms; linux ++ darwin;
-    inherit version;
     mainProgram = "apl";
 
     longDescription = ''
diff --git a/nixpkgs/pkgs/development/interpreters/hugs/default.nix b/nixpkgs/pkgs/development/interpreters/hugs/default.nix
index 6af489473c9c..b903ab425c6d 100644
--- a/nixpkgs/pkgs/development/interpreters/hugs/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/hugs/default.nix
@@ -1,11 +1,11 @@
 { lib, stdenv, fetchurl, bison }:
 
-stdenv.mkDerivation {
-
-  name = "hugs98-200609";
+stdenv.mkDerivation rec {
+  pname = "hugs98";
+  version = "2006-09";
 
   src = fetchurl {
-    url = "http://cvs.haskell.org/Hugs/downloads/2006-09/hugs98-Sep2006.tar.gz";
+    url = "https://www.haskell.org/hugs/downloads/${version}/hugs98-Sep2006.tar.gz";
     sha256 = "1dj65c39zpy6qqvvrwns2hzj6ipnd4ih655xj7kgyk2nfdvd5x1w";
   };
 
diff --git a/nixpkgs/pkgs/development/interpreters/luajit/2.0.nix b/nixpkgs/pkgs/development/interpreters/luajit/2.0.nix
index 528c14a8b247..153b11aaa5fc 100644
--- a/nixpkgs/pkgs/development/interpreters/luajit/2.0.nix
+++ b/nixpkgs/pkgs/development/interpreters/luajit/2.0.nix
@@ -1,10 +1,10 @@
 { self, callPackage, lib }:
 callPackage ./default.nix {
   inherit self;
-  version = "2.0.5-2021-05-29";
-  rev = "c2cfa04231785116d9d198462830f41ef94147c0";
+  version = "2.0.5-2021-06-08";
+  rev = "98f95f69180d48ce49289d6428b46a9ccdd67a46";
   isStable = true;
-  sha256 = "1fw64pv0dvzb9bgr2zwcv9q8gqgsmfnvrcrmrdfgj4ncamgdnilj";
+  sha256 = "1pdmhk5syp0nir80xcnkf6xy2w5rwslak8hgmjpgaxzlnrjcgs7p";
   extraMeta = { # this isn't precise but it at least stops the useless Hydra build
     platforms = with lib; filter (p: p != "aarch64-linux")
       (platforms.linux ++ platforms.darwin);
diff --git a/nixpkgs/pkgs/development/interpreters/luajit/2.1.nix b/nixpkgs/pkgs/development/interpreters/luajit/2.1.nix
index f85fc0932cca..d11514c07c62 100644
--- a/nixpkgs/pkgs/development/interpreters/luajit/2.1.nix
+++ b/nixpkgs/pkgs/development/interpreters/luajit/2.1.nix
@@ -1,8 +1,8 @@
 { self, callPackage }:
 callPackage ./default.nix {
   inherit self;
-  version = "2.1.0-2021-05-29";
-  rev = "839fb5bd72341d8e67b6cfc2053e2acffdb75567";
+  version = "2.1.0-2021-06-25";
+  rev = "e957737650e060d5bf1c2909b741cc3dffe073ac";
   isStable = false;
-  sha256 = "1gyzq4n0fwah0245wazv4c43q9in1mwbk3dhh6cb1ijnjcxp2bb6";
+  sha256 = "04i7n5xdd1nci4mv2p6bv71fq5b1nkswz12hcgirsxqbnkrlbbcj";
 }
diff --git a/nixpkgs/pkgs/development/interpreters/perl/aarch64-darwin.patch b/nixpkgs/pkgs/development/interpreters/perl/aarch64-darwin.patch
deleted file mode 100644
index b700c8ca6e0d..000000000000
--- a/nixpkgs/pkgs/development/interpreters/perl/aarch64-darwin.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-diff --git a/hints/darwin.sh b/hints/darwin.sh
-index 0a91bc083c0..fdfbdd4a3b9 100644
---- a/hints/darwin.sh
-+++ b/hints/darwin.sh
-@@ -301,7 +301,7 @@ case "$osvers" in  # Note: osvers is the kernel version, not the 10.x
-    # We now use MACOSX_DEPLOYMENT_TARGET, if set, as an override by
-    # capturing its value and adding it to the flags.
-     case "$MACOSX_DEPLOYMENT_TARGET" in
--    10.*)
-+    [1-9][0-9].*)
-       add_macosx_version_min ccflags $MACOSX_DEPLOYMENT_TARGET
-       add_macosx_version_min ldflags $MACOSX_DEPLOYMENT_TARGET
-       ;;
-@@ -313,7 +313,7 @@ case "$osvers" in  # Note: osvers is the kernel version, not the 10.x
- 
- *** Unexpected MACOSX_DEPLOYMENT_TARGET=$MACOSX_DEPLOYMENT_TARGET
- ***
--*** Please either set it to 10.something, or to empty.
-+*** Please either set it to a valid macOS version number (e.g., 10.15) or to empty.
- 
- EOM
-       exit 1
-@@ -327,7 +327,7 @@ EOM
-     # "ProductVersion:    10.11"     "10.11"
-         prodvers=`sw_vers|awk '/^ProductVersion:/{print $2}'|awk -F. '{print $1"."$2}'`
-     case "$prodvers" in
--    10.*)
-+    [1-9][0-9].*)
-       add_macosx_version_min ccflags $prodvers
-       add_macosx_version_min ldflags $prodvers
-       ;;
-@@ -342,11 +342,10 @@ EOM
-       exit 1
-     esac
- 
--    # The X in 10.X
--    prodvers_minor=$(echo $prodvers|awk -F. '{print $2}')
-+    darwin_major=$(echo $osvers|awk -F. '{print $1}')
- 
--    # macOS (10.12) deprecated syscall().
--    if [ "$prodvers_minor" -ge 12 ]; then
-+    # macOS 10.12 (darwin 16.0.0) deprecated syscall().
-+    if [ "$darwin_major" -ge 16 ]; then
-         d_syscall='undef'
-         # If deploying to pre-10.12, suppress Time::HiRes's detection of the system clock_gettime()
-         case "$MACOSX_DEPLOYMENT_TARGET" in
diff --git a/nixpkgs/pkgs/development/interpreters/perl/default.nix b/nixpkgs/pkgs/development/interpreters/perl/default.nix
index 5c75894c4f7e..3b39974c16b1 100644
--- a/nixpkgs/pkgs/development/interpreters/perl/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/perl/default.nix
@@ -37,15 +37,11 @@ let
     patches =
       [
         # Do not look in /usr etc. for dependencies.
-        (if (versionOlder version "5.31.1") then ./no-sys-dirs-5.29.patch
-         else ./no-sys-dirs-5.31.patch)
+        ./no-sys-dirs-5.31.patch
       ]
       ++ optional stdenv.isSunOS ./ld-shared.patch
       ++ optionals stdenv.isDarwin [ ./cpp-precomp.patch ./sw_vers.patch ]
-      ++ optional crossCompiling ./MakeMaker-cross.patch
-      # Backporting https://github.com/Perl/perl5/pull/17946, can be
-      # removed if there's ever a 5.30.x release with it included.
-      ++ optional (versionOlder version "5.32.1") ./aarch64-darwin.patch;
+      ++ optional crossCompiling ./MakeMaker-cross.patch;
 
     # This is not done for native builds because pwd may need to come from
     # bootstrap tools when building bootstrap perl.
@@ -197,14 +193,6 @@ let
   });
 in {
   # Maint version
-  perl530 = common {
-    perl = pkgs.perl530;
-    buildPerl = buildPackages.perl530;
-    version = "5.30.3";
-    sha256 = "0vs0wwwlw47sswxaflkk4hw0y45cmc7arxx788kwpbminy5lrq1j";
-  };
-
-  # Maint version
   perl532 = common {
     perl = pkgs.perl532;
     buildPerl = buildPackages.perl532;
@@ -212,6 +200,14 @@ in {
     sha256 = "0b7brakq9xs4vavhg391as50nbhzryc7fy5i65r81bnq3j897dh3";
   };
 
+  # Maint version
+  perl534 = common {
+    perl = pkgs.perl534;
+    buildPerl = buildPackages.perl534;
+    version = "5.34.0";
+    sha256 = "16mywn5afpv1mczv9dlc1w84rbgjgrr0pyr4c0hhb2wnif0zq7jm";
+  };
+
   # the latest Devel version
   perldevel = common {
     perl = pkgs.perldevel;
diff --git a/nixpkgs/pkgs/development/interpreters/perl/no-sys-dirs-5.29.patch b/nixpkgs/pkgs/development/interpreters/perl/no-sys-dirs-5.29.patch
deleted file mode 100644
index 0ccf6254b782..000000000000
--- a/nixpkgs/pkgs/development/interpreters/perl/no-sys-dirs-5.29.patch
+++ /dev/null
@@ -1,251 +0,0 @@
-diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure
---- perl-5.20.0-orig/Configure	2014-05-26 15:34:18.000000000 +0200
-+++ perl-5.20.0/Configure	2014-06-25 10:43:35.368285986 +0200
-@@ -106,15 +106,7 @@
- fi
- 
- : Proper PATH setting
--paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin'
--paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin"
--paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin"
--paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin"
--paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb"
--paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /opt/ansic/bin /usr/ccs/bin"
--paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib"
--paths="$paths /sbin /usr/sbin /usr/libexec"
--paths="$paths /system/gnu_library/bin"
-+paths=''
- 
- for p in $paths
- do
-@@ -1337,8 +1329,7 @@
- archname=''
- : Possible local include directories to search.
- : Set locincpth to "" in a hint file to defeat local include searches.
--locincpth="/usr/local/include /opt/local/include /usr/gnu/include"
--locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include"
-+locincpth=""
- :
- : no include file wanted by default
- inclwanted=''
-@@ -1349,17 +1340,12 @@
- 
- libnames=''
- : change the next line if compiling for Xenix/286 on Xenix/386
--xlibpth='/usr/lib/386 /lib/386'
-+xlibpth=''
- : Possible local library directories to search.
--loclibpth="/usr/local/lib /opt/local/lib /usr/gnu/lib"
--loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib"
-+loclibpth=""
- 
- : general looking path for locating libraries
--glibpth="/lib /usr/lib $xlibpth"
--glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib"
--test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth"
--test -f /shlib/libc.so     && glibpth="/shlib $glibpth"
--test -d /usr/lib64         && glibpth="$glibpth /lib64 /usr/lib64 /usr/local/lib64"
-+glibpth=""
- 
- : Private path used by Configure to find libraries.  Its value
- : is prepended to libpth. This variable takes care of special
-@@ -1391,8 +1377,6 @@
- libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
- : We probably want to search /usr/shlib before most other libraries.
- : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
--glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'`
--glibpth="/usr/shlib $glibpth"
- : Do not use vfork unless overridden by a hint file.
- usevfork=false
- 
-@@ -2446,7 +2430,6 @@
- zip
- "
- pth=`echo $PATH | sed -e "s/$p_/ /g"`
--pth="$pth $sysroot/lib $sysroot/usr/lib"
- for file in $loclist; do
- 	eval xxx=\$$file
- 	case "$xxx" in
-@@ -4936,7 +4919,7 @@
- : Set private lib path
- case "$plibpth" in
- '') if ./mips; then
--	plibpth="$incpath/usr/lib $sysroot/usr/local/lib $sysroot/usr/ccs/lib"
-+	plibpth="$incpath/usr/lib"
-     fi;;
- esac
- case "$libpth" in
-@@ -8600,13 +8583,8 @@
- echo " "
- case "$sysman" in
- '')
--	syspath='/usr/share/man/man1 /usr/man/man1'
--	syspath="$syspath /usr/man/mann /usr/man/manl /usr/man/local/man1"
--	syspath="$syspath /usr/man/u_man/man1"
--	syspath="$syspath /usr/catman/u_man/man1 /usr/man/l_man/man1"
--	syspath="$syspath /usr/local/man/u_man/man1 /usr/local/man/l_man/man1"
--	syspath="$syspath /usr/man/man.L /local/man/man1 /usr/local/man/man1"
--	sysman=`./loc . /usr/man/man1 $syspath`
-+	syspath=''
-+	sysman=''
- 	;;
- esac
- if $test -d "$sysman"; then
-@@ -19900,9 +19878,10 @@
- case "$full_ar" in
- '') full_ar=$ar ;;
- esac
-+full_ar=ar
- 
- : Store the full pathname to the sed program for use in the C program
--full_sed=$sed
-+full_sed=sed
- 
- : see what type gids are declared as in the kernel
- echo " "
-Only in perl-5.20.0/: Configure.orig
-diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/ext/Errno/Errno_pm.PL perl-5.20.0/ext/Errno/Errno_pm.PL
---- perl-5.20.0-orig/ext/Errno/Errno_pm.PL	2014-05-26 15:34:20.000000000 +0200
-+++ perl-5.20.0/ext/Errno/Errno_pm.PL	2014-06-25 10:31:24.317970047 +0200
-@@ -134,12 +126,7 @@
- 	if ($dep =~ /(\S+errno\.h)/) {
- 	     $file{$1} = 1;
- 	}
--    } elsif ($^O eq 'linux' &&
--	      $Config{gccversion} ne '' && 
--	      $Config{gccversion} !~ /intel/i &&
--	      # might be using, say, Intel's icc
--	      $linux_errno_h
--	     ) {
-+    } elsif (0) {
-	$file{$linux_errno_h} = 1;
-     } elsif ($^O eq 'haiku') {
-	# hidden in a special place
-Only in perl-5.20.0/ext/Errno: Errno_pm.PL.orig
-diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/freebsd.sh perl-5.20.0/hints/freebsd.sh
---- perl-5.20.0-orig/hints/freebsd.sh	2014-01-31 22:55:51.000000000 +0100
-+++ perl-5.20.0/hints/freebsd.sh	2014-06-25 10:25:53.263964680 +0200
-@@ -119,21 +119,21 @@
-         objformat=`/usr/bin/objformat`
-         if [ x$objformat = xaout ]; then
-             if [ -e /usr/lib/aout ]; then
--                libpth="/usr/lib/aout /usr/local/lib /usr/lib"
--                glibpth="/usr/lib/aout /usr/local/lib /usr/lib"
-+                libpth=""
-+                glibpth=""
-             fi
-             lddlflags='-Bshareable'
-         else
--            libpth="/usr/lib /usr/local/lib"
--            glibpth="/usr/lib /usr/local/lib"
-+            libpth=""
-+            glibpth=""
-             ldflags="-Wl,-E "
-             lddlflags="-shared "
-         fi
-         cccdlflags='-DPIC -fPIC'
-         ;;
- *)
--       libpth="/usr/lib /usr/local/lib"
--       glibpth="/usr/lib /usr/local/lib"
-+       libpth=""
-+       glibpth=""
-        ldflags="-Wl,-E "
-         lddlflags="-shared "
-         cccdlflags='-DPIC -fPIC'
-diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/linux.sh perl-5.20.0/hints/linux.sh
---- perl-5.20.0-orig/hints/linux.sh	2014-05-26 15:34:20.000000000 +0200
-+++ perl-5.20.0/hints/linux.sh	2014-06-25 10:33:47.354883843 +0200
-@@ -150,25 +150,6 @@
-     ;;
- esac
- 
--# Ubuntu 11.04 (and later, presumably) doesn't keep most libraries
--# (such as -lm) in /lib or /usr/lib.  So we have to ask gcc to tell us
--# where to look.  We don't want gcc's own libraries, however, so we
--# filter those out.
--# This could be conditional on Unbuntu, but other distributions may
--# follow suit, and this scheme seems to work even on rather old gcc's.
--# This unconditionally uses gcc because even if the user is using another
--# compiler, we still need to find the math library and friends, and I don't
--# know how other compilers will cope with that situation.
--# Morever, if the user has their own gcc earlier in $PATH than the system gcc,
--# we don't want its libraries. So we try to prefer the system gcc
--# Still, as an escape hatch, allow Configure command line overrides to
--# plibpth to bypass this check.
--if [ -x /usr/bin/gcc ] ; then
--    gcc=/usr/bin/gcc
--else
--    gcc=gcc
--fi
--
- case "$plibpth" in
- '') plibpth=`LANG=C LC_ALL=C $gcc $ccflags $ldflags -print-search-dirs | grep libraries |
- 	cut -f2- -d= | tr ':' $trnl | grep -v 'gcc' | sed -e 's:/$::'`
-@@ -178,32 +159,6 @@
-     ;;
- esac
- 
--case "$libc" in
--'')
--# If you have glibc, then report the version for ./myconfig bug reporting.
--# (Configure doesn't need to know the specific version since it just uses
--# gcc to load the library for all tests.)
--# We don't use __GLIBC__ and  __GLIBC_MINOR__ because they
--# are insufficiently precise to distinguish things like
--# libc-2.0.6 and libc-2.0.7.
--    for p in $plibpth
--    do
--        for trylib in libc.so.6 libc.so
--        do
--            if $test -e $p/$trylib; then
--                libc=`ls -l $p/$trylib | awk '{print $NF}'`
--                if $test "X$libc" != X; then
--                    break
--                fi
--            fi
--        done
--        if $test "X$libc" != X; then
--            break
--        fi
--    done
--    ;;
--esac
--
- if ${sh:-/bin/sh} -c exit; then
-   echo ''
-   echo 'You appear to have a working bash.  Good.'
-@@ -367,33 +322,6 @@
- 	;;
- esac
- 
--# SuSE8.2 has /usr/lib/libndbm* which are ld scripts rather than
--# true libraries. The scripts cause binding against static
--# version of -lgdbm which is a bad idea. So if we have 'nm'
--# make sure it can read the file
--# NI-S 2003/08/07
--case "$nm" in
--    '') ;;
--    *)
--    for p in $plibpth
--    do
--        if $test -r $p/libndbm.so; then
--            if $nm $p/libndbm.so >/dev/null 2>&1 ; then
--                echo 'Your shared -lndbm seems to be a real library.'
--                _libndbm_real=1
--                break
--            fi
--        fi
--    done
--    if $test "X$_libndbm_real" = X; then
--        echo 'Your shared -lndbm is not a real library.'
--        set `echo X "$libswanted "| sed -e 's/ ndbm / /'`
--        shift
--        libswanted="$*"
--    fi
--    ;;
--esac
--
- # Linux on Synology.
- if [ -f /etc/synoinfo.conf -a -d /usr/syno ]; then
-     # Tested on Synology DS213 and DS413
diff --git a/nixpkgs/pkgs/development/interpreters/proglodyte-wasm/default.nix b/nixpkgs/pkgs/development/interpreters/proglodyte-wasm/default.nix
deleted file mode 100644
index 2d4acbd398ea..000000000000
--- a/nixpkgs/pkgs/development/interpreters/proglodyte-wasm/default.nix
+++ /dev/null
@@ -1,61 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, cmake, clang, python, v8, coreutils }:
-
-let
-  sexpr_wasm_prototype = stdenv.mkDerivation {
-    name = "sexpr_wasm_prototype";
-    src = fetchFromGitHub {
-      owner = "WebAssembly";
-      repo = "sexpr-wasm-prototype";
-      rev = "1347a367c34876bfe92562f244a8c8b770372479";
-      sha256 = "1v1mph5fp1rffhvh8bbx937gpjqjrdgm7yhffdxzdn4pih9d0grn";
-    };
-
-    configurePhase = ''
-      # set this to nonempty string to disable default cmake configure
-    '';
-
-    nativeBuildInputs = [ cmake ];
-    buildInputs = [ clang python ];
-
-    buildPhase = "make clang-debug-no-tests";
-
-    hardeningDisable = [ "format" ];
-
-    installPhase = ''
-      mkdir -p $out/bin
-      cp out/clang/Debug/no-tests/sexpr-wasm $out/bin
-    '';
-  };
-
-in
-
-stdenv.mkDerivation {
-  name = "wasm-0.0.1";
-
-  src = fetchFromGitHub {
-    owner = "proglodyte";
-    repo = "wasm";
-    rev = "650188eecaaf4b64f12b341986b4e89e5fdb3bbe";
-    sha256 = "1f5mdl0l2448lx7h36b4bdr541a4q1wapn1kdwrd4z7s94n7a5gq";
-  };
-
-  configurePhase = ''
-    sed -i -e "s|sudo ||g" Makefile
-  '';
-
-  installPhase = ''
-    export DESTDIR=$out
-    export MKTEMPDIR=${coreutils}/bin
-    export D8DIR=${v8}/bin
-    export SWDIR=${sexpr_wasm_prototype}/bin
-    make install
-  '';
-
-  meta = with lib; {
-    description = "wasm runs WebAssembly from the command line";
-    maintainers = with maintainers; [ proglodyte ];
-    platforms = platforms.linux;
-    license = licenses.asl20;
-    broken = true;
-  };
-}
diff --git a/nixpkgs/pkgs/development/interpreters/pyrex/0.9.5.nix b/nixpkgs/pkgs/development/interpreters/pyrex/0.9.5.nix
index a9c71c6fcf70..3fb909b0bb0d 100644
--- a/nixpkgs/pkgs/development/interpreters/pyrex/0.9.5.nix
+++ b/nixpkgs/pkgs/development/interpreters/pyrex/0.9.5.nix
@@ -1,10 +1,8 @@
 { lib, fetchurl, python2Packages }:
 
-let version = "0.9.5.1.1"; in
-
-python2Packages.buildPythonPackage {
+python2Packages.buildPythonPackage rec {
   pname = "pyrex";
-  inherit version;
+  version = "0.9.5.1.1";
 
   src = fetchurl {
     url = "https://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/oldtar/Pyrex-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/interpreters/pyrex/0.9.6.nix b/nixpkgs/pkgs/development/interpreters/pyrex/0.9.6.nix
index 12429c05fe63..e9d8d3097093 100644
--- a/nixpkgs/pkgs/development/interpreters/pyrex/0.9.6.nix
+++ b/nixpkgs/pkgs/development/interpreters/pyrex/0.9.6.nix
@@ -1,10 +1,8 @@
 { lib, fetchurl, python2Packages }:
 
-let version = "0.9.6.4"; in
-
-python2Packages.buildPythonPackage {
+python2Packages.buildPythonPackage rec {
   pname = "pyrex";
-  inherit version;
+  version = "0.9.6.4";
 
   src = fetchurl {
     url = "https://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/oldtar/Pyrex-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/interpreters/python/cpython/default.nix b/nixpkgs/pkgs/development/interpreters/python/cpython/default.nix
index b8132cea4fc7..f52255f4748b 100644
--- a/nixpkgs/pkgs/development/interpreters/python/cpython/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/cpython/default.nix
@@ -39,6 +39,13 @@
 , includeSiteCustomize ? true
 , static ? stdenv.hostPlatform.isStatic
 , enableOptimizations ? false
+# enableNoSemanticInterposition is a subset of the enableOptimizations flag that doesn't harm reproducibility.
+# clang starts supporting `-fno-sematic-interposition` with version 10
+, enableNoSemanticInterposition ? (!stdenv.cc.isClang || (stdenv.cc.isClang && lib.versionAtLeast stdenv.cc.version "10"))
+# enableLTO is a subset of the enableOptimizations flag that doesn't harm reproducibility.
+# enabling LTO on 32bit arch causes downstream packages to fail when linking
+# enabling LTO on *-darwin causes python3 to fail when linking.
+, enableLTO ? stdenv.is64bit && stdenv.isLinux
 , reproducibleBuild ? true
 , pythonAttr ? "python${sourceVersion.major}${sourceVersion.minor}"
 }:
@@ -100,6 +107,8 @@ let
   ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     buildPackages.stdenv.cc
     pythonForBuild
+  ] ++ optionals (stdenv.cc.isClang && enableLTO) [
+    stdenv.cc.cc.libllvm.out
   ];
 
   buildInputs = filter (p: p != null) ([
@@ -190,6 +199,10 @@ in with passthru; stdenv.mkDerivation {
     # (since it will do a futile invocation of gcc (!) to find
     # libuuid, slowing down program startup a lot).
     (./. + "/${sourceVersion.major}.${sourceVersion.minor}/no-ldconfig.patch")
+    # Make sure that the virtualenv activation scripts are
+    # owner-writable, so venvs can be recreated without permission
+    # errors.
+    ./virtualenv-permissions.patch
   ] ++ optionals mimetypesSupport [
     # Make the mimetypes module refer to the right file
     ./mimetypes.patch
@@ -274,6 +287,8 @@ in with passthru; stdenv.mkDerivation {
     "--with-system-ffi"
   ] ++ optionals enableOptimizations [
     "--enable-optimizations"
+  ] ++ optionals enableLTO [
+    "--with-lto"
   ] ++ optionals (pythonOlder "3.7") [
     # This is unconditionally true starting in CPython 3.7.
     "--with-threads"
@@ -323,6 +338,17 @@ in with passthru; stdenv.mkDerivation {
     export DETERMINISTIC_BUILD=1;
   '' + optionalString stdenv.hostPlatform.isMusl ''
     export NIX_CFLAGS_COMPILE+=" -DTHREAD_STACK_SIZE=0x100000"
+  '' +
+
+  # enableNoSemanticInterposition essentially sets that CFLAG -fno-semantic-interposition
+  # which changes how symbols are looked up. This essentially means we can't override
+  # libpython symbols via LD_PRELOAD anymore. This is common enough as every build
+  # that uses --enable-optimizations has the same "issue".
+  #
+  # The Fedora wiki has a good article about their journey towards enabling this flag:
+  # https://fedoraproject.org/wiki/Changes/PythonNoSemanticInterpositionSpeedup
+  optionalString enableNoSemanticInterposition ''
+    export CFLAGS_NODIST="-fno-semantic-interposition"
   '';
 
   setupHook = python-setup-hook sitePackages;
diff --git a/nixpkgs/pkgs/development/interpreters/python/cpython/virtualenv-permissions.patch b/nixpkgs/pkgs/development/interpreters/python/cpython/virtualenv-permissions.patch
new file mode 100644
index 000000000000..c686f21bfbbe
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/python/cpython/virtualenv-permissions.patch
@@ -0,0 +1,13 @@
+diff --git a/Lib/venv/__init__.py b/Lib/venv/__init__.py
+index caa7285..ad666ac 100644
+--- a/Lib/venv/__init__.py
++++ b/Lib/venv/__init__.py
+@@ -379,7 +379,7 @@ class EnvBuilder:
+                 if data is not None:
+                     with open(dstfile, 'wb') as f:
+                         f.write(data)
+-                    shutil.copymode(srcfile, dstfile)
++                    os.chmod(dstfile, 0o644)
+ 
+ 
+ def create(env_dir, system_site_packages=False, clear=False,
diff --git a/nixpkgs/pkgs/development/interpreters/python/default.nix b/nixpkgs/pkgs/development/interpreters/python/default.nix
index 9c4499b18432..ae5d06eefa35 100644
--- a/nixpkgs/pkgs/development/interpreters/python/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/default.nix
@@ -118,14 +118,23 @@ with pkgs;
   };
 
   sources = {
-    "python38" = {
+    python38 = {
       sourceVersion = {
         major = "3";
         minor = "8";
-        patch = "9";
+        patch = "10";
         suffix = "";
       };
-      sha256 = "XjkfPsRdopVEGcqwvq79i+OIlepc4zV3w+wUlAxLlXI=";
+      sha256 = "1n8rjb3jn0j8dvi1qn94rxayc9rh982d8wgkrjy41n1x15k4mwka";
+    };
+    python39 = {
+      sourceVersion = {
+        major = "3";
+        minor = "9";
+        patch = "5";
+        suffix = "";
+      };
+      sha256 = "10vdf46q5ldnzkprm8pldvr5a9hrdpxjv7mpzgdw6vj3cl318nhc";
     };
   };
 
@@ -176,18 +185,11 @@ in {
     inherit passthruFun;
   } // sources.python38);
 
-  python39 = callPackage ./cpython {
+  python39 = callPackage ./cpython ({
     self = python39;
-    sourceVersion = {
-      major = "3";
-      minor = "9";
-      patch = "4";
-      suffix = "";
-    };
-    sha256 = "Sw5mRKdvjfhkriSsUApRu/aL0Jj2oXPifTthzcqaoTQ=";
     inherit (darwin) configd;
     inherit passthruFun;
-  };
+  } // sources.python39);
 
   python310 = callPackage ./cpython {
     self = python310;
@@ -195,9 +197,9 @@ in {
       major = "3";
       minor = "10";
       patch = "0";
-      suffix = "a5";
+      suffix = "b3";
     };
-    sha256 = "BBjlfnA24hnx5rYwOyHnEfZM/Q/dsIlNjxnzev/8XU0=";
+    sha256 = "05fc4mp2ysb372bzkwbn1b1z01bfldnaqig6rxmif58hs3aawrr2";
     inherit (darwin) configd;
     inherit passthruFun;
   };
@@ -223,8 +225,9 @@ in {
     stripBytecode = true;
     includeSiteCustomize = false;
     enableOptimizations = false;
+    enableLTO = false;
     mimetypesSupport = false;
-  } // sources.python38)).overrideAttrs(old: {
+  } // sources.python39)).overrideAttrs(old: {
     pname = "python3-minimal";
     meta = old.meta // {
       maintainers = [];
@@ -236,9 +239,9 @@ in {
     sourceVersion = {
       major = "7";
       minor = "3";
-      patch = "3";
+      patch = "5";
     };
-    sha256 = "0di3dr5ry4r0hwxh4fbqjhyl5im948wdby0bhijzsxx83c2qhd7n";
+    sha256 = "sha256-wERP2YcwWMHA2Z4TqTTpIoXLBZksmWi/Ujwyv5vsCp0=";
     pythonVersion = "2.7";
     db = db.override { dbmSupport = !stdenv.isDarwin; };
     python = python27;
@@ -247,15 +250,15 @@ in {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
-  pypy36 = callPackage ./pypy {
-    self = pypy36;
+  pypy37 = callPackage ./pypy {
+    self = pypy37;
     sourceVersion = {
       major = "7";
       minor = "3";
-      patch = "3";
+      patch = "5";
     };
-    sha256 = "1bq5i2mqgjjfc4rhxgxm6ihwa76vn2qapd7l59ri7xp01p522gd2";
-    pythonVersion = "3.6";
+    sha256 = "sha256-2SD+QJqeytnQdKqFaMpfPtNYG+ZvZuXYmIt+xm5tmaI=";
+    pythonVersion = "3.7";
     db = db.override { dbmSupport = !stdenv.isDarwin; };
     python = python27;
     inherit passthruFun;
diff --git a/nixpkgs/pkgs/development/interpreters/python/pypy/default.nix b/nixpkgs/pkgs/development/interpreters/python/pypy/default.nix
index a5ba4983e43c..668a4e24b39e 100644
--- a/nixpkgs/pkgs/development/interpreters/python/pypy/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/pypy/default.nix
@@ -73,6 +73,8 @@ in with passthru; stdenv.mkDerivation rec {
   LD_LIBRARY_PATH = makeLibraryPath (filter (x : x.outPath != stdenv.cc.libc.outPath or "") buildInputs);
 
   patches = [
+    ./dont_fetch_vendored_deps.patch
+
     (substituteAll {
       src = ./tk_tcl_paths.patch;
       inherit tk tcl;
@@ -81,12 +83,18 @@ in with passthru; stdenv.mkDerivation rec {
       tk_libprefix = tk.libPrefix;
       tcl_libprefix = tcl.libPrefix;
     })
+
+    (substituteAll {
+      src = ./sqlite_paths.patch;
+      inherit (sqlite) out dev;
+    })
   ];
 
   postPatch = ''
-    substituteInPlace "lib-python/${if isPy3k then "3/tkinter/tix.py" else "2.7/lib-tk/Tix.py"}" --replace "os.environ.get('TIX_LIBRARY')" "os.environ.get('TIX_LIBRARY') or '${tix}/lib'"
+    substituteInPlace lib_pypy/pypy_tools/build_cffi_imports.py \
+      --replace "multiprocessing.cpu_count()" "$NIX_BUILD_CORES"
 
-    sed -i "s@libraries=\['sqlite3'\]\$@libraries=['sqlite3'], include_dirs=['${sqlite.dev}/include'], library_dirs=['${sqlite.out}/lib']@" lib_pypy/_sqlite3_build.py
+    substituteInPlace "lib-python/${if isPy3k then "3/tkinter/tix.py" else "2.7/lib-tk/Tix.py"}" --replace "os.environ.get('TIX_LIBRARY')" "os.environ.get('TIX_LIBRARY') or '${tix}/lib'"
   '';
 
   buildPhase = ''
diff --git a/nixpkgs/pkgs/development/interpreters/python/pypy/dont_fetch_vendored_deps.patch b/nixpkgs/pkgs/development/interpreters/python/pypy/dont_fetch_vendored_deps.patch
new file mode 100644
index 000000000000..bc959e15d1af
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/python/pypy/dont_fetch_vendored_deps.patch
@@ -0,0 +1,12 @@
+diff -ur a/lib_pypy/pypy_tools/build_cffi_imports.py b/lib_pypy/pypy_tools/build_cffi_imports.py
+--- a/lib_pypy/pypy_tools/build_cffi_imports.py	2021-04-12 01:11:48.000000000 -0400
++++ b/lib_pypy/pypy_tools/build_cffi_imports.py	2021-07-16 06:37:03.000000000 -0400
+@@ -225,6 +225,8 @@
+ 
+         print('*', ' '.join(args), file=sys.stderr)
+         if embed_dependencies and key in cffi_dependencies:
++            print("Nixpkgs: skipping fetching/building dependency", key)
++        elif False:
+             status, stdout, stderr = _build_dependency(key)
+             if status != 0:
+                 failures.append((key, module))
diff --git a/nixpkgs/pkgs/development/interpreters/python/pypy/sqlite_paths.patch b/nixpkgs/pkgs/development/interpreters/python/pypy/sqlite_paths.patch
new file mode 100644
index 000000000000..42de7efb3ea3
--- /dev/null
+++ b/nixpkgs/pkgs/development/interpreters/python/pypy/sqlite_paths.patch
@@ -0,0 +1,12 @@
+diff -ur a/lib_pypy/_sqlite3_build.py b/lib_pypy/_sqlite3_build.py
+--- a/lib_pypy/_sqlite3_build.py	2021-04-12 01:11:48.000000000 -0400
++++ b/lib_pypy/_sqlite3_build.py	2021-07-14 18:08:33.000000000 -0400
+@@ -301,6 +301,8 @@
+ else:
+     extra_args = dict(
+         libraries=libraries,
++        include_dirs=['@dev@/include'],
++        library_dirs=['@out@/lib']
+     )
+ 
+ SOURCE = """
diff --git a/nixpkgs/pkgs/development/interpreters/rascal/default.nix b/nixpkgs/pkgs/development/interpreters/rascal/default.nix
index 8b49a743b4a9..6ba92a041eb5 100644
--- a/nixpkgs/pkgs/development/interpreters/rascal/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/rascal/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, makeWrapper, jdk }:
 
 stdenv.mkDerivation rec {
-  name = "rascal-0.6.2";
+  pname = "rascal";
+  version = "0.6.2";
 
   src = fetchurl {
-    url = "https://update.rascal-mpl.org/console/${name}.jar";
+    url = "https://update.rascal-mpl.org/console/${pname}-${version}.jar";
     sha256 = "1z4mwdbdc3r24haljnxng8znlfg2ihm9bf9zq8apd9a32ipcw4i6";
   };
 
diff --git a/nixpkgs/pkgs/development/interpreters/ruby/default.nix b/nixpkgs/pkgs/development/interpreters/ruby/default.nix
index 454539c93ec8..ec2906e17363 100644
--- a/nixpkgs/pkgs/development/interpreters/ruby/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/ruby/default.nix
@@ -11,7 +11,7 @@ let
   opString = lib.optionalString;
   patchSet = import ./rvm-patchsets.nix { inherit fetchFromGitHub; };
   config = import ./config.nix { inherit fetchFromSavannah; };
-  rubygems = import ./rubygems { inherit stdenv lib fetchurl fetchpatch; };
+  rubygems = import ./rubygems { inherit stdenv lib fetchurl; };
 
   # Contains the ruby version heuristics
   rubyVersion = import ./ruby-version.nix { inherit lib; };
@@ -321,26 +321,26 @@ in {
   };
 
   ruby_2_6 = generic {
-    version = rubyVersion "2" "6" "7" "";
+    version = rubyVersion "2" "6" "8" "";
     sha256 = {
-      src = "17m9qxalwhk95dw1qhgxbvr3kkcxs3h86yirfg5mwj35gy5pw8p4";
-      git = "08gvknanwdfsaj3lmcv1bdqjf9lldphzi7gmlv3cfa8ligx2vbap";
+      src = "0vfam28ifl6h2wxi6p70j0hm3f1pvsp432hf75m5j25wfy2vf1qq";
+      git = "0rc3n6sk8632r0libpv8jwslc7852hgk64rvbdrspc9razjwx21c";
     };
   };
 
   ruby_2_7 = generic {
-    version = rubyVersion "2" "7" "3" "";
+    version = rubyVersion "2" "7" "4" "";
     sha256 = {
-      src = "0f2kwn98n9h9hy1fd547s7d0a7ga8jjm4nh294bwiwnq65gaj9c9";
-      git = "0vxg9w4dgpw2ig5snxmkahvzdp2yh71w8qm49g35d5hqdsql7yrx";
+      src = "0nxwkxh7snmjqf787qsp4i33mxd1rbf9yzyfiky5k230i680jhrh";
+      git = "1prsrqwkla4k5japlm54k0j700j4824rg8z8kpswr9r3swrmrf5p";
     };
   };
 
   ruby_3_0 = generic {
-    version = rubyVersion "3" "0" "1" "";
+    version = rubyVersion "3" "0" "2" "";
     sha256 = {
-      src = "09vpnxxcxc46qv40xbxr9xkdpbgb0imdy25l2vpsxxlr47djb61n";
-      git = "0vricyhnnczcbsgvz65pdhi9yx1i34zarbjlc5y5mcmj01y9r7ar";
+      src = "1wg6yyzc6arzikcy48igqbxfcdc79bmfpiyfi9m9j1lzmphdx1ah";
+      git = "1kbkxqichi11vli080jgyvjf2xgnlbl9l2f2n1hv4s8b31gjib3r";
     };
   };
 }
diff --git a/nixpkgs/pkgs/development/interpreters/ruby/patchsets.nix b/nixpkgs/pkgs/development/interpreters/ruby/patchsets.nix
index 29836338d3bf..de74e628f508 100644
--- a/nixpkgs/pkgs/development/interpreters/ruby/patchsets.nix
+++ b/nixpkgs/pkgs/development/interpreters/ruby/patchsets.nix
@@ -71,17 +71,17 @@
     "${patchSet}/patches/ruby/2.5/head/railsexpress/02-improve-gc-stats.patch"
     "${patchSet}/patches/ruby/2.5/head/railsexpress/03-more-detailed-stacktrace.patch"
   ];
-  "2.6.7" = ops useRailsExpress [
+  "2.6.8" = ops useRailsExpress [
     "${patchSet}/patches/ruby/2.6/head/railsexpress/01-fix-broken-tests-caused-by-ad.patch"
     "${patchSet}/patches/ruby/2.6/head/railsexpress/02-improve-gc-stats.patch"
     "${patchSet}/patches/ruby/2.6/head/railsexpress/03-more-detailed-stacktrace.patch"
   ];
-  "2.7.3" = ops useRailsExpress [
+  "2.7.4" = ops useRailsExpress [
     "${patchSet}/patches/ruby/2.7/head/railsexpress/01-fix-broken-tests-caused-by-ad.patch"
     "${patchSet}/patches/ruby/2.7/head/railsexpress/02-improve-gc-stats.patch"
     "${patchSet}/patches/ruby/2.7/head/railsexpress/03-more-detailed-stacktrace.patch"
   ];
-  "3.0.1" = ops useRailsExpress [
+  "3.0.2" = ops useRailsExpress [
     "${patchSet}/patches/ruby/3.0/head/railsexpress/01-improve-gc-stats.patch"
     "${patchSet}/patches/ruby/3.0/head/railsexpress/02-malloc-trim.patch"
   ];
diff --git a/nixpkgs/pkgs/development/interpreters/ruby/rubygems/default.nix b/nixpkgs/pkgs/development/interpreters/ruby/rubygems/default.nix
index cf2ca1b766ea..6f089e51221f 100644
--- a/nixpkgs/pkgs/development/interpreters/ruby/rubygems/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/ruby/rubygems/default.nix
@@ -1,24 +1,18 @@
-{ stdenv, lib, fetchurl, fetchpatch }:
+{ stdenv, lib, fetchurl }:
 
 stdenv.mkDerivation rec {
   name = "rubygems";
-  version = "3.2.16";
+  version = "3.2.24";
 
   src = fetchurl {
     url = "https://rubygems.org/rubygems/rubygems-${version}.tgz";
-    sha256 = "1bpn45hchcbirqvqwxcxyk1xy2xkdd915jci2hfjq4y6zc4idns0";
+    sha256 = "09ff830a043y6s7390hsg3k55ffpifb1zsvs0dhz8z8pypwgiscl";
   };
 
   patches = [
     ./0001-add-post-extract-hook.patch
     ./0002-binaries-with-env-shebang.patch
     ./0003-gem-install-default-to-user.patch
-    # Ensure tmp directory are not left behind
-    # https://github.com/rubygems/rubygems/pull/4610
-    (fetchpatch {
-      url = "https://github.com/rubygems/rubygems/commit/2c2ffde6e4a9f7f571d38af687034fb8507a833d.patch";
-      sha256 = "sha256-bs2dXALKiJvMgk7lKjMx0NzGqlEqDYBBO35UrzNifms=";
-    })
   ];
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/development/interpreters/ruby/rvm-patchsets.nix b/nixpkgs/pkgs/development/interpreters/ruby/rvm-patchsets.nix
index 3c2113d608c5..88b75a5aa066 100644
--- a/nixpkgs/pkgs/development/interpreters/ruby/rvm-patchsets.nix
+++ b/nixpkgs/pkgs/development/interpreters/ruby/rvm-patchsets.nix
@@ -3,6 +3,6 @@
 fetchFromGitHub {
   owner  = "skaes";
   repo   = "rvm-patchsets";
-  rev    = "28c6469ce841ff3033c376e78a7043009a3bdc5c";
-  sha256 = "0kh08hahrwif61sq0qlvgyqiymxi8c8h2dw4s3ln4aq696k4gba9";
+  rev    = "0251817e2b9d5f73370bbbb12fdf7f7089bd1ac3";
+  sha256 = "1biiq5xzzdfb4hr1sgmx14i2nr05xa9w21pc7dl8c5n4f2ilg8ss";
 }
diff --git a/nixpkgs/pkgs/development/interpreters/spidermonkey/68.nix b/nixpkgs/pkgs/development/interpreters/spidermonkey/68.nix
index f867e606140f..420c3d72f891 100644
--- a/nixpkgs/pkgs/development/interpreters/spidermonkey/68.nix
+++ b/nixpkgs/pkgs/development/interpreters/spidermonkey/68.nix
@@ -14,6 +14,15 @@ in stdenv.mkDerivation rec {
     sha256 = "0azdinwqjfv2q37gqpxmfvzsk86pvsi6cjaq1310zs26gric5j1f";
   };
 
+  patches = [
+    # Backport a change from Firefox 75 that fixes finding the
+    # location of clang and libclang.
+    (fetchpatch {
+      url = "https://hg.mozilla.org/mozilla-central/raw-rev/ccd1356fc8f1d0bfa9d896e88d3cc924425623da";
+      sha256 = "005g3mfmal9nw32khrgyiv3221z7pazfhhm2qvgc8d48i2yzj3j0";
+    })
+  ];
+
   outputs = [ "out" "dev" ];
   setOutputFlags = false; # Configure script only understands --includedir
 
@@ -55,9 +64,6 @@ in stdenv.mkDerivation rec {
     "--with-system-zlib"
     "--with-system-icu"
 
-    "--with-libclang-path=${llvmPackages.libclang.lib}/lib"
-    "--with-clang-path=${llvmPackages.clang}/bin/clang"
-
     "--enable-shared-js"
     "--enable-readline"
     # Fedora and Arch disable optimize, but it doesn't seme to be necessary
@@ -90,6 +96,7 @@ in stdenv.mkDerivation rec {
     homepage = "https://developer.mozilla.org/en/SpiderMonkey";
     license = licenses.gpl2; # TODO: MPL/GPL/LGPL tri-license.
     maintainers = [ maintainers.abbradar ];
+    badPlatforms = [ "riscv32-linux" "riscv64-linux" ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/development/interpreters/trealla/default.nix b/nixpkgs/pkgs/development/interpreters/trealla/default.nix
index 4321130044cc..f72c8b69eb1b 100644
--- a/nixpkgs/pkgs/development/interpreters/trealla/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/trealla/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "trealla";
-  version = "1.8.74";
+  version = "1.9.37";
 
   src = fetchFromGitHub {
     owner = "infradig";
     repo = "trealla";
     rev = "v${version}";
-    sha256 = "sha256-pg9SfEFUTuyAnhP+Q1vR/QImZuLuRb8NpaOiCEcTFj8=";
+    sha256 = "sha256-0cj4FGaYKIKCgWwRyLUw1DcvNnioQPOtqZhSvWSaojU=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/AntTweakBar/default.nix b/nixpkgs/pkgs/development/libraries/AntTweakBar/default.nix
index d46c7a6bcd85..4c67c927e57f 100644
--- a/nixpkgs/pkgs/development/libraries/AntTweakBar/default.nix
+++ b/nixpkgs/pkgs/development/libraries/AntTweakBar/default.nix
@@ -1,13 +1,14 @@
 { lib, stdenv, fetchurl, unzip, xorg, libGLU, libGL }:
 
-stdenv.mkDerivation {
-  name = "AntTweakBar-1.16";
+stdenv.mkDerivation rec {
+  pname = "AntTweakBar";
+  version = "1.16";
 
   nativeBuildInputs = [ unzip ];
   buildInputs = [ xorg.libX11 libGLU libGL ];
 
   src = fetchurl {
-    url = "mirror://sourceforge/project/anttweakbar/AntTweakBar_116.zip";
+    url = "mirror://sourceforge/project/anttweakbar/AntTweakBar_${lib.replaceStrings ["."] [""] version}.zip";
     sha256 = "0z3frxpzf54cjs07m6kg09p7nljhr7140f4pznwi7srwq4cvgkpv";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/CGAL/default.nix b/nixpkgs/pkgs/development/libraries/CGAL/default.nix
index 3ca359b3da5d..d83560568121 100644
--- a/nixpkgs/pkgs/development/libraries/CGAL/default.nix
+++ b/nixpkgs/pkgs/development/libraries/CGAL/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cgal";
-  version = "5.2.2";
+  version = "5.3";
 
   src = fetchFromGitHub {
     owner = "CGAL";
     repo = "releases";
     rev = "CGAL-${version}";
-    sha256 = "sha256-DeTJAAY3OEu+pVazt5es1v3l1nGAfjvE0wQmYISRYoo=";
+    sha256 = "sha256-ogY47Ggtj9k2U5pop1DNFkTusgQi2nNLc5OGN45SBCk=";
   };
 
   # note: optional component libCGAL_ImageIO would need zlib and opengl;
diff --git a/nixpkgs/pkgs/development/libraries/NSPlist/default.nix b/nixpkgs/pkgs/development/libraries/NSPlist/default.nix
index 1b8ae939ecaa..680e86dd64ef 100644
--- a/nixpkgs/pkgs/development/libraries/NSPlist/default.nix
+++ b/nixpkgs/pkgs/development/libraries/NSPlist/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub, cmake }:
 
 stdenv.mkDerivation {
-  name = "NSPlist-713decf";
+  pname = "NSPlist";
+  version = "unstable-2017-04-11";
 
   src = fetchFromGitHub {
     owner = "matthewbauer";
diff --git a/nixpkgs/pkgs/development/libraries/PlistCpp/default.nix b/nixpkgs/pkgs/development/libraries/PlistCpp/default.nix
index f7c47805748e..c2d5e6dceac7 100644
--- a/nixpkgs/pkgs/development/libraries/PlistCpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/PlistCpp/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub, cmake, boost, NSPlist, pugixml }:
 
 stdenv.mkDerivation {
-  name = "PlistCpp-11615d";
+  pname = "PlistCpp";
+  version = "unstable-11615d";
 
   src = fetchFromGitHub {
     owner = "matthewbauer";
diff --git a/nixpkgs/pkgs/development/libraries/SDL/default.nix b/nixpkgs/pkgs/development/libraries/SDL/default.nix
index 225cadac8c60..059ba65b25c4 100644
--- a/nixpkgs/pkgs/development/libraries/SDL/default.nix
+++ b/nixpkgs/pkgs/development/libraries/SDL/default.nix
@@ -74,18 +74,18 @@ stdenv.mkDerivation rec {
     })
     # Fix drops of keyboard events for SDL_EnableUNICODE
     (fetchpatch {
-      url = "http://hg.libsdl.org/SDL/raw-rev/0aade9c0203f";
-      sha256 = "1y9izncjlqvk1mkz1pkl9lrk9s452cmg2izjjlqqrhbn8279xy50";
+      url = "https://github.com/libsdl-org/SDL-1.2/commit/0332e2bb18dc68d6892c3b653b2547afe323854b.patch";
+      sha256 = "0g458iv6pp9sikdch6ms8svz60lf5ks2q5wgid8s9rydhk98lpp5";
     })
     # Ignore insane joystick axis events
     (fetchpatch {
-      url = "http://hg.libsdl.org/SDL/raw-rev/95abff7adcc2";
-      sha256 = "0i8x0kx0pw12ld5bfxhyzs466y3c0n9dscw1ijhq1b96r72xyhqq";
+      url = "https://github.com/libsdl-org/SDL-1.2/commit/ab99cc82b0a898ad528d46fa128b649a220a94f4.patch";
+      sha256 = "1b3473sawfdbkkxaqf1hg0vn37yk8hf655jhnjwdk296z4gclazh";
     })
     # https://bugzilla.libsdl.org/show_bug.cgi?id=1769
     (fetchpatch {
-      url = "http://hg.libsdl.org/SDL/raw-rev/91ad7b43317a";
-      sha256 = "15g537vbl2my4mfrjxfkcx9ri6bk2gjvaqj650rjdxwk2nkdkn4b";
+      url = "https://github.com/libsdl-org/SDL-1.2/commit/5d79977ec7a6b58afa6e4817035aaaba186f7e9f.patch";
+      sha256 = "1k7y57b1zy5afib1g7w3in36n8cswbcrzdbrjpn5cb105rnb9vmp";
     })
     # Workaround X11 bug to allow changing gamma
     # Ticket: https://bugs.freedesktop.org/show_bug.cgi?id=27222
@@ -97,12 +97,12 @@ stdenv.mkDerivation rec {
     # Fix a build failure on OS X Mavericks
     # Ticket: https://bugzilla.libsdl.org/show_bug.cgi?id=2085
     (fetchpatch {
-      url = "http://hg.libsdl.org/SDL/raw-rev/e9466ead70e5";
-      sha256 = "0mpwdi09h89df2wxqw87m1rdz7pr46k0w6alk691k8kwv970z6pl";
+      url = "https://github.com/libsdl-org/SDL-1.2/commit/19039324be71738d8990e91b9ba341b2ea068445.patch";
+      sha256 = "0ckwling2ad27c9vxgp97ndjd098d6zbrydza8b9l77k8airj98c";
     })
     (fetchpatch {
-      url = "http://hg.libsdl.org/SDL/raw-rev/bbfb41c13a87";
-      sha256 = "1336g7waaf1c8yhkz11xbs500h8bmvabh4h437ax8l1xdwcppfxv";
+      url = "https://github.com/libsdl-org/SDL-1.2/commit/7933032ad4d57c24f2230db29f67eb7d21bb5654.patch";
+      sha256 = "1by16firaxyr0hjvn35whsgcmq6bl0nwhnpjf75grjzsw9qvwyia";
     })
   ];
 
diff --git a/nixpkgs/pkgs/development/libraries/SDL_image/default.nix b/nixpkgs/pkgs/development/libraries/SDL_image/default.nix
index fe97f0167439..d6424575a764 100644
--- a/nixpkgs/pkgs/development/libraries/SDL_image/default.nix
+++ b/nixpkgs/pkgs/development/libraries/SDL_image/default.nix
@@ -12,8 +12,9 @@ stdenv.mkDerivation rec {
   patches = [
     (fetchpatch {
       name = "CVE-2017-2887";
-      url = "https://hg.libsdl.org/SDL_image/raw-diff/318484db0705/IMG_xcf.c";
-      sha256 = "140dyszz9hkpgwjdiwp1b7jdd8f8l5d862xdaf3ml4cimga1h5kv";
+      url = "https://github.com/libsdl-org/SDL_image/commit/e7723676825cd2b2ffef3316ec1879d7726618f2.patch";
+      includes = [ "IMG_xcf.c" ];
+      sha256 = "174ka2r95i29nlshzgp6x5vc68v7pi8lhzf33and2b1ms49g4jb7";
     })
   ];
 
diff --git a/nixpkgs/pkgs/development/libraries/afflib/default.nix b/nixpkgs/pkgs/development/libraries/afflib/default.nix
index 94970c5a308a..cb0c8025ddfa 100644
--- a/nixpkgs/pkgs/development/libraries/afflib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/afflib/default.nix
@@ -24,7 +24,6 @@ stdenv.mkDerivation rec {
     platforms = lib.platforms.unix;
     license = lib.licenses.bsdOriginal;
     maintainers = [ lib.maintainers.raskin ];
-    inherit version;
     downloadPage = "https://github.com/sshock/AFFLIBv3/tags";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/agda/standard-library/default.nix b/nixpkgs/pkgs/development/libraries/agda/standard-library/default.nix
index b77c9044834f..99cb863a598d 100644
--- a/nixpkgs/pkgs/development/libraries/agda/standard-library/default.nix
+++ b/nixpkgs/pkgs/development/libraries/agda/standard-library/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "standard-library";
-  version = "1.6";
+  version = "1.7";
 
   src = fetchFromGitHub {
     repo = "agda-stdlib";
     owner = "agda";
     rev = "v${version}";
-    sha256 = "1smvnid7r1mc4lp34pfrbzgzrcl0gmw0dlkga8z0r3g2zhj98lz1";
+    sha256 = "14h3jprm6924g9576v25axn9v6xnip354hvpzlcqsc5qqyj7zzjs";
   };
 
   nativeBuildInputs = [ (ghcWithPackages (self : [ self.filemanip ])) ];
@@ -16,7 +16,7 @@ mkDerivation rec {
     runhaskell GenerateEverything.hs
     # We will only build/consider Everything.agda, in particular we don't want Everything*.agda
     # do be copied to the store.
-    rm EverythingSafe.agda EverythingSafeGuardedness.agda EverythingSafeSizedTypes.agda
+    rm EverythingSafe.agda
   '';
 
   passthru.tests = { inherit (nixosTests) agda; };
diff --git a/nixpkgs/pkgs/development/libraries/agg/default.nix b/nixpkgs/pkgs/development/libraries/agg/default.nix
index 89585d908da4..39e27c909b50 100644
--- a/nixpkgs/pkgs/development/libraries/agg/default.nix
+++ b/nixpkgs/pkgs/development/libraries/agg/default.nix
@@ -2,9 +2,10 @@
 , freetype, SDL, libX11 }:
 
 stdenv.mkDerivation rec {
-  name = "agg-2.5";
+  pname = "agg";
+  version = "2.5";
   src = fetchurl {
-    url = "http://www.antigrain.com/${name}.tar.gz";
+    url = "https://www.antigrain.com/${pname}-${version}.tar.gz";
     sha256 = "07wii4i824vy9qsvjsgqxppgqmfdxq0xa87i5yk53fijriadq7mb";
   };
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/amdvlk/default.nix b/nixpkgs/pkgs/development/libraries/amdvlk/default.nix
index 2ef3f3d3920b..3978f380a3b6 100644
--- a/nixpkgs/pkgs/development/libraries/amdvlk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/amdvlk/default.nix
@@ -21,13 +21,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "amdvlk";
-  version = "2021.Q2.5";
+  version = "2021.Q3.1";
 
   src = fetchRepoProject {
     name = "${pname}-src";
     manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git";
     rev = "refs/tags/v-${version}";
-    sha256 = "0NJoGk++SHt4dtoUj3UQeW4zFtwa7osczUr+vxi8DG8=";
+    sha256 = "HisJsG27UvVbe0w8zzZArqioQQRxfuK2TPEWggV3TNA=";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/amrnb/default.nix b/nixpkgs/pkgs/development/libraries/amrnb/default.nix
index 2316961e3994..4e325932b5e8 100644
--- a/nixpkgs/pkgs/development/libraries/amrnb/default.nix
+++ b/nixpkgs/pkgs/development/libraries/amrnb/default.nix
@@ -1,9 +1,10 @@
 {lib, stdenv, fetchurl, unzip}:
 
 stdenv.mkDerivation {
-  name = "amrnb-11.0.0.0";
+  pname = "amrnb";
+  version = "11.0.0.0";
   srcAmr = fetchurl {
-    url = "http://www.3gpp.org/ftp/Specs/latest/Rel-11/26_series/26104-b00.zip";
+    url = "https://www.3gpp.org/ftp/Specs/latest/Rel-11/26_series/26104-b00.zip";
     sha256 = "1wf8ih0hk7w20vdlnw7jb7w73v15hbxgbvmq4wq7h2ghn0j8ppr3";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/appstream-glib/default.nix b/nixpkgs/pkgs/development/libraries/appstream-glib/default.nix
index 64c0b031e47d..558ea51eb049 100644
--- a/nixpkgs/pkgs/development/libraries/appstream-glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/appstream-glib/default.nix
@@ -23,7 +23,8 @@
 , pngquant
 }:
 stdenv.mkDerivation rec {
-  name = "appstream-glib-0.7.18";
+  pname = "appstream-glib";
+  version = "0.7.18";
 
   outputs = [ "out" "dev" "man" "installedTests" ];
   outputBin = "dev";
@@ -31,7 +32,7 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "hughsie";
     repo = "appstream-glib";
-    rev = lib.replaceStrings [ "." "-" ] [ "_" "_" ] name;
+    rev = "${lib.replaceStrings ["-"] ["_"] pname}-${lib.replaceStrings ["."] ["_"] version}";
     sha256 = "12s7d3nqjs1fldnppbg2mkjg4280f3h8yzj3q1hiz3chh1w0vjbx";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/apr-util/default.nix b/nixpkgs/pkgs/development/libraries/apr-util/default.nix
index 51e9271b7d7c..bd00a612d4ee 100644
--- a/nixpkgs/pkgs/development/libraries/apr-util/default.nix
+++ b/nixpkgs/pkgs/development/libraries/apr-util/default.nix
@@ -13,10 +13,11 @@ assert ldapSupport -> openldap != null;
 with lib;
 
 stdenv.mkDerivation rec {
-  name = "apr-util-1.6.1";
+  pname = "apr-util";
+  version = "1.6.1";
 
   src = fetchurl {
-    url = "mirror://apache/apr/${name}.tar.bz2";
+    url = "mirror://apache/apr/${pname}-${version}.tar.bz2";
     sha256 = "0nq3s1yn13vplgl6qfm09f7n0wm08malff9s59bqf9nid9xjzqfk";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/apr/default.nix b/nixpkgs/pkgs/development/libraries/apr/default.nix
index 03b6c9777dfd..dd88cf7b1d49 100644
--- a/nixpkgs/pkgs/development/libraries/apr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/apr/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  name = "apr-1.7.0";
+  pname = "apr";
+  version = "1.7.0";
 
   src = fetchurl {
-    url = "mirror://apache/apr/${name}.tar.bz2";
+    url = "mirror://apache/apr/${pname}-${version}.tar.bz2";
     sha256 = "1spp6r2a3xcl5yajm9safhzyilsdzgagc2dadif8x6z9nbq4iqg2";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/argp-standalone/default.nix b/nixpkgs/pkgs/development/libraries/argp-standalone/default.nix
index 33b253718a7f..1a09ed84a1cb 100644
--- a/nixpkgs/pkgs/development/libraries/argp-standalone/default.nix
+++ b/nixpkgs/pkgs/development/libraries/argp-standalone/default.nix
@@ -19,11 +19,12 @@ let
     sha256 = "1xx2zdc187a1m2x6c1qs62vcrycbycw7n0q3ks2zkxpaqzx2dgkw";
   };
 in
-stdenv.mkDerivation {
-  name = "argp-standalone-1.3";
+stdenv.mkDerivation rec {
+  pname = "argp-standalone";
+  version = "1.3";
 
   src = fetchurl {
-    url = "https://www.lysator.liu.se/~nisse/misc/argp-standalone-1.3.tar.gz";
+    url = "https://www.lysator.liu.se/~nisse/misc/argp-standalone-${version}.tar.gz";
     sha256 = "dec79694da1319acd2238ce95df57f3680fea2482096e483323fddf3d818d8be";
   };
 
@@ -33,7 +34,11 @@ stdenv.mkDerivation {
 
   patchFlags = lib.optional stdenv.hostPlatform.isDarwin "-p0";
 
-  preConfigure = lib.optionalString stdenv.hostPlatform.isLinux "export CFLAGS='-fgnu89-inline'";
+  # For currently unknown reason, `-fPIC` has to be passed explicitly, otherwise
+  # downstream software like `elfutils` will get `recompile errors like:
+  #     libargp.a(argp-help.o): relocation R_X86_64_PC32 against symbol `program_invocation_short_name' can not be used when making a shared object; recompile with -fPIC
+  # It seems that nixpkgs's on-by-default `-fPIC` is not in effect here.
+  preConfigure = lib.optionalString stdenv.hostPlatform.isLinux "export CFLAGS='-fgnu89-inline -fPIC'";
 
   postInstall = ''
     mkdir -p $out/lib $out/include
diff --git a/nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix b/nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix
index 4e85c7a92a64..515c60c985a7 100644
--- a/nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix
+++ b/nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix
@@ -21,11 +21,11 @@
 
 stdenv.mkDerivation rec {
   pname = "at-spi2-core";
-  version = "2.40.1";
+  version = "2.40.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0miqn8531czy9ffpxnsxsnk12w3d6sqjda3qyix8kns2xsjf6rlz";
+    sha256 = "RNwXr5Q7D9GWxhweA7bBZpYDhcrpbMtelb3v/7aEn5g=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/development/libraries/atk/default.nix b/nixpkgs/pkgs/development/libraries/atk/default.nix
index 38c557316982..08e6e5b0e41b 100644
--- a/nixpkgs/pkgs/development/libraries/atk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/atk/default.nix
@@ -1,6 +1,5 @@
 { lib, stdenv, fetchurl, meson, ninja, gettext, pkg-config, glib
 , fixDarwinDylibNames, gobject-introspection, gnome
-, withIntrospection ? stdenv.buildPlatform == stdenv.hostPlatform
 }:
 
 let
@@ -18,9 +17,8 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ meson ninja pkg-config gettext glib ]
-    ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames
-    ++ lib.optional withIntrospection gobject-introspection;
+  nativeBuildInputs = [ meson ninja pkg-config gettext gobject-introspection glib ]
+    ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
   propagatedBuildInputs = [
     # Required by atk.pc
@@ -34,7 +32,7 @@ stdenv.mkDerivation rec {
   ];
 
   mesonFlags = [
-    "-Dintrospection=${lib.boolToString withIntrospection}"
+    "-Dintrospection=${lib.boolToString (stdenv.buildPlatform == stdenv.hostPlatform)}"
   ];
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/development/libraries/attr/default.nix b/nixpkgs/pkgs/development/libraries/attr/default.nix
index b7c9287b68bc..3ff021222faa 100644
--- a/nixpkgs/pkgs/development/libraries/attr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/attr/default.nix
@@ -6,10 +6,11 @@
 # files.
 
 stdenv.mkDerivation rec {
-  name = "attr-2.4.48";
+  pname = "attr";
+  version = "2.4.48";
 
   src = fetchurl {
-    url = "mirror://savannah/attr/${name}.tar.gz";
+    url = "mirror://savannah/attr/${pname}-${version}.tar.gz";
     sha256 = "1rr4adzwax4bzr2c00f06zcsljv5y6p9wymz1g89ww7cb2rp5bay";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/audio/libbass/default.nix b/nixpkgs/pkgs/development/libraries/audio/libbass/default.nix
index 49a3a5478cff..ab97090e8899 100644
--- a/nixpkgs/pkgs/development/libraries/audio/libbass/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audio/libbass/default.nix
@@ -15,7 +15,7 @@ let
         x86_64-linux = "x64/libbass.so";
       };
       urlpath = "bass24-linux.zip";
-      sha256 = "1ycvpfa7yyi1qxgflpfzcw1q32f0isd14m9cf351pk8zwndkmp4q";
+      sha256 = "1lmysxfhy727zskavml3ibg5w876ir88923bm17c21s59w5lh7l8";
     };
 
     bass_fx = {
diff --git a/nixpkgs/pkgs/development/libraries/audio/libgme/default.nix b/nixpkgs/pkgs/development/libraries/audio/libgme/default.nix
index 927bd00656e6..2761eaf3753a 100644
--- a/nixpkgs/pkgs/development/libraries/audio/libgme/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audio/libgme/default.nix
@@ -1,9 +1,8 @@
 { lib, stdenv, fetchFromBitbucket, cmake, removeReferencesTo }:
-let
-  version = "0.6.3";
-in stdenv.mkDerivation {
+
+stdenv.mkDerivation rec {
   pname = "libgme";
-  inherit version;
+  version = "0.6.3";
 
   meta = with lib; {
     description = "A collection of video game music chip emulators";
diff --git a/nixpkgs/pkgs/development/libraries/avro-c++/default.nix b/nixpkgs/pkgs/development/libraries/avro-c++/default.nix
index 15e2516c1b6b..ad373300e02f 100644
--- a/nixpkgs/pkgs/development/libraries/avro-c++/default.nix
+++ b/nixpkgs/pkgs/development/libraries/avro-c++/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchurl, cmake, boost, python2}:
 
-let version = "1.8.2"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "avro-c++";
-  inherit version;
+  version = "1.8.2";
 
   src = fetchurl {
     url = "mirror://apache/avro/avro-${version}/cpp/avro-cpp-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/avro-c/default.nix b/nixpkgs/pkgs/development/libraries/avro-c/default.nix
index 95e3053b5340..ee43daf2d044 100644
--- a/nixpkgs/pkgs/development/libraries/avro-c/default.nix
+++ b/nixpkgs/pkgs/development/libraries/avro-c/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, cmake, fetchurl, pkg-config, jansson, zlib }:
 
-let
-  version = "1.10.2";
-in stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "avro-c";
-  inherit version;
+  version = "1.10.2";
 
   src = fetchurl {
     url = "mirror://apache/avro/avro-${version}/c/avro-c-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/aws-c-common/default.nix b/nixpkgs/pkgs/development/libraries/aws-c-common/default.nix
index 9913631e8548..5c71d079aa21 100644
--- a/nixpkgs/pkgs/development/libraries/aws-c-common/default.nix
+++ b/nixpkgs/pkgs/development/libraries/aws-c-common/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-common";
-  version = "0.5.11";
+  version = "0.6.8";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-4CYbL+ICabKvpfjlALJ0wRbuwgy+JKJnKqYbQFsHQsI=";
+    sha256 = "sha256-wtgD8txViYu7yXdnID6TTf4gCDmvebD19XRxFnubndY=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix b/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix
index 9cdede785283..1a42211b9393 100644
--- a/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix
+++ b/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix
@@ -27,7 +27,6 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = [ "-Wno-error=stringop-truncation" ];
 
   meta = with lib; {
-    inherit version;
     description = "Utilities library for Linphone";
     homepage = "https://gitlab.linphone.org/BC/public/bctoolbox";
     license = licenses.gpl3Plus;
diff --git a/nixpkgs/pkgs/development/libraries/bearssl/default.nix b/nixpkgs/pkgs/development/libraries/bearssl/default.nix
index de9c182df148..36873f03f7e9 100644
--- a/nixpkgs/pkgs/development/libraries/bearssl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/bearssl/default.nix
@@ -1,17 +1,12 @@
 { lib, stdenv, fetchurl }:
 
-let
-  version = "0.6";
-  sha256 = "057zhgy9w4y8z2996r0pq5k2k39lpvmmvz4df8db8qa9f6hvn1b7";
-
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "bearssl";
-  inherit version;
+  version = "0.6";
 
   src = fetchurl {
     url = "https://www.bearssl.org/bearssl-${version}.tar.gz";
-    inherit sha256;
+    sha256 = "057zhgy9w4y8z2996r0pq5k2k39lpvmmvz4df8db8qa9f6hvn1b7";
   };
 
   outputs = [ "bin" "lib" "dev" "out" ];
diff --git a/nixpkgs/pkgs/development/libraries/boolstuff/default.nix b/nixpkgs/pkgs/development/libraries/boolstuff/default.nix
index 79232107cdd2..9b1840256ade 100644
--- a/nixpkgs/pkgs/development/libraries/boolstuff/default.nix
+++ b/nixpkgs/pkgs/development/libraries/boolstuff/default.nix
@@ -1,12 +1,10 @@
 { lib, stdenv, fetchurl, pkg-config }:
-
-let baseurl = "https://perso.b2b2c.ca/~sarrazip/dev"; in
-
 stdenv.mkDerivation rec {
-  name = "boolstuff-0.1.16";
+  pname = "boolstuff";
+  version = "0.1.16";
 
   src = fetchurl {
-    url = "${baseurl}/${name}.tar.gz";
+    url = "https://perso.b2b2c.ca/~sarrazip/dev/${pname}-${version}.tar.gz";
     sha256 = "10qynbyw723gz2vrvn4xk2var172kvhlz3l3l80qbdsfb3d12wn0";
   };
 
@@ -14,7 +12,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Library for operations on boolean expression binary trees";
-    homepage = "${baseurl}/boolstuff.html";
+    homepage = "https://perso.b2b2c.ca/~sarrazip/dev/boolstuff.html";
     license = "GPL";
     maintainers = [ lib.maintainers.marcweber ];
     platforms = lib.platforms.all;
diff --git a/nixpkgs/pkgs/development/libraries/boringssl/default.nix b/nixpkgs/pkgs/development/libraries/boringssl/default.nix
index d51cf159598d..32a4859a1bc9 100644
--- a/nixpkgs/pkgs/development/libraries/boringssl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/boringssl/default.nix
@@ -10,17 +10,17 @@
 # reference: https://boringssl.googlesource.com/boringssl/+/2661/BUILDING.md
 buildGoModule {
   pname = "boringssl";
-  version = "2021-04-18";
+  version = "2021-07-09";
 
   src = fetchgit {
     url    = "https://boringssl.googlesource.com/boringssl";
-    rev    = "468cde90ca58421d63f4dfeaebcf8bb3fccb4127";
-    sha256 = "0gaqcbvp6r5fq265mckmg0i0rjab0bhxkxcvfxp3ar5dm7q88w39";
+    rev    = "268a4a6ff3bd656ae65fe41ef1185daa85cfae21";
+    sha256 = "04fja4fdwhc69clmvg8i12zm6ks3sfl3r8i5bxn4x63b9dj5znlx";
   };
 
   nativeBuildInputs = [ cmake ninja perl ];
 
-  vendorSha256 = "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=";
+  vendorSha256 = "0sjjj9z1dhilhpc8pq4154czrb79z9cm044jvn75kxcjv6v5l2m5";
 
   # hack to get both go and cmake configure phase
   # (if we use postConfigure then cmake will loop runHook postConfigure)
diff --git a/nixpkgs/pkgs/development/libraries/botan/generic.nix b/nixpkgs/pkgs/development/libraries/botan/generic.nix
index 2fc5abc2928a..3313b8c4fcd1 100644
--- a/nixpkgs/pkgs/development/libraries/botan/generic.nix
+++ b/nixpkgs/pkgs/development/libraries/botan/generic.nix
@@ -45,7 +45,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    inherit version;
     description = "Cryptographic algorithms library";
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.unix;
diff --git a/nixpkgs/pkgs/development/libraries/buddy/default.nix b/nixpkgs/pkgs/development/libraries/buddy/default.nix
index a333a69ffa1b..d6ab4fe0dfe5 100644
--- a/nixpkgs/pkgs/development/libraries/buddy/default.nix
+++ b/nixpkgs/pkgs/development/libraries/buddy/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, bison }:
 
 stdenv.mkDerivation rec {
-  name = "buddy-2.4";
+  pname = "buddy";
+  version = "2.4";
 
   src = fetchurl {
-    url = "mirror://sourceforge/buddy/${name}.tar.gz";
+    url = "mirror://sourceforge/buddy/${pname}-${version}.tar.gz";
     sha256 = "0dl86l9xkl33wnkz684xa9axhcxx2zzi4q5lii0axnb9lsk81pyk";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/cddlib/default.nix b/nixpkgs/pkgs/development/libraries/cddlib/default.nix
index 9ff54f8ebf9d..e0d6149362cc 100644
--- a/nixpkgs/pkgs/development/libraries/cddlib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/cddlib/default.nix
@@ -23,7 +23,6 @@ stdenv.mkDerivation rec {
   # Requested here: https://github.com/cddlib/cddlib/issues/25
   doCheck = true;
   meta = with lib; {
-    inherit version;
     description = "An implementation of the Double Description Method for generating all vertices of a convex polyhedron";
     license = licenses.gpl2Plus;
     maintainers = teams.sage.members;
diff --git a/nixpkgs/pkgs/development/libraries/chmlib/default.nix b/nixpkgs/pkgs/development/libraries/chmlib/default.nix
index 6e21984eb1da..bc609d7bbf17 100644
--- a/nixpkgs/pkgs/development/libraries/chmlib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/chmlib/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  name = "chmlib-0.40a";
+  pname = "chmlib";
+  version = "0.40a";
 
   src = fetchFromGitHub {
     owner = "jedwing";
diff --git a/nixpkgs/pkgs/development/libraries/classads/default.nix b/nixpkgs/pkgs/development/libraries/classads/default.nix
index ba8961c8f6c0..991fb2b41d50 100644
--- a/nixpkgs/pkgs/development/libraries/classads/default.nix
+++ b/nixpkgs/pkgs/development/libraries/classads/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchurl, pcre }:
 
-let version = "1.0.10"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "classads";
-  inherit version;
+  version = "1.0.10";
 
   src = fetchurl {
     url = "ftp://ftp.cs.wisc.edu/condor/classad/c++/classads-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/clfft/default.nix b/nixpkgs/pkgs/development/libraries/clfft/default.nix
index 91267208d2e6..db18bce72be8 100644
--- a/nixpkgs/pkgs/development/libraries/clfft/default.nix
+++ b/nixpkgs/pkgs/development/libraries/clfft/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchFromGitHub, cmake, fftw, fftwFloat, boost166, opencl-clhpp, ocl-icd }:
 
-let
-  version = "2.12.2";
-in stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "clfft";
-  inherit version;
+  version = "2.12.2";
 
   src = fetchFromGitHub {
     owner = "clMathLibraries";
@@ -29,6 +27,5 @@ in stdenv.mkDerivation {
     homepage = "http://clmathlibraries.github.io/clFFT/";
     platforms = [ "i686-linux" "x86_64-linux" ];
     maintainers = with maintainers; [ chessai ];
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/cloog-ppl/default.nix b/nixpkgs/pkgs/development/libraries/cloog-ppl/default.nix
index b2bd2adde43a..65d6a392ffdb 100644
--- a/nixpkgs/pkgs/development/libraries/cloog-ppl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/cloog-ppl/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, ppl, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  name = "cloog-ppl-0.15.11";
+  pname = "cloog-ppl";
+  version = "0.15.11";
 
   src = fetchurl {
-    url = "mirror://gcc/infrastructure/${name}.tar.gz";
+    url = "mirror://gcc/infrastructure/${pname}-${version}.tar.gz";
     sha256 = "0psdm0bn5gx60glfh955x5b3b23zqrd92idmjr0b00dlnb839mkw";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/cloog/default.nix b/nixpkgs/pkgs/development/libraries/cloog/default.nix
index 54df2df9d4d2..02a91050e7ba 100644
--- a/nixpkgs/pkgs/development/libraries/cloog/default.nix
+++ b/nixpkgs/pkgs/development/libraries/cloog/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, gmp, isl }:
 
 stdenv.mkDerivation rec {
-  name = "cloog-0.18.4";
+  pname = "cloog";
+  version = "0.18.4";
 
   src = fetchurl {
-    url = "http://www.bastoul.net/cloog/pages/download/count.php3?url=./${name}.tar.gz";
+    url = "http://www.bastoul.net/cloog/pages/download/count.php3?url=./${pname}-${version}.tar.gz";
     sha256 = "03km1aqaiy3sbqc2f046ms9x0mlmacxlvs5rxsvjj8nf20vxynij";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/cmark/default.nix b/nixpkgs/pkgs/development/libraries/cmark/default.nix
index ec90d0086c9d..1cc19277522d 100644
--- a/nixpkgs/pkgs/development/libraries/cmark/default.nix
+++ b/nixpkgs/pkgs/development/libraries/cmark/default.nix
@@ -2,19 +2,19 @@
 
 stdenv.mkDerivation rec {
   pname = "cmark";
-  version = "0.30.0";
+  version = "0.30.1";
 
   src = fetchFromGitHub {
     owner = "jgm";
     repo = pname;
     rev = version;
-    sha256 = "sha256-SU31kJL+8wt57bGW5fNeXjXPgPeCXZIknZwDxMXCfdc=";
+    sha256 = "sha256-UjDM2N6gCwO94F1nW3qCP9JX42MYAicAuGTKAXMy1Gg=";
   };
 
   nativeBuildInputs = [ cmake ];
 
   cmakeFlags = [
-    # https://github.com/commonmark/cmark/releases/tag/0.30.0
+    # https://github.com/commonmark/cmark/releases/tag/0.30.1
     # recommends distributions dynamically link
     "-DCMARK_STATIC=OFF"
   ];
diff --git a/nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix b/nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix
index de7bf560d3ea..fdf4b469059e 100644
--- a/nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix
+++ b/nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cpp-utilities";
-  version = "5.10.4";
+  version = "5.10.5";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-pZh/NbTzQR2kjMeauv1HcRn0hDBaCNRbaZ3+1qs5rxU=";
+    sha256 = "sha256-1GAZKMfA2cB/7/TZfV+WOvjlu0sWq1loOauX4EfHogA=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/csfml/default.nix b/nixpkgs/pkgs/development/libraries/csfml/default.nix
index 78d8bce40a36..cfc41b9271be 100644
--- a/nixpkgs/pkgs/development/libraries/csfml/default.nix
+++ b/nixpkgs/pkgs/development/libraries/csfml/default.nix
@@ -1,12 +1,8 @@
 { lib, stdenv, fetchFromGitHub, cmake, sfml }:
 
-let
-  version = "2.5";
-in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "csfml";
-  inherit version;
+  version = "2.5";
   src = fetchFromGitHub {
     owner = "SFML";
     repo  = "CSFML";
diff --git a/nixpkgs/pkgs/development/libraries/dotnetfx35/default.nix b/nixpkgs/pkgs/development/libraries/dotnetfx35/default.nix
index 68569b516a9b..a3045949c6ca 100644
--- a/nixpkgs/pkgs/development/libraries/dotnetfx35/default.nix
+++ b/nixpkgs/pkgs/development/libraries/dotnetfx35/default.nix
@@ -4,9 +4,10 @@ let
   windir = "/cygdrive/c/WINDOWS";
 in
 {
-  pkg = stdenv.mkDerivation {
-    name = "dotnetfx-3.5";
-    src = "${windir}/Microsoft.NET/Framework/v3.5";
+  pkg = stdenv.mkDerivation rec {
+    pname = "dotnetfx";
+    version = "3.5";
+    src = "${windir}/Microsoft.NET/Framework/v${version}";
     buildCommand = ''
       mkdir -p $out/bin
       ln -s $src/MSBuild.exe $out/bin
diff --git a/nixpkgs/pkgs/development/libraries/dotnetfx40/default.nix b/nixpkgs/pkgs/development/libraries/dotnetfx40/default.nix
index 1ffc10cfc605..379be1bdc26d 100644
--- a/nixpkgs/pkgs/development/libraries/dotnetfx40/default.nix
+++ b/nixpkgs/pkgs/development/libraries/dotnetfx40/default.nix
@@ -4,9 +4,10 @@ let
   windir = "/cygdrive/c/WINDOWS";
 in
 {
-  pkg = stdenv.mkDerivation {
-    name = "dotnetfx-4.0";
-    src = "${windir}/Microsoft.NET/Framework/v4.0.30319";
+  pkg = stdenv.mkDerivation rec {
+    pname = "dotnetfx";
+    version = "4.0.30319";
+    src = "${windir}/Microsoft.NET/Framework/v${version}";
     buildCommand = ''
       mkdir -p $out/bin
       ln -s $src/MSBuild.exe $out/bin
diff --git a/nixpkgs/pkgs/development/libraries/dqlite/default.nix b/nixpkgs/pkgs/development/libraries/dqlite/default.nix
index 83e63abb3c6b..15785d25fe2f 100644
--- a/nixpkgs/pkgs/development/libraries/dqlite/default.nix
+++ b/nixpkgs/pkgs/development/libraries/dqlite/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dqlite";
-  version = "1.7.0";
+  version = "1.8.0";
 
   src = fetchFromGitHub {
     owner = "canonical";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-lCMTmKnDv/fb5fP/Ch8AwpuNfmR+gecxeIweO6hHj5U=";
+    sha256 = "0ghvwlgj5574kpgc53bfhqp4437xxvr05061wwxplpjxn37hy26d";
   };
 
   nativeBuildInputs = [ autoreconfHook file pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/eclib/default.nix b/nixpkgs/pkgs/development/libraries/eclib/default.nix
index 740b0d81ca92..74a6f21992b5 100644
--- a/nixpkgs/pkgs/development/libraries/eclib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/eclib/default.nix
@@ -43,7 +43,6 @@ stdenv.mkDerivation rec {
   ];
   doCheck = true;
   meta = with lib; {
-    inherit version;
     description = "Elliptic curve tools";
     homepage = "https://github.com/JohnCremona/eclib";
     license = licenses.gpl2Plus;
diff --git a/nixpkgs/pkgs/development/libraries/egl-wayland/default.nix b/nixpkgs/pkgs/development/libraries/egl-wayland/default.nix
index 9e7beb0a4f86..50a74088f2a7 100644
--- a/nixpkgs/pkgs/development/libraries/egl-wayland/default.nix
+++ b/nixpkgs/pkgs/development/libraries/egl-wayland/default.nix
@@ -41,7 +41,7 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "egl-wayland";
-  version = "1.1.6";
+  version = "1.1.7";
 
   outputs = [ "out" "dev" ];
 
@@ -49,7 +49,7 @@ in stdenv.mkDerivation rec {
     owner = "Nvidia";
     repo = pname;
     rev = version;
-    sha256 = "1n9lg8hpjgxlf7dpddkjhbslsfd0symla2wk6jjmnl9n9jv2gmzk";
+    sha256 = "sha256-pqpJ6Uo50BouBU0wGaL21VH5rDiVHKAvJtfzL0YInXU=";
   };
 
   depsBuildBuild = [
diff --git a/nixpkgs/pkgs/development/libraries/enet/default.nix b/nixpkgs/pkgs/development/libraries/enet/default.nix
index ef252ad19f6d..53aec96fe705 100644
--- a/nixpkgs/pkgs/development/libraries/enet/default.nix
+++ b/nixpkgs/pkgs/development/libraries/enet/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "enet-1.3.17";
+  pname = "enet";
+  version = "1.3.17";
 
   src = fetchurl {
-    url = "http://enet.bespin.org/download/${name}.tar.gz";
+    url = "http://enet.bespin.org/download/${pname}-${version}.tar.gz";
     sha256 = "1p6f9mby86af6cs7pv6h48032ip9g32c05cb7d9mimam8lchz3x3";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/eventlog/default.nix b/nixpkgs/pkgs/development/libraries/eventlog/default.nix
index ca460aa71f6b..ba4155db1e3c 100644
--- a/nixpkgs/pkgs/development/libraries/eventlog/default.nix
+++ b/nixpkgs/pkgs/development/libraries/eventlog/default.nix
@@ -1,13 +1,18 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook }:
 
-stdenv.mkDerivation {
-  name = "eventlog-0.2.12";
+stdenv.mkDerivation rec {
+  pname = "eventlog";
+  version = "0.2.13";
 
-  src = fetchurl {
-    url = "http://www.balabit.com/downloads/files/eventlog/0.2/eventlog_0.2.12.tar.gz";
-    sha256 = "494dac8e01dc5ce323df2ad554d94874938dab51aa025987677b2bc6906a9c66";
+  src = fetchFromGitHub {
+    owner = "balabit";
+    repo = "eventlog";
+    rev = "a5c19163ba131f79452c6dfe4e31c2b4ce4be741";
+    sha256 = "0a2za3hs7wzy14z7mfgldy1r9xdlqv97yli9wlm8xldr0amsx869";
   };
 
+  nativeBuildInputs = [ autoreconfHook ];
+
   meta = {
     description = "Syslog event logger library";
     longDescription = ''
diff --git a/nixpkgs/pkgs/development/libraries/exiv2/default.nix b/nixpkgs/pkgs/development/libraries/exiv2/default.nix
index 2a394f8279b5..930bfc99f28e 100644
--- a/nixpkgs/pkgs/development/libraries/exiv2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/exiv2/default.nix
@@ -10,6 +10,7 @@
 , doxygen
 , graphviz
 , libxslt
+, libiconv
 }:
 
 stdenv.mkDerivation rec {
@@ -33,6 +34,8 @@ stdenv.mkDerivation rec {
     libxslt
   ];
 
+  buildInputs = lib.optional stdenv.isDarwin libiconv;
+
   propagatedBuildInputs = [
     expat
     zlib
diff --git a/nixpkgs/pkgs/development/libraries/expat/default.nix b/nixpkgs/pkgs/development/libraries/expat/default.nix
index fe30b701ed0c..3bfc215aea7b 100644
--- a/nixpkgs/pkgs/development/libraries/expat/default.nix
+++ b/nixpkgs/pkgs/development/libraries/expat/default.nix
@@ -27,6 +27,13 @@ stdenv.mkDerivation rec {
     patchShebangs ./configure ./run.sh ./test-driver-wrapper.sh
   '';
 
+  # CMake files incorrectly calculate library path from dev prefix
+  # https://github.com/libexpat/libexpat/issues/501
+  postFixup = ''
+    substituteInPlace $dev/lib/cmake/expat-${version}/expat-noconfig.cmake \
+      --replace "$"'{_IMPORT_PREFIX}' $out
+  '';
+
   meta = with lib; {
     homepage = "https://libexpat.github.io/";
     description = "A stream-oriented XML parser library written in C";
diff --git a/nixpkgs/pkgs/development/libraries/farstream/default.nix b/nixpkgs/pkgs/development/libraries/farstream/default.nix
index b046b7aef737..e26ebef0c518 100644
--- a/nixpkgs/pkgs/development/libraries/farstream/default.nix
+++ b/nixpkgs/pkgs/development/libraries/farstream/default.nix
@@ -14,12 +14,13 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "farstream-0.2.8";
+  pname = "farstream";
+  version = "0.2.8";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
-    url = "https://www.freedesktop.org/software/farstream/releases/farstream/${name}.tar.gz";
+    url = "https://www.freedesktop.org/software/farstream/releases/farstream/${pname}-${version}.tar.gz";
     sha256 = "0249ncd20x5mf884fd8bw75c3118b9fdml837v4fib349xmrqfrb";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/fastpbkdf2/default.nix b/nixpkgs/pkgs/development/libraries/fastpbkdf2/default.nix
index ac90001fc397..723edd6f29d4 100644
--- a/nixpkgs/pkgs/development/libraries/fastpbkdf2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/fastpbkdf2/default.nix
@@ -1,12 +1,13 @@
 { lib, stdenv, fetchFromGitHub, openssl }:
 
-stdenv.mkDerivation {
-  name = "fastpbkdf2-1.0.0";
+stdenv.mkDerivation rec {
+  pname = "fastpbkdf2";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     owner = "ctz";
     repo = "fastpbkdf2";
-    rev = "v1.0.0";
+    rev = "v${version}";
     sha256 = "09ax0h4ik3vhvp3s98lic93l3g9f4v1jkr5k6z4g1lvm7s3lrha2";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/fcft/default.nix b/nixpkgs/pkgs/development/libraries/fcft/default.nix
index c413cf277c8b..b61505f60e6a 100644
--- a/nixpkgs/pkgs/development/libraries/fcft/default.nix
+++ b/nixpkgs/pkgs/development/libraries/fcft/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "fcft";
-  version = "2.4.2";
+  version = "2.4.3";
 
   src = fetchzip {
     url = "https://codeberg.org/dnkl/fcft/archive/${version}.tar.gz";
-    sha256 = "01zvc8519fcg14nmcx3iqap9jnspcnr6pvlr59ipqxs0jprnrxl2";
+    sha256 = "0hxvd6xbvgq1rk8851gswffmvh3fv41lyvz4fhwzln7m12759yw8";
   };
 
   depsBuildBuild = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/fflas-ffpack/default.nix b/nixpkgs/pkgs/development/libraries/fflas-ffpack/default.nix
index fd7d89a88311..ca2f3b0e381d 100644
--- a/nixpkgs/pkgs/development/libraries/fflas-ffpack/default.nix
+++ b/nixpkgs/pkgs/development/libraries/fflas-ffpack/default.nix
@@ -49,7 +49,6 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   meta = with lib; {
-    inherit version;
     description = "Finite Field Linear Algebra Subroutines";
     license = licenses.lgpl21Plus;
     maintainers = teams.sage.members;
diff --git a/nixpkgs/pkgs/development/libraries/ffmpeg/4.nix b/nixpkgs/pkgs/development/libraries/ffmpeg/4.nix
index df3d0732393e..d557c87ebdf6 100644
--- a/nixpkgs/pkgs/development/libraries/ffmpeg/4.nix
+++ b/nixpkgs/pkgs/development/libraries/ffmpeg/4.nix
@@ -2,6 +2,7 @@
 # Darwin frameworks
 , Cocoa, CoreMedia, VideoToolbox
 , stdenv, lib
+, fetchpatch
 , ...
 }@args:
 
@@ -11,7 +12,18 @@ callPackage ./generic.nix (rec {
   sha256 = "03kxc29y8190k4y8s8qdpsghlbpmchv1m8iqygq2qn0vfm4ka2a2";
   darwinFrameworks = [ Cocoa CoreMedia VideoToolbox ];
 
-  /* Work around https://trac.ffmpeg.org/ticket/9242 */
-  patches = lib.optional stdenv.isDarwin
-    ./v2-0001-avcodec-videotoolboxenc-define-TARGET_CPU_ARM64-t.patch;
+  patches = [
+    # Fix incorrect segment length in HLS child playlist with fmp4 segment format
+    # FIXME remove in version 4.5
+    # https://trac.ffmpeg.org/ticket/9193
+    # https://trac.ffmpeg.org/ticket/9205
+    (fetchpatch {
+      name = "ffmpeg_fix_incorrect_segment_length_in_hls.patch";
+      url = "https://git.videolan.org/?p=ffmpeg.git;a=commitdiff_plain;h=59032494e81a1a65c0b960aaae7ec4c2cc9db35a";
+      sha256 = "03zz1lw51kkc3g3vh47xa5hfiz3g3g1rbrll3kcnslvwylmrqmy3";
+    })
+  ] ++ lib.optionals stdenv.isDarwin [
+    # Work around https://trac.ffmpeg.org/ticket/9242
+    ./v2-0001-avcodec-videotoolboxenc-define-TARGET_CPU_ARM64-t.patch
+  ];
 } // args)
diff --git a/nixpkgs/pkgs/development/libraries/flann/default.nix b/nixpkgs/pkgs/development/libraries/flann/default.nix
index 913393804249..283c815b199b 100644
--- a/nixpkgs/pkgs/development/libraries/flann/default.nix
+++ b/nixpkgs/pkgs/development/libraries/flann/default.nix
@@ -1,24 +1,65 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, unzip, cmake, python }:
+{ lib
+, cmake
+, fetchFromGitHub
+, fetchpatch
+, lz4
+, pkg-config
+, python3
+, stdenv
+, unzip
+, enablePython ? false
+}:
 
-stdenv.mkDerivation {
-  name = "flann-1.9.1";
+stdenv.mkDerivation rec {
+  pname = "flann";
+  version = "1.9.1";
 
   src = fetchFromGitHub {
-    owner = "mariusmuja";
+    owner = "flann-lib";
     repo = "flann";
-    rev = "1.9.1";
+    rev = version;
     sha256 = "13lg9nazj5s9a41j61vbijy04v6839i67lqd925xmxsbybf36gjc";
   };
 
   patches = [
-    # Upstream issue: https://github.com/mariusmuja/flann/issues/369
+    # Patch HDF5_INCLUDE_DIR -> HDF_INCLUDE_DIRS.
     (fetchpatch {
-      url = "https://raw.githubusercontent.com/buildroot/buildroot/45a39b3e2ba42b72d19bfcef30db1b8da9ead51a/package/flann/0001-src-cpp-fix-cmake-3.11-build.patch";
-      sha256 = "1gmj06cmnqvwxx649mxaivd35727wj6w7710zbcmmgmsnyfh2js4";
+      url = "https://salsa.debian.org/science-team/flann/-/raw/debian/1.9.1+dfsg-9/debian/patches/0001-Updated-fix-cmake-hdf5.patch";
+      sha256 = "yM1ONU4mu6lctttM5YcSTg8F344TNUJXwjxXLqzr5Pk=";
+    })
+    # Patch no-source library workaround that breaks on CMake > 3.11.
+    (fetchpatch {
+      url = "https://salsa.debian.org/science-team/flann/-/raw/debian/1.9.1+dfsg-9/debian/patches/0001-src-cpp-fix-cmake-3.11-build.patch";
+      sha256 = "REsBnbe6vlrZ+iCcw43kR5wy2o6q10RM73xjW5kBsr4=";
+    })
+    # Avoid the bundled version of LZ4 and instead use the system one.
+    (fetchpatch {
+      url = "https://salsa.debian.org/science-team/flann/-/raw/debian/1.9.1+dfsg-9/debian/patches/0003-Use-system-version-of-liblz4.patch";
+      sha256 = "xi+GyFn9PEjLgbJeAIEmsbp7ut9G9KIBkVulyT3nfsg=";
+    })
+    # Fix LZ4 string separator issue, see: https://github.com/flann-lib/flann/pull/480
+    (fetchpatch {
+      url = "https://github.com/flann-lib/flann/commit/25eb56ec78472bd419a121c6905095a793cf8992.patch";
+      sha256 = "qt8h576Gn8uR7+T9u9bEBIRz6e6AoTKpa1JfdZVvW9s=";
     })
   ];
 
-  nativeBuildInputs = [ unzip cmake python ];
+  cmakeFlags = [
+    "-DBUILD_EXAMPLES:BOOL=OFF"
+    "-DBUILD_TESTS:BOOL=OFF"
+    "-DBUILD_MATLAB_BINDINGS:BOOL=OFF"
+    "-DBUILD_PYTHON_BINDINGS:BOOL=${if enablePython then "ON" else "OFF"}"
+  ];
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    unzip
+  ];
+
+  propagatedBuildInputs = [ lz4 ];
+
+  buildInputs = lib.optionals enablePython [ python3 ];
 
   meta = {
     homepage = "http://people.cs.ubc.ca/~mariusm/flann/";
diff --git a/nixpkgs/pkgs/development/libraries/flint/default.nix b/nixpkgs/pkgs/development/libraries/flint/default.nix
index 475428167060..7f814461f282 100644
--- a/nixpkgs/pkgs/development/libraries/flint/default.nix
+++ b/nixpkgs/pkgs/development/libraries/flint/default.nix
@@ -41,7 +41,6 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
   meta = {
-    inherit version;
     description = "Fast Library for Number Theory";
     license = lib.licenses.gpl2Plus;
     maintainers = lib.teams.sage.members;
diff --git a/nixpkgs/pkgs/development/libraries/fltk/1.4.nix b/nixpkgs/pkgs/development/libraries/fltk/1.4.nix
index 2db0aea3ecf8..2a430844ebe7 100644
--- a/nixpkgs/pkgs/development/libraries/fltk/1.4.nix
+++ b/nixpkgs/pkgs/development/libraries/fltk/1.4.nix
@@ -1,49 +1,5 @@
-{ lib, stdenv, fetchurl, pkg-config, xlibsWrapper, xorgproto, libXi
-, freeglut, libGLU, libGL, libjpeg, zlib, libXft, libpng
-, libtiff, freetype, Cocoa, AGL, GLUT
-}:
-
-let
-  version = "1.4.x-r13121";
-in
-
-stdenv.mkDerivation {
-  pname = "fltk";
-  inherit version;
-
-  src = fetchurl {
-    url = "https://www.fltk.org/pub/fltk/snapshots/fltk-${version}.tar.gz";
-    sha256 = "1v8wxvxcbk99i82x2v5fpqg5vj8n7g8a38g30ry7nzcjn5sf3r63";
-  };
-
-  patches = lib.optionals stdenv.isDarwin [ ./nsosv.patch ];
-
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ libGLU libGL libjpeg zlib libpng libXft ]
-    ++ lib.optional stdenv.isDarwin [ AGL Cocoa GLUT ];
-
-  propagatedBuildInputs = [ xorgproto ]
-    ++ (if stdenv.isDarwin
-        then [ freetype libtiff ]
-        else [ xlibsWrapper libXi freeglut ]);
-
-  configureFlags = [
-    "--enable-gl"
-    "--enable-largefile"
-    "--enable-shared"
-    "--enable-threads"
-    "--enable-xft"
-  ];
-
-  preConfigure = "make clean";
-
-  enableParallelBuilding = true;
-
-  meta = with lib; {
-    description = "A C++ cross-platform lightweight GUI library";
-    homepage = "https://www.fltk.org";
-    platforms = platforms.linux ++ platforms.darwin;
-    license = licenses.gpl2;
-  };
-
+import ./common.nix rec {
+  version = "1.4.x-2021-07-04";
+  rev = "1008cdfab27609a6f6a0e82dadad9fd9cbd8a66d";
+  sha256 = "1h057dyhd04b9bjci952b2l7brxv183l9jw9i50mn9qjfljmvqim";
 }
diff --git a/nixpkgs/pkgs/development/libraries/fltk/common.nix b/nixpkgs/pkgs/development/libraries/fltk/common.nix
new file mode 100644
index 000000000000..06e1c05c7d07
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/fltk/common.nix
@@ -0,0 +1,205 @@
+{ version, rev, sha256 }:
+
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, pkg-config
+, zlib
+, libjpeg
+, libpng
+, fontconfig
+, freetype
+, libX11
+, libXext
+, libXinerama
+, libXfixes
+, libXcursor
+, libXft
+, libXrender
+, ApplicationServices
+, Carbon
+, Cocoa
+
+, withGL ? true
+, libGL
+, libGLU
+, glew
+, OpenGL
+
+, withCairo ? true
+, cairo
+
+, withPango ? (lib.strings.versionAtLeast version "1.4" && stdenv.hostPlatform.isLinux)
+, pango
+
+, withDocs ? true
+, doxygen
+, graphviz
+, texlive
+
+, withExamples ? true
+, withShared ? true
+}:
+
+let
+  onOff = value: if value then "ON" else "OFF";
+  tex = texlive.combine {
+    inherit (texlive)
+      scheme-medium varwidth multirow hanging adjustbox collectbox stackengine
+      sectsty tocloft newunicodechar etoc;
+  };
+in
+stdenv.mkDerivation rec {
+  pname = "fltk";
+  inherit version;
+
+  src = fetchFromGitHub {
+    owner = "fltk";
+    repo = "fltk";
+    inherit rev sha256;
+  };
+
+  outputs = [ "out" ]
+    ++ lib.optional withExamples "bin"
+    ++ lib.optional withDocs "doc";
+
+  # Manually move example & test binaries to $bin to avoid cyclic dependencies on dev binaries
+  outputBin = lib.optionalString withExamples "out";
+
+  patches = lib.optionals stdenv.hostPlatform.isDarwin [
+    ./nsosv.patch
+  ];
+
+  postPatch = ''
+    patchShebangs documentation/make_*
+  '';
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ] ++ lib.optionals withDocs [
+    doxygen
+    graphviz
+    tex
+  ];
+
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
+    ApplicationServices
+    Carbon
+  ] ++ lib.optionals (withGL && !stdenv.hostPlatform.isDarwin) [
+    libGL
+    libGLU
+  ] ++ lib.optionals (withExamples && withGL) [
+    glew
+  ];
+
+  propagatedBuildInputs = [
+    zlib
+    libjpeg
+    libpng
+  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
+    freetype
+    fontconfig
+    libX11
+    libXext
+    libXinerama
+    libXfixes
+    libXcursor
+    libXft
+    libXrender
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
+    Cocoa
+  ] ++ lib.optionals (withGL && stdenv.hostPlatform.isDarwin) [
+    OpenGL
+  ] ++ lib.optionals withCairo [
+    cairo
+  ] ++ lib.optionals withPango [
+    pango
+  ];
+
+  cmakeFlags = [
+    # Common
+    "-DOPTION_BUILD_SHARED_LIBS=${onOff withShared}"
+    "-DOPTION_USE_SYSTEM_ZLIB=ON"
+    "-DOPTION_USE_SYSTEM_LIBJPEG=ON"
+    "-DOPTION_USE_SYSTEM_LIBPNG=ON"
+
+    # X11
+    "-DOPTION_USE_XINERAMA=${onOff stdenv.hostPlatform.isLinux}"
+    "-DOPTION_USE_XFIXES=${onOff stdenv.hostPlatform.isLinux}"
+    "-DOPTION_USE_XCURSOR=${onOff stdenv.hostPlatform.isLinux}"
+    "-DOPTION_USE_XFT=${onOff stdenv.hostPlatform.isLinux}"
+    "-DOPTION_USE_XRENDER=${onOff stdenv.hostPlatform.isLinux}"
+    "-DOPTION_USE_XDBE=${onOff stdenv.hostPlatform.isLinux}"
+
+    # GL
+    "-DOPTION_USE_GL=${onOff withGL}"
+    "-DOpenGL_GL_PREFERENCE=GLVND"
+
+    # Cairo
+    "-DOPTION_CAIRO=${onOff withCairo}"
+    "-DOPTION_CAIROEXT=${onOff withCairo}"
+
+    # Pango
+    "-DOPTION_USE_PANGO=${onOff withPango}"
+
+    # Examples & Tests
+    "-DFLTK_BUILD_EXAMPLES=${onOff withExamples}"
+
+    # Docs
+    "-DOPTION_BUILD_HTML_DOCUMENTATION=${onOff withDocs}"
+    "-DOPTION_BUILD_PDF_DOCUMENTATION=${onOff withDocs}"
+    "-DOPTION_INSTALL_HTML_DOCUMENTATION=${onOff withDocs}"
+    "-DOPTION_INSTALL_PDF_DOCUMENTATION=${onOff withDocs}"
+    "-DOPTION_INCLUDE_DRIVER_DOCUMENTATION=${onOff withDocs}"
+  ];
+
+  preBuild = lib.optionalString (withCairo && withShared && stdenv.hostPlatform.isDarwin) ''
+    # unresolved symbols in cairo dylib without this: https://github.com/fltk/fltk/issues/250
+    export NIX_LDFLAGS="$NIX_LDFLAGS -undefined dynamic_lookup"
+  '';
+
+  postBuild = lib.optionalString withDocs ''
+    make docs
+  '';
+
+  postInstall = lib.optionalString withExamples ''
+    mkdir -p $bin/bin
+    mv bin/{test,examples}/* $bin/bin/
+  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
+    mkdir -p $out/Library/Frameworks
+    mv $out{,/Library/Frameworks}/FLTK.framework
+
+    moveAppBundles() {
+      echo "Moving and symlinking $1"
+      appname="$(basename "$1")"
+      binname="$(basename "$(find "$1"/Contents/MacOS/ -type f -executable | head -n1)")"
+      curpath="$(dirname "$1")"
+
+      mkdir -p "$curpath"/../Applications/
+      mv "$1" "$curpath"/../Applications/
+      [ -f "$curpath"/"$binname" ] && rm "$curpath"/"$binname"
+      ln -s ../Applications/"$appname"/Contents/MacOS/"$binname" "$curpath"/"$binname"
+    }
+
+    rm $out/bin/fluid.icns
+    for app in $out/bin/*.app ${lib.optionalString withExamples "$bin/bin/*.app"}; do
+      moveAppBundles "$app"
+    done
+  '';
+
+  postFixup = ''
+    substituteInPlace $out/bin/fltk-config \
+      --replace "/$out/" "/"
+  '';
+
+  meta = with lib; {
+    description = "A C++ cross-platform lightweight GUI library";
+    homepage = "https://www.fltk.org";
+    platforms = platforms.unix;
+    # LGPL2 with static linking exception
+    # https://www.fltk.org/COPYING.php
+    license = licenses.lgpl2Only;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/fltk/default.nix b/nixpkgs/pkgs/development/libraries/fltk/default.nix
index 5cbd993fc646..831a96f71f3e 100644
--- a/nixpkgs/pkgs/development/libraries/fltk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/fltk/default.nix
@@ -1,46 +1,5 @@
-{ lib, stdenv, fetchurl, pkg-config, xlibsWrapper, xorgproto, libXi
-, freeglut, libGL, libGLU, libjpeg, zlib, libXft, libpng
-, libtiff, freetype, Cocoa, AGL, GLUT
-}:
-
-let
-  version = "1.3.5";
-in
-
-stdenv.mkDerivation {
-  pname = "fltk";
-  inherit version;
-
-  src = fetchurl {
-    url = "https://www.fltk.org/pub/fltk/${version}/fltk-${version}-source.tar.gz";
-    sha256 = "00jp24z1818k9n6nn6lx7qflqf2k13g4kxr0p8v1d37kanhb4ac7";
-  };
-
-  patches = lib.optionals stdenv.isDarwin [ ./nsosv.patch ];
-
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ libGLU libGL libjpeg zlib libpng libXft ]
-    ++ lib.optional stdenv.isDarwin [ AGL Cocoa GLUT ];
-
-  propagatedBuildInputs = [ xorgproto ]
-    ++ (if stdenv.isDarwin
-        then [ freetype libtiff ]
-        else [ xlibsWrapper libXi freeglut ]);
-
-  configureFlags = [
-    "--enable-gl"
-    "--enable-largefile"
-    "--enable-shared"
-    "--enable-threads"
-    "--enable-xft"
-  ];
-
-  enableParallelBuilding = true;
-
-  meta = with lib; {
-    description = "A C++ cross-platform lightweight GUI library";
-    homepage = "https://www.fltk.org";
-    platforms = platforms.linux ++ platforms.darwin;
-    license = licenses.gpl2;
-  };
+import ./common.nix rec {
+  version = "1.3.6";
+  rev = "release-${version}";
+  sha256 = "0vzk4d6j927v7dxywr5xlqlf70myal1xikkdfvd11p94rcdf9bsv";
 }
diff --git a/nixpkgs/pkgs/development/libraries/folks/default.nix b/nixpkgs/pkgs/development/libraries/folks/default.nix
index 6cd651e66ebb..720c274ad520 100644
--- a/nixpkgs/pkgs/development/libraries/folks/default.nix
+++ b/nixpkgs/pkgs/development/libraries/folks/default.nix
@@ -34,13 +34,13 @@
 
 stdenv.mkDerivation rec {
   pname = "folks";
-  version = "0.15.2";
+  version = "0.15.3";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "08nirjax4m4g4ljr8ksq16wzmrvzq6myqh5rm0dw6pnijqk7nxzg";
+    sha256 = "Idc3+vCT9L4GVHPucMogiFuaLDaFlB26JMIjn9PFRKU=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/fontconfig/default.nix b/nixpkgs/pkgs/development/libraries/fontconfig/default.nix
index 075c810131c7..22875e51842a 100644
--- a/nixpkgs/pkgs/development/libraries/fontconfig/default.nix
+++ b/nixpkgs/pkgs/development/libraries/fontconfig/default.nix
@@ -1,5 +1,4 @@
 { lib, stdenv
-, fetchpatch
 , substituteAll
 , fetchurl
 , pkg-config
@@ -15,21 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fontconfig";
-  version = "2.13.93";
+  version = "2.13.94";
 
   src = fetchurl {
-    url = "http://fontconfig.org/release/${pname}-${version}.tar.xz";
-    sha256 = "1850q4k80yxma5g3yxkvyv8i5a3xqzswwml8gjy3jmywx8qqd5pa";
+    url = "https://www.freedesktop.org/software/fontconfig/release/${pname}-${version}.tar.xz";
+    sha256 = "0g004r0bkkqz00mpm3svnnxn7d83158q0yb9ggxryizxfg5m5w55";
   };
 
-  patches = [
-    # Fix build with no docbook2html.
-    (fetchpatch {
-      url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/-/commit/60ce9b695ee9d1ac514a61f562e210d3278ba605.patch";
-      sha256 = "0hfd2jdvsgackdp29dyzf5b1277pnbacihxqh9vdn63rr932ipra";
-    })
-  ];
-
   outputs = [ "bin" "dev" "lib" "out" ]; # $out contains all the config
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/fox/fox-1.6.nix b/nixpkgs/pkgs/development/libraries/fox/fox-1.6.nix
index 50f9e688cb9f..028ab6a75302 100644
--- a/nixpkgs/pkgs/development/libraries/fox/fox-1.6.nix
+++ b/nixpkgs/pkgs/development/libraries/fox/fox-1.6.nix
@@ -2,13 +2,9 @@
 , libXrandr, libGLU, libGL, libXft, libXfixes, xinput
 , CoreServices }:
 
-let
-  version = "1.6.57";
-in
-
 stdenv.mkDerivation rec {
   pname = "fox";
-  inherit version;
+  version = "1.6.57";
 
   src = fetchurl {
     url = "ftp://ftp.fox-toolkit.org/pub/${pname}-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/fplll/20160331.nix b/nixpkgs/pkgs/development/libraries/fplll/20160331.nix
index 374aec5904d6..6bb9570d998a 100644
--- a/nixpkgs/pkgs/development/libraries/fplll/20160331.nix
+++ b/nixpkgs/pkgs/development/libraries/fplll/20160331.nix
@@ -13,7 +13,6 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [autoconf automake libtool gettext autoreconfHook];
   buildInputs = [gmp mpfr];
   meta = {
-    inherit version;
     description = "Lattice algorithms using floating-point arithmetic";
     license = lib.licenses.lgpl21Plus;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/libraries/freeglut/default.nix b/nixpkgs/pkgs/development/libraries/freeglut/default.nix
index 83e3eebdcc32..ecdc1c19ff14 100644
--- a/nixpkgs/pkgs/development/libraries/freeglut/default.nix
+++ b/nixpkgs/pkgs/development/libraries/freeglut/default.nix
@@ -1,9 +1,8 @@
 { lib, stdenv, fetchurl, libXi, libXrandr, libXxf86vm, libGL, libGLU, xlibsWrapper, cmake }:
 
-let version = "3.2.1";
-in stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "freeglut";
-  inherit version;
+  version = "3.2.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/freeglut/freeglut-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/freenect/default.nix b/nixpkgs/pkgs/development/libraries/freenect/default.nix
index e13302319a11..0e96a346f418 100644
--- a/nixpkgs/pkgs/development/libraries/freenect/default.nix
+++ b/nixpkgs/pkgs/development/libraries/freenect/default.nix
@@ -20,7 +20,6 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Drivers and libraries for the Xbox Kinect device on Windows, Linux, and macOS";
-    inherit version;
     homepage = "http://openkinect.org";
     license = with lib.licenses; [ gpl2 asl20 ];
     maintainers = with lib.maintainers; [ bennofs ];
diff --git a/nixpkgs/pkgs/development/libraries/freetts/default.nix b/nixpkgs/pkgs/development/libraries/freetts/default.nix
index dc5f43860305..06535c087dc6 100644
--- a/nixpkgs/pkgs/development/libraries/freetts/default.nix
+++ b/nixpkgs/pkgs/development/libraries/freetts/default.nix
@@ -1,9 +1,10 @@
 {stdenv, fetchurl, apacheAnt, unzip, sharutils, lib, jdk}:
 
-stdenv.mkDerivation {
-  name = "freetts-1.2.2";
+stdenv.mkDerivation rec {
+  pname = "freetts";
+  version = "1.2.2";
   src = fetchurl {
-    url = "mirror://sourceforge/freetts/freetts-1.2.2-src.zip";
+    url = "mirror://sourceforge/freetts/${pname}-${version}-src.zip";
     sha256 = "0mnikqhpf4f4jdr0irmibr8yy0dnffx1i257y22iamxi7a6by2r7";
   };
   nativeBuildInputs = [ unzip ];
diff --git a/nixpkgs/pkgs/development/libraries/funambol/default.nix b/nixpkgs/pkgs/development/libraries/funambol/default.nix
index 377aa45cf5ec..e5ad34a56bb6 100644
--- a/nixpkgs/pkgs/development/libraries/funambol/default.nix
+++ b/nixpkgs/pkgs/development/libraries/funambol/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, zlib, curl, autoreconfHook, unzip }:
 
-stdenv.mkDerivation {
-  name = "funambol-client-cpp-9.0.0";
+stdenv.mkDerivation rec {
+  pname = "funambol-client-cpp";
+  version = "9.0.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/funambol/funambol-client-sdk-9.0.0.zip";
+    url = "mirror://sourceforge/funambol/funambol-client-sdk-${version}.zip";
     sha256 = "1667gahz30i5r8kbv7w415z0hbgm6f6pln1137l5skapi1if6r73";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/galario/default.nix b/nixpkgs/pkgs/development/libraries/galario/default.nix
index 4e28f84bacdb..7fb93a61a0fe 100644
--- a/nixpkgs/pkgs/development/libraries/galario/default.nix
+++ b/nixpkgs/pkgs/development/libraries/galario/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     pythonPackages.pytest
   ];
 
-  checkInputs = lib.optional enablePython [ pythonPackages.scipy pythonPackages.pytestcov ];
+  checkInputs = lib.optional enablePython [ pythonPackages.scipy pythonPackages.pytest-cov ];
 
   preConfigure = ''
     mkdir -p build/external/src
diff --git a/nixpkgs/pkgs/development/libraries/garmintools/default.nix b/nixpkgs/pkgs/development/libraries/garmintools/default.nix
index 424e3751f407..7ad5bc879261 100644
--- a/nixpkgs/pkgs/development/libraries/garmintools/default.nix
+++ b/nixpkgs/pkgs/development/libraries/garmintools/default.nix
@@ -1,8 +1,9 @@
 { lib, stdenv, fetchurl, libusb-compat-0_1 }:
-stdenv.mkDerivation {
-  name = "garmintools-0.10";
+stdenv.mkDerivation rec {
+  pname = "garmintools";
+  version = "0.10";
   src = fetchurl {
-    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/garmintools/garmintools-0.10.tar.gz";
+    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/garmintools/${pname}-${version}.tar.gz";
     sha256 = "1vjc8h0z4kx2h52yc3chxn3wh1krn234fg12sggbia9zjrzhpmgz";
   };
   buildInputs = [ libusb-compat-0_1 ];
diff --git a/nixpkgs/pkgs/development/libraries/gcc/libstdc++/5.nix b/nixpkgs/pkgs/development/libraries/gcc/libstdc++/5.nix
index b123f799ccaa..f963ae31e5c1 100644
--- a/nixpkgs/pkgs/development/libraries/gcc/libstdc++/5.nix
+++ b/nixpkgs/pkgs/development/libraries/gcc/libstdc++/5.nix
@@ -19,13 +19,13 @@ stdenv.mkDerivation rec {
     ./no-sys-dirs.patch
     (fetchpatch {
       name = "siginfo.patch";
-      url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/siginfo.patch?h=packages/libstdc%2B%2B5&id=e36ee8ed9bb5942db14cf6249a2ead14974a2bfa";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/e36ee8ed9bb5942db14cf6249a2ead14974a2bfa/trunk/siginfo.patch";
       sha256 = "15zldbm33yba293dgrgsbv3j332hkc3iqpyc8fa7zl42mh9qk22j";
       extraPrefix = "";
     })
     (fetchpatch {
       name = "gcc-3.4.3-no_multilib_amd64.patch";
-      url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/gcc-3.4.3-no_multilib_amd64.patch?h=packages/libstdc%2B%2B5&id=e36ee8ed9bb5942db14cf6249a2ead14974a2bfa";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/e36ee8ed9bb5942db14cf6249a2ead14974a2bfa/trunk/gcc-3.4.3-no_multilib_amd64.patch";
       sha256 = "11m5lc51b0addhc4yq4rz0dwpv6k73rrj73wya3lqdk8rly6cjpm";
       extraPrefix = "";
     })
diff --git a/nixpkgs/pkgs/development/libraries/givaro/3.7.nix b/nixpkgs/pkgs/development/libraries/givaro/3.7.nix
index dfd6b6b476b6..a9b6325c3d71 100644
--- a/nixpkgs/pkgs/development/libraries/givaro/3.7.nix
+++ b/nixpkgs/pkgs/development/libraries/givaro/3.7.nix
@@ -9,7 +9,6 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook ];
   buildInputs = [autoconf automake libtool gmpxx];
   meta = {
-    inherit version;
     description = "A C++ library for arithmetic and algebraic computations";
     license = lib.licenses.cecill-b;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/libraries/givaro/3.nix b/nixpkgs/pkgs/development/libraries/givaro/3.nix
index 9d216b9d8e5c..1bfe7682ffa7 100644
--- a/nixpkgs/pkgs/development/libraries/givaro/3.nix
+++ b/nixpkgs/pkgs/development/libraries/givaro/3.nix
@@ -9,7 +9,6 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook ];
   buildInputs = [autoconf automake libtool gmpxx];
   meta = {
-    inherit version;
     description = "A C++ library for arithmetic and algebraic computations";
     license = lib.licenses.cecill-b;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/libraries/givaro/default.nix b/nixpkgs/pkgs/development/libraries/givaro/default.nix
index f6d6ddab4d0b..29674118dfee 100644
--- a/nixpkgs/pkgs/development/libraries/givaro/default.nix
+++ b/nixpkgs/pkgs/development/libraries/givaro/default.nix
@@ -36,7 +36,6 @@ stdenv.mkDerivation rec {
   doCheck = false;
 
   meta = {
-    inherit version;
     description = "A C++ library for arithmetic and algebraic computations";
     license = lib.licenses.cecill-b;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/libraries/glew/default.nix b/nixpkgs/pkgs/development/libraries/glew/default.nix
index 660276530aa8..53c9b5a30dc9 100644
--- a/nixpkgs/pkgs/development/libraries/glew/default.nix
+++ b/nixpkgs/pkgs/development/libraries/glew/default.nix
@@ -5,10 +5,11 @@
 with lib;
 
 stdenv.mkDerivation rec {
-  name = "glew-2.2.0";
+  pname = "glew";
+  version = "2.2.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/glew/${name}.tgz";
+    url = "mirror://sourceforge/glew/${pname}-${version}.tgz";
     sha256 = "1qak8f7g1iswgswrgkzc7idk7jmqgwrs58fhg2ai007v7j4q5z6l";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/glfw/3.x.nix b/nixpkgs/pkgs/development/libraries/glfw/3.x.nix
index 37c15225869f..f9089384a8a5 100644
--- a/nixpkgs/pkgs/development/libraries/glfw/3.x.nix
+++ b/nixpkgs/pkgs/development/libraries/glfw/3.x.nix
@@ -1,6 +1,8 @@
 { stdenv, lib, fetchFromGitHub, cmake
 , libGL, libXrandr, libXinerama, libXcursor, libX11, libXi, libXext
 , Cocoa, Kernel, fixDarwinDylibNames
+, waylandSupport ? false, extra-cmake-modules, wayland
+, wayland-protocols, libxkbcommon
 }:
 
 stdenv.mkDerivation rec {
@@ -14,20 +16,34 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-BP4wxjgm0x0E68tNz5eudkVUyBnXkQlP7LY3ppZunhw=";
   };
 
+  patches = lib.optional waylandSupport ./wayland.patch;
+
   propagatedBuildInputs = [ libGL ];
 
   nativeBuildInputs = [ cmake ]
-    ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
+    ++ lib.optional stdenv.isDarwin fixDarwinDylibNames
+    ++ lib.optional waylandSupport extra-cmake-modules;
 
-  buildInputs = [ libX11 libXrandr libXinerama libXcursor libXi libXext ]
-    ++ lib.optionals stdenv.isDarwin [ Cocoa Kernel ];
+  buildInputs =
+    if waylandSupport
+    then [ wayland wayland-protocols libxkbcommon ]
+    else [ libX11 libXrandr libXinerama libXcursor libXi libXext ]
+         ++ lib.optionals stdenv.isDarwin [ Cocoa Kernel ];
 
   cmakeFlags = [
     "-DBUILD_SHARED_LIBS=ON"
-  ] ++ lib.optional (!stdenv.isDarwin) [
+  ] ++ lib.optionals (!stdenv.isDarwin) [
     "-DCMAKE_C_FLAGS=-D_GLFW_GLX_LIBRARY='\"${lib.getLib libGL}/lib/libGL.so.1\"'"
+  ] ++ lib.optionals waylandSupport [
+    "-DGLFW_USE_WAYLAND=ON"
+    "-DCMAKE_C_FLAGS=-D_GLFW_EGL_LIBRARY='\"${lib.getLib libGL}/lib/libEGL.so.1\"'"
   ];
 
+  postPatch = lib.optionalString waylandSupport ''
+    substituteInPlace src/wl_init.c \
+      --replace "libxkbcommon.so.0" "${lib.getLib libxkbcommon}/lib/libxkbcommon.so.0"
+  '';
+
   meta = with lib; {
     description = "Multi-platform library for creating OpenGL contexts and managing input, including keyboard, mouse, joystick and time";
     homepage = "https://www.glfw.org/";
diff --git a/nixpkgs/pkgs/development/libraries/glfw/wayland.patch b/nixpkgs/pkgs/development/libraries/glfw/wayland.patch
new file mode 100644
index 000000000000..c0c338f845b3
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/glfw/wayland.patch
@@ -0,0 +1,25 @@
+From 46fb81c69e8acdb70907409f98dd01e387408414 Mon Sep 17 00:00:00 2001
+From: Stone Tickle <lattis@mochiro.moe>
+Date: Fri, 5 Jun 2020 12:51:25 +0900
+Subject: [PATCH] set O_NONBLOCK on repeat timerfd
+
+---
+ src/wl_init.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/wl_init.c b/src/wl_init.c
+index 49e7cc52..43569bef 100644
+--- a/src/wl_init.c
++++ b/src/wl_init.c
+@@ -1166,7 +1166,7 @@ int _glfwPlatformInit(void)
+ 
+     _glfw.wl.timerfd = -1;
+     if (_glfw.wl.seatVersion >= 4)
+-        _glfw.wl.timerfd = timerfd_create(CLOCK_MONOTONIC, TFD_CLOEXEC);
++        _glfw.wl.timerfd = timerfd_create(CLOCK_MONOTONIC, TFD_CLOEXEC | TFD_NONBLOCK);
+ 
+     if (_glfw.wl.pointer && _glfw.wl.shm)
+     {
+-- 
+2.31.1
+
diff --git a/nixpkgs/pkgs/development/libraries/glibc/2.32-master.patch.gz b/nixpkgs/pkgs/development/libraries/glibc/2.32-master.patch.gz
deleted file mode 100644
index 8ea998b5bea2..000000000000
--- a/nixpkgs/pkgs/development/libraries/glibc/2.32-master.patch.gz
+++ /dev/null
Binary files differdiff --git a/nixpkgs/pkgs/development/libraries/glibc/2.33-master.patch.gz b/nixpkgs/pkgs/development/libraries/glibc/2.33-master.patch.gz
new file mode 100644
index 000000000000..59230761cd43
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/glibc/2.33-master.patch.gz
Binary files differdiff --git a/nixpkgs/pkgs/development/libraries/glibc/common.nix b/nixpkgs/pkgs/development/libraries/glibc/common.nix
index 93f8f7a8641d..e651a8effac9 100644
--- a/nixpkgs/pkgs/development/libraries/glibc/common.nix
+++ b/nixpkgs/pkgs/development/libraries/glibc/common.nix
@@ -41,9 +41,9 @@
 } @ args:
 
 let
-  version = "2.32";
-  patchSuffix = "-48";
-  sha256 = "0di848ibffrnwq7g2dvgqrnn4xqhj3h96csn69q4da51ymafl9qn";
+  version = "2.33";
+  patchSuffix = "-47";
+  sha256 = "sha256-LiVWAA4QXb1X8Layoy/yzxc73k8Nhd/8z9i35RoGd/8=";
 in
 
 assert withLinuxHeaders -> linuxHeaders != null;
@@ -60,14 +60,14 @@ stdenv.mkDerivation ({
   patches =
     [
       /* No tarballs for stable upstream branch, only https://sourceware.org/git/glibc.git and using git would complicate bootstrapping.
-          $ git fetch --all -p && git checkout origin/release/2.32/master && git describe
-          glibc-2.32-48-g16949aeaa0
-          $ git show --minimal --reverse glibc-2.32.. | gzip -9n --rsyncable - > 2.32-master.patch.gz
+          $ git fetch --all -p && git checkout origin/release/2.33/master && git describe
+          glibc-2.33-47-gb5711025bc
+          $ git show --minimal --reverse glibc-2.33.. | gzip -9n --rsyncable - > 2.33-master.patch.gz
 
          To compare the archive contents zdiff can be used.
-          $ zdiff -u 2.32-master.patch.gz ../nixpkgs/pkgs/development/libraries/glibc/2.32-master.patch.gz
+          $ zdiff -u 2.33-master.patch.gz ../nixpkgs/pkgs/development/libraries/glibc/2.33-master.patch.gz
        */
-      ./2.32-master.patch.gz
+      ./2.33-master.patch.gz
 
       /* Allow NixOS and Nix to handle the locale-archive. */
       ./nix-locale-archive.patch
@@ -153,10 +153,15 @@ stdenv.mkDerivation ({
       "--enable-add-ons"
       "--sysconfdir=/etc"
       "--enable-stackguard-randomization"
-      "--enable-static-pie"
       "--enable-bind-now"
       (lib.withFeatureAs withLinuxHeaders "headers" "${linuxHeaders}/include")
       (lib.enableFeature profilingLibraries "profile")
+    ] ++ lib.optionals (stdenv.hostPlatform.isx86_64 || stdenv.hostPlatform.isi686 || stdenv.hostPlatform.isAarch64) [
+      # This feature is currently supported on
+      # i386, x86_64 and x32 with binutils 2.29 or later,
+      # and on aarch64 with binutils 2.30 or later.
+      # https://sourceware.org/glibc/wiki/PortStatus
+      "--enable-static-pie"
     ] ++ lib.optionals withLinuxHeaders [
       "--enable-kernel=3.2.0" # can't get below with glibc >= 2.26
     ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
diff --git a/nixpkgs/pkgs/development/libraries/glibc/dont-use-system-ld-so-cache.patch b/nixpkgs/pkgs/development/libraries/glibc/dont-use-system-ld-so-cache.patch
index f84b1049adf8..0e0315aca270 100644
--- a/nixpkgs/pkgs/development/libraries/glibc/dont-use-system-ld-so-cache.patch
+++ b/nixpkgs/pkgs/development/libraries/glibc/dont-use-system-ld-so-cache.patch
@@ -1,19 +1,8 @@
-diff -Naur glibc-2.27-orig/elf/ldconfig.c glibc-2.27/elf/ldconfig.c
---- glibc-2.27-orig/elf/ldconfig.c	2018-02-01 11:17:18.000000000 -0500
-+++ glibc-2.27/elf/ldconfig.c	2018-02-17 22:43:17.232175182 -0500
-@@ -51,7 +51,7 @@
- #endif
- 
- #ifndef LD_SO_CONF
--# define LD_SO_CONF SYSCONFDIR "/ld.so.conf"
-+# define LD_SO_CONF PREFIX "/etc/ld.so.conf"
- #endif
- 
- /* Get libc version number.  */
-diff -Naur glibc-2.27-orig/elf/Makefile glibc-2.27/elf/Makefile
---- glibc-2.27-orig/elf/Makefile	2018-02-01 11:17:18.000000000 -0500
-+++ glibc-2.27/elf/Makefile	2018-02-17 22:44:50.334006750 -0500
-@@ -559,13 +559,13 @@
+diff --git a/elf/Makefile b/elf/Makefile
+index 5d666b1b..a5017e9c 100644
+--- a/elf/Makefile
++++ b/elf/Makefile
+@@ -669,14 +669,14 @@ $(objpfx)sln: $(sln-modules:%=$(objpfx)%.o)
  
  $(objpfx)ldconfig: $(ldconfig-modules:%=$(objpfx)%.o)
  
@@ -26,16 +15,45 @@ diff -Naur glibc-2.27-orig/elf/Makefile glibc-2.27/elf/Makefile
 -CFLAGS-dl-cache.c += $(SYSCONF-FLAGS)
 -CFLAGS-cache.c += $(SYSCONF-FLAGS)
 -CFLAGS-rtld.c += $(SYSCONF-FLAGS)
+-CFLAGS-dl-usage.c += $(SYSCONF-FLAGS) \
 +CFLAGS-dl-cache.c += $(PREFIX-FLAGS)
 +CFLAGS-cache.c += $(PREFIX-FLAGS)
 +CFLAGS-rtld.c += $(PREFIX-FLAGS)
++CFLAGS-dl-usage.c += $(PREFIX-FLAGS) \
+   -D'RTLD="$(rtlddir)/$(rtld-installed-name)"'
  
  cpp-srcs-left := $(all-rtld-routines:=.os)
- lib := rtld
-diff -Naur glibc-2.27-orig/sysdeps/generic/dl-cache.h glibc-2.27/sysdeps/generic/dl-cache.h
---- glibc-2.27-orig/sysdeps/generic/dl-cache.h	2018-02-01 11:17:18.000000000 -0500
-+++ glibc-2.27/sysdeps/generic/dl-cache.h	2018-02-17 22:45:20.471598816 -0500
-@@ -28,7 +28,7 @@
+diff --git a/elf/dl-diagnostics.c b/elf/dl-diagnostics.c
+index bef224b3..8e166b12 100644
+--- a/elf/dl-diagnostics.c
++++ b/elf/dl-diagnostics.c
+@@ -205,7 +205,7 @@ print_paths (void)
+ {
+   _dl_diagnostics_print_labeled_string ("path.prefix", PREFIX);
+   _dl_diagnostics_print_labeled_string ("path.rtld", RTLD);
+-  _dl_diagnostics_print_labeled_string ("path.sysconfdir", SYSCONFDIR);
++  _dl_diagnostics_print_labeled_string ("path.sysconfdir", PREFIX "/etc");
+
+   unsigned int index = 0;
+   static const char *system_dirs = SYSTEM_DIRS "\0";
+diff --git a/elf/ldconfig.c b/elf/ldconfig.c
+index 28ed637a..6f07b79a 100644
+--- a/elf/ldconfig.c
++++ b/elf/ldconfig.c
+@@ -57,7 +57,7 @@
+ #define TLS_HWCAP_BIT 63
+ 
+ #ifndef LD_SO_CONF
+-# define LD_SO_CONF SYSCONFDIR "/ld.so.conf"
++# define LD_SO_CONF PREFIX "/etc/ld.so.conf"
+ #endif
+ 
+ /* Get libc version number.  */
+diff --git a/sysdeps/generic/dl-cache.h b/sysdeps/generic/dl-cache.h
+index 964d50a4..2224d651 100644
+--- a/sysdeps/generic/dl-cache.h
++++ b/sysdeps/generic/dl-cache.h
+@@ -35,7 +35,7 @@
  #endif
  
  #ifndef LD_SO_CACHE
diff --git a/nixpkgs/pkgs/development/libraries/globalarrays/default.nix b/nixpkgs/pkgs/development/libraries/globalarrays/default.nix
index 1f70946cbcec..8b01f9f68146 100644
--- a/nixpkgs/pkgs/development/libraries/globalarrays/default.nix
+++ b/nixpkgs/pkgs/development/libraries/globalarrays/default.nix
@@ -2,12 +2,9 @@
 , blas, gfortran, openssh, mpi
 } :
 
-let
-  version = "5.8";
-
-in stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "globalarrays";
-  inherit version;
+  version = "5.8";
 
   src = fetchFromGitHub {
     owner = "GlobalArrays";
diff --git a/nixpkgs/pkgs/development/libraries/gloox/default.nix b/nixpkgs/pkgs/development/libraries/gloox/default.nix
index b01d858cfb92..82429add2619 100644
--- a/nixpkgs/pkgs/development/libraries/gloox/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gloox/default.nix
@@ -10,12 +10,9 @@ assert idnSupport -> libidn != null;
 
 with lib;
 
-let
-  version = "1.0.24";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec{
   pname = "gloox";
-  inherit version;
+  version = "1.0.24";
 
   src = fetchurl {
     url = "https://camaya.net/download/gloox-${version}.tar.bz2";
diff --git a/nixpkgs/pkgs/development/libraries/gnet/default.nix b/nixpkgs/pkgs/development/libraries/gnet/default.nix
index 8f35407f9ddd..debf3eb59264 100644
--- a/nixpkgs/pkgs/development/libraries/gnet/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gnet/default.nix
@@ -1,11 +1,12 @@
 {lib, stdenv, fetchFromGitHub, pkg-config, autoconf, automake, glib, libtool }:
 
-stdenv.mkDerivation {
-  name = "gnet-2.0.8";
+stdenv.mkDerivation rec {
+  pname = "gnet";
+  version = "2.0.8";
   src = fetchFromGitHub {
     owner = "GNOME";
     repo = "gnet";
-    rev = "GNET_2_0_8";
+    rev = "GNET_${lib.replaceStrings ["."] ["_"] version}";
     sha256 = "1cy78kglzi235md964ikvm0rg801bx0yk9ya8zavndjnaarzqq87";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/goocanvas/2.x.nix b/nixpkgs/pkgs/development/libraries/goocanvas/2.x.nix
index c4df9f1f0fd7..4194064a5a29 100644
--- a/nixpkgs/pkgs/development/libraries/goocanvas/2.x.nix
+++ b/nixpkgs/pkgs/development/libraries/goocanvas/2.x.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchurl, pkg-config, gettext, gtk-doc, gobject-introspection, python2, gtk3, cairo, glib }:
 
-let
-  version = "2.0.4";
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "goocanvas";
-  inherit version;
+  version = "2.0.4";
 
   outputs = [ "out" "dev" "devdoc" ];
 
diff --git a/nixpkgs/pkgs/development/libraries/gpgme/default.nix b/nixpkgs/pkgs/development/libraries/gpgme/default.nix
index 326e5da0812c..c8dad069dccc 100644
--- a/nixpkgs/pkgs/development/libraries/gpgme/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gpgme/default.nix
@@ -13,14 +13,21 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gpgme";
-  version = "1.15.1";
+  version = "1.16.0";
 
   src = fetchurl {
     url = "mirror://gnupg/gpgme/${pname}-${version}.tar.bz2";
-    sha256 = "1bg13l5s8x9p1v0jyv29n84bay27pflindpzjsc9gj7i4wdkrg7f";
+    sha256 = "1l4yw9fqc1blvx1sq1jnfvp1jijla3ca2jw90p4x9m8hvfpc933c";
   };
 
-  patches = [
+  patches =
+    # TODO: apply unconditionally on a rebuild; probably included in > 1.16.0
+    lib.optional (stdenv.is32bit && stdenv.isLinux) (fetchpatch {
+      name = "test_t-edit-sign.diff"; # we experienced segmentation fault in this test
+      url = "https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=patch;h=81a33ea5e1b86d586b956e893a5b25c4cd41c969";
+      sha256 = "1xxvv0kc9wdj5hzpddzs3cn8dhmm2cb29224a7h9vairraq5272h";
+    })
+  ++ [
     (fetchpatch { # gpg: Send --with-keygrip when listing keys
       name = "c4cf527ea227edb468a84bf9b8ce996807bd6992.patch";
       url = "http://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=patch;h=c4cf527ea227edb468a84bf9b8ce996807bd6992";
@@ -85,6 +92,6 @@ stdenv.mkDerivation rec {
     '';
     license = with licenses; [ lgpl21Plus gpl3Plus ];
     platforms = platforms.unix;
-    maintainers = with maintainers; [ primeos ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/grpc/default.nix b/nixpkgs/pkgs/development/libraries/grpc/default.nix
index 00d3c4a5637e..2bf843241a6a 100644
--- a/nixpkgs/pkgs/development/libraries/grpc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/grpc/default.nix
@@ -3,13 +3,13 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.38.1"; # N.B: if you change this, change pythonPackages.grpcio-tools to a matching version too
+  version = "1.39.0"; # N.B: if you change this, change pythonPackages.grpcio-tools to a matching version too
   pname = "grpc";
   src = fetchFromGitHub {
     owner = "grpc";
     repo = "grpc";
     rev = "v${version}";
-    sha256 = "0hjp946x5695srmc6bg2m7iih81jdmhpxn4bjcl80f09v4qsb0nl";
+    sha256 = "1wa7n7mf20fnvxqw093kr7a4c7vilcmx9yl3hicnyfcd663jgqvd";
     fetchSubmodules = true;
   };
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/gsasl/default.nix b/nixpkgs/pkgs/development/libraries/gsasl/default.nix
index fc2edc187129..5dcc24cc8bc2 100644
--- a/nixpkgs/pkgs/development/libraries/gsasl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gsasl/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, libidn, libkrb5 }:
 
 stdenv.mkDerivation rec {
-  name = "gsasl-1.10.0";
+  pname = "gsasl";
+  version = "1.10.0";
 
   src = fetchurl {
-    url = "mirror://gnu/gsasl/${name}.tar.gz";
+    url = "mirror://gnu/gsasl/${pname}-${version}.tar.gz";
     sha256 = "sha256-hby9juYJWt54cCY6KOvLiDL1Qepzk5dUlJJgFcB1aNM=";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/gsl/default.nix b/nixpkgs/pkgs/development/libraries/gsl/default.nix
index 2dc47a93be3c..dec2125974d7 100644
--- a/nixpkgs/pkgs/development/libraries/gsl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gsl/default.nix
@@ -1,11 +1,12 @@
 { fetchurl, lib, stdenv }:
 
 stdenv.mkDerivation rec {
-  name = "gsl-2.6";
+  pname = "gsl";
+  version = "2.7";
 
   src = fetchurl {
-    url = "mirror://gnu/gsl/${name}.tar.gz";
-    sha256 = "1a460zj9xmbgvcymkdhqh313c4l29mn9cffbi5vf33x3qygk70mp";
+    url = "mirror://gnu/gsl/${pname}-${version}.tar.gz";
+    sha256 = "sha256-77vzeF2g5TA4vnkHUAYotGYVLbw8FzqH3hteui4jYCs=";
   };
 
   preConfigure = if (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11" && stdenv.isDarwin) then ''
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/bad/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/bad/default.nix
index faf38a1a05fb..5723323defd6 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/bad/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/bad/default.nix
@@ -292,6 +292,8 @@ stdenv.mkDerivation rec {
     # `applemedia/videotexturecache.h` requires `gst/gl/gl.h`,
     # but its meson build system does not declare the dependency.
     "-Dapplemedia=disabled"
+  ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
+    "-Dintrospection=disabled"
   ];
 
   # Argument list too long
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/base/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/base/default.nix
index 699f70a0788a..3e00050ada2f 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/base/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/base/default.nix
@@ -105,6 +105,8 @@ stdenv.mkDerivation rec {
     "-Dgl-graphene=disabled" # not packaged in nixpkgs as of writing
     # See https://github.com/GStreamer/gst-plugins-base/blob/d64a4b7a69c3462851ff4dcfa97cc6f94cd64aef/meson_options.txt#L15 for a list of choices
     "-Dgl_winsys=${lib.concatStringsSep "," (lib.optional enableX11 "x11" ++ lib.optional enableWayland "wayland" ++ lib.optional enableCocoa "cocoa")}"
+  ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
+    "-Dintrospection=disabled"
   ]
   ++ lib.optional (!enableX11) "-Dx11=disabled"
   # TODO How to disable Wayland?
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/core/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/core/default.nix
index 2d43a02725f9..9cc1675de3ae 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/core/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/core/default.nix
@@ -76,6 +76,8 @@ stdenv.mkDerivation rec {
     "-Ddbghelp=disabled" # not needed as we already provide libunwind and libdw, and dbghelp is a fallback to those
     "-Dexamples=disabled" # requires many dependencies and probably not useful for our users
     "-Ddoc=disabled" # `hotdoc` not packaged in nixpkgs as of writing
+  ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
+    "-Dintrospection=disabled"
   ] ++ lib.optionals stdenv.isDarwin [
     # darwin.libunwind doesn't have pkg-config definitions so meson doesn't detect it.
     "-Dlibunwind=disabled"
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/devtools/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/devtools/default.nix
index 517fe9b302d3..12cb6dac6f31 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/devtools/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/devtools/default.nix
@@ -51,6 +51,8 @@ stdenv.mkDerivation rec {
 
   mesonFlags = [
     "-Ddoc=disabled" # `hotdoc` not packaged in nixpkgs as of writing
+  ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
+    "-Dintrospection=disabled"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/ges/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/ges/default.nix
index 6ada053ea012..840b0f252857 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/ges/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/ges/default.nix
@@ -59,6 +59,8 @@ stdenv.mkDerivation rec {
 
   mesonFlags = [
     "-Ddoc=disabled" # `hotdoc` not packaged in nixpkgs as of writing
+  ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
+    "-Dintrospection=disabled"
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/gstreamer/rtsp-server/default.nix b/nixpkgs/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
index 56596960019b..d66376b64996 100644
--- a/nixpkgs/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
@@ -54,6 +54,8 @@ stdenv.mkDerivation rec {
   mesonFlags = [
     "-Dexamples=disabled" # requires many dependencies and probably not useful for our users
     "-Ddoc=disabled" # `hotdoc` not packaged in nixpkgs as of writing
+  ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
+    "-Dintrospection=disabled"
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/gtkimageview/default.nix b/nixpkgs/pkgs/development/libraries/gtkimageview/default.nix
index 438f7feab6ce..1e910e3bcf40 100644
--- a/nixpkgs/pkgs/development/libraries/gtkimageview/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gtkimageview/default.nix
@@ -1,11 +1,12 @@
 { fetchurl, lib, stdenv, pkg-config, gtk2 }:
 
 stdenv.mkDerivation rec {
-  name = "gtkimageview-1.6.4";
+  pname = "gtkimageview";
+  version = "1.6.4";
 
   src = fetchurl {
-    url = "http://trac.bjourne.webfactional.com/chrome/common/releases/${name}.tar.gz";
-    sha256 = "1if3yh5z6nkv5wnkk0qyy9pkk03vn5rqbfk23q87kj39pqscgr37";
+    url = "https://sources.archlinux.org/other/packages/${pname}/${pname}-${version}.tar.gz";
+    sha256 = "1wj63af9j9p5i067lpwi9lxvwalamakrmklvl983kvi7s4w1ss2c";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/gtkspell/default.nix b/nixpkgs/pkgs/development/libraries/gtkspell/default.nix
index 78d9956d30a2..aca6ccdcccbc 100644
--- a/nixpkgs/pkgs/development/libraries/gtkspell/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gtkspell/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl, gtk2, aspell, pkg-config, enchant, intltool}:
 
-stdenv.mkDerivation {
-  name = "gtkspell-2.0.16";
+stdenv.mkDerivation rec {
+  pname = "gtkspell";
+  version = "2.0.16";
 
   src = fetchurl {
-    url = "mirror://sourceforge/gtkspell/gtkspell-2.0.16.tar.gz";
+    url = "mirror://sourceforge/gtkspell/${pname}-${version}.tar.gz";
     sha256 = "00hdv28bp72kg1mq2jdz1sdw2b8mb9iclsp7jdqwpck705bdriwg";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/hawknl/default.nix b/nixpkgs/pkgs/development/libraries/hawknl/default.nix
index aacdf0ee933e..6d60d62fcce7 100644
--- a/nixpkgs/pkgs/development/libraries/hawknl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/hawknl/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl, unzip}:
 
-stdenv.mkDerivation {
-  name = "hawknl-1.68";
+stdenv.mkDerivation rec {
+  pname = "hawknl";
+  version = "1.68";
 
   src = fetchurl {
-    url = "http://urchlay.naptime.net/~urchlay/src/HawkNL168src.zip";
+    url = "http://urchlay.naptime.net/~urchlay/src/HawkNL${lib.replaceStrings ["."] [""] version}src.zip";
     sha256 = "11shn2fbxj3w0j77w0234pqyj1368x686kkgv09q5yqhi1cdp028";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/highfive/default.nix b/nixpkgs/pkgs/development/libraries/highfive/default.nix
index a9db80468ee6..015147d70bc3 100644
--- a/nixpkgs/pkgs/development/libraries/highfive/default.nix
+++ b/nixpkgs/pkgs/development/libraries/highfive/default.nix
@@ -39,7 +39,6 @@ stdenv.mkDerivation rec {
   ++ (lib.optionals mpiSupport [ "-DHIGHFIVE_PARALLEL_HDF5=ON" ]);
 
   meta = with lib; {
-    inherit version;
     description = "Header-only C++ HDF5 interface";
     license = licenses.boost;
     homepage = "https://bluebrain.github.io/HighFive/";
diff --git a/nixpkgs/pkgs/development/libraries/http-parser/default.nix b/nixpkgs/pkgs/development/libraries/http-parser/default.nix
index 9d1d23ede8b6..36ca0b0ca0b7 100644
--- a/nixpkgs/pkgs/development/libraries/http-parser/default.nix
+++ b/nixpkgs/pkgs/development/libraries/http-parser/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchFromGitHub }:
 
-let
-  version = "2.9.4";
-in stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "http-parser";
-  inherit version;
+  version = "2.9.4";
 
   src = fetchFromGitHub {
     owner = "nodejs";
diff --git a/nixpkgs/pkgs/development/libraries/id3lib/default.nix b/nixpkgs/pkgs/development/libraries/id3lib/default.nix
index 31fc4fd6ba33..141be2092a50 100644
--- a/nixpkgs/pkgs/development/libraries/id3lib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/id3lib/default.nix
@@ -1,7 +1,8 @@
 {lib, stdenv, fetchurl, zlib}:
 
-stdenv.mkDerivation {
-  name = "id3lib-3.8.3";
+stdenv.mkDerivation rec {
+  pname = "id3lib";
+  version = "3.8.3";
 
   patches = [
     ./id3lib-3.8.3-gcc43-1.patch
@@ -11,7 +12,7 @@ stdenv.mkDerivation {
   buildInputs = [ zlib ];
 
   src = fetchurl {
-    url = "mirror://sourceforge/id3lib/id3lib-3.8.3.tar.gz";
+    url = "mirror://sourceforge/id3lib/${pname}-${version}.tar.gz";
     sha256 = "0yfhqwk0w8q2hyv1jib1008jvzmwlpsxvc8qjllhna6p1hycqj97";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/ilixi/default.nix b/nixpkgs/pkgs/development/libraries/ilixi/default.nix
index b6f1c0ac78a5..385baaaf10df 100644
--- a/nixpkgs/pkgs/development/libraries/ilixi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ilixi/default.nix
@@ -1,14 +1,17 @@
-{ lib, stdenv, fetchurl, pkg-config, directfb, libsigcxx, libxml2, fontconfig }:
+{ lib, stdenv, fetchFromGitHub, pkg-config, directfb, libsigcxx, libxml2, fontconfig }:
 
 # TODO: optional deps: baresip, FusionDale, FusionSound, SaWMan, doxygen,
 # Reflex, Wnn, NLS
 
 stdenv.mkDerivation rec {
-  name = "ilixi-1.0.0";
+  pname = "ilixi";
+  version = "1.0.0";
 
-  src = fetchurl {
-    url = "http://www.directfb.org/downloads/Libs/${name}.tar.gz";
-    sha256 = "1kmdmqf68jiv7y6as41bhbgdy70yy2i811a3l6kccbazlzpif34v";
+  src = fetchFromGitHub {
+    owner = "ilixi";
+    repo = "ilixi";
+    rev = version;
+    sha256 = "05h862r9mhis26v8yf967n86qf8y1gdgfzhbqfsr6pjw1k3v3wdr";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/iml/default.nix b/nixpkgs/pkgs/development/libraries/iml/default.nix
index 09ae213eb5d8..474605fe7696 100644
--- a/nixpkgs/pkgs/development/libraries/iml/default.nix
+++ b/nixpkgs/pkgs/development/libraries/iml/default.nix
@@ -19,7 +19,6 @@ stdenv.mkDerivation rec {
     "--with-cblas=-lblas"
   ];
   meta = {
-    inherit version;
     description = "Algorithms for computing exact solutions to dense systems of linear equations over the integers";
     license = lib.licenses.gpl2Plus;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/libraries/imlib/default.nix b/nixpkgs/pkgs/development/libraries/imlib/default.nix
index 1d6fed2281e7..4bc06a97a7b2 100644
--- a/nixpkgs/pkgs/development/libraries/imlib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/imlib/default.nix
@@ -2,10 +2,11 @@
 , libX11, libXext, xorgproto, libjpeg, giflib, libtiff, libpng
 }:
 
-stdenv.mkDerivation {
-  name = "imlib-1.9.15";
+stdenv.mkDerivation rec {
+  pname = "imlib";
+  version = "1.9.15";
   src = fetchurl {
-    url = "http://tarballs.nixos.org/imlib-1.9.15.tar.gz";
+    url = "https://tarballs.nixos.org/imlib-${version}.tar.gz";
     sha256 = "0ggjxyvgp4pxc0b88v40xj9daz90518ydnycw7qax011gxpr12d3";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/jansson/default.nix b/nixpkgs/pkgs/development/libraries/jansson/default.nix
index 85451511d7e4..21a697f1e3ab 100644
--- a/nixpkgs/pkgs/development/libraries/jansson/default.nix
+++ b/nixpkgs/pkgs/development/libraries/jansson/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "jansson-2.13.1";
+  pname = "jansson";
+  version = "2.13.1";
 
   src = fetchurl {
-    url = "http://www.digip.org/jansson/releases/${name}.tar.gz";
+    url = "https://digip.org/jansson/releases/${pname}-${version}.tar.gz";
     sha256 = "0ks7gbs0j8p4dmmi2sq129mxy5gfg0z6220i1jk020mi2zd7gwzl";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/java/commons/daemon/default.nix b/nixpkgs/pkgs/development/libraries/java/commons/daemon/default.nix
new file mode 100644
index 000000000000..f6f909904cf5
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/java/commons/daemon/default.nix
@@ -0,0 +1,25 @@
+{ lib, stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  version = "1.2.4";
+  pname = "commons-daemon";
+
+  src = fetchurl {
+    url    = "mirror://apache/commons/daemon/binaries/commons-daemon-${version}-bin.tar.gz";
+    sha256 = "0bsy4xn3gncgrxj3vkpplvyhx06c1470kycj0j5gwq46ylgady9s";
+  };
+
+  installPhase = ''
+    tar xf ${src}
+    mkdir -p $out/share/java
+    cp *.jar $out/share/java/
+  '';
+
+  meta = {
+    homepage    = "https://commons.apache.org/proper/commons-daemon";
+    description = "Apache Commons Daemon software is a set of utilities and Java support classes for running Java applications as server processes.";
+    maintainers = with lib.maintainers; [ rsynnest ];
+    license     = lib.licenses.asl20;
+    platforms = with lib.platforms; unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/java/rhino/default.nix b/nixpkgs/pkgs/development/libraries/java/rhino/default.nix
index bc50f0206598..e67425208657 100644
--- a/nixpkgs/pkgs/development/libraries/java/rhino/default.nix
+++ b/nixpkgs/pkgs/development/libraries/java/rhino/default.nix
@@ -1,17 +1,14 @@
 { fetchurl, lib, stdenv, unzip, ant, javac, jvm }:
 
 let
-  version = "1.7R2";
-
   xbeans  = fetchurl {
     url = "http://archive.apache.org/dist/xmlbeans/binaries/xmlbeans-2.2.0.zip";
     sha256 = "1pb08d9j81d0wz5wj31idz198iwhqb7mch872n08jh1354rjlqwk";
   };
 in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "rhino";
-  inherit version;
+  version = "1.7R2";
 
   src = fetchurl {
     url = "mirror://mozilla/js/rhino1_7R2.zip";
diff --git a/nixpkgs/pkgs/development/libraries/java/saxon/default.nix b/nixpkgs/pkgs/development/libraries/java/saxon/default.nix
index e6f2fcadbe75..da1e6120da63 100644
--- a/nixpkgs/pkgs/development/libraries/java/saxon/default.nix
+++ b/nixpkgs/pkgs/development/libraries/java/saxon/default.nix
@@ -1,7 +1,7 @@
-{ lib, stdenv, fetchurl, unzip, jre }:
+{ lib, stdenv, fetchurl, unzip, jre, jre8 }:
 
 let
-  common = { pname, version, src, description
+  common = { pname, version, src, description, java ? jre
            , prog ? null, jar ? null, license ? lib.licenses.mpl20 }:
     stdenv.mkDerivation {
       name = "${pname}-${version}";
@@ -45,6 +45,7 @@ in {
     description = "XSLT 1.0 processor";
     # http://saxon.sourceforge.net/saxon6.5.3/conditions.html
     license = lib.licenses.mpl10;
+    java = jre8;
   };
 
   saxonb_8_8 = common {
@@ -56,6 +57,7 @@ in {
       sha256 = "15bzrfyd2f1045rsp9dp4znyhmizh1pm97q8ji2bc0b43q23xsb8";
     };
     description = "Complete and conformant processor of XSLT 2.0, XQuery 1.0, and XPath 2.0";
+    java = jre8;
   };
 
   saxonb_9_1 = common {
diff --git a/nixpkgs/pkgs/development/libraries/jbigkit/default.nix b/nixpkgs/pkgs/development/libraries/jbigkit/default.nix
index ab55e76f29a3..40a46041caa2 100644
--- a/nixpkgs/pkgs/development/libraries/jbigkit/default.nix
+++ b/nixpkgs/pkgs/development/libraries/jbigkit/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "jbigkit-2.1";
+  pname = "jbigkit";
+  version = "2.1";
 
   src = fetchurl {
-    url = "https://www.cl.cam.ac.uk/~mgk25/jbigkit/download/${name}.tar.gz";
+    url = "https://www.cl.cam.ac.uk/~mgk25/jbigkit/download/${pname}-${version}.tar.gz";
     sha256 = "0cnrcdr1dwp7h7m0a56qw09bv08krb37mpf7cml5sjdgpyv0cwfy";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/jsoncpp/default.nix b/nixpkgs/pkgs/development/libraries/jsoncpp/default.nix
index f41bf0f0c80f..6c162c381ac6 100644
--- a/nixpkgs/pkgs/development/libraries/jsoncpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/jsoncpp/default.nix
@@ -48,7 +48,6 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
-    inherit version;
     homepage = "https://github.com/open-source-parsers/jsoncpp";
     description = "A C++ library for interacting with JSON";
     maintainers = with maintainers; [ ttuegel cpages ];
diff --git a/nixpkgs/pkgs/development/libraries/judy/default.nix b/nixpkgs/pkgs/development/libraries/judy/default.nix
index 037225b86e5b..077c4fe90fdb 100644
--- a/nixpkgs/pkgs/development/libraries/judy/default.nix
+++ b/nixpkgs/pkgs/development/libraries/judy/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl}:
 
-stdenv.mkDerivation {
-  name = "judy-1.0.5";
+stdenv.mkDerivation rec {
+  pname = "judy";
+  version = "1.0.5";
 
   src = fetchurl {
-    url = "mirror://sourceforge/judy/Judy-1.0.5.tar.gz";
+    url = "mirror://sourceforge/judy/Judy-${version}.tar.gz";
     sha256 = "1sv3990vsx8hrza1mvq3bhvv9m6ff08y4yz7swn6znszz24l0w6j";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/jxrlib/default.nix b/nixpkgs/pkgs/development/libraries/jxrlib/default.nix
index 3dcec13a18aa..06499e151ba1 100644
--- a/nixpkgs/pkgs/development/libraries/jxrlib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/jxrlib/default.nix
@@ -13,7 +13,10 @@ stdenv.mkDerivation rec {
     sha256 = "0rk3hbh00nw0wgbfbqk1szrlfg3yq7w6ar16napww3nrlm9cj65w";
   };
 
-  postPatch = lib.optionalString stdenv.isDarwin ''
+  postPatch = ''
+    substituteInPlace Makefile \
+      --replace "cc" "$CC"
+  '' + lib.optionalString stdenv.isDarwin ''
     substituteInPlace Makefile \
       --replace '-shared' '-dynamiclib -undefined dynamic_lookup' \
       --replace '.so' '.dylib'
diff --git a/nixpkgs/pkgs/development/libraries/kcolorpicker/default.nix b/nixpkgs/pkgs/development/libraries/kcolorpicker/default.nix
new file mode 100644
index 000000000000..75a07b17a7ee
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/kcolorpicker/default.nix
@@ -0,0 +1,24 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, qtbase }:
+
+mkDerivation rec {
+  pname = "kcolorpicker";
+  version = "0.1.6";
+
+  src = fetchFromGitHub {
+    owner = "ksnip";
+    repo = "kColorPicker";
+    rev = "v${version}";
+    sha256 = "1167xwk75yiz697vddbz3lq42l7ckhyl2cvigy4m05qgg9693ksd";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ qtbase ];
+
+  meta = with lib; {
+    description = "Qt based Color Picker with popup menu";
+    homepage = "https://github.com/ksnip/kColorPicker";
+    license = licenses.lgpl3Plus;
+    maintainers = with maintainers; [ fliegendewurst ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/kde-frameworks/kimageformats.nix b/nixpkgs/pkgs/development/libraries/kde-frameworks/kimageformats.nix
index 4ad3ba741008..00a9ef015f29 100644
--- a/nixpkgs/pkgs/development/libraries/kde-frameworks/kimageformats.nix
+++ b/nixpkgs/pkgs/development/libraries/kde-frameworks/kimageformats.nix
@@ -15,10 +15,19 @@ mkDerivation {
       url = "https://invent.kde.org/frameworks/kimageformats/-/commit/bf3f94da766d66a0470ab744dbe1ced4697b572d.diff";
       sha256 = "18d67l5kj9sv88jdpi061k9rl3adzkx9l51ng7saylrkfddwc3ig";
     })
+    (fetchpatch { # included in kimageformats >= 5.82
+      name = "CVE-2021-36083.patch";
+      url = "https://invent.kde.org/frameworks/kimageformats/-/commit/297ed9a2fe339bfe36916b9fce628c3242e5be0f.diff";
+      sha256 = "16axaljgaar0j5796x1mjps93y92393x8zywh3nzw7rm9w2qxzml";
+    })
   ];
 
   nativeBuildInputs = [ extra-cmake-modules ];
   buildInputs = [ karchive openexr libavif qtbase ];
   outputs = [ "out" ]; # plugins only
   CXXFLAGS = "-I${getDev ilmbase}/include/OpenEXR";
+
+  meta = with lib; {
+    broken = versionOlder qtbase.version "5.14";
+  };
 }
diff --git a/nixpkgs/pkgs/development/libraries/kdsoap/default.nix b/nixpkgs/pkgs/development/libraries/kdsoap/default.nix
index 93aa169737bb..a4dd9cbaa45d 100644
--- a/nixpkgs/pkgs/development/libraries/kdsoap/default.nix
+++ b/nixpkgs/pkgs/development/libraries/kdsoap/default.nix
@@ -3,13 +3,9 @@
 , qtbase
 }:
 
-let
-  version = "1.10.0";
-in
-
-mkDerivation {
+mkDerivation rec {
   pname = "kdsoap";
-  inherit version;
+  version = "1.10.0";
   meta = {
     description = "A Qt-based client-side and server-side SOAP component";
     longDescription = ''
diff --git a/nixpkgs/pkgs/development/libraries/kimageannotator/default.nix b/nixpkgs/pkgs/development/libraries/kimageannotator/default.nix
new file mode 100644
index 000000000000..3188415ea045
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/kimageannotator/default.nix
@@ -0,0 +1,24 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, qtbase, kcolorpicker, qttools }:
+
+mkDerivation rec {
+  pname = "kimageannotator";
+  version = "0.5.1";
+
+  src = fetchFromGitHub {
+    owner = "ksnip";
+    repo = "kImageAnnotator";
+    rev = "v${version}";
+    sha256 = "0hfvrd78lgwd7bccz0fx2pr7g0v3s401y5plra63rxwk55ffkxf8";
+  };
+
+  nativeBuildInputs = [ cmake qttools ];
+  buildInputs = [ qtbase kcolorpicker ];
+
+  meta = with lib; {
+    description = "Tool for annotating images";
+    homepage = "https://github.com/ksnip/kImageAnnotator";
+    license = licenses.lgpl3Plus;
+    maintainers = with maintainers; [ fliegendewurst ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/lcms2/default.nix b/nixpkgs/pkgs/development/libraries/lcms2/default.nix
index 66bdcc03b966..b600a2ca4c3d 100644
--- a/nixpkgs/pkgs/development/libraries/lcms2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lcms2/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libtiff, libjpeg, zlib }:
 
 stdenv.mkDerivation rec {
-  name = "lcms2-2.12";
+  pname = "lcms2";
+  version = "2.12";
 
   src = fetchurl {
-    url = "mirror://sourceforge/lcms/${name}.tar.gz";
+    url = "mirror://sourceforge/lcms/${pname}-${version}.tar.gz";
     sha256 = "sha256-GGY5hehkEARVrD5QdiXEOMNxA1TYXly7fNQEPhH+EPU=";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/leatherman/default.nix b/nixpkgs/pkgs/development/libraries/leatherman/default.nix
index 2d439db5934e..24bec8ec350f 100644
--- a/nixpkgs/pkgs/development/libraries/leatherman/default.nix
+++ b/nixpkgs/pkgs/development/libraries/leatherman/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "leatherman";
-  version = "1.12.5";
+  version = "1.12.6";
 
   src = fetchFromGitHub {
-    sha256 = "sha256-1romJiOIQDlglo/nAJjn1l06dSwDRwG1b49H6js9MB4=";
+    sha256 = "sha256-k5Lt/NCSlBaTGhpR4T3Q4Ih+RR1xKROxz+RNYor7zaQ=";
     rev = version;
     repo = "leatherman";
     owner = "puppetlabs";
diff --git a/nixpkgs/pkgs/development/libraries/lesstif/default.nix b/nixpkgs/pkgs/development/libraries/lesstif/default.nix
index d0ba47186559..dc0c8c0ed741 100644
--- a/nixpkgs/pkgs/development/libraries/lesstif/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lesstif/default.nix
@@ -1,9 +1,10 @@
 {lib, stdenv, fetchurl, xlibsWrapper, libXp, libXau}:
 
 stdenv.mkDerivation rec {
-  name = "lesstif-0.95.2";
+  pname = "lesstif";
+  version = "0.95.2";
   src = fetchurl {
-    url = "mirror://sourceforge/lesstif/${name}.tar.bz2";
+    url = "mirror://sourceforge/lesstif/${pname}-${version}.tar.bz2";
     sha256 = "1qzpxjjf7ri1jzv71mvq5m9g8hfaj5yzwp30rwxlm6n2b24a6jpb";
   };
   buildInputs = [xlibsWrapper];
diff --git a/nixpkgs/pkgs/development/libraries/levmar/default.nix b/nixpkgs/pkgs/development/libraries/levmar/default.nix
index ed945d9e5a08..f1ba199fc8e0 100644
--- a/nixpkgs/pkgs/development/libraries/levmar/default.nix
+++ b/nixpkgs/pkgs/development/libraries/levmar/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "levmar-2.6";
+  pname = "levmar";
+  version = "2.6";
 
   src = fetchurl {
-    url = "https://www.ics.forth.gr/~lourakis/levmar/${name}.tgz";
+    url = "https://www.ics.forth.gr/~lourakis/levmar/${pname}-${version}.tgz";
     sha256 = "1mxsjip9x782z6qa6k5781wjwpvj5aczrn782m9yspa7lhgfzx1v";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libHX/default.nix b/nixpkgs/pkgs/development/libraries/libHX/default.nix
index c059b9d412aa..8761ac1e5ef8 100644
--- a/nixpkgs/pkgs/development/libraries/libHX/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libHX/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, autoconf, automake, libtool }:
 
 stdenv.mkDerivation rec {
-  name = "libHX-3.22";
+  pname = "libHX";
+  version = "3.22";
 
   src = fetchurl {
-    url = "mirror://sourceforge/libhx/libHX/3.22/${name}.tar.xz";
+    url = "mirror://sourceforge/libhx/libHX/${version}/${pname}-${version}.tar.xz";
     sha256 = "18w39j528lyg2026dr11f2xxxphy91cg870nx182wbd8cjlqf86c";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libantlr3c/default.nix b/nixpkgs/pkgs/development/libraries/libantlr3c/default.nix
index 6cbf1d204376..aac75fcc2257 100644
--- a/nixpkgs/pkgs/development/libraries/libantlr3c/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libantlr3c/default.nix
@@ -1,9 +1,10 @@
 {lib, stdenv, fetchurl}:
 
-stdenv.mkDerivation {
-  name = "libantlr3c-3.4";
+stdenv.mkDerivation rec {
+  pname = "libantlr3c";
+  version = "3.4";
   src = fetchurl {
-    url = "https://www.antlr3.org/download/C/libantlr3c-3.4.tar.gz";
+    url = "https://www.antlr3.org/download/C/libantlr3c-${version}.tar.gz";
     sha256 ="0lpbnb4dq4azmsvlhp6khq1gy42kyqyjv8gww74g5lm2y6blm4fa";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libasyncns/default.nix b/nixpkgs/pkgs/development/libraries/libasyncns/default.nix
index 0dc26b686117..c94e1c04e0ba 100644
--- a/nixpkgs/pkgs/development/libraries/libasyncns/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libasyncns/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libasyncns-0.8";
+  pname = "libasyncns";
+  version = "0.8";
 
   src = fetchurl {
-    url = "http://0pointer.de/lennart/projects/libasyncns/${name}.tar.gz";
+    url = "http://0pointer.de/lennart/projects/libasyncns/${pname}-${version}.tar.gz";
     sha256 = "0x5b6lcic4cd7q0bx00x93kvpyzl7n2abbgvqbrlzrfb8vknc6jg";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libaudclient/default.nix b/nixpkgs/pkgs/development/libraries/libaudclient/default.nix
index f90815f4ee9f..9c790172039b 100644
--- a/nixpkgs/pkgs/development/libraries/libaudclient/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libaudclient/default.nix
@@ -1,11 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, glib, dbus-glib }:
 
 stdenv.mkDerivation rec {
-  name = "libaudclient-3.5-rc2";
+  pname = "libaudclient";
   version = "3.5-rc2";
 
   src = fetchurl {
-    url = "https://distfiles.audacious-media-player.org/${name}.tar.bz2";
+    url = "https://distfiles.audacious-media-player.org/${pname}-${version}.tar.bz2";
     sha256 = "0nhpgz0kg8r00z54q5i96pjk7s57krq3fvdypq496c7fmlv9kdap";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libavc1394/default.nix b/nixpkgs/pkgs/development/libraries/libavc1394/default.nix
index d9c10415b67a..2ac90a11f086 100644
--- a/nixpkgs/pkgs/development/libraries/libavc1394/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libavc1394/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, libraw1394 }:
 
 stdenv.mkDerivation rec {
-  name = "libavc1394-0.5.4";
+  pname = "libavc1394";
+  version = "0.5.4";
 
   src = fetchurl {
-    url = "mirror://sourceforge/libavc1394/${name}.tar.gz";
+    url = "mirror://sourceforge/libavc1394/${pname}-${version}.tar.gz";
     sha256 = "0lsv46jdqvdx5hx92v0z2cz3yh6212pz9gk0k3513sbaa04zzcbw";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libb64/default.nix b/nixpkgs/pkgs/development/libraries/libb64/default.nix
index 41d07d58cba2..d1f942a3498b 100644
--- a/nixpkgs/pkgs/development/libraries/libb64/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libb64/default.nix
@@ -19,7 +19,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     description = "ANSI C routines for fast base64 encoding/decoding";
     license = lib.licenses.publicDomain;
     platforms = lib.platforms.unix;
diff --git a/nixpkgs/pkgs/development/libraries/libbladeRF/default.nix b/nixpkgs/pkgs/development/libraries/libbladeRF/default.nix
index f9bac3835d45..e8b550e06c2a 100644
--- a/nixpkgs/pkgs/development/libraries/libbladeRF/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libbladeRF/default.nix
@@ -1,6 +1,5 @@
 { stdenv, lib, fetchFromGitHub, fetchpatch, pkg-config, cmake, git, doxygen, help2man, ncurses, tecla
 , libusb1, udev }:
-
 let
   # fetch submodule
   noos = fetchFromGitHub {
@@ -9,12 +8,9 @@ let
     rev = "0bba46e6f6f75785a65d425ece37d0a04daf6157";
     sha256 = "0is79dhsyp9xmlnfdr1i5s1c22ipjafk9d35jpn5dynpvj86m99c";
   };
-
-  version = "2.2.1";
-
-in stdenv.mkDerivation {
+in stdenv.mkDerivation rec {
   pname = "libbladeRF";
-  inherit version;
+  version = "2.2.1";
 
   src = fetchFromGitHub {
     owner = "Nuand";
diff --git a/nixpkgs/pkgs/development/libraries/libblocksruntime/default.nix b/nixpkgs/pkgs/development/libraries/libblocksruntime/default.nix
index 6ba832fb3cda..0ab380064429 100644
--- a/nixpkgs/pkgs/development/libraries/libblocksruntime/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libblocksruntime/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub, clang }:
 
 stdenv.mkDerivation {
-  name = "blocksruntime-20140624";
+  pname = "blocksruntime";
+  version = "unstable-2014-06-24";
 
   src = fetchFromGitHub {
     owner = "mackyle";
diff --git a/nixpkgs/pkgs/development/libraries/libcddb/default.nix b/nixpkgs/pkgs/development/libraries/libcddb/default.nix
index c1b28e22e103..bf20211ee60a 100644
--- a/nixpkgs/pkgs/development/libraries/libcddb/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libcddb/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libiconv }:
 
 stdenv.mkDerivation rec {
-  name = "libcddb-1.3.2";
+  pname = "libcddb";
+  version = "1.3.2";
 
   src = fetchurl {
-    url = "mirror://sourceforge/libcddb/${name}.tar.bz2";
+    url = "mirror://sourceforge/libcddb/${pname}-${version}.tar.bz2";
     sha256 = "0fr21a7vprdyy1bq6s99m0x420c9jm5fipsd63pqv8qyfkhhxkim";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libcdr/default.nix b/nixpkgs/pkgs/development/libraries/libcdr/default.nix
index b987c3dbb25a..a8208820dff4 100644
--- a/nixpkgs/pkgs/development/libraries/libcdr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libcdr/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, fetchpatch, libwpg, libwpd, lcms, pkg-config, librevenge, icu, boost, cppunit }:
 
 stdenv.mkDerivation rec {
-  name = "libcdr-0.1.6";
+  pname = "libcdr";
+  version = "0.1.6";
 
   src = fetchurl {
-    url = "https://dev-www.libreoffice.org/src/${name}.tar.xz";
+    url = "https://dev-www.libreoffice.org/src/${pname}-${version}.tar.xz";
     sha256 = "0qgqlw6i25zfq1gf7f6r5hrhawlrgh92sg238kjpf2839aq01k81";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libcec/default.nix b/nixpkgs/pkgs/development/libraries/libcec/default.nix
index cb494f69fd11..b0de95923477 100644
--- a/nixpkgs/pkgs/development/libraries/libcec/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libcec/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchurl, cmake, pkg-config, udev, libcec_platform, libraspberrypi ? null }:
 
-let version = "6.0.2"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "libcec";
-  inherit version;
+  version = "6.0.2";
 
   src = fetchurl {
     url = "https://github.com/Pulse-Eight/libcec/archive/libcec-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/libcec/platform.nix b/nixpkgs/pkgs/development/libraries/libcec/platform.nix
index 61eccf1f40ea..45c34b53cd77 100644
--- a/nixpkgs/pkgs/development/libraries/libcec/platform.nix
+++ b/nixpkgs/pkgs/development/libraries/libcec/platform.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchurl, cmake }:
 
-let version = "2.1.0.1"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "p8-platform";
-  inherit version;
+  version = "2.1.0.1";
 
   src = fetchurl {
     url = "https://github.com/Pulse-Eight/platform/archive/p8-platform-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/libclc/default.nix b/nixpkgs/pkgs/development/libraries/libclc/default.nix
index 7be5f8b4000f..fdcc2ae0081b 100644
--- a/nixpkgs/pkgs/development/libraries/libclc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libclc/default.nix
@@ -1,35 +1,32 @@
-{ lib, stdenv, fetchFromGitHub, python3, llvmPackages }:
+{ lib, stdenv, fetchFromGitHub, ninja, cmake, python3, llvmPackages }:
 
 let
   llvm = llvmPackages.llvm;
-  clang = llvmPackages.clang;
   clang-unwrapped = llvmPackages.clang-unwrapped;
 in
 
-stdenv.mkDerivation {
-  name = "libclc-2019-06-09";
+stdenv.mkDerivation rec {
+  pname = "libclc";
+  version = "11.0.1";
 
   src = fetchFromGitHub {
-    owner = "llvm-mirror";
-    repo = "libclc";
-    rev = "9f6204ec04a8cadb6bef57caa71e3161c4f398f2";
-    sha256 = "03l9frx3iw3qdsb9rrscgzdwm6872gv6mkssvn027ndf9y321xk7";
+    owner = "llvm";
+    repo = "llvm-project";
+    rev = "llvmorg-${version}";
+    sha256 = "0bxh43hp1vl4axl3s9n2nb2ii8x1cbq98xz9c996f8rl5jy84ags";
   };
+  sourceRoot = "source/libclc";
 
-  nativeBuildInputs = [ python3 llvm ];
-
-  strictDeps = true;
-
+  # cmake expects all required binaries to be in the same place, so it will not be able to find clang without the patch
   postPatch = ''
-    sed -i 's,llvm_clang =.*,llvm_clang = "${clang-unwrapped}/bin/clang",' configure.py
-    sed -i 's,cxx_compiler =.*,cxx_compiler = "${clang}/bin/clang++",' configure.py
+    substituteInPlace CMakeLists.txt \
+      --replace 'find_program( LLVM_CLANG clang PATHS ''${LLVM_BINDIR} NO_DEFAULT_PATH )' \
+                'find_program( LLVM_CLANG clang PATHS "${clang-unwrapped}/bin" NO_DEFAULT_PATH )'
   '';
 
-  configurePhase = ''
-    ${python3.interpreter} ./configure.py --prefix=$out
-  '';
-
-  enableParallelBuilding = true;
+  nativeBuildInputs = [ cmake ninja python3 ];
+  buildInputs = [ llvm clang-unwrapped ];
+  strictDeps = true;
 
   meta = with lib; {
     homepage = "http://libclc.llvm.org/";
diff --git a/nixpkgs/pkgs/development/libraries/libconfig/default.nix b/nixpkgs/pkgs/development/libraries/libconfig/default.nix
index 10d688d89b6c..d94a0e1d78bd 100644
--- a/nixpkgs/pkgs/development/libraries/libconfig/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libconfig/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  configureFlags = lib.optional stdenv.targetPlatform.isWindows "--disable-examples";
+  configureFlags = lib.optional (stdenv.targetPlatform.isWindows || stdenv.hostPlatform.isStatic) "--disable-examples";
 
   meta = with lib; {
     homepage = "http://www.hyperrealm.com/libconfig";
diff --git a/nixpkgs/pkgs/development/libraries/libcprime/default.nix b/nixpkgs/pkgs/development/libraries/libcprime/default.nix
new file mode 100644
index 000000000000..4db6ac1b46b8
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libcprime/default.nix
@@ -0,0 +1,40 @@
+{ mkDerivation
+, lib
+, fetchFromGitLab
+, libnotify
+, cmake
+, ninja
+, qtbase
+, qtconnectivity
+}:
+
+mkDerivation rec {
+  pname = "libcprime";
+  version = "4.2.2";
+
+  src = fetchFromGitLab {
+    owner = "cubocore";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-RywvFATA/+fDP/TR5QRWaJlDgy3EID//iVmrJcj3GXI=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    ninja
+  ];
+
+  buildInputs = [
+    qtbase
+    qtconnectivity
+    libnotify
+  ];
+
+  meta = with lib; {
+    description = "A library for bookmarking, saving recent activites, managing settings of C-Suite";
+    homepage = "https://gitlab.com/cubocore/coreapps/libcprime";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ dan4ik605743 ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libcredis/default.nix b/nixpkgs/pkgs/development/libraries/libcredis/default.nix
index 247d341bce97..e0224d865d55 100644
--- a/nixpkgs/pkgs/development/libraries/libcredis/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libcredis/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
-stdenv.mkDerivation {
-  name = "libcredis-0.2.3";
+stdenv.mkDerivation rec {
+  pname = "libcredis";
+  version = "0.2.3";
 
   src = fetchurl {
-    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/credis/credis-0.2.3.tar.gz";
+    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/credis/credis-${version}.tar.gz";
     sha256 = "1l3hlw9rrc11qggbg9a2303p3bhxxx2vqkmlk8avsrbqw15r1ayr";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libdaemon/default.nix b/nixpkgs/pkgs/development/libraries/libdaemon/default.nix
index eeb034ed0678..51df45809789 100644
--- a/nixpkgs/pkgs/development/libraries/libdaemon/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libdaemon/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "libdaemon-0.14";
+  pname = "libdaemon";
+  version = "0.14";
 
   src = fetchurl {
-    url = "${meta.homepage}/${name}.tar.gz";
+    url = "http://0pointer.de/lennart/projects/libdaemon/${pname}-${version}.tar.gz";
     sha256 = "0d5qlq5ab95wh1xc87rqrh1vx6i8lddka1w3f1zcqvcqdxgyn8zx";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libdbi/default.nix b/nixpkgs/pkgs/development/libraries/libdbi/default.nix
index 48812f091bea..ffbc3f671007 100644
--- a/nixpkgs/pkgs/development/libraries/libdbi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libdbi/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libdbi-0.9.0";
+  pname = "libdbi";
+  version = "0.9.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/libdbi/${name}.tar.gz";
+    url = "mirror://sourceforge/libdbi/${pname}-${version}.tar.gz";
     sha256 = "00s5ra7hdlq25iv23nwf4h1v3kmbiyzx0v9bhggjiii4lpf6ryys";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libdivsufsort/default.nix b/nixpkgs/pkgs/development/libraries/libdivsufsort/default.nix
index 0f332f8ac74c..91b320826606 100644
--- a/nixpkgs/pkgs/development/libraries/libdivsufsort/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libdivsufsort/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl}:
 
-stdenv.mkDerivation {
-  name = "libdivsufsort-2.0.1";
+stdenv.mkDerivation rec {
+  pname = "libdivsufsort";
+  version = "2.0.1";
 
   src = fetchurl {
-    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/libdivsufsort/libdivsufsort-2.0.1.tar.bz2";
+    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/libdivsufsort/libdivsufsort-${version}.tar.bz2";
     sha256 = "1g0q40vb2k689bpasa914yi8sjsmih04017mw20zaqqpxa32rh2m";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libdrm/default.nix b/nixpkgs/pkgs/development/libraries/libdrm/default.nix
index ca90750b8c24..c5bf352ff578 100644
--- a/nixpkgs/pkgs/development/libraries/libdrm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libdrm/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libdrm";
-  version = "2.4.106";
+  version = "2.4.107";
 
   src = fetchurl {
     url = "https://dri.freedesktop.org/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "1m3vwpabjg3az84vmyxi96jyd7rrqm6qkhk1gq41w5wv89aarn4j";
+    sha256 = "127qf1rzhaf13vdd75a58v5q34617hvangjlfnlkcdh37gqcwm65";
   };
 
   outputs = [ "out" "dev" "bin" ];
diff --git a/nixpkgs/pkgs/development/libraries/libdynd/default.nix b/nixpkgs/pkgs/development/libraries/libdynd/default.nix
index 4f1fd3904d98..b418279e477b 100644
--- a/nixpkgs/pkgs/development/libraries/libdynd/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libdynd/default.nix
@@ -1,9 +1,8 @@
 { lib, stdenv, fetchFromGitHub, cmake }:
 
-let version = "0.7.2"; in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "libdynd";
-  inherit version;
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "libdynd";
diff --git a/nixpkgs/pkgs/development/libraries/libelf/default.nix b/nixpkgs/pkgs/development/libraries/libelf/default.nix
index 2b8cd51ba5f6..be328c54c088 100644
--- a/nixpkgs/pkgs/development/libraries/libelf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libelf/default.nix
@@ -8,10 +8,11 @@
 # files.
 
 stdenv.mkDerivation rec {
-  name = "libelf-0.8.13";
+  pname = "libelf";
+  version = "0.8.13";
 
   src = fetchurl {
-    url = "https://fossies.org/linux/misc/old/${name}.tar.gz";
+    url = "https://fossies.org/linux/misc/old/${pname}-${version}.tar.gz";
     sha256 = "0vf7s9dwk2xkmhb79aigqm0x0yfbw1j0b9ksm51207qwr179n6jr";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libestr/default.nix b/nixpkgs/pkgs/development/libraries/libestr/default.nix
index 8699e83d0fd0..5630047eed7f 100644
--- a/nixpkgs/pkgs/development/libraries/libestr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libestr/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libestr-0.1.11";
+  pname = "libestr";
+  version = "0.1.11";
 
   src = fetchurl {
-    url = "http://libestr.adiscon.com/files/download/${name}.tar.gz";
+    url = "http://libestr.adiscon.com/files/download/${pname}-${version}.tar.gz";
     sha256 = "0910ifzcs8kpd3srrr4fvbacgh2zrc6yn7i4rwfj6jpzhlkjnqs6";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libewf/default.nix b/nixpkgs/pkgs/development/libraries/libewf/default.nix
index 01c10dab60a0..5d86dd12246b 100644
--- a/nixpkgs/pkgs/development/libraries/libewf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libewf/default.nix
@@ -18,6 +18,5 @@ stdenv.mkDerivation rec {
     license = lib.licenses.lgpl3;
     maintainers = [ lib.maintainers.raskin ] ;
     platforms = lib.platforms.unix;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libexttextcat/default.nix b/nixpkgs/pkgs/development/libraries/libexttextcat/default.nix
index 8e5cc8685da9..8efdb1bee02d 100644
--- a/nixpkgs/pkgs/development/libraries/libexttextcat/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libexttextcat/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libexttextcat-3.4.5";
+  pname = "libexttextcat";
+  version = "3.4.5";
 
   src = fetchurl {
-    url = "https://dev-www.libreoffice.org/src/libexttextcat/${name}.tar.xz";
+    url = "https://dev-www.libreoffice.org/src/libexttextcat/${pname}-${version}.tar.xz";
     sha256 = "1j6sjwkyhqvsgyw938bxxfwkzzi1mahk66g5342lv6j89jfvrz8k";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libf2c/default.nix b/nixpkgs/pkgs/development/libraries/libf2c/default.nix
index ce1c35c7ec60..5a5d8b93057a 100644
--- a/nixpkgs/pkgs/development/libraries/libf2c/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libf2c/default.nix
@@ -1,7 +1,8 @@
 {lib, stdenv, fetchurl, unzip}:
 
 stdenv.mkDerivation rec {
-  name = "libf2c-20160102";
+  pname = "libf2c";
+  version = "20160102";
 
   src = fetchurl {
     url = "http://www.netlib.org/f2c/libf2c.zip";
diff --git a/nixpkgs/pkgs/development/libraries/libffi/default.nix b/nixpkgs/pkgs/development/libraries/libffi/default.nix
index 29b76e34d652..48611dffb069 100644
--- a/nixpkgs/pkgs/development/libraries/libffi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libffi/default.nix
@@ -9,10 +9,11 @@
 # files.
 
 stdenv.mkDerivation rec {
-  name = "libffi-3.3";
+  pname = "libffi";
+  version = "3.3";
 
   src = fetchurl {
-    url = "https://sourceware.org/pub/libffi/${name}.tar.gz";
+    url = "https://sourceware.org/pub/libffi/${pname}-${version}.tar.gz";
     sha256 = "0mi0cpf8aa40ljjmzxb7im6dbj45bb0kllcd09xgmp834y9agyvj";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libfishsound/default.nix b/nixpkgs/pkgs/development/libraries/libfishsound/default.nix
index 72dc29867115..bf578b969eff 100644
--- a/nixpkgs/pkgs/development/libraries/libfishsound/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libfishsound/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libvorbis, speex, flac, pkg-config }:
 
 stdenv.mkDerivation rec {
-  name = "libfishsound-1.0.0";
+  pname = "libfishsound";
+  version = "1.0.0";
 
   src = fetchurl {
-    url = "http://downloads.xiph.org/releases/libfishsound/${name}.tar.gz";
+    url = "https://downloads.xiph.org/releases/libfishsound/${pname}-${version}.tar.gz";
     sha256 = "1iz7mn6hw2wg8ljaw74f4g2zdj68ib88x4vjxxg3gjgc5z75f2rf";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libfpx/default.nix b/nixpkgs/pkgs/development/libraries/libfpx/default.nix
index 2576d426af55..589c08399a70 100644
--- a/nixpkgs/pkgs/development/libraries/libfpx/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libfpx/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, fetchpatch }:
 
 stdenv.mkDerivation rec {
-  name = "libfpx-1.3.1-7";
+  pname = "libfpx";
+  version = "1.3.1-7";
 
   src = fetchurl {
-    url = "mirror://imagemagick/delegates/${name}.tar.xz";
+    url = "mirror://imagemagick/delegates/${pname}-${version}.tar.xz";
     sha256 = "1s28mwb06w6dj0zl6ashpj8m1qiyadawzl7cvbw7dmj1w39ipghh";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libftdi/default.nix b/nixpkgs/pkgs/development/libraries/libftdi/default.nix
index 0326b9c4f64f..68801883df9d 100644
--- a/nixpkgs/pkgs/development/libraries/libftdi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libftdi/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl, libusb-compat-0_1}:
 
 stdenv.mkDerivation rec {
-  name = "libftdi-0.20";
+  pname = "libftdi";
+  version = "0.20";
 
   src = fetchurl {
-    url = "https://www.intra2net.com/en/developer/libftdi/download/${name}.tar.gz";
+    url = "https://www.intra2net.com/en/developer/libftdi/download/${pname}-${version}.tar.gz";
     sha256 = "13l39f6k6gff30hsgh0wa2z422g9pyl91rh8a8zz6f34k2sxaxii";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libgnt/default.nix b/nixpkgs/pkgs/development/libraries/libgnt/default.nix
new file mode 100644
index 000000000000..33ce7fbaa113
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libgnt/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, lib, fetchurl, meson, ninja, pkg-config
+, gtk-doc, docbook-xsl-nons
+, glib, ncurses, libxml2
+, buildDocs ? true
+}:
+stdenv.mkDerivation rec {
+  pname = "libgnt";
+  version = "2.14.1";
+
+  outputs = [ "out" "dev" ] ++ lib.optional buildDocs "devdoc";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/pidgin/${pname}-${version}.tar.xz";
+    sha256 = "1n2bxg0ignn53c08cp69pj4sdg53kwlqn23rincyjmpr327fdhsy";
+  };
+
+  nativeBuildInputs = [ meson ninja pkg-config ]
+    ++ lib.optionals buildDocs [ gtk-doc docbook-xsl-nons ];
+
+  buildInputs = [ glib ncurses libxml2 ];
+
+  postPatch = ''
+    substituteInPlace meson.build --replace \
+      "ncurses_sys_prefix = '/usr'" \
+      "ncurses_sys_prefix = '${lib.getDev ncurses}'"
+  '' + lib.optionalString (!buildDocs) ''
+    sed "/^subdir('doc')$/d" -i meson.build
+  '';
+
+  meta = with lib; {
+    description = "An ncurses toolkit for creating text-mode graphical user interfaces";
+    homepage = "https://keep.imfreedom.org/libgnt/libgnt/";
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
+    maintainers = with lib.maintainers; [ ony ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libgssglue/default.nix b/nixpkgs/pkgs/development/libraries/libgssglue/default.nix
index d4bf3ff1c2bb..0d01b05e223b 100644
--- a/nixpkgs/pkgs/development/libraries/libgssglue/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgssglue/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libkrb5 }:
 
 stdenv.mkDerivation rec {
-  name = "libgssglue-0.4";
+  pname = "libgssglue";
+  version = "0.4";
 
   src = fetchurl {
-    url = "http://www.citi.umich.edu/projects/nfsv4/linux/libgssglue/${name}.tar.gz";
+    url = "http://www.citi.umich.edu/projects/nfsv4/linux/libgssglue/${pname}-${version}.tar.gz";
     sha256 = "0fh475kxzlabwz30wz3bf7i8kfqiqzhfahayx3jj79rba1sily9z";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libgxps/default.nix b/nixpkgs/pkgs/development/libraries/libgxps/default.nix
index fc871f174eb5..df05754da589 100644
--- a/nixpkgs/pkgs/development/libraries/libgxps/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgxps/default.nix
@@ -17,6 +17,8 @@ stdenv.mkDerivation rec {
 
   mesonFlags = [
     "-Denable-test=false"
+  ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
+    "-Ddisable-introspection=true"
   ];
 
   passthru = {
diff --git a/nixpkgs/pkgs/development/libraries/libhangul/default.nix b/nixpkgs/pkgs/development/libraries/libhangul/default.nix
index eea513a137cf..295ed9bf3054 100644
--- a/nixpkgs/pkgs/development/libraries/libhangul/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libhangul/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
-stdenv.mkDerivation {
-  name = "libhangul-0.1.0";
+stdenv.mkDerivation rec {
+  pname = "libhangul";
+  version = "0.1.0";
 
   src = fetchurl {
-    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/libhangul/libhangul-0.1.0.tar.gz";
+    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/libhangul/libhangul-${version}.tar.gz";
     sha256 = "0ni9b0v70wkm0116na7ghv03pgxsfpfszhgyj3hld3bxamfal1ar";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libibmad/default.nix b/nixpkgs/pkgs/development/libraries/libibmad/default.nix
index b6df338f122e..9088d9022069 100644
--- a/nixpkgs/pkgs/development/libraries/libibmad/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libibmad/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libibumad }:
 
 stdenv.mkDerivation rec {
-  name = "libibmad-1.3.13";
+  pname = "libibmad";
+  version = "1.3.13";
 
   src = fetchurl {
-    url = "https://www.openfabrics.org/downloads/management/${name}.tar.gz";
+    url = "https://www.openfabrics.org/downloads/management/${pname}-${version}.tar.gz";
     sha256 = "02sj8k2jpcbiq8s0l2lqk4vwji2dbb2lc730cv1yzv0zr0hxgk8p";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libibumad/default.nix b/nixpkgs/pkgs/development/libraries/libibumad/default.nix
index 6de97ad77cd7..b9ebef7d4ccb 100644
--- a/nixpkgs/pkgs/development/libraries/libibumad/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libibumad/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libibumad-1.3.10.2";
+  pname = "libibumad";
+  version = "1.3.10.2";
 
   src = fetchurl {
-    url = "https://www.openfabrics.org/downloads/management/${name}.tar.gz";
+    url = "https://www.openfabrics.org/downloads/management/${pname}-${version}.tar.gz";
     sha256 = "0bkygb3lbpaj6s4vsyixybrrkcnilbijv4ga5p1xdwyr3gip83sh";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libiodbc/default.nix b/nixpkgs/pkgs/development/libraries/libiodbc/default.nix
index 29d4c3432ebd..a15b00a66ef7 100644
--- a/nixpkgs/pkgs/development/libraries/libiodbc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libiodbc/default.nix
@@ -2,10 +2,11 @@
 , useGTK ? config.libiodbc.gtk or false }:
 
 stdenv.mkDerivation rec {
-  name = "libiodbc-3.52.12";
+  pname = "libiodbc";
+  version = "3.52.12";
 
   src = fetchurl {
-    url = "mirror://sourceforge/iodbc/${name}.tar.gz";
+    url = "mirror://sourceforge/iodbc/${pname}-${version}.tar.gz";
     sha256 = "0qpvklgr1lcn5g8xbz7fbc9rldqf9r8s6xybhqj20m4sglxgziai";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libiptcdata/default.nix b/nixpkgs/pkgs/development/libraries/libiptcdata/default.nix
index 140faab43b1a..540d6d01a411 100644
--- a/nixpkgs/pkgs/development/libraries/libiptcdata/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libiptcdata/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "libiptcdata-1.0.4";
+  pname = "libiptcdata";
+  version = "1.0.4";
 
   src = fetchurl {
-    url = "mirror://sourceforge/libiptcdata/${name}.tar.gz";
+    url = "mirror://sourceforge/libiptcdata/${pname}-${version}.tar.gz";
     sha256 = "03pfvkmmx762iydq0q207x2028d275pbdysfsgpmrr0ywy63pxkr";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libixp-hg/default.nix b/nixpkgs/pkgs/development/libraries/libixp-hg/default.nix
index 77df340a55f8..0aeef61dae9e 100644
--- a/nixpkgs/pkgs/development/libraries/libixp-hg/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libixp-hg/default.nix
@@ -22,7 +22,6 @@ stdenv.mkDerivation rec {
     description = "Portable, simple C-language 9P client and server libary";
     maintainers = with lib.maintainers; [ kovirobi ];
     license = lib.licenses.mit;
-    inherit version;
     platforms = with lib.platforms; unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libjson/default.nix b/nixpkgs/pkgs/development/libraries/libjson/default.nix
index 16a69f6da653..9106c1974716 100644
--- a/nixpkgs/pkgs/development/libraries/libjson/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libjson/default.nix
@@ -1,9 +1,8 @@
 { lib, stdenv, fetchurl, unzip }:
-let
-  version = "7.6.1";
-in stdenv.mkDerivation {
+
+stdenv.mkDerivation rec {
   pname = "libjson";
-  inherit version;
+  version = "7.6.1";
   src = fetchurl {
     url = "mirror://sourceforge/libjson/libjson_${version}.zip";
     sha256 = "0xkk5qc7kjcdwz9l04kmiz1nhmi7iszl3k165phf53h3a4wpl9h7";
diff --git a/nixpkgs/pkgs/development/libraries/libkate/default.nix b/nixpkgs/pkgs/development/libraries/libkate/default.nix
index 2135cc37d91e..d2ef623bf157 100644
--- a/nixpkgs/pkgs/development/libraries/libkate/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libkate/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libogg, libpng }:
 
 stdenv.mkDerivation rec {
-  name = "libkate-0.4.1";
+  pname = "libkate";
+  version = "0.4.1";
 
   src = fetchurl {
-    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/libkate/${name}.tar.gz";
+    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/libkate/${pname}-${version}.tar.gz";
     sha256 = "0s3vr2nxfxlf1k75iqpp4l78yf4gil3f0v778kvlngbchvaq23n4";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libkeyfinder/default.nix b/nixpkgs/pkgs/development/libraries/libkeyfinder/default.nix
index 324e675f33bf..04137eb02e7b 100644
--- a/nixpkgs/pkgs/development/libraries/libkeyfinder/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libkeyfinder/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libkeyfinder";
-  version = "2.2.4";
+  version = "2.2.5";
 
   src = fetchFromGitHub {
     owner = "mixxxdj";
     repo = "libkeyfinder";
     rev = "v${version}";
-    sha256 = "005qq81xfzi1iifvpgkqpizxcrfisafq2r0cjp4fxqh1ih7bfimv";
+    sha256 = "sha256-4jbnsKMGJKUIRfRPymGGgqPgwPyLInc6rLvCXnOcQ5g=";
   };
 
   # needed for finding libkeyfinder.so to link it into keyfinder-tests executable
diff --git a/nixpkgs/pkgs/development/libraries/liblastfmSF/default.nix b/nixpkgs/pkgs/development/libraries/liblastfmSF/default.nix
index fe3038c3249a..74d32a6cc748 100644
--- a/nixpkgs/pkgs/development/libraries/liblastfmSF/default.nix
+++ b/nixpkgs/pkgs/development/libraries/liblastfmSF/default.nix
@@ -1,14 +1,15 @@
 { lib, stdenv, fetchurl, pkg-config, curl, openssl }:
 
-stdenv.mkDerivation {
-  name = "liblastfm-SF-0.5";
+stdenv.mkDerivation rec {
+  pname = "liblastfm-SF";
+  version = "0.5";
 
   nativeBuildInputs = [ pkg-config ];
 
   propagatedBuildInputs = [ curl openssl ];
 
   src = fetchurl {
-    url = "mirror://sourceforge/liblastfm/libclastfm-0.5.tar.gz";
+    url = "mirror://sourceforge/liblastfm/libclastfm-${version}.tar.gz";
     sha256 = "0hpfflvfx6r4vvsbvdc564gkby8kr07p8ma7hgpxiy2pnlbpian9";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/liblo/default.nix b/nixpkgs/pkgs/development/libraries/liblo/default.nix
index 5f5b23cdc3a1..1a9ce7c331a0 100644
--- a/nixpkgs/pkgs/development/libraries/liblo/default.nix
+++ b/nixpkgs/pkgs/development/libraries/liblo/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "liblo-0.31";
+  pname = "liblo";
+  version = "0.31";
 
   src = fetchurl {
-    url = "mirror://sourceforge/liblo/liblo/0.31/${name}.tar.gz";
+    url = "mirror://sourceforge/liblo/liblo/${version}/${pname}-${version}.tar.gz";
     sha256 = "0l67rkdhfa8cffa0nynql3lh2xlbn1454h6qxhjddp1029p48krb";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/liblqr-1/default.nix b/nixpkgs/pkgs/development/libraries/liblqr-1/default.nix
index b871dbdb19d2..aa6cd0fd57d8 100644
--- a/nixpkgs/pkgs/development/libraries/liblqr-1/default.nix
+++ b/nixpkgs/pkgs/development/libraries/liblqr-1/default.nix
@@ -1,11 +1,14 @@
-{ lib, stdenv, fetchurl, pkg-config, glib }:
+{ lib, stdenv, fetchFromGitHub, pkg-config, glib }:
 
 stdenv.mkDerivation rec {
-  name = "liblqr-1-0.4.2";
+  pname = "liblqr-1";
+  version = "0.4.2";
 
-  src = fetchurl {
-    url = "${meta.homepage}/local--files/en:download-page/${name}.tar.bz2";
-    sha256 = "0dzikxzjz5zmy3vnydh90aqk23q0qm8ykx6plz6p4z90zlp84fhp";
+  src = fetchFromGitHub {
+    owner = "carlobaldassi";
+    repo = "liblqr";
+    rev = "v${version}";
+    sha256 = "10mrl5k3l2hxjhz4w93n50xwywp6y890rw2vsjcgai8627x5f1df";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/libltc/default.nix b/nixpkgs/pkgs/development/libraries/libltc/default.nix
index 2391d281d46a..a7d52fe17cf9 100644
--- a/nixpkgs/pkgs/development/libraries/libltc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libltc/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl}:
 
-stdenv.mkDerivation {
-  name = "libltc-1.3.1";
+stdenv.mkDerivation rec {
+  pname = "libltc";
+  version = "1.3.1";
 
   src = fetchurl {
-    url = "https://github.com/x42/libltc/releases/download/v1.3.1/libltc-1.3.1.tar.gz";
+    url = "https://github.com/x42/libltc/releases/download/v${version}/libltc-${version}.tar.gz";
     sha256 = "173h9dgmain3nyrwk6q2d7yl4fnh4vacag4s2p01n5b7nyrkxrjh";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libmcrypt/default.nix b/nixpkgs/pkgs/development/libraries/libmcrypt/default.nix
index 44c55cb4682b..50bbf8383e61 100644
--- a/nixpkgs/pkgs/development/libraries/libmcrypt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmcrypt/default.nix
@@ -2,11 +2,12 @@
 
 with lib;
 
-stdenv.mkDerivation {
-  name = "libmcrypt-2.5.8";
+stdenv.mkDerivation rec {
+  pname = "libmcrypt";
+  version = "2.5.8";
 
   src = fetchurl {
-    url = "mirror://sourceforge/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz";
+    url = "mirror://sourceforge/mcrypt/Libmcrypt/${version}/libmcrypt-${version}.tar.gz";
     sha256 = "0gipgb939vy9m66d3k8il98rvvwczyaw2ixr8yn6icds9c3nrsz4";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libmemcached/default.nix b/nixpkgs/pkgs/development/libraries/libmemcached/default.nix
index 0ee0701d9290..099dab139c4f 100644
--- a/nixpkgs/pkgs/development/libraries/libmemcached/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmemcached/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, fetchpatch, cyrus_sasl, libevent }:
 
-stdenv.mkDerivation {
-  name = "libmemcached-1.0.18";
+stdenv.mkDerivation rec {
+  pname = "libmemcached";
+  version = "1.0.18";
 
   src = fetchurl {
-    url = "https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz";
+    url = "https://launchpad.net/libmemcached/${lib.versions.majorMinor version}/${version}/+download/libmemcached-${version}.tar.gz";
     sha256 = "10jzi14j32lpq0if0p9vygcl2c1352hwbywzvr9qzq7x6aq0nb72";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libmng/default.nix b/nixpkgs/pkgs/development/libraries/libmng/default.nix
index f1704a527b44..15a68bdce589 100644
--- a/nixpkgs/pkgs/development/libraries/libmng/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmng/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, zlib, libpng, libjpeg, lcms2 }:
 
 stdenv.mkDerivation rec {
-  name = "libmng-2.0.3";
+  pname = "libmng";
+  version = "2.0.3";
 
   src = fetchurl {
-    url = "mirror://sourceforge/libmng/${name}.tar.xz";
+    url = "mirror://sourceforge/libmng/${pname}-${version}.tar.xz";
     sha256 = "1lvxnpds0vcf0lil6ia2036ghqlbl740c4d2sz0q5g6l93fjyija";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libmnl/default.nix b/nixpkgs/pkgs/development/libraries/libmnl/default.nix
index 4e99258a3e80..a8ec4c5f3b95 100644
--- a/nixpkgs/pkgs/development/libraries/libmnl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmnl/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libmnl-1.0.4";
+  pname = "libmnl";
+  version = "1.0.4";
 
   src = fetchurl {
-    url = "https://netfilter.org/projects/libmnl/files/${name}.tar.bz2";
+    url = "https://netfilter.org/projects/libmnl/files/${pname}-${version}.tar.bz2";
     sha256 = "108zampspaalv44zn0ar9h386dlfixpd149bnxa5hsi8kxlqj7qp";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libmodplug/default.nix b/nixpkgs/pkgs/development/libraries/libmodplug/default.nix
index 790674f1649e..3f4f89c0a25c 100644
--- a/nixpkgs/pkgs/development/libraries/libmodplug/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmodplug/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchurl, file }:
 
-let
-  version = "0.8.9.0";
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "libmodplug";
-  inherit version;
+  version = "0.8.9.0";
 
   preConfigure = ''
      substituteInPlace configure \
diff --git a/nixpkgs/pkgs/development/libraries/libmodulemd/default.nix b/nixpkgs/pkgs/development/libraries/libmodulemd/default.nix
index edadff523f3a..79f590af5ffd 100644
--- a/nixpkgs/pkgs/development/libraries/libmodulemd/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmodulemd/default.nix
@@ -18,7 +18,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libmodulemd";
-  version = "2.12.1";
+  version = "2.13.0";
 
   outputs = [ "bin" "out" "dev" "devdoc" "man" "py" ];
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     owner = "fedora-modularity";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "sha256-Relj14uG+dp9r5xWEbw/eAmlUJJ/kRwlPclcWGQxoJg=";
+    sha256 = "sha256-hg/it3pHUnEYsmKcLzQKcZNthHZZwdXBjzTlOS1Losk=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/libmongo-client/default.nix b/nixpkgs/pkgs/development/libraries/libmongo-client/default.nix
index f81f63133384..a6a20141cc62 100644
--- a/nixpkgs/pkgs/development/libraries/libmongo-client/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmongo-client/default.nix
@@ -1,12 +1,13 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, glib }:
 
 stdenv.mkDerivation rec {
-  name = "libmongo-client-0.1.8";
+  pname = "libmongo-client";
+  version = "0.1.8";
 
   src = fetchFromGitHub {
     owner = "algernon";
     repo = "libmongo-client";
-    rev = name;
+    rev = "${pname}-${version}";
     sha256 = "1cjx06i3gd9zkyvwm2ysjrf0hkhr7bjg3c27s7n0y31j10igfjp0";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libmp3splt/default.nix b/nixpkgs/pkgs/development/libraries/libmp3splt/default.nix
index 58da7560e137..0e813375b9a2 100644
--- a/nixpkgs/pkgs/development/libraries/libmp3splt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmp3splt/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libtool, libmad, libid3tag }:
 
 stdenv.mkDerivation rec {
-  name = "libmp3splt-0.9.2";
+  pname = "libmp3splt";
+  version = "0.9.2";
 
   src = fetchurl {
-    url = "mirror://sourceforge/mp3splt/${name}.tar.gz";
+    url = "mirror://sourceforge/mp3splt/${pname}-${version}.tar.gz";
     sha256 = "1p1mn2hsmj5cp40fnc8g1yfvk72p8pjxi866gjdkgjsqrr7xdvih";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libmpc/default.nix b/nixpkgs/pkgs/development/libraries/libmpc/default.nix
index bd28f490ecb7..2dede1f976d2 100644
--- a/nixpkgs/pkgs/development/libraries/libmpc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmpc/default.nix
@@ -7,12 +7,9 @@
 # cgit) that are needed here should be included directly in Nixpkgs as
 # files.
 
-let
-  version = "1.2.1";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "libmpc";
-  inherit version; # to avoid clash with the MPD client
+  version = "1.2.1"; # to avoid clash with the MPD client
 
   src = fetchurl {
     url = "mirror://gnu/mpc/mpc-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/libmpcdec/default.nix b/nixpkgs/pkgs/development/libraries/libmpcdec/default.nix
index b42d9a3d1e43..753687221245 100644
--- a/nixpkgs/pkgs/development/libraries/libmpcdec/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmpcdec/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
-stdenv.mkDerivation {
-  name = "libmpcdec-1.2.6";
+stdenv.mkDerivation rec {
+  pname = "libmpcdec";
+  version = "1.2.6";
 
   src = fetchurl {
-    url = "https://files.musepack.net/source/libmpcdec-1.2.6.tar.bz2";
+    url = "https://files.musepack.net/source/libmpcdec-${version}.tar.bz2";
     sha256 = "1a0jdyga1zfi4wgkg3905y6inghy3s4xfs5m4x7pal08m0llkmab";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libmrss/default.nix b/nixpkgs/pkgs/development/libraries/libmrss/default.nix
index df3460970d17..43d829b98342 100644
--- a/nixpkgs/pkgs/development/libraries/libmrss/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmrss/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl, curl, libnxml, pkg-config}:
 
-stdenv.mkDerivation {
-  name = "libmrss-0.19.2";
+stdenv.mkDerivation rec {
+  pname = "libmrss";
+  version = "0.19.2";
 
   src = fetchurl {
-    url = "https://www.autistici.org/bakunin/libmrss/libmrss-0.19.2.tar.gz";
+    url = "https://www.autistici.org/bakunin/libmrss/libmrss-${version}.tar.gz";
     sha256 = "02r1bgj8qlkn63xqfi5yq8y7wrilxcnkycaag8qskhg5ranic507";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libmusicbrainz/default.nix b/nixpkgs/pkgs/development/libraries/libmusicbrainz/default.nix
index ab67d544a1df..e1ad8305188e 100644
--- a/nixpkgs/pkgs/development/libraries/libmusicbrainz/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmusicbrainz/default.nix
@@ -1,13 +1,14 @@
 { lib, stdenv, fetchurl, cmake, neon, libdiscid }:
 
 stdenv.mkDerivation rec {
-  name = "libmusicbrainz-3.0.3";
+  pname = "libmusicbrainz";
+  version = "3.0.3";
 
   nativeBuildInputs = [ cmake ];
   buildInputs = [ neon libdiscid ];
 
   src = fetchurl {
-    url = "ftp://ftp.musicbrainz.org/pub/musicbrainz/${name}.tar.gz";
+    url = "ftp://ftp.musicbrainz.org/pub/musicbrainz/${pname}-${version}.tar.gz";
     sha256 = "1i9qly13bwwmgj68vma766hgvsd1m75236haqsp9zgh5znlmkm3z";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libmwaw/default.nix b/nixpkgs/pkgs/development/libraries/libmwaw/default.nix
index aa42edfeadbf..04eca2759a8e 100644
--- a/nixpkgs/pkgs/development/libraries/libmwaw/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libmwaw/default.nix
@@ -3,11 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="libmwaw";
-    version="0.3.19";
+    version="0.3.20";
     name="${baseName}-${version}";
-    hash="sha256-snLiNO78goxLuDRK8PBHpi4HD1MOni+6EbBMjbjtpa8=";
-    url="mirror://sourceforge/libmwaw/libmwaw/libmwaw-0.3.19/libmwaw-0.3.19.tar.xz";
-    sha256="sha256-snLiNO78goxLuDRK8PBHpi4HD1MOni+6EbBMjbjtpa8=";
+    hash="sha256-FMOLBiFPJ3zNFFDiLm4yZIlVAY12lYlrxWAWV0jIzSE=";
+    url="mirror://sourceforge/libmwaw/libmwaw/libmwaw-0.3.20/libmwaw-0.3.20.tar.xz";
+    sha256="sha256-FMOLBiFPJ3zNFFDiLm4yZIlVAY12lYlrxWAWV0jIzSE=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/libnatspec/default.nix b/nixpkgs/pkgs/development/libraries/libnatspec/default.nix
index 17e43ec29d94..9a0b90e16a41 100644
--- a/nixpkgs/pkgs/development/libraries/libnatspec/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libnatspec/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, autoreconfHook, popt, libiconv }:
 
-stdenv.mkDerivation (rec {
-  name = "libnatspec-0.3.0";
+stdenv.mkDerivation rec {
+  pname = "libnatspec";
+  version = "0.3.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/natspec/${name}.tar.bz2";
+    url = "mirror://sourceforge/natspec/${pname}-${version}.tar.bz2";
     sha256 = "0wffxjlc8svilwmrcg3crddpfrpv35mzzjgchf8ygqsvwbrbb3b7";
   };
 
@@ -20,4 +21,4 @@ stdenv.mkDerivation (rec {
   };
 } // lib.optionalAttrs (!stdenv.isLinux) {
   propagatedBuildInputs = [ libiconv ];
-})
+}
diff --git a/nixpkgs/pkgs/development/libraries/liboauth/default.nix b/nixpkgs/pkgs/development/libraries/liboauth/default.nix
index 5fe5ba86bea3..7ca9ec5acb6d 100644
--- a/nixpkgs/pkgs/development/libraries/liboauth/default.nix
+++ b/nixpkgs/pkgs/development/libraries/liboauth/default.nix
@@ -2,10 +2,11 @@
 
 
 stdenv.mkDerivation rec {
-  name = "liboauth-1.0.3";
+  pname = "liboauth";
+  version = "1.0.3";
 
   src = fetchurl {
-    url = "mirror://sourceforge/liboauth/${name}.tar.gz";
+    url = "mirror://sourceforge/liboauth/${pname}-${version}.tar.gz";
     sha256 = "07w1aq8y8wld43wmbk2q8134p3bfkp2vma78mmsfgw2jn1bh3xhd";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libofa/default.nix b/nixpkgs/pkgs/development/libraries/libofa/default.nix
index c78aa3f617ef..a64afbb930ae 100644
--- a/nixpkgs/pkgs/development/libraries/libofa/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libofa/default.nix
@@ -1,12 +1,9 @@
 { lib, stdenv, fetchurl, expat, curl, fftw }:
 
-let
-  version = "0.9.3";
-  deb_patch = "5";
-in
 stdenv.mkDerivation rec {
   pname = "libofa";
-  inherit version;
+  version = "0.9.3";
+  deb_patch = "5";
 
   src = fetchurl {
     url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/musicip-libofa/${pname}-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/liboggz/default.nix b/nixpkgs/pkgs/development/libraries/liboggz/default.nix
index 15856c0262c7..ecf013363ad7 100644
--- a/nixpkgs/pkgs/development/libraries/liboggz/default.nix
+++ b/nixpkgs/pkgs/development/libraries/liboggz/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libogg, pkg-config }:
 
 stdenv.mkDerivation rec {
-  name = "liboggz-1.1.1";
+  pname = "liboggz";
+  version = "1.1.1";
 
   src = fetchurl {
-    url = "http://downloads.xiph.org/releases/liboggz/${name}.tar.gz";
+    url = "https://downloads.xiph.org/releases/liboggz/${pname}-${version}.tar.gz";
     sha256 = "0nj17lhnsw4qbbk8jy4j6a78w6v2llhqdwq46g44mbm9w2qsvbvb";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/liboping/default.nix b/nixpkgs/pkgs/development/libraries/liboping/default.nix
index c309c70e3d3b..932133e01921 100644
--- a/nixpkgs/pkgs/development/libraries/liboping/default.nix
+++ b/nixpkgs/pkgs/development/libraries/liboping/default.nix
@@ -1,10 +1,11 @@
 { stdenv, fetchurl, ncurses ? null, perl ? null, lib }:
 
 stdenv.mkDerivation rec {
-  name = "liboping-1.10.0";
+  pname = "liboping";
+  version = "1.10.0";
 
   src = fetchurl {
-    url = "http://verplant.org/liboping/files/${name}.tar.bz2";
+    url = "https://noping.cc/files/${pname}-${version}.tar.bz2";
     sha256 = "1n2wkmvw6n80ybdwkjq8ka43z2x8mvxq49byv61b52iyz69slf7b";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libopus/default.nix b/nixpkgs/pkgs/development/libraries/libopus/default.nix
index 8172bd38e107..6776f5ae3934 100644
--- a/nixpkgs/pkgs/development/libraries/libopus/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libopus/default.nix
@@ -1,12 +1,9 @@
 { lib, stdenv, fetchurl
 , fixedPoint ? false, withCustomModes ? true }:
 
-let
-  version = "1.3.1";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "libopus";
-  inherit version;
+  version = "1.3.1";
 
   src = fetchurl {
     url = "https://archive.mozilla.org/pub/opus/opus-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/libopusenc/default.nix b/nixpkgs/pkgs/development/libraries/libopusenc/default.nix
index c2d77185e692..3cb14a2ea99e 100644
--- a/nixpkgs/pkgs/development/libraries/libopusenc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libopusenc/default.nix
@@ -1,11 +1,8 @@
 { lib, stdenv, fetchurl, pkg-config, libopus }:
 
-let
-  version = "0.2.1";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "libopusenc";
-  inherit version;
+  version = "0.2.1";
 
   src = fetchurl {
     url = "https://archive.mozilla.org/pub/opus/libopusenc-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/libossp-uuid/default.nix b/nixpkgs/pkgs/development/libraries/libossp-uuid/default.nix
index 824dac3a2f56..a283df1bbaea 100644
--- a/nixpkgs/pkgs/development/libraries/libossp-uuid/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libossp-uuid/default.nix
@@ -1,10 +1,8 @@
 {lib, stdenv, fetchurl}:
 
-let version = "1.6.2"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "libossp-uuid";
-  inherit version;
+  version = "1.6.2";
 
   src = fetchurl {
     url = "ftp://ftp.ossp.org/pkg/lib/uuid/uuid-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/libowfat/default.nix b/nixpkgs/pkgs/development/libraries/libowfat/default.nix
index 14270a36ec5d..9db1354677d6 100644
--- a/nixpkgs/pkgs/development/libraries/libowfat/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libowfat/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libowfat-0.32";
+  pname = "libowfat";
+  version = "0.32";
 
   src = fetchurl {
-    url = "https://www.fefe.de/libowfat/${name}.tar.xz";
+    url = "https://www.fefe.de/libowfat/${pname}-${version}.tar.xz";
     sha256 = "1hcqg7pvy093bxx8wk7i4gvbmgnxz2grxpyy7b4mphidjbcv7fgl";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libpar2/default.nix b/nixpkgs/pkgs/development/libraries/libpar2/default.nix
index 625e780d1921..0130af664597 100644
--- a/nixpkgs/pkgs/development/libraries/libpar2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libpar2/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchurl, pkg-config, libsigcxx }:
 
-let version = "0.4"; in
-
 stdenv.mkDerivation rec {
   pname = "libpar2";
-  inherit version;
+  version = "0.4";
 
   src = fetchurl {
     url = "https://launchpad.net/libpar2/trunk/${version}/+download/${pname}-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/libproxy/default.nix b/nixpkgs/pkgs/development/libraries/libproxy/default.nix
index afe5b8dde132..c5d6bc4612f3 100644
--- a/nixpkgs/pkgs/development/libraries/libproxy/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libproxy/default.nix
@@ -5,6 +5,7 @@
 , zlib
 , dbus
 , networkmanager
+, enableJavaScript ? stdenv.isDarwin || lib.meta.availableOn stdenv.hostPlatform spidermonkey_68
 , spidermonkey_68
 , pcre
 , gsettings-desktop-schemas
@@ -16,7 +17,9 @@
 , JavaScriptCore
 }:
 
-stdenv.mkDerivation rec {
+let
+  jsRuntime = if stdenv.hostPlatform.isDarwin then JavaScriptCore else spidermonkey_68;
+in stdenv.mkDerivation rec {
   pname = "libproxy";
   version = "0.4.17";
 
@@ -39,22 +42,21 @@ stdenv.mkDerivation rec {
     pcre
     python3
     zlib
+  ] ++ lib.optionals enableJavaScript [
+    jsRuntime
   ] ++ (if stdenv.hostPlatform.isDarwin then [
     SystemConfiguration
     CoreFoundation
-    JavaScriptCore
   ] else [
     glib
-    spidermonkey_68
     dbus
     networkmanager
   ]);
 
   cmakeFlags = [
-    "-DWITH_MOZJS=ON"
     "-DWITH_PYTHON2=OFF"
     "-DPYTHON3_SITEPKG_DIR=${placeholder "py3"}/${python3.sitePackages}"
-  ];
+  ] ++ lib.optional (enableJavaScript && !stdenv.hostPlatform.isDarwin) "-DWITH_MOZJS=ON";
 
   postFixup = lib.optionalString stdenv.isLinux ''
     # config_gnome3 uses the helper to find GNOME proxy settings
diff --git a/nixpkgs/pkgs/development/libraries/libraw1394/default.nix b/nixpkgs/pkgs/development/libraries/libraw1394/default.nix
index 7bf99e739f31..184cb2e7de4a 100644
--- a/nixpkgs/pkgs/development/libraries/libraw1394/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libraw1394/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libraw1394-2.1.2";
+  pname = "libraw1394";
+  version = "2.1.2";
 
   src = fetchurl {
-    url = "mirror://kernel/linux/libs/ieee1394/${name}.tar.gz";
+    url = "mirror://kernel/linux/libs/ieee1394/${pname}-${version}.tar.gz";
     sha256 = "0z5md84941ky5l7afayx2z6j0sk0mildxbjajq6niznd44ky7i6x";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libre/default.nix b/nixpkgs/pkgs/development/libraries/libre/default.nix
index e960fe8f4b26..7c91950a4c4e 100644
--- a/nixpkgs/pkgs/development/libraries/libre/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libre/default.nix
@@ -17,7 +17,6 @@ stdenv.mkDerivation rec {
     platforms = with lib.platforms; linux;
     maintainers = with lib.maintainers; [raskin];
     license = lib.licenses.bsd3;
-    inherit version;
     downloadPage = "http://www.creytiv.com/pub/";
     updateWalker = true;
     downloadURLRegexp = "/re-.*[.]tar[.].*";
diff --git a/nixpkgs/pkgs/development/libraries/libresample/default.nix b/nixpkgs/pkgs/development/libraries/libresample/default.nix
index 0756874b3e75..f466229cfe8e 100644
--- a/nixpkgs/pkgs/development/libraries/libresample/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libresample/default.nix
@@ -6,10 +6,11 @@ let
     sha256 = "063w8rqxw87fc89gas47vk0ll7xl8cy7d8g70gm1l62bqkkajklx";
   };
 in
-stdenv.mkDerivation {
-  name = "libresample-0.1.3";
+stdenv.mkDerivation rec {
+  pname = "libresample";
+  version = "0.1.3";
   src = fetchurl {
-    url = "mirror://debian/pool/main/libr/libresample/libresample_0.1.3.orig.tar.gz";
+    url = "mirror://debian/pool/main/libr/libresample/libresample_${version}.orig.tar.gz";
     sha256 = "05a8mmh1bw5afqx0kfdqzmph4x2npcs4idx0p0v6q95lwf22l8i0";
   };
   patches = [ patch ];
diff --git a/nixpkgs/pkgs/development/libraries/librevisa/default.nix b/nixpkgs/pkgs/development/libraries/librevisa/default.nix
index 892bbbbbfc04..12d1da460fb9 100644
--- a/nixpkgs/pkgs/development/libraries/librevisa/default.nix
+++ b/nixpkgs/pkgs/development/libraries/librevisa/default.nix
@@ -3,10 +3,11 @@
 # TODO: add VXI development files, for VXI-11 (TCPIP) support
 
 stdenv.mkDerivation rec {
-  name = "librevisa-0.0.20130412";
+  pname = "librevisa";
+  version = "0.0.20130412";
 
   src = fetchurl {
-    url = "http://www.librevisa.org/download/${name}.tar.gz";
+    url = "http://www.librevisa.org/download/${pname}-${version}.tar.gz";
     sha256 = "0bjzq23s3xzw0l9qx4l8achrx5id8xdd6r52lvdl4a28dxzbcfhq";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/librsvg/default.nix b/nixpkgs/pkgs/development/libraries/librsvg/default.nix
index c5e4b6e82152..05b7a00be590 100644
--- a/nixpkgs/pkgs/development/libraries/librsvg/default.nix
+++ b/nixpkgs/pkgs/development/libraries/librsvg/default.nix
@@ -22,13 +22,13 @@
 
 stdenv.mkDerivation rec {
   pname = "librsvg";
-  version = "2.50.6";
+  version = "2.50.7";
 
   outputs = [ "out" "dev" "installedTests" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "iAdJGZOoevVgxdP1I7jUpLugxQilYPH5NxdytRR3rFc=";
+    sha256 = "//thsIzVKCqq4UegKzBRZqdCb60iqLlCdwjw8vxCbrw=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/libs3/default.nix b/nixpkgs/pkgs/development/libraries/libs3/default.nix
index 5a2b8636774f..d30fc55fc77f 100644
--- a/nixpkgs/pkgs/development/libraries/libs3/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libs3/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub, curl, libxml2 }:
 
 stdenv.mkDerivation {
-  name = "libs3-2018-12-03";
+  pname = "libs3";
+  version = "unstable-2018-12-03";
 
   src = fetchFromGitHub {
     owner = "bji";
diff --git a/nixpkgs/pkgs/development/libraries/libsamplerate/default.nix b/nixpkgs/pkgs/development/libraries/libsamplerate/default.nix
index 5cf872c3fc39..5f0863bc49c8 100644
--- a/nixpkgs/pkgs/development/libraries/libsamplerate/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsamplerate/default.nix
@@ -4,10 +4,11 @@ let
   inherit (lib) optionals optionalString;
 
 in stdenv.mkDerivation rec {
-  name = "libsamplerate-0.1.9";
+  pname = "libsamplerate";
+  version = "0.1.9";
 
   src = fetchurl {
-    url = "http://www.mega-nerd.com/SRC/${name}.tar.gz";
+    url = "http://www.mega-nerd.com/SRC/${pname}-${version}.tar.gz";
     sha256 = "1ha46i0nbibq0pl0pjwcqiyny4hj8lp1bnl4dpxm64zjw9lb2zha";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libserialport/default.nix b/nixpkgs/pkgs/development/libraries/libserialport/default.nix
index 0a2adc4126f1..79f46ffca1f8 100644
--- a/nixpkgs/pkgs/development/libraries/libserialport/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libserialport/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, udev, darwin }:
 
 stdenv.mkDerivation rec {
-  name = "libserialport-0.1.1";
+  pname = "libserialport";
+  version = "0.1.1";
 
   src = fetchurl {
-    url = "https://sigrok.org/download/source/libserialport/${name}.tar.gz";
+    url = "https://sigrok.org/download/source/libserialport/${pname}-${version}.tar.gz";
     sha256 = "17ajlwgvyyrap8z7f16zcs59pksvncwbmd3mzf98wj7zqgczjaja";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libshout/default.nix b/nixpkgs/pkgs/development/libraries/libshout/default.nix
index 1e5cdb389483..5b284e4408c6 100644
--- a/nixpkgs/pkgs/development/libraries/libshout/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libshout/default.nix
@@ -4,10 +4,11 @@
 # need pkg-config so that libshout installs ${out}/lib/pkgconfig/shout.pc
 
 stdenv.mkDerivation rec {
-  name = "libshout-2.4.5";
+  pname = "libshout";
+  version = "2.4.5";
 
   src = fetchurl {
-    url = "http://downloads.xiph.org/releases/libshout/${name}.tar.gz";
+    url = "https://downloads.xiph.org/releases/libshout/${pname}-${version}.tar.gz";
     sha256 = "sha256-2eVoZopnOZTr4/HrXyvuBuMjal25K40MSH4cD4hqaJA=";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libsidplayfp/default.nix b/nixpkgs/pkgs/development/libraries/libsidplayfp/default.nix
index fe02a96a565c..99c8b7352943 100644
--- a/nixpkgs/pkgs/development/libraries/libsidplayfp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsidplayfp/default.nix
@@ -16,14 +16,14 @@
 
 stdenv.mkDerivation rec {
   pname = "libsidplayfp";
-  version = "2.2.0";
+  version = "2.2.1";
 
   src = fetchFromGitHub {
     owner = "libsidplayfp";
     repo = "libsidplayfp";
     rev = "v${version}";
     fetchSubmodules = true;
-    sha256 = "sha256-lDM4nJozZF8Rt+XWnM41hBAYatZVsmvvQajgHLI9uy0=";
+    sha256 = "sha256-Ut6tXaM97R8Y5D2dV/xPvxVzS6Ep6fOKAujtRNKoQCc=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/libsodium/default.nix b/nixpkgs/pkgs/development/libraries/libsodium/default.nix
index 64ae1713fd45..ba8bc3f334e6 100644
--- a/nixpkgs/pkgs/development/libraries/libsodium/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsodium/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libsodium-1.0.18";
+  pname = "libsodium";
+  version = "1.0.18";
 
   src = fetchurl {
-    url = "https://download.libsodium.org/libsodium/releases/${name}.tar.gz";
+    url = "https://download.libsodium.org/libsodium/releases/${pname}-${version}.tar.gz";
     sha256 = "1h9ncvj23qbbni958knzsli8dvybcswcjbx0qjjgi922nf848l3g";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libspatialindex/default.nix b/nixpkgs/pkgs/development/libraries/libspatialindex/default.nix
index 4c778fbd6902..2081650f90a9 100644
--- a/nixpkgs/pkgs/development/libraries/libspatialindex/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libspatialindex/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchurl }:
 
-let version = "1.8.5"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "libspatialindex";
-  inherit version;
+  version = "1.8.5";
 
   src = fetchurl {
     url = "https://download.osgeo.org/libspatialindex/spatialindex-src-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/libspectre/default.nix b/nixpkgs/pkgs/development/libraries/libspectre/default.nix
index 465aa941f396..81e661a94214 100644
--- a/nixpkgs/pkgs/development/libraries/libspectre/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libspectre/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, pkg-config, ghostscript, cairo }:
 
 stdenv.mkDerivation rec {
-  name = "libspectre-0.2.7";
+  pname = "libspectre";
+  version = "0.2.7";
 
   src = fetchurl {
-    url = "https://libspectre.freedesktop.org/releases/${name}.tar.gz";
+    url = "https://libspectre.freedesktop.org/releases/${pname}-${version}.tar.gz";
     sha256 = "1v63lqc6bhhxwkpa43qmz8phqs8ci4dhzizyy16d3vkb20m846z8";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libspectrum/default.nix b/nixpkgs/pkgs/development/libraries/libspectrum/default.nix
index 09aa03e6f67f..c373f7c24ff3 100644
--- a/nixpkgs/pkgs/development/libraries/libspectrum/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libspectrum/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, perl, pkg-config, audiofile, bzip2, glib, libgcrypt, zlib }:
 
 stdenv.mkDerivation rec {
-  name = "libspectrum-1.5.0";
+  pname = "libspectrum";
+  version = "1.5.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/fuse-emulator/${name}.tar.gz";
+    url = "mirror://sourceforge/fuse-emulator/${pname}-${version}.tar.gz";
     sha256 = "sha256-o1PLRumxooEGHYFjU+oBDQpv545qF6oLe3QnHKXkrPw=";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libstatgrab/default.nix b/nixpkgs/pkgs/development/libraries/libstatgrab/default.nix
index fe2717cfeb36..5daf93b943ba 100644
--- a/nixpkgs/pkgs/development/libraries/libstatgrab/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libstatgrab/default.nix
@@ -5,10 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "libstatgrab-0.92";
+  pname = "libstatgrab";
+  version = "0.92";
 
   src = fetchurl {
-    url = "https://ftp.i-scream.org/pub/i-scream/libstatgrab/${name}.tar.gz";
+    url = "https://ftp.i-scream.org/pub/i-scream/libstatgrab/${pname}-${version}.tar.gz";
     sha256 = "15m1sl990l85ijf8pnc6hdfha6fqyiq74mijrzm3xz4zzxm91wav";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libstroke/default.nix b/nixpkgs/pkgs/development/libraries/libstroke/default.nix
index 76f5b6b4b8c6..697616f01f30 100644
--- a/nixpkgs/pkgs/development/libraries/libstroke/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libstroke/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl, automake, autoconf, xlibsWrapper}:
 
-stdenv.mkDerivation {
-  name = "libstroke-0.5.1";
+stdenv.mkDerivation rec {
+  pname = "libstroke";
+  version = "0.5.1";
 
   src = fetchurl {
-    url = "https://web.archive.org/web/20161204100704/http://etla.net/libstroke/libstroke-0.5.1.tar.gz";
+    url = "https://web.archive.org/web/20161204100704/http://etla.net/libstroke/${pname}-${version}.tar.gz";
     sha256 = "0bbpqzsqh9zrc6cg62f6vp1p4dzvv37blsd0gdlzdskgwvyzba8d";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libtgvoip/default.nix b/nixpkgs/pkgs/development/libraries/libtgvoip/default.nix
index 8ffd07731273..3c10220fffbc 100644
--- a/nixpkgs/pkgs/development/libraries/libtgvoip/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libtgvoip/default.nix
@@ -7,13 +7,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "libtgvoip";
-  version = "unstable-2021-01-01";
+  version = "unstable-2021-07-13";
 
   src = fetchFromGitHub {
     owner = "telegramdesktop";
     repo = "libtgvoip";
-    rev = "13a5fcb16b04472d808ce122abd695dbf5d206cd";
-    sha256 = "12p6s7vxkf1gh1spdckkdxrx7bjzw881ds9bky7l5fw751cwb3xd";
+    rev = "f321e7c8cc086bac6ae06fa0934aac7d9833a310";
+    sha256 = "1gk5nsqhbnn1cdh83b70qr3d3v2c1bncylvgn77vvj8vnyjlmnfq";
   };
 
   # To fix the build without external webrtc:
diff --git a/nixpkgs/pkgs/development/libraries/libtheora/default.nix b/nixpkgs/pkgs/development/libraries/libtheora/default.nix
index 8f0c4d818f4c..1e88218aa0d4 100644
--- a/nixpkgs/pkgs/development/libraries/libtheora/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libtheora/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl, libogg, libvorbis, pkg-config, autoreconfHook, fetchpatch }:
 
 stdenv.mkDerivation rec {
-  name = "libtheora-1.1.1";
+  pname = "libtheora";
+  version = "1.1.1";
 
   src = fetchurl {
-    url = "http://downloads.xiph.org/releases/theora/${name}.tar.gz";
+    url = "https://downloads.xiph.org/releases/theora/${pname}-${version}.tar.gz";
     sha256 = "0swiaj8987n995rc7hw0asvpwhhzpjiws8kr3s6r44bqqib2k5a0";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libtiff/aarch64-darwin.nix b/nixpkgs/pkgs/development/libraries/libtiff/aarch64-darwin.nix
new file mode 100644
index 000000000000..5de481066f67
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libtiff/aarch64-darwin.nix
@@ -0,0 +1,53 @@
+{ lib, stdenv
+, fetchurl
+
+, pkg-config
+, cmake
+
+, libdeflate
+, libjpeg
+, xz
+, zlib
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libtiff";
+  version = "4.2.0";
+
+  src = fetchurl {
+    url = "https://download.osgeo.org/libtiff/tiff-${version}.tar.gz";
+    sha256 = "1jrkjv0xya9radddn8idxvs2gqzp3l2b1s8knlizmn7ad3jq817b";
+  };
+
+  cmakeFlags = lib.optional stdenv.isDarwin "-DCMAKE_SKIP_BUILD_RPATH=OFF";
+
+  # FreeImage needs this patch
+  patches = [ ./headers-cmake.patch ];
+
+  outputs = [ "bin" "dev" "dev_private" "out" "man" "doc" ];
+
+  postFixup = ''
+    moveToOutput include/tif_dir.h $dev_private
+    moveToOutput include/tif_config.h $dev_private
+    moveToOutput include/tiffiop.h $dev_private
+  '';
+
+  nativeBuildInputs = [ cmake pkg-config ];
+
+  propagatedBuildInputs = [ libjpeg xz zlib ]; #TODO: opengl support (bogus configure detection)
+
+  buildInputs = [ libdeflate ]; # TODO: move all propagatedBuildInputs to buildInputs.
+
+  enableParallelBuilding = true;
+
+  doInstallCheck = true;
+  installCheckTarget = "test";
+
+  meta = with lib; {
+    description = "Library and utilities for working with the TIFF image file format";
+    homepage = "https://libtiff.gitlab.io/libtiff";
+    changelog = "https://libtiff.gitlab.io/libtiff/v${version}.html";
+    license = licenses.libtiff;
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libtiff/default.nix b/nixpkgs/pkgs/development/libraries/libtiff/default.nix
index 46c13bbe4a9d..ea246790020e 100644
--- a/nixpkgs/pkgs/development/libraries/libtiff/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libtiff/default.nix
@@ -1,8 +1,8 @@
 { lib, stdenv
 , fetchurl
 
+, autoreconfHook
 , pkg-config
-, cmake
 
 , libdeflate
 , libjpeg
@@ -10,19 +10,17 @@
 , zlib
 }:
 
+#FIXME: fix aarch64-darwin build and get rid of ./aarch64-darwin.nix
+
 stdenv.mkDerivation rec {
   pname = "libtiff";
-  version = "4.2.0";
+  version = "4.3.0";
 
   src = fetchurl {
     url = "https://download.osgeo.org/libtiff/tiff-${version}.tar.gz";
-    sha256 = "1jrkjv0xya9radddn8idxvs2gqzp3l2b1s8knlizmn7ad3jq817b";
+    sha256 = "1j3snghqjbhwmnm5vz3dr1zm68dj15mgbx1wqld7vkl7n2nfaihf";
   };
 
-  cmakeFlags = if stdenv.isDarwin then [
-    "-DCMAKE_SKIP_BUILD_RPATH=OFF"
-  ] else null;
-
   # FreeImage needs this patch
   patches = [ ./headers.patch ];
 
@@ -34,7 +32,9 @@ stdenv.mkDerivation rec {
     moveToOutput include/tiffiop.h $dev_private
   '';
 
-  nativeBuildInputs = [ cmake pkg-config ];
+  # If you want to change to a different build system, please make
+  # sure cross-compilation works first!
+  nativeBuildInputs = [ autoreconfHook pkg-config ];
 
   propagatedBuildInputs = [ libjpeg xz zlib ]; #TODO: opengl support (bogus configure detection)
 
@@ -42,12 +42,13 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  doInstallCheck = true;
-  installCheckTarget = "test";
+  doCheck = true;
 
   meta = with lib; {
     description = "Library and utilities for working with the TIFF image file format";
-    homepage = "http://download.osgeo.org/libtiff";
+    homepage = "https://libtiff.gitlab.io/libtiff";
+    changelog = "https://libtiff.gitlab.io/libtiff/v${version}.html";
+    maintainers = with maintainers; [ qyliss ];
     license = licenses.libtiff;
     platforms = platforms.unix;
   };
diff --git a/nixpkgs/pkgs/development/libraries/libtiff/headers-cmake.patch b/nixpkgs/pkgs/development/libraries/libtiff/headers-cmake.patch
new file mode 100644
index 000000000000..5a00502ef281
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libtiff/headers-cmake.patch
@@ -0,0 +1,13 @@
+diff -ruN a/libtiff/CMakeLists.txt b/libtiff/CMakeLists.txt
+--- a/libtiff/CMakeLists.txt	2019-05-31 13:05:22.849705817 +0000
++++ b/libtiff/CMakeLists.txt	2020-11-27 21:50:03.527831837 +0000
+@@ -42,6 +42,9 @@
+   libtiffxx.map)
+ 
+ set(tiff_HEADERS
++  tiffiop.h
++  ${CMAKE_CURRENT_BINARY_DIR}/tif_config.h
++  tif_dir.h
+   tiff.h
+   tiffio.h
+   tiffvers.h)
diff --git a/nixpkgs/pkgs/development/libraries/libtiff/headers.patch b/nixpkgs/pkgs/development/libraries/libtiff/headers.patch
index 5a00502ef281..e1c681502b33 100644
--- a/nixpkgs/pkgs/development/libraries/libtiff/headers.patch
+++ b/nixpkgs/pkgs/development/libraries/libtiff/headers.patch
@@ -1,13 +1,16 @@
-diff -ruN a/libtiff/CMakeLists.txt b/libtiff/CMakeLists.txt
---- a/libtiff/CMakeLists.txt	2019-05-31 13:05:22.849705817 +0000
-+++ b/libtiff/CMakeLists.txt	2020-11-27 21:50:03.527831837 +0000
-@@ -42,6 +42,9 @@
-   libtiffxx.map)
+diff --git i/libtiff/Makefile.am w/libtiff/Makefile.am
+index 44522b62..d66e5948 100644
+--- i/libtiff/Makefile.am
++++ w/libtiff/Makefile.am
+@@ -36,8 +36,11 @@ EXTRA_DIST = \
+ 	tiffconf.h.cmake.in
  
- set(tiff_HEADERS
-+  tiffiop.h
-+  ${CMAKE_CURRENT_BINARY_DIR}/tif_config.h
-+  tif_dir.h
-   tiff.h
-   tiffio.h
-   tiffvers.h)
+ libtiffinclude_HEADERS = \
++	tif_config.h \
++	tif_dir.h \
+ 	tiff.h \
+ 	tiffio.h \
++	tiffiop.h \
+ 	tiffvers.h
+ 
+ if HAVE_CXX
diff --git a/nixpkgs/pkgs/development/libraries/libu2f-server/default.nix b/nixpkgs/pkgs/development/libraries/libu2f-server/default.nix
index 7f596978cf06..aac71bda3698 100644
--- a/nixpkgs/pkgs/development/libraries/libu2f-server/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libu2f-server/default.nix
@@ -1,9 +1,10 @@
 { lib, stdenv, fetchurl, fetchpatch, pkg-config, json_c, openssl, check, file, help2man, which, gengetopt }:
 
 stdenv.mkDerivation rec {
-  name = "libu2f-server-1.1.0";
+  pname = "libu2f-server";
+  version = "1.1.0";
   src = fetchurl {
-    url = "https://developers.yubico.com/libu2f-server/Releases/${name}.tar.xz";
+    url = "https://developers.yubico.com/libu2f-server/Releases/${pname}-${version}.tar.xz";
     sha256 = "0xx296nmmqa57w0v5p2kasl5zr1ms2gh6qi4lhv6xvzbmjp3rkcd";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libuldaq/0001-uldaq.patch b/nixpkgs/pkgs/development/libraries/libuldaq/0001-uldaq.patch
new file mode 100644
index 000000000000..97375283cd64
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libuldaq/0001-uldaq.patch
@@ -0,0 +1,28 @@
+diff --git a/Makefile.am b/Makefile.am
+index 0e69cd4..b4a1f1a 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -26,7 +26,7 @@ dist_pkgconfig_DATA=libuldaq.pc
+ # fpga/USB_DIO32HS.bin
+ 
+ if OS_LINUX
+-rulesdatadir=/lib/udev/rules.d/
++rulesdatadir=$(libdir)/udev/rules.d/
+ dist_rulesdata_DATA=rules/50-uldaq.rules
+ endif
+ 
+@@ -42,14 +42,6 @@ dist-up: dist
+ 	mkdir -p $(reldir)
+ 	cp $(distdir).tar.bz2 $(reldir)
+ 
+-if OS_LINUX
+-install-data-hook:
+-	udevadm control --reload-rules && \
+-	test -f "/etc/redhat-release" && echo "/usr/local/lib" > /etc/ld.so.conf.d/uldaq.conf || echo "" && \
+-	test -f "/etc/arch-release" && echo "/usr/local/lib" > /etc/ld.so.conf.d/uldaq.conf || echo "" && \
+-	ldconfig
+-endif
+-
+ if OS_LINUX
+ uninstall-hook:
+ 	test -f "/etc/ld.so.conf.d/uldaq.conf" &&  rm "/etc/ld.so.conf.d/uldaq.conf" || echo ""
diff --git a/nixpkgs/pkgs/development/libraries/libuldaq/default.nix b/nixpkgs/pkgs/development/libraries/libuldaq/default.nix
new file mode 100644
index 000000000000..2f8f7fbb30ea
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libuldaq/default.nix
@@ -0,0 +1,34 @@
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, libusb1, ...}:
+
+stdenv.mkDerivation rec {
+  pname = "libuldaq";
+  version = "1.2.0";
+
+  src = fetchFromGitHub {
+    owner = "mccdaq";
+    repo = "uldaq";
+    rev = "v${version}";
+    sha256 = "0l9ima8ac99yd9vvjvdrmacm95ghv687wiy39zxm00cmghcfv3vj";
+  };
+
+  patches = [
+    # Patch needed for `make install` to succeed
+    ./0001-uldaq.patch
+  ];
+
+  nativeBuildInputs = [ autoreconfHook ];
+
+  buildInputs = [ libusb1 ];
+
+  meta = with lib; {
+    description = "Library to talk to uldaq devices";
+    longDescription = ''
+      Library used to communicate with USB data acquisition (DAQ)
+      devices from Measurement Computing
+    '';
+    homepage = "https://github.com/mccdaq/uldaq";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.simonkampe ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libuv/default.nix b/nixpkgs/pkgs/development/libraries/libuv/default.nix
index 6b1a0120e49e..b630fca16701 100644
--- a/nixpkgs/pkgs/development/libraries/libuv/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libuv/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkg-config, ApplicationServices, CoreServices }:
+{ stdenv, lib, fetchFromGitHub, fetchpatch, autoconf, automake, libtool, pkg-config, ApplicationServices, CoreServices }:
 
 stdenv.mkDerivation rec {
   version = "1.41.0";
@@ -11,6 +11,15 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-i6AYD1Ony0L2+3yWK6bxOfwoZEvd9qCg33QSqA7bRXI=";
   };
 
+  patches = [
+    (fetchpatch {
+      # Fixes out-of-bounds read in uv__idna_toascii() function
+      name = "CVE-2021-22918.patch";
+      url = "https://github.com/libuv/libuv/commit/b7466e31e4bee160d82a68fca11b1f61d46debae.patch";
+      sha256 = "0fbjy0jh7r9nrd27ag1k6am6d8p5ih7p0ywvjn53nq4cyqdqxhi7";
+    })
+  ];
+
   postPatch = let
     toDisable = [
       "getnameinfo_basic" "udp_send_hang_loop" # probably network-dependent
diff --git a/nixpkgs/pkgs/development/libraries/libva/default.nix b/nixpkgs/pkgs/development/libraries/libva/default.nix
index 32ecc34a2874..1eee4b3870bc 100644
--- a/nixpkgs/pkgs/development/libraries/libva/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libva/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, lib, fetchFromGitHub, fetchpatch, meson, pkg-config, ninja, wayland
+{ stdenv, lib, fetchFromGitHub, meson, pkg-config, ninja, wayland-scanner
 , libdrm
 , minimal ? false, libva-minimal
-, libX11, libXext, libXfixes, libffi, libGL
+, libX11, libXext, libXfixes, wayland, libffi, libGL
 , mesa
 }:
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   outputs = [ "dev" "out" ];
 
-  nativeBuildInputs = [ meson pkg-config ninja wayland ];
+  nativeBuildInputs = [ meson pkg-config ninja wayland-scanner ];
 
   buildInputs = [ libdrm ]
     ++ lib.optionals (!minimal) [ libva-minimal libX11 libXext libXfixes wayland libffi libGL ];
diff --git a/nixpkgs/pkgs/development/libraries/libvirt-glib/default.nix b/nixpkgs/pkgs/development/libraries/libvirt-glib/default.nix
index 5e1c0c671d90..6c2cb095a818 100644
--- a/nixpkgs/pkgs/development/libraries/libvirt-glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libvirt-glib/default.nix
@@ -15,12 +15,13 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "libvirt-glib-4.0.0";
+  pname = "libvirt-glib";
+  version = "4.0.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
-    url = "https://libvirt.org/sources/glib/${name}.tar.xz";
+    url = "https://libvirt.org/sources/glib/${pname}-${version}.tar.xz";
     sha256 = "hCP3Bp2qR2MHMh0cEeLswoU0DNMsqfwFIHdihD7erL0=";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libvisual/default.nix b/nixpkgs/pkgs/development/libraries/libvisual/default.nix
index 7a996d3b8079..3e61ee8a6a13 100644
--- a/nixpkgs/pkgs/development/libraries/libvisual/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libvisual/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, glib }:
 
 stdenv.mkDerivation rec {
-  name = "libvisual-0.4.0";
+  pname = "libvisual";
+  version = "0.4.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/libvisual/${name}.tar.gz";
+    url = "mirror://sourceforge/libvisual/${pname}-${version}.tar.gz";
     sha256 = "1my1ipd5k1ixag96kwgf07bgxkjlicy9w22jfxb2kq95f6wgsk8b";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libvorbis/default.nix b/nixpkgs/pkgs/development/libraries/libvorbis/default.nix
index 9fd3fc59ab39..281c7744a339 100644
--- a/nixpkgs/pkgs/development/libraries/libvorbis/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libvorbis/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libogg, pkg-config }:
 
 stdenv.mkDerivation rec {
-  name = "libvorbis-1.3.7";
+  pname = "libvorbis";
+  version = "1.3.7";
 
   src = fetchurl {
-    url = "http://downloads.xiph.org/releases/vorbis/${name}.tar.xz";
+    url = "http://downloads.xiph.org/releases/vorbis/${pname}-${version}.tar.xz";
     sha256 = "0jwmf87x5sdis64rbv0l87mdpah1rbilkkxszipbzg128f9w8g5k";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libvterm/default.nix b/nixpkgs/pkgs/development/libraries/libvterm/default.nix
index 90914d4186ea..066dcb4f34f4 100644
--- a/nixpkgs/pkgs/development/libraries/libvterm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libvterm/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, glib, ncurses }:
 
 stdenv.mkDerivation rec {
-  name = "libvterm-0.99.7";
+  pname = "libvterm";
+  version = "0.99.7";
 
   src = fetchurl {
-    url = "mirror://sourceforge/libvterm/${name}.tar.gz";
+    url = "mirror://sourceforge/libvterm/${pname}-${version}.tar.gz";
     sha256 = "10gaqygmmwp0cwk3j8qflri5caf8vl3f7pwfl2svw5whv8wkn0k2";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libwebsockets/default.nix b/nixpkgs/pkgs/development/libraries/libwebsockets/default.nix
index c62aa77c61a9..151d4c7ee48f 100644
--- a/nixpkgs/pkgs/development/libraries/libwebsockets/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libwebsockets/default.nix
@@ -20,10 +20,19 @@ let
       "-DLWS_WITH_PLUGINS=ON"
       "-DLWS_WITH_IPV6=ON"
       "-DLWS_WITH_SOCKS5=ON"
+      # Required since v4.2.0
+      "-DLWS_BUILD_HASH=no_hash"
     ] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "-DLWS_WITHOUT_TESTAPPS=ON";
 
     NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isGNU "-Wno-error=unused-but-set-variable";
 
+    postInstall = ''
+      rm -r ${placeholder "out"}/share/libwebsockets-test-server
+    '';
+
+    # $out/share/libwebsockets-test-server/plugins/libprotocol_*.so refers to crtbeginS.o
+    disallowedReferences = [ stdenv.cc.cc ];
+
     meta = with lib; {
       description = "Light, portable C library for websockets";
       longDescription = ''
@@ -40,8 +49,7 @@ let
     };
   };
 
-in
-rec {
+in {
   libwebsockets_3_1 = generic {
     sha256 = "1w1wz6snf3cmcpa3f4dci2nz9za2f5rrylxl109id7bcb36xhbdl";
     version = "3.1.0";
@@ -52,13 +60,8 @@ rec {
     sha256 = "0m1kn4p167jv63zvwhsvmdn8azx3q7fkk8qc0fclwyps2scz6dna";
   };
 
-  libwebsockets_4_0 = generic {
-    version = "4.0.21";
-    sha256 = "01k05x4711ngin598jr9dag4ml3m7hi6pkgr4dsb02ryh1kc6146";
-  };
-
-  libwebsockets_4_1 = generic {
-    version = "4.1.6";
-    sha256 = "0x56v4hsx92vm1zibfmnqb5g3v23kzciffn3fjlsc3sly2pknhsg";
+  libwebsockets_4_2 = generic {
+    version = "4.2.0";
+    sha256 = "glnLGXniero/5CW/1TBPZngdOM6gww8DnT5wiX66sW0=";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libwpg/default.nix b/nixpkgs/pkgs/development/libraries/libwpg/default.nix
index cf85d57a7f20..bf0df220935c 100644
--- a/nixpkgs/pkgs/development/libraries/libwpg/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libwpg/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, libwpd, zlib, librevenge }:
 
 stdenv.mkDerivation rec {
-  name = "libwpg-0.3.3";
+  pname = "libwpg";
+  version = "0.3.3";
 
   src = fetchurl {
-    url = "mirror://sourceforge/libwpg/${name}.tar.xz";
+    url = "mirror://sourceforge/libwpg/${pname}-${version}.tar.xz";
     sha256 = "074x159immf139szkswv2zapnq75p7xk10dbha2p9193hgwggcwr";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libx86/src-for-default.nix b/nixpkgs/pkgs/development/libraries/libx86/src-for-default.nix
index a681d9e58902..b7e432d8109c 100644
--- a/nixpkgs/pkgs/development/libraries/libx86/src-for-default.nix
+++ b/nixpkgs/pkgs/development/libraries/libx86/src-for-default.nix
@@ -1,9 +1,7 @@
 rec {
+   pname="libx86";
    version="1.1";
-   name="libx86-1.1";
    hash="0j6h6bc02c6qi0q7c1ncraz4d1hkm5936r35rfsp4x1jrc233wav";
    url="http://www.codon.org.uk/~mjg59/libx86/downloads/libx86-${version}.tar.gz";
-   advertisedUrl="http://www.codon.org.uk/~mjg59/libx86/downloads/libx86-1.1.tar.gz";
-
-
+   advertisedUrl="http://www.codon.org.uk/~mjg59/libx86/downloads/libx86-${version}.tar.gz";
 }
diff --git a/nixpkgs/pkgs/development/libraries/libxc/default.nix b/nixpkgs/pkgs/development/libraries/libxc/default.nix
index 95ce2406223c..0680e4b832ce 100644
--- a/nixpkgs/pkgs/development/libraries/libxc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxc/default.nix
@@ -1,11 +1,8 @@
 { lib, stdenv, fetchFromGitLab, cmake, gfortran, perl }:
 
-let
-  version = "5.1.5";
-
-in stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "libxc";
-  inherit version;
+  version = "5.1.5";
 
   src = fetchFromGitLab {
     owner = "libxc";
diff --git a/nixpkgs/pkgs/development/libraries/libxkbcommon/default.nix b/nixpkgs/pkgs/development/libraries/libxkbcommon/default.nix
index b738089c853f..8bec962c0aea 100644
--- a/nixpkgs/pkgs/development/libraries/libxkbcommon/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxkbcommon/default.nix
@@ -16,6 +16,7 @@
 , withWaylandTools ? stdenv.isLinux
 , wayland
 , wayland-protocols
+, wayland-scanner
 }:
 
 stdenv.mkDerivation rec {
@@ -31,7 +32,7 @@ stdenv.mkDerivation rec {
 
   depsBuildBuild = [ pkg-config ];
   nativeBuildInputs = [ meson ninja pkg-config bison doxygen ]
-    ++ lib.optional withWaylandTools wayland;
+    ++ lib.optional withWaylandTools wayland-scanner;
   buildInputs = [ xkeyboard_config libxcb libxml2 ]
     ++ lib.optionals withWaylandTools [ wayland wayland-protocols ];
   checkInputs = [ python3 ];
diff --git a/nixpkgs/pkgs/development/libraries/libxklavier/default.nix b/nixpkgs/pkgs/development/libraries/libxklavier/default.nix
index 60b52152f67f..acf82886d466 100644
--- a/nixpkgs/pkgs/development/libraries/libxklavier/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxklavier/default.nix
@@ -1,12 +1,9 @@
 { lib, stdenv, fetchgit, autoreconfHook, pkg-config, gtk-doc, xkeyboard_config, libxml2, xorg, docbook_xsl
 , glib, isocodes, gobject-introspection }:
 
-let
-  version = "5.4";
-in
 stdenv.mkDerivation rec {
   pname = "libxklavier";
-  inherit version;
+  version = "5.4";
 
   src = fetchgit {
     url = "git://anongit.freedesktop.org/git/libxklavier";
diff --git a/nixpkgs/pkgs/development/libraries/libxlsxwriter/default.nix b/nixpkgs/pkgs/development/libraries/libxlsxwriter/default.nix
index ce9a72f00c1c..dfeaeed8ca80 100644
--- a/nixpkgs/pkgs/development/libraries/libxlsxwriter/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxlsxwriter/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libxlsxwriter";
-  version = "1.0.8";
+  version = "1.0.9";
 
   src = fetchFromGitHub {
     owner = "jmcnamara";
     repo = "libxlsxwriter";
     rev = "RELEASE_${version}";
-    sha256 = "1z9bkg0pfkzxbpj2rys4mx9wmcxyjjqsg0nbiaabsg455q00plki";
+    sha256 = "sha256-6MMQr0ynMmfZj+RFoKtLB/f1nTBfn9tcYpzyUwnfB3M=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/libxmi/default.nix b/nixpkgs/pkgs/development/libraries/libxmi/default.nix
index b9a2b6de3cc3..2d2a0089c443 100644
--- a/nixpkgs/pkgs/development/libraries/libxmi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxmi/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libtool }:
 
-stdenv.mkDerivation {
-  name = "libxmi-1.2";
+stdenv.mkDerivation rec {
+  pname = "libxmi";
+  version = "1.2";
 
   src = fetchurl {
-    url = "mirror://gnu/libxmi/libxmi-1.2.tar.gz";
+    url = "mirror://gnu/libxmi/${pname}-${version}.tar.gz";
     sha256 = "03d4ikh29l38rl1wavb0icw7m5pp7yilnv7bb2k8qij1dinsymlx";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libxmp/default.nix b/nixpkgs/pkgs/development/libraries/libxmp/default.nix
index d78bb1a7d946..47dfcab5a499 100644
--- a/nixpkgs/pkgs/development/libraries/libxmp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxmp/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libxmp-4.5.0";
+  pname = "libxmp";
+  version = "4.5.0";
 
   meta = with lib; {
     description = "Extended module player library";
@@ -16,7 +17,7 @@ stdenv.mkDerivation rec {
   };
 
   src = fetchurl {
-    url = "mirror://sourceforge/xmp/libxmp/${name}.tar.gz";
+    url = "mirror://sourceforge/xmp/libxmp/${pname}-${version}.tar.gz";
     sha256 = "sha256-eEfSYhEtFOhEL0TlrG7Z3bylTCUShHILVjyFKzHybnU=";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libxsmm/default.nix b/nixpkgs/pkgs/development/libraries/libxsmm/default.nix
index a2b4800ec4c4..21052df86307 100644
--- a/nixpkgs/pkgs/development/libraries/libxsmm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libxsmm/default.nix
@@ -4,11 +4,9 @@
 , enableStatic ? stdenv.hostPlatform.isStatic
 }:
 
-let
-  version = "1.16.1";
-in stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "libxsmm";
-  inherit version;
+  version = "1.16.1";
 
   src = fetchFromGitHub {
     owner = "hfp";
diff --git a/nixpkgs/pkgs/development/libraries/libykneomgr/default.nix b/nixpkgs/pkgs/development/libraries/libykneomgr/default.nix
index a7d35950f034..7f314410667f 100644
--- a/nixpkgs/pkgs/development/libraries/libykneomgr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libykneomgr/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, pcsclite, libzip, help2man }:
 
 stdenv.mkDerivation rec {
-  name = "libykneomgr-0.1.8";
+  pname = "libykneomgr";
+  version = "0.1.8";
 
   src = fetchurl {
-    url = "https://developers.yubico.com/libykneomgr/Releases/${name}.tar.gz";
+    url = "https://developers.yubico.com/libykneomgr/Releases/${pname}-${version}.tar.gz";
     sha256 = "12gqblz400kr11m1fdr1vvwr85lgy5v55zy0cf782whpk8lyyj97";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libyubikey/default.nix b/nixpkgs/pkgs/development/libraries/libyubikey/default.nix
index b3aa2b57bdf8..3b05be00d905 100644
--- a/nixpkgs/pkgs/development/libraries/libyubikey/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libyubikey/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libyubikey-1.13";
+  pname = "libyubikey";
+  version = "1.13";
 
   src = fetchurl {
-    url = "https://developers.yubico.com/yubico-c/Releases/${name}.tar.gz";
+    url = "https://developers.yubico.com/yubico-c/Releases/${pname}-${version}.tar.gz";
     sha256 = "009l3k2zyn06dbrlja2d4p2vfnzjhlcqxi88v02mlrnb17mx1v84";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libzmf/default.nix b/nixpkgs/pkgs/development/libraries/libzmf/default.nix
index f71b6d0c0b97..7965c934df3e 100644
--- a/nixpkgs/pkgs/development/libraries/libzmf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libzmf/default.nix
@@ -14,7 +14,6 @@ stdenv.mkDerivation rec {
   configureFlags = [ "--disable-werror" ];
 
   meta = {
-    inherit version;
     description = "A library that parses the file format of Zoner Callisto/Draw documents";
     license = lib.licenses.mpl20;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/libraries/linbox/default.nix b/nixpkgs/pkgs/development/libraries/linbox/default.nix
index 8a21bd3bcde4..821edd333692 100644
--- a/nixpkgs/pkgs/development/libraries/linbox/default.nix
+++ b/nixpkgs/pkgs/development/libraries/linbox/default.nix
@@ -71,7 +71,6 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with lib; {
-    inherit version;
     description = "C++ library for exact, high-performance linear algebra";
     license = licenses.lgpl21Plus;
     maintainers = teams.sage.members;
diff --git a/nixpkgs/pkgs/development/libraries/lirc/default.nix b/nixpkgs/pkgs/development/libraries/lirc/default.nix
index b93cc96bde02..4544fd08aa50 100644
--- a/nixpkgs/pkgs/development/libraries/lirc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lirc/default.nix
@@ -2,10 +2,11 @@
   alsa-lib, xlibsWrapper, libxslt, systemd, libusb-compat-0_1, libftdi1 }:
 
 stdenv.mkDerivation rec {
-  name = "lirc-0.10.1";
+  pname = "lirc";
+  version = "0.10.1";
 
   src = fetchurl {
-    url = "mirror://sourceforge/lirc/${name}.tar.bz2";
+    url = "mirror://sourceforge/lirc/${pname}-${version}.tar.bz2";
     sha256 = "1whlyifvvc7w04ahq07nnk1h18wc8j7c6wnvlb6mszravxh3qxcb";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/log4cpp/default.nix b/nixpkgs/pkgs/development/libraries/log4cpp/default.nix
index d4b703a2bda7..f7a10d9c31d3 100644
--- a/nixpkgs/pkgs/development/libraries/log4cpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/log4cpp/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "log4cpp-1.1.3";
+  pname = "log4cpp";
+  version = "1.1.3";
 
   src = fetchurl {
-    url = "mirror://sourceforge/log4cpp/${name}.tar.gz";
+    url = "mirror://sourceforge/log4cpp/${pname}-${version}.tar.gz";
     sha256 = "07gmr3jyaf2239n9sp6h7hwdz1pv7b7aka8n06gmr2fnlmaymfrc";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/lzo/default.nix b/nixpkgs/pkgs/development/libraries/lzo/default.nix
index 8ea933f0e3ab..f5b0111a1a78 100644
--- a/nixpkgs/pkgs/development/libraries/lzo/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lzo/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "lzo-2.10";
+  pname = "lzo";
+  version = "2.10";
 
   src = fetchurl {
-    url = "${meta.homepage}/download/${name}.tar.gz";
+    url = "https://www.oberhumer.com/opensource/lzo/download/${pname}-${version}.tar.gz";
     sha256 = "0wm04519pd3g8hqpjqhfr72q8qmbiwqaxcs3cndny9h86aa95y60";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/matio/default.nix b/nixpkgs/pkgs/development/libraries/matio/default.nix
index 3b0e811097e7..e3b3f288cb5d 100644
--- a/nixpkgs/pkgs/development/libraries/matio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/matio/default.nix
@@ -1,8 +1,9 @@
 { lib, stdenv, fetchurl }:
 stdenv.mkDerivation rec {
-  name = "matio-1.5.21";
+  pname = "matio";
+  version = "1.5.21";
   src = fetchurl {
-    url = "mirror://sourceforge/matio/${name}.tar.gz";
+    url = "mirror://sourceforge/matio/${pname}-${version}.tar.gz";
     sha256 = "sha256-IYCRd+VYOefJTa2nRO5Vwd6n11fdqriWBXdtUBIvsGU=";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/mdds/default.nix b/nixpkgs/pkgs/development/libraries/mdds/default.nix
index 0fc749632994..89fbdd9f2155 100644
--- a/nixpkgs/pkgs/development/libraries/mdds/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mdds/default.nix
@@ -19,7 +19,6 @@ stdenv.mkDerivation rec {
   checkInputs = [ boost ];
 
   meta = with lib; {
-    inherit version;
     homepage = "https://gitlab.com/mdds/mdds";
     description = "A collection of multi-dimensional data structure and indexing algorithm";
     platforms = platforms.all;
diff --git a/nixpkgs/pkgs/development/libraries/mesa/default.nix b/nixpkgs/pkgs/development/libraries/mesa/default.nix
index aaa78de47f75..2790d88387e2 100644
--- a/nixpkgs/pkgs/development/libraries/mesa/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mesa/default.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, fetchurl, fetchpatch, buildPackages
 , meson, pkg-config, ninja
-, intltool, bison, flex, file, python3Packages
+, intltool, bison, flex, file, python3Packages, wayland-scanner
 , expat, libdrm, xorg, wayland, wayland-protocols, openssl
 , llvmPackages, libffi, libomxil-bellagio, libva-minimal
 , libelf, libvdpau
@@ -31,7 +31,7 @@ with lib;
 let
   # Release calendar: https://www.mesa3d.org/release-calendar.html
   # Release frequency: https://www.mesa3d.org/releasing.html#schedule
-  version = "21.1.4";
+  version = "21.1.5";
   branch  = versions.major version;
 
 self = stdenv.mkDerivation {
@@ -45,7 +45,7 @@ self = stdenv.mkDerivation {
       "ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz"
       "ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz"
     ];
-    sha256 = "02z9g6zpkg1p1sm8f84xdi7v2n7x534x9pn565bvcr411527y5qz";
+    sha256 = "0vbn40azh7izrxvb15c51z3lfcb9zas2v1wc4z9cxvja0y9p4b02";
   };
 
   prePatch = "patchShebangs .";
@@ -143,7 +143,7 @@ self = stdenv.mkDerivation {
     intltool bison flex file
     python3Packages.python python3Packages.Mako
   ] ++ lib.optionals (elem "wayland" eglPlatforms) [
-    wayland # For wayland-scanner during the build
+    wayland-scanner
   ];
 
   propagatedBuildInputs = with xorg; [
@@ -220,6 +220,7 @@ self = stdenv.mkDerivation {
   passthru = {
     inherit libdrm;
     inherit (libglvnd) driverLink;
+    inherit llvmPackages;
 
     tests.devDoesNotDependOnLLVM = stdenv.mkDerivation {
       name = "mesa-dev-does-not-depend-on-llvm";
diff --git a/nixpkgs/pkgs/development/libraries/microsoft_gsl/default.nix b/nixpkgs/pkgs/development/libraries/microsoft_gsl/default.nix
index 5a5257168eb4..11931199999b 100644
--- a/nixpkgs/pkgs/development/libraries/microsoft_gsl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/microsoft_gsl/default.nix
@@ -1,44 +1,46 @@
-{ lib, stdenv, fetchFromGitHub, catch, cmake
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, gtest
+, fetchurl
+, pkg-config
 }:
 
-let
-  nativeBuild = stdenv.hostPlatform == stdenv.buildPlatform;
-in
 stdenv.mkDerivation rec {
   pname = "microsoft_gsl";
-  version = "2.1.0";
+  version = "3.1.0";
 
   src = fetchFromGitHub {
     owner = "Microsoft";
     repo = "GSL";
     rev = "v${version}";
-    sha256 = "09f08lxqm00152bx9yrizlgabzpzxlpbv06h00z4w78yxywgxlgx";
+    sha256 = "sha256-gIpyuNlp3mvR8r1Azs2r76ElEodykRLGAwMN4BDJez0=";
   };
 
-  # build phase just runs the unit tests, so skip it if
-  # we're doing a cross build
-  nativeBuildInputs = [ catch cmake ];
-  buildPhase = if nativeBuild then "make" else "true";
+  patches = [
+    # Search for GoogleTest via pkg-config first, ref: https://github.com/NixOS/nixpkgs/pull/130525
+    (fetchurl {
+      url = "https://github.com/microsoft/GSL/commit/f5cf01083baf7e8dc8318db3648bc6098dc32d67.patch";
+      sha256 = "sha256-uouv35crtly8kYhKyvMyZkqwTKt1jXC6dZjw4sQ6uv0=";
+    })
+  ];
 
-  # https://github.com/microsoft/GSL/issues/806
-  cmakeFlags = lib.optionals stdenv.cc.isGNU
-    [ "-DCMAKE_CXX_FLAGS=-Wno-catch-value" ];
+  nativeBuildInputs = [ cmake pkg-config ];
+  buildInputs = [ gtest ];
 
-  installPhase = ''
-    mkdir -p $out/include
-    mv ../include/ $out/
-  '';
+  doCheck = true;
 
   meta = with lib; {
     description = "C++ Core Guideline support library";
     longDescription = ''
-     The Guideline Support Library (GSL) contains functions and types that are suggested for
-     use by the C++ Core Guidelines maintained by the Standard C++ Foundation.
-     This package contains Microsoft's implementation of GSL.
+      The Guideline Support Library (GSL) contains functions and types that are suggested for
+      use by the C++ Core Guidelines maintained by the Standard C++ Foundation.
+      This package contains Microsoft's implementation of GSL.
     '';
-    homepage    = "https://github.com/Microsoft/GSL";
-    license     = licenses.mit;
-    platforms   = platforms.all;
+    homepage = "https://github.com/Microsoft/GSL";
+    license = licenses.mit;
+    platforms = platforms.all;
     maintainers = with maintainers; [ thoughtpolice xwvvvvwx yuriaisaka ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/mp4v2/default.nix b/nixpkgs/pkgs/development/libraries/mp4v2/default.nix
index 7a6bbb552027..fe0049c1f384 100644
--- a/nixpkgs/pkgs/development/libraries/mp4v2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mp4v2/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     (fetchurl {
       # 2020-06-19: NOTE: # Fix build with C++11
       # Close when https://github.com/TechSmith/mp4v2/pull/36 merged/closed.
-      url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/libmp4v2-c++11.patch?id=203f5a72bc97ffe089b424c47b07dd9eaea35713";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/203f5a72bc97ffe089b424c47b07dd9eaea35713/trunk/libmp4v2-c++11.patch";
       sha256 = "0sbn0il7lmk77yrjyb4f0a3z3h8gsmdkscvz5n9hmrrrhrwf672w";
     })
   ] ++ lib.optionals stdenv.cc.isClang [
diff --git a/nixpkgs/pkgs/development/libraries/mpfi/default.nix b/nixpkgs/pkgs/development/libraries/mpfi/default.nix
index 5ff0dcd29e7e..152c35e6e6f0 100644
--- a/nixpkgs/pkgs/development/libraries/mpfi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mpfi/default.nix
@@ -16,7 +16,6 @@ stdenv.mkDerivation rec {
   buildInputs = [ mpfr ];
 
   meta = {
-    inherit version;
     description = "A multiple precision interval arithmetic library based on MPFR";
     homepage = "https://gforge.inria.fr/projects/mpfi/";
     license = lib.licenses.lgpl21Plus;
diff --git a/nixpkgs/pkgs/development/libraries/mpir/default.nix b/nixpkgs/pkgs/development/libraries/mpir/default.nix
index 36505b4a6670..b8ee4fb4e765 100644
--- a/nixpkgs/pkgs/development/libraries/mpir/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mpir/default.nix
@@ -15,7 +15,6 @@ stdenv.mkDerivation rec {
     ++ lib.optionals stdenv.isLinux [ "--enable-fat" ];
 
   meta = {
-    inherit version;
     description = "A highly optimised library for bignum arithmetic forked from GMP";
     license = lib.licenses.lgpl3Plus;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/libraries/msilbc/default.nix b/nixpkgs/pkgs/development/libraries/msilbc/default.nix
index cdcc0548abbc..b5eaee26aa03 100644
--- a/nixpkgs/pkgs/development/libraries/msilbc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/msilbc/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, ilbc, mediastreamer, pkg-config }:
 
 stdenv.mkDerivation rec {
-  name = "msilbc-2.1.2";
+  pname = "msilbc";
+  version = "2.1.2";
 
   src = fetchurl {
-    url = "mirror://savannah/linphone/plugins/sources/${name}.tar.gz";
+    url = "mirror://savannah/linphone/plugins/sources/${pname}-${version}.tar.gz";
     sha256 = "07j02y994ybh274fp7ydjvi76h34y2c34ndwjpjfcwwr03b48cfp";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/mtdev/default.nix b/nixpkgs/pkgs/development/libraries/mtdev/default.nix
index 7873608e5891..4a510762f7f0 100644
--- a/nixpkgs/pkgs/development/libraries/mtdev/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mtdev/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "mtdev-1.1.6";
+  pname = "mtdev";
+  version = "1.1.6";
 
   src = fetchurl {
-    url = "http://bitmath.org/code/mtdev/${name}.tar.bz2";
+    url = "https://bitmath.org/code/mtdev/${pname}-${version}.tar.bz2";
     sha256 = "1q700h9dqcm3zl6c3gj0qxxjcx6ibw2c51wjijydhwdcm26v5mqm";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/mysocketw/default.nix b/nixpkgs/pkgs/development/libraries/mysocketw/default.nix
index 52d294525a0c..7997fc18d111 100644
--- a/nixpkgs/pkgs/development/libraries/mysocketw/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mysocketw/default.nix
@@ -1,9 +1,10 @@
 { lib, stdenv, fetchurl, openssl }:
 
-stdenv.mkDerivation {
-  name = "mysocketw-031026";
+stdenv.mkDerivation rec {
+  pname = "mysocketw";
+  version = "031026";
   src = fetchurl {
-    url = "http://www.digitalfanatics.org/cal/socketw/files/SocketW031026.tar.gz";
+    url = "https://www.digitalfanatics.org/cal/socketw/files/SocketW${version}.tar.gz";
     sha256 = "0crinikhdl7xihzmc3k3k41pgxy16d5ci8m9sza1lbibns7pdwj4";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/nanopb/test-message-with-annotations/default.nix b/nixpkgs/pkgs/development/libraries/nanopb/test-message-with-annotations/default.nix
index 618d7c521ce0..9eca4dbb9368 100644
--- a/nixpkgs/pkgs/development/libraries/nanopb/test-message-with-annotations/default.nix
+++ b/nixpkgs/pkgs/development/libraries/nanopb/test-message-with-annotations/default.nix
@@ -9,15 +9,15 @@ stdenv.mkDerivation {
   # proto_path. By default the current directory is automatically added to the
   # proto_path. I tried using --proto_path ${./.} ${./simple.proto} and it did
   # not work because they end up in the store at different locations.
-  installPhase = ":";
+  dontInstall = true;
   buildPhase = ''
     mkdir $out
 
     ${protobuf}/bin/protoc --proto_path=. --proto_path=${nanopb}/share/nanopb/generator/proto --plugin=protoc-gen-nanopb=${nanopb}/bin/protoc-gen-nanopb --nanopb_out=$out withannotations.proto
   '';
 
-  docheck = true;
-  checkphase = ''
+  doCheck = true;
+  checkPhase = ''
     grep -q WithAnnotations $out/withannotations.pb.c || (echo "error: WithAnnotations not found in $out/withannotations.pb.c"; exit 1)
     grep -q WithAnnotations $out/withannotations.pb.h || (echo "error: WithAnnotations not found in $out/withannotations.pb.h"; exit 1)
     grep -q "pb_byte_t uuid\[16\]" $out/withannotations.pb.h || (echo "error: uuid is not of type pb_byte_t and of size 16 in $out/withannotations.pb.h"; exit 1)
diff --git a/nixpkgs/pkgs/development/libraries/nanopb/test-message-with-options/default.nix b/nixpkgs/pkgs/development/libraries/nanopb/test-message-with-options/default.nix
index c15b51f71977..0030158df91b 100644
--- a/nixpkgs/pkgs/development/libraries/nanopb/test-message-with-options/default.nix
+++ b/nixpkgs/pkgs/development/libraries/nanopb/test-message-with-options/default.nix
@@ -9,15 +9,15 @@ stdenv.mkDerivation {
   # proto_path. By default the current directory is automatically added to the
   # proto_path. I tried using --proto_path ${./.} ${./simple.proto} and it did
   # not work because they end up in the store at different locations.
-  installPhase = ":";
+  dontInstall = true;
   buildPhase = ''
     mkdir $out
 
     ${protobuf}/bin/protoc --plugin=protoc-gen-nanopb=${nanopb}/bin/protoc-gen-nanopb --nanopb_out=$out withoptions.proto
   '';
 
-  docheck = true;
-  checkphase = ''
+  doCheck = true;
+  checkPhase = ''
     grep -q WithOptions $out/withoptions.pb.c || (echo "error: WithOptions not found in $out/withoptions.pb.c"; exit 1)
     grep -q WithOptions $out/withoptions.pb.h || (echo "error: WithOptions not found in $out/withoptions.pb.h"; exit 1)
     grep -q "pb_byte_t uuid\[16\]" $out/withoptions.pb.h || (echo "error: uuid is not of type pb_byte_t and of size 16 in $out/withoptions.pb.h"; exit 1)
diff --git a/nixpkgs/pkgs/development/libraries/nanopb/test-simple-proto2/default.nix b/nixpkgs/pkgs/development/libraries/nanopb/test-simple-proto2/default.nix
index a915e7785370..d1d3e1a855a7 100644
--- a/nixpkgs/pkgs/development/libraries/nanopb/test-simple-proto2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/nanopb/test-simple-proto2/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
   # proto_path. By default the current directory is automatically added to the
   # proto_path. I tried using --proto_path ${./.} ${./simple.proto} and it did
   # not work because they end up in the store at different locations.
-  installPhase = ":";
+  dontInstall = true;
   buildPhase = ''
     mkdir $out
 
diff --git a/nixpkgs/pkgs/development/libraries/nanopb/test-simple-proto3/default.nix b/nixpkgs/pkgs/development/libraries/nanopb/test-simple-proto3/default.nix
index 3e2bba731b9f..71507054458f 100644
--- a/nixpkgs/pkgs/development/libraries/nanopb/test-simple-proto3/default.nix
+++ b/nixpkgs/pkgs/development/libraries/nanopb/test-simple-proto3/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
   # proto_path. By default the current directory is automatically added to the
   # proto_path. I tried using --proto_path ${./.} ${./simple.proto} and it did
   # not work because they end up in the store at different locations.
-  installPhase = ":";
+  dontInstall = true;
   buildPhase = ''
     mkdir $out
 
diff --git a/nixpkgs/pkgs/development/libraries/ndpi/default.nix b/nixpkgs/pkgs/development/libraries/ndpi/default.nix
index c3df23052e22..4048f28e5d77 100644
--- a/nixpkgs/pkgs/development/libraries/ndpi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ndpi/default.nix
@@ -1,11 +1,9 @@
 { lib, stdenv, fetchFromGitHub, which, autoconf, automake, libtool, libpcap
 , pkg-config }:
 
-let version = "3.4"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "ndpi";
-  inherit version;
+  version = "3.4";
 
   src = fetchFromGitHub {
     owner = "ntop";
diff --git a/nixpkgs/pkgs/development/libraries/nix-plugins/default.nix b/nixpkgs/pkgs/development/libraries/nix-plugins/default.nix
index 915e733473e1..a4c18e9f0466 100644
--- a/nixpkgs/pkgs/development/libraries/nix-plugins/default.nix
+++ b/nixpkgs/pkgs/development/libraries/nix-plugins/default.nix
@@ -1,8 +1,8 @@
 { lib, stdenv, fetchFromGitHub, nix, cmake, pkg-config, boost }:
-let version = "6.0.0"; in
-stdenv.mkDerivation {
+
+stdenv.mkDerivation rec {
   pname = "nix-plugins";
-  inherit version;
+  version = "6.0.0";
 
   src = fetchFromGitHub {
     owner = "shlevy";
diff --git a/nixpkgs/pkgs/development/libraries/notcurses/default.nix b/nixpkgs/pkgs/development/libraries/notcurses/default.nix
index dd2a816f7d32..725392772d8d 100644
--- a/nixpkgs/pkgs/development/libraries/notcurses/default.nix
+++ b/nixpkgs/pkgs/development/libraries/notcurses/default.nix
@@ -3,7 +3,7 @@
   multimediaSupport ? true
 }:
 let
-  version = "2.2.4";
+  version = "2.3.8";
 in
 stdenv.mkDerivation {
   pname = "notcurses";
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
     owner  = "dankamongmen";
     repo   = "notcurses";
     rev    = "v${version}";
-    sha256 = "sha256-FScs6eQxhRMEyPDSD+50RO1B6DIAo+KnvHP3RO2oAnw=";
+    sha256 = "sha256-CTMFXTmOnBUCm0KdVNBoDT08arr01XTHdELFiTayk3E=";
   };
 
   meta = {
diff --git a/nixpkgs/pkgs/development/libraries/nss/3.53.nix b/nixpkgs/pkgs/development/libraries/nss/3.53.nix
index 9f281743f6cf..5d44a4d2469d 100644
--- a/nixpkgs/pkgs/development/libraries/nss/3.53.nix
+++ b/nixpkgs/pkgs/development/libraries/nss/3.53.nix
@@ -9,15 +9,12 @@ let
     url = "http://dev.gentoo.org/~polynomial-c/mozilla/nss-3.15.4-pem-support-20140109.patch.xz";
     sha256 = "10ibz6y0hknac15zr6dw4gv9nb5r5z9ym6gq18j3xqx7v7n3vpdw";
   };
-  version = "3.53.1";
-  underscoreVersion = builtins.replaceStrings ["."] ["_"] version;
-
 in stdenv.mkDerivation rec {
   pname = "nss";
-  inherit version;
+  version = "3.53.1";
 
   src = fetchurl {
-    url = "mirror://mozilla/security/nss/releases/NSS_${underscoreVersion}_RTM/src/${pname}-${version}.tar.gz";
+    url = "mirror://mozilla/security/nss/releases/NSS_${lib.replaceStrings ["."] ["_"] version}_RTM/src/${pname}-${version}.tar.gz";
     sha256 = "05jk65x3zy6q8lx2djj8ik7kg741n88iy4n3bblw89cv0xkxxk1d";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/ntrack/default.nix b/nixpkgs/pkgs/development/libraries/ntrack/default.nix
index cb9f9ff575f8..eef6bbdd580f 100644
--- a/nixpkgs/pkgs/development/libraries/ntrack/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ntrack/default.nix
@@ -1,12 +1,8 @@
 { lib, stdenv, fetchurl, qt4, pkg-config, libnl, python }:
 
-let
-  version = "016";
-in
-
 stdenv.mkDerivation rec {
   pname = "ntrack";
-  inherit version;
+  version = "016";
 
   src = fetchurl {
     url = "https://launchpad.net/ntrack/main/${version}/+download/${pname}-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/nvidia-video-sdk/default.nix b/nixpkgs/pkgs/development/libraries/nvidia-video-sdk/default.nix
index 22161e3dc1d6..ab674833ebfc 100644
--- a/nixpkgs/pkgs/development/libraries/nvidia-video-sdk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/nvidia-video-sdk/default.nix
@@ -1,11 +1,12 @@
 { lib, stdenv, fetchurl, unzip }:
 
-stdenv.mkDerivation {
-  name = "nvidia-video-sdk-6.0.1";
+stdenv.mkDerivation rec {
+  pname = "nvidia-video-sdk";
+  version = "6.0.1";
 
   src = fetchurl {
     url = "https://developer.nvidia.com/video-sdk-601";
-    name = "nvidia_video_sdk_6.0.1.zip";
+    name = "nvidia_video_sdk_${version}.zip";
     sha256 = "08h1vnqsv22js9v3pyim5yb80z87baxb7s2g5gsvvjax07j7w8h5";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/ode/default.nix b/nixpkgs/pkgs/development/libraries/ode/default.nix
index d9c82f79bb35..211821e084cc 100644
--- a/nixpkgs/pkgs/development/libraries/ode/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ode/default.nix
@@ -2,16 +2,16 @@
 
 stdenv.mkDerivation rec {
   pname = "ode";
-  version = "0.12";
+  version = "0.16.2";
 
   src = fetchurl {
-    url = "mirror://sourceforge/opende/ode-${version}.tar.bz2";
-    sha256 = "0l63ymlkgfp5cb0ggqwm386lxmc3al21nb7a07dd49f789d33ib5";
+    url = "https://bitbucket.org/odedevs/${pname}/downloads/${pname}-${version}.tar.gz";
+    sha256 = "08hgh4gqdk77jcw8b7gq2mwsfg4a5v5y0j7g42bxiqhmn3ffnsmj";
   };
 
   meta = with lib; {
     description = "Open Dynamics Engine";
-    homepage = "https://sourceforge.net/projects/opende";
+    homepage = "https://www.ode.org";
     platforms = platforms.linux;
     license = with licenses; [ bsd3 lgpl21 lgpl3 zlib ];
   };
diff --git a/nixpkgs/pkgs/development/libraries/opencolorio/default.nix b/nixpkgs/pkgs/development/libraries/opencolorio/default.nix
index b93e517def66..522c8cfa4a13 100644
--- a/nixpkgs/pkgs/development/libraries/opencolorio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/opencolorio/default.nix
@@ -1,5 +1,5 @@
 {
-  stdenv, lib, fetchFromGitHub, symlinkJoin,
+  stdenv, lib, fetchFromGitHub,
   cmake, expat, libyamlcpp, ilmbase, pystring, # Base dependencies
 
   glew, freeglut, # Only required on Linux
@@ -25,8 +25,8 @@ stdenv.mkDerivation rec {
     sha256 = "194j9jp5c8ws0fryiz936wyinphnpzwpqnzvw9ryx6rbiwrba487";
   };
 
-  nativeBuildInputs = [ cmake (symlinkJoin { name = "expat"; paths = [ expat.out expat.dev ]; }) ];
-  buildInputs = [ expat.out libyamlcpp ilmbase pystring ]
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ expat libyamlcpp ilmbase pystring ]
     ++ lib.optionals stdenv.hostPlatform.isLinux [ glew freeglut ]
     ++ lib.optionals stdenv.hostPlatform.isDarwin [ Carbon GLUT Cocoa ]
     ++ lib.optionals pythonBindings [ python3Packages.python python3Packages.pybind11 ]
diff --git a/nixpkgs/pkgs/development/libraries/opencore-amr/default.nix b/nixpkgs/pkgs/development/libraries/opencore-amr/default.nix
index d1348d96e3b1..26b2715658bb 100644
--- a/nixpkgs/pkgs/development/libraries/opencore-amr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/opencore-amr/default.nix
@@ -1,11 +1,8 @@
 { lib, stdenv, fetchurl }:
 
-let
-    version = "0.1.5";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "opencore-amr";
-  inherit version;
+  version = "0.1.5";
   src = fetchurl {
     url = "https://vorboss.dl.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-${version}.tar.gz";
     sha256 = "0hfk9khz3by0119h3jdwgdfd7jgkdbzxnmh1wssvylgnsnwnq01c";
diff --git a/nixpkgs/pkgs/development/libraries/openexr/default.nix b/nixpkgs/pkgs/development/libraries/openexr/default.nix
index dc8004d8f481..d60b7b7fc436 100644
--- a/nixpkgs/pkgs/development/libraries/openexr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openexr/default.nix
@@ -9,7 +9,7 @@
 
 stdenv.mkDerivation rec {
   pname = "openexr";
-  version = "2.5.3";
+  version = "2.5.7";
 
   outputs = [ "bin" "dev" "out" "doc" ];
 
@@ -17,14 +17,14 @@ stdenv.mkDerivation rec {
     owner = "AcademySoftwareFoundation";
     repo = "openexr";
     rev = "v${version}";
-    sha256 = "xyYdRrwAYdnRZmErIK0tZspguqtrXvixO5+6nMDoOh8=";
+    sha256 = "1vja0rbilcd1wn184w8nbcmck00n7bfwlddwiaxw8dhj64nx4468";
   };
 
   patches = [
     # Fix pkg-config paths
     (fetchpatch {
-      url = "https://github.com/AcademySoftwareFoundation/openexr/commit/6442fb71a86c09fb0a8118b6dbd93bcec4883a3c.patch";
-      sha256 = "bwD5WTKPT4DjOJDnPXIvT5hJJkH0b71Vo7qupWO9nPA=";
+      url = "https://github.com/AcademySoftwareFoundation/openexr/commit/2f19a01923885fda75ec9d19332de080ec7102bd.patch";
+      sha256 = "1yxmrdzq1x1911wdzwnzr29jmg2r4wd4yx3vhjn0y5dpny0ri5y5";
     })
   ];
 
diff --git a/nixpkgs/pkgs/development/libraries/openwsman/default.nix b/nixpkgs/pkgs/development/libraries/openwsman/default.nix
index 05f1ef65a304..9276ccac6fd2 100644
--- a/nixpkgs/pkgs/development/libraries/openwsman/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openwsman/default.nix
@@ -35,6 +35,5 @@ stdenv.mkDerivation rec {
     license      = licenses.bsd3;
     maintainers  = with maintainers; [ deepfire ];
     platforms    = platforms.linux; # PAM is not available on Darwin
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix b/nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix
index df7ce6fd4b13..8947c6f42394 100644
--- a/nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix
+++ b/nixpkgs/pkgs/development/libraries/oracle-instantclient/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchurl
 , autoPatchelfHook
 , fixDarwinDylibNames
@@ -17,7 +18,7 @@ let
   throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
 
   # assemble list of components
-  components = [ "basic" "sdk" "sqlplus" ] ++ optional odbcSupport "odbc";
+  components = [ "basic" "sdk" "sqlplus" "tools" ] ++ optional odbcSupport "odbc";
 
   # determine the version number, there might be different ones per architecture
   version = {
@@ -28,22 +29,23 @@ let
   # hashes per component and architecture
   hashes = {
     x86_64-linux = {
-      basic   = "1yk4ng3a9ka1mzgfph9br6rwclagbgfvmg6kja11nl5dapxdzaxy";
-      sdk     = "115v1gqr0czy7dcf2idwxhc6ja5b0nind0mf1rn8iawgrw560l99";
+      basic = "1yk4ng3a9ka1mzgfph9br6rwclagbgfvmg6kja11nl5dapxdzaxy";
+      sdk = "115v1gqr0czy7dcf2idwxhc6ja5b0nind0mf1rn8iawgrw560l99";
       sqlplus = "0zj5h84ypv4n4678kfix6jih9yakb277l9hc0819iddc0a5slbi5";
-      odbc    = "1g1z6pdn76dp440fh49pm8ijfgjazx4cvxdi665fsr62h62xkvch";
+      tools = "1q19blr0gz1c8bq0bnv1njzflrp03hf82ngid966xc6gwmqpkdsk";
+      odbc = "1g1z6pdn76dp440fh49pm8ijfgjazx4cvxdi665fsr62h62xkvch";
     };
     x86_64-darwin = {
-      basic   = "f4335c1d53e8188a3a8cdfb97494ff87c4d0f481309284cf086dc64080a60abd";
-      sdk     = "b46b4b87af593f7cfe447cfb903d1ae5073cec34049143ad8cdc9f3e78b23b27";
+      basic = "f4335c1d53e8188a3a8cdfb97494ff87c4d0f481309284cf086dc64080a60abd";
+      sdk = "b46b4b87af593f7cfe447cfb903d1ae5073cec34049143ad8cdc9f3e78b23b27";
       sqlplus = "f7565c3cbf898b0a7953fbb0017c5edd9d11d1863781588b7caf3a69937a2e9e";
-      odbc    = "f91da40684abaa866aa059eb26b1322f2d527670a1937d678404c991eadeb725";
+      tools = "b2bc474f98da13efdbc77fd05f559498cd8c08582c5b9038f6a862215de33f2c";
+      odbc = "f91da40684abaa866aa059eb26b1322f2d527670a1937d678404c991eadeb725";
     };
   }.${stdenv.hostPlatform.system} or throwSystem;
 
   # rels per component and architecture, optional
-  rels = {
-  }.${stdenv.hostPlatform.system} or {};
+  rels = { }.${stdenv.hostPlatform.system} or { };
 
   # convert platform to oracle architecture names
   arch = {
@@ -70,13 +72,15 @@ let
   };
 
   # assemble srcs
-  srcs = map (component:
-    (fetcher (srcFilename component arch version rels.${component} or "") hashes.${component} or ""))
-  components;
+  srcs = map
+    (component:
+      (fetcher (srcFilename component arch version rels.${component} or "") hashes.${component} or ""))
+    components;
 
   pname = "oracle-instantclient";
   extLib = stdenv.hostPlatform.extensions.sharedLibrary;
-in stdenv.mkDerivation {
+in
+stdenv.mkDerivation {
   inherit pname version srcs;
 
   buildInputs = [ stdenv.cc.cc.lib ]
@@ -87,13 +91,13 @@ in stdenv.mkDerivation {
     ++ optional stdenv.isLinux autoPatchelfHook
     ++ optional stdenv.isDarwin fixDarwinDylibNames;
 
-  outputs = [ "out" "dev" "lib"];
+  outputs = [ "out" "dev" "lib" ];
 
   unpackCmd = "unzip $curSrc";
 
   installPhase = ''
     mkdir -p "$out/"{bin,include,lib,"share/java","share/${pname}-${version}/demo/"} $lib/lib
-    install -Dm755 {adrci,genezi,uidrvci,sqlplus} $out/bin
+    install -Dm755 {adrci,genezi,uidrvci,sqlplus,exp,expdp,imp,impdp} $out/bin
 
     # cp to preserve symlinks
     cp -P *${extLib}* $lib/lib
@@ -124,6 +128,6 @@ in stdenv.mkDerivation {
     license = licenses.unfree;
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
     maintainers = with maintainers; [ flokli ];
-    hydraPlatforms = [];
+    hydraPlatforms = [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/orocos-kdl/default.nix b/nixpkgs/pkgs/development/libraries/orocos-kdl/default.nix
index 032b67e683dc..4eb18c347c09 100644
--- a/nixpkgs/pkgs/development/libraries/orocos-kdl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/orocos-kdl/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   sourceRoot = "source/orocos_kdl";
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ eigen ];
+  propagatedBuildInputs = [ eigen ];
 
   meta = with lib; {
     description = "Kinematics and Dynamics Library";
diff --git a/nixpkgs/pkgs/development/libraries/osip/default.nix b/nixpkgs/pkgs/development/libraries/osip/default.nix
index b7cfc5da9d3b..b0603cc454f6 100644
--- a/nixpkgs/pkgs/development/libraries/osip/default.nix
+++ b/nixpkgs/pkgs/development/libraries/osip/default.nix
@@ -13,6 +13,5 @@ stdenv.mkDerivation rec {
     description = "The GNU oSIP library, an implementation of the Session Initiation Protocol (SIP)";
     maintainers = with lib.maintainers; [ raskin ];
     platforms = lib.platforms.all;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/phash/default.nix b/nixpkgs/pkgs/development/libraries/phash/default.nix
index 250089c30b1c..8d3f3e987023 100644
--- a/nixpkgs/pkgs/development/libraries/phash/default.nix
+++ b/nixpkgs/pkgs/development/libraries/phash/default.nix
@@ -25,7 +25,6 @@ stdenv.mkDerivation rec {
   };
 
   meta = with lib; {
-    inherit version;
     description = "Compute the perceptual hash of an image";
     license = licenses.gpl3;
     maintainers = [maintainers.imalsogreg];
diff --git a/nixpkgs/pkgs/development/libraries/physics/hepmc3/default.nix b/nixpkgs/pkgs/development/libraries/physics/hepmc3/default.nix
index d4b98d57e110..629066d23a4e 100644
--- a/nixpkgs/pkgs/development/libraries/physics/hepmc3/default.nix
+++ b/nixpkgs/pkgs/development/libraries/physics/hepmc3/default.nix
@@ -9,11 +9,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "hepmc3";
-  version = "3.2.3";
+  version = "3.2.4";
 
   src = fetchurl {
     url = "http://hepmc.web.cern.ch/hepmc/releases/HepMC3-${version}.tar.gz";
-    sha256 = "sha256-jKrazCyWmIPNH5lLYieV/IhftLFdrYyK5kvL2/DL1H0=";
+    sha256 = "sha256-4Ij8z9GmwvjhCJ9FcQG+4eXHqXd+nVHGQZyKKIpJ4bs=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/physics/yoda/default.nix b/nixpkgs/pkgs/development/libraries/physics/yoda/default.nix
index c5a83f782f46..9398c4d2f36e 100644
--- a/nixpkgs/pkgs/development/libraries/physics/yoda/default.nix
+++ b/nixpkgs/pkgs/development/libraries/physics/yoda/default.nix
@@ -25,6 +25,13 @@ stdenv.mkDerivation rec {
       sha256 = "sha256-MZTOIt468bdPCS7UVfr5hQZUsVy3TpY/TjRrNySIL70=";
       excludes = [ "ChangeLog" ];
     })
+    # fix a minor bug
+    # https://gitlab.com/hepcedar/yoda/-/merge_requests/45
+    (fetchpatch {
+      name = "yoda-fix-yodascale-for-gz.patch";
+      url = "https://gitlab.com/hepcedar/yoda/-/commit/b03162aeaa2c99e38512ba6e4818d2e0a825b757.diff";
+      sha256 = "sha256-IMuPalQ/GKcdJOKAlwE/IRWtxDdu0inoj+A9nbRl6Gs=";
+    })
   ];
 
   nativeBuildInputs = with python.pkgs; [ cython makeWrapper ];
diff --git a/nixpkgs/pkgs/development/libraries/plib/default.nix b/nixpkgs/pkgs/development/libraries/plib/default.nix
index 7a1c39715797..da95f9ef698c 100644
--- a/nixpkgs/pkgs/development/libraries/plib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/plib/default.nix
@@ -2,11 +2,12 @@
 , libXi, libSM, libXmu, libXext, libX11 }:
 
 stdenv.mkDerivation rec {
-  name = "plib-1.8.5";
+  pname = "plib";
+  version = "1.8.5";
 
   src = fetchurl {
     # XXX: The author doesn't use the orthodox SF way to store tarballs.
-    url = "http://plib.sourceforge.net/dist/${name}.tar.gz";
+    url = "http://plib.sourceforge.net/dist/${pname}-${version}.tar.gz";
     sha256 = "0cha71mflpa10vh2l7ipyqk67dq2y0k5xbafwdks03fwdyzj4ns8";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/pmix/default.nix b/nixpkgs/pkgs/development/libraries/pmix/default.nix
index b7adc3d2a423..7791973bb127 100644
--- a/nixpkgs/pkgs/development/libraries/pmix/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pmix/default.nix
@@ -2,12 +2,9 @@
 , libtool, flex, libevent, hwloc, munge, zlib, pandoc
 } :
 
-let
-  version = "3.2.3";
-
-in stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "pmix";
-  inherit version;
+  version = "3.2.3";
 
   src = fetchFromGitHub {
     repo = "openpmix";
diff --git a/nixpkgs/pkgs/development/libraries/polkit/default.nix b/nixpkgs/pkgs/development/libraries/polkit/default.nix
index bc7f7e80d9c2..a8b012a20998 100644
--- a/nixpkgs/pkgs/development/libraries/polkit/default.nix
+++ b/nixpkgs/pkgs/development/libraries/polkit/default.nix
@@ -20,28 +20,14 @@ in
 
 stdenv.mkDerivation rec {
   pname = "polkit";
-  version = "0.118";
+  version = "0.119";
 
   src = fetchurl {
     url = "https://www.freedesktop.org/software/${pname}/releases/${pname}-${version}.tar.gz";
-    sha256 = "0swmg37jsxsxfsd2b3qm0l3zxr9ldvhpjw8lsgq3j8q7wy2fjm3d";
+    sha256 = "0p0zzmr0kh3mpmqya4q27y4h9b920zp5ya0i8909ahp9hvdrymy8";
   };
 
-  patches = [
-    # Don't use etc/dbus-1/system.d
-    # Upstream MR: https://gitlab.freedesktop.org/polkit/polkit/merge_requests/11
-    (fetchpatch {
-      url = "https://gitlab.freedesktop.org/polkit/polkit/commit/5dd4e22efd05d55833c4634b56e473812b5acbf2.patch";
-      sha256 = "17lv7xj5ksa27iv4zpm4zwd4iy8zbwjj4ximslfq3sasiz9kxhlp";
-    })
-    (fetchpatch {
-      # https://www.openwall.com/lists/oss-security/2021/06/03/1
-      # https://gitlab.freedesktop.org/polkit/polkit/-/merge_requests/79
-      name = "CVE-2021-3560.patch";
-      url = "https://gitlab.freedesktop.org/polkit/polkit/-/commit/a04d13affe0fa53ff618e07aa8f57f4c0e3b9b81.patch";
-      sha256 = "157ddsizgr290jsb8fpafrc37gc1qw5pdvl351vnn3pzhqs7n6f4";
-    })
-  ] ++ lib.optionals stdenv.hostPlatform.isMusl [
+  patches = lib.optionals stdenv.hostPlatform.isMusl [
     # Make netgroup support optional (musl does not have it)
     # Upstream MR: https://gitlab.freedesktop.org/polkit/polkit/merge_requests/10
     # We use the version of the patch that Alpine uses successfully.
@@ -110,18 +96,22 @@ stdenv.mkDerivation rec {
   inherit doCheck;
   checkInputs = [ dbus ];
   checkPhase = ''
+    runHook preCheck
+
     # unfortunately this test needs python-dbusmock, but python-dbusmock needs polkit,
     # leading to a circular dependency
     substituteInPlace test/Makefile --replace polkitbackend ""
 
     # tests need access to the system bus
     dbus-run-session --config-file=${./system_bus.conf} -- sh -c 'DBUS_SYSTEM_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS make check'
+
+    runHook postCheck
   '';
 
   meta = with lib; {
     homepage = "http://www.freedesktop.org/wiki/Software/polkit";
     description = "A toolkit for defining and handling the policy that allows unprivileged processes to speak to privileged processes";
-    license = licenses.gpl2;
+    license = licenses.lgpl2Plus;
     platforms = platforms.unix;
     maintainers = teams.freedesktop.members ++ (with maintainers; [ ]);
   };
diff --git a/nixpkgs/pkgs/development/libraries/portaudio/default.nix b/nixpkgs/pkgs/development/libraries/portaudio/default.nix
index efa68146e8d8..840c9e773f49 100644
--- a/nixpkgs/pkgs/development/libraries/portaudio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/portaudio/default.nix
@@ -1,32 +1,32 @@
-{ lib, stdenv, fetchurl, alsa-lib, pkg-config, libjack2
-, AudioUnit, AudioToolbox, CoreAudio, CoreServices, Carbon }:
-
-stdenv.mkDerivation {
-  name = "portaudio-190600-20161030";
+{ lib
+, stdenv
+, fetchurl
+, alsa-lib
+, pkg-config
+, AudioUnit
+, AudioToolbox
+, CoreAudio
+, CoreServices
+, Carbon }:
+
+stdenv.mkDerivation rec {
+  pname = "portaudio";
+  version =  "190700_20210406";
 
   src = fetchurl {
-    url = "http://www.portaudio.com/archives/pa_stable_v190600_20161030.tgz";
-    sha256 = "04qmin6nj144b8qb9kkd9a52xfvm0qdgm8bg8jbl7s3frmyiv8pm";
+    url = "http://files.portaudio.com/archives/pa_stable_v${version}.tgz";
+    sha256 = "1vrdrd42jsnffh6rq8ap2c6fr4g9fcld89z649fs06bwqx1bzvs7";
   };
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ libjack2 ]
-    ++ lib.optional (!stdenv.isDarwin) alsa-lib;
+  buildInputs = lib.optional (!stdenv.isDarwin) alsa-lib;
 
   configureFlags = [ "--disable-mac-universal" "--enable-cxx" ];
 
-  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=nullability-inferred-on-nested-type -Wno-error=nullability-completeness-on-arrays";
+  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=deprecated-declarations -Wno-error=implicit-const-int-float-conversion -Wno-error=nullability-completeness-on-arrays";
 
   propagatedBuildInputs = lib.optionals stdenv.isDarwin [ AudioUnit AudioToolbox CoreAudio CoreServices Carbon ];
 
-  patchPhase = lib.optionalString stdenv.isDarwin ''
-    sed -i '50 i\
-      #include <CoreAudio/AudioHardware.h>\
-      #include <CoreAudio/AudioHardwareBase.h>\
-      #include <CoreAudio/AudioHardwareDeprecated.h>' \
-      include/pa_mac_core.h
-  '';
-
   # not sure why, but all the headers seem to be installed by the make install
   installPhase = ''
     make install
diff --git a/nixpkgs/pkgs/development/libraries/proj/default.nix b/nixpkgs/pkgs/development/libraries/proj/default.nix
index 3bbc4c6da33a..f22878ec8290 100644
--- a/nixpkgs/pkgs/development/libraries/proj/default.nix
+++ b/nixpkgs/pkgs/development/libraries/proj/default.nix
@@ -7,6 +7,7 @@
 , libtiff
 , curl
 , gtest
+, fetchpatch
 }:
 
 stdenv.mkDerivation rec {
@@ -20,6 +21,14 @@ stdenv.mkDerivation rec {
     sha256 = "0mymvfvs8xggl4axvlj7kc1ksd9g94kaz6w1vdv0x2y5mqk93gx9";
   };
 
+  patches = [
+    (fetchpatch { # https://github.com/OSGeo/PROJ/issues/2557
+      name = "gie_self_tests-fail.diff"; # included in >= 8.0.1
+      url = "https://github.com/OSGeo/PROJ/commit/6f1a3c4648bf06862dca0b3725cbb3b7ee0284e3.diff";
+      sha256 = "0gapny0a9c3r0x9szjgn86sspjrrf4vwbija77b17w6ci5cq4pdf";
+    })
+  ];
+
   postPatch = lib.optionalString (version == "7.2.1") ''
     substituteInPlace CMakeLists.txt \
       --replace "MAJOR 7 MINOR 2 PATCH 0" "MAJOR 7 MINOR 2 PATCH 1"
diff --git a/nixpkgs/pkgs/development/libraries/psqlodbc/default.nix b/nixpkgs/pkgs/development/libraries/psqlodbc/default.nix
index 82ee5c3ae44d..c1a86b1f3979 100644
--- a/nixpkgs/pkgs/development/libraries/psqlodbc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/psqlodbc/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libiodbc, postgresql, openssl }:
 
 stdenv.mkDerivation rec {
-  name = "psqlodbc-09.01.0200";
+  pname = "psqlodbc";
+  version = "09.01.0200";
 
   src = fetchurl {
-    url = "https://ftp.postgresql.org/pub/odbc/versions/src/${name}.tar.gz";
+    url = "https://ftp.postgresql.org/pub/odbc/versions/src/${pname}-${version}.tar.gz";
     sha256 = "0b4w1ahfpp34jpscfk2kv9050lh3xl9pvcysqvaigkcd0vsk1hl9";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/qmlbox2d/default.nix b/nixpkgs/pkgs/development/libraries/qmlbox2d/default.nix
index f5257ad0e8ef..fe0616b7d7a9 100644
--- a/nixpkgs/pkgs/development/libraries/qmlbox2d/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qmlbox2d/default.nix
@@ -1,6 +1,7 @@
 {lib, stdenv, qtdeclarative, fetchFromGitHub, qmake }:
 stdenv.mkDerivation {
-  name = "qml-box2d-2018-04-06";
+  pname = "qml-box2d";
+  version = "unstable-2018-04-06";
   src = fetchFromGitHub {
     owner = "qml-box2d";
     repo = "qml-box2d";
diff --git a/nixpkgs/pkgs/development/libraries/qoauth/default.nix b/nixpkgs/pkgs/development/libraries/qoauth/default.nix
index 2b0be6f0b3dd..2c62ea27d19b 100644
--- a/nixpkgs/pkgs/development/libraries/qoauth/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qoauth/default.nix
@@ -1,12 +1,15 @@
-{ lib, stdenv, fetchurl, qtbase, qmake, qca-qt5 }:
+{ lib, stdenv, fetchFromGitHub, qtbase, qmake, qca-qt5 }:
 
-stdenv.mkDerivation {
-  name = "qoauth-2.0.0";
+stdenv.mkDerivation rec {
+  pname = "qoauth";
+  version = "2.0.0";
 
-  src = fetchurl {
-    url = "https://github.com/ayoy/qoauth/archive/v2.0.0.tar.gz";
-    name = "qoauth-2.0.0.tar.gz";
-    sha256 = "a28005986410d333e03d077679cdf6c504ec5a33342867dc0f9fb0b74285e333";
+  src = fetchFromGitHub {
+    owner = "ayoy";
+    repo = "qoauth";
+    rev = "v${version}";
+    name = "qoauth-${version}.tar.gz";
+    sha256 = "1b2jdqs526ac635yb2whm049spcsk7almnnr6r5b4yqhq922anw3";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/5.12/default.nix b/nixpkgs/pkgs/development/libraries/qt-5/5.12/default.nix
index fcb6297f5191..77b8c3f525a2 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/5.12/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/5.12/default.nix
@@ -85,7 +85,7 @@ let
       # https://bugreports.qt.io/browse/QTBUG-77037
       (fetchpatch {
         name = "fix-build-with-pulseaudio-13.0.patch";
-        url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/qtbug-77037-workaround.patch?h=packages/qt5-webengine&id=fc77d6b3d5ec74e421b58f199efceb2593cbf951";
+        url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/fc77d6b3d5ec74e421b58f199efceb2593cbf951/trunk/qtbug-77037-workaround.patch";
         sha256 = "1gv733qfdn9746nbqqxzyjx4ijjqkkb7zb71nxax49nna5bri3am";
       })
 
diff --git a/nixpkgs/pkgs/development/libraries/qt-5/5.15/default.nix b/nixpkgs/pkgs/development/libraries/qt-5/5.15/default.nix
index 5cfca8d80c71..5d8688cfdc75 100644
--- a/nixpkgs/pkgs/development/libraries/qt-5/5.15/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qt-5/5.15/default.nix
@@ -125,6 +125,12 @@ let
         url = "https://github.com/qt/qtwebengine/commit/199ea00a9eea13315a652c62778738629185b059.patch";
         sha256 = "1b5k2g1v8913cvsgvp6ja4mcprjlk5vcwqzi0p1qq7b1wyi4f0g2";
       })
+      # Fix invisible fonts with glibc 2.33: https://github.com/NixOS/nixpkgs/issues/131074
+      (fetchpatch {
+        url = "https://src.fedoraproject.org/rpms/qt5-qtwebengine/raw/d122c011631137b79455850c363676c655cf9e09/f/qtwebengine-everywhere-src-5.15.5-%231904652.patch";
+        name = "qtwebengine-everywhere-src-5.15.5-_1904652.patch";
+        sha256 = "01q7hagq0ysii1jnrh5adm97vdm9cis592xr6im7accyw6hgcn7b";
+      })
     ] ++ optionals stdenv.isDarwin [
       ./qtwebengine-darwin-no-platform-check.patch
       ./qtwebengine-mac-dont-set-dsymutil-path.patch
diff --git a/nixpkgs/pkgs/development/libraries/qtwebkit-plugins/default.nix b/nixpkgs/pkgs/development/libraries/qtwebkit-plugins/default.nix
index 5bc30db059e7..dd6a7606f6e2 100644
--- a/nixpkgs/pkgs/development/libraries/qtwebkit-plugins/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qtwebkit-plugins/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub, qmake, qtwebkit, hunspell }:
 
 stdenv.mkDerivation {
-  name = "qtwebkit-plugins-2017-01-25";
+  pname = "qtwebkit-plugins";
+  version = "unstable-2017-01-25";
 
   src = fetchFromGitHub {
     owner = "QupZilla";
diff --git a/nixpkgs/pkgs/development/libraries/qwt/default.nix b/nixpkgs/pkgs/development/libraries/qwt/default.nix
index e158fe348856..a5dcfedb8491 100644
--- a/nixpkgs/pkgs/development/libraries/qwt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qwt/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, qt4, qmake4Hook }:
 
 stdenv.mkDerivation rec {
-  name = "qwt-5.2.3";
+  pname = "qwt";
+  version = "5.2.3";
 
   src = fetchurl {
-    url = "mirror://sourceforge/qwt/${name}.tar.bz2";
+    url = "mirror://sourceforge/qwt/${pname}-${version}.tar.bz2";
     sha256 = "1dqa096mm6n3bidfq2b67nmdsvsw4ndzzd1qhl6hn8skcwqazzip";
   };
 
@@ -17,7 +18,7 @@ stdenv.mkDerivation rec {
   '';
 
   preConfigure = ''
-    qmakeFlags="$qmakeFlags INSTALLBASE=$out -after doc.path=$out/share/doc/${name}"
+    qmakeFlags="$qmakeFlags INSTALLBASE=$out -after doc.path=$out/share/doc/${pname}-${version}"
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/rdkafka/default.nix b/nixpkgs/pkgs/development/libraries/rdkafka/default.nix
index 0d7483d3c2e3..cdd11c75a782 100644
--- a/nixpkgs/pkgs/development/libraries/rdkafka/default.nix
+++ b/nixpkgs/pkgs/development/libraries/rdkafka/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, zlib, pkg-config, python3, openssl }:
+{ lib, stdenv, fetchFromGitHub, zlib, zstd, pkg-config, python3, openssl }:
 
 stdenv.mkDerivation rec {
   pname = "rdkafka";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config python3 ];
 
-  buildInputs = [ zlib openssl ];
+  buildInputs = [ zlib zstd openssl ];
 
   NIX_CFLAGS_COMPILE = "-Wno-error=strict-overflow";
 
diff --git a/nixpkgs/pkgs/development/libraries/readosm/default.nix b/nixpkgs/pkgs/development/libraries/readosm/default.nix
index 760546fc471c..f177dc768a69 100644
--- a/nixpkgs/pkgs/development/libraries/readosm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/readosm/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, expat, zlib, geos, libspatialite }:
 
 stdenv.mkDerivation rec {
-  name = "readosm-1.1.0a";
+  pname = "readosm";
+  version = "1.1.0a";
 
   src = fetchurl {
-    url = "https://www.gaia-gis.it/gaia-sins/readosm-sources/${name}.tar.gz";
+    url = "https://www.gaia-gis.it/gaia-sins/readosm-sources/${pname}-${version}.tar.gz";
     sha256 = "0igif2bxf4dr82glxz9gyx5mmni0r2dsnx9p9k6pxv3c4lfhaz6v";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/safefile/default.nix b/nixpkgs/pkgs/development/libraries/safefile/default.nix
index 293a13dbddc4..2865ab06319f 100644
--- a/nixpkgs/pkgs/development/libraries/safefile/default.nix
+++ b/nixpkgs/pkgs/development/libraries/safefile/default.nix
@@ -17,7 +17,6 @@ stdenv.mkDerivation rec {
   };
 
   meta = {
-    inherit version;
     description = "File open routines to safely open a file when in the presence of an attack";
     license = lib.licenses.asl20 ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/libraries/sbc/default.nix b/nixpkgs/pkgs/development/libraries/sbc/default.nix
index 0ff6db175611..edab4037a154 100644
--- a/nixpkgs/pkgs/development/libraries/sbc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/sbc/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, libsndfile }:
 
 stdenv.mkDerivation rec {
-  name = "sbc-1.4";
+  pname = "sbc";
+  version = "1.4";
 
   src = fetchurl {
-    url = "http://www.kernel.org/pub/linux/bluetooth/${name}.tar.xz";
+    url = "https://www.kernel.org/pub/linux/bluetooth/${pname}-${version}.tar.xz";
     sha256 = "1jal98pnrjkzxlkiqy0ykh4qmgnydz9bmsp1jn581p5kddpg92si";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/sblim-sfcc/default.nix b/nixpkgs/pkgs/development/libraries/sblim-sfcc/default.nix
index c871f18e69b3..351eb5c15479 100644
--- a/nixpkgs/pkgs/development/libraries/sblim-sfcc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/sblim-sfcc/default.nix
@@ -23,6 +23,5 @@ stdenv.mkDerivation rec {
     license     = licenses.cpl10;
     maintainers = with maintainers; [ deepfire ];
     platforms   = platforms.unix;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/schroedinger/default.nix b/nixpkgs/pkgs/development/libraries/schroedinger/default.nix
index 7706366dd6da..2b49bfeb498e 100644
--- a/nixpkgs/pkgs/development/libraries/schroedinger/default.nix
+++ b/nixpkgs/pkgs/development/libraries/schroedinger/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, orc, pkg-config, fetchpatch, autoreconfHook }:
 
-stdenv.mkDerivation {
-  name = "schroedinger-1.0.11";
+stdenv.mkDerivation rec {
+  pname = "schroedinger";
+  version = "1.0.11";
 
   src = fetchurl {
-    url = "https://download.videolan.org/contrib/schroedinger-1.0.11.tar.gz";
+    url = "https://download.videolan.org/contrib/${pname}-${version}.tar.gz";
     sha256 = "04prr667l4sn4zx256v1z36a0nnkxfdqyln48rbwlamr6l3jlmqy";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/science/astronomy/wcslib/default.nix b/nixpkgs/pkgs/development/libraries/science/astronomy/wcslib/default.nix
index 58c2744605a2..6adf52514710 100644
--- a/nixpkgs/pkgs/development/libraries/science/astronomy/wcslib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/astronomy/wcslib/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "wcslib";
-  version = "7.6";
+  version = "7.7";
 
   src = fetchurl {
     url = "ftp://ftp.atnf.csiro.au/pub/software/wcslib/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-VLuMkhZ6fxP4qnP8S4oJeFJW0smCE0Z968eigqQxMYs=";
+    sha256 = "sha256-pwjmtOkOLNZCdDRxW1kbucPUAFyZcl7ElLjgvtLeU1U=";
   };
 
   nativeBuildInputs = [ flex ];
diff --git a/nixpkgs/pkgs/development/libraries/science/biology/EBTKS/default.nix b/nixpkgs/pkgs/development/libraries/science/biology/EBTKS/default.nix
index b75ac06627fb..2a832fc7c37a 100644
--- a/nixpkgs/pkgs/development/libraries/science/biology/EBTKS/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/biology/EBTKS/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "EBTKS";
-  name  = "${pname}-2017-09-23";
+  version  = "unstable-2017-09-23";
 
   src = fetchFromGitHub {
     owner  = "BIC-MNI";
diff --git a/nixpkgs/pkgs/development/libraries/science/math/lcalc/default.nix b/nixpkgs/pkgs/development/libraries/science/math/lcalc/default.nix
index 95034c3637a9..3f0cf45062f1 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/lcalc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/lcalc/default.nix
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
 
     (fetchpatch {
       name = "c++11.patch";
-      url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/lcalc-c++11.patch?h=packages/lcalc&id=3607b97df5a8c231191115b0cb5c62426b339e71";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-community/3607b97df5a8c231191115b0cb5c62426b339e71/trunk/lcalc-c++11.patch";
       sha256 = "1ccrl61lv2vvx8ggldq54m5d0n1iy6mym7qz0i8nj6yj0dshnpk3";
     })
   ] ++ lib.optional stdenv.isDarwin
diff --git a/nixpkgs/pkgs/development/libraries/science/math/liblapack/default.nix b/nixpkgs/pkgs/development/libraries/science/math/liblapack/default.nix
index 66f343d4912d..79e494a053b8 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/liblapack/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/liblapack/default.nix
@@ -7,12 +7,11 @@
 }:
 let
   inherit (lib) optional;
-  version = "3.9.1";
 in
 
 stdenv.mkDerivation rec {
   pname = "liblapack";
-  inherit version;
+  version = "3.9.1";
 
   src = fetchFromGitHub {
     owner = "Reference-LAPACK";
@@ -57,7 +56,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    inherit version;
     description = "Linear Algebra PACKage";
     homepage = "http://www.netlib.org/lapack/";
     license = licenses.bsd3;
diff --git a/nixpkgs/pkgs/development/libraries/science/math/liblbfgs/default.nix b/nixpkgs/pkgs/development/libraries/science/math/liblbfgs/default.nix
index 20c5a2070a05..3c194648c2a3 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/liblbfgs/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/liblbfgs/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
-stdenv.mkDerivation {
-  name = "liblbfgs-1.10";
+stdenv.mkDerivation rec {
+  pname = "liblbfgs";
+  version = "1.10";
 
   configureFlags = [ "--enable-sse2" ];
   src = fetchurl {
-    url = "https://github.com/downloads/chokkan/liblbfgs/liblbfgs-1.10.tar.gz";
+    url = "https://github.com/downloads/chokkan/liblbfgs/liblbfgs-${version}.tar.gz";
     sha256 = "1kv8d289rbz38wrpswx5dkhr2yh4fg4h6sszkp3fawxm09sann21";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/science/math/lrs/default.nix b/nixpkgs/pkgs/development/libraries/science/math/lrs/default.nix
index f7f981e223b2..063fead11650 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/lrs/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/lrs/default.nix
@@ -16,7 +16,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     description = "Implementation of the reverse search algorithm for vertex enumeration/convex hull problems";
     license = lib.licenses.gpl2 ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/libraries/science/math/metis/default.nix b/nixpkgs/pkgs/development/libraries/science/math/metis/default.nix
index b06b432372a7..da79f6d62499 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/metis/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/metis/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, unzip, cmake }:
 
-stdenv.mkDerivation {
-  name = "metis-5.1.0";
+stdenv.mkDerivation rec {
+  name = "metis";
+  version = "5.1.0";
 
   src = fetchurl {
-    url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz";
+    url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-${version}.tar.gz";
     sha256 = "1cjxgh41r8k6j029yxs8msp3z6lcnpm16g5pvckk35kc7zhfpykn";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/science/math/openspecfun/default.nix b/nixpkgs/pkgs/development/libraries/science/math/openspecfun/default.nix
index a341264d9894..cb72fbd2ca48 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/openspecfun/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/openspecfun/default.nix
@@ -1,10 +1,13 @@
-{ lib, stdenv, fetchurl, gfortran }:
+{ lib, stdenv, fetchFromGitHub, gfortran }:
 
-stdenv.mkDerivation {
-  name = "openspecfun-0.5.3";
-  src = fetchurl {
-    url = "https://github.com/JuliaLang/openspecfun/archive/v0.5.3.tar.gz";
-    sha256 = "1rs1bv8jq751fv9vq79890wqf9xlbjc7lvz3ighzyfczbyjcf18m";
+stdenv.mkDerivation rec {
+  pname = "openspecfun";
+  version = "0.5.3";
+  src = fetchFromGitHub {
+    owner = "JuliaLang";
+    repo = "openspecfun";
+    rev = "v${version}";
+    sha256 = "0pfw6l3ch7isz403llx7inxlvavqh01jh1hb9dpidi86sjjx9kfh";
   };
 
   makeFlags = [ "prefix=$(out)" ];
diff --git a/nixpkgs/pkgs/development/libraries/science/math/petsc/default.nix b/nixpkgs/pkgs/development/libraries/science/math/petsc/default.nix
index f06a028fe64f..ee495deedc1e 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/petsc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/petsc/default.nix
@@ -1,4 +1,20 @@
-{ lib, stdenv , darwin , fetchurl , blas , gfortran , lapack , python }:
+{ lib
+, stdenv
+, fetchurl
+, darwin
+, gfortran
+, python3
+, blas
+, lapack
+, mpi                   # generic mpi dependency
+, openssh               # required for openmpi tests
+, petsc-withp4est ? true
+, p4est
+, zlib                  # propagated by p4est but required by petsc
+}:
+
+# This version of PETSc does not support a non-MPI p4est build
+assert petsc-withp4est -> p4est.mpiSupport;
 
 stdenv.mkDerivation rec {
   pname = "petsc";
@@ -9,44 +25,53 @@ stdenv.mkDerivation rec {
     sha256 = "04vy3qyakikslc58qyv8c9qrwlivix3w6znc993i37cvfg99dch9";
   };
 
-  nativeBuildInputs = [ blas gfortran gfortran.cc.lib lapack python ];
-
-  # Upstream does some hot she-py-bang stuff, this change streamlines that
-  # process. The original script in upstream is both a shell script and a
-  # python script, where the shellscript just finds a suitable python
-  # interpreter to execute the python script. See
-  # https://github.com/NixOS/nixpkgs/pull/89299#discussion_r450203444
-  # for more details.
-  prePatch = ''
-    substituteInPlace configure \
-      --replace /bin/sh /usr/bin/python
-  '' + lib.optionalString stdenv.isDarwin ''
+  mpiSupport = !withp4est || p4est.mpiSupport;
+  withp4est = petsc-withp4est;
+
+  nativeBuildInputs = [ python3 gfortran ];
+  buildInputs = [ blas lapack ]
+    ++ lib.optional mpiSupport mpi
+    ++ lib.optional (mpiSupport && mpi.pname == "openmpi") openssh
+    ++ lib.optional withp4est p4est
+  ;
+
+  prePatch = lib.optionalString stdenv.isDarwin ''
     substituteInPlace config/install.py \
       --replace /usr/bin/install_name_tool ${darwin.cctools}/bin/install_name_tool
   '';
 
   preConfigure = ''
     export FC="${gfortran}/bin/gfortran" F77="${gfortran}/bin/gfortran"
-    patchShebangs .
+    patchShebangs ./lib/petsc/bin
     configureFlagsArray=(
       $configureFlagsArray
-      "--CC=$CC"
-      "--with-cxx=$CXX"
-      "--with-fc=$FC"
-      "--with-mpi=0"
-      "--with-blas-lib=[${blas}/lib/libblas.so,${gfortran.cc.lib}/lib/libgfortran.a]"
-      "--with-lapack-lib=[${lapack}/lib/liblapack.so,${gfortran.cc.lib}/lib/libgfortran.a]"
+      ${if !mpiSupport then ''
+        "--with-mpi=0"
+      '' else ''
+        "--CC=mpicc"
+        "--with-cxx=mpicxx"
+        "--with-fc=mpif90"
+        "--with-mpi=1"
+      ''}
+      ${if withp4est then ''
+        "--with-p4est=1"
+        "--with-zlib-include=${zlib.dev}/include"
+        "--with-zlib-lib=-L${zlib}/lib -lz"
+      '' else ""}
+      "--with-blas=1"
+      "--with-lapack=1"
     )
   '';
 
+  configureScript = "python ./configure";
+
+  enableParallelBuilding = true;
+  doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
+
   meta = with lib; {
-    description = ''
-      Library of linear algebra algorithms for solving partial differential
-      equations
-    '';
+    description = "Portable Extensible Toolkit for Scientific computation";
     homepage = "https://www.mcs.anl.gov/petsc/index.html";
     license = licenses.bsd2;
-    maintainers = with maintainers; [ wucke13 ];
-    platforms = platforms.all;
+    maintainers = with maintainers; [ wucke13 cburstedde ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/scmccid/default.nix b/nixpkgs/pkgs/development/libraries/scmccid/default.nix
index 0fcb4884de5c..f6b9194a608c 100644
--- a/nixpkgs/pkgs/development/libraries/scmccid/default.nix
+++ b/nixpkgs/pkgs/development/libraries/scmccid/default.nix
@@ -2,15 +2,16 @@
 
 assert stdenv ? cc && stdenv.cc.libc != null;
 
-stdenv.mkDerivation {
-  name = "scmccid-5.0.11";
+stdenv.mkDerivation rec {
+  pname = "scmccid";
+  version = "5.0.11";
 
   src = if stdenv.hostPlatform.system == "i686-linux" then (fetchurl {
-      url = "http://www.scmmicro.com/support/download/scmccid_5.0.11_linux.tar.gz";
+      url = "http://www.scmmicro.com/support/download/scmccid_${version}_linux.tar.gz";
       sha256 = "1r5wkarhzl09ncgj55baizf573czw0nplh1pgddzx9xck66kh5bm";
     })
     else if stdenv.hostPlatform.system == "x86_64-linux" then (fetchurl {
-        url = "http://www.scmmicro.com/support/download/scmccid_5.0.11_linux_x64.tar.gz";
+        url = "http://www.scmmicro.com/support/download/scmccid_${version}_linux_x64.tar.gz";
         sha256 = "0k9lzlk01sl4ycfqgrqqy3bildz0mcr1r0kkicgjz96l4s0jgz0i";
     })
     else throw "Architecture not supported";
diff --git a/nixpkgs/pkgs/development/libraries/sfml/default.nix b/nixpkgs/pkgs/development/libraries/sfml/default.nix
index c9a326afa7fe..7ed5070ebb08 100644
--- a/nixpkgs/pkgs/development/libraries/sfml/default.nix
+++ b/nixpkgs/pkgs/development/libraries/sfml/default.nix
@@ -3,13 +3,9 @@
 , IOKit, Foundation, AppKit, OpenAL
 }:
 
-let
-  version = "2.5.1";
-in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "sfml";
-  inherit version;
+  version = "2.5.1";
 
   src = fetchzip {
     url = "https://github.com/SFML/SFML/archive/${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/shhopt/default.nix b/nixpkgs/pkgs/development/libraries/shhopt/default.nix
index 0657b13e5579..664d4f3330a0 100644
--- a/nixpkgs/pkgs/development/libraries/shhopt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/shhopt/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "shhopt-1.1.7";
+  pname = "shhopt";
+  version = "1.1.7";
 
   src = fetchurl {
-    url = "https://shh.thathost.com/pub-unix/files/${name}.tar.gz";
+    url = "https://shh.thathost.com/pub-unix/files/${pname}-${version}.tar.gz";
     sha256 = "0yd6bl6qw675sxa81nxw6plhpjf9d2ywlm8a5z66zyjf28sl7sds";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/slib/default.nix b/nixpkgs/pkgs/development/libraries/slib/default.nix
index 9973e04a670b..56c4eccf434c 100644
--- a/nixpkgs/pkgs/development/libraries/slib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/slib/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, unzip, scheme, texinfo }:
 
 stdenv.mkDerivation rec {
-  name = "slib-3b5";
+  pname = "slib";
+  version = "3b5";
 
   src = fetchurl {
-    url = "https://groups.csail.mit.edu/mac/ftpdir/scm/${name}.zip";
+    url = "https://groups.csail.mit.edu/mac/ftpdir/scm/${pname}-${version}.zip";
     sha256 = "0q0p2d53p8qw2592yknzgy2y1p5a9k7ppjx0cfrbvk6242c4mdpq";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/snack/default.nix b/nixpkgs/pkgs/development/libraries/snack/default.nix
index 41d776c68698..8750bdf2ac6c 100644
--- a/nixpkgs/pkgs/development/libraries/snack/default.nix
+++ b/nixpkgs/pkgs/development/libraries/snack/default.nix
@@ -2,11 +2,12 @@
 
 { lib, stdenv, fetchurl, python, tcl, tk, vorbis-tools, pkg-config, xlibsWrapper }:
 
-stdenv.mkDerivation {
-  name = "snack-2.2.10";
+stdenv.mkDerivation rec {
+  pname = "snack";
+  version = "2.2.10";
 
   src = fetchurl {
-    url = "https://www.speech.kth.se/snack/dist/snack2.2.10.tar.gz";
+    url = "https://www.speech.kth.se/snack/dist/${pname}${version}.tar.gz";
     sha256 = "07p89jv9qnjqkszws9sssq93ayvwpdnkcxrvyicbm4mb8x2pdzjb";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/soprano/default.nix b/nixpkgs/pkgs/development/libraries/soprano/default.nix
index c9debd36110e..46520714c510 100644
--- a/nixpkgs/pkgs/development/libraries/soprano/default.nix
+++ b/nixpkgs/pkgs/development/libraries/soprano/default.nix
@@ -2,10 +2,11 @@
 , pkg-config }:
 
 stdenv.mkDerivation rec {
-  name = "soprano-2.9.4";
+  pname = "soprano";
+  version = "2.9.4";
 
   src = fetchurl {
-    url = "mirror://sourceforge/soprano/${name}.tar.bz2";
+    url = "mirror://sourceforge/soprano/${pname}-${version}.tar.bz2";
     sha256 = "1rg0x7yg0a1cbnxz7kqk52580wla8jbnj4d4r3j7l7g7ajyny1k4";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/spandsp/default.nix b/nixpkgs/pkgs/development/libraries/spandsp/default.nix
index 85a3059f27bc..240c86534335 100644
--- a/nixpkgs/pkgs/development/libraries/spandsp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/spandsp/default.nix
@@ -17,7 +17,6 @@ stdenv.mkDerivation rec {
     maintainers = with lib.maintainers; [raskin];
     license = lib.licenses.gpl2;
     downloadPage = "http://www.soft-switch.org/downloads/spandsp/";
-    inherit version;
     updateWalker = true;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/speexdsp/default.nix b/nixpkgs/pkgs/development/libraries/speexdsp/default.nix
index f87d79ca6e48..643a83c47005 100644
--- a/nixpkgs/pkgs/development/libraries/speexdsp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/speexdsp/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, autoreconfHook, pkg-config, fftw }:
 
 stdenv.mkDerivation rec {
-  name = "speexdsp-1.2.0";
+  pname = "speexdsp";
+  version = "1.2.0";
 
   src = fetchurl {
-    url = "http://downloads.us.xiph.org/releases/speex/${name}.tar.gz";
+    url = "https://downloads.xiph.org/releases/speex/${pname}-${version}.tar.gz";
     sha256 = "0wa7sqpk3x61zz99m7lwkgr6yv62ml6lfgs5xja65vlvdzy44838";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/startup-notification/default.nix b/nixpkgs/pkgs/development/libraries/startup-notification/default.nix
index f334bb2f35a4..001123ead60f 100644
--- a/nixpkgs/pkgs/development/libraries/startup-notification/default.nix
+++ b/nixpkgs/pkgs/development/libraries/startup-notification/default.nix
@@ -1,16 +1,17 @@
 {lib, stdenv, fetchurl, libX11, libxcb, pkg-config, xcbutil}:
 
-let
-  version = "0.12";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "libstartup-notification";
-  inherit version;
+  version = "0.12";
   src = fetchurl {
     url = "https://www.freedesktop.org/software/startup-notification/releases/startup-notification-${version}.tar.gz";
     sha256 = "3c391f7e930c583095045cd2d10eb73a64f085c7fde9d260f2652c7cb3cfbe4a";
   };
 
+  configureFlags = lib.optionals (stdenv.buildPlatform != stdenv.targetPlatform) [
+    "lf_cv_sane_realloc=yes"
+  ];
+
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ libX11 libxcb xcbutil ];
 
diff --git a/nixpkgs/pkgs/development/libraries/stlport/default.nix b/nixpkgs/pkgs/development/libraries/stlport/default.nix
index 5af77d90053f..75004b87ee72 100644
--- a/nixpkgs/pkgs/development/libraries/stlport/default.nix
+++ b/nixpkgs/pkgs/development/libraries/stlport/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "STLport-5.2.1";
+  pname = "STLport";
+  version = "5.2.1";
 
   src = fetchurl {
-    url = "mirror://sourceforge/stlport/${name}.tar.bz2";
+    url = "mirror://sourceforge/stlport/${pname}-${version}.tar.bz2";
     sha256 = "1jbgak1m1qk7d4gyn1p2grbws2icsf7grbs3dh44ai9ck1xh0nvm";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/tachyon/default.nix b/nixpkgs/pkgs/development/libraries/tachyon/default.nix
index 5994aeb0a590..fa6ca0141815 100644
--- a/nixpkgs/pkgs/development/libraries/tachyon/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tachyon/default.nix
@@ -72,7 +72,6 @@ stdenv.mkDerivation rec {
     cp -r scenes "$out/share/tachyon/scenes"
   '';
   meta = {
-    inherit version;
     description = "A Parallel / Multiprocessor Ray Tracing System";
     license = lib.licenses.bsd3;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/development/libraries/taglib-extras/default.nix b/nixpkgs/pkgs/development/libraries/taglib-extras/default.nix
index 95afae065efe..acb52cc53dbf 100644
--- a/nixpkgs/pkgs/development/libraries/taglib-extras/default.nix
+++ b/nixpkgs/pkgs/development/libraries/taglib-extras/default.nix
@@ -1,9 +1,10 @@
 {lib, stdenv, fetchurl, cmake, taglib, zlib}:
 
 stdenv.mkDerivation rec {
-  name = "taglib-extras-1.0.1";
+  pname = "taglib-extras";
+  version = "1.0.1";
   src = fetchurl {
-    url = "http://ftp.rz.uni-wuerzburg.de/pub/unix/kde/taglib-extras/1.0.1/src/${name}.tar.gz";
+    url = "https://ftp.rz.uni-wuerzburg.de/pub/unix/kde/taglib-extras/${version}/src/${pname}-${version}.tar.gz";
     sha256 = "0cln49ws9svvvals5fzxjxlzqm0fzjfymn7yfp4jfcjz655nnm7y";
   };
   buildInputs = [ taglib ];
diff --git a/nixpkgs/pkgs/development/libraries/tclap/default.nix b/nixpkgs/pkgs/development/libraries/tclap/default.nix
index feb3825b3d4e..8cd9900b65bf 100644
--- a/nixpkgs/pkgs/development/libraries/tclap/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tclap/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "tclap-1.2.3";
+  pname = "tclap";
+  version = "1.2.3";
 
   src = fetchurl {
-    url = "mirror://sourceforge/tclap/${name}.tar.gz";
+    url = "mirror://sourceforge/tclap/${pname}-${version}.tar.gz";
     sha256 = "sha256-GefbUoFUDxVDSHcLw6dIRXX09Umu+OAKq8yUs5X3c8k=";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/tezos-rust-libs/default.nix b/nixpkgs/pkgs/development/libraries/tezos-rust-libs/default.nix
new file mode 100644
index 000000000000..bd406d632455
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/tezos-rust-libs/default.nix
@@ -0,0 +1,36 @@
+{ lib, fetchFromGitLab, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "tezos-rust-libs";
+  version = "1.0";
+
+  src = fetchFromGitLab {
+    owner = "tezos";
+    repo = "tezos-rust-libs";
+    rev = "v${version}";
+    sha256 = "1ffkzbvb0ls4wk9205g3xh2c26cmwnl68x43gh6dm9z4xsic94v5";
+  };
+
+  cargoSha256 = "0dgyqfr3dvvdwdi1wvpd7v9j21740jy4zwrwiwknw7csb4bq9wfx";
+
+  preBuild = ''
+    mkdir .cargo
+    mv cargo-config .cargo/config
+  '';
+
+  postInstall = ''
+    mkdir $out/lib/tezos-rust-libs
+    cp -r rustc-bls12-381/include $out/include
+    cp $out/lib/librustc_bls12_381.a $out/lib/tezos-rust-libs
+    cp $out/lib/librustzcash.a $out/lib/tezos-rust-libs
+  '';
+
+  doCheck = true;
+
+  meta = {
+    homepage = "https://gitlab.com/tezos/tezos-rust-libs";
+    description = "Tezos: all rust dependencies and their dependencies";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.ulrikstrid ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/tidyp/default.nix b/nixpkgs/pkgs/development/libraries/tidyp/default.nix
index f4c24a126e5b..c2a8ae0337ac 100644
--- a/nixpkgs/pkgs/development/libraries/tidyp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tidyp/default.nix
@@ -1,10 +1,13 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "tidyp-1.04";
+  pname = "tidyp";
+  version = "1.04";
 
   src = fetchurl {
-    url = "https://github.com/downloads/petdance/tidyp/${name}.tar.gz";
+    # downloads from a legacy GitHub download page from ~11 years ago
+    # project does not work with autoconf anymore and the configure script cannot be generated from the source download
+    url = "https://github.com/downloads/petdance/tidyp/${pname}-${version}.tar.gz";
     sha256 = "0f5ky0ih4vap9c6j312jn73vn8m2bj69pl2yd3a5nmv35k9zmc10";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/tokyo-cabinet/default.nix b/nixpkgs/pkgs/development/libraries/tokyo-cabinet/default.nix
index 22d3266b93a6..4b3c8a363eb4 100644
--- a/nixpkgs/pkgs/development/libraries/tokyo-cabinet/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tokyo-cabinet/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, zlib, bzip2 }:
 
 stdenv.mkDerivation rec {
-  name = "tokyocabinet-1.4.48";
+  pname = "tokyocabinet";
+  version = "1.4.48";
 
   src = fetchurl {
-    url = "http://fallabs.com/tokyocabinet/${name}.tar.gz";
+    url = "https://dbmx.net/tokyocabinet/${pname}-${version}.tar.gz";
     sha256 = "140zvr0n8kvsl0fbn2qn3f2kh3yynfwnizn4dgbj47m975yg80x0";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/totem-pl-parser/default.nix b/nixpkgs/pkgs/development/libraries/totem-pl-parser/default.nix
index 08c989b799b6..335f2ac2e0a0 100644
--- a/nixpkgs/pkgs/development/libraries/totem-pl-parser/default.nix
+++ b/nixpkgs/pkgs/development/libraries/totem-pl-parser/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gettext, libxml2, gobject-introspection, gnome }:
+{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gettext, libxml2, gobject-introspection, gnome, glib }:
 
 stdenv.mkDerivation rec {
   pname = "totem-pl-parser";
@@ -16,8 +16,14 @@ stdenv.mkDerivation rec {
     };
   };
 
-  nativeBuildInputs = [ meson ninja pkg-config gettext gobject-introspection ];
-  buildInputs = [ libxml2 ];
+  strictDeps = true;
+  depsBuildBuild = [ pkg-config ];
+  nativeBuildInputs = [ meson ninja pkg-config gettext glib gobject-introspection ];
+  buildInputs = [ libxml2 glib ];
+
+  mesonFlags = lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
+    "-Dintrospection=false"
+  ];
 
   meta = with lib; {
     homepage = "https://wiki.gnome.org/Apps/Videos";
diff --git a/nixpkgs/pkgs/development/libraries/tre/default.nix b/nixpkgs/pkgs/development/libraries/tre/default.nix
index e515dd1673fa..9ac026ee94b8 100644
--- a/nixpkgs/pkgs/development/libraries/tre/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tre/default.nix
@@ -1,9 +1,10 @@
 {lib, stdenv, fetchurl, fetchpatch}:
 
 stdenv.mkDerivation rec {
-  name = "tre-0.8.0";
+  pname = "tre";
+  version = "0.8.0";
   src = fetchurl {
-    url = "https://laurikari.net/tre/${name}.tar.gz";
+    url = "https://laurikari.net/tre/${pname}-${version}.tar.gz";
     sha256 = "1pd7qsa7vc3ybdc6h2gr4pm9inypjysf92kab945gg4qa6jp11my";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/ucommon/default.nix b/nixpkgs/pkgs/development/libraries/ucommon/default.nix
index 7cfd9f1edf5c..7306243bca9d 100644
--- a/nixpkgs/pkgs/development/libraries/ucommon/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ucommon/default.nix
@@ -10,10 +10,11 @@ assert xor (openssl != null) (gnutls != null);
 assert !(xor (openssl != null) (zlib != null));
 
 stdenv.mkDerivation rec {
-  name = "ucommon-7.0.0";
+  pname = "ucommon";
+  version = "7.0.0";
 
   src = fetchurl {
-    url = "mirror://gnu/commoncpp/${name}.tar.gz";
+    url = "mirror://gnu/commoncpp/${pname}-${version}.tar.gz";
     sha256 = "6ac9f76c2af010f97e916e4bae1cece341dc64ca28e3881ff4ddc3bc334060d7";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/uthash/default.nix b/nixpkgs/pkgs/development/libraries/uthash/default.nix
index 7ddae062f766..97c6d10191f3 100644
--- a/nixpkgs/pkgs/development/libraries/uthash/default.nix
+++ b/nixpkgs/pkgs/development/libraries/uthash/default.nix
@@ -1,11 +1,8 @@
 { lib, stdenv, fetchurl, perl }:
 
-let
-  version = "2.1.0";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "uthash";
-  inherit version;
+  version = "2.1.0";
 
   src = fetchurl {
     url = "https://github.com/troydhanson/uthash/archive/v${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/vapoursynth/default.nix b/nixpkgs/pkgs/development/libraries/vapoursynth/default.nix
index 3b6362f7396c..37d82b0b4bd9 100644
--- a/nixpkgs/pkgs/development/libraries/vapoursynth/default.nix
+++ b/nixpkgs/pkgs/development/libraries/vapoursynth/default.nix
@@ -10,13 +10,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "vapoursynth";
-  version = "R53";
+  version = "R54";
 
   src = fetchFromGitHub {
     owner  = "vapoursynth";
     repo   = "vapoursynth";
     rev    = version;
-    sha256 = "0qcsfkpkry0cmvi60khjwvfz4fqhy23nqmn4pb9qrwll26sn9dcr";
+    sha256 = "01jym2rq28j0g792yagk9dvm411gwmk6qgj9rgrg7ckpxmw27w2s";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/vcdimager/default.nix b/nixpkgs/pkgs/development/libraries/vcdimager/default.nix
index 0235912ce539..5c3140a177c3 100644
--- a/nixpkgs/pkgs/development/libraries/vcdimager/default.nix
+++ b/nixpkgs/pkgs/development/libraries/vcdimager/default.nix
@@ -2,10 +2,11 @@
 , libiconv, darwin }:
 
 stdenv.mkDerivation rec {
-  name = "vcdimager-2.0.1";
+  pname = "vcdimager";
+  version = "2.0.1";
 
   src = fetchurl {
-    url = "mirror://gnu/vcdimager/${name}.tar.gz";
+    url = "mirror://gnu/vcdimager/${pname}-${version}.tar.gz";
     sha256 = "0ypnb1vp49nmzp5571ynlz6n1gh90f23w3z4x95hb7c2p7pmylb7";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/volume-key/default.nix b/nixpkgs/pkgs/development/libraries/volume-key/default.nix
index 567a5e3e251a..ce2f7c20d3cb 100644
--- a/nixpkgs/pkgs/development/libraries/volume-key/default.nix
+++ b/nixpkgs/pkgs/development/libraries/volume-key/default.nix
@@ -4,11 +4,9 @@
 , buildPackages
 }:
 
-let
-  version = "0.3.11";
-in stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "volume_key";
-  inherit version;
+  version = "0.3.11";
 
   src = fetchgit {
     url = "https://pagure.io/volume_key.git";
diff --git a/nixpkgs/pkgs/development/libraries/vxl/default.nix b/nixpkgs/pkgs/development/libraries/vxl/default.nix
index 6858cd93ab36..d87adabf56c6 100644
--- a/nixpkgs/pkgs/development/libraries/vxl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/vxl/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv, fetchFromGitHub, unzip, cmake, libtiff, expat, zlib, libpng, libjpeg }:
 stdenv.mkDerivation {
-  name = "vxl-1.17.0-nix1";
+  pname = "vxl";
+  version = "1.17.0-nix1";
 
   src = fetchFromGitHub {
     owner = "vxl";
diff --git a/nixpkgs/pkgs/development/libraries/wildmidi/default.nix b/nixpkgs/pkgs/development/libraries/wildmidi/default.nix
index 81c1b51e6589..7983806a3090 100644
--- a/nixpkgs/pkgs/development/libraries/wildmidi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/wildmidi/default.nix
@@ -1,11 +1,14 @@
-{ lib, stdenv, fetchurl, cmake, alsa-lib, freepats }:
+{ lib, stdenv, fetchFromGitHub, cmake, alsa-lib, freepats }:
 
 stdenv.mkDerivation rec {
-  name = "wildmidi-0.4.3";
+  pname = "wildmidi";
+  version = "0.4.4";
 
-  src = fetchurl {
-    url = "https://github.com/Mindwerks/wildmidi/archive/${name}.tar.gz";
-    sha256 = "1igkxv4axnqap59d8pjgqj94x0khn3fdd2hq6wdvkd2v8nb5m3j9";
+  src = fetchFromGitHub {
+    owner = "Mindwerks";
+    repo = "wildmidi";
+    rev = "${pname}-${version}";
+    sha256 = "08fbbsvw6pkwwqarjwcvdp8mq4zn5sgahf025hynwc6rvf4sp167";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/wlroots/default.nix b/nixpkgs/pkgs/development/libraries/wlroots/default.nix
index 9dc717c34790..c22999dd6f0e 100644
--- a/nixpkgs/pkgs/development/libraries/wlroots/default.nix
+++ b/nixpkgs/pkgs/development/libraries/wlroots/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wlroots";
-  version = "0.14.0";
+  version = "0.14.1";
 
   src = fetchFromGitHub {
     owner = "swaywm";
     repo = "wlroots";
     rev = version;
-    sha256 = "103sf9bsyqw18kmaih11mlxwqi9ddymm95w1lfxz06pf69xwhd39";
+    sha256 = "1sshp3lvlkl1i670kxhwsb4xzxl8raz6769kqvgmxzcb63ns9ay1";
   };
 
   # $out for the library and $examples for the example programs (in examples):
diff --git a/nixpkgs/pkgs/development/libraries/wolfssl/default.nix b/nixpkgs/pkgs/development/libraries/wolfssl/default.nix
index 4635a80152de..4c21eb274222 100644
--- a/nixpkgs/pkgs/development/libraries/wolfssl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/wolfssl/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wolfssl";
-  version = "4.7.0";
+  version = "4.8.0";
 
   src = fetchFromGitHub {
     owner = "wolfSSL";
     repo = "wolfssl";
     rev = "v${version}-stable";
-    sha256 = "1aa51j0xnhi49izc8djya68l70jkjv25559pgybfb9sa4fa4gz97";
+    sha256 = "1w9gs9cq2yhj5s3diz3x1l15pgrc1pbm00jccizvcjyibmwyyf2h";
   };
 
   # almost same as Debian but for now using --enable-all --enable-reproducible-build instead of --enable-distro to ensure options.h gets installed
diff --git a/nixpkgs/pkgs/development/libraries/wtk/default.nix b/nixpkgs/pkgs/development/libraries/wtk/default.nix
index 0bded9d92ddd..94dea0edae1d 100644
--- a/nixpkgs/pkgs/development/libraries/wtk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/wtk/default.nix
@@ -3,11 +3,12 @@
 assert stdenv.hostPlatform.system == "i686-linux";
 
 stdenv.mkDerivation rec {
-  name = "sun-java-wtk-2.5.2_01";
+  pname = "sun-java-wtk";
+  version = "2.5.2_01";
 
   src = requireFile {
-    url = meta.homepage;
-    name = "sun_java_wireless_toolkit-2.5.2_01-linuxi486.bin.sh";
+    url = "http://java.sun.com/products/sjwtoolkit/download.html";
+    name = "sun_java_wireless_toolkit-${version}-linuxi486.bin.sh";
     sha256 = "1cjb9c27847wv0hq3j645ckn4di4vsfvp29fr4zmdqsnvk4ahvj1";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/wxwidgets/2.9/default.nix b/nixpkgs/pkgs/development/libraries/wxwidgets/2.9/default.nix
index 77e0e20eaf5e..5674f076beca 100644
--- a/nixpkgs/pkgs/development/libraries/wxwidgets/2.9/default.nix
+++ b/nixpkgs/pkgs/development/libraries/wxwidgets/2.9/default.nix
@@ -11,12 +11,9 @@ assert withMesa -> libGLU != null && libGL != null;
 
 with lib;
 
-let
-  version = "2.9.4";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "wxwidgets";
-  inherit version;
+  version = "2.9.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/wxwindows/wxWidgets-${version}.tar.bz2";
diff --git a/nixpkgs/pkgs/development/libraries/xbase/default.nix b/nixpkgs/pkgs/development/libraries/xbase/default.nix
index db36c2a34c15..dd5cd21d405f 100644
--- a/nixpkgs/pkgs/development/libraries/xbase/default.nix
+++ b/nixpkgs/pkgs/development/libraries/xbase/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
-stdenv.mkDerivation {
-  name = "xbase-3.1.2";
+stdenv.mkDerivation rec {
+  pname = "xbase";
+  version = "3.1.2";
 
   src = fetchurl {
-    url = "mirror://sourceforge/xdb/xbase64-3.1.2.tar.gz";
+    url = "mirror://sourceforge/xdb/xbase64-${version}.tar.gz";
     sha256 = "17287kz1nmmm64y7zp9nhhl7slzlba09h6cc83w4mvsqwd9w882r";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/xlibs-wrapper/default.nix b/nixpkgs/pkgs/development/libraries/xlibs-wrapper/default.nix
index 735cc278debf..5340306de79a 100644
--- a/nixpkgs/pkgs/development/libraries/xlibs-wrapper/default.nix
+++ b/nixpkgs/pkgs/development/libraries/xlibs-wrapper/default.nix
@@ -11,9 +11,9 @@ stdenv.mkDerivation {
   propagatedBuildInputs = packages;
 
   preferLocalBuild = true;
-} // {
+
   # For compatability with XFree86.
-  buildClientLibs = true;
+  passthru.buildClientLibs = true;
 
   meta = {
     platforms = lib.platforms.unix;
diff --git a/nixpkgs/pkgs/development/libraries/xmlrpc-c/default.nix b/nixpkgs/pkgs/development/libraries/xmlrpc-c/default.nix
index 3bcc40b5da32..2cb64fe6eb24 100644
--- a/nixpkgs/pkgs/development/libraries/xmlrpc-c/default.nix
+++ b/nixpkgs/pkgs/development/libraries/xmlrpc-c/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, curl, libxml2 }:
 
 stdenv.mkDerivation rec {
-  name = "xmlrpc-c-1.51.07";
+  pname = "xmlrpc-c";
+  version = "1.51.07";
 
   src = fetchurl {
-    url = "mirror://sourceforge/xmlrpc-c/${name}.tgz";
+    url = "mirror://sourceforge/xmlrpc-c/${pname}-${version}.tgz";
     sha256 = "sha256-hNIK4z+SdYL4IdYcC5GUrvvx15JFkKE/qdpa4WmK3tk=";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/xmlsec/default.nix b/nixpkgs/pkgs/development/libraries/xmlsec/default.nix
index 8bf987609500..71a10764667c 100644
--- a/nixpkgs/pkgs/development/libraries/xmlsec/default.nix
+++ b/nixpkgs/pkgs/development/libraries/xmlsec/default.nix
@@ -4,12 +4,9 @@
 , openssl, nss_3_53, lib, runCommandCC, writeText }:
 
 lib.fix (self:
-let
-  version = "1.2.31";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "xmlsec";
-  inherit version;
+  version = "1.2.31";
 
   src = fetchurl {
     url = "https://www.aleksey.com/xmlsec/download/xmlsec1-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/libraries/yajl/default.nix b/nixpkgs/pkgs/development/libraries/yajl/default.nix
index df47168c79b7..645329f83cdb 100644
--- a/nixpkgs/pkgs/development/libraries/yajl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/yajl/default.nix
@@ -1,12 +1,14 @@
-{ lib, stdenv, fetchurl, cmake }:
+{ lib, stdenv, fetchFromGitHub, cmake }:
 
 stdenv.mkDerivation rec {
-  name = "yajl-2.1.0";
+  pname = "yajl";
+  version = "2.1.0";
 
-  src = fetchurl {
-    url = "https://github.com/lloyd/yajl/tarball/2.1.0";
-    name = "${name}.tar.gz";
-    sha256 = "0f6yrjc05aa26wfi7lqn2gslm19m6rm81b30ksllpkappvh162ji";
+  src = fetchFromGitHub {
+    owner = "lloyd";
+    repo = "yajl";
+    rev = version;
+    sha256 = "00yj06drb6izcxfxfqlhimlrb089kka0w0x8k27pyzyiq7qzcvml";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/zimg/default.nix b/nixpkgs/pkgs/development/libraries/zimg/default.nix
index 56ced97653ea..76334bb3532f 100644
--- a/nixpkgs/pkgs/development/libraries/zimg/default.nix
+++ b/nixpkgs/pkgs/development/libraries/zimg/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "zimg";
-  version = "3.0.1";
+  version = "3.0.2";
 
   src = fetchFromGitHub {
     owner  = "sekrit-twc";
     repo   = "zimg";
     rev    = "release-${version}";
-    sha256 = "1mpns443ifbkbaxsw6yy8z01l7815259pxzd7s006npr0dxnc8ng";
+    sha256 = "19qim6vyfas0m09piiw0pw7i0xjzi8vs6bx716gz472nflsg1604";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/nixpkgs/pkgs/development/misc/avr/libc/default.nix b/nixpkgs/pkgs/development/misc/avr/libc/default.nix
index 83054b46a94c..b1d8eb4332e8 100644
--- a/nixpkgs/pkgs/development/misc/avr/libc/default.nix
+++ b/nixpkgs/pkgs/development/misc/avr/libc/default.nix
@@ -1,11 +1,8 @@
 { lib, stdenv, fetchurl, automake, autoconf }:
 
-let
-  version = "2.0.0";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "avr-libc";
-  inherit version;
+  version = "2.0.0";
 
   src = fetchurl {
     url = "https://download.savannah.gnu.org/releases/avr-libc/avr-libc-2.0.0.tar.bz2";
diff --git a/nixpkgs/pkgs/development/misc/avr8-burn-omat/default.nix b/nixpkgs/pkgs/development/misc/avr8-burn-omat/default.nix
index 3364fe796e72..4b5793dc1332 100644
--- a/nixpkgs/pkgs/development/misc/avr8-burn-omat/default.nix
+++ b/nixpkgs/pkgs/development/misc/avr8-burn-omat/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, unzip, runtimeShell }:
 
-stdenv.mkDerivation {
-  name = "avr8-burn-omat-2.1.2";
+stdenv.mkDerivation rec {
+  pname = "avr8-burn-omat";
+  version = "2.1.2";
 
   src = fetchurl {
-    url = "http://avr8-burn-o-mat.aaabbb.de/AVR8_Burn-O-Mat_2_1_2.zip";
+    url = "http://avr8-burn-o-mat.aaabbb.de/AVR8_Burn-O-Mat_${lib.replaceStrings ["."] ["_"] version}.zip";
     sha256 = "02k0fd0cd3y1yqip36wr3bkxbywp8913w4y7jdg6qwqxjnii58ln";
   };
 
diff --git a/nixpkgs/pkgs/development/misc/h3/default.nix b/nixpkgs/pkgs/development/misc/h3/default.nix
index 1d12e0f2b01f..a5299f865d5d 100644
--- a/nixpkgs/pkgs/development/misc/h3/default.nix
+++ b/nixpkgs/pkgs/development/misc/h3/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "h3";
-  version = "3.7.1";
+  version = "3.7.2";
 
   src = fetchFromGitHub {
     owner = "uber";
     repo = "h3";
     rev = "v${version}";
-    sha256 = "1ccyzbvbacf0bl9av4yp15zmhiqr3679nnbab11yrhxm9csyal16";
+    sha256 = "sha256-MvWqQraTnab6EuDx4V0v8EvrFWHT95f2EHTL2p2kei8=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/misc/resholve/resholve.nix b/nixpkgs/pkgs/development/misc/resholve/resholve.nix
index 4d039770ce0e..d3603266bea9 100644
--- a/nixpkgs/pkgs/development/misc/resholve/resholve.nix
+++ b/nixpkgs/pkgs/development/misc/resholve/resholve.nix
@@ -43,7 +43,7 @@ python27Packages.buildPythonApplication {
 
   nativeBuildInputs = [ installShellFiles ];
 
-  propagatedBuildInputs = [ deps.oildev python27Packages.ConfigArgParse ];
+  propagatedBuildInputs = [ deps.oildev python27Packages.configargparse ];
 
   patchPhase = ''
     for file in resholve; do
diff --git a/nixpkgs/pkgs/development/misc/stm32/betaflight/default.nix b/nixpkgs/pkgs/development/misc/stm32/betaflight/default.nix
index 486ca04d36a5..1ecf9be5d8d0 100644
--- a/nixpkgs/pkgs/development/misc/stm32/betaflight/default.nix
+++ b/nixpkgs/pkgs/development/misc/stm32/betaflight/default.nix
@@ -9,14 +9,10 @@
   "OMNINXT"    # 3.4.0-rc4: has not specified a valid STM group, must be one of F1, F3, F405, F411 or F7x5. Have you prepared a valid target.mk?
 ]}:
 
-let
-
-  version = "3.4.0-rc4";
-
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
 
   pname = "betaflight";
-  inherit version;
+  version = "3.4.0-rc4";
 
   src = fetchFromGitHub {
     owner = "betaflight";
diff --git a/nixpkgs/pkgs/development/misc/stm32/inav/default.nix b/nixpkgs/pkgs/development/misc/stm32/inav/default.nix
index c7e59a5d27ea..c1f762e47d86 100644
--- a/nixpkgs/pkgs/development/misc/stm32/inav/default.nix
+++ b/nixpkgs/pkgs/development/misc/stm32/inav/default.nix
@@ -2,14 +2,10 @@
 , gcc-arm-embedded, binutils-arm-embedded, ruby
 }:
 
-let
-
-  version = "2.0.0-rc2";
-
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
 
   pname = "inav";
-  inherit version;
+  version = "2.0.0-rc2";
 
   src = fetchFromGitHub {
     owner = "iNavFlight";
diff --git a/nixpkgs/pkgs/development/mobile/abootimg/default.nix b/nixpkgs/pkgs/development/mobile/abootimg/default.nix
index bec022f08c7e..3c7a2840e49e 100644
--- a/nixpkgs/pkgs/development/mobile/abootimg/default.nix
+++ b/nixpkgs/pkgs/development/mobile/abootimg/default.nix
@@ -1,11 +1,8 @@
 { lib, stdenv, fetchFromGitHub, coreutils, cpio, findutils, gzip, makeWrapper, util-linux }:
 
-let
-  version = "0.6";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "abootimg";
-  inherit version;
+  version = "0.6";
 
   src = fetchFromGitHub {
     owner = "ggrandou";
diff --git a/nixpkgs/pkgs/development/mobile/flashtool/default.nix b/nixpkgs/pkgs/development/mobile/flashtool/default.nix
deleted file mode 100644
index e00ff3acce02..000000000000
--- a/nixpkgs/pkgs/development/mobile/flashtool/default.nix
+++ /dev/null
@@ -1,62 +0,0 @@
-{ stdenv, lib, requireFile, p7zip, jre, libusb1, platform-tools, gtk2, glib, libXtst }:
-
-# TODO:
-#
-#   The FlashTool and FlashToolConsole scripts are messy and should probably we
-#   replaced entirely. All these scripts do is try to guess the environment in
-#   which to run the Java binary (and they guess wrong on NixOS).
-#
-#   The FlashTool scripts run 'chmod' on the binaries installed in the Nix
-#   store. These commands fail, naturally, because the Nix story is (hopefully)
-#   mounted read-only. This doesn't matter, though, because the build
-#   instructions fix the executable bits already.
-
-stdenv.mkDerivation rec {
-  name = "flashtool-0.9.14.0";
-
-  src = requireFile {
-    url = "http://dfiles.eu/files/n8c1c3pgc";
-    name = "flashtool-0.9.14.0-linux.tar.7z";
-    sha256 = "0mfjdjj7clz2dhkg7lzy1m8hk8ngla7zgcryf51aki1gnpbb2zc1";
-  };
-
-  buildInputs = [ p7zip jre ];
-
-  unpackPhase = ''
-    7z e ${src}
-    tar xf ${name}-linux.tar
-    sourceRoot=FlashTool
-  '';
-
-  buildPhase = ''
-    ln -s ${platform-tools}/libexec/android-sdk/platform-tools/adb x10flasher_lib/adb.linux
-    ln -s ${platform-tools}/libexec/android-sdk/platform-tools/fastboot x10flasher_lib/fastboot.linux
-    ln -s ${libusb1.out}/lib/libusb-1.0.so.0 ./x10flasher_lib/linux/lib32/libusbx-1.0.so
-
-    chmod +x x10flasher_lib/unyaffs.linux.x86 x10flasher_lib/bin2elf x10flasher_lib/bin2sin
-    patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" x10flasher_lib/unyaffs.linux.x86
-    ln -sf unyaffs.linux.x86 x10flasher_lib/unyaffs.linux
-
-    ln -s swt32.jar x10flasher_lib/swtlin/swt.jar
-
-    sed -i \
-      -e 's|$(uname -m)|i686|' \
-      -e 's|export JAVA_HOME=.*|export JAVA_HOME=${jre}|' \
-      -e 's|export LD_LIBRARY_PATH=.*|export LD_LIBRARY_PATH=${lib.makeLibraryPath [ libXtst glib gtk2 ]}:./x10flasher_lib/linux/lib32|' \
-      FlashTool FlashToolConsole
-  '';
-
-  installPhase = ''
-    mkdir -p $out
-    mv * $out/
-  '';
-
-  meta = with lib; {
-    homepage = "http://www.flashtool.net/";
-    description = "S1 flashing software for Sony phones from X10 to Xperia Z Ultra";
-    license = licenses.unfreeRedistributableFirmware;
-    platforms = [ "i686-linux" ];
-    hydraPlatforms = platforms.none;
-    broken = true;
-  };
-}
diff --git a/nixpkgs/pkgs/development/node-packages/default.nix b/nixpkgs/pkgs/development/node-packages/default.nix
index d4c6ccbe6141..4ccf20b478da 100644
--- a/nixpkgs/pkgs/development/node-packages/default.nix
+++ b/nixpkgs/pkgs/development/node-packages/default.nix
@@ -1,4 +1,4 @@
-{ pkgs, nodejs, stdenv, fetchFromGitHub }:
+{ pkgs, nodejs, stdenv, applyPatches, fetchFromGitHub, fetchpatch }:
 
 let
   since = (version: pkgs.lib.versionAtLeast nodejs.version version);
@@ -14,6 +14,17 @@ let
       '';
     };
 
+    autoprefixer = super.autoprefixer.override {
+      nativeBuildInputs = [ pkgs.makeWrapper ];
+      postInstall = ''
+        wrapProgram "$out/bin/autoprefixer" \
+          --prefix NODE_PATH : ${self.postcss}/lib/node_modules
+      '';
+      passthru.tests = {
+        simple-execution = pkgs.callPackage ./package-tests/autoprefixer.nix { inherit (self) autoprefixer; };
+      };
+    };
+
     aws-azure-login = super.aws-azure-login.override {
       meta.platforms = pkgs.lib.platforms.linux;
       nativeBuildInputs = [ pkgs.makeWrapper ];
@@ -44,11 +55,36 @@ let
       '';
     };
 
-    coc-imselect = super.coc-imselect.override {
-      meta.broken = since "10";
+    fast-cli = super.fast-cli.override ({
+      nativeBuildInputs = [ pkgs.makeWrapper ];
+      prePatch = ''
+        export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1
+      '';
+      postInstall = ''
+        wrapProgram $out/bin/fast \
+          --set PUPPETEER_EXECUTABLE_PATH ${pkgs.chromium.outPath}/bin/chromium
+      '';
+    });
+
+    hyperspace-cli = super."@hyperspace/cli".override {
+      nativeBuildInputs = with pkgs; [
+        makeWrapper
+        libtool
+        autoconf
+        automake
+      ];
+      buildInputs = with pkgs; [
+        nodePackages.node-gyp-build
+        nodejs
+      ];
+      postInstall = ''
+        wrapProgram "$out/bin/hyp" --prefix PATH : ${
+          pkgs.lib.makeBinPath [ pkgs.nodejs ]
+        }
+      '';
     };
 
-    "fast-cli-1.x" = super."fast-cli-1.x".override {
+    coc-imselect = super.coc-imselect.override {
       meta.broken = since "10";
     };
 
@@ -74,14 +110,6 @@ let
       meta.mainProgram = "bw";
     });
 
-    fast-cli = super."fast-cli-1.x".override {
-      preRebuild = ''
-        # Simply ignore the phantomjs --version check. It seems to need a display but it is safe to ignore
-        sed -i -e "s|console.error('Error verifying phantomjs, continuing', err)|console.error('Error verifying phantomjs, continuing', err); return true;|" node_modules/phantomjs-prebuilt/lib/util.js
-      '';
-      buildInputs = [ pkgs.phantomjs2 ];
-    };
-
     flood = super.flood.override {
       buildInputs = [ self.node-pre-gyp ];
       meta.mainProgram = "flood";
@@ -116,6 +144,19 @@ let
       nativeBuildInputs = drv.nativeBuildInputs or [] ++ [ pkgs.psc-package self.pulp ];
     });
 
+    jsonplaceholder = super.jsonplaceholder.override (drv: {
+      buildInputs = [ nodejs ];
+      postInstall = ''
+        exe=$out/bin/jsonplaceholder
+        mkdir -p $out/bin
+        cat >$exe <<EOF
+        #!${pkgs.runtimeShell}
+        exec -a jsonplaceholder ${nodejs}/bin/node $out/lib/node_modules/jsonplaceholder/index.js
+        EOF
+        chmod a+x $exe
+      '';
+    });
+
     makam =  super.makam.override {
       buildInputs = [ pkgs.nodejs pkgs.makeWrapper ];
       postFixup = ''
@@ -169,6 +210,31 @@ let
 
     node2nix = super.node2nix.override {
       buildInputs = [ pkgs.makeWrapper ];
+      # We need to apply a patch to the source, but buildNodePackage doesn't allow patches.
+      # So we pin the patched commit instead. The commit actually contains two other newer commits
+      # since the last (1.9.0) release, but actually this is a good thing since one of them is a
+      # Hydra-specific fix.
+      src = applyPatches {
+        src = fetchFromGitHub {
+          owner = "svanderburg";
+          repo = "node2nix";
+          rev = "node2nix-1.9.0";
+          sha256 = "0l4wp1131nhl9c14cn8bwawb8f77h1nfbnswgi5lp5m3kzkb27jn";
+        };
+
+        patches = [
+          # remove node_ name prefix
+          (fetchpatch {
+            url = "https://github.com/svanderburg/node2nix/commit/b54d45207427ff46e90f16f2f32771fdc8bff5a4.patch";
+            sha256 = "sha256-ubUdF0q3l4xxqZ7f9EiQEUQzyqxi9Q6zsRPETHlfzh8=";
+          })
+          # set meta platform
+          (fetchpatch {
+            url = "https://github.com/svanderburg/node2nix/commit/58736093161f2d237c17e75a96529b018cd0ac64.patch";
+            sha256 = "0sif7803c9g6gjmmdniw5qxrq5igiz9nqdmdrcf1hxfi5x43a32h";
+          })
+        ];
+      };
       postInstall = ''
         wrapProgram "$out/bin/node2nix" --prefix PATH : ${pkgs.lib.makeBinPath [ pkgs.nix ]}
       '';
@@ -211,6 +277,21 @@ let
       '';
     };
 
+    postcss-cli = super.postcss-cli.override {
+      nativeBuildInputs = [ pkgs.makeWrapper ];
+      postInstall = ''
+        wrapProgram "$out/bin/postcss" \
+          --prefix NODE_PATH : ${self.postcss}/lib/node_modules \
+          --prefix NODE_PATH : ${self.autoprefixer}/lib/node_modules
+      '';
+      passthru.tests = {
+        simple-execution = pkgs.callPackage ./package-tests/postcss-cli.nix {
+          inherit (self) postcss-cli;
+        };
+      };
+      meta.mainProgram = "postcss";
+    };
+
     pulp = super.pulp.override {
       # tries to install purescript
       npmFlags = "--ignore-scripts";
@@ -277,7 +358,7 @@ let
     };
 
     teck-programmer = super.teck-programmer.override {
-      buildInputs = [ pkgs.libusb ];
+      buildInputs = [ pkgs.libusb1 ];
     };
 
     vega-cli = super.vega-cli.override {
diff --git a/nixpkgs/pkgs/development/node-packages/generate.sh b/nixpkgs/pkgs/development/node-packages/generate.sh
index e7a15d5d869c..b58c71a088c1 100755
--- a/nixpkgs/pkgs/development/node-packages/generate.sh
+++ b/nixpkgs/pkgs/development/node-packages/generate.sh
@@ -3,7 +3,7 @@ set -eu -o pipefail
 
 DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
 node2nix=$(nix-build ../../.. -A nodePackages.node2nix)
-cd ${DIR}
+cd "$DIR"
 rm -f ./node-env.nix
 ${node2nix}/bin/node2nix -i node-packages.json -o node-packages.nix -c composition.nix
 # using --no-out-link in nix-build argument would cause the
diff --git a/nixpkgs/pkgs/development/node-packages/node-env.nix b/nixpkgs/pkgs/development/node-packages/node-env.nix
index c2b723195b77..21089c4d5459 100644
--- a/nixpkgs/pkgs/development/node-packages/node-env.nix
+++ b/nixpkgs/pkgs/development/node-packages/node-env.nix
@@ -391,13 +391,14 @@ 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) utillinux
         ++ lib.optional (stdenv.isDarwin) libtool
@@ -446,6 +447,11 @@ let
         # Run post install hook, if provided
         runHook postInstall
       '';
+
+      meta = {
+        # default to Node.js' platforms
+        platforms = nodejs.meta.platforms;
+      } // meta;
     } // extraArgs);
 
   # Builds a node environment (a node_modules folder and a set of binaries)
diff --git a/nixpkgs/pkgs/development/node-packages/node-packages.json b/nixpkgs/pkgs/development/node-packages/node-packages.json
index 6b322a903f97..1bf813952eaa 100644
--- a/nixpkgs/pkgs/development/node-packages/node-packages.json
+++ b/nixpkgs/pkgs/development/node-packages/node-packages.json
@@ -3,6 +3,7 @@
 , "@antora/cli"
 , "@antora/site-generator-default"
 , "@bitwarden/cli"
+, "@hyperspace/cli"
 , "@nestjs/cli"
 , "@vue/cli"
 , "@webassemblyjs/cli"
@@ -12,6 +13,7 @@
 , "@webassemblyjs/wast-refmt"
 , "alloy"
 , "asar"
+, "autoprefixer"
 , "aws-azure-login"
 , "balanceofsatoshis"
 , "bash-language-server"
@@ -88,7 +90,7 @@
 , "eslint_d"
 , "esy"
 , "expo-cli"
-, {"fast-cli": "1.x"}
+, "fast-cli"
 , "fauna-shell"
 , "firebase-tools"
 , "fixjson"
@@ -139,6 +141,7 @@
 , "json-refs"
 , "json-server"
 , "jsonlint"
+, "jsonplaceholder"
 , "kaput-cli"
 , "katex"
 , "karma"
@@ -175,6 +178,7 @@
 , "np"
 , "npm"
 , "npm-check-updates"
+, "npm-merge-driver"
 , {"npm2nix": "git://github.com/NixOS/npm2nix.git#5.12.0"}
 , "ocaml-language-server"
 , "parcel-bundler"
@@ -186,8 +190,10 @@
 , "pm2"
 , "pnpm"
 , "poor-mans-t-sql-formatter-cli"
+, "postcss"
 , "postcss-cli"
 , "prettier"
+, "prettier-plugin-toml"
 , "pscid"
 , "pulp"
 , "purescript-language-server"
@@ -221,11 +227,13 @@
 , "stf"
 , "stylelint"
 , "svelte-language-server"
+, "svelte-check"
 , "svgo"
 , "swagger"
 , {"tedicross": "git+https://github.com/TediCross/TediCross.git#v0.8.7"}
 , "teck-programmer"
 , "tern"
+, "terser"
 , "textlint"
 , "textlint-plugin-latex"
 , "textlint-rule-abbr-within-parentheses"
diff --git a/nixpkgs/pkgs/development/node-packages/node-packages.nix b/nixpkgs/pkgs/development/node-packages/node-packages.nix
index ace401855650..8c9726808957 100644
--- a/nixpkgs/pkgs/development/node-packages/node-packages.nix
+++ b/nixpkgs/pkgs/development/node-packages/node-packages.nix
@@ -49,31 +49,22 @@ let
         sha512 = "o/xdK8b4P0t/xpCARgWXAeaiWeh9jeua6bP1jrcbfN39+Z4zC4x2jg4NysHNhz6spRG8dJFH3kJIUoIbs0Ckww==";
       };
     };
-    "@angular-devkit/architect-0.1201.1" = {
+    "@angular-devkit/architect-0.1201.2" = {
       name = "_at_angular-devkit_slash_architect";
       packageName = "@angular-devkit/architect";
-      version = "0.1201.1";
+      version = "0.1201.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1201.1.tgz";
-        sha512 = "n7ycxrIPbtnV7q8PH5Uvs8Jd++u6hWUiB+8EUxznSfdHGA+fE7TTnJTkc27LoMlYZAImc/Axp/uyYZ6Awt72ZQ==";
+        url = "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1201.2.tgz";
+        sha512 = "hR5kI03WoeEY9dkAsQNLlhL1iEFC2L77ansaKquN+HCAeOGHby4w95suSlZUAg0r6ZhPhPH0tkIRZXU9NMa09g==";
       };
     };
-    "@angular-devkit/core-11.2.4" = {
+    "@angular-devkit/core-12.0.5" = {
       name = "_at_angular-devkit_slash_core";
       packageName = "@angular-devkit/core";
-      version = "11.2.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/core/-/core-11.2.4.tgz";
-        sha512 = "98mGDV4XtKWiQ/2D6yzvOHrnJovXchaAN9AjscAHd2an8Fkiq72d9m2wREpk+2J40NWTDB6J5iesTh3qbi8+CA==";
-      };
-    };
-    "@angular-devkit/core-11.2.6" = {
-      name = "_at_angular-devkit_slash_core";
-      packageName = "@angular-devkit/core";
-      version = "11.2.6";
+      version = "12.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/core/-/core-11.2.6.tgz";
-        sha512 = "3dA0Z6sIIxCDjZS/DucgmIKti7EZ/LgHoHgCO72Q50H5ZXbUSNBz5wGl5hVq2+gzrnFgU/0u40MIs6eptk30ZA==";
+        url = "https://registry.npmjs.org/@angular-devkit/core/-/core-12.0.5.tgz";
+        sha512 = "zVSQV+8/vjUjsUKGlj8Kf5LioA6AXJTGI0yhHW9q1dFX4dPpbW63k0R1UoIB2wJ0F/AbYVgpnPGPe9BBm2fvZA==";
       };
     };
     "@angular-devkit/core-12.1.1" = {
@@ -85,22 +76,22 @@ let
         sha512 = "z5+O3ugXbo8djKPjUtf/UfnYCmco2K1LVhQ6cWLhKi3NKRBiHeNmZh5nAycqFD8/Q+oI/+Ao40MkmkK1Tq0jsw==";
       };
     };
-    "@angular-devkit/schematics-11.2.4" = {
-      name = "_at_angular-devkit_slash_schematics";
-      packageName = "@angular-devkit/schematics";
-      version = "11.2.4";
+    "@angular-devkit/core-12.1.2" = {
+      name = "_at_angular-devkit_slash_core";
+      packageName = "@angular-devkit/core";
+      version = "12.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-11.2.4.tgz";
-        sha512 = "M9Ike1TYawOIHzenlZS1ufQbsS+Z11/doj5w/UrU0q2OEKc6U375t5qVGgKo3PLHHS8osb9aW9xYwBfVlKrryQ==";
+        url = "https://registry.npmjs.org/@angular-devkit/core/-/core-12.1.2.tgz";
+        sha512 = "TeaRbvsNEeAkRJcIBlT6yUNh0vaVVBGBYfXYFIMg/I04ex/HI0ApEowu78GeTzCqlE0r4t+WaGT46m7+NIljKg==";
       };
     };
-    "@angular-devkit/schematics-11.2.6" = {
+    "@angular-devkit/schematics-12.0.5" = {
       name = "_at_angular-devkit_slash_schematics";
       packageName = "@angular-devkit/schematics";
-      version = "11.2.6";
+      version = "12.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-11.2.6.tgz";
-        sha512 = "bhi2+5xtVAjtr3bsXKT8pnoBamQrArd/Y20ueA4Od7cd38YT97nzTA1wyHBFG0vWd0HMyg42ZS0aycNBuOebaA==";
+        url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-12.0.5.tgz";
+        sha512 = "iW3XuDHScr3TXuunlEjF5O01zBpwpLgfr1oEny8PvseFGDlHK4Nj8zNIoIn3Yg936aiFO4GJAC/UXsT8g5vKxQ==";
       };
     };
     "@angular-devkit/schematics-12.1.1" = {
@@ -112,13 +103,22 @@ let
         sha512 = "oRsvlhJQLXkGWdJvArOby+G4j8UX2uCHwrN4EC1hXUKs84UsD+UATYOAh4h2auy+I+sdrmELUaHwdI4wdKpqnw==";
       };
     };
-    "@angular-devkit/schematics-cli-0.1102.6" = {
+    "@angular-devkit/schematics-12.1.2" = {
+      name = "_at_angular-devkit_slash_schematics";
+      packageName = "@angular-devkit/schematics";
+      version = "12.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-12.1.2.tgz";
+        sha512 = "/UGcAJChq+g7wf46Exr5iIyuVw3j4TxTIntTpuKg/z/xf9Y+8mzJAZgGittu/yFcHAJ9aYcOHctffrfEdV7QSA==";
+      };
+    };
+    "@angular-devkit/schematics-cli-12.1.1" = {
       name = "_at_angular-devkit_slash_schematics-cli";
       packageName = "@angular-devkit/schematics-cli";
-      version = "0.1102.6";
+      version = "12.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-0.1102.6.tgz";
-        sha512 = "86PmafA9mYDeM08cNWHcJCEY1Yqo5aq/YaBzCak93luByDQ4Ao4Jqts9l/xBCZBGUdVrczCNzcdwr/Y/6JPPzA==";
+        url = "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-12.1.1.tgz";
+        sha512 = "mIwE9iD7RKnARNlm39Ao3WtXqUFkemX77AHuqWUatQ4QsaOG3fxrTH8UYPP7Oi17J4wRipIkzia1cOIStluTVA==";
       };
     };
     "@antora/asciidoc-loader-2.3.4" = {
@@ -310,13 +310,13 @@ let
         sha1 = "e70187f8a862e191b1bce6c0268f13acd3a56b20";
       };
     };
-    "@babel/cli-7.14.5" = {
+    "@babel/cli-7.14.8" = {
       name = "_at_babel_slash_cli";
       packageName = "@babel/cli";
-      version = "7.14.5";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/cli/-/cli-7.14.5.tgz";
-        sha512 = "poegjhRvXHWO0EAsnYajwYZuqcz7gyfxwfaecUESxDujrqOivf3zrjFbub8IJkrqEaz3fvJWh001EzxBub54fg==";
+        url = "https://registry.npmjs.org/@babel/cli/-/cli-7.14.8.tgz";
+        sha512 = "lcy6Lymft9Rpfqmrqdd4oTDdUx9ZwaAhAfywVrHG4771Pa6PPT0danJ1kDHBXYqh4HHSmIdA+nlmfxfxSDPtBg==";
       };
     };
     "@babel/code-frame-7.10.4" = {
@@ -364,13 +364,13 @@ let
         sha512 = "O34LQooYVDXPl7QWCdW9p4NR+QlzOr7xShPPJz8GsuCU3/8ua/wqTr7gmnxXv+WBESiGU/G5s16i6tUvHkNb+w==";
       };
     };
-    "@babel/core-7.14.6" = {
+    "@babel/core-7.14.8" = {
       name = "_at_babel_slash_core";
       packageName = "@babel/core";
-      version = "7.14.6";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/core/-/core-7.14.6.tgz";
-        sha512 = "gJnOEWSqTk96qG5BoIrl5bVtc23DCycmIePPYnamY9RboYdI4nFy5vAQMSl81O5K/W0sLDWfGysnOECC+KUUCA==";
+        url = "https://registry.npmjs.org/@babel/core/-/core-7.14.8.tgz";
+        sha512 = "/AtaeEhT6ErpDhInbXmjHcUQXH0L0TEgscfcxk1qbOvLuKCa5aZT0SOOtDKFY96/CLROwbLSKyFor6idgNaU4Q==";
       };
     };
     "@babel/core-7.9.0" = {
@@ -382,13 +382,13 @@ let
         sha512 = "kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==";
       };
     };
-    "@babel/generator-7.14.5" = {
+    "@babel/generator-7.14.8" = {
       name = "_at_babel_slash_generator";
       packageName = "@babel/generator";
-      version = "7.14.5";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.14.5.tgz";
-        sha512 = "y3rlP+/G25OIX3mYKKIOlQRcqj7YgrvHxOLbVmyLJ9bPmi5ttvUmpydVjcFjZphOktWuA7ovbx91ECloWTfjIA==";
+        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.14.8.tgz";
+        sha512 = "cYDUpvIzhBVnMzRoY1fkSEhK/HmwEVwlyULYgn/tMQYd6Obag3ylCjONle3gdErfXBW61SVTlR9QR7uWlgeIkg==";
       };
     };
     "@babel/helper-annotate-as-pure-7.14.5" = {
@@ -418,13 +418,13 @@ let
         sha512 = "v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw==";
       };
     };
-    "@babel/helper-create-class-features-plugin-7.14.6" = {
+    "@babel/helper-create-class-features-plugin-7.14.8" = {
       name = "_at_babel_slash_helper-create-class-features-plugin";
       packageName = "@babel/helper-create-class-features-plugin";
-      version = "7.14.6";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.6.tgz";
-        sha512 = "Z6gsfGofTxH/+LQXqYEK45kxmcensbzmk/oi8DmaQytlQCgqNZt9XQF8iqlI/SeXWVjaMNxvYvzaYw+kh42mDg==";
+        url = "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.8.tgz";
+        sha512 = "bpYvH8zJBWzeqi1o+co8qOrw+EXzQ/0c74gVmY205AWXy9nifHrOg77y+1zwxX5lXE7Icq4sPlSQ4O2kWBrteQ==";
       };
     };
     "@babel/helper-create-regexp-features-plugin-7.14.5" = {
@@ -499,13 +499,13 @@ let
         sha512 = "SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ==";
       };
     };
-    "@babel/helper-module-transforms-7.14.5" = {
+    "@babel/helper-module-transforms-7.14.8" = {
       name = "_at_babel_slash_helper-module-transforms";
       packageName = "@babel/helper-module-transforms";
-      version = "7.14.5";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.5.tgz";
-        sha512 = "iXpX4KW8LVODuAieD7MzhNjmM6dzYY5tfRqT+R9HDXWl0jPn/djKmA+G9s/2C2T9zggw5tK1QNqZ70USfedOwA==";
+        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.8.tgz";
+        sha512 = "RyE+NFOjXn5A9YU1dkpeBaduagTlZ0+fccnIcAGbv1KGUlReBj7utF7oEth8IdIBQPcux0DDgW5MFBH2xu9KcA==";
       };
     };
     "@babel/helper-optimise-call-expression-7.14.5" = {
@@ -553,13 +553,13 @@ let
         sha512 = "3i1Qe9/8x/hCHINujn+iuHy+mMRLoc77b2nI9TB0zjH1hvn9qGlXjWlggdwUcju36PkPCy/lpM7LLUdcTyH4Ow==";
       };
     };
-    "@babel/helper-simple-access-7.14.5" = {
+    "@babel/helper-simple-access-7.14.8" = {
       name = "_at_babel_slash_helper-simple-access";
       packageName = "@babel/helper-simple-access";
-      version = "7.14.5";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.5.tgz";
-        sha512 = "nfBN9xvmCt6nrMZjfhkl7i0oTV3yxR4/FztsbOASyTvVcoYd0TRHh7eMLdlEcCqobydC0LAF3LtC92Iwxo0wyw==";
+        url = "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz";
+        sha512 = "TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==";
       };
     };
     "@babel/helper-skip-transparent-expression-wrappers-7.14.5" = {
@@ -580,13 +580,13 @@ let
         sha512 = "hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==";
       };
     };
-    "@babel/helper-validator-identifier-7.14.5" = {
+    "@babel/helper-validator-identifier-7.14.8" = {
       name = "_at_babel_slash_helper-validator-identifier";
       packageName = "@babel/helper-validator-identifier";
-      version = "7.14.5";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz";
-        sha512 = "5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==";
+        url = "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz";
+        sha512 = "ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==";
       };
     };
     "@babel/helper-validator-option-7.14.5" = {
@@ -607,13 +607,13 @@ let
         sha512 = "YEdjTCq+LNuNS1WfxsDCNpgXkJaIyqco6DAelTUjT4f2KIWC1nBcaCaSdHTBqQVLnTBexBcVcFhLSU1KnYuePQ==";
       };
     };
-    "@babel/helpers-7.14.6" = {
+    "@babel/helpers-7.14.8" = {
       name = "_at_babel_slash_helpers";
       packageName = "@babel/helpers";
-      version = "7.14.6";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.6.tgz";
-        sha512 = "yesp1ENQBiLI+iYHSJdoZKUtRpfTlL1grDIX9NRlAVppljLw/4tTyYupIB7uIYmC3stW/imAv8EqaKaS/ibmeA==";
+        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.8.tgz";
+        sha512 = "ZRDmI56pnV+p1dH6d+UN6GINGz7Krps3+270qqI9UJ4wxYThfAIcI5i7j5vXC4FJ3Wap+S9qcebxeYiqn87DZw==";
       };
     };
     "@babel/highlight-7.14.5" = {
@@ -634,13 +634,13 @@ let
         sha512 = "OhsyMrqygfk5v8HmWwOzlYjJrtLaFhF34MrfG/Z73DgYCI6ojNUTUp2TYbtnjo8PegeJp12eamsNettCQjKjVw==";
       };
     };
-    "@babel/parser-7.14.7" = {
+    "@babel/parser-7.14.8" = {
       name = "_at_babel_slash_parser";
       packageName = "@babel/parser";
-      version = "7.14.7";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.14.7.tgz";
-        sha512 = "X67Z5y+VBJuHB/RjwECp8kSl5uYi0BvRbNeWqkaJCVh+LiTPl19WBUfG627psSgp9rSf6ojuXghQM3ha6qHHdA==";
+        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.14.8.tgz";
+        sha512 = "syoCQFOoo/fzkWDeM0dLEZi5xqurb5vuyzwIMNZRNun+N/9A4cUZeQaE7dTrB8jGaKuJRBtEOajtnmw0I5hvvA==";
       };
     };
     "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5" = {
@@ -1399,13 +1399,13 @@ let
         sha512 = "9PMijx8zFbCwTHrd2P4PJR5nWGH3zWebx2OcpTjqQrHhCiL2ssSR2Sc9ko2BsI2VmVBfoaQmPrlMTCui4LmXQg==";
       };
     };
-    "@babel/preset-env-7.14.7" = {
+    "@babel/preset-env-7.14.8" = {
       name = "_at_babel_slash_preset-env";
       packageName = "@babel/preset-env";
-      version = "7.14.7";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.7.tgz";
-        sha512 = "itOGqCKLsSUl0Y+1nSfhbuuOlTs0MJk2Iv7iSH+XT/mR8U1zRLO7NjWlYXB47yhK4J/7j+HYty/EhFZDYKa/VA==";
+        url = "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.8.tgz";
+        sha512 = "a9aOppDU93oArQ51H+B8M1vH+tayZbuBqzjOhntGetZVa+4tTu5jp+XTwqHGG2lxslqomPYVSjIxQkFwXzgnxg==";
       };
     };
     "@babel/preset-flow-7.14.5" = {
@@ -1489,13 +1489,13 @@ let
         sha512 = "aY2kU+xgJ3dJ1eU6FMB9EH8dIe8dmusF1xEku52joLvw6eAFN0AI+WxCLDnpev2LEejWBAy2sBvBOBAjI3zmvA==";
       };
     };
-    "@babel/runtime-7.14.6" = {
+    "@babel/runtime-7.14.8" = {
       name = "_at_babel_slash_runtime";
       packageName = "@babel/runtime";
-      version = "7.14.6";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.6.tgz";
-        sha512 = "/PCB2uJ7oM44tz8YhC4Z/6PeOKXp4K588f+5M3clr1M4zbqztlo0XEfJ2LEzj/FgwfgGcIdl8n7YYjTCI0BYwg==";
+        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz";
+        sha512 = "twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==";
       };
     };
     "@babel/runtime-7.9.0" = {
@@ -1507,22 +1507,22 @@ let
         sha512 = "cTIudHnzuWLS56ik4DnRnqqNf8MkdUzV4iFFI1h7Jo9xvrpQROYaAnaSd2mHLQAzzZAPfATynX5ord6YlNYNMA==";
       };
     };
-    "@babel/runtime-corejs3-7.14.7" = {
+    "@babel/runtime-corejs3-7.14.8" = {
       name = "_at_babel_slash_runtime-corejs3";
       packageName = "@babel/runtime-corejs3";
-      version = "7.14.7";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.14.7.tgz";
-        sha512 = "Wvzcw4mBYbTagyBVZpAJWI06auSIj033T/yNE0Zn1xcup83MieCddZA7ls3kme17L4NOGBrQ09Q+nKB41RLWBA==";
+        url = "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.14.8.tgz";
+        sha512 = "4dMD5QRBkumn45oweR0SxoNtt15oz3BUBAQ8cIx7HJqZTtE8zjpM0My8aHJHVnyf4XfRg6DNzaE1080WLBiC1w==";
       };
     };
-    "@babel/standalone-7.14.7" = {
+    "@babel/standalone-7.14.8" = {
       name = "_at_babel_slash_standalone";
       packageName = "@babel/standalone";
-      version = "7.14.7";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/standalone/-/standalone-7.14.7.tgz";
-        sha512 = "7RlfMPR4604SbYpj5zvs2ZK587hVhixgU9Pd9Vs8lB8KYtT3U0apXSf0vZXhy8XRh549eUmJOHXhWKTO3ObzOQ==";
+        url = "https://registry.npmjs.org/@babel/standalone/-/standalone-7.14.8.tgz";
+        sha512 = "5Aa1Bhis4oZD23iLJE5CDYHEs1zSC3ejppHE5aim0OWjGCWTa9Oq1PwopK4u1++ao6B6POW/PqNZjOCZNTSx0Q==";
       };
     };
     "@babel/template-7.14.5" = {
@@ -1534,13 +1534,13 @@ let
         sha512 = "6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==";
       };
     };
-    "@babel/traverse-7.14.7" = {
+    "@babel/traverse-7.14.8" = {
       name = "_at_babel_slash_traverse";
       packageName = "@babel/traverse";
-      version = "7.14.7";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.7.tgz";
-        sha512 = "9vDr5NzHu27wgwejuKL7kIOm4bwEtaPQ4Z6cpCmjSuaRqpH/7xc4qcGEscwMqlkwgcXl6MvqoAjZkQ24uSdIZQ==";
+        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.8.tgz";
+        sha512 = "kexHhzCljJcFNn1KYAQ6A5wxMRzq9ebYpEDV4+WdNyr3i7O44tanbDOR/xjiG2F3sllan+LgwK+7OMk0EmydHg==";
       };
     };
     "@babel/types-7.13.12" = {
@@ -1552,13 +1552,13 @@ let
         sha512 = "K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==";
       };
     };
-    "@babel/types-7.14.5" = {
+    "@babel/types-7.14.8" = {
       name = "_at_babel_slash_types";
       packageName = "@babel/types";
-      version = "7.14.5";
+      version = "7.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/types/-/types-7.14.5.tgz";
-        sha512 = "M/NzBpEL95I5Hh4dwhin5JlE7EzO5PHMAuzjxss3tiOBD46KfQvVedN/3jEPZvdRvtsK2222XfdHogNIttFgcg==";
+        url = "https://registry.npmjs.org/@babel/types/-/types-7.14.8.tgz";
+        sha512 = "iob4soQa7dZw8nodR/KlOQkPh9S4I8RwCxwRIFuiMRYjOzH/KJzdUfDgz6cGi5dDaclXF4P2PAhCdrBJNIg68Q==";
       };
     };
     "@braintree/sanitize-url-3.1.0" = {
@@ -1570,13 +1570,13 @@ let
         sha512 = "GcIY79elgB+azP74j8vqkiXz8xLFfIzbQJdlwOPisgbKT00tviJQuEghOXSMVxJ00HoYJbGswr4kcllUc4xCcg==";
       };
     };
-    "@bugsnag/browser-7.10.4" = {
+    "@bugsnag/browser-7.10.5" = {
       name = "_at_bugsnag_slash_browser";
       packageName = "@bugsnag/browser";
-      version = "7.10.4";
+      version = "7.10.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@bugsnag/browser/-/browser-7.10.4.tgz";
-        sha512 = "1lPhUBIHUCxCyOfMHCfM+rt2cpV49LEeodFBPx8D8+7LJNmxX0JwfQ0OB+7Lv8JNRcnAI3j6Uq6OOTVakhaxBw==";
+        url = "https://registry.npmjs.org/@bugsnag/browser/-/browser-7.10.5.tgz";
+        sha512 = "LxzQ0g8kbVq2YAoZkLM58pzNGqKWV/JxVTBCudHQVp92Wm9Wl7aFVMNPzUWCjp9T9XrNl3h9lrs6Bb127SomyA==";
       };
     };
     "@bugsnag/core-7.10.0" = {
@@ -1597,13 +1597,13 @@ let
         sha512 = "LOt8aaBI+KvOQGneBtpuCz3YqzyEAehd1f3nC5yr9TIYW1+IzYKa2xWS4EiMz5pPOnRPHkyyS5t/wmSmN51Gjg==";
       };
     };
-    "@bugsnag/js-7.10.4" = {
+    "@bugsnag/js-7.10.5" = {
       name = "_at_bugsnag_slash_js";
       packageName = "@bugsnag/js";
-      version = "7.10.4";
+      version = "7.10.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@bugsnag/js/-/js-7.10.4.tgz";
-        sha512 = "XnH3JlG9w1elhmMsByIsQ6JODYdoDlJ75QwvkPjkdybikEm8Zw+OK16JKyxY2scD4RSNbzYMWnbNZvCiFgcDPA==";
+        url = "https://registry.npmjs.org/@bugsnag/js/-/js-7.10.5.tgz";
+        sha512 = "zLlZI+KoBUFTg5gmB9swUq17wVRm1kgY+DDuPGBCv9EqBV+ofXCdfZaSFIXles4fqTH/edN6WXeVrXZ2QnQStg==";
       };
     };
     "@bugsnag/node-7.10.1" = {
@@ -1660,6 +1660,15 @@ let
         sha512 = "sR9Go0U6puXoXyW9UgIiIQhRcJ8jVOvGl4BptUiXAtheMs72WcakZ1udh6J0ZOivr3o8jAM+MTCHLP8FZMbVpQ==";
       };
     };
+    "@corestore/networker-1.1.0" = {
+      name = "_at_corestore_slash_networker";
+      packageName = "@corestore/networker";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@corestore/networker/-/networker-1.1.0.tgz";
+        sha512 = "Pj5Cfyfck1OJfVd4diO4UVo8qabW9O/wgDz5HeY6Okuan98KjMxrAJZG8MPk7I+mjRoYDFgFPVgssx9zv420Ag==";
+      };
+    };
     "@cronvel/get-pixels-3.4.0" = {
       name = "_at_cronvel_slash_get-pixels";
       packageName = "@cronvel/get-pixels";
@@ -1786,166 +1795,166 @@ let
         sha512 = "Fxt+AfXgjMoin2maPIYzFZnQjAXjAL0PHscM5pRTtatFqB+vZxAM9tLp2Optnuw3QOQC40jTNeGYFOMvyf7v9g==";
       };
     };
-    "@electron-forge/async-ora-6.0.0-beta.57" = {
+    "@electron-forge/async-ora-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_async-ora";
       packageName = "@electron-forge/async-ora";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/async-ora/-/async-ora-6.0.0-beta.57.tgz";
-        sha512 = "pinf6bB5etIKNwFgMx2V+kwsFlkjU4mApALv0Jn/lmcH5dlAB4zPwuKTccC44xVO4pp/bV1HWb1XJ4lHVxYaJg==";
+        url = "https://registry.npmjs.org/@electron-forge/async-ora/-/async-ora-6.0.0-beta.58.tgz";
+        sha512 = "osJoCA+Mxda0ToHnVh0c52UiqG0vYRChFp7YZnXSOFAyv/pJhO1gaSfJeTX+2ddki0SLvWQbgiJS5ysMax6Veg==";
       };
     };
-    "@electron-forge/core-6.0.0-beta.57" = {
+    "@electron-forge/core-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_core";
       packageName = "@electron-forge/core";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/core/-/core-6.0.0-beta.57.tgz";
-        sha512 = "pLYG0QefjAEjxRazgEjryb4TrxVeebGTqXqZsKOpABAlDaKU4EmBq06SeSu8H9IAzMPwzpDIa6PaXdkMclqhnA==";
+        url = "https://registry.npmjs.org/@electron-forge/core/-/core-6.0.0-beta.58.tgz";
+        sha512 = "mro6o/Oa2BETPfnzlWcpLJ5W5IWVuDokE7HZPzb9c6OTlcm/BWwl8pbfSZU19Q9SLsjou9hAuMwqzFveZRqGew==";
       };
     };
-    "@electron-forge/installer-base-6.0.0-beta.57" = {
+    "@electron-forge/installer-base-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_installer-base";
       packageName = "@electron-forge/installer-base";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-base/-/installer-base-6.0.0-beta.57.tgz";
-        sha512 = "qeQMUos0WADEddSGhViCUeMswsFz1IL+elIy5h06AxgjoRtOU75VVy9RgVfDAMIN0iKvEWNKLQz1CBUtVAt0fA==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-base/-/installer-base-6.0.0-beta.58.tgz";
+        sha512 = "VXA9cjCy9HHWyOcPGkO1Q5ym63AAfBLj/dL0Ezpw9r0/GKbgAN0g8HWgTwvs+rqWCdOAeyhIs+sTNI0rZQjc+A==";
       };
     };
-    "@electron-forge/installer-darwin-6.0.0-beta.57" = {
+    "@electron-forge/installer-darwin-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_installer-darwin";
       packageName = "@electron-forge/installer-darwin";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-darwin/-/installer-darwin-6.0.0-beta.57.tgz";
-        sha512 = "3dsa948r3gCkD+ooKeGwWSUyh5GEJ7ngi9t1dRD+f1jUnkU1e3SqcGXH68dr5NYn3OcsFDWreK3xvx/1qdEQAg==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-darwin/-/installer-darwin-6.0.0-beta.58.tgz";
+        sha512 = "yfx97cL7+kB77xTeniNqRT4Va++uJX6j9kZwIwgaBFvtyLHZ1DChOlOI8IR6/qctzEtrZHW41DySFKXnsWYwuw==";
       };
     };
-    "@electron-forge/installer-deb-6.0.0-beta.57" = {
+    "@electron-forge/installer-deb-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_installer-deb";
       packageName = "@electron-forge/installer-deb";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-deb/-/installer-deb-6.0.0-beta.57.tgz";
-        sha512 = "Dnm68RUwR0UEe1hq1OPWso0LwdkZTa7Rpv0m9bHl+IvXTmrU//S5fdHEtjHAmto8f8PD5VadsLQcxsc3bQVNGQ==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-deb/-/installer-deb-6.0.0-beta.58.tgz";
+        sha512 = "Ukw1ccUtmTOKCiorYLJCAIWGT5zxpinH1W9UpxlMP3JhrzQXApm2rF7n9TEGowkTMtPciEsNXaF/F9lzjRqIpQ==";
       };
     };
-    "@electron-forge/installer-dmg-6.0.0-beta.57" = {
+    "@electron-forge/installer-dmg-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_installer-dmg";
       packageName = "@electron-forge/installer-dmg";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-dmg/-/installer-dmg-6.0.0-beta.57.tgz";
-        sha512 = "kmAYga2yY5JcrRI3Dtpau5Ldsebzs4pGkCCBJqq5asqgDGdCpw+8Cky6ouJDaZMl853C0CEnqxeoGYDTAlVBKA==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-dmg/-/installer-dmg-6.0.0-beta.58.tgz";
+        sha512 = "zw46CQSZ2Jihx7GBUcEPHGBQJD1pIBv6oTi5HPR7IkEJ7CQ/yjESAfDuu1UfQc9mgAKI+6s+QMuFZMW+ZMqYPg==";
       };
     };
-    "@electron-forge/installer-exe-6.0.0-beta.57" = {
+    "@electron-forge/installer-exe-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_installer-exe";
       packageName = "@electron-forge/installer-exe";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-exe/-/installer-exe-6.0.0-beta.57.tgz";
-        sha512 = "hVh4vh2q7BxJ8npsVCSxSdoUMwQwcs0LidbanXK8CqHmTgnb9MNDSHomCxOnX+kMQX85mCj9Nc5ROviXnLN4Xg==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-exe/-/installer-exe-6.0.0-beta.58.tgz";
+        sha512 = "Z7gl1CX8WJ/9kr5As9y0GELK8/u754j7bzSlxmaeyhaO/vSf5+M/MjkEiPUQUKVmqZ77ngdzN/T4IfDGxpk++A==";
       };
     };
-    "@electron-forge/installer-linux-6.0.0-beta.57" = {
+    "@electron-forge/installer-linux-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_installer-linux";
       packageName = "@electron-forge/installer-linux";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-linux/-/installer-linux-6.0.0-beta.57.tgz";
-        sha512 = "MTK4wLCWxYctzo/htghNhZ5ptIf46AE3UdeQItjiEhL4+KjJjQN8JAVkl40WeM+rUDA53WRQ35HeykNBmspb6A==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-linux/-/installer-linux-6.0.0-beta.58.tgz";
+        sha512 = "39A2mmhsJg2MEjYS+gtF/9FUYLKEoVmD6e4S+Rn0u9Yv/WOtdqOR0KR/pLYPtsiQKsGQA5nD2V2/ZN8N/qTxZw==";
       };
     };
-    "@electron-forge/installer-rpm-6.0.0-beta.57" = {
+    "@electron-forge/installer-rpm-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_installer-rpm";
       packageName = "@electron-forge/installer-rpm";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-rpm/-/installer-rpm-6.0.0-beta.57.tgz";
-        sha512 = "cTzL6mwkhKEkl4v7NE2ATaEsptf5OhTbtwb/tRVIuEOblYKTxw3x9nnH8iGJ73xPW/54awGiU1kHJTKA6UhcUA==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-rpm/-/installer-rpm-6.0.0-beta.58.tgz";
+        sha512 = "RyuKOGJoJknnp1C9WPFDc06Jw9K+KBM574byYegNiJPm5eGu+ZL/4tU9hD29YAtImyoGUy8L5dquApaC4d9zKA==";
       };
     };
-    "@electron-forge/installer-zip-6.0.0-beta.57" = {
+    "@electron-forge/installer-zip-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_installer-zip";
       packageName = "@electron-forge/installer-zip";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/installer-zip/-/installer-zip-6.0.0-beta.57.tgz";
-        sha512 = "ip/mlC32/mdUzFsM/39cZWshLN1B1f6atYHd2OpXlyAz6IZWrRHdsrJGtYsGdpgeoV/wMm09MTyuKXku3ehPaQ==";
+        url = "https://registry.npmjs.org/@electron-forge/installer-zip/-/installer-zip-6.0.0-beta.58.tgz";
+        sha512 = "J71WhNtHdgFDNCYB2vm3vv4Zt/rCuXFgtXxXRowb+pT39wxyL35DjXsOi/a6j5Vb2lGq0mekMuHvpcD/4MSo8w==";
       };
     };
-    "@electron-forge/maker-base-6.0.0-beta.57" = {
+    "@electron-forge/maker-base-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_maker-base";
       packageName = "@electron-forge/maker-base";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/maker-base/-/maker-base-6.0.0-beta.57.tgz";
-        sha512 = "VnoSCeyCHBv9q0Bz9JRgKC1b4k3z/Qb2T9DrpMqEVW6ClZVkOAZVmjyEtb+Xn8DnRPc4UtSjpAquycC/AZJ4MQ==";
+        url = "https://registry.npmjs.org/@electron-forge/maker-base/-/maker-base-6.0.0-beta.58.tgz";
+        sha512 = "Ztbv99kznlOAK/iDM03Hu/XmdTEXmfLnkcfAJ+uBlRwJmFqiAcPWNlUrPWtCu5KKxHcOiDl6mN3OC/Ae2/3fMA==";
       };
     };
-    "@electron-forge/plugin-base-6.0.0-beta.57" = {
+    "@electron-forge/plugin-base-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_plugin-base";
       packageName = "@electron-forge/plugin-base";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/plugin-base/-/plugin-base-6.0.0-beta.57.tgz";
-        sha512 = "lErdgdSGd+HcIzXsZC1Pf6VuLYsDVHTwFUzuZqUPdl28AOWKfwW+XpIZoPMDt2/Mdd5K0mCcYSylikcSa8RHYA==";
+        url = "https://registry.npmjs.org/@electron-forge/plugin-base/-/plugin-base-6.0.0-beta.58.tgz";
+        sha512 = "RMRjw8iRqkPChSMKdTSWCSubvDMSdJx+9Q9eO8n3GRN0jx4ExizhSIkxWpLSuze5dPyJXm3i24YUZjKOAR21EA==";
       };
     };
-    "@electron-forge/publisher-base-6.0.0-beta.57" = {
+    "@electron-forge/publisher-base-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_publisher-base";
       packageName = "@electron-forge/publisher-base";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/publisher-base/-/publisher-base-6.0.0-beta.57.tgz";
-        sha512 = "eJFVt4JI/zCw86PMu/LERMAMVcPchyFfZ9upFec4YuOOMLaJH1NvbO3gGgYj7vavH1hQWZA6Yn7u8b+E8y8Byw==";
+        url = "https://registry.npmjs.org/@electron-forge/publisher-base/-/publisher-base-6.0.0-beta.58.tgz";
+        sha512 = "pnAZ7VXnL0vosYn4Au347WukXVTU0XLqUSQrjC4pYCMs7YumL4n+ya+JNy51D6SkcFMmd0nCU2ohz7IHo3ttcg==";
       };
     };
-    "@electron-forge/shared-types-6.0.0-beta.57" = {
+    "@electron-forge/shared-types-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_shared-types";
       packageName = "@electron-forge/shared-types";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/shared-types/-/shared-types-6.0.0-beta.57.tgz";
-        sha512 = "8jRAf7HsfQC5BA8MTOwh8cXmqJ8JJqzO7WzDW9A50tHOKbpBxPW9YM8036SZzZ4GNZYBSWmJt3d3vW+KFLeYXg==";
+        url = "https://registry.npmjs.org/@electron-forge/shared-types/-/shared-types-6.0.0-beta.58.tgz";
+        sha512 = "Kz21kMg+EnINGK3H6qW4YXjFbXYvRv24O8PBnVaQiFXYIaUOXpaXj42QeytDXR/zMSA/jy78GoGodJLKE+gbdA==";
       };
     };
-    "@electron-forge/template-base-6.0.0-beta.57" = {
+    "@electron-forge/template-base-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_template-base";
       packageName = "@electron-forge/template-base";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/template-base/-/template-base-6.0.0-beta.57.tgz";
-        sha512 = "3Nc7ik99VHQK8eTUrO/lA2tMRM5a0fLX+GgjR32yzkaAv081qd6t/XWS7MfU3k5Ld5cYMturUywJnEP/QdxOvA==";
+        url = "https://registry.npmjs.org/@electron-forge/template-base/-/template-base-6.0.0-beta.58.tgz";
+        sha512 = "U2iT2YUY9R2wz9RNkM9dAEzv5q+b3HSDJcqPy/B7lzT3lB9kni0HZTZKihZttlQYGRO6jj+9aWnLqaE3HmtgsQ==";
       };
     };
-    "@electron-forge/template-typescript-6.0.0-beta.57" = {
+    "@electron-forge/template-typescript-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_template-typescript";
       packageName = "@electron-forge/template-typescript";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/template-typescript/-/template-typescript-6.0.0-beta.57.tgz";
-        sha512 = "NhcyTaLjbBGtdCTkAJgazKR4B9+yNFNH8QiXm3u6bg0cv2MhPWydmPuiEjFRLqG+Vz6jS4sW6jSIyCjFRK42ow==";
+        url = "https://registry.npmjs.org/@electron-forge/template-typescript/-/template-typescript-6.0.0-beta.58.tgz";
+        sha512 = "x3dJeB4VDg18c69GOOUSk0LFRygaN2fDYxxjTZcGMlnsUTyypXkuaVIoEnMnB01TlY+gTPrsoITeB2e7ahSyaQ==";
       };
     };
-    "@electron-forge/template-typescript-webpack-6.0.0-beta.57" = {
+    "@electron-forge/template-typescript-webpack-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_template-typescript-webpack";
       packageName = "@electron-forge/template-typescript-webpack";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/template-typescript-webpack/-/template-typescript-webpack-6.0.0-beta.57.tgz";
-        sha512 = "S9AzVLB02AvOwEOtQvtSJlv7BPZPSX3gdqwhoxPcTP6Pi/hOvVeEweptkwwRzGsZmSI7/ifi1bq7avhnzjasZw==";
+        url = "https://registry.npmjs.org/@electron-forge/template-typescript-webpack/-/template-typescript-webpack-6.0.0-beta.58.tgz";
+        sha512 = "PTh0TW+ohn7BT+jjdQ3ubqFU9biP2ilfA36vA1Dgnv9/N8P1IBoEtXFJ4ilsMZOAfbp344ja9vsTFG+qGTsiDw==";
       };
     };
-    "@electron-forge/template-webpack-6.0.0-beta.57" = {
+    "@electron-forge/template-webpack-6.0.0-beta.58" = {
       name = "_at_electron-forge_slash_template-webpack";
       packageName = "@electron-forge/template-webpack";
-      version = "6.0.0-beta.57";
+      version = "6.0.0-beta.58";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron-forge/template-webpack/-/template-webpack-6.0.0-beta.57.tgz";
-        sha512 = "df4/jHKcZ6+8qIE+h2U9Ej5P36uGQZjI8+CcIPDE/46avHT+BwCmlMA/ZTGUQ787U9WkoMiI7122jdd7GNyuCQ==";
+        url = "https://registry.npmjs.org/@electron-forge/template-webpack/-/template-webpack-6.0.0-beta.58.tgz";
+        sha512 = "Uf7Ck17bn3djuoSglzOioXhOBRqY72pqMSZF0K84zNGwfzsW/KSonizmOMG3yrvSDEQf48JE5Ezhssla3SSgiA==";
       };
     };
     "@electron/get-1.12.4" = {
@@ -2029,13 +2038,13 @@ let
         sha512 = "OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==";
       };
     };
-    "@eslint/eslintrc-0.4.2" = {
+    "@eslint/eslintrc-0.4.3" = {
       name = "_at_eslint_slash_eslintrc";
       packageName = "@eslint/eslintrc";
-      version = "0.4.2";
+      version = "0.4.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz";
-        sha512 = "8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==";
+        url = "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz";
+        sha512 = "J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==";
       };
     };
     "@exodus/schemasafe-1.0.0-rc.3" = {
@@ -2065,49 +2074,49 @@ let
         sha512 = "Ydf4LidRB/EBI+YrB+cVLqIseiRfjUI/AeHBgjGMtq3GroraDu81OV7zqophRgupngoL3iS3JUMDMnxO7g39qA==";
       };
     };
-    "@expo/config-5.0.2" = {
+    "@expo/config-5.0.5" = {
       name = "_at_expo_slash_config";
       packageName = "@expo/config";
-      version = "5.0.2";
+      version = "5.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/config/-/config-5.0.2.tgz";
-        sha512 = "NJd2iQDIWNn6vVv4NEeUMrRPFtV27loaR9w1I0d+lhbfrfIqY7JxI7OgDS8udwjBi0iWnO+BUb0l4C5SmfHuhA==";
+        url = "https://registry.npmjs.org/@expo/config/-/config-5.0.5.tgz";
+        sha512 = "r3/Y6mFhOmGqEfhhkUncP6/Qg8Aexg1G66TzDzd97iNezCY2LP9c2hwyN7SwhBv5l1YBNc2zeT556xXe0v4Qgw==";
       };
     };
-    "@expo/config-plugins-3.0.2" = {
+    "@expo/config-plugins-3.0.5" = {
       name = "_at_expo_slash_config-plugins";
       packageName = "@expo/config-plugins";
-      version = "3.0.2";
+      version = "3.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-3.0.2.tgz";
-        sha512 = "bS7t9JbPBK1lCcMo2mp7QSDq2a4xsc8E6sEYVwD+YS5RKx7nxEtSYohnFWlKthm624dHCaVzqEbKxhIGO3M3Uw==";
+        url = "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-3.0.5.tgz";
+        sha512 = "hHKr6i201QG16ms93XiXwcI1IhDYhITCRt7hWNO1UPxt2Cm7yDOG2YoGkauP0V/nAN3TEocDYbCrltGFBdoCTg==";
       };
     };
-    "@expo/config-types-41.0.0" = {
+    "@expo/config-types-42.0.0" = {
       name = "_at_expo_slash_config-types";
       packageName = "@expo/config-types";
-      version = "41.0.0";
+      version = "42.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/config-types/-/config-types-41.0.0.tgz";
-        sha512 = "Ax0pHuY5OQaSrzplOkT9DdpdmNzaVDnq9VySb4Ujq7UJ4U4jriLy8u93W98zunOXpcu0iiKubPsqD6lCiq0pig==";
+        url = "https://registry.npmjs.org/@expo/config-types/-/config-types-42.0.0.tgz";
+        sha512 = "Rj02OMZke2MrGa/1Y/EScmR7VuWbDEHPJyvfFyyLbadUt+Yv6isCdeFzDt71I7gJlPR9T4fzixeYLrtXXOTq0w==";
       };
     };
-    "@expo/dev-server-0.1.77" = {
+    "@expo/dev-server-0.1.80" = {
       name = "_at_expo_slash_dev-server";
       packageName = "@expo/dev-server";
-      version = "0.1.77";
+      version = "0.1.80";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/dev-server/-/dev-server-0.1.77.tgz";
-        sha512 = "gOnJ3YAVVMsi+lZY39O9KRCVRCPs61dhONJ0OLuOdtt8N5/VG+CTKNiyls1k5jAxsAzeOPzZsPqRNMTKvnxsOg==";
+        url = "https://registry.npmjs.org/@expo/dev-server/-/dev-server-0.1.80.tgz";
+        sha512 = "+5HaLrd0QM8/CpqDhK9qDghZl1DkdqGz0QnSkPZDexnfZjTrEjPX8aXd0H5mv67W9ev1eUtoiABY6iU0wZ7czg==";
       };
     };
-    "@expo/dev-tools-0.13.107" = {
+    "@expo/dev-tools-0.13.110" = {
       name = "_at_expo_slash_dev-tools";
       packageName = "@expo/dev-tools";
-      version = "0.13.107";
+      version = "0.13.110";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/dev-tools/-/dev-tools-0.13.107.tgz";
-        sha512 = "F60wit5+MiXzFPZ1R2rQuM0wC4vdesKtUrV8ipQyGdEkjogZ2mdq7OJbxofnzslkyAGImWfyKRJhqMflRBD/9w==";
+        url = "https://registry.npmjs.org/@expo/dev-tools/-/dev-tools-0.13.110.tgz";
+        sha512 = "heG6yXLwN87o0jMn90xstsl5GULNABtDx03/jPS6sy3Yqgf6SiqZpwXCWp+kZgSi+fWFE6TRAsk91eWhLRHjug==";
       };
     };
     "@expo/devcert-1.0.0" = {
@@ -2119,49 +2128,49 @@ let
         sha512 = "cahGyQCmpZmHpn2U04NR9KwsOIZy7Rhsw8Fg4q+A6563lIJxbkrgPnxq/O3NQAh3ohEvOXOOnoFx0b4yycCkpQ==";
       };
     };
-    "@expo/image-utils-0.3.14" = {
+    "@expo/image-utils-0.3.15" = {
       name = "_at_expo_slash_image-utils";
       packageName = "@expo/image-utils";
-      version = "0.3.14";
+      version = "0.3.15";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/image-utils/-/image-utils-0.3.14.tgz";
-        sha512 = "n+JkLZ71CWuNKLVVsPTzMGRwmbeKiVQw/2b99Ro7znCKzJy3tyE5T2C6WBvYh/5h/hjg8TqEODjXXWucRIzMXA==";
+        url = "https://registry.npmjs.org/@expo/image-utils/-/image-utils-0.3.15.tgz";
+        sha512 = "uLJMNZ6ux5nBpLxxP1tUtFjpPG6stv0IGEBug6nVZfwQgR/BAsEao+RqZFqrcKhiXw2rIwhKhkspfWU5G6e1dw==";
       };
     };
-    "@expo/json-file-8.2.30" = {
+    "@expo/json-file-8.2.31" = {
       name = "_at_expo_slash_json-file";
       packageName = "@expo/json-file";
-      version = "8.2.30";
+      version = "8.2.31";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/json-file/-/json-file-8.2.30.tgz";
-        sha512 = "vrgGyPEXBoFI5NY70IegusCSoSVIFV3T3ry4tjJg1MFQKTUlR7E0r+8g8XR6qC705rc2PawaZQjqXMAVtV6s2A==";
+        url = "https://registry.npmjs.org/@expo/json-file/-/json-file-8.2.31.tgz";
+        sha512 = "GvbL1tQnM3kGOM9hG+lwGbPJ/1tX+Sb8ZkqRrJlRpWGRa4DwnpLvIZHlWMb1ug/ye1QC7+RK/KwRZ7xcAXergA==";
       };
     };
-    "@expo/metro-config-0.1.77" = {
+    "@expo/metro-config-0.1.80" = {
       name = "_at_expo_slash_metro-config";
       packageName = "@expo/metro-config";
-      version = "0.1.77";
+      version = "0.1.80";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/metro-config/-/metro-config-0.1.77.tgz";
-        sha512 = "PGxcxkN1AJjzn82Fb3zBxbG0kI6V6BrYVhICPL3jenreKQYaHN0+/owkAwX+8MxKqaJqJR6outw8I+Gypp4ZcQ==";
+        url = "https://registry.npmjs.org/@expo/metro-config/-/metro-config-0.1.80.tgz";
+        sha512 = "A2jFV4XWNaT/LR7oKkLMFbCNTpI7JWCbns1mmhjA3zKf8k03Kj2mLEoJMI17JtLtz0WuH9hvqr5OuaK7jlmegQ==";
       };
     };
-    "@expo/osascript-2.0.28" = {
+    "@expo/osascript-2.0.29" = {
       name = "_at_expo_slash_osascript";
       packageName = "@expo/osascript";
-      version = "2.0.28";
+      version = "2.0.29";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/osascript/-/osascript-2.0.28.tgz";
-        sha512 = "+0R/+DK/kTjFmkFShPlwowO3Ro0X0nQ3F7uRaOsXomZVjvrjSaOQOlFYRDr0Ci3pbEWS8MGUhlC7GXlba4VsTw==";
+        url = "https://registry.npmjs.org/@expo/osascript/-/osascript-2.0.29.tgz";
+        sha512 = "R0DtZY0NOGCwd+JHS/OO6I/Jkg7acpHAqFFDuwCPfEPgL9HJPr1fKc1rTuMYE7+der5/Pe1EXlo1/c3GFYlHxw==";
       };
     };
-    "@expo/package-manager-0.0.43" = {
+    "@expo/package-manager-0.0.44" = {
       name = "_at_expo_slash_package-manager";
       packageName = "@expo/package-manager";
-      version = "0.0.43";
+      version = "0.0.44";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/package-manager/-/package-manager-0.0.43.tgz";
-        sha512 = "Keguxd7fH1JbFd/4fU3PuN3h4usZ3NyRFXgi7ZjAYul8uKt+/XB2HBvliukdThGJKhypMeVWcNYWuLCUm74B1Q==";
+        url = "https://registry.npmjs.org/@expo/package-manager/-/package-manager-0.0.44.tgz";
+        sha512 = "Yw8gHc1+kt64VXcUtrZ3w6ljy7Xxb5P0YY5acZiAaW6cdeOYtkeCtYcKrCAWlQaGdg8mYOWtfPEF1Ydy8IOjpg==";
       };
     };
     "@expo/plist-0.0.13" = {
@@ -2173,13 +2182,13 @@ let
         sha512 = "zGPSq9OrCn7lWvwLLHLpHUUq2E40KptUFXn53xyZXPViI0k9lbApcR9KlonQZ95C+ELsf0BQ3gRficwK92Ivcw==";
       };
     };
-    "@expo/prebuild-config-2.0.2" = {
+    "@expo/prebuild-config-2.0.5" = {
       name = "_at_expo_slash_prebuild-config";
       packageName = "@expo/prebuild-config";
-      version = "2.0.2";
+      version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/prebuild-config/-/prebuild-config-2.0.2.tgz";
-        sha512 = "wyAPiu1tnUghDoE5cUbjD92rF/rtyNqrfdwmcn56q8EG7MKuO47CxFrkhAL0EBVplPhSdzZ3zPFOtWzYK7E+6Q==";
+        url = "https://registry.npmjs.org/@expo/prebuild-config/-/prebuild-config-2.0.5.tgz";
+        sha512 = "TTqKtfnavnlNSMKsdAVfR8bNOYQrR2WM6QpyOISgT9Cuu11ykxMbrmFEGazvIIGmYJhh6f9+CVwoqoZbf9hH7Q==";
       };
     };
     "@expo/results-1.0.0" = {
@@ -2191,13 +2200,22 @@ let
         sha512 = "qECzzXX5oJot3m2Gu9pfRDz50USdBieQVwYAzeAtQRUTD3PVeTK1tlRUoDcrK8PSruDLuVYdKkLebX4w/o55VA==";
       };
     };
-    "@expo/schemer-1.3.29" = {
+    "@expo/schemer-1.3.30" = {
       name = "_at_expo_slash_schemer";
       packageName = "@expo/schemer";
-      version = "1.3.29";
+      version = "1.3.30";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/schemer/-/schemer-1.3.29.tgz";
-        sha512 = "7Ch3c39xZunAo/yv8lj62pc9m5jmKKeyCrz7wKe4p3dETvcvLpqaaxl8ylWm//Nok27D290y1q/pE5i12KA+Pg==";
+        url = "https://registry.npmjs.org/@expo/schemer/-/schemer-1.3.30.tgz";
+        sha512 = "RYg6eiz2i3ETGlydUejszHoKkj9OaCedp3eVVr3065DY2MYTPoPwyfapU8CBljIJBeKpW9tc/Yvr9ZJbXibkVg==";
+      };
+    };
+    "@expo/sdk-runtime-versions-1.0.0" = {
+      name = "_at_expo_slash_sdk-runtime-versions";
+      packageName = "@expo/sdk-runtime-versions";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@expo/sdk-runtime-versions/-/sdk-runtime-versions-1.0.0.tgz";
+        sha512 = "Doz2bfiPndXYFPMRwPyGa1k5QaKDVpY806UJj570epIiMzWaYyCtobasyfC++qfIXVb5Ocy7r3tP9d62hAQ7IQ==";
       };
     };
     "@expo/simple-spinner-1.0.2" = {
@@ -2218,13 +2236,13 @@ let
         sha512 = "LB7jWkqrHo+5fJHNrLAFdimuSXQ2MQ4lA7SQW5bf/HbsXuV2VrT/jN/M8f/KoWt0uJMGN4k/j7Opx4AvOOxSew==";
       };
     };
-    "@expo/webpack-config-0.12.81" = {
+    "@expo/webpack-config-0.13.1" = {
       name = "_at_expo_slash_webpack-config";
       packageName = "@expo/webpack-config";
-      version = "0.12.81";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/webpack-config/-/webpack-config-0.12.81.tgz";
-        sha512 = "hsWI3EwYcwsG2E1VKlkaQwiLofgH6g7qNRpnoncnvbVEsfHhvA5+aI8/CMiUO+sHh6RPJWgux12O89TXS/DeBg==";
+        url = "https://registry.npmjs.org/@expo/webpack-config/-/webpack-config-0.13.1.tgz";
+        sha512 = "OaTtB5nQp4Vqxx+ORDIn7ROL4yEqQBFYPp3TnPVKi9AxOOxqjatxvcIUreDJlb2r9G+Eeub9dW0DSF6ETtBnGg==";
       };
     };
     "@expo/xcpretty-3.1.4" = {
@@ -2263,13 +2281,13 @@ let
         sha512 = "o8iU1VIY+QsqVRWARKiky29fh4KR1xaKSgMClXIi65qkt8EDDhjmlzL0KVDEoDA2GWukwb/1PpaVCWDg4v3cUQ==";
       };
     };
-    "@fluentui/date-time-utilities-8.2.0" = {
+    "@fluentui/date-time-utilities-8.2.1" = {
       name = "_at_fluentui_slash_date-time-utilities";
       packageName = "@fluentui/date-time-utilities";
-      version = "8.2.0";
+      version = "8.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/date-time-utilities/-/date-time-utilities-8.2.0.tgz";
-        sha512 = "OunpRZ8hyDPLNWwrx8w17eUwGdNYjG4kGR9+jzvQQJjswk94KMxc6SY33mlTLVEbagjdHMHw9jR7STS+JCQNcA==";
+        url = "https://registry.npmjs.org/@fluentui/date-time-utilities/-/date-time-utilities-8.2.1.tgz";
+        sha512 = "0AYXaXFQ3bPsOtiOi3bJSihzf+w3L44iQK38EiQgp3uAXei/i36VtDCToHZehYV+eS4s1qb/QGksoL0F4G6WCQ==";
       };
     };
     "@fluentui/dom-utilities-1.1.2" = {
@@ -2281,31 +2299,31 @@ let
         sha512 = "XqPS7l3YoMwxdNlaYF6S2Mp0K3FmVIOIy2K3YkMc+eRxu9wFK6emr2Q/3rBhtG5u/On37NExRT7/5CTLnoi9gw==";
       };
     };
-    "@fluentui/dom-utilities-2.1.2" = {
+    "@fluentui/dom-utilities-2.1.3" = {
       name = "_at_fluentui_slash_dom-utilities";
       packageName = "@fluentui/dom-utilities";
-      version = "2.1.2";
+      version = "2.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/dom-utilities/-/dom-utilities-2.1.2.tgz";
-        sha512 = "9LxI3iLbBkyoudRyk0nPTjMdMB2+ClDfM8V3A0SM82e5cDss5qlo0fog/2T2aoaon+hwfeinpiY4e3znx+Nn0w==";
+        url = "https://registry.npmjs.org/@fluentui/dom-utilities/-/dom-utilities-2.1.3.tgz";
+        sha512 = "i2YECSldnkzPAhVmrxksuKSbqBKfMbHrexGqDJm7dy6KoIx+JSilbA5Lz0YNhA7VEgCy1X01GHlWBvqhCNQW8g==";
       };
     };
-    "@fluentui/font-icons-mdl2-8.1.4" = {
+    "@fluentui/font-icons-mdl2-8.1.6" = {
       name = "_at_fluentui_slash_font-icons-mdl2";
       packageName = "@fluentui/font-icons-mdl2";
-      version = "8.1.4";
+      version = "8.1.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/font-icons-mdl2/-/font-icons-mdl2-8.1.4.tgz";
-        sha512 = "v0NRk+W2qJQtBsH9hqYNG5Xnic8C1kfB0I+OTGasFYPvxdd0APcWw2vajrlE49ijgVjXS0AByCgF6mu8LiYlHg==";
+        url = "https://registry.npmjs.org/@fluentui/font-icons-mdl2/-/font-icons-mdl2-8.1.6.tgz";
+        sha512 = "tNAaX72NQYbvR9zeiOiVQBQhYtVgPUgh68LKTGywuYGc2WffBu20Xk9wII8iLGmAijLI1QClaCQxaRAL0IkfBA==";
       };
     };
-    "@fluentui/foundation-legacy-8.1.4" = {
+    "@fluentui/foundation-legacy-8.1.6" = {
       name = "_at_fluentui_slash_foundation-legacy";
       packageName = "@fluentui/foundation-legacy";
-      version = "8.1.4";
+      version = "8.1.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/foundation-legacy/-/foundation-legacy-8.1.4.tgz";
-        sha512 = "Kd+XpHsv3UEnDTwEnUm93Au+QGpYZ5x/VuQsv8K1sDM+gjb3BDohuwR6MWgzgCMJiVW0NMlbS4I2OpUZa6k5eg==";
+        url = "https://registry.npmjs.org/@fluentui/foundation-legacy/-/foundation-legacy-8.1.6.tgz";
+        sha512 = "TJzUFcpfcJefXNmTOAJBKgIlQXDPw/dIcpO9l2nBfORvy4RnrJK4QjpdJPp5XOhDPtDVjlKPB1WvavoRkPRrbg==";
       };
     };
     "@fluentui/keyboard-key-0.2.17" = {
@@ -2317,31 +2335,31 @@ let
         sha512 = "iT1bU56rKrKEOfODoW6fScY11qj3iaYrZ+z11T6fo5+TDm84UGkkXjLXJTE57ZJzg0/gbccHQWYv+chY7bJN8Q==";
       };
     };
-    "@fluentui/keyboard-key-0.3.2" = {
+    "@fluentui/keyboard-key-0.3.3" = {
       name = "_at_fluentui_slash_keyboard-key";
       packageName = "@fluentui/keyboard-key";
-      version = "0.3.2";
+      version = "0.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/keyboard-key/-/keyboard-key-0.3.2.tgz";
-        sha512 = "Hjes+WUgVRqikyvmBEuyovw89inYZ1qVmdp4kKi/6BGvQlAcHgGIVfmdnlFumP4lmFpBW8uUh2K1ZmfY0xwQ6Q==";
+        url = "https://registry.npmjs.org/@fluentui/keyboard-key/-/keyboard-key-0.3.3.tgz";
+        sha512 = "3qX1WNCgJlKq7uGH76rLC4cdESgwdLhMH9WjcQUkQNJKtBpL4vs5O99M1keEhd3pfooW7zasr6AcYcWq4BRB4g==";
       };
     };
-    "@fluentui/merge-styles-8.1.2" = {
+    "@fluentui/merge-styles-8.1.3" = {
       name = "_at_fluentui_slash_merge-styles";
       packageName = "@fluentui/merge-styles";
-      version = "8.1.2";
+      version = "8.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/merge-styles/-/merge-styles-8.1.2.tgz";
-        sha512 = "r0EGKfJUjZw9yJ21VMXjaqLoujvBkRIWRQVMM6CUxbY+02dhKUt6Sa9QA/8m8klsEWBENOaKZ4uX5U2vWWBlyw==";
+        url = "https://registry.npmjs.org/@fluentui/merge-styles/-/merge-styles-8.1.3.tgz";
+        sha512 = "5vZUyXnbOb9M1rMLzQ7Kj5uadHgSTsp3gv0xDv6bfPvzB9RgQa3dEuJ6TA34tLezw8sFYuA6NnKd57nlb4aXMA==";
       };
     };
-    "@fluentui/react-7.172.1" = {
+    "@fluentui/react-7.173.1" = {
       name = "_at_fluentui_slash_react";
       packageName = "@fluentui/react";
-      version = "7.172.1";
+      version = "7.173.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/react/-/react-7.172.1.tgz";
-        sha512 = "XJhYEo0fn/30i4m+qJkT1y5kNTZ8DAwzWhdGSyTiOrxiJ7pKWOoXAdWnvhtk3iY0SPVWSD9jTn5lMT/2WkZbJw==";
+        url = "https://registry.npmjs.org/@fluentui/react/-/react-7.173.1.tgz";
+        sha512 = "+6PB+CwwL2GNHy4GrDR6871ng7A7FRGXSHQzGqfeLq7Dr7vjO82fGuIsrIaFO1Ry1lug6c41uC5Bon/mKcs1KQ==";
       };
     };
     "@fluentui/react-8.22.0" = {
@@ -2362,22 +2380,22 @@ let
         sha512 = "JkLWNDe567lhvbnIhbYv9nUWYDIVN06utc3krs0UZBI+A0YZtQmftBtY0ghXo4PSjgozZocdu9sYkkgZOgyRLg==";
       };
     };
-    "@fluentui/react-focus-8.1.5" = {
+    "@fluentui/react-focus-8.1.8" = {
       name = "_at_fluentui_slash_react-focus";
       packageName = "@fluentui/react-focus";
-      version = "8.1.5";
+      version = "8.1.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/react-focus/-/react-focus-8.1.5.tgz";
-        sha512 = "zvHwta+lRmw2kYRif0Zz6+skmfxUzagd15iMlUPRIVAcsj+rxOkoE7g8NlhXym7HsgMiKRAYJM0CdfMauCnkvQ==";
+        url = "https://registry.npmjs.org/@fluentui/react-focus/-/react-focus-8.1.8.tgz";
+        sha512 = "EUI1TZwM7T2keNEjqIAkeV9ALMlLjz7abqHk0AypKJG3v4YPQHycal37KAHQb+gdVJX2hjVQLxynI1yrquKFUw==";
       };
     };
-    "@fluentui/react-hooks-8.2.3" = {
+    "@fluentui/react-hooks-8.2.4" = {
       name = "_at_fluentui_slash_react-hooks";
       packageName = "@fluentui/react-hooks";
-      version = "8.2.3";
+      version = "8.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/react-hooks/-/react-hooks-8.2.3.tgz";
-        sha512 = "JqQNLIc0WOwwMZ3rAnBkcy0oHZD83Bi1hs7qpvwGUW1OrL3QoJqEnmiKPowxWb8NUeKEP51cBfGi+/7aqbDZAg==";
+        url = "https://registry.npmjs.org/@fluentui/react-hooks/-/react-hooks-8.2.4.tgz";
+        sha512 = "qc/j0YdxC0zAWVqh8BJppZuK3o9/rfyu5psY4N/AL9dmKrTFWszRgTSB5uiRShN99L88UUEV9RtlfknnLDGrUg==";
       };
     };
     "@fluentui/react-window-provider-1.0.2" = {
@@ -2389,31 +2407,31 @@ let
         sha512 = "fGSgL3Vp/+6t1Ysfz21FWZmqsU+iFVxOigvHnm5uKVyyRPwtaabv/F6kQ2y5isLMI2YmJaUd2i0cDJKu8ggrvw==";
       };
     };
-    "@fluentui/react-window-provider-2.1.2" = {
+    "@fluentui/react-window-provider-2.1.3" = {
       name = "_at_fluentui_slash_react-window-provider";
       packageName = "@fluentui/react-window-provider";
-      version = "2.1.2";
+      version = "2.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/react-window-provider/-/react-window-provider-2.1.2.tgz";
-        sha512 = "VWtesIAZR5fdlZMwYco/M5EBb3jawUkslQYOKsneNq+mq8ThkUs1Bol5bpK6jwmouROscu76HD1QfjdACAfkLQ==";
+        url = "https://registry.npmjs.org/@fluentui/react-window-provider/-/react-window-provider-2.1.3.tgz";
+        sha512 = "3NWL3Kkqp3elD/aTrUaEufRUrN7K7hYsXEsOY2bDCDjPadLGtZlTGWNYFbUYNsaL/v79gZHhH+voCECP85HqRg==";
       };
     };
-    "@fluentui/set-version-8.1.2" = {
+    "@fluentui/set-version-8.1.3" = {
       name = "_at_fluentui_slash_set-version";
       packageName = "@fluentui/set-version";
-      version = "8.1.2";
+      version = "8.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/set-version/-/set-version-8.1.2.tgz";
-        sha512 = "uCPwdBsahBbLuN8UkbmXtp+u8Gxqtm5+fZ1UuOUBhEL7MKl86LrWmxoy4IW3JD2rcbaYpCb7KFpnMB5s0Nx0ZA==";
+        url = "https://registry.npmjs.org/@fluentui/set-version/-/set-version-8.1.3.tgz";
+        sha512 = "QYLFBnwa6xJj0phEy6r+iO5bXWXxkhS1uNngUwfWsHaTskDa4PXDDdjZAXjTVV935xqmoM4GZhZk+Tcoe/OaXA==";
       };
     };
-    "@fluentui/style-utilities-8.1.4" = {
+    "@fluentui/style-utilities-8.2.0" = {
       name = "_at_fluentui_slash_style-utilities";
       packageName = "@fluentui/style-utilities";
-      version = "8.1.4";
+      version = "8.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/style-utilities/-/style-utilities-8.1.4.tgz";
-        sha512 = "tR/ntfobJvuCtLyi7jpEbsq67iTaBNq/lpq+tYuvIqI8Gl90L9a8g8344ADP4+9/i3TKsrAZgnV9vze66ybHOw==";
+        url = "https://registry.npmjs.org/@fluentui/style-utilities/-/style-utilities-8.2.0.tgz";
+        sha512 = "gdAgBnevDOHbgqAKCaQG4CXN6dONMg8BRSZNqha0I9WdgLJy7F7t4xVo8elPjlDUP72ciYT8J9Z/YNljZzbE0w==";
       };
     };
     "@fluentui/theme-1.7.4" = {
@@ -2425,22 +2443,22 @@ let
         sha512 = "o4eo7lstLxxXl1g2RR9yz18Yt8yjQO/LbQuZjsiAfv/4Bf0CRnb+3j1F7gxIdBWAchKj9gzaMpIFijfI98pvYQ==";
       };
     };
-    "@fluentui/theme-2.1.3" = {
+    "@fluentui/theme-2.1.4" = {
       name = "_at_fluentui_slash_theme";
       packageName = "@fluentui/theme";
-      version = "2.1.3";
+      version = "2.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/theme/-/theme-2.1.3.tgz";
-        sha512 = "o/So4091GtwtEkxujd6QT9M8kuLOde0Z7by/zLNQBU00wX3PeBxM4mpSLmnz2vt5CN5IT7OWhRRsiyve/7hLAg==";
+        url = "https://registry.npmjs.org/@fluentui/theme/-/theme-2.1.4.tgz";
+        sha512 = "Y4FWgnYldvAFOo24tfsREMb8/3Tn5uDoYgGO7AAdrksP7VAaavaEVQCOgvHWy3l89Bsxf00/fE+QJ/AHv5Z4CA==";
       };
     };
-    "@fluentui/utilities-8.2.0" = {
+    "@fluentui/utilities-8.2.1" = {
       name = "_at_fluentui_slash_utilities";
       packageName = "@fluentui/utilities";
-      version = "8.2.0";
+      version = "8.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/utilities/-/utilities-8.2.0.tgz";
-        sha512 = "kq8xyFHkWUbzzbkGLuDACEhH+K5oqM/wEU9+zRuM/qI2bIS1B6Cr0ruq7FHxVrtAnMhvXKzM8DPn0W8uf775qQ==";
+        url = "https://registry.npmjs.org/@fluentui/utilities/-/utilities-8.2.1.tgz";
+        sha512 = "ezRkBUDhHQjrqAWA6H1TwWU3STauW/EjthDAe/upJbmXeP3ynn7tTpx1gpNi/vHjJlRkO1JjNoiSc6P4MZWkYw==";
       };
     };
     "@google-cloud/paginator-3.0.5" = {
@@ -2479,13 +2497,13 @@ let
         sha512 = "d4VSA86eL/AFTe5xtyZX+ePUjE8dIFu2T8zmdeNBSa5/kNgXPCx/o/wbFNHAGLJdGnk1vddRuMESD9HbOC8irw==";
       };
     };
-    "@google-cloud/pubsub-2.15.1" = {
+    "@google-cloud/pubsub-2.16.1" = {
       name = "_at_google-cloud_slash_pubsub";
       packageName = "@google-cloud/pubsub";
-      version = "2.15.1";
+      version = "2.16.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@google-cloud/pubsub/-/pubsub-2.15.1.tgz";
-        sha512 = "avBYmN1n9BsY8RzntkEP3SG1gSfEm0iOoUwoWjtrmWAk+6QZw0C093HJCGClteo+EwIQDhgyn2cXc5QInegSeg==";
+        url = "https://registry.npmjs.org/@google-cloud/pubsub/-/pubsub-2.16.1.tgz";
+        sha512 = "+uO7r9uRfD/x0BzBI67clbIu0VIdqYLZ5NINuGEsMiAXIGWQWmceuLMixMEb/JOxeaqKygH1mL2rshkDisUmGg==";
       };
     };
     "@graphql-cli/common-4.1.0" = {
@@ -2614,15 +2632,6 @@ let
         sha512 = "1NDUymworsOlb53Qfh7fonDi2STvqCtbeE68ntKY9K/Ju/be2ZNxrFSbrBHwnxWcN9PjISNnLcAyJ1L5tCUyhg==";
       };
     };
-    "@grpc/grpc-js-1.2.11" = {
-      name = "_at_grpc_slash_grpc-js";
-      packageName = "@grpc/grpc-js";
-      version = "1.2.11";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.2.11.tgz";
-        sha512 = "DZqx3nHBm2OGY7NKq4sppDEfx4nBAsQH/d/H/yxo/+BwpVLWLGs+OorpwQ+Fqd6EgpDEoi4MhqndjGUeLl/5GA==";
-      };
-    };
     "@grpc/grpc-js-1.3.2" = {
       name = "_at_grpc_slash_grpc-js";
       packageName = "@grpc/grpc-js";
@@ -2641,13 +2650,22 @@ let
         sha512 = "AxtZcm0mArQhY9z8T3TynCYVEaSKxNCa9mVhVwBCUnsuUEe8Zn94bPYYKVQSLt+hJJ1y0ukr3mUvtWfcATL/IQ==";
       };
     };
-    "@grpc/proto-loader-0.5.6" = {
-      name = "_at_grpc_slash_proto-loader";
-      packageName = "@grpc/proto-loader";
-      version = "0.5.6";
+    "@grpc/grpc-js-1.3.5" = {
+      name = "_at_grpc_slash_grpc-js";
+      packageName = "@grpc/grpc-js";
+      version = "1.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.3.5.tgz";
+        sha512 = "V29L2QNKkLWM3bcJfVFMSo+Z7kkO8A1s7MAfdzBXLYEC1PE5/M0n1iXBDiD5aUtyVLh5GILcbme2bGtIHl0FMQ==";
+      };
+    };
+    "@grpc/grpc-js-1.3.6" = {
+      name = "_at_grpc_slash_grpc-js";
+      packageName = "@grpc/grpc-js";
+      version = "1.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.5.6.tgz";
-        sha512 = "DT14xgw3PSzPxwS13auTEwxhMMOoz33DPUKNtmYK/QYbBSpLXJy78FGGs5yVoxVobEqPm4iW9MOIoz0A3bLTRQ==";
+        url = "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.3.6.tgz";
+        sha512 = "v7+LQFbqZKmd/Tvf5/j1Xlbq6jXL/4d+gUtm2TNX4QiEC3ELWADmGr2dGlUyLl6aKTuYfsN72vAsO5zmavYkEg==";
       };
     };
     "@grpc/proto-loader-0.6.2" = {
@@ -2713,15 +2731,6 @@ let
         sha512 = "QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==";
       };
     };
-    "@hapi/address-4.1.0" = {
-      name = "_at_hapi_slash_address";
-      packageName = "@hapi/address";
-      version = "4.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@hapi/address/-/address-4.1.0.tgz";
-        sha512 = "SkszZf13HVgGmChdHo/PxchnSaCJ6cetVqLzyciudzZRT0jcOouIF/Q93mgjw8cce+D+4F4C1Z/WrfFN+O3VHQ==";
-      };
-    };
     "@hapi/bourne-1.3.2" = {
       name = "_at_hapi_slash_bourne";
       packageName = "@hapi/bourne";
@@ -2731,13 +2740,13 @@ let
         sha512 = "1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==";
       };
     };
-    "@hapi/formula-2.0.0" = {
+    "@hapi/formula-1.2.0" = {
       name = "_at_hapi_slash_formula";
       packageName = "@hapi/formula";
-      version = "2.0.0";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@hapi/formula/-/formula-2.0.0.tgz";
-        sha512 = "V87P8fv7PI0LH7LiVi8Lkf3x+KCO7pQozXRssAHNXXL9L1K+uyu4XypLXwxqVDKgyQai6qj3/KteNlrqDx4W5A==";
+        url = "https://registry.npmjs.org/@hapi/formula/-/formula-1.2.0.tgz";
+        sha512 = "UFbtbGPjstz0eWHb+ga/GM3Z9EzqKXFWIbSOFURU0A/Gku0Bky4bCk9/h//K2Xr3IrCfjFNhMm4jyZ5dbCewGA==";
       };
     };
     "@hapi/hoek-8.5.1" = {
@@ -2767,22 +2776,22 @@ let
         sha512 = "entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==";
       };
     };
-    "@hapi/joi-17.1.1" = {
+    "@hapi/joi-16.1.8" = {
       name = "_at_hapi_slash_joi";
       packageName = "@hapi/joi";
-      version = "17.1.1";
+      version = "16.1.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@hapi/joi/-/joi-17.1.1.tgz";
-        sha512 = "p4DKeZAoeZW4g3u7ZeRo+vCDuSDgSvtsB/NpfjXEHTUjSeINAi/RrVOWiVQ1isaoLzMvFEhe8n5065mQq1AdQg==";
+        url = "https://registry.npmjs.org/@hapi/joi/-/joi-16.1.8.tgz";
+        sha512 = "wAsVvTPe+FwSrsAurNt5vkg3zo+TblvC5Bb1zMVK6SJzZqw9UrJnexxR+76cpePmtUZKHAPxcQ2Bf7oVHyahhg==";
       };
     };
-    "@hapi/pinpoint-2.0.0" = {
+    "@hapi/pinpoint-1.0.2" = {
       name = "_at_hapi_slash_pinpoint";
       packageName = "@hapi/pinpoint";
-      version = "2.0.0";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@hapi/pinpoint/-/pinpoint-2.0.0.tgz";
-        sha512 = "vzXR5MY7n4XeIvLpfl3HtE3coZYO4raKXW766R6DZw/6aLqR26iuZ109K7a0NtF2Db0jxqh7xz2AxkUwpUFybw==";
+        url = "https://registry.npmjs.org/@hapi/pinpoint/-/pinpoint-1.0.2.tgz";
+        sha512 = "dtXC/WkZBfC5vxscazuiJ6iq4j9oNx1SHknmIr8hofarpKUZKmlUVYVIhNVzIEgK5Wrc4GMHL5lZtt1uS2flmQ==";
       };
     };
     "@hapi/topo-3.1.6" = {
@@ -2812,6 +2821,96 @@ let
         sha512 = "2JYy//YE2YINTe21hpdVMBNc7aYFkgDeY9JUz/BCjFZmYLn0UjGaCc4BpTcMGXNJwuqoUenw2WGOFGHsJqlIDw==";
       };
     };
+    "@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.0" = {
+      name = "_at_humanwhocodes_slash_object-schema";
+      packageName = "@humanwhocodes/object-schema";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz";
+        sha512 = "wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==";
+      };
+    };
+    "@hutson/parse-repository-url-3.0.2" = {
+      name = "_at_hutson_slash_parse-repository-url";
+      packageName = "@hutson/parse-repository-url";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz";
+        sha512 = "H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==";
+      };
+    };
+    "@hyperspace/client-1.18.0" = {
+      name = "_at_hyperspace_slash_client";
+      packageName = "@hyperspace/client";
+      version = "1.18.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hyperspace/client/-/client-1.18.0.tgz";
+        sha512 = "nK7jQ8IvrHwaF8gycCuqnNm1nOukzFJxDHZcVZ9Yx1O42zgynDVjDVNFa/scOW2sCAIDAnQrAI6wO4ClrtEYfQ==";
+      };
+    };
+    "@hyperspace/migration-tool-1.2.1" = {
+      name = "_at_hyperspace_slash_migration-tool";
+      packageName = "@hyperspace/migration-tool";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hyperspace/migration-tool/-/migration-tool-1.2.1.tgz";
+        sha512 = "akc8pVshSwrkJsPkpWZzCbIYr5xiXoBZk9DIBAa15DUFo/y2B9eeXDiivDEVWp5tWH9cydUpzLR0XbCUojxr9A==";
+      };
+    };
+    "@hyperspace/rpc-1.15.1" = {
+      name = "_at_hyperspace_slash_rpc";
+      packageName = "@hyperspace/rpc";
+      version = "1.15.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hyperspace/rpc/-/rpc-1.15.1.tgz";
+        sha512 = "hp+NvIGLC1KvnR0FVWxtI8ep0I+KA6qto1vtz6bNC8C012QCgQXSMXZmP67su3b8zMLwaOUTOJuhZ1u3fNjtfw==";
+      };
+    };
+    "@hyperswarm/dht-4.0.1" = {
+      name = "_at_hyperswarm_slash_dht";
+      packageName = "@hyperswarm/dht";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hyperswarm/dht/-/dht-4.0.1.tgz";
+        sha512 = "wMBbz0m8rgQMERt/Ot6BGo5Y8+ovJSZmqxF0oA2xYPT8vCVBIr8g2F1BkQcLbX2iKRLXRnhic02OEq8b41M0sw==";
+      };
+    };
+    "@hyperswarm/discovery-2.0.1" = {
+      name = "_at_hyperswarm_slash_discovery";
+      packageName = "@hyperswarm/discovery";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hyperswarm/discovery/-/discovery-2.0.1.tgz";
+        sha512 = "LM0DxxXYFEOZoUhN4g9VhHKGeM2mQIf8rnfSu/epBLmASAKNoKMijgGUZwhrh06wPROdBSJumjVzKl+8GPnRhA==";
+      };
+    };
+    "@hyperswarm/hypersign-2.1.1" = {
+      name = "_at_hyperswarm_slash_hypersign";
+      packageName = "@hyperswarm/hypersign";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hyperswarm/hypersign/-/hypersign-2.1.1.tgz";
+        sha512 = "RcczqJsu2VScRoyJdLbxpYMBNq+73HJT3FVzDZXSOob/WqEeiN2WIvuDtvmFoufAuO/3YVfde/NpZFc/OPjmjw==";
+      };
+    };
+    "@hyperswarm/network-2.1.0" = {
+      name = "_at_hyperswarm_slash_network";
+      packageName = "@hyperswarm/network";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hyperswarm/network/-/network-2.1.0.tgz";
+        sha512 = "TvRRRd//a3q+JhpSh5PaHJfnP4oLM/0eZikyDh2Z+eaJpIZP+vZwdlpPd10neTsPq1zfJX8weRjYLFHNpoMZVg==";
+      };
+    };
     "@iarna/toml-2.2.5" = {
       name = "_at_iarna_slash_toml";
       packageName = "@iarna/toml";
@@ -2938,6 +3037,15 @@ let
         sha512 = "ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==";
       };
     };
+    "@jcubic/lily-0.1.0" = {
+      name = "_at_jcubic_slash_lily";
+      packageName = "@jcubic/lily";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jcubic/lily/-/lily-0.1.0.tgz";
+        sha512 = "kIsp4dmIUHn3YHIqFhEylY+mgI988KcYI8f19og7LqmLzkouPZNBip/oL8iemElie0gqx5CeQ5HxZv/SuNkOaA==";
+      };
+    };
     "@jest/transform-25.5.1" = {
       name = "_at_jest_slash_transform";
       packageName = "@jest/transform";
@@ -2965,6 +3073,15 @@ let
         sha512 = "OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==";
       };
     };
+    "@jest/types-26.6.2" = {
+      name = "_at_jest_slash_types";
+      packageName = "@jest/types";
+      version = "26.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz";
+        sha512 = "fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==";
+      };
+    };
     "@jimp/bmp-0.12.1" = {
       name = "_at_jimp_slash_bmp";
       packageName = "@jimp/bmp";
@@ -3325,13 +3442,13 @@ let
         sha512 = "4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==";
       };
     };
-    "@jsii/spec-1.30.0" = {
+    "@jsii/spec-1.31.0" = {
       name = "_at_jsii_slash_spec";
       packageName = "@jsii/spec";
-      version = "1.30.0";
+      version = "1.31.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@jsii/spec/-/spec-1.30.0.tgz";
-        sha512 = "oXIwvZyHHc/TrwA/3pzQ3gkqBe916EWBvaexNI3rnKZujlHZT4vVVHMCjQ/kUJhcR0GEaahvwlNhiPTu6roC2g==";
+        url = "https://registry.npmjs.org/@jsii/spec/-/spec-1.31.0.tgz";
+        sha512 = "qpJqZ+xj4lnKfk/HJYdYURDmHzh9aBIVOTgwd314AxKmwubDAajlAup+D2F9z9kylAB7GsQiva/SXgUlFjBeQw==";
       };
     };
     "@kwsites/file-exists-1.1.1" = {
@@ -3352,6 +3469,15 @@ let
         sha512 = "GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==";
       };
     };
+    "@leichtgewicht/ip-codec-2.0.3" = {
+      name = "_at_leichtgewicht_slash_ip-codec";
+      packageName = "@leichtgewicht/ip-codec";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.3.tgz";
+        sha512 = "nkalE/f1RvRGChwBnEIoBfSEYOXnCRdleKuv6+lePbMDrMZXeDQnqak5XDOeBgrPPyPfAdcCu/B5z+v3VhplGg==";
+      };
+    };
     "@lerna/add-4.0.0" = {
       name = "_at_lerna_slash_add";
       packageName = "@lerna/add";
@@ -3892,6 +4018,15 @@ let
         sha512 = "RTBGWL5FWQcg9orDOCcp4LvItNzUPcyEU9bwaeJX0rJ1IQxzucC48Y0/sQLp/g6t99IQgAlGIaesJS+gTn7tVQ==";
       };
     };
+    "@malept/cross-spawn-promise-2.0.0" = {
+      name = "_at_malept_slash_cross-spawn-promise";
+      packageName = "@malept/cross-spawn-promise";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@malept/cross-spawn-promise/-/cross-spawn-promise-2.0.0.tgz";
+        sha512 = "1DpKU0Z5ThltBwjNySMC14g0CkbyhCaz9FkhxqNsZI6uAPJXFS8cMXlBKo26FJ8ZuW6S9GCMcR9IO5k2X5/9Fg==";
+      };
+    };
     "@mapbox/node-pre-gyp-1.0.5" = {
       name = "_at_mapbox_slash_node-pre-gyp";
       packageName = "@mapbox/node-pre-gyp";
@@ -3955,13 +4090,13 @@ let
         sha512 = "W6CLUJ2eBMw3Rec70qrsEW0jOm/3twwJv21mrmj2yORiaVmVYGS4sSS5yUwvQc1ZlDLYGPnClVWmUUMagKNsfA==";
       };
     };
-    "@microsoft/load-themed-styles-1.10.190" = {
+    "@microsoft/load-themed-styles-1.10.195" = {
       name = "_at_microsoft_slash_load-themed-styles";
       packageName = "@microsoft/load-themed-styles";
-      version = "1.10.190";
+      version = "1.10.195";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@microsoft/load-themed-styles/-/load-themed-styles-1.10.190.tgz";
-        sha512 = "4Lhme3yHQgcIt05+BwgeJ0ClnY5wkmMXAFw4mGL8tO5jSkscd6lRKEtmQoGSTAy5S21FJzEUhnDJUqaK9M8P9Q==";
+        url = "https://registry.npmjs.org/@microsoft/load-themed-styles/-/load-themed-styles-1.10.195.tgz";
+        sha512 = "KDCKYsdIo3/ivmu4kzn/LmdttAOwz/bU2C1KywyKy8jHuTj/gU9LBD2htDNGbHQgKObOuqGTpUNNVpVe92Gghw==";
       };
     };
     "@mitmaro/errors-1.0.0" = {
@@ -4018,13 +4153,13 @@ let
         sha512 = "mlRYq9FSsOd4m+3wZWatemn3hGFZPWNJ4JQOdrir4rrMK2PyIk26idKBoUWrqF3HJJHl+5GpRU+M0wEruJwecg==";
       };
     };
-    "@nestjs/schematics-7.3.1" = {
+    "@nestjs/schematics-8.0.2" = {
       name = "_at_nestjs_slash_schematics";
       packageName = "@nestjs/schematics";
-      version = "7.3.1";
+      version = "8.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@nestjs/schematics/-/schematics-7.3.1.tgz";
-        sha512 = "eyBjJstAjecpdzRuBLiqnwomwXIAEV3+kPkpaphOieRUM6nBhjnXCCl3Qf8Dul2QUQK4NOVPd8FFxWtGP5XNlg==";
+        url = "https://registry.npmjs.org/@nestjs/schematics/-/schematics-8.0.2.tgz";
+        sha512 = "iWtpXfn1Zh4Vm37BzY8OSJ60Y9TqNOjk8J+KLIwcql9EuP+0C/C4WUn+vIQMfmnut3MxRmAYFE2B/LFYrjGC5Q==";
       };
     };
     "@netflix/nerror-1.1.3" = {
@@ -4036,13 +4171,13 @@ let
         sha512 = "b+MGNyP9/LXkapreJzNUzcvuzZslj/RGgdVVJ16P2wSlYatfLycPObImqVJSmNAdyeShvNeM/pl3sVZsObFueg==";
       };
     };
-    "@netlify/build-12.26.0" = {
+    "@netlify/build-16.1.0" = {
       name = "_at_netlify_slash_build";
       packageName = "@netlify/build";
-      version = "12.26.0";
+      version = "16.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/build/-/build-12.26.0.tgz";
-        sha512 = "wRBOxaZXJ0OCzg2YVp+SsKIE6fmLzwk68X7I8X6/jEL7np4Rq1H0BornxSGu9ewbCJseCl3zGKgd6aiBR4E8Pg==";
+        url = "https://registry.npmjs.org/@netlify/build/-/build-16.1.0.tgz";
+        sha512 = "FEPgiR2IoEC7fwCkAguMdWbiWwdAr6Zh1+mEFlgqTPAQDE6j/ji3elD8kuXwtdHHhC8U28YYOTZL6fCodlvRAw==";
       };
     };
     "@netlify/cache-utils-1.0.7" = {
@@ -4054,13 +4189,13 @@ let
         sha512 = "yrdrnQkzg/qMovoFYwQ24UVt/OyHtP+t0KpQFd7eBl6gnuuGGgxFocaFFv6eKpMVwzHTsOwx/y9B/FcC3/6cfA==";
       };
     };
-    "@netlify/config-9.5.0" = {
+    "@netlify/config-13.0.0" = {
       name = "_at_netlify_slash_config";
       packageName = "@netlify/config";
-      version = "9.5.0";
+      version = "13.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/config/-/config-9.5.0.tgz";
-        sha512 = "Kt5xukNclUtraXVX1xnrseMwvIA1WnFjR6i4GuwgvM2MreS6zb5LIV5XGJ/vDCEpH9uxI609gj2iu9FNy543rA==";
+        url = "https://registry.npmjs.org/@netlify/config/-/config-13.0.0.tgz";
+        sha512 = "d7NNG3lbvZN/w9eCRdlFKBY21Vpjxlwis08v5NJjkZpNTuuAuemNFrhZv2y5zmy33TM+zTrkaoEAk6vJ96R5cQ==";
       };
     };
     "@netlify/esbuild-0.13.6" = {
@@ -4072,22 +4207,22 @@ let
         sha512 = "tiKmDcHM2riSVN79c0mJY/67EBDafXQAMitHuLiCDAMdtz3kfv+NqdVG5krgf5lWR8Uf8AeZrUW5Q9RP25REvw==";
       };
     };
-    "@netlify/framework-info-5.5.0" = {
+    "@netlify/framework-info-5.7.2" = {
       name = "_at_netlify_slash_framework-info";
       packageName = "@netlify/framework-info";
-      version = "5.5.0";
+      version = "5.7.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/framework-info/-/framework-info-5.5.0.tgz";
-        sha512 = "kAGcUnFlJgP2lQXez1c0RKJNF1reoefLVXMzTTTCoKqt1OcfzQnWzgCT6rJbsS7wia02JoLAb7TrdMdpWDAGTg==";
+        url = "https://registry.npmjs.org/@netlify/framework-info/-/framework-info-5.7.2.tgz";
+        sha512 = "5yO26VRpeXmXorl1kNYbXxgFsJSNcrDaQVnAT9XPqZ5mb7vtjEP/ddEHkNpDsYBj/Y8VBPCvkPhDizg7UPenSw==";
       };
     };
-    "@netlify/functions-utils-1.4.1" = {
+    "@netlify/functions-utils-1.4.7" = {
       name = "_at_netlify_slash_functions-utils";
       packageName = "@netlify/functions-utils";
-      version = "1.4.1";
+      version = "1.4.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/functions-utils/-/functions-utils-1.4.1.tgz";
-        sha512 = "11WhjgX74b+AgROL/w0iDrZg1cjhX7+hyCUrzOagJbkC2v83qZaVff+4RFTA7damuO9zc9BHw2+LHe0wLVvEbg==";
+        url = "https://registry.npmjs.org/@netlify/functions-utils/-/functions-utils-1.4.7.tgz";
+        sha512 = "e0y/iUsXWJq65ZUS3mn6ACJlQ6bfVSjtV6DO8Y194tevctnArtQA+F86L08zQklyhJbEV6cmyg4QbHhbLqTNOg==";
       };
     };
     "@netlify/git-utils-1.0.11" = {
@@ -4099,6 +4234,123 @@ let
         sha512 = "bvlvFAB9VU3wTYYEEUinsOeRFxZ/MmetffzHehSMEyP00kXakvrySq4XbC6G8u3wCDln34eOjKDt8uPYoqfuNQ==";
       };
     };
+    "@netlify/local-functions-proxy-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy";
+      packageName = "@netlify/local-functions-proxy";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy/-/local-functions-proxy-0.1.0.tgz";
+        sha512 = "n4Y3LE3I6MrSCCLqLjY4VOVAi/uXdU35Kswd0eK0060Fla5huj+rKSnzu8GIERrvuRJMPi/AY7WFxB5mkFS8qw==";
+      };
+    };
+    "@netlify/local-functions-proxy-darwin-arm64-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy-darwin-arm64";
+      packageName = "@netlify/local-functions-proxy-darwin-arm64";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy-darwin-arm64/-/local-functions-proxy-darwin-arm64-0.1.0.tgz";
+        sha512 = "QsVber2F4H2zS2Oi31y226zeLkhWQrjy+9lYV4bsU0lZB9wHqrLGQNlOabqs6MWUQmWMqcDHLv31XMFpfhndnw==";
+      };
+    };
+    "@netlify/local-functions-proxy-darwin-x64-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy-darwin-x64";
+      packageName = "@netlify/local-functions-proxy-darwin-x64";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy-darwin-x64/-/local-functions-proxy-darwin-x64-0.1.0.tgz";
+        sha512 = "7Wb3ooicvRzHMErMWF+L+QG+rVy7iBEQ7b2GOzywL/VmeajatVk/D16v5b9adM2sX0KX1dyj3O9x2QLkDW2G7w==";
+      };
+    };
+    "@netlify/local-functions-proxy-freebsd-arm64-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy-freebsd-arm64";
+      packageName = "@netlify/local-functions-proxy-freebsd-arm64";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy-freebsd-arm64/-/local-functions-proxy-freebsd-arm64-0.1.0.tgz";
+        sha512 = "Keno1p1rvp5fiGEDZDm0fIOZTbcE1QwyqF5hgVSpD0bxitSAFOaXZwhcyo80x8qcMlBqQp9zWEJWu4zN1UiZMA==";
+      };
+    };
+    "@netlify/local-functions-proxy-freebsd-x64-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy-freebsd-x64";
+      packageName = "@netlify/local-functions-proxy-freebsd-x64";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy-freebsd-x64/-/local-functions-proxy-freebsd-x64-0.1.0.tgz";
+        sha512 = "kyEjE/aW/k7yD1+Oy28LLZjg6W8091HPCqUHzCk5GzT46zvR61vTPfeAEQwNaEL2uFHPJ3SauDNUZ1+U+FNlHA==";
+      };
+    };
+    "@netlify/local-functions-proxy-linux-arm-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy-linux-arm";
+      packageName = "@netlify/local-functions-proxy-linux-arm";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy-linux-arm/-/local-functions-proxy-linux-arm-0.1.0.tgz";
+        sha512 = "Un4RIA3xaiWT1njCMgYJsYc1etksFuARz8suHtcoKadsEJ1XICh6OzJoCO3AdHCN1kMQlo3cVC/sHoAB2EyEqw==";
+      };
+    };
+    "@netlify/local-functions-proxy-linux-arm64-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy-linux-arm64";
+      packageName = "@netlify/local-functions-proxy-linux-arm64";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy-linux-arm64/-/local-functions-proxy-linux-arm64-0.1.0.tgz";
+        sha512 = "ZDdy+5fgpHxFqpKghtJuMyyQ5tKWV+LJm6t8tKlXkAgC1n1GuqeWNP0JqHV8DSSShFHRaRNoBVpLoXJbtNIorQ==";
+      };
+    };
+    "@netlify/local-functions-proxy-linux-ia32-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy-linux-ia32";
+      packageName = "@netlify/local-functions-proxy-linux-ia32";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy-linux-ia32/-/local-functions-proxy-linux-ia32-0.1.0.tgz";
+        sha512 = "vR1qlu341JKN91t0TPsYt2xC+ug8Bjp/WCqMtARmFT9jaL8NBTm6kiUh89QcGILYCo2hMNcYb9eih8y5D4N5Iw==";
+      };
+    };
+    "@netlify/local-functions-proxy-linux-ppc64-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy-linux-ppc64";
+      packageName = "@netlify/local-functions-proxy-linux-ppc64";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy-linux-ppc64/-/local-functions-proxy-linux-ppc64-0.1.0.tgz";
+        sha512 = "pcAPe+PzFkNrHpICvrIHHfxk5KNIVo3GgZKoI67NXECCtVel48aXitvlcOwsodrejD8ruQkfbvossBQs9Deq8A==";
+      };
+    };
+    "@netlify/local-functions-proxy-linux-x64-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy-linux-x64";
+      packageName = "@netlify/local-functions-proxy-linux-x64";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy-linux-x64/-/local-functions-proxy-linux-x64-0.1.0.tgz";
+        sha512 = "sjlMLoKNJRJnq8Esk+GkxEk9CByDNouKdeQ+doiiQhYGRjLhKXZdXbaC137z2tm/vHhI/94Lg7mhCcGygitJpA==";
+      };
+    };
+    "@netlify/local-functions-proxy-openbsd-x64-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy-openbsd-x64";
+      packageName = "@netlify/local-functions-proxy-openbsd-x64";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy-openbsd-x64/-/local-functions-proxy-openbsd-x64-0.1.0.tgz";
+        sha512 = "Dn9wQfeAU6FvurFo8eJL2scahtVigQyAi6lpV+c4YLD87WUfmiQ/mVgB7dfYB9zMiq5GO/iXbcK6wWjFyAZ6Aw==";
+      };
+    };
+    "@netlify/local-functions-proxy-win32-ia32-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy-win32-ia32";
+      packageName = "@netlify/local-functions-proxy-win32-ia32";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy-win32-ia32/-/local-functions-proxy-win32-ia32-0.1.0.tgz";
+        sha512 = "LRz6UZpgS0UzB5IKgOvBnVNkpBcnzRfT4YBBSBL31fucJ1J2c0zGJIUTqbFdS8eBLOS9Npq2qUT7qlnrgAWyMw==";
+      };
+    };
+    "@netlify/local-functions-proxy-win32-x64-0.1.0" = {
+      name = "_at_netlify_slash_local-functions-proxy-win32-x64";
+      packageName = "@netlify/local-functions-proxy-win32-x64";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@netlify/local-functions-proxy-win32-x64/-/local-functions-proxy-win32-x64-0.1.0.tgz";
+        sha512 = "YYzVpBPsAiup/Jg+kCAi0/EsV80BMF6JkQ3/2JjJhUqRuEG99THA+HwrFpsQOpOnr3niJBY93YrQymnJPgrk3A==";
+      };
+    };
     "@netlify/open-api-2.5.0" = {
       name = "_at_netlify_slash_open-api";
       packageName = "@netlify/open-api";
@@ -4108,31 +4360,31 @@ let
         sha512 = "KiXfYPO/X24p7EYQjcjBTizoyfY3U8zPv68Rte0EtayW2ZSqIslLLpNNd2gteqdh0Q83mzSiESdhlQHd0Ckjjg==";
       };
     };
-    "@netlify/plugin-edge-handlers-1.11.19" = {
+    "@netlify/plugin-edge-handlers-1.11.22" = {
       name = "_at_netlify_slash_plugin-edge-handlers";
       packageName = "@netlify/plugin-edge-handlers";
-      version = "1.11.19";
+      version = "1.11.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/plugin-edge-handlers/-/plugin-edge-handlers-1.11.19.tgz";
-        sha512 = "SAsVNIxF0asduPXbsr3wbyAB7lPZQxhG90EeOu0/Fo+BLhpO4g+6eH13I60qJpWCI/ucXXqSrUw8y6Oy5wpY0g==";
+        url = "https://registry.npmjs.org/@netlify/plugin-edge-handlers/-/plugin-edge-handlers-1.11.22.tgz";
+        sha512 = "tFb7J6+YEtZP0OYpS/b9Rjp1lm02XfhAQR6KRHAaeRlHp98/zgd0hhubfwXUCppP2BLfn+imkeVS0FnANh5B3g==";
       };
     };
-    "@netlify/plugins-list-2.18.1" = {
+    "@netlify/plugins-list-2.19.3" = {
       name = "_at_netlify_slash_plugins-list";
       packageName = "@netlify/plugins-list";
-      version = "2.18.1";
+      version = "2.19.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/plugins-list/-/plugins-list-2.18.1.tgz";
-        sha512 = "UFXVAlmuwmA0s7xDpL1pF3ksyB+5UDNVQDqkwobb+HlxjKNU0hy0c+aL8G8EoBjtX9iGP7Xr+QawtytAWlIyXw==";
+        url = "https://registry.npmjs.org/@netlify/plugins-list/-/plugins-list-2.19.3.tgz";
+        sha512 = "Z2RNrNhO7fsNFmpUQ+eNawgtfHwbGH/4Hji2g+GCRYL7W60kgK5rsWxveky1Nrye45I2OQn/4ZGapKqB1IqTaw==";
       };
     };
-    "@netlify/routing-local-proxy-0.30.2" = {
+    "@netlify/routing-local-proxy-0.31.0" = {
       name = "_at_netlify_slash_routing-local-proxy";
       packageName = "@netlify/routing-local-proxy";
-      version = "0.30.2";
+      version = "0.31.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/routing-local-proxy/-/routing-local-proxy-0.30.2.tgz";
-        sha512 = "rQnv383/vFF1x3iKnY/2Q2i7Z7RhugfoVfAIbEJ2bIaWFMQ2YcGMVpwj1w8rK+4MGH5uwvlNNlfE0gGYQOq+4Q==";
+        url = "https://registry.npmjs.org/@netlify/routing-local-proxy/-/routing-local-proxy-0.31.0.tgz";
+        sha512 = "SSlWic9za/0QtfCP7GllJcOV98BWlx2goOF9bLLhmsHGiPfrhlhZfemqdMtKM4BIs+G70wzUqaIYeyjtxVh37A==";
       };
     };
     "@netlify/run-utils-1.0.7" = {
@@ -4144,67 +4396,67 @@ let
         sha512 = "YFi1Sf+ktQICS3tAKu7/uiGzLXgi8RNVwH9naUkziXwXQNH2oxDhKgy0/Zv5Nw0zMDJyKWrJ3xObWEC57mJ/KA==";
       };
     };
-    "@netlify/zip-it-and-ship-it-4.8.0" = {
+    "@netlify/zip-it-and-ship-it-4.14.0" = {
       name = "_at_netlify_slash_zip-it-and-ship-it";
       packageName = "@netlify/zip-it-and-ship-it";
-      version = "4.8.0";
+      version = "4.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@netlify/zip-it-and-ship-it/-/zip-it-and-ship-it-4.8.0.tgz";
-        sha512 = "Dq0hBeX2LW62eny22d+isU4SvEilT/4eusjP1EFA0XYaDCgQ9rFJ50+NySXfxxu20qbfZmt34XKiby+tO7EcRA==";
+        url = "https://registry.npmjs.org/@netlify/zip-it-and-ship-it/-/zip-it-and-ship-it-4.14.0.tgz";
+        sha512 = "EFUYbcB7g/7Sa4KYZaqNrqe+mJJCeoosUNl8mFyeF3qIqn0po7txSZn0/y1sgjejuv9mRKv8sm7dH8kMM/HJcg==";
       };
     };
-    "@node-red/editor-api-1.3.5" = {
+    "@node-red/editor-api-2.0.1" = {
       name = "_at_node-red_slash_editor-api";
       packageName = "@node-red/editor-api";
-      version = "1.3.5";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@node-red/editor-api/-/editor-api-1.3.5.tgz";
-        sha512 = "IJyfyVhEvkf2YNRPoR+1SPSi76evVV/boAKhOeVoIMBBeuYd1wM1ihMM3rnNWDYXjN/7CbTKz2DVmdMQ5aCIeQ==";
+        url = "https://registry.npmjs.org/@node-red/editor-api/-/editor-api-2.0.1.tgz";
+        sha512 = "0+wY8FJvS6P3hiRnz7YzjWmkannoJyBMYgnSevQ6euf8dABML5AOYThghpMNPrtl+RzRIar0oabHrTRSoEpDEg==";
       };
     };
-    "@node-red/editor-client-1.3.5" = {
+    "@node-red/editor-client-2.0.1" = {
       name = "_at_node-red_slash_editor-client";
       packageName = "@node-red/editor-client";
-      version = "1.3.5";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@node-red/editor-client/-/editor-client-1.3.5.tgz";
-        sha512 = "B/JB7KuSeTHkiwzrQtCgmkUfHN5nP2htUoE4wkTt118IA/1xUWXEtl+WnT5aDLiFUyFI21q9Fl4BnDOa7JqLEw==";
+        url = "https://registry.npmjs.org/@node-red/editor-client/-/editor-client-2.0.1.tgz";
+        sha512 = "9YP0n+VFruudzZfcsTL0fofm7j/BYodKzQTqksL3ZlcZsB075O3d8zM8ZuoNlpj2CfROR/PZi7E72ucmNExzlQ==";
       };
     };
-    "@node-red/nodes-1.3.5" = {
+    "@node-red/nodes-2.0.1" = {
       name = "_at_node-red_slash_nodes";
       packageName = "@node-red/nodes";
-      version = "1.3.5";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@node-red/nodes/-/nodes-1.3.5.tgz";
-        sha512 = "kLZOn8YDiDemJ/ufx0eagpmPPbUzLifgvoF1fHq9Jzf+K/xWtzDLHqNyLM6VSzo6QlCAnS939dU9kDb5G3fs3Q==";
+        url = "https://registry.npmjs.org/@node-red/nodes/-/nodes-2.0.1.tgz";
+        sha512 = "op1gcV99xp/xZAVg1B+VRzylNpWk/oF//I6dcRqiF8xoXjff42VfIJ8l01/JqsvuJD3p9+x9fz82QRMmASOu+w==";
       };
     };
-    "@node-red/registry-1.3.5" = {
+    "@node-red/registry-2.0.1" = {
       name = "_at_node-red_slash_registry";
       packageName = "@node-red/registry";
-      version = "1.3.5";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@node-red/registry/-/registry-1.3.5.tgz";
-        sha512 = "wy74xMnD87v/oB5P/HnUiJ6kTgdcCTgIJadeRBh0DSwcMjG3MhSxe8QCk3U9BxLH1fxw0IwxWbNgGwzuM8EOdw==";
+        url = "https://registry.npmjs.org/@node-red/registry/-/registry-2.0.1.tgz";
+        sha512 = "B2La0qWpSEqbiiBWVmUKTqS4y/c/pZuUDPu7a5ZibGgcUEe032X05uZ68wIYMt1y2/ltnUlrPSdOjjpzpxEhEQ==";
       };
     };
-    "@node-red/runtime-1.3.5" = {
+    "@node-red/runtime-2.0.1" = {
       name = "_at_node-red_slash_runtime";
       packageName = "@node-red/runtime";
-      version = "1.3.5";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@node-red/runtime/-/runtime-1.3.5.tgz";
-        sha512 = "4Cz83wX9trvhhPxFkF5HfYzqYQEcVOYf4f1lSDHP2xYowE22+x4BTCs8gZA4hCI4kbon3eyaU5NrzlrKd+nZbQ==";
+        url = "https://registry.npmjs.org/@node-red/runtime/-/runtime-2.0.1.tgz";
+        sha512 = "3MbJk5Xum38Nt13FIvDmsuQYcdo5uxzKu2khHbXN3hG7XlECALSaKqLq19t7yg6e8q8Jqnb7j6184A1m34GVqQ==";
       };
     };
-    "@node-red/util-1.3.5" = {
+    "@node-red/util-2.0.1" = {
       name = "_at_node-red_slash_util";
       packageName = "@node-red/util";
-      version = "1.3.5";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@node-red/util/-/util-1.3.5.tgz";
-        sha512 = "1TTvTwvGMSe9SQMEKN5zGdyGMv8Kth49eiUcdPnUWigtafk1BE9iP7gVSyLVYgijzCwh40GUkSYey0TUaSbRBw==";
+        url = "https://registry.npmjs.org/@node-red/util/-/util-2.0.1.tgz";
+        sha512 = "gT+3cI134m2pD4U0/iKuOAjRqluPXKlS19eCE06ArWGLxHmqx7Gi6Cyjxu971gNcw69QEfwJzEA2xIrAKRAR+g==";
       };
     };
     "@nodelib/fs.scandir-2.1.5" = {
@@ -4234,22 +4486,22 @@ let
         sha512 = "RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==";
       };
     };
-    "@nodelib/fs.walk-1.2.7" = {
+    "@nodelib/fs.walk-1.2.8" = {
       name = "_at_nodelib_slash_fs.walk";
       packageName = "@nodelib/fs.walk";
-      version = "1.2.7";
+      version = "1.2.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.7.tgz";
-        sha512 = "BTIhocbPBSrRmHxOAJFtR18oLhxTtAFDAvL8hY1S3iU8k+E60W/YFs4jrixGzQjMpF4qPXxIQHcjVD9dz1C2QA==";
+        url = "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz";
+        sha512 = "oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==";
       };
     };
-    "@npmcli/arborist-2.6.4" = {
+    "@npmcli/arborist-2.7.1" = {
       name = "_at_npmcli_slash_arborist";
       packageName = "@npmcli/arborist";
-      version = "2.6.4";
+      version = "2.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@npmcli/arborist/-/arborist-2.6.4.tgz";
-        sha512 = "A/pDQ/VZpdxaqsQS5XOWrhrPuC+ER7HLq+4ZkEmnO2yo/USFCWEsiUPYKhfY+sWXK3pgKjN7B7CEFmAnSoAt3g==";
+        url = "https://registry.npmjs.org/@npmcli/arborist/-/arborist-2.7.1.tgz";
+        sha512 = "EGDHJs6dna/52BrStr/6aaRcMLrYxGbSjT4V3JzvoTBY9/w5i2+1KNepmsG80CAsGADdo6nuNnFwb7sDRm8ZAw==";
       };
     };
     "@npmcli/ci-detect-1.3.0" = {
@@ -4378,13 +4630,13 @@ let
         sha512 = "Lmfuf6ubjQ4ifC/9bz1fSCHc6F6E653oyaRXxg+lgT4+bYf9bk+nqrUpAbrXyABkCqgIBiFr3J4zR/kiFdE1PA==";
       };
     };
-    "@oclif/errors-1.3.4" = {
+    "@oclif/errors-1.3.5" = {
       name = "_at_oclif_slash_errors";
       packageName = "@oclif/errors";
-      version = "1.3.4";
+      version = "1.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@oclif/errors/-/errors-1.3.4.tgz";
-        sha512 = "pJKXyEqwdfRTUdM8n5FIHiQQHg5ETM0Wlso8bF9GodczO40mF5Z3HufnYWJE7z8sGKxOeJCdbAVZbS8Y+d5GCw==";
+        url = "https://registry.npmjs.org/@oclif/errors/-/errors-1.3.5.tgz";
+        sha512 = "OivucXPH/eLLlOT7FkCMoZXiaVYf8I/w1eTAM1+gKzfhALwWTusxEx7wBmW0uzvkSg/9ovWLycPaBgJbM3LOCQ==";
       };
     };
     "@oclif/linewrap-1.0.0" = {
@@ -4504,13 +4756,13 @@ let
         sha512 = "SWTdXsVheRmlotWNjKzPOb6Js6tjSqA2a8z9+glDJng0Aqjzti8MEWOtuT8ZSu6wHnci7LZNuarE87+WJBG4vg==";
       };
     };
-    "@octokit/openapi-types-8.1.4" = {
+    "@octokit/openapi-types-9.1.0" = {
       name = "_at_octokit_slash_openapi-types";
       packageName = "@octokit/openapi-types";
-      version = "8.1.4";
+      version = "9.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-8.1.4.tgz";
-        sha512 = "NnGr4NNDqO5wjSDJo5nxrGtzZUwoT23YasqK2H4Pav/6vSgeVTxuqCL9Aeh+cWfTxDomj1M4Os5BrXFsvl7qiQ==";
+        url = "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-9.1.0.tgz";
+        sha512 = "XBP03pG4XuTU+VgeJM1ozRdmZJerMG4tk6wA+raFKycC4qV9jtD2UQroAg9bAcmI3Q0zWvifeDGtPqsFjMzkLg==";
       };
     };
     "@octokit/plugin-enterprise-rest-6.0.1" = {
@@ -4522,13 +4774,13 @@ let
         sha512 = "93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw==";
       };
     };
-    "@octokit/plugin-paginate-rest-2.13.6" = {
+    "@octokit/plugin-paginate-rest-2.14.0" = {
       name = "_at_octokit_slash_plugin-paginate-rest";
       packageName = "@octokit/plugin-paginate-rest";
-      version = "2.13.6";
+      version = "2.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.13.6.tgz";
-        sha512 = "ai7TNKLi8tGkDvLM7fm0X1fbIP9u1nfXnN49ZAw2PgSoQou9yixKn5c3m0awuLacbuX2aXEvJpv1gKm3jboabg==";
+        url = "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.14.0.tgz";
+        sha512 = "S2uEu2uHeI7Vf+Lvj8tv3O5/5TCAa8GHS0dUQN7gdM7vKA6ZHAbR6HkAVm5yMb1mbedLEbxOuQ+Fa0SQ7tCDLA==";
       };
     };
     "@octokit/plugin-request-log-1.0.4" = {
@@ -4540,13 +4792,13 @@ let
         sha512 = "mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==";
       };
     };
-    "@octokit/plugin-rest-endpoint-methods-5.3.7" = {
+    "@octokit/plugin-rest-endpoint-methods-5.5.0" = {
       name = "_at_octokit_slash_plugin-rest-endpoint-methods";
       packageName = "@octokit/plugin-rest-endpoint-methods";
-      version = "5.3.7";
+      version = "5.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.3.7.tgz";
-        sha512 = "LAgTLOsJ86ig2wYSpcSx+UWt7aQYYsEZ/Tf/pksAVQWKNcGuTVCDl9OUiPhQ7DZelNozYVWTO9Iyjd/soe4tug==";
+        url = "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.5.0.tgz";
+        sha512 = "v4dNoHF8cXNx7C67yQx7oarHs5Wg2IiafWvp/ULkNcCOuXgQdBOkJtwidpYqPiRPUw4uHDkI6Tgfje+nXB+Deg==";
       };
     };
     "@octokit/request-5.6.0" = {
@@ -4567,22 +4819,22 @@ let
         sha512 = "1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==";
       };
     };
-    "@octokit/rest-18.6.6" = {
+    "@octokit/rest-18.7.0" = {
       name = "_at_octokit_slash_rest";
       packageName = "@octokit/rest";
-      version = "18.6.6";
+      version = "18.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/rest/-/rest-18.6.6.tgz";
-        sha512 = "kCLvz8MSh+KToXySdqUp80caBom1ZQmsX3gbT3osfbJy6fD86QObUjzAOD3D3Awz3X7ng24+lB+imvSr5EnM7g==";
+        url = "https://registry.npmjs.org/@octokit/rest/-/rest-18.7.0.tgz";
+        sha512 = "8K8BJFyPFRSfnwu+aSbdjU5w3EtxC33PkDlEi5tyVTYC+t4n7gaqygRg5ajJLCpb/ZzVaXXFJXC9OxQ9TvFRAw==";
       };
     };
-    "@octokit/types-6.17.4" = {
+    "@octokit/types-6.21.0" = {
       name = "_at_octokit_slash_types";
       packageName = "@octokit/types";
-      version = "6.17.4";
+      version = "6.21.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/types/-/types-6.17.4.tgz";
-        sha512 = "Ghk/JC4zC/1al1GwH6p8jVX6pLdypSWmbnx6h79C/yo3DeaDd6MsNsBFlHu22KbkFh+CdcAzFqdP7UdPaPPmmA==";
+        url = "https://registry.npmjs.org/@octokit/types/-/types-6.21.0.tgz";
+        sha512 = "VPSxn9uhCoOUMpxCsOAQhf8DgIx+uzFjZRYDiZS5+TvrKaEwBrWkjr/5NmUVvPbW6xdPC2n3yL3XCnoxa4rxvg==";
       };
     };
     "@open-policy-agent/opa-wasm-1.2.0" = {
@@ -4639,310 +4891,310 @@ let
         sha512 = "t4fKikazahwNKmwD+CE/icHyuZldWvNMupJhjxdk9T/KxHFx3zCGjHT3MKavwYP6abzgAAm5WwzD1oHlmj7dyg==";
       };
     };
-    "@ot-builder/bin-composite-types-1.0.9" = {
+    "@ot-builder/bin-composite-types-1.1.0" = {
       name = "_at_ot-builder_slash_bin-composite-types";
       packageName = "@ot-builder/bin-composite-types";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/bin-composite-types/-/bin-composite-types-1.0.9.tgz";
-        sha512 = "ErKiMoPa3CdguITg/k/k5rm/Or+O1MwzadX3knibqu4QGbOmPco1/uS4BOShKriC9frJnnN9AYOT9w9quvKZQg==";
+        url = "https://registry.npmjs.org/@ot-builder/bin-composite-types/-/bin-composite-types-1.1.0.tgz";
+        sha512 = "/JaR3T99LHJWzOp08qLE9yTpe+v9DlgyE/ZwSyueG/fbzfCquHve9qgOaIP/yEiVNhQdMEBMsJdpQyicL6db3w==";
       };
     };
-    "@ot-builder/bin-util-1.0.9" = {
+    "@ot-builder/bin-util-1.1.0" = {
       name = "_at_ot-builder_slash_bin-util";
       packageName = "@ot-builder/bin-util";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/bin-util/-/bin-util-1.0.9.tgz";
-        sha512 = "NAf0soBY4KkejHFuq5Q9R5cebzbD5e22cPlZGS+gXF1a5zRfuLdXbmMv6XXlca8z7zHF8jfaCbZtqqP1xrWLZg==";
+        url = "https://registry.npmjs.org/@ot-builder/bin-util/-/bin-util-1.1.0.tgz";
+        sha512 = "Cwk6FsYU9aJmmbFcrE1DI3t+FzdyTb6IotsCY1YAxnS4nEkj70bNRfDbxu4rzpPqBgndIjAz1FSXtlSayW0LMw==";
       };
     };
-    "@ot-builder/cli-help-shower-1.0.9" = {
+    "@ot-builder/cli-help-shower-1.1.0" = {
       name = "_at_ot-builder_slash_cli-help-shower";
       packageName = "@ot-builder/cli-help-shower";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/cli-help-shower/-/cli-help-shower-1.0.9.tgz";
-        sha512 = "NoYTfWa1OhhRn2qluLbh/3IbWXuXqclBrXBp5lbkp5Wz4yf25m8KHJgqMwIm2wnhKP2v4xj8lzKCp/Jn1+QL5A==";
+        url = "https://registry.npmjs.org/@ot-builder/cli-help-shower/-/cli-help-shower-1.1.0.tgz";
+        sha512 = "0KaiPVXkjyuBhHZK5/1fxGX7Ch0/YAmc/+Os3QSwH8xgN2O682TZhW+TaKJzGLe6wuTomQ0H3YzO5Z4PfIyx3g==";
       };
     };
-    "@ot-builder/cli-proc-1.0.9" = {
+    "@ot-builder/cli-proc-1.1.0" = {
       name = "_at_ot-builder_slash_cli-proc";
       packageName = "@ot-builder/cli-proc";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/cli-proc/-/cli-proc-1.0.9.tgz";
-        sha512 = "g8xX/y6Z0LtvLvLAx5rZY8P3dfmhSm/EiWlKOnf2Cz36IqGgYwaihicPc0ONSNki81bseRgC6j/uXTd0+UxZTw==";
+        url = "https://registry.npmjs.org/@ot-builder/cli-proc/-/cli-proc-1.1.0.tgz";
+        sha512 = "NiFyLMF6YCSum5gvqTWYZai2by0ULkOAX41bRdyoq9i+bq2vLQAisCdo3jZ6rjAWHO+zo4YTvcTyj2ukfABycw==";
       };
     };
-    "@ot-builder/cli-shared-1.0.9" = {
+    "@ot-builder/cli-shared-1.1.0" = {
       name = "_at_ot-builder_slash_cli-shared";
       packageName = "@ot-builder/cli-shared";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/cli-shared/-/cli-shared-1.0.9.tgz";
-        sha512 = "rf9ebY8WJqyafdOKjmdWOBfSofiDl9PxhahlgJk+k+IK37sjd/QXOSqB6UEGlx2dJhlVnoJAg5lmRxS/5ent0w==";
+        url = "https://registry.npmjs.org/@ot-builder/cli-shared/-/cli-shared-1.1.0.tgz";
+        sha512 = "rMsvIZHPc6RPSX1V2XJWM0fO/stSLctRMQZPnoPWQFcChS8Xvjf7iCBD8NA7V07LUI/8hYrcb4DMzp6aoJ4/pg==";
       };
     };
-    "@ot-builder/common-impl-1.0.9" = {
+    "@ot-builder/common-impl-1.1.0" = {
       name = "_at_ot-builder_slash_common-impl";
       packageName = "@ot-builder/common-impl";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/common-impl/-/common-impl-1.0.9.tgz";
-        sha512 = "QuR3zXvgxLbNqoQuyX1rBqG3bcSsAVfV2JuXwKyuLY5MlNELq8luUJPjZRtLdmtAuWUU7waVrAUUlSjyf7A+lg==";
+        url = "https://registry.npmjs.org/@ot-builder/common-impl/-/common-impl-1.1.0.tgz";
+        sha512 = "Gnm1eCD2UMSXJhqoqK4vEGGIqVHKch+UF6VBO6uezT7vzdHfTW/IltIaB5ukbT4wumQfRMuZs9Eb6cabNae+hg==";
       };
     };
-    "@ot-builder/errors-1.0.9" = {
+    "@ot-builder/errors-1.1.0" = {
       name = "_at_ot-builder_slash_errors";
       packageName = "@ot-builder/errors";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/errors/-/errors-1.0.9.tgz";
-        sha512 = "r9e+NfOipls5xztugHKtLEq/lsrBtKp+xWa9+7T3foP2u4mjn+/PubghbH7AxOVQH66Dj08MaGUqyKEH2N2KwQ==";
+        url = "https://registry.npmjs.org/@ot-builder/errors/-/errors-1.1.0.tgz";
+        sha512 = "88O6kaLJSWv+n1rboJ/lFEWEs3gRlABlLbqEgUX/tXqVs3cineH7ZZlBDpoNvVYnYV53KzReh8P0P4MIQklejQ==";
       };
     };
-    "@ot-builder/io-bin-cff-1.0.9" = {
+    "@ot-builder/io-bin-cff-1.1.0" = {
       name = "_at_ot-builder_slash_io-bin-cff";
       packageName = "@ot-builder/io-bin-cff";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-cff/-/io-bin-cff-1.0.9.tgz";
-        sha512 = "Y3cWdNk/wX1SMdn+BaNsayrGN/DopufEdgGCPZACEdpZLhiNlDliPA41mqO5+SemOdH59QbNtvAQgNXZqDHo2Q==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-cff/-/io-bin-cff-1.1.0.tgz";
+        sha512 = "bLVT7VnEViiKjL2emb1GbWwybBN0qkfqWgZgkdZJEU930nlnY//FsQhKrpZDW6A9vce7GiwuZaxeSETexF0/ug==";
       };
     };
-    "@ot-builder/io-bin-encoding-1.0.9" = {
+    "@ot-builder/io-bin-encoding-1.1.0" = {
       name = "_at_ot-builder_slash_io-bin-encoding";
       packageName = "@ot-builder/io-bin-encoding";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-encoding/-/io-bin-encoding-1.0.9.tgz";
-        sha512 = "GtL4q9cR39b2ngkSy/2HGpge6Q1om2BOuXTtdrJT0KpCbESjuZ09Sr1/NnqBIQ0QjKGXnR/o5kUg62q71CVbmQ==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-encoding/-/io-bin-encoding-1.1.0.tgz";
+        sha512 = "77cYkXoJxfrDfjXkVIGuCHy/E+ff+t5E2zABHIFLoNmpXJvJdjYPupM/roMKkHqWjhnIP6caEwdCuxt3e8UNHA==";
       };
     };
-    "@ot-builder/io-bin-ext-private-1.0.9" = {
+    "@ot-builder/io-bin-ext-private-1.1.0" = {
       name = "_at_ot-builder_slash_io-bin-ext-private";
       packageName = "@ot-builder/io-bin-ext-private";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-ext-private/-/io-bin-ext-private-1.0.9.tgz";
-        sha512 = "AU2HvH9okIkLX6OLt6kOlpjDR3z2lW2LxQ05+pQSxGwcVuLCeene6f8tWQ+/FWmhevJQgoDKeEy/KfFyoAlxIg==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-ext-private/-/io-bin-ext-private-1.1.0.tgz";
+        sha512 = "EwaHkGdP53bEXm7drrwrD6u63kSHw0A4NX+5xzhsIqDV24LShsZ9t34O2Pby9pN9jCJJFIWN3ryXEq3sHny4cA==";
       };
     };
-    "@ot-builder/io-bin-font-1.0.9" = {
+    "@ot-builder/io-bin-font-1.1.0" = {
       name = "_at_ot-builder_slash_io-bin-font";
       packageName = "@ot-builder/io-bin-font";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-font/-/io-bin-font-1.0.9.tgz";
-        sha512 = "iem4LxkEVQ/HvhuRNrv2ORDnvsPNZPCuJSmGtK3S4D258GPdcDj0Kohn5bpyrFPiL5QybGQUAzo4qYkbMEvInQ==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-font/-/io-bin-font-1.1.0.tgz";
+        sha512 = "PslL6SFENEGtQ6zOXMewl69cOibOLLzrr8CS2Pe78zNcxJ4BWsP6dwZNeu8gVqWKLsUQJQIWbwaPiP/RDhQKUQ==";
       };
     };
-    "@ot-builder/io-bin-glyph-store-1.0.9" = {
+    "@ot-builder/io-bin-glyph-store-1.1.0" = {
       name = "_at_ot-builder_slash_io-bin-glyph-store";
       packageName = "@ot-builder/io-bin-glyph-store";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-glyph-store/-/io-bin-glyph-store-1.0.9.tgz";
-        sha512 = "QHlF2vcOHGmgTnpBWVP3wKCfVemXE9NeUpAcLLkolQMKpR0lXyrundJll/ujPSPImFp4AknPL6UCa6eKrHBwoQ==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-glyph-store/-/io-bin-glyph-store-1.1.0.tgz";
+        sha512 = "ontsdJHI6dY1N0HKzdwLIb0o9G5Q+S1ETADuShP/nQD0lV3cxxj1KS/PnFE/LSoyY0AKrs630kLV1lrMS3R4rg==";
       };
     };
-    "@ot-builder/io-bin-layout-1.0.9" = {
+    "@ot-builder/io-bin-layout-1.1.0" = {
       name = "_at_ot-builder_slash_io-bin-layout";
       packageName = "@ot-builder/io-bin-layout";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-layout/-/io-bin-layout-1.0.9.tgz";
-        sha512 = "ePDm9bKLiS6mhkYxlCv29bYXAlqmQsDR09KKXcFqSj1GSdKFUB/zvfca7PS7xyuLq/XKA9jwdHHLIAfSqdeAxg==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-layout/-/io-bin-layout-1.1.0.tgz";
+        sha512 = "QEW3kR/Tu1Qtp3f6zrmQKGGeRD6daTpuBwjS4AnR47WhGHLZ9IJxVsNMHJeyYwnjXAWg6Tht5HjHGnI9dKnSDA==";
       };
     };
-    "@ot-builder/io-bin-metadata-1.0.9" = {
+    "@ot-builder/io-bin-metadata-1.1.0" = {
       name = "_at_ot-builder_slash_io-bin-metadata";
       packageName = "@ot-builder/io-bin-metadata";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-metadata/-/io-bin-metadata-1.0.9.tgz";
-        sha512 = "qjB11/bumujZI1MewgCqTZe5a3PA219t62Im4ZOgTiOIJ+A55Mryy7W711GrRdcdSOpV0WgSVP1BdwORHvz6wg==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-metadata/-/io-bin-metadata-1.1.0.tgz";
+        sha512 = "PjeEoquOsI2mwg3MZL4VDRlzmWVA5LBeYKAY3LH140WOPYFlPN27YfWGVUO/swc98Z+5xgDZau3emj3ElSRvrw==";
       };
     };
-    "@ot-builder/io-bin-metric-1.0.9" = {
+    "@ot-builder/io-bin-metric-1.1.0" = {
       name = "_at_ot-builder_slash_io-bin-metric";
       packageName = "@ot-builder/io-bin-metric";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-metric/-/io-bin-metric-1.0.9.tgz";
-        sha512 = "f1ALFM5iiVLqQyFZKRYV92fy3/epePMZD2PWYzedHLMzgymm/K2oY0VaRyt010TrVugtaBI4FGN9EpKJFYM9Tw==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-metric/-/io-bin-metric-1.1.0.tgz";
+        sha512 = "mVjDTkxn6ARu7UUMi7rQCNC+fYK7IgSuO2bmYdzuozP7EmEWI5VQq3rhhMHDlvTodEuNARKJxr/tmzcB5Tx7PQ==";
       };
     };
-    "@ot-builder/io-bin-name-1.0.9" = {
+    "@ot-builder/io-bin-name-1.1.0" = {
       name = "_at_ot-builder_slash_io-bin-name";
       packageName = "@ot-builder/io-bin-name";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-name/-/io-bin-name-1.0.9.tgz";
-        sha512 = "tf6X+VursEmLEPDJTfNynkf8O3a3X4670KVnx2RVigyWdXmwj/U52zTU7Vs3NN+xQfUNbhUMgnd7rEHgilvJcA==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-name/-/io-bin-name-1.1.0.tgz";
+        sha512 = "EBQLOP5LFdU18crQuNRQ4lWBzLv3Dw2R8vTvlyUY8nX8OfVUE2KhBreyTjMYTZATfNA2Ey1ZzJPhbT5LpwHg8Q==";
       };
     };
-    "@ot-builder/io-bin-sfnt-1.0.9" = {
+    "@ot-builder/io-bin-sfnt-1.1.0" = {
       name = "_at_ot-builder_slash_io-bin-sfnt";
       packageName = "@ot-builder/io-bin-sfnt";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-sfnt/-/io-bin-sfnt-1.0.9.tgz";
-        sha512 = "yg7qKhmN2zFXfBSi64SXFzji3axvXLfJLGTx0rSWGtVQRX3gQBfwQ98vzrX1Z5O4rSGaCkALXy9wIELeAqy//g==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-sfnt/-/io-bin-sfnt-1.1.0.tgz";
+        sha512 = "SO0kgwif/7idUMT/Oo8J2N1iwIY98FKtl3yKSFYegiGrMqmL4qYGq26NxCt1NgpQyyZrMQV3D5eC81EpmvEy/Q==";
       };
     };
-    "@ot-builder/io-bin-ttf-1.0.9" = {
+    "@ot-builder/io-bin-ttf-1.1.0" = {
       name = "_at_ot-builder_slash_io-bin-ttf";
       packageName = "@ot-builder/io-bin-ttf";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-ttf/-/io-bin-ttf-1.0.9.tgz";
-        sha512 = "McbFe5dx314NhxkTZOzGdTTanJrJvQy6OGuM1+ACrYfCr2CnVONUiuOtN/1nUyIm/N5yiFXLyIcI/pAjOgbl2w==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-ttf/-/io-bin-ttf-1.1.0.tgz";
+        sha512 = "jlyLDuCocNq43uX2wGLspoJ/t901ywgO5OTIfx/x8hg4ka6TKlC13bi0bSvaiVNB6HpDO62GJ69gufRaSCEzvQ==";
       };
     };
-    "@ot-builder/ot-1.0.9" = {
+    "@ot-builder/ot-1.1.0" = {
       name = "_at_ot-builder_slash_ot";
       packageName = "@ot-builder/ot";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot/-/ot-1.0.9.tgz";
-        sha512 = "sJCDeFoAc9PlbOAJDXI32VXcaSV4swBMiFyy1VcNxo9SWT624hwHAe/ZfOrevrSNLzSO93QB3j5l/OjHMGLE9Q==";
+        url = "https://registry.npmjs.org/@ot-builder/ot/-/ot-1.1.0.tgz";
+        sha512 = "9ikUYwiE5ur7l89Ki7uDscMYWm1bxvuRzeWJoMr7thxibtnlMl6rVW5H6NspjEbOZmxgAf3YmiL3oPCq/jiewA==";
       };
     };
-    "@ot-builder/ot-encoding-1.0.9" = {
+    "@ot-builder/ot-encoding-1.1.0" = {
       name = "_at_ot-builder_slash_ot-encoding";
       packageName = "@ot-builder/ot-encoding";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-encoding/-/ot-encoding-1.0.9.tgz";
-        sha512 = "3unI4fHkV45e1p92Z3yifHrtQPMmkBz7B5nFkVrTMSNvSCZKvk6bRcdyvlFEkvQW2zgllQf2GfggV5u/PnikjA==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-encoding/-/ot-encoding-1.1.0.tgz";
+        sha512 = "2x/lVIxC42XJdNB9BhvKq3P/bO1yomTwkLVcBS9R92x6/V1t4KOVCYHOtNL79lCGfZkdCWxHxtHhChF55BetsQ==";
       };
     };
-    "@ot-builder/ot-ext-private-1.0.9" = {
+    "@ot-builder/ot-ext-private-1.1.0" = {
       name = "_at_ot-builder_slash_ot-ext-private";
       packageName = "@ot-builder/ot-ext-private";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-ext-private/-/ot-ext-private-1.0.9.tgz";
-        sha512 = "KUnMgeNSWTm7NupsM+WNA8+JM6dGdEsxKRMq7s5O67jfan/SKO+ICf5xpcFeWqFHbto5wKkzERmnCMZLTV3aDA==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-ext-private/-/ot-ext-private-1.1.0.tgz";
+        sha512 = "MBMiz8RC8crmx7PB89G75y2nIue6+QkIiXGsx402ozlLQVgJe9YznV7dzUHlpLrPGFsbMYPRfZVTV4Ro+YAK0A==";
       };
     };
-    "@ot-builder/ot-glyphs-1.0.9" = {
+    "@ot-builder/ot-glyphs-1.1.0" = {
       name = "_at_ot-builder_slash_ot-glyphs";
       packageName = "@ot-builder/ot-glyphs";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-glyphs/-/ot-glyphs-1.0.9.tgz";
-        sha512 = "vDoCjthLji9fGyXRTabU8ltEn+qhYSH+IaAbGu3JuL9EKElw5r9w6DpzzjBmFjoVCh/o8MVxMW7VwNKgOkXT5g==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-glyphs/-/ot-glyphs-1.1.0.tgz";
+        sha512 = "EURkR2aUUR4Zlhdx+SdvEAkA7Vx+2mRorozb4gySs5PNqbKq43uzgXIgz1Djq6wasN00KcJGlOjogIv1zKFBwg==";
       };
     };
-    "@ot-builder/ot-layout-1.0.9" = {
+    "@ot-builder/ot-layout-1.1.0" = {
       name = "_at_ot-builder_slash_ot-layout";
       packageName = "@ot-builder/ot-layout";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-layout/-/ot-layout-1.0.9.tgz";
-        sha512 = "Od/olVg7QWFSaxHRcA7uzM0jNEoM3nqy5vge1eghapwkRFN0k/PKINYNi0h95S/1A5sDmT9FZ3PRZ8v6kT6BqQ==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-layout/-/ot-layout-1.1.0.tgz";
+        sha512 = "x07BUvdLmcU2w8V8JxiMzv1dI5ybkuDrvpVDuwSAL/eBsuDYf7/3i+ewvHv1WlqG9nQ0v2RJK48CicrCGhlpQw==";
       };
     };
-    "@ot-builder/ot-metadata-1.0.9" = {
+    "@ot-builder/ot-metadata-1.1.0" = {
       name = "_at_ot-builder_slash_ot-metadata";
       packageName = "@ot-builder/ot-metadata";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-metadata/-/ot-metadata-1.0.9.tgz";
-        sha512 = "4tyYUnm2tBVSBned3FHBClyWilA4AXAgR0P+Fw8Nd4NWcYCkIsHezlR+8Sl54YX8LnxO5XVTHpZvFob+QdyCSQ==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-metadata/-/ot-metadata-1.1.0.tgz";
+        sha512 = "zgUlAqDj8eCuizVbMN4CVA76m+PAUdl91tUO1JTAn5qt0Lo8kfnOWaFc/aU+Q8HD3RXENRpAjA3N3kBm05UNiQ==";
       };
     };
-    "@ot-builder/ot-name-1.0.9" = {
+    "@ot-builder/ot-name-1.1.0" = {
       name = "_at_ot-builder_slash_ot-name";
       packageName = "@ot-builder/ot-name";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-name/-/ot-name-1.0.9.tgz";
-        sha512 = "zl7qxyS5VjhB67//jJCwcjdT16ds98Zz4mnU4jcLwDkv0RHQFCFDiHqlefHwegIeMR2S54F27pxHsXDSG5MKLQ==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-name/-/ot-name-1.1.0.tgz";
+        sha512 = "mudNPddCD/UD+v1fuFdPv3CzHjVS9Jt4GJhQ7or5HsG3/dIQ9N8jfqtBXtSK5ePEgoUsfhPWN5do/cwd//GQQQ==";
       };
     };
-    "@ot-builder/ot-sfnt-1.0.9" = {
+    "@ot-builder/ot-sfnt-1.1.0" = {
       name = "_at_ot-builder_slash_ot-sfnt";
       packageName = "@ot-builder/ot-sfnt";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-sfnt/-/ot-sfnt-1.0.9.tgz";
-        sha512 = "o6o3IyKbAHUla37PxRxwAq5EqNgF7AfjtSzvhDnWQC+qofFDebpnRiGksEOah7LMAeSAsMi04KhK6cQJ/b1cYw==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-sfnt/-/ot-sfnt-1.1.0.tgz";
+        sha512 = "iyz7npSWu5z9mgSnEjFkBFoOA4mKYIfbG27SGUWWWx0HWHI9cRoE+FHIcQOCJH0PmATvNCXMVfiCSPHesb57GA==";
       };
     };
-    "@ot-builder/ot-standard-glyph-namer-1.0.9" = {
+    "@ot-builder/ot-standard-glyph-namer-1.1.0" = {
       name = "_at_ot-builder_slash_ot-standard-glyph-namer";
       packageName = "@ot-builder/ot-standard-glyph-namer";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-standard-glyph-namer/-/ot-standard-glyph-namer-1.0.9.tgz";
-        sha512 = "4TuinXcXE36b0UyezCveHzf/GC57sfDM6FB8Oavy/6TiRjyurLJ/03INkTqlgaPihiH1aU7NF2jFkJqym/W5Xw==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-standard-glyph-namer/-/ot-standard-glyph-namer-1.1.0.tgz";
+        sha512 = "2jyZCBOWmkKyLfU/EOS2AZjJ0Y0toqZqOb2vrIhQRUkli9cb1RyALxkOnP60IfGsD2SNa9yxZcEbS9RlRK8rvw==";
       };
     };
-    "@ot-builder/prelude-1.0.9" = {
+    "@ot-builder/prelude-1.1.0" = {
       name = "_at_ot-builder_slash_prelude";
       packageName = "@ot-builder/prelude";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/prelude/-/prelude-1.0.9.tgz";
-        sha512 = "9nCcbwXQaLnwDkayFadEUiEd5CiHhSHsvFw2EXkZuEWUceu4qN0TACVy0EjiCWGD3FE9LM3NljejUmIxc4Hf8A==";
+        url = "https://registry.npmjs.org/@ot-builder/prelude/-/prelude-1.1.0.tgz";
+        sha512 = "ghZ04jh2z8WD4UdHJVXKTyjzAo7zUD4lyilrO17fKT3WqD/LW/2vKC7inwepELwVC03uT8xaVhnflF1rYGMzKg==";
       };
     };
-    "@ot-builder/primitive-1.0.9" = {
+    "@ot-builder/primitive-1.1.0" = {
       name = "_at_ot-builder_slash_primitive";
       packageName = "@ot-builder/primitive";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/primitive/-/primitive-1.0.9.tgz";
-        sha512 = "ut0tqNGB7wtk6AQ5QZEt+A6XyIHeizxYkx9L6YluBaoq4E8PUk2gk4Vmvf8mf5nQkpmoTJFAqgMrp9KrSAjzFA==";
+        url = "https://registry.npmjs.org/@ot-builder/primitive/-/primitive-1.1.0.tgz";
+        sha512 = "ob7od9Lr3nlGSM6v4xoM8krXuO2W0bOFfpog4Trsg6BArRz8zFfdFVjsZ8umxAhJX2z0Jroiq1nM8okdkw0TDQ==";
       };
     };
-    "@ot-builder/rectify-1.0.9" = {
+    "@ot-builder/rectify-1.1.0" = {
       name = "_at_ot-builder_slash_rectify";
       packageName = "@ot-builder/rectify";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/rectify/-/rectify-1.0.9.tgz";
-        sha512 = "Ku1nPOiK+Ex2JaV5IvXKHDxWflKOhzgpDFqvh+GNrcRgfi0Ybkuhi1/hlMpQ2ZD2z7wTjIeVYa3vaCIdy7rheA==";
+        url = "https://registry.npmjs.org/@ot-builder/rectify/-/rectify-1.1.0.tgz";
+        sha512 = "nT6VP78JwQtLcyn+DEVp5Xv5bAi+6z9Y8QaaLYWCtv5AnY4aNN7VKwiK4v9Kag77BYDqYT7PI4et2tR5Pf4jSA==";
       };
     };
-    "@ot-builder/stat-glyphs-1.0.9" = {
+    "@ot-builder/stat-glyphs-1.1.0" = {
       name = "_at_ot-builder_slash_stat-glyphs";
       packageName = "@ot-builder/stat-glyphs";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/stat-glyphs/-/stat-glyphs-1.0.9.tgz";
-        sha512 = "Y2EcyqdanTtRCBfADGEvYgKP5d+WK+UyYMIY5ILcQEGW2L1osVe8QROUfpo7kWqrKjxV2Tzrz5/SvlP5BzYTfg==";
+        url = "https://registry.npmjs.org/@ot-builder/stat-glyphs/-/stat-glyphs-1.1.0.tgz";
+        sha512 = "FquKCcC2/Z/cCV16vi+8DHoQzMdwaYSgvA8Hv4Djx3aYLyAmYe14ODfZF63RcW5uh7pZsG1c6u82bf1trwZr9g==";
       };
     };
-    "@ot-builder/trace-1.0.9" = {
+    "@ot-builder/trace-1.1.0" = {
       name = "_at_ot-builder_slash_trace";
       packageName = "@ot-builder/trace";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/trace/-/trace-1.0.9.tgz";
-        sha512 = "c8002SN64oldhDz4NN9VdoyJOdPHAU4UkB7EQFsPRZX/a8pVx20SMWXcNokrTGTHhEpaXBY0i/zshUp0kLbjVQ==";
+        url = "https://registry.npmjs.org/@ot-builder/trace/-/trace-1.1.0.tgz";
+        sha512 = "1C2vziYWUYe2YzPEPfNIdqjXtVjl5we69EjX5q4ZZPbCFFoeWGRR54Zxgyp8V5GAvKz0Pn94nXGaFlfEdwk3jQ==";
       };
     };
-    "@ot-builder/var-store-1.0.9" = {
+    "@ot-builder/var-store-1.1.0" = {
       name = "_at_ot-builder_slash_var-store";
       packageName = "@ot-builder/var-store";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/var-store/-/var-store-1.0.9.tgz";
-        sha512 = "gaNm+kdi1vQgEiul2flVn6OC/FDHmV1Nb+nuQWO7uwQCkxnb22qv/d5o/QAM5KeLQ/xvnPjjlF8ZAA34NylA4A==";
+        url = "https://registry.npmjs.org/@ot-builder/var-store/-/var-store-1.1.0.tgz";
+        sha512 = "Q60yNeIDJiqlHIPDkqJJXZWN5zodkKQQv/5PpLIocKMdHrQVqltrTQ5QL+V42Nup1+BiGt1zmR+sO+uUa3A/Iw==";
       };
     };
-    "@ot-builder/variance-1.0.9" = {
+    "@ot-builder/variance-1.1.0" = {
       name = "_at_ot-builder_slash_variance";
       packageName = "@ot-builder/variance";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/variance/-/variance-1.0.9.tgz";
-        sha512 = "dYmtxdHBlkwJRU6Fu6vl/kaaF1DdJiWUuDBLJrGY865J/yGrtIKFAE18UD1XtNaYRQ3Je87Suheb85HHvcXzZA==";
+        url = "https://registry.npmjs.org/@ot-builder/variance/-/variance-1.1.0.tgz";
+        sha512 = "azUnRrvj2LKkPTYWuiEFStbUEQWbaiI6F63SZOL8yIOEr5Jya/iZ33HeeGltx/jbCrLdboad5pBechG/QD44+w==";
       };
     };
     "@parcel/fs-1.11.0" = {
@@ -5152,31 +5404,31 @@ let
         sha512 = "+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==";
       };
     };
-    "@react-native-community/cli-debugger-ui-4.13.1" = {
+    "@react-native-community/cli-debugger-ui-5.0.1" = {
       name = "_at_react-native-community_slash_cli-debugger-ui";
       packageName = "@react-native-community/cli-debugger-ui";
-      version = "4.13.1";
+      version = "5.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-4.13.1.tgz";
-        sha512 = "UFnkg5RTq3s2X15fSkrWY9+5BKOFjihNSnJjTV2H5PtTUFbd55qnxxPw8CxSfK0bXb1IrSvCESprk2LEpqr5cg==";
+        url = "https://registry.npmjs.org/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-5.0.1.tgz";
+        sha512 = "5gGKaaXYOVE423BUqxIfvfAVSj5Cg1cU/TpGbeg/iqpy2CfqyWqJB3tTuVUbOOiOvR5wbU8tti6pIi1pchJ+oA==";
       };
     };
-    "@react-native-community/cli-server-api-4.9.0" = {
+    "@react-native-community/cli-server-api-5.0.1" = {
       name = "_at_react-native-community_slash_cli-server-api";
       packageName = "@react-native-community/cli-server-api";
-      version = "4.9.0";
+      version = "5.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@react-native-community/cli-server-api/-/cli-server-api-4.9.0.tgz";
-        sha512 = "lKBIXJjFLyu4+6Vhhj/QzD41aQGkVi8xWLqTYCgi26d61kjLuuZs0Xer02DPJK3+YADKExVdWrJzVHfJ7zYlTA==";
+        url = "https://registry.npmjs.org/@react-native-community/cli-server-api/-/cli-server-api-5.0.1.tgz";
+        sha512 = "OOxL+y9AOZayQzmSW+h5T54wQe+QBc/f67Y9QlWzzJhkKJdYx+S4VOooHoD5PFJzGbYaxhu2YF17p517pcEIIA==";
       };
     };
-    "@react-native-community/cli-tools-4.13.0" = {
+    "@react-native-community/cli-tools-5.0.1" = {
       name = "_at_react-native-community_slash_cli-tools";
       packageName = "@react-native-community/cli-tools";
-      version = "4.13.0";
+      version = "5.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@react-native-community/cli-tools/-/cli-tools-4.13.0.tgz";
-        sha512 = "s4f489h5+EJksn4CfheLgv5PGOM0CDmK1UEBLw2t/ncWs3cW2VI7vXzndcd/WJHTv3GntJhXDcJMuL+Z2IAOgg==";
+        url = "https://registry.npmjs.org/@react-native-community/cli-tools/-/cli-tools-5.0.1.tgz";
+        sha512 = "XOX5w98oSE8+KnkMZZPMRT7I5TaP8fLbDl0tCu40S7Epz+Zz924n80fmdu6nUDIfPT1nV6yH1hmHmWAWTDOR+Q==";
       };
     };
     "@redocly/ajv-8.6.2" = {
@@ -5188,13 +5440,13 @@ let
         sha512 = "tU8fQs0D76ZKhJ2cWtnfQthWqiZgGBx0gH0+5D8JvaBEBaqA8foPPBt3Nonwr3ygyv5xrw2IzKWgIY86BlGs+w==";
       };
     };
-    "@redocly/openapi-core-1.0.0-beta.53" = {
+    "@redocly/openapi-core-1.0.0-beta.54" = {
       name = "_at_redocly_slash_openapi-core";
       packageName = "@redocly/openapi-core";
-      version = "1.0.0-beta.53";
+      version = "1.0.0-beta.54";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.53.tgz";
-        sha512 = "n5WixBRb7oWS31v3/cdOW/eNXbr2M4N8+HjHfCA/oQX6Z4ZYqPOJCekw64sQ/fnUQMIQyT6fKqyaf+iO4tG7YA==";
+        url = "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.54.tgz";
+        sha512 = "uYs0N1Trjkh7u8IMIuCU2VxCXhMyGWSZUkP/WNdTR1OgBUtvNdF9C32zoQV+hyCIH4gVu42ROHkjisy333ZX+w==";
       };
     };
     "@redocly/react-dropdown-aria-2.0.12" = {
@@ -5260,6 +5512,15 @@ let
         sha512 = "yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==";
       };
     };
+    "@rollup/plugin-replace-2.4.2" = {
+      name = "_at_rollup_slash_plugin-replace";
+      packageName = "@rollup/plugin-replace";
+      version = "2.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz";
+        sha512 = "IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==";
+      };
+    };
     "@rollup/pluginutils-3.1.0" = {
       name = "_at_rollup_slash_pluginutils";
       packageName = "@rollup/pluginutils";
@@ -5296,22 +5557,13 @@ let
         sha512 = "c/qwwcHyafOQuVQJj0IlBjf5yYgBI7YPJ77k4fOJYesb41jio65eaJODRUmfYKhTOFBrIZ66kgvGPlNbjuoRdQ==";
       };
     };
-    "@schematics/angular-12.1.1" = {
+    "@schematics/angular-12.1.2" = {
       name = "_at_schematics_slash_angular";
       packageName = "@schematics/angular";
-      version = "12.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@schematics/angular/-/angular-12.1.1.tgz";
-        sha512 = "ukSKoAWfXt28TiHlRrEzKFW63V3jroRF3xnBKtsaL3AZ4MVJiHzOWXkzDAZBaEOLUH/l6Xhm64NMgOqMEAg1rQ==";
-      };
-    };
-    "@schematics/schematics-0.1102.6" = {
-      name = "_at_schematics_slash_schematics";
-      packageName = "@schematics/schematics";
-      version = "0.1102.6";
+      version = "12.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@schematics/schematics/-/schematics-0.1102.6.tgz";
-        sha512 = "x77kbJL/HqR4gx0tbt35VCOGLyMvB7jD/x7eB1njhQRF8E/xynEOk3i+7A5VmK67QP5NJxU8BQKlPkJ55tBDmg==";
+        url = "https://registry.npmjs.org/@schematics/angular/-/angular-12.1.2.tgz";
+        sha512 = "nnFPp9uHLinP05r9TFsWT+fwlbwbLHg3yzJr+0aIOX1OsZQFV8hblEFEqdzFQJyx1uGMp4nvBHvCUlYv9GVQLg==";
       };
     };
     "@segment/loosely-validate-event-2.0.0" = {
@@ -5341,13 +5593,13 @@ let
         sha512 = "lOUyRopNTKJYVEU9T6stp2irwlTDsYMmUKBOUjnMcwGveuUfIJqrCOtFLtIPPj3XJlbZy5F68l4KP9rZ8Ipang==";
       };
     };
-    "@serverless/components-3.13.2" = {
+    "@serverless/components-3.14.0" = {
       name = "_at_serverless_slash_components";
       packageName = "@serverless/components";
-      version = "3.13.2";
+      version = "3.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@serverless/components/-/components-3.13.2.tgz";
-        sha512 = "fIYqo9cONxQeNpyWFTTLi6+r2S1KivOU5sys6nVQSR24jRVqxSpPN2eMz6BCUB8rw7N4kf+wbQDLwlyFbIroyQ==";
+        url = "https://registry.npmjs.org/@serverless/components/-/components-3.14.0.tgz";
+        sha512 = "Ssuu+OcyWvisGIMZD4Lr9Uj20Ndgb9a8Z/Jw4VbhFS+grc89uK7vZR3pS9I4LTfTUKH4HUbMJXxDndNEFGgLAA==";
       };
     };
     "@serverless/core-1.1.2" = {
@@ -5377,22 +5629,22 @@ let
         sha512 = "YAV5V/y+XIOfd+HEVeXfPWZb8C6QLruFk9tBivoX2roQLWVq145s4uxf8D0QioCueuRzkukHUS4JIj+KVoS34A==";
       };
     };
-    "@serverless/platform-client-4.2.3" = {
+    "@serverless/platform-client-4.2.5" = {
       name = "_at_serverless_slash_platform-client";
       packageName = "@serverless/platform-client";
-      version = "4.2.3";
+      version = "4.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@serverless/platform-client/-/platform-client-4.2.3.tgz";
-        sha512 = "dyELLbrf/9+O+sjuIL7ymlH8zwCOsG+tf2TjeEjXooVSvNqUoZ4ZadENjxInUV841l0ddwkihwzH/54Yw+/qkg==";
+        url = "https://registry.npmjs.org/@serverless/platform-client/-/platform-client-4.2.5.tgz";
+        sha512 = "PqQptakqHs6DHVY3fCqyMqdaFSKgehvUGrobWBUhcsmovnGY1Fzw9s3uqnqt2jmaCICNzPn/hPN+P+JbsG7itA==";
       };
     };
-    "@serverless/platform-client-china-2.1.17" = {
+    "@serverless/platform-client-china-2.2.0" = {
       name = "_at_serverless_slash_platform-client-china";
       packageName = "@serverless/platform-client-china";
-      version = "2.1.17";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@serverless/platform-client-china/-/platform-client-china-2.1.17.tgz";
-        sha512 = "knJeb559PBJ72f/+RMH1iMavSiCJiXnTIWH88vdhlON+Tx7RPOTT5p48Modgbs8xONugmqbHjw9Z+fcyXZ2ajg==";
+        url = "https://registry.npmjs.org/@serverless/platform-client-china/-/platform-client-china-2.2.0.tgz";
+        sha512 = "cNEMjQ826PfZOYSY00eIOSFZEdmy4QU4L6wU9rzhpIhURRsoULnPE5tfYAs2yTYPBRSgV9o3eqLmh5+pOcVbLw==";
       };
     };
     "@serverless/template-1.1.4" = {
@@ -5422,13 +5674,13 @@ let
         sha512 = "cl5uPaGg72z0sCUpF0zsOhwYYUV72Gxc1FwFfxltO8hSvMeFDvwD7JrNE4kHcIcKRjwPGbSH0fdVPUpErZ8Mog==";
       };
     };
-    "@serverless/utils-5.3.0" = {
+    "@serverless/utils-5.6.0" = {
       name = "_at_serverless_slash_utils";
       packageName = "@serverless/utils";
-      version = "5.3.0";
+      version = "5.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@serverless/utils/-/utils-5.3.0.tgz";
-        sha512 = "cUt1ZYXZ/6Khe/foCucqraRpaTtejc4mICWVjQynwaPaK86/3g4Afu4pV1kEumnbet7N0PLbi+SKr8SHTf6tNQ==";
+        url = "https://registry.npmjs.org/@serverless/utils/-/utils-5.6.0.tgz";
+        sha512 = "R3mb6DlPwrlo49fwQNz3YTQb2XJCxVui+s/olVBSdAh82fi8EbbjgkZkaLKB9ES7lV2MIr3jqrIWjYyGE/2Bgw==";
       };
     };
     "@serverless/utils-china-1.1.4" = {
@@ -5638,13 +5890,13 @@ let
         sha512 = "ti5fPYivhBGCJ7rZGznMX2UJE1M5lR811WvVyBWTRJwLYVFYkhxRXKfgZUXEB0tq8vpo3V7tm3syrBd5TLPIMA==";
       };
     };
-    "@snyk/docker-registry-v2-client-2.2.2" = {
+    "@snyk/docker-registry-v2-client-2.2.4" = {
       name = "_at_snyk_slash_docker-registry-v2-client";
       packageName = "@snyk/docker-registry-v2-client";
-      version = "2.2.2";
+      version = "2.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@snyk/docker-registry-v2-client/-/docker-registry-v2-client-2.2.2.tgz";
-        sha512 = "JkkpVZ8WIWWquazoSTSFlMhYOwt+tk+EMSwOxfu/C/wtaESADCORJBe52z0fAnc+xt3eVUVrM+7prJCIJeSrMg==";
+        url = "https://registry.npmjs.org/@snyk/docker-registry-v2-client/-/docker-registry-v2-client-2.2.4.tgz";
+        sha512 = "7JoxHCYAjJQBOEa11Sdb1scjtq/K4HVDlcE10pNFKbmcUn5Gcm/VDJ2RMEbG2oBdmHTTJMJ5RopIiNMSFd669w==";
       };
     };
     "@snyk/fast-glob-3.2.6-patch" = {
@@ -5764,13 +6016,13 @@ let
         sha512 = "WHhnwyoGOhjFOjBXqUfszD84SErrtjHjium/4xFbqKpEE+yuwxs8OwV/S29BtxhYiGtjpD1azv5QtH30VUMl0A==";
       };
     };
-    "@snyk/snyk-docker-pull-3.2.5" = {
+    "@snyk/snyk-docker-pull-3.6.3" = {
       name = "_at_snyk_slash_snyk-docker-pull";
       packageName = "@snyk/snyk-docker-pull";
-      version = "3.2.5";
+      version = "3.6.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@snyk/snyk-docker-pull/-/snyk-docker-pull-3.2.5.tgz";
-        sha512 = "vElzqQs894u8Tj6LluGrj97/v1jlvi0DToaU5YBlxEKGaY5IgwSUcuqEW8r4h87fPuY2h4S9/zWqKPShwipvjw==";
+        url = "https://registry.npmjs.org/@snyk/snyk-docker-pull/-/snyk-docker-pull-3.6.3.tgz";
+        sha512 = "SXhIAVfBVB/WoMgh3pTJNEKehpHygzqnnqHpg3ucw2rc5z0LqSAJQyYWl3jSAUnl5LgA11UuYD8zj0dsRbed2A==";
       };
     };
     "@snyk/snyk-hex-plugin-1.1.4" = {
@@ -5899,6 +6151,15 @@ let
         sha512 = "2kGbqUVJUGE8dM+bMzXG/PYUWKkjLIkRLWNh39OaADkiabDRdw8ATFCgbMz5xdIcvwspPAluSL7uY+ZiTWdWmQ==";
       };
     };
+    "@surma/rollup-plugin-off-main-thread-1.4.2" = {
+      name = "_at_surma_slash_rollup-plugin-off-main-thread";
+      packageName = "@surma/rollup-plugin-off-main-thread";
+      version = "1.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-1.4.2.tgz";
+        sha512 = "yBMPqmd1yEJo/280PAMkychuaALyQ9Lkb5q1ck3mjJrFuEobIfhnQ4J3mbvBoISmR3SWMWV+cGB/I0lCQee79A==";
+      };
+    };
     "@szmarczak/http-timer-1.1.2" = {
       name = "_at_szmarczak_slash_http-timer";
       packageName = "@szmarczak/http-timer";
@@ -5908,13 +6169,13 @@ let
         sha512 = "XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==";
       };
     };
-    "@szmarczak/http-timer-4.0.5" = {
+    "@szmarczak/http-timer-4.0.6" = {
       name = "_at_szmarczak_slash_http-timer";
       packageName = "@szmarczak/http-timer";
-      version = "4.0.5";
+      version = "4.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.5.tgz";
-        sha512 = "PyRA9sm1Yayuj5OIoJ1hGt2YISX45w9WcFbh6ddT0Z/0yaFxOtGLInr4jUfU1EAFVs0Yfyfev4RNwBlUaHdlDQ==";
+        url = "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz";
+        sha512 = "4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==";
       };
     };
     "@tencent-sdk/capi-1.1.8" = {
@@ -5926,33 +6187,6 @@ let
         sha512 = "AmyMQndtxMsM59eDeA0gGiw8T2LzNvDhx/xl+ygFXXrsw+yb/mit73ndHkiHKcRA1EpNHTyD1PN9ATxghzplfg==";
       };
     };
-    "@tencent-sdk/cls-0.2.1" = {
-      name = "_at_tencent-sdk_slash_cls";
-      packageName = "@tencent-sdk/cls";
-      version = "0.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@tencent-sdk/cls/-/cls-0.2.1.tgz";
-        sha512 = "nSEPLAQyXf694XqoXi/OnWjfaJNPoo+JaPt81Kpy1QogOSZdEqEebgGj/ROs8kPjRa3kf+6+0s8MSQRtJBOOyQ==";
-      };
-    };
-    "@tencent-sdk/common-0.1.0" = {
-      name = "_at_tencent-sdk_slash_common";
-      packageName = "@tencent-sdk/common";
-      version = "0.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@tencent-sdk/common/-/common-0.1.0.tgz";
-        sha512 = "WHVGulaFv/CLwSqYC5501FCMNclu7B7nH1OminksjV2HSonIvx3o3Pms4+2/2Lse/sB5RCmPiiitV7g09b4mWw==";
-      };
-    };
-    "@tencent-sdk/faas-0.1.5" = {
-      name = "_at_tencent-sdk_slash_faas";
-      packageName = "@tencent-sdk/faas";
-      version = "0.1.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@tencent-sdk/faas/-/faas-0.1.5.tgz";
-        sha512 = "6wEkJCm1rN9LOgH/BZHW6ajJpYZQuf1qwfW+tGTNkczW0RepWASznS6MCzWC9HX09oosVpg8sGCGtcgWQSP1Qg==";
-      };
-    };
     "@textlint/ast-node-types-12.0.0" = {
       name = "_at_textlint_slash_ast-node-types";
       packageName = "@textlint/ast-node-types";
@@ -5971,112 +6205,112 @@ let
         sha512 = "qi2jjgO6Tn3KNPGnm6B7p6QTEPvY95NFsIAaJuwbulur8iJUEenp1OnoUfiDaC/g2WPPEFkcfXpmnu8XEMFo2A==";
       };
     };
-    "@textlint/ast-tester-12.0.0" = {
+    "@textlint/ast-tester-12.0.2" = {
       name = "_at_textlint_slash_ast-tester";
       packageName = "@textlint/ast-tester";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-12.0.0.tgz";
-        sha512 = "mcAqaOJnAhay8QtDC/na5S72XPxmqGCntOwcLwuSjEmPGAIuLC3GsumLQo4nWSQ2LGnWd6CwLDZT4eBlRWetNA==";
+        url = "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-12.0.2.tgz";
+        sha512 = "kHta27+SJC0YxEyEdlNux6m2JepX920gc5x98lVBVYK6Wq6cAF67EEGl1o9ynqroIHEc3wTSEDOFwxXpnlfsNA==";
       };
     };
-    "@textlint/ast-traverse-12.0.0" = {
+    "@textlint/ast-traverse-12.0.2" = {
       name = "_at_textlint_slash_ast-traverse";
       packageName = "@textlint/ast-traverse";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-12.0.0.tgz";
-        sha512 = "Mu0il8qWS9YkzVAqwmrTd+ga5S0LJVWOGjE6d9yADf5xObUDFk4g8ITlfEOiicpX5bTUxT4e1bORxPveCJ8iKQ==";
+        url = "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-12.0.2.tgz";
+        sha512 = "OrbGnwtqNAsX7jVSRKecc1Lp2tg54ntnTuvOHkYrZrlC72Hk7+7V/UFQBmFNQCe0cH6Tjb5FFFcgp6f8gM+ehw==";
       };
     };
-    "@textlint/feature-flag-12.0.0" = {
+    "@textlint/feature-flag-12.0.2" = {
       name = "_at_textlint_slash_feature-flag";
       packageName = "@textlint/feature-flag";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-12.0.0.tgz";
-        sha512 = "xgK6tsf1Gg6xn8/X0HN4LXzSkJYgmByAvzItUPlI0dzvA4HhhT4gkBeshDCuXsHLc970nYgzy1TYHpyscu7PTw==";
+        url = "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-12.0.2.tgz";
+        sha512 = "yNq5uErjFrVq1gghg3A8D77+E36wLXRws5LwSsoRC4LVPIGR+LYZ9BlkoyNTas8dOzGwTs6XZIcWCIWXy77M8Q==";
       };
     };
-    "@textlint/fixer-formatter-12.0.0" = {
+    "@textlint/fixer-formatter-12.0.2" = {
       name = "_at_textlint_slash_fixer-formatter";
       packageName = "@textlint/fixer-formatter";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-12.0.0.tgz";
-        sha512 = "y2PWue8PANhSF9cXwksxmjDs/n9exOq4daNMhN7VvJk9yrXL+nSuAoyDXjyp09gX4Nfwa/xsOrQRTDVRbizgcw==";
+        url = "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-12.0.2.tgz";
+        sha512 = "ii49bDLVcgnnxmnaZFX0rDFEIGH3o6DGKnr76cfqy6+DWkGQlhBPyRdbx2bIF65KT+7nAMU0JjfEK+n/WIYFTA==";
       };
     };
-    "@textlint/kernel-12.0.0" = {
+    "@textlint/kernel-12.0.2" = {
       name = "_at_textlint_slash_kernel";
       packageName = "@textlint/kernel";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/kernel/-/kernel-12.0.0.tgz";
-        sha512 = "8UXHKhSAgn1aexPjyQE1CRVivCfSz+aFuNrktT9+JOMM3XsSd4JFcMKDhPA1utiiRR+4yDVH5be38vuuJOG9cQ==";
+        url = "https://registry.npmjs.org/@textlint/kernel/-/kernel-12.0.2.tgz";
+        sha512 = "IVWC5xyHj58X3/sUXAOndOPMQMkvGaXXPCtLITm8rSwKRc4D/qF2hhwAisOu8XImIwBGzvhFlq+IM7cUW1qDtA==";
       };
     };
-    "@textlint/linter-formatter-12.0.0" = {
+    "@textlint/linter-formatter-12.0.2" = {
       name = "_at_textlint_slash_linter-formatter";
       packageName = "@textlint/linter-formatter";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.0.0.tgz";
-        sha512 = "jRRZluLCBXcP8VlA90N8DJOPy890j7rVOVSuyyFn0ypuUK88X2qH9XoEd9yYbo/HmH9ky2h+TeA8CJtOAIjU2g==";
+        url = "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.0.2.tgz";
+        sha512 = "xRTkLmMUnxW5Y6UXsIc9iLo8hyj5toYXVA/u5ABO4t3QObgtUllWi9W2eauZeY19pLTXweBHYxqG/tl3jTCpJQ==";
       };
     };
-    "@textlint/markdown-to-ast-12.0.0" = {
+    "@textlint/markdown-to-ast-12.0.2" = {
       name = "_at_textlint_slash_markdown-to-ast";
       packageName = "@textlint/markdown-to-ast";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-12.0.0.tgz";
-        sha512 = "XaiuePJVDGVIwdjIiITdbdRXZDFnAFY/so3Rb8qAId/Qq9fKPUvgefMkdIG73wUC7LzhrAzH6/CuEO+f77HR5g==";
+        url = "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-12.0.2.tgz";
+        sha512 = "xAJ4U/fOL7FoX4bYeYRCsSIeTxFqzKd944AsVxAYrz2ZfKH0TtBSNDDtN22uBEXOrSCCR12Z7QuMcp+URyYWlw==";
       };
     };
-    "@textlint/module-interop-12.0.0" = {
+    "@textlint/module-interop-12.0.2" = {
       name = "_at_textlint_slash_module-interop";
       packageName = "@textlint/module-interop";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-12.0.0.tgz";
-        sha512 = "WSuwd3pd2xYDCYqpA6NE8FwMZS4WJ2gZmsSCXBpOh3qJ/pHbmrfEaiwOpGQJA4RfXVp8Fy5KfaAQJIr+wox98A==";
+        url = "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-12.0.2.tgz";
+        sha512 = "jnFx7B7Q/au49n5Kt/ttPhecvnJGj7643KzPxRNXy422nmafi1EfOZDMGkNEJhlVsQ9WzAnliTTXTFTrBhtVYA==";
       };
     };
-    "@textlint/source-code-fixer-12.0.0" = {
+    "@textlint/source-code-fixer-12.0.2" = {
       name = "_at_textlint_slash_source-code-fixer";
       packageName = "@textlint/source-code-fixer";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-12.0.0.tgz";
-        sha512 = "+XMJ7unzezEqKh8euWIw1QUprvv7IJzOfV0UPVbkThX2d3ZOzBmK+AzlYbqzCwZ1jkV0QYaRqaptBE+iaaQjNg==";
+        url = "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-12.0.2.tgz";
+        sha512 = "lWNndH7Z+KGo8NhM4e3I5fR0SfZeS25AW7MRQGsKbxHL8NSi6KmCXVK8unEls82+DKXW4VdjTTgVYTTOVGa3BA==";
       };
     };
-    "@textlint/text-to-ast-12.0.0" = {
+    "@textlint/text-to-ast-12.0.2" = {
       name = "_at_textlint_slash_text-to-ast";
       packageName = "@textlint/text-to-ast";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-12.0.0.tgz";
-        sha512 = "j73hF6BiwdZurNdzHfOtP5j3v+nTWaTP7RtJf5wpfQBigT4RA+EqmKxUd/OpO+gt/Xy1NkpceLFNllZGRLEvkw==";
+        url = "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-12.0.2.tgz";
+        sha512 = "vgB4k4CpY59XVrcvWLyFkCoMIVpiUheuy2FC1+Qb44hmoEYT26uglX7SEkBRTQvlzsjChgryzA2PFf2c1wkL0Q==";
       };
     };
-    "@textlint/textlint-plugin-markdown-12.0.0" = {
+    "@textlint/textlint-plugin-markdown-12.0.2" = {
       name = "_at_textlint_slash_textlint-plugin-markdown";
       packageName = "@textlint/textlint-plugin-markdown";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-12.0.0.tgz";
-        sha512 = "eo9deECYMkytoiJUqDxEwzugL8sLcCFUbeCpzV5IuIRwQBh85Hds3lp/mtW1B3Q/BxcSa08im2HAa9uRdcoe4Q==";
+        url = "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-12.0.2.tgz";
+        sha512 = "3qizGxt/cz0foqmUuqpk0hnQzXdDehG0CBrzUINJVa7btpDn8bD9fRYn88OdmGLtejVJR/pUDOOZk3RYYEVmlQ==";
       };
     };
-    "@textlint/textlint-plugin-text-12.0.0" = {
+    "@textlint/textlint-plugin-text-12.0.2" = {
       name = "_at_textlint_slash_textlint-plugin-text";
       packageName = "@textlint/textlint-plugin-text";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-12.0.0.tgz";
-        sha512 = "brtexdqu7yvFLstYvVlotMZz5T7SwKfnFnV9Sm+uhg/d3Ddea9exzpiWWcXfRAhfOBd12mmEGM6gwAuSwzrhqg==";
+        url = "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-12.0.2.tgz";
+        sha512 = "giCTwrioT6bYlOZ+xf/c9ML1GYitQVrtToHzWI6AAs8szg+Q5+h3KCG921sDEGgZfqnljuBaYcHJsW/iNG1+UA==";
       };
     };
     "@textlint/types-1.5.5" = {
@@ -6088,22 +6322,22 @@ let
         sha512 = "80P6fcqgsG9bP6JgR6W/E/oIx+71pplaicYCvvB4vMIeGk0OnWls4Q21kCpDYmq/C/ABtZ/Gy/Ov/8ExQPeQ7A==";
       };
     };
-    "@textlint/types-12.0.0" = {
+    "@textlint/types-12.0.2" = {
       name = "_at_textlint_slash_types";
       packageName = "@textlint/types";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/types/-/types-12.0.0.tgz";
-        sha512 = "3sB22cGtN9nPViDrW7FJxWkDrpGtyJbvNsvZqzX83HJbAiOmzzeHDkRRLvz9tax76lcdjlNk+2rHY3iSnjhEag==";
+        url = "https://registry.npmjs.org/@textlint/types/-/types-12.0.2.tgz";
+        sha512 = "w5aWSCd1sot1waiYw8KnmJNY1q+k9LDoaA6xjGbBuVBGJl0TLXIZoOP8HYFUcKFfJRpqGGob1geTHiyFdnyS0w==";
       };
     };
-    "@textlint/utils-12.0.0" = {
+    "@textlint/utils-12.0.2" = {
       name = "_at_textlint_slash_utils";
       packageName = "@textlint/utils";
-      version = "12.0.0";
+      version = "12.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/utils/-/utils-12.0.0.tgz";
-        sha512 = "bnIr17iouc4MtVR+r7v8mBasNn3ZsQpfTLTi4RelrZJdICHMBUMOWRX70cVRV/xJck/nfY9igt325qI0y2ELoQ==";
+        url = "https://registry.npmjs.org/@textlint/utils/-/utils-12.0.2.tgz";
+        sha512 = "IYmibhDMWd8EmRvk8ii9AA/ecrZk5Wj5NNcKuB78+ae2PIVI1zWzQoieSvQyX7DLPRVH4S22RORiEpruRcDzng==";
       };
     };
     "@tokenizer/token-0.1.1" = {
@@ -6115,6 +6349,24 @@ let
         sha512 = "XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==";
       };
     };
+    "@toml-tools/lexer-0.3.1" = {
+      name = "_at_toml-tools_slash_lexer";
+      packageName = "@toml-tools/lexer";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@toml-tools/lexer/-/lexer-0.3.1.tgz";
+        sha512 = "CCKHQb5OWpgFu47MQ2rcql4AnE9GaehNk/c1oJOyOBovED6XmdzQPXsvPSu+NJ9lToqJNoX+nLXQsB8WyQGdzQ==";
+      };
+    };
+    "@toml-tools/parser-0.3.1" = {
+      name = "_at_toml-tools_slash_parser";
+      packageName = "@toml-tools/parser";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@toml-tools/parser/-/parser-0.3.1.tgz";
+        sha512 = "vadwVx5TkgByt19dbp/rfIUKPkDdn5werANYvziiGK9wHlqPA0BWnvOloQw/dPDxF31+Ag0+zarXJpPDdRsPPg==";
+      };
+    };
     "@tootallnate/once-1.1.2" = {
       name = "_at_tootallnate_slash_once";
       packageName = "@tootallnate/once";
@@ -6160,13 +6412,13 @@ let
         sha512 = "jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==";
       };
     };
-    "@types/archiver-5.1.0" = {
+    "@types/archiver-5.3.0" = {
       name = "_at_types_slash_archiver";
       packageName = "@types/archiver";
-      version = "5.1.0";
+      version = "5.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/archiver/-/archiver-5.1.0.tgz";
-        sha512 = "baFOhanb/hxmcOd1Uey2TfFg43kTSmM6py1Eo7Rjbv/ivcl7PXLhY0QgXGf50Hx/eskGCFqPfhs/7IZLb15C5g==";
+        url = "https://registry.npmjs.org/@types/archiver/-/archiver-5.3.0.tgz";
+        sha512 = "qJ79qsmq7O/k9FYwsF6O1xVA1PeLV+9Bh3TYkVCu3VzMR6vN9JQkgEOh/rrQ0R+F4Ta+R3thHGewxQtFglwVfg==";
       };
     };
     "@types/atob-2.1.2" = {
@@ -6178,58 +6430,58 @@ let
         sha512 = "8GAYQ1jDRUQkSpHzJUqXwAkYFOxuWAOGLhIR4aPd/Y/yL12Q/9m7LsKpHKlfKdNE/362Hc9wPI1Yh6opDfxVJg==";
       };
     };
-    "@types/babel-types-7.0.9" = {
+    "@types/babel-types-7.0.10" = {
       name = "_at_types_slash_babel-types";
       packageName = "@types/babel-types";
-      version = "7.0.9";
+      version = "7.0.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.9.tgz";
-        sha512 = "qZLoYeXSTgQuK1h7QQS16hqLGdmqtRmN8w/rl3Au/l5x/zkHx+a4VHrHyBsi1I1vtK2oBHxSzKIu0R5p6spdOA==";
+        url = "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.10.tgz";
+        sha512 = "g7zrcqL4MiRu3jZzdZZYk0g0KcKk2fddXazSdP1PacEpmjihRsNGU50aaEKnPFuKzfN7WkRktUiCXvs4zU9XXQ==";
       };
     };
-    "@types/babel__core-7.1.14" = {
+    "@types/babel__core-7.1.15" = {
       name = "_at_types_slash_babel__core";
       packageName = "@types/babel__core";
-      version = "7.1.14";
+      version = "7.1.15";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.14.tgz";
-        sha512 = "zGZJzzBUVDo/eV6KgbE0f0ZI7dInEYvo12Rb70uNQDshC3SkRMb67ja0GgRHZgAX3Za6rhaWlvbDO8rrGyAb1g==";
+        url = "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.15.tgz";
+        sha512 = "bxlMKPDbY8x5h6HBwVzEOk2C8fb6SLfYQ5Jw3uBYuYF1lfWk/kbLd81la82vrIkBb0l+JdmrZaDikPrNxpS/Ew==";
       };
     };
-    "@types/babel__generator-7.6.2" = {
+    "@types/babel__generator-7.6.3" = {
       name = "_at_types_slash_babel__generator";
       packageName = "@types/babel__generator";
-      version = "7.6.2";
+      version = "7.6.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.2.tgz";
-        sha512 = "MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==";
+        url = "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.3.tgz";
+        sha512 = "/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA==";
       };
     };
-    "@types/babel__template-7.4.0" = {
+    "@types/babel__template-7.4.1" = {
       name = "_at_types_slash_babel__template";
       packageName = "@types/babel__template";
-      version = "7.4.0";
+      version = "7.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.0.tgz";
-        sha512 = "NTPErx4/FiPCGScH7foPyr+/1Dkzkni+rHiYHHoTjvwou7AQzJkNeD60A9CXRy+ZEN2B1bggmkTMCDb+Mv5k+A==";
+        url = "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz";
+        sha512 = "azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==";
       };
     };
-    "@types/babel__traverse-7.14.0" = {
+    "@types/babel__traverse-7.14.2" = {
       name = "_at_types_slash_babel__traverse";
       packageName = "@types/babel__traverse";
-      version = "7.14.0";
+      version = "7.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.0.tgz";
-        sha512 = "IilJZ1hJBUZwMOVDNTdflOOLzJB/ZtljYVa7k3gEZN/jqIJIPkWHC6dvbX+DD2CwZDHB9wAKzZPzzqMIkW37/w==";
+        url = "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz";
+        sha512 = "K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==";
       };
     };
-    "@types/babylon-6.16.5" = {
+    "@types/babylon-6.16.6" = {
       name = "_at_types_slash_babylon";
       packageName = "@types/babylon";
-      version = "6.16.5";
+      version = "6.16.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz";
-        sha512 = "xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==";
+        url = "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.6.tgz";
+        sha512 = "G4yqdVlhr6YhzLXFKy5F7HtRBU8Y23+iWy7UKthMq/OSQnL1hbsoeXESQ2LY8zEDlknipDG3nRGhUC9tkwvy/w==";
       };
     };
     "@types/basic-auth-1.1.3" = {
@@ -6250,13 +6502,22 @@ let
         sha512 = "W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ==";
       };
     };
-    "@types/cacheable-request-6.0.1" = {
+    "@types/body-parser-1.19.1" = {
+      name = "_at_types_slash_body-parser";
+      packageName = "@types/body-parser";
+      version = "1.19.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.1.tgz";
+        sha512 = "a6bTJ21vFOGIkwM0kzh9Yr89ziVxq4vYH2fQ6N8AeipEzai/cFK6aGMArIkUeIdRIgpwQa+2bXiLuUJCpSf2Cg==";
+      };
+    };
+    "@types/cacheable-request-6.0.2" = {
       name = "_at_types_slash_cacheable-request";
       packageName = "@types/cacheable-request";
-      version = "6.0.1";
+      version = "6.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.1.tgz";
-        sha512 = "ykFq2zmBGOCbpIXtoVbz4SKY5QriWPh3AjyU4G74RYbtt5yOc5OfaY75ftjg7mikMOla1CTGpX3lLbuJh8DTrQ==";
+        url = "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz";
+        sha512 = "B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==";
       };
     };
     "@types/caseless-0.12.2" = {
@@ -6277,22 +6538,22 @@ let
         sha512 = "AQI7X+ow3SaONl44JrHoL/5B+lCsJyG31UHZ5RP98Uh15hI/zjEkDsAb4EIm4P9TGfNhZLXw/nMc5w0u10+/fQ==";
       };
     };
-    "@types/clone-2.1.0" = {
+    "@types/clone-2.1.1" = {
       name = "_at_types_slash_clone";
       packageName = "@types/clone";
-      version = "2.1.0";
+      version = "2.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/clone/-/clone-2.1.0.tgz";
-        sha512 = "d/aS/lPOnUSruPhgNtT8jW39fHRVTLQy9sodysP1kkG8EdAtdZu1vt8NJaYA8w/6Z9j8izkAsx1A/yJhcYR1CA==";
+        url = "https://registry.npmjs.org/@types/clone/-/clone-2.1.1.tgz";
+        sha512 = "BZIU34bSYye0j/BFcPraiDZ5ka6MJADjcDVELGf7glr9K+iE8NYVjFslJFVWzskSxkLLyCrSPScE82/UUoBSvg==";
       };
     };
-    "@types/common-tags-1.8.0" = {
+    "@types/common-tags-1.8.1" = {
       name = "_at_types_slash_common-tags";
       packageName = "@types/common-tags";
-      version = "1.8.0";
+      version = "1.8.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/common-tags/-/common-tags-1.8.0.tgz";
-        sha512 = "htRqZr5qn8EzMelhX/Xmx142z218lLyGaeZ3YR8jlze4TATRU9huKKvuBmAJEW4LCC4pnY1N6JAm6p85fMHjhg==";
+        url = "https://registry.npmjs.org/@types/common-tags/-/common-tags-1.8.1.tgz";
+        sha512 = "20R/mDpKSPWdJs5TOpz3e7zqbeCNuMCPhV7Yndk9KU2Rbij2r5W4RzwDPkzC+2lzUqXYu9rFzTktCBnDjHuNQg==";
       };
     };
     "@types/component-emitter-1.2.10" = {
@@ -6304,31 +6565,31 @@ let
         sha512 = "bsjleuRKWmGqajMerkzox19aGbscQX5rmmvvXl3wlIp5gMG1HgkiwPxsN5p070fBDKTNSPgojVbuY1+HWMbFhg==";
       };
     };
-    "@types/connect-3.4.34" = {
+    "@types/connect-3.4.35" = {
       name = "_at_types_slash_connect";
       packageName = "@types/connect";
-      version = "3.4.34";
+      version = "3.4.35";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/connect/-/connect-3.4.34.tgz";
-        sha512 = "ePPA/JuI+X0vb+gSWlPKOY0NdNAie/rPUqX2GUPpbZwiKTkSPhjXWuee47E4MtE54QVzGCQMQkAL6JhV2E1+cQ==";
+        url = "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz";
+        sha512 = "cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==";
       };
     };
-    "@types/content-disposition-0.5.3" = {
+    "@types/content-disposition-0.5.4" = {
       name = "_at_types_slash_content-disposition";
       packageName = "@types/content-disposition";
-      version = "0.5.3";
+      version = "0.5.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/content-disposition/-/content-disposition-0.5.3.tgz";
-        sha512 = "P1bffQfhD3O4LW0ioENXUhZ9OIa0Zn+P7M+pWgkCKaT53wVLSq0mrKksCID/FGHpFhRSxRGhgrQmfhRuzwtKdg==";
+        url = "https://registry.npmjs.org/@types/content-disposition/-/content-disposition-0.5.4.tgz";
+        sha512 = "0mPF08jn9zYI0n0Q/Pnz7C4kThdSt+6LD4amsrYDDpgBfrVWa3TcCOxKX1zkGgYniGagRv8heN2cbh+CAn+uuQ==";
       };
     };
-    "@types/cookie-0.4.0" = {
+    "@types/cookie-0.4.1" = {
       name = "_at_types_slash_cookie";
       packageName = "@types/cookie";
-      version = "0.4.0";
+      version = "0.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.0.tgz";
-        sha512 = "y7mImlc/rNkvCRmg8gC3/lj87S7pTUIJ6QGjwHR9WQJcFs+ZMTOaoPrkdFA/YdbuqVEmEbb5RdhVxMkAcgOnpg==";
+        url = "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz";
+        sha512 = "XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==";
       };
     };
     "@types/cookiejar-2.1.2" = {
@@ -6340,13 +6601,13 @@ let
         sha512 = "t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog==";
       };
     };
-    "@types/cookies-0.7.6" = {
+    "@types/cookies-0.7.7" = {
       name = "_at_types_slash_cookies";
       packageName = "@types/cookies";
-      version = "0.7.6";
+      version = "0.7.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/cookies/-/cookies-0.7.6.tgz";
-        sha512 = "FK4U5Qyn7/Sc5ih233OuHO0qAkOpEcD/eG6584yEiLKizTFRny86qHLe/rej3HFQrkBuUjF4whFliAdODbVN/w==";
+        url = "https://registry.npmjs.org/@types/cookies/-/cookies-0.7.7.tgz";
+        sha512 = "h7BcvPUogWbKCzBR2lY4oqaZbO3jXZksexYJVFvkrFeLgbZjQkU4x8pRq6eg2MHXQhY0McQdqmmsxRWlVAHooA==";
       };
     };
     "@types/cors-2.8.10" = {
@@ -6358,6 +6619,15 @@ let
         sha512 = "C7srjHiVG3Ey1nR6d511dtDkCEjxuN9W1HWAEjGq8kpcwmNM6JJkpC0xvabM7BXTG2wDq8Eu33iH9aQKa7IvLQ==";
       };
     };
+    "@types/cors-2.8.12" = {
+      name = "_at_types_slash_cors";
+      packageName = "@types/cors";
+      version = "2.8.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz";
+        sha512 = "vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==";
+      };
+    };
     "@types/debug-4.1.6" = {
       name = "_at_types_slash_debug";
       packageName = "@types/debug";
@@ -6367,22 +6637,22 @@ let
         sha512 = "7fDOJFA/x8B+sO1901BmHlf5dE1cxBU8mRXj8QOEDnn16hhGJv/IHxJtZhvsabZsIMn0eLIyeOKAeqSNJJYTpA==";
       };
     };
-    "@types/decompress-4.2.3" = {
+    "@types/decompress-4.2.4" = {
       name = "_at_types_slash_decompress";
       packageName = "@types/decompress";
-      version = "4.2.3";
+      version = "4.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/decompress/-/decompress-4.2.3.tgz";
-        sha512 = "W24e3Ycz1UZPgr1ZEDHlK4XnvOr+CpJH3qNsFeqXwwlW/9END9gxn3oJSsp7gYdiQxrXUHwUUd3xuzVz37MrZQ==";
+        url = "https://registry.npmjs.org/@types/decompress/-/decompress-4.2.4.tgz";
+        sha512 = "/C8kTMRTNiNuWGl5nEyKbPiMv6HA+0RbEXzFhFBEzASM6+oa4tJro9b8nj7eRlOFfuLdzUU+DS/GPDlvvzMOhA==";
       };
     };
-    "@types/download-8.0.0" = {
+    "@types/download-8.0.1" = {
       name = "_at_types_slash_download";
       packageName = "@types/download";
-      version = "8.0.0";
+      version = "8.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/download/-/download-8.0.0.tgz";
-        sha512 = "0/LRe3VzcyFIRto6YiJH9OG05ASLeypv5BVrlWjWRBSLCeyFb4up4hqO27j98ASzx1fU2V3ftuWR/sy3PM4NPA==";
+        url = "https://registry.npmjs.org/@types/download/-/download-8.0.1.tgz";
+        sha512 = "t5DjMD6Y1DxjXtEHl7Kt+nQn9rOmVLYD8p4Swrcc5QpgyqyqR2gXTIK6RwwMnNeFJ+ZIiIW789fQKzCrK7AOFA==";
       };
     };
     "@types/duplexify-3.6.0" = {
@@ -6403,40 +6673,40 @@ let
         sha512 = "kM2g9Fdk/du24fKuuQhA/LBleFR4Z4JP2MVKpLxQQSzofF1uJ06D+c05zfLDAkkDO55aEeNwJih0gHrE/Ci20A==";
       };
     };
-    "@types/emscripten-1.39.4" = {
+    "@types/emscripten-1.39.5" = {
       name = "_at_types_slash_emscripten";
       packageName = "@types/emscripten";
-      version = "1.39.4";
+      version = "1.39.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/emscripten/-/emscripten-1.39.4.tgz";
-        sha512 = "k3LLVMFrdNA9UCvMDPWMbFrGPNb+GcPyw29ktJTo1RCN7RmxFG5XzPZcPKRlnLuLT/FRm8wp4ohvDwNY7GlROQ==";
+        url = "https://registry.npmjs.org/@types/emscripten/-/emscripten-1.39.5.tgz";
+        sha512 = "DIOOg+POSrYl+OlNRHQuIEqCd8DCtynG57H862UCce16nXJX7J8eWxNGgOcf8Eyge8zXeSs27mz1UcFu8L/L7g==";
       };
     };
-    "@types/engine.io-3.1.5" = {
+    "@types/engine.io-3.1.6" = {
       name = "_at_types_slash_engine.io";
       packageName = "@types/engine.io";
-      version = "3.1.5";
+      version = "3.1.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/engine.io/-/engine.io-3.1.5.tgz";
-        sha512 = "DLVpLEGTEZGBXOYoYoagHSxXkDHONc0fZouF2ayw7Q18aRu1Afwci+1CFKvPpouCUOVWP+dmCaAWpQjswe7kpg==";
+        url = "https://registry.npmjs.org/@types/engine.io/-/engine.io-3.1.6.tgz";
+        sha512 = "uFIEJESFKNNiuKt93ri5PnvRntAHCm/Aw9tTO2L25xXJSLzC/ARGmpDSJkuTCit7sUW5xUxr91Ta+UOiYaO3+A==";
       };
     };
-    "@types/eslint-7.2.13" = {
+    "@types/eslint-7.28.0" = {
       name = "_at_types_slash_eslint";
       packageName = "@types/eslint";
-      version = "7.2.13";
+      version = "7.28.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.13.tgz";
-        sha512 = "LKmQCWAlnVHvvXq4oasNUMTJJb2GwSyTY8+1C7OH5ILR8mPLaljv1jxL1bXW3xB3jFbQxTKxJAvI8PyjB09aBg==";
+        url = "https://registry.npmjs.org/@types/eslint/-/eslint-7.28.0.tgz";
+        sha512 = "07XlgzX0YJUn4iG1ocY4IX9DzKSmMGUs6ESKlxWhZRaa0fatIWaHWUVapcuGa8r5HFnTqzj+4OCjd5f7EZ/i/A==";
       };
     };
-    "@types/eslint-scope-3.7.0" = {
+    "@types/eslint-scope-3.7.1" = {
       name = "_at_types_slash_eslint-scope";
       packageName = "@types/eslint-scope";
-      version = "3.7.0";
+      version = "3.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.0.tgz";
-        sha512 = "O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw==";
+        url = "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.1.tgz";
+        sha512 = "SCFeogqiptms4Fg29WpOTk5nHIzfpKCemSN63ksBQYKTcXoJEmJagV+DhVmbapZzY4/5YaOV1nZwrsU79fFm1g==";
       };
     };
     "@types/eslint-visitor-keys-1.0.0" = {
@@ -6457,31 +6727,22 @@ let
         sha512 = "EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==";
       };
     };
-    "@types/estree-0.0.46" = {
-      name = "_at_types_slash_estree";
-      packageName = "@types/estree";
-      version = "0.0.46";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/estree/-/estree-0.0.46.tgz";
-        sha512 = "laIjwTQaD+5DukBZaygQ79K1Z0jb1bPEMRrkXSLjtCcZm+abyp5YbrqpSLzD42FwWW6gK/aS4NYpJ804nG2brg==";
-      };
-    };
-    "@types/estree-0.0.48" = {
+    "@types/estree-0.0.49" = {
       name = "_at_types_slash_estree";
       packageName = "@types/estree";
-      version = "0.0.48";
+      version = "0.0.49";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/estree/-/estree-0.0.48.tgz";
-        sha512 = "LfZwXoGUDo0C3me81HXgkBg5CTQYb6xzEl+fNmbO4JdRiSKQ8A0GD1OBBvKAIsbCUgoyAty7m99GqqMQe784ew==";
+        url = "https://registry.npmjs.org/@types/estree/-/estree-0.0.49.tgz";
+        sha512 = "K1AFuMe8a+pXmfHTtnwBvqoEylNKVeaiKYkjmcEAdytMQVJ/i9Fu7sc13GxgXdO49gkE7Hy8SyJonUZUn+eVaw==";
       };
     };
-    "@types/estree-0.0.49" = {
+    "@types/estree-0.0.50" = {
       name = "_at_types_slash_estree";
       packageName = "@types/estree";
-      version = "0.0.49";
+      version = "0.0.50";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/estree/-/estree-0.0.49.tgz";
-        sha512 = "K1AFuMe8a+pXmfHTtnwBvqoEylNKVeaiKYkjmcEAdytMQVJ/i9Fu7sc13GxgXdO49gkE7Hy8SyJonUZUn+eVaw==";
+        url = "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz";
+        sha512 = "C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==";
       };
     };
     "@types/expect-1.20.4" = {
@@ -6493,22 +6754,22 @@ let
         sha512 = "Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg==";
       };
     };
-    "@types/express-4.17.11" = {
+    "@types/express-4.17.12" = {
       name = "_at_types_slash_express";
       packageName = "@types/express";
-      version = "4.17.11";
+      version = "4.17.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/express/-/express-4.17.11.tgz";
-        sha512 = "no+R6rW60JEc59977wIxreQVsIEOAYwgCqldrA/vkpCnbD7MqTefO97lmoBe4WE0F156bC4uLSP1XHDOySnChg==";
+        url = "https://registry.npmjs.org/@types/express/-/express-4.17.12.tgz";
+        sha512 = "pTYas6FrP15B1Oa0bkN5tQMNqOcVXa9j4FTFtO8DWI9kppKib+6NJtfTOOLcwxuuYvcX2+dVG6et1SxW/Kc17Q==";
       };
     };
-    "@types/express-4.17.12" = {
+    "@types/express-4.17.13" = {
       name = "_at_types_slash_express";
       packageName = "@types/express";
-      version = "4.17.12";
+      version = "4.17.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/express/-/express-4.17.12.tgz";
-        sha512 = "pTYas6FrP15B1Oa0bkN5tQMNqOcVXa9j4FTFtO8DWI9kppKib+6NJtfTOOLcwxuuYvcX2+dVG6et1SxW/Kc17Q==";
+        url = "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz";
+        sha512 = "6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==";
       };
     };
     "@types/express-4.17.8" = {
@@ -6520,13 +6781,13 @@ let
         sha512 = "wLhcKh3PMlyA2cNAB9sjM1BntnhPMiM0JOBwPBqttjHev2428MLEB4AYVN+d8s2iyCVZac+o41Pflm/ZH5vLXQ==";
       };
     };
-    "@types/express-serve-static-core-4.17.22" = {
+    "@types/express-serve-static-core-4.17.24" = {
       name = "_at_types_slash_express-serve-static-core";
       packageName = "@types/express-serve-static-core";
-      version = "4.17.22";
+      version = "4.17.24";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.22.tgz";
-        sha512 = "WdqmrUsRS4ootGha6tVwk/IVHM1iorU8tGehftQD2NWiPniw/sm7xdJOIlXLwqdInL9wBw/p7oO8vaYEF3NDmA==";
+        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.24.tgz";
+        sha512 = "3UJuW+Qxhzwjq3xhwXm2onQcFHn76frIYVbTu+kn24LFxI+dEhdfISDFovPB8VpEgW8oQCTpRuCe+0zJxB7NEA==";
       };
     };
     "@types/fancy-log-1.3.0" = {
@@ -6565,22 +6826,31 @@ let
         sha512 = "FKVPOCFbhCvZxpVAMhdBdTfVfXUpsh15wFHgqOKxh9N9vzWZVuWCSijZ5T4U34XYNnuj2oduh6xcs1i+LPI+BQ==";
       };
     };
-    "@types/glob-7.1.3" = {
+    "@types/fs-extra-9.0.12" = {
+      name = "_at_types_slash_fs-extra";
+      packageName = "@types/fs-extra";
+      version = "9.0.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.12.tgz";
+        sha512 = "I+bsBr67CurCGnSenZZ7v94gd3tc3+Aj2taxMT4yu4ABLuOgOjeFxX3dokG24ztSRg5tnT00sL8BszO7gSMoIw==";
+      };
+    };
+    "@types/glob-7.1.4" = {
       name = "_at_types_slash_glob";
       packageName = "@types/glob";
-      version = "7.1.3";
+      version = "7.1.4";
       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.1.4.tgz";
+        sha512 = "w+LsMxKyYQm347Otw+IfBXOv9UWVjpHpCDdbBMt8Kz/xbvCYNjP+0qPh91Km3iKfSRLBB0P7fAMf0KHrPu+MyA==";
       };
     };
-    "@types/got-8.3.5" = {
+    "@types/got-8.3.6" = {
       name = "_at_types_slash_got";
       packageName = "@types/got";
-      version = "8.3.5";
+      version = "8.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/got/-/got-8.3.5.tgz";
-        sha512 = "AaXSrIF99SjjtPVNmCmYb388HML+PKEJb/xmj4SbL2ZO0hHuETZZzyDIKfOqaEoAHZEuX4sC+FRFrHYJoIby6A==";
+        url = "https://registry.npmjs.org/@types/got/-/got-8.3.6.tgz";
+        sha512 = "nvLlj+831dhdm4LR2Ly+HTpdLyBaMynoOr6wpIxS19d/bPeHQxFU5XQ6Gp6ohBpxvCWZM1uHQIC2+ySRH1rGrQ==";
       };
     };
     "@types/graceful-fs-4.1.5" = {
@@ -6592,22 +6862,22 @@ let
         sha512 = "anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==";
       };
     };
-    "@types/graphlib-2.1.7" = {
+    "@types/graphlib-2.1.8" = {
       name = "_at_types_slash_graphlib";
       packageName = "@types/graphlib";
-      version = "2.1.7";
+      version = "2.1.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/graphlib/-/graphlib-2.1.7.tgz";
-        sha512 = "K7T1n6U2HbTYu+SFHlBjz/RH74OA2D/zF1qlzn8uXbvB4uRg7knOM85ugS2bbXI1TXMh7rLqk4OVRwIwEBaixg==";
+        url = "https://registry.npmjs.org/@types/graphlib/-/graphlib-2.1.8.tgz";
+        sha512 = "8nbbyD3zABRA9ePoBgAl2ym8cIwKQXTfv1gaIRTdY99yEOCaHfmjBeRp+BIemS8NtOqoWK7mfzWxjNrxLK3T5w==";
       };
     };
-    "@types/hast-2.3.1" = {
+    "@types/hast-2.3.2" = {
       name = "_at_types_slash_hast";
       packageName = "@types/hast";
-      version = "2.3.1";
+      version = "2.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/hast/-/hast-2.3.1.tgz";
-        sha512 = "viwwrB+6xGzw+G1eWpF9geV3fnsDgXqHG+cqgiHrvQfDUW5hzhCyV7Sy3UJxhfRFBsgky2SSW33qi/YrIkjX5Q==";
+        url = "https://registry.npmjs.org/@types/hast/-/hast-2.3.2.tgz";
+        sha512 = "Op5W7jYgZI7AWKY5wQ0/QNMzQM7dGQPyW1rXKNiymVCy5iTfdPuGu4HhYNOM2sIv8gUfIuIdcYlXmAepwaowow==";
       };
     };
     "@types/hls.js-0.13.1" = {
@@ -6619,13 +6889,13 @@ let
         sha512 = "5sr71YcHBVHJY8DhM+L6O9WjAGS3jrie2hpBldVpd8sqvRvNTgIikTE6RxKya1ZvJCvUkZR2ewQarZaC4TRZLg==";
       };
     };
-    "@types/html-minifier-terser-5.1.1" = {
+    "@types/html-minifier-terser-5.1.2" = {
       name = "_at_types_slash_html-minifier-terser";
       packageName = "@types/html-minifier-terser";
-      version = "5.1.1";
+      version = "5.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz";
-        sha512 = "giAlZwstKbmvMk1OO7WXSj4OZ0keXAcl2TQq4LWHiiPH2ByaH7WeUzng+Qej8UPxxv+8lRTuouo0iaNDBuzIBA==";
+        url = "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz";
+        sha512 = "h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==";
       };
     };
     "@types/http-assert-1.5.1" = {
@@ -6637,31 +6907,31 @@ let
         sha512 = "PGAK759pxyfXE78NbKxyfRcWYA/KwW17X290cNev/qAsn9eQIxkH4shoNBafH37wewhDG/0p1cHPbK6+SzZjWQ==";
       };
     };
-    "@types/http-cache-semantics-4.0.0" = {
+    "@types/http-cache-semantics-4.0.1" = {
       name = "_at_types_slash_http-cache-semantics";
       packageName = "@types/http-cache-semantics";
-      version = "4.0.0";
+      version = "4.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.0.tgz";
-        sha512 = "c3Xy026kOF7QOTn00hbIllV1dLR9hG9NkSrLQgCVs8NF6sBU+VGWjD3wLPhmh1TYAc7ugCFsvHYMN4VcBN1U1A==";
+        url = "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz";
+        sha512 = "SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==";
       };
     };
-    "@types/http-errors-1.8.0" = {
+    "@types/http-errors-1.8.1" = {
       name = "_at_types_slash_http-errors";
       packageName = "@types/http-errors";
-      version = "1.8.0";
+      version = "1.8.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/http-errors/-/http-errors-1.8.0.tgz";
-        sha512 = "2aoSC4UUbHDj2uCsCxcG/vRMXey/m17bC7UwitVm5hn22nI8O8Y9iDpA76Orc+DWkQ4zZrOKEshCqR/jSuXAHA==";
+        url = "https://registry.npmjs.org/@types/http-errors/-/http-errors-1.8.1.tgz";
+        sha512 = "e+2rjEwK6KDaNOm5Aa9wNGgyS9oSZU/4pfSMMPYNOfjvFI0WVXm29+ITRFr6aKDvvKo7uU1jV68MW4ScsfDi7Q==";
       };
     };
-    "@types/http-proxy-1.17.6" = {
+    "@types/http-proxy-1.17.7" = {
       name = "_at_types_slash_http-proxy";
       packageName = "@types/http-proxy";
-      version = "1.17.6";
+      version = "1.17.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.6.tgz";
-        sha512 = "+qsjqR75S/ib0ig0R9WN+CDoZeOBU6F2XLewgC4KVgdXiNHiKKHFEMRHOrs5PbYE97D5vataw5wPj4KLYfUkuQ==";
+        url = "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.7.tgz";
+        sha512 = "9hdj6iXH64tHSLTY+Vt2eYOGzSogC+JQ2H7bdPWkuh7KXP5qLllWx++t+K9Wk556c3dkDdPws/SpMRi0sdCT1w==";
       };
     };
     "@types/inquirer-6.5.0" = {
@@ -6700,13 +6970,22 @@ let
         sha512 = "P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==";
       };
     };
-    "@types/jquery-3.5.5" = {
+    "@types/istanbul-reports-3.0.1" = {
+      name = "_at_types_slash_istanbul-reports";
+      packageName = "@types/istanbul-reports";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz";
+        sha512 = "c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==";
+      };
+    };
+    "@types/jquery-3.5.6" = {
       name = "_at_types_slash_jquery";
       packageName = "@types/jquery";
-      version = "3.5.5";
+      version = "3.5.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.5.tgz";
-        sha512 = "6RXU9Xzpc6vxNrS6FPPapN1SxSHgQ336WC6Jj/N8q30OiaBZ00l1GBgeP7usjVZPivSkGUfL1z/WW6TX989M+w==";
+        url = "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.6.tgz";
+        sha512 = "SmgCQRzGPId4MZQKDj9Hqc6kSXFNWZFHpELkyK8AQhf8Zr6HKfCzFv9ZC1Fv3FyQttJZOlap3qYb12h61iZAIg==";
       };
     };
     "@types/js-yaml-3.12.5" = {
@@ -6718,13 +6997,13 @@ let
         sha512 = "JCcp6J0GV66Y4ZMDAQCXot4xprYB+Zfd3meK9+INSJeVZwJmHAW30BBEEkPzXswMXuiyReUGOP3GxrADc9wPww==";
       };
     };
-    "@types/js-yaml-3.12.6" = {
+    "@types/js-yaml-3.12.7" = {
       name = "_at_types_slash_js-yaml";
       packageName = "@types/js-yaml";
-      version = "3.12.6";
+      version = "3.12.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-3.12.6.tgz";
-        sha512 = "cK4XqrLvP17X6c0C8n4iTbT59EixqyXL3Fk8/Rsk4dF3oX4dg70gYUXrXVUUHpnsGMPNlTQMqf+TVmNPX6FmSQ==";
+        url = "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-3.12.7.tgz";
+        sha512 = "S6+8JAYTE1qdsc9HMVsfY7+SgSuUU/Tp6TYTmITW0PZxiyIMvol3Gy//y69Wkhs0ti4py5qgR3uZH6uz/DNzJQ==";
       };
     };
     "@types/jscodeshift-0.7.2" = {
@@ -6745,22 +7024,13 @@ let
         sha512 = "MhCUjojzDhVLnZnxwPwa+rETFRDQ0ffjxYdrqOP6TBO2O0/Z64PV5tNeYApo4bc4y4frbWOrRwv/eEkXlI13Rw==";
       };
     };
-    "@types/json-schema-7.0.7" = {
+    "@types/json-schema-7.0.8" = {
       name = "_at_types_slash_json-schema";
       packageName = "@types/json-schema";
-      version = "7.0.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz";
-        sha512 = "cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==";
-      };
-    };
-    "@types/json5-0.0.29" = {
-      name = "_at_types_slash_json5";
-      packageName = "@types/json5";
-      version = "0.0.29";
+      version = "7.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz";
-        sha1 = "ee28707ae94e11d2b827bcbe5270bcea7f3e71ee";
+        url = "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz";
+        sha512 = "YSBPTLTVm2e2OoQIDYx8HaeWJ5tTToLH67kXR7zYNGupXMEHa2++G8k+DczX2cFVgalypqtyZIcU19AFcmOpmg==";
       };
     };
     "@types/keygrip-1.0.2" = {
@@ -6772,22 +7042,22 @@ let
         sha512 = "GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw==";
       };
     };
-    "@types/keyv-3.1.1" = {
+    "@types/keyv-3.1.2" = {
       name = "_at_types_slash_keyv";
       packageName = "@types/keyv";
-      version = "3.1.1";
+      version = "3.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.1.tgz";
-        sha512 = "MPtoySlAZQ37VoLaPcTHCu1RWJ4llDkULYZIzOYxlhxBqYPB0RsRlmMU0R6tahtFe27mIdkHV+551ZWV4PLmVw==";
+        url = "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.2.tgz";
+        sha512 = "/FvAK2p4jQOaJ6CGDHJTqZcUtbZe820qIeTg7o0Shg7drB4JHeL+V/dhSaly7NXx6u8eSee+r7coT+yuJEvDLg==";
       };
     };
-    "@types/koa-2.13.3" = {
+    "@types/koa-2.13.4" = {
       name = "_at_types_slash_koa";
       packageName = "@types/koa";
-      version = "2.13.3";
+      version = "2.13.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/koa/-/koa-2.13.3.tgz";
-        sha512 = "TaujBV+Dhe/FvmSMZJtCFBms+bqQacgUebk/M2C2tq8iGmHE/DDf4DcW2Hc7NqusVZmy5xzrWOjtdPKNP+fTfw==";
+        url = "https://registry.npmjs.org/@types/koa/-/koa-2.13.4.tgz";
+        sha512 = "dfHYMfU+z/vKtQB7NUrthdAEiSvnLebvBjwHtfFmpZmB7em2N3WVQdHgnFq+xvyVgxW5jKDmjWfLD3lw4g4uTw==";
       };
     };
     "@types/koa-compose-3.2.5" = {
@@ -6808,13 +7078,13 @@ let
         sha512 = "EP6O3Jkr7bXvZZSZYlsgt5DIjiGr0dXP1/jVEwVLTFgg0d+3lWVQkRavYVQszV7dYUwvg0B8R0MBDpcmXg7XIA==";
       };
     };
-    "@types/lodash-4.14.170" = {
+    "@types/lodash-4.14.171" = {
       name = "_at_types_slash_lodash";
       packageName = "@types/lodash";
-      version = "4.14.170";
+      version = "4.14.171";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.170.tgz";
-        sha512 = "bpcvu/MKHHeYX+qeEN8GE7DIravODWdACVA1ctevD8CN24RhPZIKMn9ntfAsrvLfSX3cR5RrBKAbYm9bGs0A+Q==";
+        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.171.tgz";
+        sha512 = "7eQ2xYLLI/LsicL2nejW9Wyko3lcpN6O/z0ZLHrEQsg280zIdCv1t/0m6UtBjUHokCGBQ3gYTbHzDkZ1xOBwwg==";
       };
     };
     "@types/lodash.chunk-4.2.6" = {
@@ -6862,13 +7132,13 @@ let
         sha512 = "559S2XW9YMwHznROJ4WFhZJOerJPuxLfqOX+LIKukyLo2NbVgpULwXUsrBlCwhZ4+ACHgVAE23CC3RS52lFxwA==";
       };
     };
-    "@types/mdast-3.0.3" = {
+    "@types/mdast-3.0.7" = {
       name = "_at_types_slash_mdast";
       packageName = "@types/mdast";
-      version = "3.0.3";
+      version = "3.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.3.tgz";
-        sha512 = "SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw==";
+        url = "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.7.tgz";
+        sha512 = "YwR7OK8aPmaBvMMUi+pZXBNoW2unbVbfok4YRqGMJBe1dpDlzpRkJrYEYmvjxgs5JhuQmKfDexrN98u941Zasg==";
       };
     };
     "@types/mime-1.3.2" = {
@@ -6880,13 +7150,13 @@ let
         sha512 = "YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==";
       };
     };
-    "@types/minimatch-3.0.4" = {
+    "@types/minimatch-3.0.5" = {
       name = "_at_types_slash_minimatch";
       packageName = "@types/minimatch";
-      version = "3.0.4";
+      version = "3.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.4.tgz";
-        sha512 = "1z8k4wzFnNjVK/tlxvrWuK5WMt6mydWWP7+zvH5eFep4oj+UkrfiJTRtjCeBXNpwaA/FYqqtb4/QS4ianFpIRA==";
+        url = "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz";
+        sha512 = "Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==";
       };
     };
     "@types/minimist-1.2.0" = {
@@ -6898,13 +7168,13 @@ let
         sha1 = "69a23a3ad29caf0097f06eda59b361ee2f0639f6";
       };
     };
-    "@types/minimist-1.2.1" = {
+    "@types/minimist-1.2.2" = {
       name = "_at_types_slash_minimist";
       packageName = "@types/minimist";
-      version = "1.2.1";
+      version = "1.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz";
-        sha512 = "fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==";
+        url = "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz";
+        sha512 = "jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==";
       };
     };
     "@types/mithril-2.0.3" = {
@@ -6934,13 +7204,13 @@ let
         sha512 = "ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==";
       };
     };
-    "@types/mocha-8.2.2" = {
+    "@types/mocha-8.2.3" = {
       name = "_at_types_slash_mocha";
       packageName = "@types/mocha";
-      version = "8.2.2";
+      version = "8.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.2.tgz";
-        sha512 = "Lwh0lzzqT5Pqh6z61P3c3P5nm6fzQK/MMHl9UKeneAeInVflBSz1O2EkX6gM6xfJd7FBXBY5purtLx7fUiZ7Hw==";
+        url = "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz";
+        sha512 = "ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==";
       };
     };
     "@types/multer-1.4.4" = {
@@ -7006,58 +7276,67 @@ let
         sha512 = "oTQgnd0hblfLsJ6BvJzzSL+Inogp3lq9fGgqRkMB/ziKMgEUaFl801OncOzUmalfzt14N0oPHMK47ipl+wbTIw==";
       };
     };
-    "@types/node-14.14.35" = {
+    "@types/node-14.17.5" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "14.14.35";
+      version = "14.17.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-14.14.35.tgz";
-        sha512 = "Lt+wj8NVPx0zUmUwumiVXapmaLUcAk3yPuHCFVXras9k5VT9TdhJqKqGVUQCD60OTMCl0qxJ57OiTL0Mic3Iag==";
+        url = "https://registry.npmjs.org/@types/node/-/node-14.17.5.tgz";
+        sha512 = "bjqH2cX/O33jXT/UmReo2pM7DIJREPMnarixbQ57DOOzzFaI6D2+IcwaJQaJpv0M1E9TIhPCYVxrkcityLjlqA==";
       };
     };
-    "@types/node-14.17.4" = {
+    "@types/node-15.12.5" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "14.17.4";
+      version = "15.12.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-14.17.4.tgz";
-        sha512 = "8kQ3+wKGRNN0ghtEn7EGps/B8CzuBz1nXZEIGGLP2GnwbqYn4dbTs7k+VKLTq1HvZLRCIDtN3Snx1Ege8B7L5A==";
+        url = "https://registry.npmjs.org/@types/node/-/node-15.12.5.tgz";
+        sha512 = "se3yX7UHv5Bscf8f1ERKvQOD6sTyycH3hdaoozvaLxgUiY5lIGEeH37AD0G0Qi9kPqihPn0HOfd2yaIEN9VwEg==";
       };
     };
-    "@types/node-15.12.4" = {
+    "@types/node-15.14.2" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "15.12.4";
+      version = "15.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-15.12.4.tgz";
-        sha512 = "zrNj1+yqYF4WskCMOHwN+w9iuD12+dGm0rQ35HLl9/Ouuq52cEtd0CH9qMgrdNmi5ejC1/V7vKEXYubB+65DkA==";
+        url = "https://registry.npmjs.org/@types/node/-/node-15.14.2.tgz";
+        sha512 = "dvMUE/m2LbXPwlvVuzCyslTEtQ2ZwuuFClDrOQ6mp2CenCg971719PTILZ4I6bTP27xfFFc+o7x2TkLuun/MPw==";
       };
     };
-    "@types/node-15.12.5" = {
+    "@types/node-15.6.1" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "15.12.5";
+      version = "15.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-15.12.5.tgz";
-        sha512 = "se3yX7UHv5Bscf8f1ERKvQOD6sTyycH3hdaoozvaLxgUiY5lIGEeH37AD0G0Qi9kPqihPn0HOfd2yaIEN9VwEg==";
+        url = "https://registry.npmjs.org/@types/node/-/node-15.6.1.tgz";
+        sha512 = "7EIraBEyRHEe7CH+Fm1XvgqU6uwZN8Q7jppJGcqjROMT29qhAuuOxYB1uEY5UMYQKEmA5D+5tBnhdaPXSsLONA==";
       };
     };
-    "@types/node-15.14.0" = {
+    "@types/node-16.3.2" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "15.14.0";
+      version = "16.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-15.14.0.tgz";
-        sha512 = "um/+/ip3QZmwLfIkWZSNtQIJNVAqrJ92OkLMeuZrjZMTAJniI7fh8N8OICyDhAJ2mzgk/fmYFo72jRr5HyZ1EQ==";
+        url = "https://registry.npmjs.org/@types/node/-/node-16.3.2.tgz";
+        sha512 = "jJs9ErFLP403I+hMLGnqDRWT0RYKSvArxuBVh2veudHV7ifEC1WAmjJADacZ7mRbA2nWgHtn8xyECMAot0SkAw==";
       };
     };
-    "@types/node-15.6.1" = {
+    "@types/node-16.3.3" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "15.6.1";
+      version = "16.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-15.6.1.tgz";
-        sha512 = "7EIraBEyRHEe7CH+Fm1XvgqU6uwZN8Q7jppJGcqjROMT29qhAuuOxYB1uEY5UMYQKEmA5D+5tBnhdaPXSsLONA==";
+        url = "https://registry.npmjs.org/@types/node/-/node-16.3.3.tgz";
+        sha512 = "8h7k1YgQKxKXWckzFCMfsIwn0Y61UK6tlD6y2lOb3hTOIMlK3t9/QwHOhc81TwU+RMf0As5fj7NPjroERCnejQ==";
+      };
+    };
+    "@types/node-16.4.0" = {
+      name = "_at_types_slash_node";
+      packageName = "@types/node";
+      version = "16.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/node/-/node-16.4.0.tgz";
+        sha512 = "HrJuE7Mlqcjj+00JqMWpZ3tY8w7EUd+S0U3L1+PQSWiXZbOgyQDvi+ogoUxaHApPJq5diKxYBQwA3iIlNcPqOg==";
       };
     };
     "@types/node-6.14.13" = {
@@ -7087,22 +7366,22 @@ let
         sha512 = "/aKAdg5c8n468cYLy2eQrcR5k6chlbNwZNGUj3TboyPa2hcO2QAJcfymlqPzMiRj8B6nYKXjzQz36minFE0RwQ==";
       };
     };
-    "@types/node-fetch-2.5.10" = {
+    "@types/node-fetch-2.5.11" = {
       name = "_at_types_slash_node-fetch";
       packageName = "@types/node-fetch";
-      version = "2.5.10";
+      version = "2.5.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.10.tgz";
-        sha512 = "IpkX0AasN44hgEad0gEF/V6EgR5n69VEqPEgnmoM8GsIGro3PowbWs4tR6IhxUTyPLpOn+fiGG6nrQhcmoCuIQ==";
+        url = "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.11.tgz";
+        sha512 = "2upCKaqVZETDRb8A2VTaRymqFBEgH8u6yr96b/u3+1uQEPDRo3mJLEiPk7vdXBHRtjwkjqzFYMJXrt0Z9QsYjQ==";
       };
     };
-    "@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" = {
@@ -7141,31 +7420,31 @@ let
         sha512 = "a+fLdul8OczRvPWPf8eTb6wPhxzyWQwRGhNN0ugtOtk6yFOG53i2LwXaA0d2D6bsJlWxi6eCuGZLGoCcdOlWZA==";
       };
     };
-    "@types/pug-2.0.4" = {
+    "@types/pug-2.0.5" = {
       name = "_at_types_slash_pug";
       packageName = "@types/pug";
-      version = "2.0.4";
+      version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/pug/-/pug-2.0.4.tgz";
-        sha1 = "8772fcd0418e3cd2cc171555d73007415051f4b2";
+        url = "https://registry.npmjs.org/@types/pug/-/pug-2.0.5.tgz";
+        sha512 = "LOnASQoeNZMkzexRuyqcBBDZ6rS+rQxUMkmj5A0PkhhiSZivLIuz6Hxyr1mkGoEZEkk66faROmpMi4fFkrKsBA==";
       };
     };
-    "@types/q-1.5.4" = {
+    "@types/q-1.5.5" = {
       name = "_at_types_slash_q";
       packageName = "@types/q";
-      version = "1.5.4";
+      version = "1.5.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz";
-        sha512 = "1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==";
+        url = "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz";
+        sha512 = "L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==";
       };
     };
-    "@types/qs-6.9.6" = {
+    "@types/qs-6.9.7" = {
       name = "_at_types_slash_qs";
       packageName = "@types/qs";
-      version = "6.9.6";
+      version = "6.9.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/qs/-/qs-6.9.6.tgz";
-        sha512 = "0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA==";
+        url = "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz";
+        sha512 = "FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==";
       };
     };
     "@types/raf-3.4.0" = {
@@ -7177,22 +7456,13 @@ let
         sha512 = "taW5/WYqo36N7V39oYyHP9Ipfd5pNFvGTIQsNGj86xV88YQ7GnI30/yMfKDF7Zgin0m3e+ikX88FvImnK4RjGw==";
       };
     };
-    "@types/range-parser-1.2.3" = {
+    "@types/range-parser-1.2.4" = {
       name = "_at_types_slash_range-parser";
       packageName = "@types/range-parser";
-      version = "1.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz";
-        sha512 = "ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA==";
-      };
-    };
-    "@types/readable-stream-2.3.10" = {
-      name = "_at_types_slash_readable-stream";
-      packageName = "@types/readable-stream";
-      version = "2.3.10";
+      version = "1.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/readable-stream/-/readable-stream-2.3.10.tgz";
-        sha512 = "xwSXvAv9x4B9Vj88AMZnFyEVLilz1EBxKvRUhGqIF4nJpRQBSTm7jS236X4Y9Y2qPsVvaMxwrGJlNhLHEahlFQ==";
+        url = "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz";
+        sha512 = "EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==";
       };
     };
     "@types/request-2.48.5" = {
@@ -7204,13 +7474,22 @@ let
         sha512 = "/LO7xRVnL3DxJ1WkPGDQrp4VTV1reX9RkC85mJ+Qzykj2Bdw+mG15aAfDahc76HtknjzE16SX/Yddn6MxVbmGQ==";
       };
     };
-    "@types/request-promise-native-1.0.17" = {
+    "@types/request-2.48.6" = {
+      name = "_at_types_slash_request";
+      packageName = "@types/request";
+      version = "2.48.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/request/-/request-2.48.6.tgz";
+        sha512 = "vrZaV3Ij7j/l/3hz6OttZFtpRCu7zlq7XgkYHJP6FwVEAZkGQ095WqyJV08/GlW9eyXKVcp/xmtruHm8eHpw1g==";
+      };
+    };
+    "@types/request-promise-native-1.0.18" = {
       name = "_at_types_slash_request-promise-native";
       packageName = "@types/request-promise-native";
-      version = "1.0.17";
+      version = "1.0.18";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/request-promise-native/-/request-promise-native-1.0.17.tgz";
-        sha512 = "05/d0WbmuwjtGMYEdHIBZ0tqMJJQ2AD9LG2F6rKNBGX1SSFR27XveajH//2N/XYtual8T9Axwl+4v7oBtPUZqg==";
+        url = "https://registry.npmjs.org/@types/request-promise-native/-/request-promise-native-1.0.18.tgz";
+        sha512 = "tPnODeISFc/c1LjWyLuZUY+Z0uLB3+IMfNoQyDEi395+j6kTFTTRAqjENjoPJUid4vHRGEozoTrcTrfZM+AcbA==";
       };
     };
     "@types/resolve-0.0.8" = {
@@ -7240,49 +7519,49 @@ let
         sha512 = "85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==";
       };
     };
-    "@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==";
       };
     };
-    "@types/sarif-2.1.3" = {
+    "@types/sarif-2.1.4" = {
       name = "_at_types_slash_sarif";
       packageName = "@types/sarif";
-      version = "2.1.3";
+      version = "2.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/sarif/-/sarif-2.1.3.tgz";
-        sha512 = "zf+EoIplTkQW2TV2mwtJtlI0g540Z3Rs9tX9JqRAtyjnDCqkP+eMTgWCj3PGNbQpi+WXAjvC3Ou/dvvX2sLK4w==";
+        url = "https://registry.npmjs.org/@types/sarif/-/sarif-2.1.4.tgz";
+        sha512 = "4xKHMdg3foh3Va1fxTzY1qt8QVqmaJpGWsVvtjQrJBn+/bkig2pWFKJ4FPI2yLI4PAj0SUKiPO4Vd7ggYIMZjQ==";
       };
     };
-    "@types/sass-1.16.0" = {
+    "@types/sass-1.16.1" = {
       name = "_at_types_slash_sass";
       packageName = "@types/sass";
-      version = "1.16.0";
+      version = "1.16.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/sass/-/sass-1.16.0.tgz";
-        sha512 = "2XZovu4NwcqmtZtsBR5XYLw18T8cBCnU2USFHTnYLLHz9fkhnoEMoDsqShJIOFsFhn5aJHjweiUUdTrDGujegA==";
+        url = "https://registry.npmjs.org/@types/sass/-/sass-1.16.1.tgz";
+        sha512 = "iZUcRrGuz/Tbg3loODpW7vrQJkUtpY2fFSf4ELqqkApcS2TkZ1msk7ie8iZPB86lDOP8QOTTmuvWjc5S0R9OjQ==";
       };
     };
-    "@types/semver-7.3.6" = {
+    "@types/semver-7.3.7" = {
       name = "_at_types_slash_semver";
       packageName = "@types/semver";
-      version = "7.3.6";
+      version = "7.3.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/semver/-/semver-7.3.6.tgz";
-        sha512 = "0caWDWmpCp0uifxFh+FaqK3CuZ2SkRR/ZRxAV5+zNdC3QVUi6wyOJnefhPvtNt8NQWXB5OA93BUvZsXpWat2Xw==";
+        url = "https://registry.npmjs.org/@types/semver/-/semver-7.3.7.tgz";
+        sha512 = "4g1jrL98mdOIwSOUh6LTlB0Cs9I0dQPwINUhBg7C6pN4HLr8GS8xsksJxilW6S6dQHVi2K/o+lQuQcg7LroCnw==";
       };
     };
-    "@types/serve-static-1.13.9" = {
+    "@types/serve-static-1.13.10" = {
       name = "_at_types_slash_serve-static";
       packageName = "@types/serve-static";
-      version = "1.13.9";
+      version = "1.13.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.9.tgz";
-        sha512 = "ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA==";
+        url = "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz";
+        sha512 = "nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==";
       };
     };
     "@types/sizzle-2.3.3" = {
@@ -7348,13 +7627,13 @@ let
         sha512 = "kdU8ydio1weSvhIIh9rptZ6MdMiR2NQGFnlnZ5qQ7OiQS1ej79zK4GaJ9qX3naSTpOA7iWqwUnZCQpd7SpD1NA==";
       };
     };
-    "@types/tapable-1.0.7" = {
+    "@types/tapable-1.0.8" = {
       name = "_at_types_slash_tapable";
       packageName = "@types/tapable";
-      version = "1.0.7";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.7.tgz";
-        sha512 = "0VBprVqfgFD7Ehb2vd8Lh9TG3jP98gvr8rgehQqzztZNI7o8zS8Ad4jyZneKELphpuE212D8J70LnSNQSyO6bQ==";
+        url = "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz";
+        sha512 = "ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==";
       };
     };
     "@types/through-0.0.30" = {
@@ -7366,13 +7645,13 @@ let
         sha512 = "FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==";
       };
     };
-    "@types/tough-cookie-4.0.0" = {
+    "@types/tough-cookie-4.0.1" = {
       name = "_at_types_slash_tough-cookie";
       packageName = "@types/tough-cookie";
-      version = "4.0.0";
+      version = "4.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.0.tgz";
-        sha512 = "I99sngh224D0M7XgW1s120zxCt3VYQ3IQsuw3P3jbq5GG4yc79+ZjyKznyOGIQrflfylLgcfekeZW/vk0yng6A==";
+        url = "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.1.tgz";
+        sha512 = "Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==";
       };
     };
     "@types/treeify-1.0.0" = {
@@ -7384,22 +7663,22 @@ let
         sha512 = "ONpcZAEYlbPx4EtJwfTyCDQJGUpKf4sEcuySdCVjK5Fj/3vHp5HII1fqa1/+qrsLnpYELCQTfVW/awsGJePoIg==";
       };
     };
-    "@types/uglify-js-3.13.0" = {
+    "@types/uglify-js-3.13.1" = {
       name = "_at_types_slash_uglify-js";
       packageName = "@types/uglify-js";
-      version = "3.13.0";
+      version = "3.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.13.0.tgz";
-        sha512 = "EGkrJD5Uy+Pg0NUR8uA4bJ5WMfljyad0G+784vLCNUkD+QwOJXUbBYExXfVGf7YtyzdQp3L/XMYcliB987kL5Q==";
+        url = "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.13.1.tgz";
+        sha512 = "O3MmRAk6ZuAKa9CHgg0Pr0+lUOqoMLpc9AS4R8ano2auvsg7IE8syF3Xh/NPr26TWklxYcqoEEFdzLLs1fV9PQ==";
       };
     };
-    "@types/unist-2.0.3" = {
+    "@types/unist-2.0.6" = {
       name = "_at_types_slash_unist";
       packageName = "@types/unist";
-      version = "2.0.3";
+      version = "2.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/unist/-/unist-2.0.3.tgz";
-        sha512 = "FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ==";
+        url = "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz";
+        sha512 = "PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==";
       };
     };
     "@types/url-join-4.0.0" = {
@@ -7411,13 +7690,13 @@ let
         sha512 = "awrJu8yML4E/xTwr2EMatC+HBnHGoDxc2+ImA9QyeUELI1S7dOCIZcyjki1rkwoA8P2D2NVgLAJLjnclkdLtAw==";
       };
     };
-    "@types/uuid-8.3.0" = {
+    "@types/uuid-8.3.1" = {
       name = "_at_types_slash_uuid";
       packageName = "@types/uuid";
-      version = "8.3.0";
+      version = "8.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.0.tgz";
-        sha512 = "eQ9qFW/fhfGJF8WKHGEHZEyVWfZxrT+6CLIJGBcZPfxUh/+BnEj+UCGYMlr9qZuX/2AltsvwrGqp0LhEW8D0zQ==";
+        url = "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.1.tgz";
+        sha512 = "Y2mHTRAbqfFkpjldbkHGY8JIzRN6XqYRliG8/24FcHm2D2PwW24fl5xMRTVGdrb7iMrwCaIEbLWerGIkXuFWVg==";
       };
     };
     "@types/vfile-3.0.2" = {
@@ -7438,40 +7717,40 @@ let
         sha512 = "GpTIuDpb9u4zIO165fUy9+fXcULdD8HFRNli04GehoMVbeNq7D6OBnqSmg3lxZnC+UvgUhEWKxdKiwYUkGltIw==";
       };
     };
-    "@types/vinyl-2.0.4" = {
+    "@types/vinyl-2.0.5" = {
       name = "_at_types_slash_vinyl";
       packageName = "@types/vinyl";
-      version = "2.0.4";
+      version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/vinyl/-/vinyl-2.0.4.tgz";
-        sha512 = "2o6a2ixaVI2EbwBPg1QYLGQoHK56p/8X/sGfKbFC8N6sY9lfjsMf/GprtkQkSya0D4uRiutRZ2BWj7k3JvLsAQ==";
+        url = "https://registry.npmjs.org/@types/vinyl/-/vinyl-2.0.5.tgz";
+        sha512 = "1m6uReH8R/RuLVQGvTT/4LlWq67jZEUxp+FBHt0hYv2BT7TUwFbKI0wa7JZVEU/XtlcnX1QcTuZ36es4rGj7jg==";
       };
     };
-    "@types/vscode-1.57.0" = {
+    "@types/vscode-1.58.1" = {
       name = "_at_types_slash_vscode";
       packageName = "@types/vscode";
-      version = "1.57.0";
+      version = "1.58.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/vscode/-/vscode-1.57.0.tgz";
-        sha512 = "FeznBFtIDCWRluojTsi9c3LLcCHOXP5etQfBK42+ixo1CoEAchkw39tuui9zomjZuKfUVL33KZUDIwHZ/xvOkQ==";
+        url = "https://registry.npmjs.org/@types/vscode/-/vscode-1.58.1.tgz";
+        sha512 = "sa76rDXiSif09he8KoaWWUQxsuBr2+uND0xn1GUbEODkuEjp2p7Rqd3t5qlvklfmAedLFdL7MdnsPa57uzwcOw==";
       };
     };
-    "@types/webpack-4.41.29" = {
+    "@types/webpack-4.41.30" = {
       name = "_at_types_slash_webpack";
       packageName = "@types/webpack";
-      version = "4.41.29";
+      version = "4.41.30";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.29.tgz";
-        sha512 = "6pLaORaVNZxiB3FSHbyBiWM7QdazAWda1zvAq4SbZObZqHSDbWLi62iFdblVea6SK9eyBIVp5yHhKt/yNQdR7Q==";
+        url = "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.30.tgz";
+        sha512 = "GUHyY+pfuQ6haAfzu4S14F+R5iGRwN6b2FRNJY7U0NilmFAqbsOfK6j1HwuLBAqwRIT+pVdNDJGJ6e8rpp0KHA==";
       };
     };
-    "@types/webpack-sources-2.1.0" = {
+    "@types/webpack-sources-2.1.1" = {
       name = "_at_types_slash_webpack-sources";
       packageName = "@types/webpack-sources";
-      version = "2.1.0";
+      version = "2.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-2.1.0.tgz";
-        sha512 = "LXn/oYIpBeucgP1EIJbKQ2/4ZmpvRl+dlrFdX7+94SKRUV3Evy3FsfMZY318vGhkWUS5MPhtOM3w1/hCOAOXcg==";
+        url = "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-2.1.1.tgz";
+        sha512 = "MjM1R6iuw8XaVbtkCBz0N349cyqBjJHCbQiOeppe3VBeFvxqs74RKHAVt9LkxTnUWc7YLZOEsUfPUnmK6SBPKQ==";
       };
     };
     "@types/websocket-1.0.2" = {
@@ -7483,15 +7762,6 @@ let
         sha512 = "B5m9aq7cbbD/5/jThEr33nUY8WEfVi6A2YKCTOvw5Ldy7mtsOkqRvGjnzy6g7iMMDsgu7xREuCzqATLDLQVKcQ==";
       };
     };
-    "@types/ws-7.4.0" = {
-      name = "_at_types_slash_ws";
-      packageName = "@types/ws";
-      version = "7.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/ws/-/ws-7.4.0.tgz";
-        sha512 = "Y29uQ3Uy+58bZrFLhX36hcI3Np37nqWE7ky5tjiDoy1GDZnIwVxS0CgF+s+1bXMzjKBFy+fqaRfb708iNzdinw==";
-      };
-    };
     "@types/ws-7.4.4" = {
       name = "_at_types_slash_ws";
       packageName = "@types/ws";
@@ -7510,31 +7780,49 @@ let
         sha512 = "8mbDgtc8xpxDDem5Gwj76stBDJX35KQ3YBoayxlqUQcL5BZUthiqP/VQ4PQnLHqM4PmlbyO74t98eJpURO+gPA==";
       };
     };
-    "@types/yargs-13.0.11" = {
+    "@types/ws-7.4.6" = {
+      name = "_at_types_slash_ws";
+      packageName = "@types/ws";
+      version = "7.4.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/ws/-/ws-7.4.6.tgz";
+        sha512 = "ijZ1vzRawI7QoWnTNL8KpHixd2b2XVb9I9HAqI3triPsh1EC0xH0Eg6w2O3TKbDCgiNNlJqfrof6j4T2I+l9vw==";
+      };
+    };
+    "@types/ws-7.4.7" = {
+      name = "_at_types_slash_ws";
+      packageName = "@types/ws";
+      version = "7.4.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz";
+        sha512 = "JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==";
+      };
+    };
+    "@types/yargs-13.0.12" = {
       name = "_at_types_slash_yargs";
       packageName = "@types/yargs";
-      version = "13.0.11";
+      version = "13.0.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.11.tgz";
-        sha512 = "NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==";
+        url = "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.12.tgz";
+        sha512 = "qCxJE1qgz2y0hA4pIxjBR+PelCH0U5CK1XJXFwCNqfmliatKp47UCXXE9Dyk1OXBDLvsCF57TqQEJaeLfDYEOQ==";
       };
     };
-    "@types/yargs-15.0.13" = {
+    "@types/yargs-15.0.14" = {
       name = "_at_types_slash_yargs";
       packageName = "@types/yargs";
-      version = "15.0.13";
+      version = "15.0.14";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.13.tgz";
-        sha512 = "kQ5JNTrbDv3Rp5X2n/iUu37IJBDU2gsZ5R/g1/KHOOEc5IKfUFjXT6DENPGduh08I/pamwtEq4oul7gUqKTQDQ==";
+        url = "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz";
+        sha512 = "yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==";
       };
     };
-    "@types/yargs-parser-20.2.0" = {
+    "@types/yargs-parser-20.2.1" = {
       name = "_at_types_slash_yargs-parser";
       packageName = "@types/yargs-parser";
-      version = "20.2.0";
+      version = "20.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.0.tgz";
-        sha512 = "37RSHht+gzzgYeobbG+KWryeAW8J33Nhr69cjTqSYymXVZEN9NbRYWoYlRtDhHKPVT1FyNKwaTPC1NynKZpzRA==";
+        url = "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz";
+        sha512 = "7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==";
       };
     };
     "@types/yauzl-2.9.1" = {
@@ -7546,6 +7834,15 @@ let
         sha512 = "A1b8SU4D10uoPjwb0lnHmmu8wZhR9d+9o2PKBQT2jU5YPTKsxac6M2qGAdY7VcL+dHHhARVUDmeg0rOrcd9EjA==";
       };
     };
+    "@types/yauzl-2.9.2" = {
+      name = "_at_types_slash_yauzl";
+      packageName = "@types/yauzl";
+      version = "2.9.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.9.2.tgz";
+        sha512 = "8uALY5LTvSuHgloDVUvWP3pIauILm+8/0pDMokuDYIoNsOkSwd5AiHBTSEJjKTDcZr5z8UpgOWZkxBF4iJftoA==";
+      };
+    };
     "@types/yoga-layout-1.9.2" = {
       name = "_at_types_slash_yoga-layout";
       packageName = "@types/yoga-layout";
@@ -7555,13 +7852,13 @@ let
         sha512 = "S9q47ByT2pPvD65IvrWp7qppVMpk9WGMbVq9wbWZOHg6tnXSD4vyhao6nOSBwwfDdV2p3Kx9evA9vI+XWTfDvw==";
       };
     };
-    "@typescript-eslint/eslint-plugin-4.28.1" = {
+    "@typescript-eslint/eslint-plugin-4.28.4" = {
       name = "_at_typescript-eslint_slash_eslint-plugin";
       packageName = "@typescript-eslint/eslint-plugin";
-      version = "4.28.1";
+      version = "4.28.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.28.1.tgz";
-        sha512 = "9yfcNpDaNGQ6/LQOX/KhUFTR1sCKH+PBr234k6hI9XJ0VP5UqGxap0AnNwBnWFk1MNyWBylJH9ZkzBXC+5akZQ==";
+        url = "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.28.4.tgz";
+        sha512 = "s1oY4RmYDlWMlcV0kKPBaADn46JirZzvvH7c2CtAqxCY96S538JRBAzt83RrfkDheV/+G/vWNK0zek+8TB3Gmw==";
       };
     };
     "@typescript-eslint/experimental-utils-3.10.1" = {
@@ -7573,13 +7870,13 @@ let
         sha512 = "DewqIgscDzmAfd5nOGe4zm6Bl7PKtMG2Ad0KG8CUZAHlXfAKTF9Ol5PXhiMh39yRL2ChRH1cuuUGOcVyyrhQIw==";
       };
     };
-    "@typescript-eslint/experimental-utils-4.28.1" = {
+    "@typescript-eslint/experimental-utils-4.28.4" = {
       name = "_at_typescript-eslint_slash_experimental-utils";
       packageName = "@typescript-eslint/experimental-utils";
-      version = "4.28.1";
+      version = "4.28.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.1.tgz";
-        sha512 = "n8/ggadrZ+uyrfrSEchx3jgODdmcx7MzVM2sI3cTpI/YlfSm0+9HEUaWw3aQn2urL2KYlWYMDgn45iLfjDYB+Q==";
+        url = "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.4.tgz";
+        sha512 = "OglKWOQRWTCoqMSy6pm/kpinEIgdcXYceIcH3EKWUl4S8xhFtN34GQRaAvTIZB9DD94rW7d/U7tUg3SYeDFNHA==";
       };
     };
     "@typescript-eslint/parser-3.10.1" = {
@@ -7591,22 +7888,22 @@ let
         sha512 = "Ug1RcWcrJP02hmtaXVS3axPPTTPnZjupqhgj+NnZ6BCkwSImWk/283347+x9wN+lqOdK9Eo3vsyiyDHgsmiEJw==";
       };
     };
-    "@typescript-eslint/parser-4.28.1" = {
+    "@typescript-eslint/parser-4.28.4" = {
       name = "_at_typescript-eslint_slash_parser";
       packageName = "@typescript-eslint/parser";
-      version = "4.28.1";
+      version = "4.28.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.28.1.tgz";
-        sha512 = "UjrMsgnhQIIK82hXGaD+MCN8IfORS1CbMdu7VlZbYa8LCZtbZjJA26De4IPQB7XYZbL8gJ99KWNj0l6WD0guJg==";
+        url = "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.28.4.tgz";
+        sha512 = "4i0jq3C6n+og7/uCHiE6q5ssw87zVdpUj1k6VlVYMonE3ILdFApEzTWgppSRG4kVNB/5jxnH+gTeKLMNfUelQA==";
       };
     };
-    "@typescript-eslint/scope-manager-4.28.1" = {
+    "@typescript-eslint/scope-manager-4.28.4" = {
       name = "_at_typescript-eslint_slash_scope-manager";
       packageName = "@typescript-eslint/scope-manager";
-      version = "4.28.1";
+      version = "4.28.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.28.1.tgz";
-        sha512 = "o95bvGKfss6705x7jFGDyS7trAORTy57lwJ+VsYwil/lOUxKQ9tA7Suuq+ciMhJc/1qPwB3XE2DKh9wubW8YYA==";
+        url = "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.28.4.tgz";
+        sha512 = "ZJBNs4usViOmlyFMt9X9l+X0WAFcDH7EdSArGqpldXu7aeZxDAuAzHiMAeI+JpSefY2INHrXeqnha39FVqXb8w==";
       };
     };
     "@typescript-eslint/types-3.10.1" = {
@@ -7618,13 +7915,13 @@ let
         sha512 = "+3+FCUJIahE9q0lDi1WleYzjCwJs5hIsbugIgnbB+dSCYUxl8L6PwmsyOPFZde2hc1DlTo/xnkOgiTLSyAbHiQ==";
       };
     };
-    "@typescript-eslint/types-4.28.1" = {
+    "@typescript-eslint/types-4.28.4" = {
       name = "_at_typescript-eslint_slash_types";
       packageName = "@typescript-eslint/types";
-      version = "4.28.1";
+      version = "4.28.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.1.tgz";
-        sha512 = "4z+knEihcyX7blAGi7O3Fm3O6YRCP+r56NJFMNGsmtdw+NCdpG5SgNz427LS9nQkRVTswZLhz484hakQwB8RRg==";
+        url = "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.4.tgz";
+        sha512 = "3eap4QWxGqkYuEmVebUGULMskR6Cuoc/Wii0oSOddleP4EGx1tjLnZQ0ZP33YRoMDCs5O3j56RBV4g14T4jvww==";
       };
     };
     "@typescript-eslint/typescript-estree-3.10.1" = {
@@ -7636,13 +7933,13 @@ let
         sha512 = "QbcXOuq6WYvnB3XPsZpIwztBoquEYLXh2MtwVU+kO8jgYCiv4G5xrSP/1wg4tkvrEE+esZVquIPX/dxPlePk1w==";
       };
     };
-    "@typescript-eslint/typescript-estree-4.28.1" = {
+    "@typescript-eslint/typescript-estree-4.28.4" = {
       name = "_at_typescript-eslint_slash_typescript-estree";
       packageName = "@typescript-eslint/typescript-estree";
-      version = "4.28.1";
+      version = "4.28.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.1.tgz";
-        sha512 = "GhKxmC4sHXxHGJv8e8egAZeTZ6HI4mLU6S7FUzvFOtsk7ZIDN1ksA9r9DyOgNqowA9yAtZXV0Uiap61bIO81FQ==";
+        url = "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.4.tgz";
+        sha512 = "z7d8HK8XvCRyN2SNp+OXC2iZaF+O2BTquGhEYLKLx5k6p0r05ureUtgEfo5f6anLkhCxdHtCf6rPM1p4efHYDQ==";
       };
     };
     "@typescript-eslint/visitor-keys-3.10.1" = {
@@ -7654,13 +7951,13 @@ let
         sha512 = "9JgC82AaQeglebjZMgYR5wgmfUdUc+EitGUUMW8u2nDckaeimzW+VsoLV6FoimPv2id3VQzfjwBxEMVz08ameQ==";
       };
     };
-    "@typescript-eslint/visitor-keys-4.28.1" = {
+    "@typescript-eslint/visitor-keys-4.28.4" = {
       name = "_at_typescript-eslint_slash_visitor-keys";
       packageName = "@typescript-eslint/visitor-keys";
-      version = "4.28.1";
+      version = "4.28.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.1.tgz";
-        sha512 = "K4HMrdFqr9PFquPu178SaSb92CaWe2yErXyPumc8cYWxFmhgJsNY9eSePmO05j0JhBvf2Cdhptd6E6Yv9HVHcg==";
+        url = "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.4.tgz";
+        sha512 = "NIAXAdbz1XdOuzqkJHjNKXKj8QQ4cv5cxR/g0uQhCYf/6//XrmfpaYsM7PnBcNbfvTDLUkqQ5TPNm1sozDdTWg==";
       };
     };
     "@uifabric/foundation-7.9.26" = {
@@ -7798,40 +8095,40 @@ let
         sha512 = "B6PedV/H2kcGEAgnqncwjHe3E8fqUNXCLv1BsrNwkHHWQJXkDN7dFeuEB4oaucBOVbjhH7KGLJ6JAiXPE3S7xA==";
       };
     };
-    "@vue/compiler-core-3.1.3" = {
+    "@vue/compiler-core-3.1.5" = {
       name = "_at_vue_slash_compiler-core";
       packageName = "@vue/compiler-core";
-      version = "3.1.3";
+      version = "3.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.1.3.tgz";
-        sha512 = "I58MDtVa8AYEIa3waLO6/89JdmgpkDAEcL3Vrmlsbnt07KZ5sIGLqaXjzGrOT57j9s8ty0WTYlLQq2rWUVYGCg==";
+        url = "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.1.5.tgz";
+        sha512 = "TXBhFinoBaXKDykJzY26UEuQU1K07FOp/0Ie+OXySqqk0bS0ZO7Xvl7UmiTUPYcLrWbxWBR7Bs/y55AI0MNc2Q==";
       };
     };
-    "@vue/compiler-dom-3.1.3" = {
+    "@vue/compiler-dom-3.1.5" = {
       name = "_at_vue_slash_compiler-dom";
       packageName = "@vue/compiler-dom";
-      version = "3.1.3";
+      version = "3.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.1.3.tgz";
-        sha512 = "BunLXKP+UvY1XJ0L6M7KD/De0XP+kOlIxFg3OfXtVQZcLLgnLcTgSK3t/ylvIpYJOadGaHhb+BfCK/hdqOVAyw==";
+        url = "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.1.5.tgz";
+        sha512 = "ZsL3jqJ52OjGU/YiT/9XiuZAmWClKInZM2aFJh9gnsAPqOrj2JIELMbkIFpVKR/CrVO/f2VxfPiiQdQTr65jcQ==";
       };
     };
-    "@vue/shared-3.1.3" = {
+    "@vue/shared-3.1.5" = {
       name = "_at_vue_slash_shared";
       packageName = "@vue/shared";
-      version = "3.1.3";
+      version = "3.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/shared/-/shared-3.1.3.tgz";
-        sha512 = "uGBX4bZVFvgranxzpH3q1gGmICUjEUnNrMIBFeZRw8hBfCPhT+VnuY8+mG2l/yEyY73J9e6d36CtbFUqDXa12w==";
+        url = "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz";
+        sha512 = "oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==";
       };
     };
-    "@webassemblyjs/ast-1.11.0" = {
+    "@webassemblyjs/ast-1.11.1" = {
       name = "_at_webassemblyjs_slash_ast";
       packageName = "@webassemblyjs/ast";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.0.tgz";
-        sha512 = "kX2W49LWsbthrmIRMbQZuQDhGtjyqXfEmmHyEi4XWnSZtPmxY0+3anPIzsnRb45VH/J55zlOfWvZuY47aJZTJg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz";
+        sha512 = "ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==";
       };
     };
     "@webassemblyjs/ast-1.8.1" = {
@@ -7852,13 +8149,13 @@ let
         sha512 = "C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==";
       };
     };
-    "@webassemblyjs/floating-point-hex-parser-1.11.0" = {
+    "@webassemblyjs/floating-point-hex-parser-1.11.1" = {
       name = "_at_webassemblyjs_slash_floating-point-hex-parser";
       packageName = "@webassemblyjs/floating-point-hex-parser";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.0.tgz";
-        sha512 = "Q/aVYs/VnPDVYvsCBL/gSgwmfjeCb4LW8+TMrO3cSzJImgv8lxxEPM2JA5jMrivE7LSz3V+PFqtMbls3m1exDA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz";
+        sha512 = "iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==";
       };
     };
     "@webassemblyjs/floating-point-hex-parser-1.8.1" = {
@@ -7879,13 +8176,13 @@ let
         sha512 = "TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==";
       };
     };
-    "@webassemblyjs/helper-api-error-1.11.0" = {
+    "@webassemblyjs/helper-api-error-1.11.1" = {
       name = "_at_webassemblyjs_slash_helper-api-error";
       packageName = "@webassemblyjs/helper-api-error";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.0.tgz";
-        sha512 = "baT/va95eXiXb2QflSx95QGT5ClzWpGaa8L7JnJbgzoYeaA27FCvuBXU758l+KXWRndEmUXjP0Q5fibhavIn8w==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz";
+        sha512 = "RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==";
       };
     };
     "@webassemblyjs/helper-api-error-1.8.1" = {
@@ -7906,13 +8203,13 @@ let
         sha512 = "NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==";
       };
     };
-    "@webassemblyjs/helper-buffer-1.11.0" = {
+    "@webassemblyjs/helper-buffer-1.11.1" = {
       name = "_at_webassemblyjs_slash_helper-buffer";
       packageName = "@webassemblyjs/helper-buffer";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.0.tgz";
-        sha512 = "u9HPBEl4DS+vA8qLQdEQ6N/eJQ7gT7aNvMIo8AAWvAl/xMrcOSiI2M0MAnMCy3jIFke7bEee/JwdX1nUpCtdyA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz";
+        sha512 = "gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==";
       };
     };
     "@webassemblyjs/helper-buffer-1.8.1" = {
@@ -7933,13 +8230,13 @@ let
         sha512 = "qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==";
       };
     };
-    "@webassemblyjs/helper-code-frame-1.11.0" = {
+    "@webassemblyjs/helper-code-frame-1.11.1" = {
       name = "_at_webassemblyjs_slash_helper-code-frame";
       packageName = "@webassemblyjs/helper-code-frame";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.11.0.tgz";
-        sha512 = "crKJ80NppRzmKB9863Xq5ufVT6he+V4A2PoBfeblFGeeCb6zig34mW97tNBzGLcuOfSsq4ncmI4QOtqQBg047g==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.11.1.tgz";
+        sha512 = "mPd+wiLANX+0WdXre6/nVufpukwfGBzolYCrzx+QtpUUa9FthKTr+mdg0yVWgs9W7zhOE3tCOK/ffqpu4rsJag==";
       };
     };
     "@webassemblyjs/helper-code-frame-1.8.1" = {
@@ -7960,31 +8257,31 @@ let
         sha512 = "ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==";
       };
     };
-    "@webassemblyjs/helper-compiler-1.11.0" = {
+    "@webassemblyjs/helper-compiler-1.11.1" = {
       name = "_at_webassemblyjs_slash_helper-compiler";
       packageName = "@webassemblyjs/helper-compiler";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-compiler/-/helper-compiler-1.11.0.tgz";
-        sha512 = "XEKiHYE951mCW3kjXXK3sHdJI+IOD8k/Vfzk55FeFRJbKxucXZEJ+H1dcDp9MK0wXLtaMSVU5RFXf7chrCjdAg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-compiler/-/helper-compiler-1.11.1.tgz";
+        sha512 = "4fhcksfjZlUO+A6BoHhq+jqIA0IoTCALO7lthg88oSvMnDwI7MLydC0Dxy9L9h8/VX6rgxn+Ks3qFFvUv9TAWQ==";
       };
     };
-    "@webassemblyjs/helper-flatten-ast-1.11.0" = {
+    "@webassemblyjs/helper-flatten-ast-1.11.1" = {
       name = "_at_webassemblyjs_slash_helper-flatten-ast";
       packageName = "@webassemblyjs/helper-flatten-ast";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-flatten-ast/-/helper-flatten-ast-1.11.0.tgz";
-        sha512 = "T5zOuVT4mOXuDu2elXT/0P+2hhsIj/SgUUIxGTmpak6j3XruH0hYOOcnT9ES+qQ4vN3eq63ivGnLaMmjMPcExA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-flatten-ast/-/helper-flatten-ast-1.11.1.tgz";
+        sha512 = "fyr0qH03eF/iH8Cos52Z5kE+pdOj5m/ZeCIKxfezDf0r/vmukoMgmLt9gH5u6T1wt7hZHXjV1ocNoqBP+DBgeg==";
       };
     };
-    "@webassemblyjs/helper-fsm-1.11.0" = {
+    "@webassemblyjs/helper-fsm-1.11.1" = {
       name = "_at_webassemblyjs_slash_helper-fsm";
       packageName = "@webassemblyjs/helper-fsm";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.11.0.tgz";
-        sha512 = "H0vRFj05zA2J1SVi+VdNbMwi7m0yZQhLqq7vkjYk44ilLzk0zEXaBNofKH5rQcchQUP2gdqoxLLHA9EcUdW9nw==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.11.1.tgz";
+        sha512 = "k+B+H6RO3f8xDborqpvTS5T5xp43MmytDSJbsbDmuMIN8yhCs7Oyu7+s08noYkDplj2rRlcq3iW9eGMhY7jxmg==";
       };
     };
     "@webassemblyjs/helper-fsm-1.8.1" = {
@@ -8023,22 +8320,22 @@ let
         sha512 = "MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==";
       };
     };
-    "@webassemblyjs/helper-numbers-1.11.0" = {
+    "@webassemblyjs/helper-numbers-1.11.1" = {
       name = "_at_webassemblyjs_slash_helper-numbers";
       packageName = "@webassemblyjs/helper-numbers";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.0.tgz";
-        sha512 = "DhRQKelIj01s5IgdsOJMKLppI+4zpmcMQ3XboFPLwCpSNH6Hqo1ritgHgD0nqHeSYqofA6aBN/NmXuGjM1jEfQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz";
+        sha512 = "vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==";
       };
     };
-    "@webassemblyjs/helper-wasm-bytecode-1.11.0" = {
+    "@webassemblyjs/helper-wasm-bytecode-1.11.1" = {
       name = "_at_webassemblyjs_slash_helper-wasm-bytecode";
       packageName = "@webassemblyjs/helper-wasm-bytecode";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.0.tgz";
-        sha512 = "MbmhvxXExm542tWREgSFnOVo07fDpsBJg3sIl6fSp9xuu75eGz5lz31q7wTLffwL3Za7XNRCMZy210+tnsUSEA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz";
+        sha512 = "PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==";
       };
     };
     "@webassemblyjs/helper-wasm-bytecode-1.8.1" = {
@@ -8059,13 +8356,13 @@ let
         sha512 = "R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==";
       };
     };
-    "@webassemblyjs/helper-wasm-section-1.11.0" = {
+    "@webassemblyjs/helper-wasm-section-1.11.1" = {
       name = "_at_webassemblyjs_slash_helper-wasm-section";
       packageName = "@webassemblyjs/helper-wasm-section";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.0.tgz";
-        sha512 = "3Eb88hcbfY/FCukrg6i3EH8H2UsD7x8Vy47iVJrP967A9JGqgBVL9aH71SETPx1JrGsOUVLo0c7vMCN22ytJew==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz";
+        sha512 = "10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==";
       };
     };
     "@webassemblyjs/helper-wasm-section-1.8.1" = {
@@ -8086,13 +8383,13 @@ let
         sha512 = "XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==";
       };
     };
-    "@webassemblyjs/ieee754-1.11.0" = {
+    "@webassemblyjs/ieee754-1.11.1" = {
       name = "_at_webassemblyjs_slash_ieee754";
       packageName = "@webassemblyjs/ieee754";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.0.tgz";
-        sha512 = "KXzOqpcYQwAfeQ6WbF6HXo+0udBNmw0iXDmEK5sFlmQdmND+tr773Ti8/5T/M6Tl/413ArSJErATd8In3B+WBA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz";
+        sha512 = "hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==";
       };
     };
     "@webassemblyjs/ieee754-1.8.1" = {
@@ -8113,13 +8410,13 @@ let
         sha512 = "dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==";
       };
     };
-    "@webassemblyjs/leb128-1.11.0" = {
+    "@webassemblyjs/leb128-1.11.1" = {
       name = "_at_webassemblyjs_slash_leb128";
       packageName = "@webassemblyjs/leb128";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.0.tgz";
-        sha512 = "aqbsHa1mSQAbeeNcl38un6qVY++hh8OpCOzxhixSYgbRfNWcxJNJQwe2rezK9XEcssJbbWIkblaJRwGMS9zp+g==";
+        url = "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz";
+        sha512 = "BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==";
       };
     };
     "@webassemblyjs/leb128-1.8.1" = {
@@ -8140,13 +8437,13 @@ let
         sha512 = "ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==";
       };
     };
-    "@webassemblyjs/utf8-1.11.0" = {
+    "@webassemblyjs/utf8-1.11.1" = {
       name = "_at_webassemblyjs_slash_utf8";
       packageName = "@webassemblyjs/utf8";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.0.tgz";
-        sha512 = "A/lclGxH6SpSLSyFowMzO/+aDEPU4hvEiooCMXQPcQFPPJaYcPQNKGOCLUySJsYJ4trbpr+Fs08n4jelkVTGVw==";
+        url = "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz";
+        sha512 = "9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==";
       };
     };
     "@webassemblyjs/utf8-1.8.1" = {
@@ -8167,22 +8464,22 @@ let
         sha512 = "GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==";
       };
     };
-    "@webassemblyjs/validation-1.11.0" = {
+    "@webassemblyjs/validation-1.11.1" = {
       name = "_at_webassemblyjs_slash_validation";
       packageName = "@webassemblyjs/validation";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/validation/-/validation-1.11.0.tgz";
-        sha512 = "0doaNEdjsurs3hUahxqoo3AJKvz+QnsIlkDnmd6nNmlFge3ixCrA7B8Xm6vmNoBPWWZgQ0VhvHV8Qs4768q1pw==";
+        url = "https://registry.npmjs.org/@webassemblyjs/validation/-/validation-1.11.1.tgz";
+        sha512 = "qNByLv/qST8x4CshQ8vUuX/+OebI9gK+FHkGPMnLnwALKFJOG0jIxG8TXaf2L+fVHNyd96qhsZ/GL54G3KTjpg==";
       };
     };
-    "@webassemblyjs/wasm-edit-1.11.0" = {
+    "@webassemblyjs/wasm-edit-1.11.1" = {
       name = "_at_webassemblyjs_slash_wasm-edit";
       packageName = "@webassemblyjs/wasm-edit";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.0.tgz";
-        sha512 = "JHQ0damXy0G6J9ucyKVXO2j08JVJ2ntkdJlq1UTiUrIgfGMmA7Ik5VdC/L8hBK46kVJgujkBIoMtT8yVr+yVOQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz";
+        sha512 = "g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==";
       };
     };
     "@webassemblyjs/wasm-edit-1.9.0" = {
@@ -8194,13 +8491,13 @@ let
         sha512 = "FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==";
       };
     };
-    "@webassemblyjs/wasm-gen-1.11.0" = {
+    "@webassemblyjs/wasm-gen-1.11.1" = {
       name = "_at_webassemblyjs_slash_wasm-gen";
       packageName = "@webassemblyjs/wasm-gen";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.0.tgz";
-        sha512 = "BEUv1aj0WptCZ9kIS30th5ILASUnAPEvE3tVMTrItnZRT9tXCLW2LEXT8ezLw59rqPP9klh9LPmpU+WmRQmCPQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz";
+        sha512 = "F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==";
       };
     };
     "@webassemblyjs/wasm-gen-1.8.1" = {
@@ -8221,13 +8518,13 @@ let
         sha512 = "cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==";
       };
     };
-    "@webassemblyjs/wasm-opt-1.11.0" = {
+    "@webassemblyjs/wasm-opt-1.11.1" = {
       name = "_at_webassemblyjs_slash_wasm-opt";
       packageName = "@webassemblyjs/wasm-opt";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.0.tgz";
-        sha512 = "tHUSP5F4ywyh3hZ0+fDQuWxKx3mJiPeFufg+9gwTpYp324mPCQgnuVKwzLTZVqj0duRDovnPaZqDwoyhIO8kYg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz";
+        sha512 = "VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==";
       };
     };
     "@webassemblyjs/wasm-opt-1.9.0" = {
@@ -8239,13 +8536,13 @@ let
         sha512 = "Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==";
       };
     };
-    "@webassemblyjs/wasm-parser-1.11.0" = {
+    "@webassemblyjs/wasm-parser-1.11.1" = {
       name = "_at_webassemblyjs_slash_wasm-parser";
       packageName = "@webassemblyjs/wasm-parser";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.0.tgz";
-        sha512 = "6L285Sgu9gphrcpDXINvm0M9BskznnzJTE7gYkjDbxET28shDqp27wpruyx3C2S/dvEwiigBwLA1cz7lNUi0kw==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz";
+        sha512 = "rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==";
       };
     };
     "@webassemblyjs/wasm-parser-1.8.1" = {
@@ -8266,13 +8563,13 @@ let
         sha512 = "9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==";
       };
     };
-    "@webassemblyjs/wast-parser-1.11.0" = {
+    "@webassemblyjs/wast-parser-1.11.1" = {
       name = "_at_webassemblyjs_slash_wast-parser";
       packageName = "@webassemblyjs/wast-parser";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.11.0.tgz";
-        sha512 = "HKFbg+HvjITWuOOWehS2EUdNZ4fsfWislwDTrxuUL6FpzrjtsASd2c4hmqNSW6c7sv5iBx1puUWwNtVqLXxFqw==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.11.1.tgz";
+        sha512 = "qnd52euxGXBO27fC8SQTqT0HAuDauAk3EJpp1yw68mtdHO6I3YpiRMJK/dvSKU75saT/uRoSgiyfW9vajh7dhA==";
       };
     };
     "@webassemblyjs/wast-parser-1.8.1" = {
@@ -8293,13 +8590,13 @@ let
         sha512 = "qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==";
       };
     };
-    "@webassemblyjs/wast-printer-1.11.0" = {
+    "@webassemblyjs/wast-printer-1.11.1" = {
       name = "_at_webassemblyjs_slash_wast-printer";
       packageName = "@webassemblyjs/wast-printer";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.0.tgz";
-        sha512 = "Fg5OX46pRdTgB7rKIUojkh9vXaVN6sGYCnEiJN1GYkb0RPwShZXp6KTDqmoMdQPKhcroOXh3fEzmkWmCYaKYhQ==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz";
+        sha512 = "IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==";
       };
     };
     "@webassemblyjs/wast-printer-1.8.1" = {
@@ -8563,6 +8860,15 @@ let
         sha1 = "c22822f87e1c939f579887504d9c109c4173829d";
       };
     };
+    "abstract-extension-3.1.1" = {
+      name = "abstract-extension";
+      packageName = "abstract-extension";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/abstract-extension/-/abstract-extension-3.1.1.tgz";
+        sha512 = "qmUIqQEh6ZZBKN6JfysKgCEBqI4qVexE6/N/MUJjqtQhhuGR8a16GKnK6SGFKv/n1cAlbYxLDXbtyhkxSnVYRQ==";
+      };
+    };
     "abstract-leveldown-6.0.3" = {
       name = "abstract-leveldown";
       packageName = "abstract-leveldown";
@@ -8734,13 +9040,13 @@ let
         sha1 = "afdf9488fb1ecefc8348f6fb22f464e32a58b36b";
       };
     };
-    "acorn-jsx-5.3.1" = {
+    "acorn-jsx-5.3.2" = {
       name = "acorn-jsx";
       packageName = "acorn-jsx";
-      version = "5.3.1";
+      version = "5.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz";
-        sha512 = "K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==";
+        url = "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz";
+        sha512 = "rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==";
       };
     };
     "acorn-loose-6.1.0" = {
@@ -8779,6 +9085,15 @@ let
         sha512 = "OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==";
       };
     };
+    "acorn-walk-8.1.1" = {
+      name = "acorn-walk";
+      packageName = "acorn-walk";
+      version = "8.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.1.1.tgz";
+        sha512 = "FbJdceMlPHEAWJOILDk1fXD8lnTlEIWFkqtfk+MvmL5q/qlHfN7GEHcsFZWt/Tea9jRNPWUZG4G976nqAAmU9w==";
+      };
+    };
     "adbkit-2.11.1" = {
       name = "adbkit";
       packageName = "adbkit";
@@ -9031,6 +9346,15 @@ let
         sha512 = "LqZ9wY+fx3UMiiPd741yB2pj3hhil+hQc8taf4o2QGRFpWgZ2V5C8HA165DY9sS3fJwsk7uT7ZlFEyC3Ig3lLg==";
       };
     };
+    "ajv-8.2.0" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "8.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-8.2.0.tgz";
+        sha512 = "WSNGFuyWd//XO8n/m/EaOlNLtO0yL8EXT/74LqT4khdhpZjP7lkj/kT5uwRmGitKEVp/Oj7ZUHeGfPtgHhQ5CA==";
+      };
+    };
     "ajv-8.6.0" = {
       name = "ajv";
       packageName = "ajv";
@@ -9040,6 +9364,15 @@ let
         sha512 = "cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==";
       };
     };
+    "ajv-8.6.2" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "8.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz";
+        sha512 = "9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==";
+      };
+    };
     "ajv-errors-1.0.1" = {
       name = "ajv-errors";
       packageName = "ajv-errors";
@@ -9049,6 +9382,15 @@ let
         sha512 = "DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==";
       };
     };
+    "ajv-formats-2.0.2" = {
+      name = "ajv-formats";
+      packageName = "ajv-formats";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.0.2.tgz";
+        sha512 = "Brah4Uo5/U8v76c6euTwtjVFFaVishwnJrQBYpev1JRh4vjA1F4HY3UzQez41YUCszUCXKagG8v6eVRBHV1gkw==";
+      };
+    };
     "ajv-formats-2.1.0" = {
       name = "ajv-formats";
       packageName = "ajv-formats";
@@ -9184,6 +9526,15 @@ let
         sha1 = "0c42d4fb17160d5a9af1e484bace1c66922c1b21";
       };
     };
+    "ansi-align-1.1.0" = {
+      name = "ansi-align";
+      packageName = "ansi-align";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-align/-/ansi-align-1.1.0.tgz";
+        sha1 = "2f0c1658829739add5ebb15e6b0c6e3423f016ba";
+      };
+    };
     "ansi-align-2.0.0" = {
       name = "ansi-align";
       packageName = "ansi-align";
@@ -9220,6 +9571,15 @@ let
         sha512 = "SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==";
       };
     };
+    "ansi-colors-3.2.3" = {
+      name = "ansi-colors";
+      packageName = "ansi-colors";
+      version = "3.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz";
+        sha512 = "LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==";
+      };
+    };
     "ansi-colors-3.2.4" = {
       name = "ansi-colors";
       packageName = "ansi-colors";
@@ -9256,6 +9616,15 @@ let
         sha512 = "XnTdFDQzbEewrDx8epWXdw7oqHMvv315vEtfqDiEhhWghIf4++h26c3/FMz7iTLhNrnj56DNIXpbxHZq+3s6qw==";
       };
     };
+    "ansi-diff-stream-1.2.1" = {
+      name = "ansi-diff-stream";
+      packageName = "ansi-diff-stream";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-diff-stream/-/ansi-diff-stream-1.2.1.tgz";
+        sha512 = "PaKs34INoKpTzcjyKd2GM/CCEeTyDgWKuHSgF0z7ywjpbBFj/pzQf/30v+TR6VBBLia6Mso+W2ygU22ljqbi6A==";
+      };
+    };
     "ansi-escape-sequences-4.1.0" = {
       name = "ansi-escape-sequences";
       packageName = "ansi-escape-sequences";
@@ -9472,6 +9841,15 @@ let
         sha1 = "665597de86a9ffe3aa9bfbe6cae5c6ea426b4979";
       };
     };
+    "ansidec-0.3.4" = {
+      name = "ansidec";
+      packageName = "ansidec";
+      version = "0.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansidec/-/ansidec-0.3.4.tgz";
+        sha512 = "Ydgbey4zqUmmNN2i2OVeVHXig3PxHRbok2X6B2Sogmb92JzZUFfTL806dT7os6tBL1peXItfeFt76CP3zsoXUg==";
+      };
+    };
     "any-base-1.1.0" = {
       name = "any-base";
       packageName = "any-base";
@@ -9904,6 +10282,15 @@ let
         sha512 = "kY0YXa72/R7ruTxDqMHCDHnhW9pYvDT+46hQ7tnVDJUb+kp9BJcnOeiRIDheKp4Kn6z630UVywIgiK+4mYgJfA==";
       };
     };
+    "arpeecee-2.2.0" = {
+      name = "arpeecee";
+      packageName = "arpeecee";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arpeecee/-/arpeecee-2.2.0.tgz";
+        sha512 = "K6TLPj72xmqyC8sV0CgUWqO5GqmxT6Vn/y8JdraUqpTchWeOQMslvPuqACsD77cnsx/Y0Xq0lkQFzqh/uLD9lw==";
+      };
+    };
     "arr-diff-1.1.0" = {
       name = "arr-diff";
       packageName = "arr-diff";
@@ -10795,24 +11182,6 @@ let
         sha1 = "1e762817d849ce44bfac07925a42036787061b15";
       };
     };
-    "asyncjs-util-1.2.3" = {
-      name = "asyncjs-util";
-      packageName = "asyncjs-util";
-      version = "1.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/asyncjs-util/-/asyncjs-util-1.2.3.tgz";
-        sha512 = "gwrRUMa6oZ1qssVupX4lgSey1PDCEbouUjCqa2/MRgaZ4gZmZfAVBZ/Nzple7r9BN+iVMJPIWrwVu00CRgjHgw==";
-      };
-    };
-    "asyncjs-util-1.2.4" = {
-      name = "asyncjs-util";
-      packageName = "asyncjs-util";
-      version = "1.2.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/asyncjs-util/-/asyncjs-util-1.2.4.tgz";
-        sha512 = "hIsyIeDv5LPDh+/Yv9+NDcV0z+WtHo7937abePpW9ikx9WNB75BRn/AuP2jkk3YpfxIp4mGaY6zgUm014VU7Hw==";
-      };
-    };
     "asyncjs-util-1.2.6" = {
       name = "asyncjs-util";
       packageName = "asyncjs-util";
@@ -10975,6 +11344,15 @@ let
         sha512 = "SA5mXJWrId1TaQjfxUYghbqQ/hYioKmLJvPJyDuYRtXXenFNMjj4hSSt1Cf1xsuXSXrtxrVC5Ot4eU6cOtBDdA==";
       };
     };
+    "await-lock-2.1.0" = {
+      name = "await-lock";
+      packageName = "await-lock";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/await-lock/-/await-lock-2.1.0.tgz";
+        sha512 = "t7Zm5YGgEEc/3eYAicF32m/TNvL+XOeYZy9CvBUeJY/szM7frLolFylhrlZNWV/ohWhcUXygrBGjYmoQdxF4CQ==";
+      };
+    };
     "await-semaphore-0.1.3" = {
       name = "await-semaphore";
       packageName = "await-semaphore";
@@ -11002,13 +11380,13 @@ let
         sha512 = "tbMZ/Y2rRo6R6TTBODJXTiil+MXaoT6Qzotws3yvI1IWGpYxKo7N/3L06XB8ul8tCG0TigxIOY70SMICM70Ppg==";
       };
     };
-    "aws-sdk-2.938.0" = {
+    "aws-sdk-2.951.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.938.0";
+      version = "2.951.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.938.0.tgz";
-        sha512 = "e+KWYRyJ4Tvlg+6kQTze9Hxmkn+4/H8m+D8AXlfgUbtzyc1OBDf7cMCcl8IvCD3xoqELsgEunPC014v2JTTfZg==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.951.0.tgz";
+        sha512 = "YPqhdESUzd4+pSuGJcfMnG1qNVbmZjnmsa85Z9jofR1ilIpuV31onIiFHv8iubM59ETok/+zy3QOmxRSLYzFmQ==";
       };
     };
     "aws-sign2-0.6.0" = {
@@ -11128,15 +11506,6 @@ let
         sha512 = "ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==";
       };
     };
-    "babel-extract-comments-1.0.0" = {
-      name = "babel-extract-comments";
-      packageName = "babel-extract-comments";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/babel-extract-comments/-/babel-extract-comments-1.0.0.tgz";
-        sha512 = "qWWzi4TlddohA91bFwgt6zO/J0X+io7Qp184Fw0m2JYRSTZnJbFR8+07KmzudHCZgOiKRCrjhylwv9Xd8gfhVQ==";
-      };
-    };
     "babel-helper-evaluate-path-0.5.0" = {
       name = "babel-helper-evaluate-path";
       packageName = "babel-helper-evaluate-path";
@@ -11389,13 +11758,13 @@ let
         sha512 = "Goy5ghsc21HgPDFtzRkSirpZVW35meGoTmTOb2bxqdl60ghub4xOidgNTHaZfQ2FaxQsKmwvXtOAkcIS4SMBWg==";
       };
     };
-    "babel-plugin-styled-components-1.13.1" = {
+    "babel-plugin-styled-components-1.13.2" = {
       name = "babel-plugin-styled-components";
       packageName = "babel-plugin-styled-components";
-      version = "1.13.1";
+      version = "1.13.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-1.13.1.tgz";
-        sha512 = "iY11g5orsdBnvWtXKCFBzDyTxZ9jvmkcYCCs5ONlvASYltDRhieCVzeDC7Do0fSW7psAL0zfVoXB3FHz2CkUSg==";
+        url = "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-1.13.2.tgz";
+        sha512 = "Vb1R3d4g+MUfPQPVDMCGjm3cDocJEUTR7Xq7QS95JWWeksN1wdFRYpD2kulDgI3Huuaf1CZd+NK4KQmqUFh5dA==";
       };
     };
     "babel-plugin-syntax-flow-6.18.0" = {
@@ -11416,15 +11785,6 @@ let
         sha1 = "0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946";
       };
     };
-    "babel-plugin-syntax-object-rest-spread-6.13.0" = {
-      name = "babel-plugin-syntax-object-rest-spread";
-      packageName = "babel-plugin-syntax-object-rest-spread";
-      version = "6.13.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz";
-        sha1 = "fd6536f2bce13836ffa3a5458c4903a597bb3bf5";
-      };
-    };
     "babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0" = {
       name = "babel-plugin-syntax-trailing-function-commas";
       packageName = "babel-plugin-syntax-trailing-function-commas";
@@ -11479,15 +11839,6 @@ let
         sha1 = "acbb3e56a3555dd23928e4b582d285162dd2b198";
       };
     };
-    "babel-plugin-transform-object-rest-spread-6.26.0" = {
-      name = "babel-plugin-transform-object-rest-spread";
-      packageName = "babel-plugin-transform-object-rest-spread";
-      version = "6.26.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz";
-        sha1 = "0f36692d50fef6b7e2d4b3ac1478137a963b7b06";
-      };
-    };
     "babel-plugin-transform-property-literals-6.9.4" = {
       name = "babel-plugin-transform-property-literals";
       packageName = "babel-plugin-transform-property-literals";
@@ -11938,22 +12289,13 @@ let
         sha512 = "BR2vwQZwu24aRm588XHOnPVjjQtbK8sF0RopRFgMuke63/REJMWnePTa2YHKDBefuBYiVdgkowuB1/e4K7Ue3g==";
       };
     };
-    "bcrypt-3.0.6" = {
-      name = "bcrypt";
-      packageName = "bcrypt";
-      version = "3.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/bcrypt/-/bcrypt-3.0.6.tgz";
-        sha512 = "taA5bCTfXe7FUjKroKky9EXpdhkVvhE5owfxfLYodbrAR1Ul3juLmIQmIQBK4L9a5BuUcE6cqmwT+Da20lF9tg==";
-      };
-    };
-    "bcrypt-3.0.8" = {
+    "bcrypt-5.0.1" = {
       name = "bcrypt";
       packageName = "bcrypt";
-      version = "3.0.8";
+      version = "5.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bcrypt/-/bcrypt-3.0.8.tgz";
-        sha512 = "jKV6RvLhI36TQnPDvUFqBEnGX9c8dRRygKxCZu7E+MgLfKZbmmXL8a7/SFFOyHoPNX9nV81cKRC5tbQfvEQtpw==";
+        url = "https://registry.npmjs.org/bcrypt/-/bcrypt-5.0.1.tgz";
+        sha512 = "9BTgmrhZM2t1bNuDtrtIMVSmmxZBrJ71n8Wg+YgdjHuIWYF7SjjmCPZFB+/5i/o/PIeRpwVJR3P+NrpIItUjqw==";
       };
     };
     "bcrypt-nodejs-0.0.3" = {
@@ -12460,13 +12802,13 @@ let
         sha512 = "SrLwMzrpETJDiH9z12EMcqtApgcQo9XsPi+S9Aodezu53ALcGjBBQ7+C+IWbsSCBlSvNEec8sqfh3itO/j/QUw==";
       };
     };
-    "bit-field-1.5.1" = {
+    "bit-field-1.5.2" = {
       name = "bit-field";
       packageName = "bit-field";
-      version = "1.5.1";
+      version = "1.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bit-field/-/bit-field-1.5.1.tgz";
-        sha512 = "yDanqg5y7PNCzyYl2IPJayOuMt3HRKI8vJDlntSxIqLoKy9YTYUoABUAEuFbQrkzHoAIGfmhhv0M6VRIZ+F0xw==";
+        url = "https://registry.npmjs.org/bit-field/-/bit-field-1.5.2.tgz";
+        sha512 = "CYS3HRGgIlm7A6/zqGFd/KPSUIv4EoEQVQ8mWcvBEdlf0db1q3j/fj5W/PXJasBfsvN2jM0Tzw3w1C7HUoR/fg==";
       };
     };
     "bitcoin-core-2.3.0" = {
@@ -12523,13 +12865,13 @@ let
         sha512 = "wrDhHe7LUkqaytxgbsFXoemzHRv6e8FrVNWWsQCgUfmuVYW6ke44hoGc9VdpjgfIsJ/ejmCFA8wDtDqACNAvyw==";
       };
     };
-    "bittorrent-dht-10.0.0" = {
+    "bittorrent-dht-10.0.1" = {
       name = "bittorrent-dht";
       packageName = "bittorrent-dht";
-      version = "10.0.0";
+      version = "10.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bittorrent-dht/-/bittorrent-dht-10.0.0.tgz";
-        sha512 = "mrM18HMabvd3n/hQa4PYe942nWvBsJCBQb5PfT9kUJLlspNPGiulZYSCgWs7+XarS7nufYrGEp07f9eKTKIrgw==";
+        url = "https://registry.npmjs.org/bittorrent-dht/-/bittorrent-dht-10.0.1.tgz";
+        sha512 = "aR0vAgm+SgLiwTCEtNgeuqtT2deg+E/xHCTb7iryikvLbqbR58oFHbNYX4CM6EzyNGSKfcdBKp1gWI5Gcn2Aaw==";
       };
     };
     "bittorrent-dht-6.4.2" = {
@@ -12568,13 +12910,13 @@ let
         sha512 = "tSh9HdQgwyEAfo1jzoGEis6o/zs4CcdRTchG93XVl5jct+DCAN90M5MVUV76k2vJ9Xg3GAzLB5NLsY/vnVTh6w==";
       };
     };
-    "bittorrent-protocol-3.4.1" = {
+    "bittorrent-protocol-3.4.2" = {
       name = "bittorrent-protocol";
       packageName = "bittorrent-protocol";
-      version = "3.4.1";
+      version = "3.4.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bittorrent-protocol/-/bittorrent-protocol-3.4.1.tgz";
-        sha512 = "3qBW4ZZrUZKN7HzHbX4+kbiphrTNeraMp3i9n3wobicysjibAV8SBDY+sGiBN4SgXV6WvEW4kyRPIjoSqW+khw==";
+        url = "https://registry.npmjs.org/bittorrent-protocol/-/bittorrent-protocol-3.4.2.tgz";
+        sha512 = "a7ueJzmCImWIXfKrJ+dT6mgqi5+LFByAXoMXhV/cYt/y8kplaC8N9ZWfpiTidJY4H2o1GTsyMy73o62a/rZ0Ow==";
       };
     };
     "bittorrent-tracker-7.7.0" = {
@@ -12586,13 +12928,13 @@ let
         sha1 = "ffd2eabc141d36ed5c1817df7e992f91fd7fc65c";
       };
     };
-    "bittorrent-tracker-9.17.2" = {
+    "bittorrent-tracker-9.17.3" = {
       name = "bittorrent-tracker";
       packageName = "bittorrent-tracker";
-      version = "9.17.2";
+      version = "9.17.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bittorrent-tracker/-/bittorrent-tracker-9.17.2.tgz";
-        sha512 = "hXjed0OnB16da+ScJUZnrAZbf9gMgSLKqh5rJebtYnTRgN4o1mX0DOPH3Nf5RFCs935ibhSmZN5nwbkh+3MdEA==";
+        url = "https://registry.npmjs.org/bittorrent-tracker/-/bittorrent-tracker-9.17.3.tgz";
+        sha512 = "Z37yunPPT8pIEkB0Q0bDP1fMke2Rez7JSsmqwqGKoJWh4zjAtFgrEw2GHYNllRRvcy+fkfVPWt7ArvxsGoUmfA==";
       };
     };
     "bl-1.2.3" = {
@@ -12640,6 +12982,15 @@ let
         sha512 = "pkDss4xFVbMb4270aCyGD3qLv92314Et+FsKzilCLxDz5DuZ2/1g3w4nmBbu6nKApPspnjG7JcwTjGZnduB1yg==";
       };
     };
+    "blake2b-universal-1.0.1" = {
+      name = "blake2b-universal";
+      packageName = "blake2b-universal";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/blake2b-universal/-/blake2b-universal-1.0.1.tgz";
+        sha512 = "vmMqpF8E9RCde8/+Su/s2rZRxOBwAYQsTyCgok4kLWhWrzMrX0CzID6pVheNJSESY0S0FNTOG4QfRJqnSLOjFA==";
+      };
+    };
     "blake2b-wasm-1.1.7" = {
       name = "blake2b-wasm";
       packageName = "blake2b-wasm";
@@ -12946,15 +13297,6 @@ let
         sha512 = "1t2jGC59hIiiSudf3OK6Z2E1wdnfSXBuEfbawpS33y3XHgkPFwt+IzEI8Xvqk/MqgXNRBVPhG8A5+SdYoeLT7A==";
       };
     };
-    "bolt07-1.7.1" = {
-      name = "bolt07";
-      packageName = "bolt07";
-      version = "1.7.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/bolt07/-/bolt07-1.7.1.tgz";
-        sha512 = "vZCX56PB0274YW8BuCE91xWgqCPkfndBkknYYZFajX6Zr/KByMDXKQ2t1KKSYVkzzTL0rqeLWyQKdL6gJU1zHA==";
-      };
-    };
     "bolt07-1.7.3" = {
       name = "bolt07";
       packageName = "bolt07";
@@ -12964,15 +13306,6 @@ let
         sha512 = "zXhf60qEpFXwRTeoaJ+0SyPw/jzBtIHZLCJBvaa0rFGiiQKdWXdaiIWeyIkxl74p/UGUv4BQsbkAgB0Em/1QOQ==";
       };
     };
-    "bolt09-0.1.3" = {
-      name = "bolt09";
-      packageName = "bolt09";
-      version = "0.1.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/bolt09/-/bolt09-0.1.3.tgz";
-        sha512 = "xFfW/ix6qSzBVGGt3jgpG/SX1LgVvGUYxA/0yC6uaPAjgqbdqmbDZzNEqMRps7Z8Vp1H3yfO5JXQuX54n/GzZg==";
-      };
-    };
     "bolt09-0.1.5" = {
       name = "bolt09";
       packageName = "bolt09";
@@ -13108,6 +13441,15 @@ let
         sha1 = "0c1817c48063a88d96cc3d516c55e57fff5d9ecb";
       };
     };
+    "boxen-0.6.0" = {
+      name = "boxen";
+      packageName = "boxen";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/boxen/-/boxen-0.6.0.tgz";
+        sha1 = "8364d4248ac34ff0ef1b2f2bf49a6c60ce0d81b6";
+      };
+    };
     "boxen-1.3.0" = {
       name = "boxen";
       packageName = "boxen";
@@ -13774,6 +14116,24 @@ let
         sha512 = "I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==";
       };
     };
+    "buffer-json-2.0.0" = {
+      name = "buffer-json";
+      packageName = "buffer-json";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-json/-/buffer-json-2.0.0.tgz";
+        sha512 = "+jjPFVqyfF1esi9fvfUs3NqM0pH1ziZ36VP4hmA/y/Ssfo/5w5xHKfTw9BwQjoJ1w/oVtpLomqwUHKdefGyuHw==";
+      };
+    };
+    "buffer-json-encoding-1.0.2" = {
+      name = "buffer-json-encoding";
+      packageName = "buffer-json-encoding";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-json-encoding/-/buffer-json-encoding-1.0.2.tgz";
+        sha512 = "zH4Q0aqJnv0xPVX+Imcp+EbiyYg9xq7//mvShmQ08E6wC1EeYg2+1OG2n9EEu0rfiuYjP+j5LsSmQVufdqflrg==";
+      };
+    };
     "buffer-map-0.0.7" = {
       name = "buffer-map";
       packageName = "buffer-map";
@@ -13819,15 +14179,6 @@ let
         sha1 = "26e61ed1422fb70dd42e6e36729ed51d855fe8d9";
       };
     };
-    "buffer-xor-2.0.2" = {
-      name = "buffer-xor";
-      packageName = "buffer-xor";
-      version = "2.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/buffer-xor/-/buffer-xor-2.0.2.tgz";
-        sha512 = "eHslX0bin3GB+Lx2p7lEYRShRewuNZL3fUl4qlVJGGiwoPGftmt8JQgk2Y9Ji5/01TnVDo33E5b5O3vUB1HdqQ==";
-      };
-    };
     "buffermaker-1.2.1" = {
       name = "buffermaker";
       packageName = "buffermaker";
@@ -14044,6 +14395,15 @@ let
         sha512 = "crQdqyCwhokxwV1UyDzLZanhkugAgft7vt0qbbdt60C6Zf3CAiGmtUCylbtYwrU6loOUw3euGrNtW1J651ot1A==";
       };
     };
+    "byte-stream-2.1.0" = {
+      name = "byte-stream";
+      packageName = "byte-stream";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/byte-stream/-/byte-stream-2.1.0.tgz";
+        sha1 = "32eecba6253821d69510b9cf34b315ce3e55b31a";
+      };
+    };
     "bytebuffer-3.5.5" = {
       name = "bytebuffer";
       packageName = "bytebuffer";
@@ -14242,15 +14602,6 @@ let
         sha1 = "26d208ea89e37b5cbde60250a15f031c16a4d66b";
       };
     };
-    "callback-stream-1.1.0" = {
-      name = "callback-stream";
-      packageName = "callback-stream";
-      version = "1.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/callback-stream/-/callback-stream-1.1.0.tgz";
-        sha1 = "4701a51266f06e06eaa71fc17233822d875f4908";
-      };
-    };
     "caller-0.0.1" = {
       name = "caller";
       packageName = "caller";
@@ -14449,13 +14800,13 @@ let
         sha512 = "bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==";
       };
     };
-    "caniuse-lite-1.0.30001241" = {
+    "caniuse-lite-1.0.30001246" = {
       name = "caniuse-lite";
       packageName = "caniuse-lite";
-      version = "1.0.30001241";
+      version = "1.0.30001246";
       src = fetchurl {
-        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001241.tgz";
-        sha512 = "1uoSZ1Pq1VpH0WerIMqwptXHNNGfdl7d1cJUFs80CwQ/lVzdhTvsFZCeNFslze7AjsQnb4C85tzclPa1VShbeQ==";
+        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001246.tgz";
+        sha512 = "Tc+ff0Co/nFNbLOrziBXmMVtpt9S2c2Y+Z9Nk9Khj09J+0zR9ejvIW5qkZAErCbOrVODCx/MN+GpB5FNBs5GFA==";
       };
     };
     "canvas-2.8.0" = {
@@ -14584,22 +14935,22 @@ let
         sha512 = "Cg8/ZSBEa8ZVY9HspcGUYaK63d/bN7rqS3CYCzEGUxuYv6UlmcjzDUz2fCFFHyTvUW5Pk0I+3hkA3iXlIj6guA==";
       };
     };
-    "cbor-7.0.4" = {
+    "cbor-7.0.5" = {
       name = "cbor";
       packageName = "cbor";
-      version = "7.0.4";
+      version = "7.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cbor/-/cbor-7.0.4.tgz";
-        sha512 = "9hBTn31l7+9qteBso7+HPp2R5ytqFRBd98fHK4ZTpvrba8V7CuoOsEL0S6vf7+11gubMTd3RW97lOgMTl5SNfg==";
+        url = "https://registry.npmjs.org/cbor/-/cbor-7.0.5.tgz";
+        sha512 = "0aaAPgW92lLmypb9iCd22k7tSD1FbF6dps8VQzmIBKY6ych2gO09b2vo/SbaLTmezJuB8Kh88Rvpl/Uq52mNZg==";
       };
     };
-    "cbor-7.0.5" = {
+    "cbor-7.0.6" = {
       name = "cbor";
       packageName = "cbor";
-      version = "7.0.5";
+      version = "7.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cbor/-/cbor-7.0.5.tgz";
-        sha512 = "0aaAPgW92lLmypb9iCd22k7tSD1FbF6dps8VQzmIBKY6ych2gO09b2vo/SbaLTmezJuB8Kh88Rvpl/Uq52mNZg==";
+        url = "https://registry.npmjs.org/cbor/-/cbor-7.0.6.tgz";
+        sha512 = "rgt2RFogHGDLFU5r0kSfyeBc+de55DwYHP73KxKsQxsR5b0CYuQPH6AnJaXByiohpLdjQqj/K0SFcOV+dXdhSA==";
       };
     };
     "ccount-1.1.0" = {
@@ -14656,6 +15007,15 @@ let
         sha512 = "eoQC/yAgW3gKTKxjzyClvi+UzuY97YCjcl+lSqbsGIy7HeGaWxCPOQFivhUYm27hgsBMhsJJFya3kGvK6PMIcQ==";
       };
     };
+    "chacha20-universal-1.0.4" = {
+      name = "chacha20-universal";
+      packageName = "chacha20-universal";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chacha20-universal/-/chacha20-universal-1.0.4.tgz";
+        sha512 = "/IOxdWWNa7nRabfe7+oF+jVkGjlr2xUL4J8l/OvzZhj+c9RpMqoo3Dq+5nU1j/BflRV4BKnaQ4+4oH1yBpQG1Q==";
+      };
+    };
     "chai-4.3.4" = {
       name = "chai";
       packageName = "chai";
@@ -14962,15 +15322,6 @@ let
         sha1 = "5c710f2bab95653272842ba01c6ea61b3545ec35";
       };
     };
-    "cheerio-0.22.0" = {
-      name = "cheerio";
-      packageName = "cheerio";
-      version = "0.22.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz";
-        sha1 = "a9baa860a3f9b595a6b81b1a86873121ed3a269e";
-      };
-    };
     "cheerio-1.0.0-rc.10" = {
       name = "cheerio";
       packageName = "cheerio";
@@ -14998,6 +15349,15 @@ let
         sha512 = "qocaHPv5ypefh6YNxvnbABM07KMxExbtbfuJoIie3iZXX1ERwYmJcIiRrr9H05ucQP1k28dav8rpdDgjQd8drg==";
       };
     };
+    "chevrotain-4.1.1" = {
+      name = "chevrotain";
+      packageName = "chevrotain";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chevrotain/-/chevrotain-4.1.1.tgz";
+        sha512 = "NQky1HQyiAzxsxpq4Ppt47SYO2U3JLtmfs85QPf3kYSzGBjjp5AA8kqjH8hCjGFRpaQ781QOk1ragQIOkBgUTA==";
+      };
+    };
     "child-process-1.0.2" = {
       name = "child-process";
       packageName = "child-process";
@@ -15061,6 +15421,15 @@ let
         sha512 = "c4PR2egjNjI1um6bamCQ6bUNPDiyofNQruHvKgHQ4gDUP/ITSVSzNsiI5OWtHOsX323i5ha/kk4YmOZ1Ktg7KA==";
       };
     };
+    "chokidar-3.3.0" = {
+      name = "chokidar";
+      packageName = "chokidar";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz";
+        sha512 = "dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==";
+      };
+    };
     "chokidar-3.5.1" = {
       name = "chokidar";
       packageName = "chokidar";
@@ -15619,13 +15988,13 @@ let
         sha512 = "/1owvF0SZ5Gn54cgrikJ0QskgTzeg30HGjkmjFoaHDJzAqFpuX1DBpFR8aLvsE1J5s9MgeYRENQK4BFwOag5VA==";
       };
     };
-    "cli-ux-5.6.2" = {
+    "cli-ux-5.6.3" = {
       name = "cli-ux";
       packageName = "cli-ux";
-      version = "5.6.2";
+      version = "5.6.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cli-ux/-/cli-ux-5.6.2.tgz";
-        sha512 = "CuiamOCfPaOTjbuAQXdFsfZLQmO6XSmCDxulq4y8pIets1hZ3eaysHppPKGdrcdgLugUGUap5+bXd3IukJASBA==";
+        url = "https://registry.npmjs.org/cli-ux/-/cli-ux-5.6.3.tgz";
+        sha512 = "/oDU4v8BiDjX2OKcSunGH0iGDiEtj2rZaGyqNuv9IT4CgcSMyVWAMfn0+rEHaOc4n9ka78B0wo1+N1QX89f7mw==";
       };
     };
     "cli-width-1.1.1" = {
@@ -16087,13 +16456,13 @@ let
         sha512 = "3WQV/Fpa77nvzjUlc+0u53uIroJyyMB2Qwl++aXpAiDIsrsiAQq4uCURwdRBRX+eLkOTIAmT0L4qna3T7+2pUg==";
       };
     };
-    "codemaker-1.30.0" = {
+    "codemaker-1.31.0" = {
       name = "codemaker";
       packageName = "codemaker";
-      version = "1.30.0";
+      version = "1.31.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/codemaker/-/codemaker-1.30.0.tgz";
-        sha512 = "yntR55JhhVlZTfR4CPV6IrCULovPDrk3z0yQR7/ygEtNxEOQrHhX17djJ0rVmIwCJUawv+ODTJ1ipJY9CbxJQw==";
+        url = "https://registry.npmjs.org/codemaker/-/codemaker-1.31.0.tgz";
+        sha512 = "gyWhtZ4YU5b+pIijCfOZkGrH0DCkUQXyRG3BQtDlnwFJuXyJnDoz+dpM5ErkJuDD9w6Qns4aryyG/bU78huaSg==";
       };
     };
     "codepage-1.4.0" = {
@@ -16177,13 +16546,13 @@ let
         sha512 = "vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg==";
       };
     };
-    "color-3.1.3" = {
+    "color-3.2.1" = {
       name = "color";
       packageName = "color";
-      version = "3.1.3";
+      version = "3.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/color/-/color-3.1.3.tgz";
-        sha512 = "xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ==";
+        url = "https://registry.npmjs.org/color/-/color-3.2.1.tgz";
+        sha512 = "aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==";
       };
     };
     "color-convert-1.9.3" = {
@@ -16222,13 +16591,13 @@ let
         sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==";
       };
     };
-    "color-string-1.5.5" = {
+    "color-string-1.6.0" = {
       name = "color-string";
       packageName = "color-string";
-      version = "1.5.5";
+      version = "1.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/color-string/-/color-string-1.5.5.tgz";
-        sha512 = "jgIoum0OfQfq9Whcfc2z/VhCNcmQjWbey6qBX0vqt7YICflUmBCh9E9CiQD5GSJ+Uehixm3NUwHVhqUAWRivZg==";
+        url = "https://registry.npmjs.org/color-string/-/color-string-1.6.0.tgz";
+        sha512 = "c/hGS+kRWJutUBEngKKmk4iH3sD59MBkoxVapS/0wgpCz2u7XsNloxknyvBhzwEs1IbV36D9PwqLPJ2DTu3vMA==";
       };
     };
     "color-support-1.1.3" = {
@@ -16348,15 +16717,6 @@ let
         sha1 = "a58d0df042c186fcf822a8e8015f5450d2d79a8b";
       };
     };
-    "combined-stream-1.0.6" = {
-      name = "combined-stream";
-      packageName = "combined-stream";
-      version = "1.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz";
-        sha1 = "723e7df6e801ac5613113a7e445a9b69cb632818";
-      };
-    };
     "combined-stream-1.0.8" = {
       name = "combined-stream";
       packageName = "combined-stream";
@@ -16582,15 +16942,6 @@ let
         sha512 = "U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==";
       };
     };
-    "commander-7.0.0" = {
-      name = "commander";
-      packageName = "commander";
-      version = "7.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/commander/-/commander-7.0.0.tgz";
-        sha512 = "ovx/7NkTrnPuIV8sqk/GjUIIM1+iUQeqA3ye2VNpq9sVoiZsooObWlQy+OPWGI17GDaEoybuAGJm6U8yC077BA==";
-      };
-    };
     "commander-7.1.0" = {
       name = "commander";
       packageName = "commander";
@@ -16951,6 +17302,15 @@ let
         sha1 = "c35781d0501d268c25c54b8b17f6240e8a4fb021";
       };
     };
+    "configstore-2.1.0" = {
+      name = "configstore";
+      packageName = "configstore";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/configstore/-/configstore-2.1.0.tgz";
+        sha1 = "737a3a7036e9886102aa6099e47bb33ab1aba1a1";
+      };
+    };
     "configstore-3.1.5" = {
       name = "configstore";
       packageName = "configstore";
@@ -17131,13 +17491,13 @@ let
         sha1 = "c20b96d8c617748aaf1c16021760cd27fcb8cb75";
       };
     };
-    "constructs-3.3.94" = {
+    "constructs-3.3.99" = {
       name = "constructs";
       packageName = "constructs";
-      version = "3.3.94";
+      version = "3.3.99";
       src = fetchurl {
-        url = "https://registry.npmjs.org/constructs/-/constructs-3.3.94.tgz";
-        sha512 = "P2Sfaa+CHt6lVlIdSry4hj1cQsg71J7eXJm9zyPpZNi/FDeHu/vcOmon84v8effvBoF5e7ef2tfVCwwMXcu9Jw==";
+        url = "https://registry.npmjs.org/constructs/-/constructs-3.3.99.tgz";
+        sha512 = "uX3bZtp6Zn53Utyurp4DrKolIDUuiDddHVTgsQ39KhVRkQ8TRMtl0nyXllysMtu78t8zLo9QygeyQ0QOBy3LHw==";
       };
     };
     "consume-http-header-1.0.0" = {
@@ -17213,13 +17573,13 @@ let
         sha1 = "0e790b3abfef90f6ecb77ae8585db9099caf7578";
       };
     };
-    "contentful-management-7.27.0" = {
+    "contentful-management-7.30.0" = {
       name = "contentful-management";
       packageName = "contentful-management";
-      version = "7.27.0";
+      version = "7.30.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/contentful-management/-/contentful-management-7.27.0.tgz";
-        sha512 = "HGwUmR0160TI9RNiqLWjlFpPmjiXGC2VAgtzqM0mXMCJKJTzLBmsETVycQ7Nwip+2+CHdDRta5a9vQEN89UNTw==";
+        url = "https://registry.npmjs.org/contentful-management/-/contentful-management-7.30.0.tgz";
+        sha512 = "2aAIqLrxxCJt2bWg1LN+wxjYaevAHTsfZGkIPA5QRKK11WhpffrUMkTthbED6UWaY58BAM0TYXT3Z0s7nFu5zg==";
       };
     };
     "contentful-sdk-core-6.8.0" = {
@@ -17303,13 +17663,13 @@ let
         sha512 = "5GLsbnkR/7A89RyHLvvoExbiGbd9xKdKqDTrArnPbOqBqG/2wIosu0fHwpeIRI8Tl94MhVNBXcLJZl92ZQ5USw==";
       };
     };
-    "conventional-changelog-core-4.2.2" = {
+    "conventional-changelog-core-4.2.3" = {
       name = "conventional-changelog-core";
       packageName = "conventional-changelog-core";
-      version = "4.2.2";
+      version = "4.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-4.2.2.tgz";
-        sha512 = "7pDpRUiobQDNkwHyJG7k9f6maPo9tfPzkSWbRq97GGiZqisElhnvUZSvyQH20ogfOjntB5aadvv6NNcKL1sReg==";
+        url = "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-4.2.3.tgz";
+        sha512 = "MwnZjIoMRL3jtPH5GywVNqetGILC7g6RQFvdb8LRU/fA/338JbeWAku3PZ8yQ+mtVRViiISqJlb0sOz0htBZig==";
       };
     };
     "conventional-changelog-preset-loader-2.3.4" = {
@@ -17321,13 +17681,13 @@ let
         sha512 = "GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g==";
       };
     };
-    "conventional-changelog-writer-4.1.0" = {
+    "conventional-changelog-writer-5.0.0" = {
       name = "conventional-changelog-writer";
       packageName = "conventional-changelog-writer";
-      version = "4.1.0";
+      version = "5.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.1.0.tgz";
-        sha512 = "WwKcUp7WyXYGQmkLsX4QmU42AZ1lqlvRW9mqoyiQzdD+rJWbTepdWoKJuwXTS+yq79XKnQNa93/roViPQrAQgw==";
+        url = "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-5.0.0.tgz";
+        sha512 = "HnDh9QHLNWfL6E1uHz6krZEQOgm8hN7z/m7tT16xwd802fwgMN0Wqd7AQYVkhpsjDUx/99oo+nGgvKF657XP5g==";
       };
     };
     "conventional-commits-filter-2.0.7" = {
@@ -17690,6 +18050,15 @@ let
         sha512 = "waKkgHU2P19huhuMjCqCDWTYjxCIHoB+nnYjI7pVMUOC1giWxMNDrXkPw9QjWY+PWCFm49bD3wA/J+c7BGZ+og==";
       };
     };
+    "corestore-5.8.2" = {
+      name = "corestore";
+      packageName = "corestore";
+      version = "5.8.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/corestore/-/corestore-5.8.2.tgz";
+        sha512 = "8OJyqGo1m3PyVvQtUoVcKYz4m4QoBAJE/2rNMJ8SD/U03NGD1z1cYep/n/32I0f3IbujYP5+4lIfBMIDkasB2w==";
+      };
+    };
     "cors-2.8.5" = {
       name = "cors";
       packageName = "cors";
@@ -17897,13 +18266,13 @@ let
         sha1 = "06be7abef947a3f14a30fd610671d401bca8b7b6";
       };
     };
-    "create-gatsby-1.8.0" = {
+    "create-gatsby-1.10.0" = {
       name = "create-gatsby";
       packageName = "create-gatsby";
-      version = "1.8.0";
+      version = "1.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/create-gatsby/-/create-gatsby-1.8.0.tgz";
-        sha512 = "AW3PZONTFfTMKmUfHbpwHebL8/QCbQ0qPwH9piNHen4/7EeZyaN7ZzeilKMUue4DEi9Om7VKlZtW+bKcVml3bg==";
+        url = "https://registry.npmjs.org/create-gatsby/-/create-gatsby-1.10.0.tgz";
+        sha512 = "EiN8bJepWMN4itheoQ9ul1jNrSWoWy5Cw+kAfF1sN0J7ZWtuYCFfRZX97VRTt6C7bvlHkTw7gew2pUbFS8La+Q==";
       };
     };
     "create-graphback-1.0.1" = {
@@ -17951,15 +18320,6 @@ let
         sha512 = "Pb3XjZNKdCs0Nk46yFKb82y+a3xRQeMvGi1AlJfIV40y/iwkgBqzS5EfqdnakEOvh2jzTOx3v8QxZpkz4hPzyw==";
       };
     };
-    "cron-1.7.2" = {
-      name = "cron";
-      packageName = "cron";
-      version = "1.7.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/cron/-/cron-1.7.2.tgz";
-        sha512 = "+SaJ2OfeRvfQqwXQ2kgr0Y5pzBR/lijf5OpnnaruwWnmI799JfWr2jN2ItOV9s3A/+TFOt6mxvKzQq5F0Jp6VQ==";
-      };
-    };
     "cron-1.8.2" = {
       name = "cron";
       packageName = "cron";
@@ -17969,6 +18329,15 @@ let
         sha512 = "Gk2c4y6xKEO8FSAUTklqtfSr7oTq0CiPQeLBG5Fl0qoXpZyMcj1SG59YL+hqq04bu6/IuEA7lMkYDAplQNKkyg==";
       };
     };
+    "cronosjs-1.7.1" = {
+      name = "cronosjs";
+      packageName = "cronosjs";
+      version = "1.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cronosjs/-/cronosjs-1.7.1.tgz";
+        sha512 = "d6S6+ep7dJxsAG8OQQCdKuByI/S/AV64d9OF5mtmcykOyPu92cAkAnF3Tbc9s5oOaLQBYYQmTNvjqYRkPJ/u5Q==";
+      };
+    };
     "cross-env-5.2.1" = {
       name = "cross-env";
       packageName = "cross-env";
@@ -18059,6 +18428,15 @@ let
         sha1 = "845ff0c0834a3ded9d160daca6d390906bb288cc";
       };
     };
+    "cross-spawn-windows-exe-1.2.0" = {
+      name = "cross-spawn-windows-exe";
+      packageName = "cross-spawn-windows-exe";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cross-spawn-windows-exe/-/cross-spawn-windows-exe-1.2.0.tgz";
+        sha512 = "mkLtJJcYbDCxEG7Js6eUnUNndWjyUZwJ3H7bErmmtOYU/Zb99DyUkpamuIZE0b3bhmJyZ7D90uS6f+CGxRRjOw==";
+      };
+    };
     "crossroads-0.12.2" = {
       name = "crossroads";
       packageName = "crossroads";
@@ -18608,6 +18986,15 @@ let
         sha512 = "X3VvImImJ5q6w0wOgJtxAX+RC06d26egp/A/vdSxqOrsRtAA9biXAkc4PZGj/3gx0+z+gDFri6BpcpwuG1/UEw==";
       };
     };
+    "custom-error-class-1.0.0" = {
+      name = "custom-error-class";
+      packageName = "custom-error-class";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/custom-error-class/-/custom-error-class-1.0.0.tgz";
+        sha512 = "bHT5BAycUbsHYexiPuoIEM/o770u48yWBrZHw/f+BRVkERn19xTgNwcHt79A/AYMxUcOfPjb9OrKoj6rVvPJuA==";
+      };
+    };
     "custom-error-instance-2.1.1" = {
       name = "custom-error-instance";
       packageName = "custom-error-instance";
@@ -19418,13 +19805,13 @@ let
         sha512 = "OD0TZ+B7yP7ZgpJf5K2DIbj3FZvFvxgFUuaqA/V5zTjAtAAXZ1E8bktHxmAGs4x5b7PflqA9LeQ84Og7wYtF7Q==";
       };
     };
-    "dayjs-1.10.5" = {
+    "dayjs-1.10.6" = {
       name = "dayjs";
       packageName = "dayjs";
-      version = "1.10.5";
+      version = "1.10.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dayjs/-/dayjs-1.10.5.tgz";
-        sha512 = "BUFis41ikLz+65iH6LHQCDm4YPMj5r1YFLdupPIyM4SGcXMmtiLQ7U37i+hGS8urIuqe7I/ou3IS1jVc4nbN4g==";
+        url = "https://registry.npmjs.org/dayjs/-/dayjs-1.10.6.tgz";
+        sha512 = "AztC/IOW4L1Q41A86phW5Thhcrco3xuAA+YX/BLpLWWjRcTj5TOt/QImBLmCKlrF7u7k47arTnOyL6GnbG8Hvw==";
       };
     };
     "dayjs-1.8.36" = {
@@ -19535,6 +19922,15 @@ let
         sha1 = "06e1ea8082c2cb14e39806e22e2f6f757f92af39";
       };
     };
+    "debug-1.0.5" = {
+      name = "debug";
+      packageName = "debug";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-1.0.5.tgz";
+        sha1 = "f7241217430f99dec4c2b473eab92228e874c2ac";
+      };
+    };
     "debug-2.2.0" = {
       name = "debug";
       packageName = "debug";
@@ -20318,6 +20714,24 @@ let
         sha1 = "bd5a96d45dbed3011bb81bdf68ddf54be8e1bd4e";
       };
     };
+    "derive-key-1.0.1" = {
+      name = "derive-key";
+      packageName = "derive-key";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/derive-key/-/derive-key-1.0.1.tgz";
+        sha512 = "7DHGLGvxFF8umw8NEGH3n9KKgEN8duk4Fiy4WmN3QgNKEogDhaNIsTDd5JVN7ilB8xw4ike1Q08z8UJSJ7hebA==";
+      };
+    };
+    "derived-key-storage-2.1.0" = {
+      name = "derived-key-storage";
+      packageName = "derived-key-storage";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/derived-key-storage/-/derived-key-storage-2.1.0.tgz";
+        sha512 = "4RKKrpf2YouCASaRHqUvyxtHABGLH7UJWNXPjsJxMvzCj4tettUvuyGsmP2/mpGYhSda7caZkS2oP4rqWjgkZg==";
+      };
+    };
     "des.js-1.0.1" = {
       name = "des.js";
       packageName = "des.js";
@@ -20534,6 +20948,15 @@ let
         sha512 = "y/Ev98AleGvl43YKTNcA2Q+lyFmsmCfTTNWy4cjEJxoLkbobcXtRS0Kvx06daCgr2GdtlwLfNzL553BkktfJoA==";
       };
     };
+    "devtools-protocol-0.0.869402" = {
+      name = "devtools-protocol";
+      packageName = "devtools-protocol";
+      version = "0.0.869402";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.869402.tgz";
+        sha512 = "VvlVYY+VDJe639yHs5PHISzdWTLL3Aw8rO4cvUtwvoxFd6FHbE4OpHHcde52M6096uYYazAmd4l0o5VuFRO2WA==";
+      };
+    };
     "devtools-protocol-0.0.883894" = {
       name = "devtools-protocol";
       packageName = "devtools-protocol";
@@ -20552,6 +20975,15 @@ let
         sha1 = "7f742de066fc748bc8db820569dddce49bf0d456";
       };
     };
+    "dht-rpc-4.9.6" = {
+      name = "dht-rpc";
+      packageName = "dht-rpc";
+      version = "4.9.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dht-rpc/-/dht-rpc-4.9.6.tgz";
+        sha512 = "gzZPsesqOh0Lj0GxjbNhPe42tppSt9qpcMXifcwtr2i3WnhgyhjlXTFrq/po9kl4X98M7+RxwmzpXzPt7hcXwA==";
+      };
+    };
     "di-0.0.1" = {
       name = "di";
       packageName = "di";
@@ -20633,6 +21065,15 @@ let
         sha512 = "/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==";
       };
     };
+    "diff-file-tree-2.5.1" = {
+      name = "diff-file-tree";
+      packageName = "diff-file-tree";
+      version = "2.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/diff-file-tree/-/diff-file-tree-2.5.1.tgz";
+        sha512 = "blHl14Eexjh6i1KV4GmrimpmWNZss82SiFmWEfgCnCBU8SCKxNcSAazwSvpXMIHhmL5kANSXlBK0z8eIbqmgYQ==";
+      };
+    };
     "diff-match-patch-1.0.5" = {
       name = "diff-match-patch";
       packageName = "diff-match-patch";
@@ -20651,13 +21092,13 @@ let
         sha512 = "Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==";
       };
     };
-    "diff2html-3.4.5" = {
+    "diff2html-3.4.7" = {
       name = "diff2html";
       packageName = "diff2html";
-      version = "3.4.5";
+      version = "3.4.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/diff2html/-/diff2html-3.4.5.tgz";
-        sha512 = "EvLFeEq4ZAG3URzajoNr2T1C2oQSRYpG+wlPj6d7xKua1+GY6XjZglTobERZUkMm4LyETTmzqHf19kpQljAcgA==";
+        url = "https://registry.npmjs.org/diff2html/-/diff2html-3.4.7.tgz";
+        sha512 = "QbQMz1qKFxQqqWvpDAxzD37iZb7i9ixVoBjHh7y5PLg1EagYgbrM4Fley4u5YM6i2elNrJNnKjNzyNtGBx3xjw==";
       };
     };
     "diff3-0.0.3" = {
@@ -20894,13 +21335,13 @@ let
         sha512 = "bn1AKpfkFbm0MIioOMHZ5qJzl2uypdBwI4nYNsqvhjsegBhcKJUlCrMPWLx6JEezRjxZmxhtIz/FkBEur2l8Cw==";
       };
     };
-    "dns-packet-5.2.4" = {
+    "dns-packet-5.3.0" = {
       name = "dns-packet";
       packageName = "dns-packet";
-      version = "5.2.4";
+      version = "5.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dns-packet/-/dns-packet-5.2.4.tgz";
-        sha512 = "vgu5Bx5IV8mXmh/9cn1lzn+J7okFlXe1vBRp+kCBJXg1nBED6Z/Q4e+QaDxQRSozMr14p/VQmdXwsf/I2wGjUA==";
+        url = "https://registry.npmjs.org/dns-packet/-/dns-packet-5.3.0.tgz";
+        sha512 = "Nce7YLu6YCgWRvOmDBsJMo9M5/jV3lEZ5vUWnWXYmwURvPylHvq7nkDWhNmk1ZQoZZOP7oQh/S0lSxbisKOfHg==";
       };
     };
     "dns-socket-3.0.0" = {
@@ -21209,13 +21650,13 @@ let
         sha512 = "3VdM/SXBZX2omc9JF9nOPCtDaYQ67BGp5CoLpIQlO2KCAPETs8TcDHacF26jXadGbvUteZzRTeos2fhID5+ucQ==";
       };
     };
-    "dompurify-2.2.9" = {
+    "dompurify-2.3.0" = {
       name = "dompurify";
       packageName = "dompurify";
-      version = "2.2.9";
+      version = "2.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dompurify/-/dompurify-2.2.9.tgz";
-        sha512 = "+9MqacuigMIZ+1+EwoEltogyWGFTJZWU3258Rupxs+2CGs4H914G9er6pZbsme/bvb5L67o2rade9n21e4RW/w==";
+        url = "https://registry.npmjs.org/dompurify/-/dompurify-2.3.0.tgz";
+        sha512 = "VV5C6Kr53YVHGOBKO/F86OYX6/iLTw2yVSI721gKetxpHCK/V5TaLEf9ODjRgl1KLSWRMY6cUhAbv/c+IUnwQw==";
       };
     };
     "domutils-1.4.3" = {
@@ -21263,6 +21704,15 @@ let
         sha512 = "Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==";
       };
     };
+    "dot-prop-3.0.0" = {
+      name = "dot-prop";
+      packageName = "dot-prop";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dot-prop/-/dot-prop-3.0.0.tgz";
+        sha1 = "1b708af094a49c9a0e7dbcad790aba539dac1177";
+      };
+    };
     "dot-prop-4.2.1" = {
       name = "dot-prop";
       packageName = "dot-prop";
@@ -21533,13 +21983,13 @@ let
         sha512 = "07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==";
       };
     };
-    "duplexify-4.1.1" = {
+    "duplexify-4.1.2" = {
       name = "duplexify";
       packageName = "duplexify";
-      version = "4.1.1";
+      version = "4.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/duplexify/-/duplexify-4.1.1.tgz";
-        sha512 = "DY3xVEmVHTv1wSzKNbwoU6nVjzI369Y6sPoqfYr0/xlx3IdX2n94xIszTcjPO8W8ZIv0Wb0PXNcjuZyT4wiICA==";
+        url = "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz";
+        sha512 = "fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==";
       };
     };
     "duration-0.2.2" = {
@@ -21713,13 +22163,13 @@ let
         sha512 = "icoRLHzFz/qxzDh/N4Pi2z4yVHurlsCAYQvsCSG7fCedJ4UJXBS6PoQyGH71IfcqKupcKeK7HX/NkyfG+v6vlQ==";
       };
     };
-    "electron-packager-15.2.0" = {
+    "electron-packager-15.3.0" = {
       name = "electron-packager";
       packageName = "electron-packager";
-      version = "15.2.0";
+      version = "15.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-packager/-/electron-packager-15.2.0.tgz";
-        sha512 = "BaklTBRQy1JTijR3hi8XxHf/uo76rHbDCNM/eQHSblzE9C0NoNfOe86nPxB7y1u2jwlqoEJ4zFiHpTFioKGGRA==";
+        url = "https://registry.npmjs.org/electron-packager/-/electron-packager-15.3.0.tgz";
+        sha512 = "PHcykXinmjPyJcYoNGbOWNsOU25nIbMLHBAfg4caazWzYELFL14FshDZEqqrvVOMEUnqjx/Ktc1NmMIN5ZRomQ==";
       };
     };
     "electron-rebuild-2.3.5" = {
@@ -21731,13 +22181,13 @@ let
         sha512 = "1sQ1DRtQGpglFhc3urD4olMJzt/wxlbnAAsf+WY2xHf5c50ZovivZvCXSpVgTOP9f4TzOMvelWyspyfhxQKHzQ==";
       };
     };
-    "electron-to-chromium-1.3.765" = {
+    "electron-to-chromium-1.3.782" = {
       name = "electron-to-chromium";
       packageName = "electron-to-chromium";
-      version = "1.3.765";
+      version = "1.3.782";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.765.tgz";
-        sha512 = "4NhcsfZYlr1x4FehYkK+R9CNNTOZ8vLcIu8Y1uWehxYp5r/jlCGAfBqChIubEfdtX+rBQpXx4yJuX/dzILH/nw==";
+        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.782.tgz";
+        sha512 = "6AI2se1NqWA1SBf/tlD6tQD/6ZOt+yAhqmrTlh4XZw4/g0Mt3p6JhTQPZxRPxPZiOg0o7ss1EBP/CpYejfnoIA==";
       };
     };
     "electrum-client-git://github.com/janoside/electrum-client" = {
@@ -22435,22 +22885,13 @@ let
         sha512 = "+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ==";
       };
     };
-    "es-module-lexer-0.4.1" = {
-      name = "es-module-lexer";
-      packageName = "es-module-lexer";
-      version = "0.4.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.4.1.tgz";
-        sha512 = "ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA==";
-      };
-    };
-    "es-module-lexer-0.6.0" = {
+    "es-module-lexer-0.7.1" = {
       name = "es-module-lexer";
       packageName = "es-module-lexer";
-      version = "0.6.0";
+      version = "0.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.6.0.tgz";
-        sha512 = "f8kcHX1ArhllUtb/wVSyvygoKCznIjnxhLxy7TCvIiMdT7fL4ZDTIKaadMe6eLvOXg6Wk02UeoFgUoZ2EKZZUA==";
+        url = "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.7.1.tgz";
+        sha512 = "MgtWFl5No+4S3TmhDmCz2ObFGm6lEpTnzbQi+Dd+pw4mlTIZTmM2iAs5gRlmx5zS9luzobCSBSI90JM/1/JgOw==";
       };
     };
     "es-to-primitive-1.2.1" = {
@@ -22777,13 +23218,13 @@ let
         sha512 = "UMfH0VSjP0G4p3EWirscJEQ/cHqnT/iuH6oNZOB94nBjWbMnhGEPxsZm1eyIW0C/9jLI0Fow4W5DXLjEI7mn1g==";
       };
     };
-    "eslint-7.29.0" = {
+    "eslint-7.31.0" = {
       name = "eslint";
       packageName = "eslint";
-      version = "7.29.0";
+      version = "7.31.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eslint/-/eslint-7.29.0.tgz";
-        sha512 = "82G/JToB9qIy/ArBzIWG9xvvwL3R86AlCjtGw+A29OMZDqhTybz/MByORSukGxeI+YPCR4coYyITKk8BFH9nDA==";
+        url = "https://registry.npmjs.org/eslint/-/eslint-7.31.0.tgz";
+        sha512 = "vafgJpSh2ia8tnTkNUkwxGmnumgckLh5aAbLa1xRmIn9+owi8qBNGKL+B881kNKNTy7FFqTEkpNkUvmw0n6PkA==";
       };
     };
     "eslint-config-prettier-8.3.0" = {
@@ -22822,13 +23263,13 @@ let
         sha512 = "Nhc+oVAHm0uz/PkJAWscwIT4ijTrK5fqNqz9QB1D35SbbuMG1uB6Yr5AJpvPSWg+WOw7nYNswerYh0kOk64gqQ==";
       };
     };
-    "eslint-plugin-vue-7.12.1" = {
+    "eslint-plugin-vue-7.14.0" = {
       name = "eslint-plugin-vue";
       packageName = "eslint-plugin-vue";
-      version = "7.12.1";
+      version = "7.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-7.12.1.tgz";
-        sha512 = "xHf/wCt88qmzqQerjaSteUFGASj7fPreglKD4ijnvoKRkoSJ3/H3kuJE8QFFtc+2wjw6hRDs834HH7vpuTJQzg==";
+        url = "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-7.14.0.tgz";
+        sha512 = "IW5A2Td0wEWjFGaGVEO24JNXa8cVFzAQTXrYv/Vu3zyDVS9sjwOpZY0iqub7FOkT2AK3Imtw4U4wg48pP9oWww==";
       };
     };
     "eslint-scope-3.7.3" = {
@@ -22903,15 +23344,6 @@ let
         sha512 = "0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==";
       };
     };
-    "eslint-visitor-keys-3.0.0" = {
-      name = "eslint-visitor-keys";
-      packageName = "eslint-visitor-keys";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.0.0.tgz";
-        sha512 = "mJOZa35trBTb3IyRmo8xmKBZlxf+N7OnUl4+ZhJHs/r+0770Wh/LEACE2pqMGMe27G/4y8P2bYGk4J70IC5k1Q==";
-      };
-    };
     "esmangle-1.0.1" = {
       name = "esmangle";
       packageName = "esmangle";
@@ -22966,15 +23398,6 @@ let
         sha512 = "v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==";
       };
     };
-    "espree-8.0.0" = {
-      name = "espree";
-      packageName = "espree";
-      version = "8.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/espree/-/espree-8.0.0.tgz";
-        sha512 = "y/+i23dwTjIDJrYCcjcAMr3c3UGbPIjC6THMQKjWmhP97fW0FPiI89kmpKfmgV/5jrkIi6toQP+CMm3qBE1Hig==";
-      };
-    };
     "esprima-1.1.1" = {
       name = "esprima";
       packageName = "esprima";
@@ -23497,6 +23920,15 @@ let
         sha512 = "7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==";
       };
     };
+    "execa-0.4.0" = {
+      name = "execa";
+      packageName = "execa";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-0.4.0.tgz";
+        sha1 = "4eb6467a36a095fabb2970ff9d5e3fb7bce6ebc3";
+      };
+    };
     "execa-0.7.0" = {
       name = "execa";
       packageName = "execa";
@@ -23587,15 +24019,6 @@ let
         sha512 = "0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow==";
       };
     };
-    "executable-4.1.1" = {
-      name = "executable";
-      packageName = "executable";
-      version = "4.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz";
-        sha512 = "8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==";
-      };
-    };
     "exegesis-2.5.7" = {
       name = "exegesis";
       packageName = "exegesis";
@@ -23713,13 +24136,13 @@ let
         sha1 = "a793d3ac0cad4c6ab571e9968fbbab6cb2532929";
       };
     };
-    "expo-pwa-0.0.87" = {
+    "expo-pwa-0.0.90" = {
       name = "expo-pwa";
       packageName = "expo-pwa";
-      version = "0.0.87";
+      version = "0.0.90";
       src = fetchurl {
-        url = "https://registry.npmjs.org/expo-pwa/-/expo-pwa-0.0.87.tgz";
-        sha512 = "ijNE0hKcOcCTU4Ve0AC69VLCe2d3xLcyU38oCXm2s/r/kuzMvs6bb1ecIrwWUt6Y7JpAPFYGemzxInDW5zcXQg==";
+        url = "https://registry.npmjs.org/expo-pwa/-/expo-pwa-0.0.90.tgz";
+        sha512 = "0uVXBgpe4Vt3xBKgAu7mmT+TMxiRJHXtMcP7FhaAPv1LkCxDrtMuK+SYERRJlTYRLX/qA2yDIWix3ySzvpWWzA==";
       };
     };
     "express-2.5.11" = {
@@ -23767,13 +24190,13 @@ let
         sha512 = "HdmbVF4V4w1q/iz++RV7bUxIeepTukWewiJGkoCKQMtvPF11MLTa7It9PRc/reysXXZSEyD4Pthchju+IUbMiQ==";
       };
     };
-    "express-graphql-0.9.0" = {
+    "express-graphql-0.12.0" = {
       name = "express-graphql";
       packageName = "express-graphql";
-      version = "0.9.0";
+      version = "0.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/express-graphql/-/express-graphql-0.9.0.tgz";
-        sha512 = "wccd9Lb6oeJ8yHpUs/8LcnGjFUUQYmOG9A5BNLybRdCzGw0PeUrtBxsIR8bfiur6uSW4OvPkVDoYH06z6/N9+w==";
+        url = "https://registry.npmjs.org/express-graphql/-/express-graphql-0.12.0.tgz";
+        sha512 = "DwYaJQy0amdy3pgNtiTDuGGM2BLdj+YO2SgbKoLliCfuHv3VVTt7vNG/ZqK2hRYjtYHE2t2KB705EU94mE64zg==";
       };
     };
     "express-handlebars-3.1.0" = {
@@ -23839,15 +24262,6 @@ let
         sha512 = "94JMAXcBkBHYazc8y85akJQvq/7PFdBHOWc5B421liyQXdDzvq49ct4tbTHRnpOZ3aPlsufLGVQdhJIuGUNiTQ==";
       };
     };
-    "express-session-1.17.1" = {
-      name = "express-session";
-      packageName = "express-session";
-      version = "1.17.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/express-session/-/express-session-1.17.1.tgz";
-        sha512 = "UbHwgqjxQZJiWRTMyhvWGvjBQduGCSBDhhZXYenziMFjxst5rMV+aJZ6hKPHZnPyHGsrqRICxtX8jtEbm/z36Q==";
-      };
-    };
     "express-session-1.17.2" = {
       name = "express-session";
       packageName = "express-session";
@@ -24064,15 +24478,6 @@ let
         sha512 = "AEo4zm+TenK7zQorGK1f9mJ8L14hnTDi2ZQPR+Mub1NX8zimka1mXpV5LpH8x9HoUmFSHZCfLHqWvp0Y4FxxzQ==";
       };
     };
-    "extract-zip-1.7.0" = {
-      name = "extract-zip";
-      packageName = "extract-zip";
-      version = "1.7.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz";
-        sha512 = "xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==";
-      };
-    };
     "extract-zip-2.0.1" = {
       name = "extract-zip";
       packageName = "extract-zip";
@@ -24244,6 +24649,15 @@ let
         sha512 = "0EMw4TTUxsMDpDkCg0rXor2gsg+npVrMIHbEhvD0HZyIhUX6AktC/yasm+qKwfyswd06Qy95ZKk8p2crTo0iPA==";
       };
     };
+    "fast-fifo-1.0.0" = {
+      name = "fast-fifo";
+      packageName = "fast-fifo";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.0.0.tgz";
+        sha512 = "4VEXmjxLj7sbs8J//cn2qhRap50dGzF5n8fjay8mau+Jn4hxSeR3xPFwxMaQq/pDaq7+KQk0PAbC2+nWDkJrmQ==";
+      };
+    };
     "fast-glob-2.2.7" = {
       name = "fast-glob";
       packageName = "fast-glob";
@@ -24253,13 +24667,13 @@ let
         sha512 = "g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==";
       };
     };
-    "fast-glob-3.2.6" = {
+    "fast-glob-3.2.7" = {
       name = "fast-glob";
       packageName = "fast-glob";
-      version = "3.2.6";
+      version = "3.2.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.6.tgz";
-        sha512 = "GnLuqj/pvQ7pX8/L4J84nijv6sAnlwvSDpMkJi9i7nPmPxGtRPkBSStfvDW5l6nMdX9VWe+pkKWFTgD+vF2QSQ==";
+        url = "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz";
+        sha512 = "rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==";
       };
     };
     "fast-json-parse-1.0.3" = {
@@ -24325,13 +24739,22 @@ let
         sha1 = "3d8a5c66883a16a30ca8643e851f19baa7797917";
       };
     };
-    "fast-printf-1.6.5" = {
+    "fast-memoize-2.5.2" = {
+      name = "fast-memoize";
+      packageName = "fast-memoize";
+      version = "2.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-memoize/-/fast-memoize-2.5.2.tgz";
+        sha512 = "Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw==";
+      };
+    };
+    "fast-printf-1.6.6" = {
       name = "fast-printf";
       packageName = "fast-printf";
-      version = "1.6.5";
+      version = "1.6.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-printf/-/fast-printf-1.6.5.tgz";
-        sha512 = "0+bBTCT4SOmHg3NFsPO39s+EwUdQiKig4MMye7fM0ea24YprUW35AZuWVQdE0SMBRI/GIQldj8ydQGuVRE95UQ==";
+        url = "https://registry.npmjs.org/fast-printf/-/fast-printf-1.6.6.tgz";
+        sha512 = "Uz/uW6R1Fd8YqCGeoQosRIfB4dBbr8uMbFVdEci2AyXYcfucFqhpSMAGs8skRRdZd+MGCDBu48+B8Zmu7Pta5A==";
       };
     };
     "fast-redact-3.0.1" = {
@@ -24352,13 +24775,13 @@ let
         sha512 = "QJYT/i0QYoiZBQ71ivxdyTqkwKkQ0oxACXHYxH2zYHJEgzi2LsbjgvtzTbLi1SZcF190Db2YP7I7eTsU2egOlw==";
       };
     };
-    "fast-safe-stringify-2.0.7" = {
+    "fast-safe-stringify-2.0.8" = {
       name = "fast-safe-stringify";
       packageName = "fast-safe-stringify";
-      version = "2.0.7";
+      version = "2.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz";
-        sha512 = "Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==";
+        url = "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.8.tgz";
+        sha512 = "lXatBjf3WPjmWD6DpIZxkeSsCOwqI0maYMpgDlx8g4U2qi4lbjA9oH/HD2a87G+KfsUmo5WbJFmqBZlPxtptag==";
       };
     };
     "fast-stringify-1.1.2" = {
@@ -24424,13 +24847,13 @@ let
         sha512 = "XJ+vbiXYjmxc32VEpXScAq7mBg3vqh90OjLfiuyQ0zAtXpgICdVgGjKHep1kLGQufyuCBiEYpl6ZKcw79chTpA==";
       };
     };
-    "fastq-1.11.0" = {
+    "fastq-1.11.1" = {
       name = "fastq";
       packageName = "fastq";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz";
-        sha512 = "7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==";
+        url = "https://registry.npmjs.org/fastq/-/fastq-1.11.1.tgz";
+        sha512 = "HOnr8Mc60eNYl1gzwp6r5RoUyAn5/glBolUzP/Ez6IFVPMPirxn/9phgL6zhOtaTy7ISwPvQ+wT+hfcRZh/bzw==";
       };
     };
     "fault-1.0.4" = {
@@ -24703,13 +25126,13 @@ let
         sha512 = "sXAMgFk67fQLcetXustxfKX+PZgHIUFn96Xld9uH8aXPdX3xOp0/jg9OdouVTvQrf7mrn+wAa4jN/y9fUOOiRA==";
       };
     };
-    "file-type-16.5.0" = {
+    "file-type-16.5.2" = {
       name = "file-type";
       packageName = "file-type";
-      version = "16.5.0";
+      version = "16.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/file-type/-/file-type-16.5.0.tgz";
-        sha512 = "OxgWA9tbL8N/WP00GD1z8O0MiwQKFyWRs1q+3FhjdvcGgKqwxcejyGWso3n4/IMU6DdwV+ARZ4A7TTnPkDcSiw==";
+        url = "https://registry.npmjs.org/file-type/-/file-type-16.5.2.tgz";
+        sha512 = "lnHRZj2USLF3v4C5ZY7/vQQeoTVA1YV9TtD6UUCr9z5Cd0uyutqxPBJxkXzM6lufPNuSfefq/yFmnSPz0C3wNw==";
       };
     };
     "file-type-3.9.0" = {
@@ -24874,6 +25297,15 @@ let
         sha512 = "mjFIpOHC4jbfcTfoh4rkWpI31mF7viw9ikj/JyLoKzqlwG/YsefKfvYlYhdYdg/9mtK2z1AzgN/0LvVQ3zdlSQ==";
       };
     };
+    "filesize-7.0.0" = {
+      name = "filesize";
+      packageName = "filesize";
+      version = "7.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/filesize/-/filesize-7.0.0.tgz";
+        sha512 = "Wsstw+O1lZ9gVmOI1thyeQvODsaoId2qw14lCqIzUhoHKXX7T2hVpB7BR6SvgodMBgWccrx/y2eyV8L7tDmY6A==";
+      };
+    };
     "filestream-5.0.0" = {
       name = "filestream";
       packageName = "filestream";
@@ -24883,6 +25315,15 @@ let
         sha512 = "5H3RqSaJp12THfZiNWodYM7TiKfQvrpX+EIOrB1XvCceTys4yvfEIl8wDp+/yI8qj6Bxym8m0NYWwVXDAet/+A==";
       };
     };
+    "filesystem-constants-1.0.0" = {
+      name = "filesystem-constants";
+      packageName = "filesystem-constants";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/filesystem-constants/-/filesystem-constants-1.0.0.tgz";
+        sha512 = "/ue62eYa8Mk53dc1XXxT1nhwat3ygWMepjrFON8tBVjtjCTVUzM8JTEAQquNoZnmimM4dbxfV9tZeEav1KUccg==";
+      };
+    };
     "fill-range-2.2.4" = {
       name = "fill-range";
       packageName = "fill-range";
@@ -24910,6 +25351,15 @@ let
         sha512 = "qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==";
       };
     };
+    "filled-array-1.1.0" = {
+      name = "filled-array";
+      packageName = "filled-array";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/filled-array/-/filled-array-1.1.0.tgz";
+        sha1 = "c3c4f6c663b923459a9aa29912d2d031f1507f84";
+      };
+    };
     "filter-obj-1.1.0" = {
       name = "filter-obj";
       packageName = "filter-obj";
@@ -25144,13 +25594,13 @@ let
         sha512 = "VoPpKScAzvZ07jtciOY0bJieJwyd/VVCuo4fn3nBLh4iBagzYED7GLQeFBpMpy7HP5edEKTDo8yxaIrYrwb7hg==";
       };
     };
-    "fkill-7.1.1" = {
+    "fkill-7.2.1" = {
       name = "fkill";
       packageName = "fkill";
-      version = "7.1.1";
+      version = "7.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fkill/-/fkill-7.1.1.tgz";
-        sha512 = "jFPrW3qmbPQxjbKUMGPTXbpWoX5plS0BMotAB7q9jwInFd/YdrY40/5Szt4gFroF2BfXHIVuMdQC40X8IcgL3w==";
+        url = "https://registry.npmjs.org/fkill/-/fkill-7.2.1.tgz";
+        sha512 = "eN9cmsIlRdq06wu3m01OOEgQf5Xh/M7REm0jfZ4eL3V3XisjXzfRq3iyqtKS+FhO6wB36FvWRiRGdeSx5KpLAQ==";
       };
     };
     "flagged-respawn-1.0.1" = {
@@ -25162,6 +25612,15 @@ let
         sha512 = "lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==";
       };
     };
+    "flat-4.1.1" = {
+      name = "flat";
+      packageName = "flat";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz";
+        sha512 = "FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==";
+      };
+    };
     "flat-5.0.2" = {
       name = "flat";
       packageName = "flat";
@@ -25243,13 +25702,13 @@ let
         sha512 = "r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==";
       };
     };
-    "flatted-3.2.0" = {
+    "flatted-3.2.1" = {
       name = "flatted";
       packageName = "flatted";
-      version = "3.2.0";
+      version = "3.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/flatted/-/flatted-3.2.0.tgz";
-        sha512 = "XprP7lDrVT+kE2c2YlfiV+IfS9zxukiIOvNamPNsImNhXadSsQEbosItdL9bUQlCZXR13SvPk20BjWSWLA7m4A==";
+        url = "https://registry.npmjs.org/flatted/-/flatted-3.2.1.tgz";
+        sha512 = "OMQjaErSFHmHqZe+PSidH5n8j3O0F2DdnVh8JB4j4eUQ2k6KvB0qGfrKIhapvez5JerBbmWkaLYUYWISaESoXg==";
       };
     };
     "flatten-0.0.1" = {
@@ -25288,13 +25747,13 @@ let
         sha512 = "jlbUu0XkbpXeXhan5xyTqVK1jmEKNxE8hpzznI3TThHTr76GiFwK0iRzhDo4KNy+S9h/KxHaqVhTP86vA6wHCg==";
       };
     };
-    "flow-parser-0.154.0" = {
+    "flow-parser-0.155.1" = {
       name = "flow-parser";
       packageName = "flow-parser";
-      version = "0.154.0";
+      version = "0.155.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/flow-parser/-/flow-parser-0.154.0.tgz";
-        sha512 = "cH9xY/ljOgmqG1n7PU1jffiHhRggoloauwOrOlCWBEX4Y+ml6GA8g//tCVKU+6PO4BXoPF22TFHkS5E1bN3JOQ==";
+        url = "https://registry.npmjs.org/flow-parser/-/flow-parser-0.155.1.tgz";
+        sha512 = "EU55hHBilG20Qu80tMYrVjEIqB3FcXPPJwndNcf6UryvhiF74dQ2FX8zPV1LIpuvkW3P13wgZlsnG94oRihgpw==";
       };
     };
     "fluent-ffmpeg-2.1.2" = {
@@ -25585,13 +26044,13 @@ let
         sha512 = "DUxuQaKoqfNne8iikd14SAkh5uw4+8vNifp6gmA73yYNS6ywLIWSLD/n/mBzHQRpW3J7rbATEakmiA8JvkTyZw==";
       };
     };
-    "fork-ts-checker-webpack-plugin-6.2.0" = {
+    "fork-ts-checker-webpack-plugin-6.2.12" = {
       name = "fork-ts-checker-webpack-plugin";
       packageName = "fork-ts-checker-webpack-plugin";
-      version = "6.2.0";
+      version = "6.2.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.2.0.tgz";
-        sha512 = "DTNbOhq6lRdjYprukX54JMeYJgQ0zMow+R5BMLwWxEX2NAXthIkwnV8DBmsWjwNLSUItKZM4TCCJbtgrtKBu2Q==";
+        url = "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.2.12.tgz";
+        sha512 = "BzXGIfM47q1WFwXsNLl22dQVMFwSBgldL07lvqRJFxgrhT76QQ3nri5PX01Rxfa2RYvv/hqACULO8K5gT8fFuA==";
       };
     };
     "form-data-1.0.0-rc3" = {
@@ -25612,15 +26071,6 @@ let
         sha1 = "33c183acf193276ecaa98143a69e94bfee1750d1";
       };
     };
-    "form-data-2.3.2" = {
-      name = "form-data";
-      packageName = "form-data";
-      version = "2.3.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz";
-        sha1 = "4970498be604c20c005d4f5c23aecd21d6b49099";
-      };
-    };
     "form-data-2.3.3" = {
       name = "form-data";
       packageName = "form-data";
@@ -25747,6 +26197,15 @@ let
         sha512 = "X2KfTIV0cxIk3d7/2Pvp/pxL/xr2MV1WooyEzKtTWYSc1+52VF4YzjBTXqeOlSiZsPCxIBpDGfT9Dyo7WEY0DQ==";
       };
     };
+    "fraction.js-4.1.1" = {
+      name = "fraction.js";
+      packageName = "fraction.js";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fraction.js/-/fraction.js-4.1.1.tgz";
+        sha512 = "MHOhvvxHTfRFpF1geTK9czMIZ6xclsEor2wkIGYYq+PxcQqT7vStJqjhe6S1TenZrMZzo+wlqOufBDVepUEgPg==";
+      };
+    };
     "fragment-cache-0.2.1" = {
       name = "fragment-cache";
       packageName = "fragment-cache";
@@ -25765,6 +26224,15 @@ let
         sha1 = "006775509f3935701784d3ed2fc9f12c9df1bab2";
       };
     };
+    "freemap-1.0.1" = {
+      name = "freemap";
+      packageName = "freemap";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/freemap/-/freemap-1.0.1.tgz";
+        sha512 = "14wmuUdlwYz3KrXwbtHe30k4oHnpDQjFrbx3GIkqZjE64hpwa6WDpvs/8p+08kZbhnip49Z58PX8t08E3H8m1g==";
+      };
+    };
     "freeport-async-2.0.0" = {
       name = "freeport-async";
       packageName = "freeport-async";
@@ -25909,15 +26377,6 @@ let
         sha1 = "f46f0c75b7841f8d200b3348cd4d691d5a099d15";
       };
     };
-    "fs-extra-1.0.0" = {
-      name = "fs-extra";
-      packageName = "fs-extra";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz";
-        sha1 = "cd3ce5f7e7cb6145883fcae3191e9877f8587950";
-      };
-    };
     "fs-extra-10.0.0" = {
       name = "fs-extra";
       packageName = "fs-extra";
@@ -26107,6 +26566,15 @@ let
         sha512 = "WsOqncODWRlkjwll+73bAxVW3JPChDgaPX3DT4iTTm73UmG4VgALa7LaFblP232/DN60itkOrPZ8kaP1feksGQ==";
       };
     };
+    "fsctl-1.0.0" = {
+      name = "fsctl";
+      packageName = "fsctl";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fsctl/-/fsctl-1.0.0.tgz";
+        sha512 = "uNHlfhyUJiVO2kHA6ZBnDkBhG1wM8fII+xGfCi5aBoWR7DLh9Q3nOAWe4fEETQzkptahITI1xbe5r23HuA5ECA==";
+      };
+    };
     "fsevents-1.2.13" = {
       name = "fsevents";
       packageName = "fsevents";
@@ -26116,6 +26584,15 @@ let
         sha512 = "oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==";
       };
     };
+    "fsevents-2.1.3" = {
+      name = "fsevents";
+      packageName = "fsevents";
+      version = "2.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz";
+        sha512 = "Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==";
+      };
+    };
     "fsevents-2.3.2" = {
       name = "fsevents";
       packageName = "fsevents";
@@ -26251,31 +26728,31 @@ let
         sha1 = "cbed2d20a40c1f5679a35908e2b9415733e78db9";
       };
     };
-    "gatsby-core-utils-2.8.0" = {
+    "gatsby-core-utils-2.10.0" = {
       name = "gatsby-core-utils";
       packageName = "gatsby-core-utils";
-      version = "2.8.0";
+      version = "2.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.8.0.tgz";
-        sha512 = "CadvILN4ZyYMYQAp+haxSgE/0k5zIu6y2WcqVSJaQLmmWq0o49Gv4CftVKOEXOtXaN0DEr9e4wWFVBRAYaRHGA==";
+        url = "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.10.0.tgz";
+        sha512 = "xvVebKSrjHkZQQkeEjuAekCAg17KT2l44d/yn7w2dzBGay244m8hoY8LRtLRdsrSp30ix89QklefuP9frEfhbA==";
       };
     };
-    "gatsby-recipes-0.19.0" = {
+    "gatsby-recipes-0.21.0" = {
       name = "gatsby-recipes";
       packageName = "gatsby-recipes";
-      version = "0.19.0";
+      version = "0.21.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gatsby-recipes/-/gatsby-recipes-0.19.0.tgz";
-        sha512 = "yboFABHUNB9+1x/RA13yKU/P0/2K+SaenudC+THshxL4uiUHlbU029iXp6Di2zMfIhak8aZ7FyUrpCieey/0Rw==";
+        url = "https://registry.npmjs.org/gatsby-recipes/-/gatsby-recipes-0.21.0.tgz";
+        sha512 = "oo9ci5G6TiXc5wVnRrTfJhX92ZsjICVa0ldX7aQ/8JR77HelfO3MFfQuIkswla+o0MGcbyxgVoLX45kgzY7aaA==";
       };
     };
-    "gatsby-telemetry-2.8.0" = {
+    "gatsby-telemetry-2.10.0" = {
       name = "gatsby-telemetry";
       packageName = "gatsby-telemetry";
-      version = "2.8.0";
+      version = "2.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-2.8.0.tgz";
-        sha512 = "MlV9Lbminhsz1MUiWJJvZ+8VVhIYBl2AsxJylckGoUp+skGfNq5d3pWSv+u/nU4zVP8T1HUWc1c7KSVq6ggrbw==";
+        url = "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-2.10.0.tgz";
+        sha512 = "uon+KRo6NQqkc6Qk/QTw+RmaxIjFFIK7cSU8XXE3y353il2Tk04Kxct2hMHn8Zdl4TYyKla1T5UIvVV/EfpBcg==";
       };
     };
     "gauge-1.2.7" = {
@@ -26485,13 +26962,13 @@ let
         sha512 = "pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==";
       };
     };
-    "get-pkg-repo-1.4.0" = {
+    "get-pkg-repo-4.1.2" = {
       name = "get-pkg-repo";
       packageName = "get-pkg-repo";
-      version = "1.4.0";
+      version = "4.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz";
-        sha1 = "c73b489c06d80cc5536c2c853f9e05232056972d";
+        url = "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.1.2.tgz";
+        sha512 = "/FjamZL9cBYllEbReZkxF2IMh80d8TJoC4e3bmLNif8ibHw95aj0N/tzqK0kZz9eU/3w3dL6lF4fnnX/sDdW3A==";
       };
     };
     "get-port-3.2.0" = {
@@ -26665,13 +27142,13 @@ let
         sha1 = "5eff8e3e684d569ae4cb2b1282604e8ba62149fa";
       };
     };
-    "gh-release-fetch-2.0.0" = {
+    "gh-release-fetch-2.0.1" = {
       name = "gh-release-fetch";
       packageName = "gh-release-fetch";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gh-release-fetch/-/gh-release-fetch-2.0.0.tgz";
-        sha512 = "04eT1dMAW5dUgnb/zkOxXXHTLaQpWuZi1gM93sP6KMHtIqyNsCiALHnljh+aomm90L4t3VkSKaCdwottLgVLwQ==";
+        url = "https://registry.npmjs.org/gh-release-fetch/-/gh-release-fetch-2.0.1.tgz";
+        sha512 = "Ca5chpW8/yXeJPYdAxDLB8UShrWViOgnlYl4QTlQi4Y6sJnMXrXK9GMjKHyjJtNAw9IiSh0DbcTMiJZyp6vfMg==";
       };
     };
     "git-apply-delta-0.0.7" = {
@@ -26809,13 +27286,13 @@ let
         sha512 = "8mqO63M60lCiNR+6ROvXuX4VI6pVAru4wMn3uUfxq0xmpNwrZYC4Rkrt5rSGUPumJ43ZUJyeMXXq60v03PUY/g==";
       };
     };
-    "git-up-4.0.2" = {
+    "git-up-4.0.5" = {
       name = "git-up";
       packageName = "git-up";
-      version = "4.0.2";
+      version = "4.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/git-up/-/git-up-4.0.2.tgz";
-        sha512 = "kbuvus1dWQB2sSW4cbfTeGpCMd8ge9jx9RKnhXhuJ7tnvT+NIrTVfYZxjtflZddQYcmdOTlkAcjmx7bor+15AQ==";
+        url = "https://registry.npmjs.org/git-up/-/git-up-4.0.5.tgz";
+        sha512 = "YUvVDg/vX3d0syBsk/CKUTib0srcQME0JyHkL5BaYdwLsiCslPWmDSi8PUMo9pXYjrryMcmsCoCgsTpSCJEQaA==";
       };
     };
     "git-url-parse-11.5.0" = {
@@ -26926,6 +27403,15 @@ let
         sha512 = "MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==";
       };
     };
+    "glob-7.1.3" = {
+      name = "glob";
+      packageName = "glob";
+      version = "7.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz";
+        sha512 = "vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==";
+      };
+    };
     "glob-7.1.6" = {
       name = "glob";
       packageName = "glob";
@@ -26980,13 +27466,13 @@ let
         sha512 = "AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==";
       };
     };
-    "glob-parent-6.0.0" = {
+    "glob-parent-6.0.1" = {
       name = "glob-parent";
       packageName = "glob-parent";
-      version = "6.0.0";
+      version = "6.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.0.tgz";
-        sha512 = "Hdd4287VEJcZXUwv1l8a+vXC1GjOQqXe+VS30w/ypihpcnu9M1n3xeYeJu5CBpeEQj2nAab2xxz28GuA3vp4Ww==";
+        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.1.tgz";
+        sha512 = "kEVjS71mQazDBHKcsq4E9u/vUzaLcw1A8EtUeydawvIWQCJM0qQ08G1H7/XTjFUulla6XQiDOG6MXSaG0HDKog==";
       };
     };
     "glob-slash-1.0.0" = {
@@ -27197,13 +27683,13 @@ let
         sha512 = "WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==";
       };
     };
-    "globals-13.9.0" = {
+    "globals-13.10.0" = {
       name = "globals";
       packageName = "globals";
-      version = "13.9.0";
+      version = "13.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz";
-        sha512 = "74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==";
+        url = "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz";
+        sha512 = "piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==";
       };
     };
     "globals-9.18.0" = {
@@ -27377,13 +27863,13 @@ let
         sha512 = "Q+ZjUEvLQj/lrVHF/IQwRo6p3s8Nc44Zk/DALsN+ac3T4HY/g/3rrufkgtl+nZ1TW7DNAw5cTChdVp4apUXVgQ==";
       };
     };
-    "google-auth-library-7.2.0" = {
+    "google-auth-library-7.3.0" = {
       name = "google-auth-library";
       packageName = "google-auth-library";
-      version = "7.2.0";
+      version = "7.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.2.0.tgz";
-        sha512 = "F5mnidUaIXfZZl2FzhZOhboLNR6pIgIPrmP4QAbDKMy+kkb3GOc4r7KndAV9+Kx3VijrQTi4FI/AMLg8VWG6nw==";
+        url = "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.3.0.tgz";
+        sha512 = "MPeeMlnsYnoiiVFMwX3hgaS684aiXrSqKoDP+xL4Ejg4Z0qLvIeg4XsaChemyFI8ZUO7ApwDAzNtgmhWSDNh5w==";
       };
     };
     "google-closure-compiler-js-20170910.0.1" = {
@@ -27395,13 +27881,13 @@ let
         sha512 = "Vric7QFWxzHFxITZ10bmlG1H/5rhODb7hJuWyKWMD8GflpQzRmbMVqkFp3fKvN+U9tPwZItGVhkiOR+84PX3ew==";
       };
     };
-    "google-gax-2.17.0" = {
+    "google-gax-2.19.0" = {
       name = "google-gax";
       packageName = "google-gax";
-      version = "2.17.0";
+      version = "2.19.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/google-gax/-/google-gax-2.17.0.tgz";
-        sha512 = "Ze/Oq0atVNKyKvDzQFU8B82V9w36GELQruXGsiY1jnySbieZ9vS75v98V/Z10PktmSVqis4sQ+FwK2gkgwIiiw==";
+        url = "https://registry.npmjs.org/google-gax/-/google-gax-2.19.0.tgz";
+        sha512 = "2a6WY+p6YMVMmwXmkRqiLreXx67xHDZhkmflcL8aDUkl1csx9ywxEI01veoDXy6T1l0JJD6zLbl5TIbWimmXrw==";
       };
     };
     "google-p12-pem-3.1.0" = {
@@ -27476,6 +27962,15 @@ let
         sha1 = "e5d0ed4af55fc3eef4d56007769d98192bcb2eca";
       };
     };
+    "got-5.7.1" = {
+      name = "got";
+      packageName = "got";
+      version = "5.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/got/-/got-5.7.1.tgz";
+        sha1 = "5f81635a61e4a6589f180569ea4e381680a51f35";
+      };
+    };
     "got-6.7.1" = {
       name = "got";
       packageName = "got";
@@ -27782,6 +28277,15 @@ let
         sha512 = "mCcISYiaRZrJpfqOs0QWa6lfEM/C1V9ASkzFmuz43XBb5s1Vynh+CZy1ECeeJXVGx2PRByjYzb4Y4/zr1byr0w==";
       };
     };
+    "guard-timeout-2.0.0" = {
+      name = "guard-timeout";
+      packageName = "guard-timeout";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/guard-timeout/-/guard-timeout-2.0.0.tgz";
+        sha512 = "35geHv72oal0cRUE5t1tZ5KHm3OVPXzFtiMG8AnRPV5FkkEf84RUpeQ0BCeCZunfSLGATW5ZVyALhJKgM7I/6A==";
+      };
+    };
     "gud-1.0.0" = {
       name = "gud";
       packageName = "gud";
@@ -28286,15 +28790,6 @@ let
         sha512 = "taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==";
       };
     };
-    "hasha-2.2.0" = {
-      name = "hasha";
-      packageName = "hasha";
-      version = "2.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/hasha/-/hasha-2.2.0.tgz";
-        sha1 = "78d7cbfc1e6d66303fe79837365984517b2f6ee1";
-      };
-    };
     "hasha-5.2.2" = {
       name = "hasha";
       packageName = "hasha";
@@ -28529,13 +29024,13 @@ let
         sha512 = "n8aSFscI9r3gfhOcAECAtXFaQ1uy4QSke6bnaL+iymYZ/dWs9cqDqHM+rALfsHUwukUbxsdlECZ0pKmJdQ/4OA==";
       };
     };
-    "help-me-1.1.0" = {
+    "help-me-3.0.0" = {
       name = "help-me";
       packageName = "help-me";
-      version = "1.1.0";
+      version = "3.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/help-me/-/help-me-1.1.0.tgz";
-        sha1 = "8f2d508d0600b4a456da2f086556e7e5c056a3c6";
+        url = "https://registry.npmjs.org/help-me/-/help-me-3.0.0.tgz";
+        sha512 = "hx73jClhyk910sidBB7ERlnhMlFsJJIBqSVMFDwPN8o2v9nmp5KgLq1Xz1Bf1fCMMZ6mPrX159iG0VLy/fPMtQ==";
       };
     };
     "here-0.0.2" = {
@@ -28655,6 +29150,15 @@ let
         sha512 = "C8nwzS33zKvR7grYIoHvp8wPxBvk9sEJ6dsh3Bx+T/4jNNhDksqLS73NIWqHvInjRiOsrXgEY4+h/NjNbzzh0g==";
       };
     };
+    "hmac-blake2b-2.0.0" = {
+      name = "hmac-blake2b";
+      packageName = "hmac-blake2b";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hmac-blake2b/-/hmac-blake2b-2.0.0.tgz";
+        sha512 = "JbGNtM1YRd8EQH/2vNTAP1oy5lJVPlBFYZfCJTu3k8sqOUm0rRIf/3+MCd5noVykETwTbun6jEOc+4Tu78ubHA==";
+      };
+    };
     "hmac-drbg-1.0.1" = {
       name = "hmac-drbg";
       packageName = "hmac-drbg";
@@ -28673,15 +29177,6 @@ let
         sha1 = "20bb7403d3cea398e91dc4710a8ff1b8274a25ed";
       };
     };
-    "hoek-4.2.1" = {
-      name = "hoek";
-      packageName = "hoek";
-      version = "4.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz";
-        sha512 = "QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==";
-      };
-    };
     "hogan.js-3.0.2" = {
       name = "hogan.js";
       packageName = "hogan.js";
@@ -28790,6 +29285,33 @@ let
         sha1 = "87774c0949e513f42e84575b3c45681fade2a0b2";
       };
     };
+    "hpagent-0.1.2" = {
+      name = "hpagent";
+      packageName = "hpagent";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hpagent/-/hpagent-0.1.2.tgz";
+        sha512 = "ePqFXHtSQWAFXYmj+JtOTHr84iNrII4/QRlAAPPE+zqnKy4xJo7Ie1Y4kC7AdB+LxLxSTTzBMASsEcy0q8YyvQ==";
+      };
+    };
+    "hrpc-2.2.0" = {
+      name = "hrpc";
+      packageName = "hrpc";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hrpc/-/hrpc-2.2.0.tgz";
+        sha512 = "iuiO+k823AGyUnwW5dfwStjNVdX881KRvYw+E9RfFbJIXUZWG7OFj0aZYJY6v0752RBWhK6/clwiU++Aau+Aqw==";
+      };
+    };
+    "hrpc-runtime-2.1.1" = {
+      name = "hrpc-runtime";
+      packageName = "hrpc-runtime";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hrpc-runtime/-/hrpc-runtime-2.1.1.tgz";
+        sha512 = "L9fSE/eMnJat/9TtlOVKFAiw2SlvB5RH/QbtSaNcYW/oWX1lBxwdrVTTcNOCWnSNLhDBgg5llxj9oM2SACB8WA==";
+      };
+    };
     "hs-client-0.0.9" = {
       name = "hs-client";
       packageName = "hs-client";
@@ -29358,6 +29880,24 @@ let
         sha512 = "PH5GBkXqFxw5+4eKaKRIkD23y6vRd/IXSl7IldyJxEXpDH9SEIXRORkBtkGni/ae2P7RVOw6Wxypd2tGXhha1w==";
       };
     };
+    "hyperbeam-1.1.3" = {
+      name = "hyperbeam";
+      packageName = "hyperbeam";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hyperbeam/-/hyperbeam-1.1.3.tgz";
+        sha512 = "yozWXZx3yXVprf/MM9WqMt5WY60Im8k6ELJDNFGfyMeO+UieITbDmkvVwMnKQA3ptWqUK8fPf/tEGgklWh7Weg==";
+      };
+    };
+    "hyperbee-1.5.5" = {
+      name = "hyperbee";
+      packageName = "hyperbee";
+      version = "1.5.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hyperbee/-/hyperbee-1.5.5.tgz";
+        sha512 = "0zX5JzBgB0kW7stpq2RXiVxzETckGuXJX43hAD5Fom60NUvpnEl6Q2VGKGjfDET04FjPCZAqA08pM2JXa48LjQ==";
+      };
+    };
     "hypercore-7.7.1" = {
       name = "hypercore";
       packageName = "hypercore";
@@ -29367,6 +29907,33 @@ let
         sha512 = "boEiPCK848pNGACW1j111tJApu530e/UPpwbHytJZlrVf3YdgUIP1KL3aSi5xJFLUnuO8GLGl4lIsSeH8TaQQA==";
       };
     };
+    "hypercore-9.10.0" = {
+      name = "hypercore";
+      packageName = "hypercore";
+      version = "9.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hypercore/-/hypercore-9.10.0.tgz";
+        sha512 = "vMaUNcYvtiiXbnjjhj3YbBK/KZEofXfrajiJxJ8rlWVXSyh2fIJcyxTJewfh58IW5bVYNrBPui/CpPyBZiXuZQ==";
+      };
+    };
+    "hypercore-byte-stream-1.0.12" = {
+      name = "hypercore-byte-stream";
+      packageName = "hypercore-byte-stream";
+      version = "1.0.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hypercore-byte-stream/-/hypercore-byte-stream-1.0.12.tgz";
+        sha512 = "JnpLfCkvH9EPRZ8JXLBUAXo+L2wRQ504yWTwtveH+cSwwx0E8I2dbxXvNIsYGDeghOlX3hka0Ng3GiYI0risZw==";
+      };
+    };
+    "hypercore-cache-1.0.2" = {
+      name = "hypercore-cache";
+      packageName = "hypercore-cache";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hypercore-cache/-/hypercore-cache-1.0.2.tgz";
+        sha512 = "AJ/q7y6EOrXnOH/4+DVcfDygsh1ZXMRGvNc67GBNqwCt22oSCOWhRI6EJ+3HEJciM9M2oSm1WX3qg6kgRhT/Gw==";
+      };
+    };
     "hypercore-crypto-1.0.0" = {
       name = "hypercore-crypto";
       packageName = "hypercore-crypto";
@@ -29376,6 +29943,33 @@ let
         sha512 = "xFwOnNlOt8L+SovC7dTNchKaNYJb5l8rKZZwpWQnCme1r7CU4Hlhp1RDqPES6b0OpS7DkTo9iU0GltQGkpsjMw==";
       };
     };
+    "hypercore-crypto-2.3.0" = {
+      name = "hypercore-crypto";
+      packageName = "hypercore-crypto";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hypercore-crypto/-/hypercore-crypto-2.3.0.tgz";
+        sha512 = "HdI0VKwPHVIsbkJ2kFot5XRJoQOO1rGg0G2X+Z/mrP8vfZPFD5H1wwJ5nBDp0QYsZfHjOq0nOuUoW/NgdOZofA==";
+      };
+    };
+    "hypercore-default-storage-1.1.1" = {
+      name = "hypercore-default-storage";
+      packageName = "hypercore-default-storage";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hypercore-default-storage/-/hypercore-default-storage-1.1.1.tgz";
+        sha512 = "y7dSX3VUT4I/X5Cj0h6hcKN2R+/QQIi1HnElnCqY3tQYbVaWYljdbVe3aBQIvkRCfOgWMfe2RbCLX4N78D5syg==";
+      };
+    };
+    "hypercore-promisifier-1.1.0" = {
+      name = "hypercore-promisifier";
+      packageName = "hypercore-promisifier";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hypercore-promisifier/-/hypercore-promisifier-1.1.0.tgz";
+        sha512 = "W4W+fhbWZ5ydLjiAwydXD0yBe9b5cHafoyedVyQ2L8PEsGCeYEr4Efrq/Fyaa/0dheNJvfJGTOs0c36FPweDnw==";
+      };
+    };
     "hypercore-protocol-6.12.0" = {
       name = "hypercore-protocol";
       packageName = "hypercore-protocol";
@@ -29385,6 +29979,33 @@ let
         sha512 = "T3oy9/7QFejqJX2RGcCUU1944e5/eKbLlSz9JPTNN1QbYFJgat/r7eTyOO8SMSLUimUmQx6YBMKhgYbdKzp7Bw==";
       };
     };
+    "hypercore-protocol-8.0.7" = {
+      name = "hypercore-protocol";
+      packageName = "hypercore-protocol";
+      version = "8.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hypercore-protocol/-/hypercore-protocol-8.0.7.tgz";
+        sha512 = "b5TXhqXUZ+Z7M/5/PlCTgElfufDRa3EzACd7y7BA7owLkxQreaUQ58wUO7nzJppDP1bnC2Hz6Hg7nlRPc75bKw==";
+      };
+    };
+    "hypercore-streams-1.0.1" = {
+      name = "hypercore-streams";
+      packageName = "hypercore-streams";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hypercore-streams/-/hypercore-streams-1.0.1.tgz";
+        sha512 = "OcN2zq9DEoArC84q9VCSrf9Hx1QUkR6ineCOwyOwhE4v/8aUTOx87mAk1nyjMOf76DQmF+tl2vnS2FssLx5N+Q==";
+      };
+    };
+    "hyperdrive-10.20.0" = {
+      name = "hyperdrive";
+      packageName = "hyperdrive";
+      version = "10.20.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hyperdrive/-/hyperdrive-10.20.0.tgz";
+        sha512 = "ejikKQc9L8qUzmmkGe2dk/FGzisY0RTtE1Jw4WfWWXGTun9t/yZ/sV4JfamNBJRd3C0BWV6ZQYeI+1xQDuK3WQ==";
+      };
+    };
     "hyperdrive-9.16.0" = {
       name = "hyperdrive";
       packageName = "hyperdrive";
@@ -29412,6 +30033,15 @@ let
         sha512 = "JolPS374h6oS1rmz1iebFfeDDvA2nAtiHbx9VJJGMgSDSx4Q77eeY09hDgZwY7KatSKUGWnnSyydSgVUb3+8Lw==";
       };
     };
+    "hyperdrive-schemas-2.0.0" = {
+      name = "hyperdrive-schemas";
+      packageName = "hyperdrive-schemas";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hyperdrive-schemas/-/hyperdrive-schemas-2.0.0.tgz";
+        sha512 = "mzD741NjsSt3ttIaavbh3zyNdR3zy0X55HRweNRsw/JEduWjaoOZa6EXz7ly2JxuD7MvAbJxsuNPlnVl9saL6w==";
+      };
+    };
     "hyperlinker-1.0.0" = {
       name = "hyperlinker";
       packageName = "hyperlinker";
@@ -29430,6 +30060,42 @@ let
         sha512 = "fUuDOrB47PqNK/BAMOS13v41UoaqIxqSLHX6CAbOD7OfT+/GCWO1/vPLfTNutOeXrv1ikuaZ3yux+33Z9vh+rw==";
       };
     };
+    "hyperspace-3.19.0" = {
+      name = "hyperspace";
+      packageName = "hyperspace";
+      version = "3.19.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hyperspace/-/hyperspace-3.19.0.tgz";
+        sha512 = "UF6OGzy3mjJ+XuWzjDN45NMD76WsFZoiq9F9TQpG6JGkbxbM1RXjMDG9JeqnjVg8nzylTwiNkskv7JvFmkR05Q==";
+      };
+    };
+    "hyperspace-mirroring-service-1.0.7" = {
+      name = "hyperspace-mirroring-service";
+      packageName = "hyperspace-mirroring-service";
+      version = "1.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hyperspace-mirroring-service/-/hyperspace-mirroring-service-1.0.7.tgz";
+        sha512 = "EL2y0WL6r0u3xjOYWAIs6QdbMbZeHIaYxqdqWbjkP2V1pwabBoDwkW57kbIhwumCikU8dfIVXtrHsPJZwCSrfA==";
+      };
+    };
+    "hyperswarm-2.15.3" = {
+      name = "hyperswarm";
+      packageName = "hyperswarm";
+      version = "2.15.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hyperswarm/-/hyperswarm-2.15.3.tgz";
+        sha512 = "bESly7s6X7cLMWCn4dsAVE/ttNbbB13o6jku2B7fV2wIV/g7NVC/yF7S3NiknGlftKn/uLU3fhMmbOfdBvQ5IA==";
+      };
+    };
+    "hypertrie-5.1.1" = {
+      name = "hypertrie";
+      packageName = "hypertrie";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hypertrie/-/hypertrie-5.1.1.tgz";
+        sha512 = "6PjBRPsTH+hqhMpjt1QmxXMFW6XaHNXkjxH1KrL1bp8Fpz7SPOvBNSaQVttvAP6GRzDKkeLraG4q3yJiSL4IhQ==";
+      };
+    };
     "i-0.3.6" = {
       name = "i";
       packageName = "i";
@@ -29439,13 +30105,13 @@ let
         sha1 = "d96c92732076f072711b6b10fd7d4f65ad8ee23d";
       };
     };
-    "i18next-15.1.2" = {
+    "i18next-20.3.2" = {
       name = "i18next";
       packageName = "i18next";
-      version = "15.1.2";
+      version = "20.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/i18next/-/i18next-15.1.2.tgz";
-        sha512 = "98ELn/dqep00DQ/v1E1gpM21HNN6nqU3mS85mYKd9P7lXrhfUcuysPaa3HviKSFb3WPdjf7avuAST3P0dhNp/A==";
+        url = "https://registry.npmjs.org/i18next/-/i18next-20.3.2.tgz";
+        sha512 = "e8CML2R9Ng2sSQOM80wb/PrM2j8mDm84o/T4Amzn9ArVyNX5/ENWxxAXkRpZdTQNDaxKImF93Wep4mAoozFrKw==";
       };
     };
     "iconv-lite-0.4.23" = {
@@ -29475,15 +30141,6 @@ let
         sha1 = "c6019a7595f2cefca702eab694a010bcd9298d20";
       };
     };
-    "iconv-lite-0.6.2" = {
-      name = "iconv-lite";
-      packageName = "iconv-lite";
-      version = "0.6.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz";
-        sha512 = "2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==";
-      };
-    };
     "iconv-lite-0.6.3" = {
       name = "iconv-lite";
       packageName = "iconv-lite";
@@ -29520,6 +30177,15 @@ let
         sha512 = "snvtAQRforYUI+C2+45L2LBJy/0/uQUffxv8/uwiS98fSUoXHVrFPClgzWZWxT0drwkLHJRm9inZcYzTR42GLA==";
       };
     };
+    "identify-filetype-1.0.0" = {
+      name = "identify-filetype";
+      packageName = "identify-filetype";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/identify-filetype/-/identify-filetype-1.0.0.tgz";
+        sha1 = "ce6e29aa762f031b82852a2392a38163fad790eb";
+      };
+    };
     "ieee754-1.1.13" = {
       name = "ieee754";
       packageName = "ieee754";
@@ -29655,6 +30321,15 @@ let
         sha1 = "d140fa8f614659bd6541233097ddaac25cdd991c";
       };
     };
+    "immediate-3.3.0" = {
+      name = "immediate";
+      packageName = "immediate";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz";
+        sha512 = "HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==";
+      };
+    };
     "immediate-chunk-store-1.0.8" = {
       name = "immediate-chunk-store";
       packageName = "immediate-chunk-store";
@@ -30006,13 +30681,13 @@ let
         sha512 = "s7lJuQDJEdjqtaIWhp3KYHl6WV3J04U9zoQ6wVc+Xoa06XM27SXUY57qC5DO46xkF0CfgXMKkKNcgvSu/SAEpA==";
       };
     };
-    "ink-3.0.8" = {
+    "ink-3.0.9" = {
       name = "ink";
       packageName = "ink";
-      version = "3.0.8";
+      version = "3.0.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ink/-/ink-3.0.8.tgz";
-        sha512 = "ubMFylXYaG4IkXQVhPautbhV/p6Lo0GlvAMI/jh8cGJQ39yeznJbaTTJP2CqZXezA4GOHzalpwCWqux/NEY38w==";
+        url = "https://registry.npmjs.org/ink/-/ink-3.0.9.tgz";
+        sha512 = "BN+SyJ1rLbKzGPxGYkk22dYB0b58OtyMI4uN0dYucQ8MlIu5TpXJzaP6Bt8Mgqi1dkNZT55bjGyZ2iVLTkJ70w==";
       };
     };
     "ink-spinner-4.0.2" = {
@@ -30123,15 +30798,6 @@ let
         sha512 = "E9BmnJbAKLPGonz0HeWHtbKf+EeSP93paWO3ZYoUpq/aowXvYGjjCSuashhXPpzbArIjBbji39THkxTz9ZeEUQ==";
       };
     };
-    "inquirer-6.2.0" = {
-      name = "inquirer";
-      packageName = "inquirer";
-      version = "6.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/inquirer/-/inquirer-6.2.0.tgz";
-        sha512 = "QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg==";
-      };
-    };
     "inquirer-6.3.1" = {
       name = "inquirer";
       packageName = "inquirer";
@@ -30159,6 +30825,15 @@ let
         sha512 = "JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==";
       };
     };
+    "inquirer-8.0.0" = {
+      name = "inquirer";
+      packageName = "inquirer";
+      version = "8.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz";
+        sha512 = "ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==";
+      };
+    };
     "inquirer-8.1.1" = {
       name = "inquirer";
       packageName = "inquirer";
@@ -30168,6 +30843,15 @@ let
         sha512 = "hUDjc3vBkh/uk1gPfMAD/7Z188Q8cvTGl0nxwaCdwSbzFh6ZKkZh+s2ozVxbE5G9ZNRyeY0+lgbAIOUFsFf98w==";
       };
     };
+    "inquirer-8.1.2" = {
+      name = "inquirer";
+      packageName = "inquirer";
+      version = "8.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inquirer/-/inquirer-8.1.2.tgz";
+        sha512 = "DHLKJwLPNgkfwNmsuEUKSejJFbkv0FMO9SMiQbjI3n5NQuCrSIBqP66ggqyz2a6t2qEolKrMjhQ3+W/xXgUQ+Q==";
+      };
+    };
     "inquirer-autocomplete-prompt-1.4.0" = {
       name = "inquirer-autocomplete-prompt";
       packageName = "inquirer-autocomplete-prompt";
@@ -30447,15 +31131,6 @@ let
         sha512 = "CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw==";
       };
     };
-    "invoices-1.1.6" = {
-      name = "invoices";
-      packageName = "invoices";
-      version = "1.1.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/invoices/-/invoices-1.1.6.tgz";
-        sha512 = "/rNd9R/qcq+4QakROCQGnOJbiQ9BKwtOVF+OWu+3pYVYgPydnAMA++VCcKxZYFCGDC70Ee+9oUvIlXI8UQoiqQ==";
-      };
-    };
     "invoices-1.2.1" = {
       name = "invoices";
       packageName = "invoices";
@@ -30573,6 +31248,15 @@ let
         sha512 = "1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==";
       };
     };
+    "ipv4-peers-2.0.0" = {
+      name = "ipv4-peers";
+      packageName = "ipv4-peers";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ipv4-peers/-/ipv4-peers-2.0.0.tgz";
+        sha512 = "6ZMWB3JnCWT0gISUkzChcUEkJS6+LpGRU3h10f9Mfc0usVmyIcbcTN9+QPMg29gLOY8WtaKFbM5ME8qNySoh8g==";
+      };
+    };
     "irc-framework-4.9.0" = {
       name = "irc-framework";
       packageName = "irc-framework";
@@ -30843,13 +31527,13 @@ let
         sha1 = "cfff471aee4dd5c9e158598fbe12967b5cdad345";
       };
     };
-    "is-core-module-2.4.0" = {
+    "is-core-module-2.5.0" = {
       name = "is-core-module";
       packageName = "is-core-module";
-      version = "2.4.0";
+      version = "2.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz";
-        sha512 = "6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==";
+        url = "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz";
+        sha512 = "TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==";
       };
     };
     "is-data-descriptor-0.1.4" = {
@@ -32481,22 +33165,13 @@ let
         sha1 = "06d4912255093419477d425633606e0e90782967";
       };
     };
-    "joi-11.4.0" = {
+    "joi-17.4.1" = {
       name = "joi";
       packageName = "joi";
-      version = "11.4.0";
+      version = "17.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/joi/-/joi-11.4.0.tgz";
-        sha512 = "O7Uw+w/zEWgbL6OcHbyACKSj0PkQeUgmehdoXVSxt92QFCq4+1390Rwh5moI2K/OgC7D8RHRZqHZxT2husMJHA==";
-      };
-    };
-    "joi-17.4.0" = {
-      name = "joi";
-      packageName = "joi";
-      version = "17.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/joi/-/joi-17.4.0.tgz";
-        sha512 = "F4WiW2xaV6wc1jxete70Rw4V/VuMd6IN+a5ilZsxG4uYtUXWu2kq9W5P2dz30e7Gmw8RCbY/u/uk+dMPma9tAg==";
+        url = "https://registry.npmjs.org/joi/-/joi-17.4.1.tgz";
+        sha512 = "gDPOwQ5sr+BUxXuPDGrC1pSNcVR/yGGcTI0aCnjYxZEa3za60K/iCQ+OFIkEHWZGVCUcUlXlFKvMmrlmxrG6UQ==";
       };
     };
     "join-component-1.1.0" = {
@@ -32562,13 +33237,13 @@ let
         sha1 = "bcb4045c8dd0539c134bc1488cdd3e768a7a9e51";
       };
     };
-    "jquery.terminal-2.26.0" = {
+    "jquery.terminal-2.27.1" = {
       name = "jquery.terminal";
       packageName = "jquery.terminal";
-      version = "2.26.0";
+      version = "2.27.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jquery.terminal/-/jquery.terminal-2.26.0.tgz";
-        sha512 = "O4LmUt0+32HgP7GEOpxcDE5KDXx7X8Ru0ZcQor662za2WDzRnx+TzJsbtMRuH2qpI8qBRGmimLIQV/wjNlCTXg==";
+        url = "https://registry.npmjs.org/jquery.terminal/-/jquery.terminal-2.27.1.tgz";
+        sha512 = "EixPlbZdM0tgtjC/KosdSjhRS2QZqG7qKLZ202og4hBTNLgNgZ4Ke6DP1mhC6IKciMHD6IWNYQgSnzQRbIQjIQ==";
       };
     };
     "js-base64-2.6.4" = {
@@ -32670,6 +33345,15 @@ let
         sha512 = "RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==";
       };
     };
+    "js-yaml-3.13.1" = {
+      name = "js-yaml";
+      packageName = "js-yaml";
+      version = "3.13.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz";
+        sha512 = "YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==";
+      };
+    };
     "js-yaml-3.14.0" = {
       name = "js-yaml";
       packageName = "js-yaml";
@@ -32778,15 +33462,6 @@ let
         sha512 = "y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==";
       };
     };
-    "jsdom-13.2.0" = {
-      name = "jsdom";
-      packageName = "jsdom";
-      version = "13.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/jsdom/-/jsdom-13.2.0.tgz";
-        sha512 = "cG1NtMWO9hWpqRNRR3dSvEQa8bFI6iLlqU2x4kwX51FQjp0qus8T9aBaAO6iGp3DeBrhdwuKxckknohkmfvsFw==";
-      };
-    };
     "jsdom-14.1.0" = {
       name = "jsdom";
       packageName = "jsdom";
@@ -32850,49 +33525,49 @@ let
         sha512 = "xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==";
       };
     };
-    "jsii-1.30.0" = {
+    "jsii-1.31.0" = {
       name = "jsii";
       packageName = "jsii";
-      version = "1.30.0";
+      version = "1.31.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii/-/jsii-1.30.0.tgz";
-        sha512 = "TfVHhGjP0QiTEkyfnxrDIE8Da+itxnNUK2YoD69qIPAzmZ58goKVqK4sbXrXz2urHSToGLDmWI8+H69cLeVjJw==";
+        url = "https://registry.npmjs.org/jsii/-/jsii-1.31.0.tgz";
+        sha512 = "q/p5a6OLO9V0pIcyzS5sygkU9lPskY57KM7KbmppLDPVi5nIqpsRyFfsbPnGWFfDBMk//nkcfj+dbKJIplVkgg==";
       };
     };
-    "jsii-pacmak-1.30.0" = {
+    "jsii-pacmak-1.31.0" = {
       name = "jsii-pacmak";
       packageName = "jsii-pacmak";
-      version = "1.30.0";
+      version = "1.31.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-pacmak/-/jsii-pacmak-1.30.0.tgz";
-        sha512 = "hYvISYBXZ5WL/+LtG3HpVrimguqAoWa3D8jaqsnoiIGrdmaxKCZ0VnioJYxEX7wVamYuCwXu5NFx/b31BspU6A==";
+        url = "https://registry.npmjs.org/jsii-pacmak/-/jsii-pacmak-1.31.0.tgz";
+        sha512 = "fGiAoooRPMadwTWU0vfHJdcNzeYdESnkU/8LmlI4k6yF1iIlFMIbWPulBxP6fV7SqV3CZQKGpUbcPD/Uzf1glg==";
       };
     };
-    "jsii-reflect-1.30.0" = {
+    "jsii-reflect-1.31.0" = {
       name = "jsii-reflect";
       packageName = "jsii-reflect";
-      version = "1.30.0";
+      version = "1.31.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-reflect/-/jsii-reflect-1.30.0.tgz";
-        sha512 = "t/1Zr1gGqQSYt94Lfq860VLnCr8y8MLvlLorWYqmBeWKCaSPhtYSC1blGhZhDrAW+CBXiT0Oy64j4Q++AntRmw==";
+        url = "https://registry.npmjs.org/jsii-reflect/-/jsii-reflect-1.31.0.tgz";
+        sha512 = "jKc3tryVeEyEBZFv5bDB8rOaEgW+yBPh0DE4GQCKQQLdkp76Lm9ZSkrnJk5e0gEuAWsmuc1DUs35OcVNr8QRWg==";
       };
     };
-    "jsii-rosetta-1.30.0" = {
+    "jsii-rosetta-1.31.0" = {
       name = "jsii-rosetta";
       packageName = "jsii-rosetta";
-      version = "1.30.0";
+      version = "1.31.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-rosetta/-/jsii-rosetta-1.30.0.tgz";
-        sha512 = "ChFg5qhvxCaM2bspCqizs48yMtsm5YLHjBoNZLCkbXyc3yMM5l8pnn787B5ww5TI3+tKxKYWkbiKf356kQ1OgQ==";
+        url = "https://registry.npmjs.org/jsii-rosetta/-/jsii-rosetta-1.31.0.tgz";
+        sha512 = "Heu6D+yI5mmUklLQdX3PdDvHUQm14618Fj4PQM9seKa4cohxzJ7EHopfRObKYHMko9awopx4Qr7Gtu6u/QPqfw==";
       };
     };
-    "jsii-srcmak-0.1.297" = {
+    "jsii-srcmak-0.1.302" = {
       name = "jsii-srcmak";
       packageName = "jsii-srcmak";
-      version = "0.1.297";
+      version = "0.1.302";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-srcmak/-/jsii-srcmak-0.1.297.tgz";
-        sha512 = "CeBsxrdz22C7j7CyO0hqlz/T6MjpeR1jKy1wY5BHyKXc8mSCoTQDuCMHnmTGg9ifiuRUbOsNSbPMiHYEq2sanQ==";
+        url = "https://registry.npmjs.org/jsii-srcmak/-/jsii-srcmak-0.1.302.tgz";
+        sha512 = "UsXZ6LGLqP/nUNyq0ey3xOLpNDpkye5HeNAnJCVqw4vsT9o5EX7MHv9ca/JDlt7fWn+cUdo/Bcj5UZJvg+Chfg==";
       };
     };
     "json-bigint-0.2.3" = {
@@ -33129,6 +33804,15 @@ let
         sha512 = "7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==";
       };
     };
+    "json-server-0.8.23" = {
+      name = "json-server";
+      packageName = "json-server";
+      version = "0.8.23";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-server/-/json-server-0.8.23.tgz";
+        sha1 = "28e4ffd51c8d893295280eb4064d9703594de5a2";
+      };
+    };
     "json-stable-stringify-0.0.1" = {
       name = "json-stable-stringify";
       packageName = "json-stable-stringify";
@@ -33192,13 +33876,13 @@ let
         sha512 = "0/4Lv6IenJV0qj2oBdgPIAmFiKKnh8qh7bmLFJ+/ZZHLjSeiL3fKKGX3UryvKPbxFbhV+JcYo9KUC19GJ/Z/4A==";
       };
     };
-    "json2jsii-0.1.264" = {
+    "json2jsii-0.1.272" = {
       name = "json2jsii";
       packageName = "json2jsii";
-      version = "0.1.264";
+      version = "0.1.272";
       src = fetchurl {
-        url = "https://registry.npmjs.org/json2jsii/-/json2jsii-0.1.264.tgz";
-        sha512 = "IOe1PBV1h7feIUXO3HMRwK56TntzfEeRTMYMWwZYjRwZD6cbBS9yLsteW2fSlnhBVWkJsgZWQPP931aCulPBxw==";
+        url = "https://registry.npmjs.org/json2jsii/-/json2jsii-0.1.272.tgz";
+        sha512 = "OUZqjQhnRalQmQx3kFM3mG5DQcfEYzmUYBWGdb6QwGLuvwB/eJ2PhXuLEkGF+PhRwOrW5IyEcF8U+O39mh3G5Q==";
       };
     };
     "json3-3.2.6" = {
@@ -33742,13 +34426,13 @@ let
         sha512 = "dD2ga5gLcQhsq1yNoQdy1MU4x4z7YnXM5bcG9SdQuiNr5KKuAmXixH1Mggwdah5o7EfholFbcNDPSVA6BIfaug==";
       };
     };
-    "katex-0.13.11" = {
+    "katex-0.13.13" = {
       name = "katex";
       packageName = "katex";
-      version = "0.13.11";
+      version = "0.13.13";
       src = fetchurl {
-        url = "https://registry.npmjs.org/katex/-/katex-0.13.11.tgz";
-        sha512 = "yJBHVIgwlAaapzlbvTpVF/ZOs8UkTj/sd46Fl8+qAf2/UiituPYVeapVD8ADZtqyRg/qNWUKt7gJoyYVWLrcXw==";
+        url = "https://registry.npmjs.org/katex/-/katex-0.13.13.tgz";
+        sha512 = "cCMcil4jwMm7behpXGiQfXJA29sko/Gd/26iCsr53Dv5Jn2iHbHyEb14dm9uVrIijUXx6Zz1WhlFhHE6DckvkQ==";
       };
     };
     "keep-alive-agent-0.0.1" = {
@@ -33769,15 +34453,6 @@ let
         sha512 = "5AsrYCiCHIUxuw/G2r7xcoTW/NTf5IFwAe1fkwf2ifM/KZzEojaTylh1Pppu60oEixww1rfcWJaRGLi3eAJsrQ==";
       };
     };
-    "kew-0.7.0" = {
-      name = "kew";
-      packageName = "kew";
-      version = "0.7.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz";
-        sha1 = "79d93d2d33363d6fdd2970b335d9141ad591d79b";
-      };
-    };
     "keyboardevent-key-polyfill-1.1.0" = {
       name = "keyboardevent-key-polyfill";
       packageName = "keyboardevent-key-polyfill";
@@ -34084,6 +34759,15 @@ let
         sha1 = "72cfc46e3e8d1be651e1ebb54ea9f6ea96f374bb";
       };
     };
+    "latest-version-2.0.0" = {
+      name = "latest-version";
+      packageName = "latest-version";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/latest-version/-/latest-version-2.0.0.tgz";
+        sha1 = "56f8d6139620847b8017f8f1f4d78e211324168b";
+      };
+    };
     "latest-version-3.1.0" = {
       name = "latest-version";
       packageName = "latest-version";
@@ -34138,6 +34822,15 @@ let
         sha1 = "a1d78fc3a50474cb80845d3b3b6e1da49a446e8e";
       };
     };
+    "lazy-req-1.1.0" = {
+      name = "lazy-req";
+      packageName = "lazy-req";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lazy-req/-/lazy-req-1.1.0.tgz";
+        sha1 = "bdaebead30f8d824039ce0ce149d4daa07ba1fac";
+      };
+    };
     "lazyness-1.2.0" = {
       name = "lazyness";
       packageName = "lazyness";
@@ -34336,6 +35029,15 @@ let
         sha512 = "SnBIDo2pdO5VXh02ZmtAyPP6/+6YTJg2ibLtl9C34pWvmtMEmRTWpra+qO/hifkUtBTOtfx6S9vLDjBsBK4gRg==";
       };
     };
+    "level-option-wrap-1.1.0" = {
+      name = "level-option-wrap";
+      packageName = "level-option-wrap";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/level-option-wrap/-/level-option-wrap-1.1.0.tgz";
+        sha1 = "ad20e68d9f3c22c8897531cc6aa7af596b1ed129";
+      };
+    };
     "level-packager-5.1.1" = {
       name = "level-packager";
       packageName = "level-packager";
@@ -34525,49 +35227,49 @@ let
         sha512 = "yRHaiQDizWSzoXk3APcA71eOI/UuhEkNN9DiW2Tt44mhYzX4joFoCZlxsSOF7RyeLlfqzFLQI1ngFq3ggMPhOw==";
       };
     };
-    "lighthouse-logger-1.2.0" = {
+    "lighthouse-logger-1.3.0" = {
       name = "lighthouse-logger";
       packageName = "lighthouse-logger";
-      version = "1.2.0";
+      version = "1.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-1.2.0.tgz";
-        sha512 = "wzUvdIeJZhRsG6gpZfmSCfysaxNEr43i+QT+Hie94wvHDKFLi4n7C2GqZ4sTC+PH5b5iktmXJvU87rWvhP3lHw==";
+        url = "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-1.3.0.tgz";
+        sha512 = "BbqAKApLb9ywUli+0a+PcV04SyJ/N1q/8qgCNe6U97KbPCS1BTksEuHFLYdvc8DltuhfxIUBqDZsC0bBGtl3lA==";
       };
     };
-    "lightning-3.3.1" = {
+    "lightning-3.3.12" = {
       name = "lightning";
       packageName = "lightning";
-      version = "3.3.1";
+      version = "3.3.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lightning/-/lightning-3.3.1.tgz";
-        sha512 = "lzj7oODpX7XS/4qHGBG/VAMirBDK/rbWS8S9pTCSUV9ZknuXg2loCkDyPQuB3vC2MMt1QOsXn4oQUtxpPtSa1g==";
+        url = "https://registry.npmjs.org/lightning/-/lightning-3.3.12.tgz";
+        sha512 = "tq7AAMpjQ9sl58pW/qis/vOBzN7MCQ4F4n+ox4VQhyv1qVA+P2LgJq36I1Y6b4RX68+hK48u1eHDzSt527fEXA==";
       };
     };
-    "lightning-3.3.11" = {
+    "lightning-3.3.16" = {
       name = "lightning";
       packageName = "lightning";
-      version = "3.3.11";
+      version = "3.3.16";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lightning/-/lightning-3.3.11.tgz";
-        sha512 = "bD57EjMVMBplyEMjXDMo8MvBfPymufU81kYbixqrvaLHoqsmyTMwLzqpa4CurJ5YKAXLJw68ZReDzDb6rj90Sg==";
+        url = "https://registry.npmjs.org/lightning/-/lightning-3.3.16.tgz";
+        sha512 = "5rltlQighO0X6IjTbdsabtfT3ZY3kE6MZN6jmK4wz6Jt3eikxMbmzVBC5/UeyMb/3Fad3iHJIneXuhu76/eY/A==";
       };
     };
-    "lightning-3.3.12" = {
+    "lightning-3.3.9" = {
       name = "lightning";
       packageName = "lightning";
-      version = "3.3.12";
+      version = "3.3.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lightning/-/lightning-3.3.12.tgz";
-        sha512 = "tq7AAMpjQ9sl58pW/qis/vOBzN7MCQ4F4n+ox4VQhyv1qVA+P2LgJq36I1Y6b4RX68+hK48u1eHDzSt527fEXA==";
+        url = "https://registry.npmjs.org/lightning/-/lightning-3.3.9.tgz";
+        sha512 = "z/bfkDEAKyN0HtN7rkiyVlDA3J5L/jxXsE4YuGfQPa8TyPWovyLdo6/aHP0mMy8n+G4tq0g2oKZ/1Z5ONJAVqA==";
       };
     };
-    "lightning-3.3.9" = {
+    "lightning-3.4.0" = {
       name = "lightning";
       packageName = "lightning";
-      version = "3.3.9";
+      version = "3.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lightning/-/lightning-3.3.9.tgz";
-        sha512 = "z/bfkDEAKyN0HtN7rkiyVlDA3J5L/jxXsE4YuGfQPa8TyPWovyLdo6/aHP0mMy8n+G4tq0g2oKZ/1Z5ONJAVqA==";
+        url = "https://registry.npmjs.org/lightning/-/lightning-3.4.0.tgz";
+        sha512 = "lD6PgHipqedfFcTEf/9mDF3s4KGO/lecr02W6zHBJHohNphuBUZS1z68kKRJAl3N4iHmDEfLxt+G86PBP0jhHw==";
       };
     };
     "lilconfig-2.0.3" = {
@@ -34714,22 +35416,22 @@ let
         sha512 = "EBEeBymqktoaViGAG5aVmgIOZpWc6IwDqxq93ZYYIw+Uc9Vy/86nUDPx8A/jJC0f8lwEGcqT+hnSIiBF4SyqeA==";
       };
     };
-    "ln-service-51.8.2" = {
+    "ln-service-51.10.0" = {
       name = "ln-service";
       packageName = "ln-service";
-      version = "51.8.2";
+      version = "51.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ln-service/-/ln-service-51.8.2.tgz";
-        sha512 = "X+AFuuw54NEr8UqbkJlEtqkmlpIpmji7BX+bYmYrEOZOtJca7PbaqspVWq+YB9qWw/OiuI76ly67KGTYM0QbCw==";
+        url = "https://registry.npmjs.org/ln-service/-/ln-service-51.10.0.tgz";
+        sha512 = "k6wGBB6RfyHhMY296MsHhZrVuJSqNsqx3nF3WM5lkKAg+58OdU6bLzqVttpit9uHamc6tssD2GDxNS6gdUzOYQ==";
       };
     };
-    "ln-service-51.8.4" = {
+    "ln-service-51.8.2" = {
       name = "ln-service";
       packageName = "ln-service";
-      version = "51.8.4";
+      version = "51.8.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ln-service/-/ln-service-51.8.4.tgz";
-        sha512 = "8jTfQWtdAJJ2pipprNnUrUUpMxq6wQpT1bhN+ZwyMCdHVo72r58TrFoy0UQsutbgN9OjHMHSsBoyTd5cPmUfWA==";
+        url = "https://registry.npmjs.org/ln-service/-/ln-service-51.8.2.tgz";
+        sha512 = "X+AFuuw54NEr8UqbkJlEtqkmlpIpmji7BX+bYmYrEOZOtJca7PbaqspVWq+YB9qWw/OiuI76ly67KGTYM0QbCw==";
       };
     };
     "ln-service-51.8.5" = {
@@ -34741,22 +35443,40 @@ let
         sha512 = "1SU0eG9/LDy6k3UGXaahmoe1wOahAJkaidWpLX5Nmlfq72I0arad420smma5ZGXAW4wNlGR/gx68KZzzYI5D4A==";
       };
     };
-    "ln-sync-0.4.5" = {
+    "ln-service-51.9.0" = {
+      name = "ln-service";
+      packageName = "ln-service";
+      version = "51.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ln-service/-/ln-service-51.9.0.tgz";
+        sha512 = "4lbC1QZ/a4BuvO/0wd8DxRr5DxdYGugENoDo9X8xnUts9tGmYLb7g5yEXuk/Ff2LPTVUlK5imAsduobUVXOzlA==";
+      };
+    };
+    "ln-sync-0.4.6" = {
       name = "ln-sync";
       packageName = "ln-sync";
-      version = "0.4.5";
+      version = "0.4.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ln-sync/-/ln-sync-0.4.5.tgz";
-        sha512 = "ETaASkbv5v2gcrob/xonsjy0deKSxIHfKOTfOXQicxhZed02plQ2oAUx/K3yxIhRnm7YS45Z/gYQLxUqHkI4ow==";
+        url = "https://registry.npmjs.org/ln-sync/-/ln-sync-0.4.6.tgz";
+        sha512 = "FMfcEISlboFVz+wLTAJ+FnEIQkoMR7IHcUg4l5JNwsU/UOijM1vTQDFhHVqg5fEQAFboZe3lNd7Rh1uxxqs47Q==";
       };
     };
-    "ln-telegram-3.2.6" = {
+    "ln-sync-0.4.7" = {
+      name = "ln-sync";
+      packageName = "ln-sync";
+      version = "0.4.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ln-sync/-/ln-sync-0.4.7.tgz";
+        sha512 = "2yqc59OhK0affnkwhgw7iY4x2tKZTb8y8KSWxRHn6cSXL3clUJgXdTNOGr4Jp8j1TkTl0iRVnLSNZlRbtU4vVA==";
+      };
+    };
+    "ln-telegram-3.2.9" = {
       name = "ln-telegram";
       packageName = "ln-telegram";
-      version = "3.2.6";
+      version = "3.2.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ln-telegram/-/ln-telegram-3.2.6.tgz";
-        sha512 = "8Cd/f5v8tz6v7Tu9AMss3Gn71njnfMK9FC8+wBz+LoYLwI1VRj5yS4koWf7dVXD8qsA4DU4TnqZRrGbdSODWyQ==";
+        url = "https://registry.npmjs.org/ln-telegram/-/ln-telegram-3.2.9.tgz";
+        sha512 = "pjAkD1VLGLvwu1Dso3HvQDcK25L/slRX8nB7hTDDEznn+rRzxBJd1sXuNaFovwJHughvK3ZxUxAHC0BfzIatEw==";
       };
     };
     "load-bmfont-1.4.1" = {
@@ -35434,15 +36154,6 @@ let
         sha1 = "5d19fa005c8c4d236faf4742c7b7a1fcabe29267";
       };
     };
-    "lodash.bind-4.2.1" = {
-      name = "lodash.bind";
-      packageName = "lodash.bind";
-      version = "4.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz";
-        sha1 = "7ae3017e939622ac31b7d7d7dcb1b34db1690d35";
-      };
-    };
     "lodash.camelcase-4.3.0" = {
       name = "lodash.camelcase";
       packageName = "lodash.camelcase";
@@ -36046,15 +36757,6 @@ let
         sha1 = "d2e3eebff0d9d39ad50f5cbd1b52a7bce6bb611b";
       };
     };
-    "lodash.pick-4.4.0" = {
-      name = "lodash.pick";
-      packageName = "lodash.pick";
-      version = "4.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz";
-        sha1 = "52f05610fff9ded422611441ed1fc123a03001b3";
-      };
-    };
     "lodash.reduce-4.6.0" = {
       name = "lodash.reduce";
       packageName = "lodash.reduce";
@@ -36064,15 +36766,6 @@ let
         sha1 = "f1ab6b839299ad48f784abbf476596f03b914d3b";
       };
     };
-    "lodash.reject-4.6.0" = {
-      name = "lodash.reject";
-      packageName = "lodash.reject";
-      version = "4.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz";
-        sha1 = "80d6492dc1470864bbf583533b651f42a9f52415";
-      };
-    };
     "lodash.repeat-4.1.0" = {
       name = "lodash.repeat";
       packageName = "lodash.repeat";
@@ -36352,6 +37045,15 @@ let
         sha512 = "VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==";
       };
     };
+    "log-symbols-3.0.0" = {
+      name = "log-symbols";
+      packageName = "log-symbols";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz";
+        sha512 = "dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==";
+      };
+    };
     "log-symbols-4.0.0" = {
       name = "log-symbols";
       packageName = "log-symbols";
@@ -36595,6 +37297,15 @@ let
         sha512 = "S0FayMXku80toa5sZ6Ro4C+s+EtFDCsyJNG/AzFMfX3AxD5Si4dZsgzm/kKnbOxHl5Cv8jBlno8+3XYIh2pNjQ==";
       };
     };
+    "lowdb-0.13.1" = {
+      name = "lowdb";
+      packageName = "lowdb";
+      version = "0.13.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lowdb/-/lowdb-0.13.1.tgz";
+        sha1 = "ebb1057269721b40c316cedb1877e68d7f14ca0c";
+      };
+    };
     "lowdb-1.0.0" = {
       name = "lowdb";
       packageName = "lowdb";
@@ -36775,15 +37486,6 @@ let
         sha1 = "f35ca91c493f7b73da0e07495304f17b31f87ee5";
       };
     };
-    "lunr-2.3.3" = {
-      name = "lunr";
-      packageName = "lunr";
-      version = "2.3.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lunr/-/lunr-2.3.3.tgz";
-        sha512 = "rlAEsgU9Bnavca2w1WJ6+6cdeHMXNyadcersyk3ZpuhgWb5HBNj8l4WwJz9PjksAhYDlpQffCVXPctOn+wCIVA==";
-      };
-    };
     "lunr-2.3.9" = {
       name = "lunr";
       packageName = "lunr";
@@ -36793,13 +37495,13 @@ let
         sha512 = "zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==";
       };
     };
-    "luxon-1.27.0" = {
+    "luxon-2.0.1" = {
       name = "luxon";
       packageName = "luxon";
-      version = "1.27.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/luxon/-/luxon-1.27.0.tgz";
-        sha512 = "VKsFsPggTA0DvnxtJdiExAucKdAnwbCCNlMM5ENvHlxubqWd0xhZcdb4XgZ7QFNhaRhilXCFxHuoObP5BNA4PA==";
+        url = "https://registry.npmjs.org/luxon/-/luxon-2.0.1.tgz";
+        sha512 = "8Eawf81c9ZlQj62W3eq4mp+C7SAIAnmaS7ZuEAiX503YMcn+0C1JnMQRtfaQj6B5qTZLgHv0F4H5WabBCvi1fw==";
       };
     };
     "lzma-native-6.0.1" = {
@@ -36973,13 +37675,13 @@ let
         sha512 = "EsS89h6l4vbfJEtBZnENTOFk8mCRpY5ru36Xe5bcX1KYIli2mkSHqoFsp5O1wMDvTJJzxe/4THpCTtygjeeGWQ==";
       };
     };
-    "make-fetch-happen-9.0.3" = {
+    "make-fetch-happen-9.0.4" = {
       name = "make-fetch-happen";
       packageName = "make-fetch-happen";
-      version = "9.0.3";
+      version = "9.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.0.3.tgz";
-        sha512 = "uZ/9Cf2vKqsSWZyXhZ9wHHyckBrkntgbnqV68Bfe8zZenlf7D6yuGMXvHZQ+jSnzPkjosuNP1HGasj1J4h8OlQ==";
+        url = "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.0.4.tgz";
+        sha512 = "sQWNKMYqSmbAGXqJg2jZ+PmHh5JAybvwu0xM8mZR/bsTjGiTASj3ldXJV7KFHy1k/IJIBkjxQFoWIVsv9+PQMg==";
       };
     };
     "make-iterator-1.0.1" = {
@@ -37045,15 +37747,6 @@ let
         sha512 = "p+NIGQbEBxlw/qWwG+NME98G/9kjOQI70hmaH8QEZtIWfTmfMYLKQW4PJChP4izPHNAxlOfv/qefP0+2ZXn84A==";
       };
     };
-    "map-like-2.0.0" = {
-      name = "map-like";
-      packageName = "map-like";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/map-like/-/map-like-2.0.0.tgz";
-        sha1 = "94496d49ad333c0dc3234b27adbbd1e8535953b4";
-      };
-    };
     "map-merge-1.1.0" = {
       name = "map-merge";
       packageName = "map-merge";
@@ -37891,6 +38584,15 @@ let
         sha512 = "fPcI4r2yH02UUgMo308CVzIuXUaRUrBzMvjXX8J4XfcHgX9Y73iB0/VLp+S3TnxnTgIGrQ3BFb7kWGR7kkyS8g==";
       };
     };
+    "mem-0.1.1" = {
+      name = "mem";
+      packageName = "mem";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mem/-/mem-0.1.1.tgz";
+        sha1 = "24df988c3102b03c074c1b296239c5b2e6647825";
+      };
+    };
     "mem-4.3.0" = {
       name = "mem";
       packageName = "mem";
@@ -37918,15 +38620,6 @@ let
         sha512 = "Ci6bIfq/UgcxPTYa8dQQ5FY3BzKkT894bwXWXxC/zqs0XgMO2cT20CGkOqda7gZNkmK5VP4x89IGZ6K7hfbn3Q==";
       };
     };
-    "mem-8.1.1" = {
-      name = "mem";
-      packageName = "mem";
-      version = "8.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz";
-        sha512 = "qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==";
-      };
-    };
     "mem-fs-2.2.1" = {
       name = "mem-fs";
       packageName = "mem-fs";
@@ -38206,6 +38899,15 @@ let
         sha1 = "f8a064760d37e7978ad5f9f6d3c119a494f57081";
       };
     };
+    "merkle-tree-stream-4.0.0" = {
+      name = "merkle-tree-stream";
+      packageName = "merkle-tree-stream";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/merkle-tree-stream/-/merkle-tree-stream-4.0.0.tgz";
+        sha512 = "TIurLf/ustQNMXi5foClGTcEsRvH6DCvxeAKu68OrwHMOSM/M1pgPXb7qe52Svk1ClvmZuAVpLtP5FWKzPr/sw==";
+      };
+    };
     "mermaid-8.11.0" = {
       name = "mermaid";
       packageName = "mermaid";
@@ -38251,6 +38953,15 @@ let
         sha1 = "1fbf19c136e78b4b2c4e1f5541915fb0d589abe7";
       };
     };
+    "method-override-2.3.10" = {
+      name = "method-override";
+      packageName = "method-override";
+      version = "2.3.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/method-override/-/method-override-2.3.10.tgz";
+        sha1 = "e3daf8d5dee10dd2dce7d4ae88d62bbee77476b4";
+      };
+    };
     "method-override-3.0.0" = {
       name = "method-override";
       packageName = "method-override";
@@ -38962,13 +39673,13 @@ let
         sha512 = "6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==";
       };
     };
-    "minipass-fetch-1.3.3" = {
+    "minipass-fetch-1.3.4" = {
       name = "minipass-fetch";
       packageName = "minipass-fetch";
-      version = "1.3.3";
+      version = "1.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.3.3.tgz";
-        sha512 = "akCrLDWfbdAWkMLBxJEeWTdNsjML+dt5YgOI4gJ53vuO0vrmYQkUPxa6j6V65s9CcePIr2SSWqjT2EcrNseryQ==";
+        url = "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.3.4.tgz";
+        sha512 = "TielGogIzbUEtd1LsjZFs47RWuHHfhl6TiCx1InVxApBAmQ8bL0dL5ilkLGcRvuyW/A9nE+Lvn855Ewz8S0PnQ==";
       };
     };
     "minipass-flush-1.0.5" = {
@@ -39169,15 +39880,6 @@ let
         sha512 = "sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw==";
       };
     };
-    "mkpath-1.0.0" = {
-      name = "mkpath";
-      packageName = "mkpath";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mkpath/-/mkpath-1.0.0.tgz";
-        sha1 = "ebb3a977e7af1c683ae6fda12b545a6ba6c5853d";
-      };
-    };
     "mobx-6.3.2" = {
       name = "mobx";
       packageName = "mobx";
@@ -39214,6 +39916,15 @@ let
         sha1 = "161be5bdeb496771eb9b35745050b622b5aefc58";
       };
     };
+    "mocha-7.2.0" = {
+      name = "mocha";
+      packageName = "mocha";
+      version = "7.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz";
+        sha512 = "O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==";
+      };
+    };
     "mocha-8.4.0" = {
       name = "mocha";
       packageName = "mocha";
@@ -39394,6 +40105,15 @@ let
         sha1 = "665cb9edebe80d110e658db56c31d0aef51a8f97";
       };
     };
+    "mountable-hypertrie-2.8.0" = {
+      name = "mountable-hypertrie";
+      packageName = "mountable-hypertrie";
+      version = "2.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mountable-hypertrie/-/mountable-hypertrie-2.8.0.tgz";
+        sha512 = "UYwewr82cZvrhJRQLWJtVJRWvJv+zQnp+2SnG051yO7c4rd3auUgwWJ71LyQKfVGq7OPYG1CUtXJKqbo+bVyPw==";
+      };
+    };
     "mout-0.5.0" = {
       name = "mout";
       packageName = "mout";
@@ -39457,13 +40177,13 @@ let
         sha512 = "NOeCoW6AYc3hLi30npe7uzbD9b4FQZKH40YKABUCCvaKKL5agj6YzvHoNx8jQpDMNPgIa5bvSZQbQpWBAVD0Kw==";
       };
     };
-    "mqtt-4.2.6" = {
+    "mqtt-4.2.8" = {
       name = "mqtt";
       packageName = "mqtt";
-      version = "4.2.6";
+      version = "4.2.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mqtt/-/mqtt-4.2.6.tgz";
-        sha512 = "GpxVObyOzL0CGPBqo6B04GinN8JLk12NRYAIkYvARd9ZCoJKevvOyCaWK6bdK/kFSDj3LPDnCsJbezzNlsi87Q==";
+        url = "https://registry.npmjs.org/mqtt/-/mqtt-4.2.8.tgz";
+        sha512 = "DJYjlXODVXtSDecN8jnNzi6ItX3+ufGsEs9OB3YV24HtkRrh7kpx8L5M1LuyF0KzaiGtWr2PzDcMGAY60KGOSA==";
       };
     };
     "mqtt-packet-6.10.0" = {
@@ -39952,24 +40672,6 @@ let
         sha1 = "0df1935cab15369075ef160ad2894107aa14dc2d";
       };
     };
-    "nan-2.13.2" = {
-      name = "nan";
-      packageName = "nan";
-      version = "2.13.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz";
-        sha512 = "TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==";
-      };
-    };
-    "nan-2.14.0" = {
-      name = "nan";
-      packageName = "nan";
-      version = "2.14.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz";
-        sha512 = "INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==";
-      };
-    };
     "nan-2.14.2" = {
       name = "nan";
       packageName = "nan";
@@ -40060,6 +40762,15 @@ let
         sha512 = "FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==";
       };
     };
+    "nanoiterator-1.2.1" = {
+      name = "nanoiterator";
+      packageName = "nanoiterator";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nanoiterator/-/nanoiterator-1.2.1.tgz";
+        sha512 = "M7V9cvfDErMg/H3j90zIGY7Fq3vIGjnnNXwcZ/EXO4plZT3dGNwvykfslHgtbJ8prOGuu3khmc87pND0jdmkcA==";
+      };
+    };
     "nanolru-1.0.0" = {
       name = "nanolru";
       packageName = "nanolru";
@@ -40078,6 +40789,33 @@ let
         sha512 = "fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==";
       };
     };
+    "nanoresource-1.3.0" = {
+      name = "nanoresource";
+      packageName = "nanoresource";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nanoresource/-/nanoresource-1.3.0.tgz";
+        sha512 = "OI5dswqipmlYfyL3k/YMm7mbERlh4Bd1KuKdMHpeoVD1iVxqxaTMKleB4qaA2mbQZ6/zMNSxCXv9M9P/YbqTuQ==";
+      };
+    };
+    "nanoresource-promise-1.2.2" = {
+      name = "nanoresource-promise";
+      packageName = "nanoresource-promise";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nanoresource-promise/-/nanoresource-promise-1.2.2.tgz";
+        sha512 = "XCRcRrCoTifA6XJqYaMqlHgWFrAq6aGNnXboRa/Dxa0TNkm3S13+RWCD7/XaB4ySunAmZzx81++OS4kqkDynuA==";
+      };
+    };
+    "nanoresource-promise-2.0.0" = {
+      name = "nanoresource-promise";
+      packageName = "nanoresource-promise";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nanoresource-promise/-/nanoresource-promise-2.0.0.tgz";
+        sha512 = "C4nHaVqhpRYaSiKfXPC3bOiz5mnS3N1gkDhGaWmYLxr4KTAQdWqOr2pEVw4xVmAHJgA9n9anbfuVOacS/skbIA==";
+      };
+    };
     "nanoscheduler-1.0.3" = {
       name = "nanoscheduler";
       packageName = "nanoscheduler";
@@ -40357,6 +41095,15 @@ let
         sha512 = "KKYdza4heMsEfSWD7VPUIz3zX2XDwOyX2d+geb4vrERZMT5RMU6ujjaD+I5Yr54uZxQ2w6XRTAhHBbSCyovZBg==";
       };
     };
+    "needle-2.8.0" = {
+      name = "needle";
+      packageName = "needle";
+      version = "2.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/needle/-/needle-2.8.0.tgz";
+        sha512 = "ZTq6WYkN/3782H1393me3utVYdq2XyqNUFBsprEE3VMAT0+hP/cItpnITpqsY6ep2yeFE4Tqtqwc74VqUlUYtw==";
+      };
+    };
     "negotiator-0.3.0" = {
       name = "negotiator";
       packageName = "negotiator";
@@ -40448,13 +41195,13 @@ let
         sha512 = "Gd1aexpJ3RrOzkssdE8ipS67PuppOAkJNhRqQPp2in2XnJKPm5kvYonYMNVadasSFlNdmVCk9nELV3TnbAfklw==";
       };
     };
-    "netlify-redirect-parser-8.0.0" = {
+    "netlify-redirect-parser-8.1.0" = {
       name = "netlify-redirect-parser";
       packageName = "netlify-redirect-parser";
-      version = "8.0.0";
+      version = "8.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/netlify-redirect-parser/-/netlify-redirect-parser-8.0.0.tgz";
-        sha512 = "4E7YYZHVje+aofCiwznWVZJowf7ed6nrFexlL/ogQaE7745KI8KdHj7itVXAPggpiqiTPj9Iz/LMh/av6iT1Gg==";
+        url = "https://registry.npmjs.org/netlify-redirect-parser/-/netlify-redirect-parser-8.1.0.tgz";
+        sha512 = "y5uzRHSyHVDDIgcFwvRRIELliBc7SKFuvuyVgsIMZWaNDCKNO4Etk2CIeGlJG+++g7NFD/XlYJaqgw2jJkqe4A==";
       };
     };
     "netlify-redirector-0.2.1" = {
@@ -40655,6 +41402,15 @@ let
         sha512 = "oUqnng1vhKLaA4GR+OzVbLuZZ7OOguKCtMHxHMiyP8+9mXidKfoCyc030LbAyNI3xcgCHHyitK3Q8wP+w6DwVQ==";
       };
     };
+    "nocache-2.1.0" = {
+      name = "nocache";
+      packageName = "nocache";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nocache/-/nocache-2.1.0.tgz";
+        sha512 = "0L9FvHG3nfnnmaEQPjT9xhfN4ISk0A8/2j4M37Np4mcDesJjHgEUfgPhdCyZuFI954tjokaIj/A3NdpFNdEh4Q==";
+      };
+    };
     "node-abi-2.30.0" = {
       name = "node-abi";
       packageName = "node-abi";
@@ -40782,6 +41538,15 @@ let
         sha256 = "224950cc405150c37dbd3c4aa65dc0cfb799b1a57f674e9bb76f993268106406";
       };
     };
+    "node-environment-flags-1.0.6" = {
+      name = "node-environment-flags";
+      packageName = "node-environment-flags";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz";
+        sha512 = "5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==";
+      };
+    };
     "node-eta-0.9.0" = {
       name = "node-eta";
       packageName = "node-eta";
@@ -40944,13 +41709,13 @@ let
         sha1 = "87a9065cdb355d3182d8f94ce11188b825c68a3b";
       };
     };
-    "node-ipc-9.2.0" = {
+    "node-ipc-9.2.1" = {
       name = "node-ipc";
       packageName = "node-ipc";
-      version = "9.2.0";
+      version = "9.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-ipc/-/node-ipc-9.2.0.tgz";
-        sha512 = "m4A/wueUS2PqrhM6Z8rzD1J2qvG4QG8NkKY0v3lgdntQI2NTDDL3YbfU6qkDc0RgUiA9UqZTO9CtIiDAIjrVwA==";
+        url = "https://registry.npmjs.org/node-ipc/-/node-ipc-9.2.1.tgz";
+        sha512 = "mJzaM6O3xHf9VT8BULvJSbdVbmHUKRNOH7zDDkCrA1/T+CVjq2WVIDfLt0azZRXpgArJtl3rtmEozrbXPZ9GaQ==";
       };
     };
     "node-libs-browser-2.2.1" = {
@@ -41025,15 +41790,6 @@ let
         sha1 = "e652bbf3885a04dad6a353d74176177c83914707";
       };
     };
-    "node-phantom-simple-2.2.4" = {
-      name = "node-phantom-simple";
-      packageName = "node-phantom-simple";
-      version = "2.2.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-phantom-simple/-/node-phantom-simple-2.2.4.tgz";
-        sha1 = "4fc4effbb02f241fb5082bd4fbab398e4aecb64d";
-      };
-    };
     "node-polyglot-1.0.0" = {
       name = "node-polyglot";
       packageName = "node-polyglot";
@@ -41052,24 +41808,6 @@ let
         sha512 = "TwWAOZb0j7e9eGaf9esRx3ZcLaE5tQ2lvYy1pb5IAaG1a2e2Kv5Lms1Y4hpj+ciXJRofIxxlt5haeQ/2ANeE0Q==";
       };
     };
-    "node-pre-gyp-0.12.0" = {
-      name = "node-pre-gyp";
-      packageName = "node-pre-gyp";
-      version = "0.12.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz";
-        sha512 = "4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==";
-      };
-    };
-    "node-pre-gyp-0.14.0" = {
-      name = "node-pre-gyp";
-      packageName = "node-pre-gyp";
-      version = "0.14.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz";
-        sha512 = "+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA==";
-      };
-    };
     "node-pre-gyp-0.6.39" = {
       name = "node-pre-gyp";
       packageName = "node-pre-gyp";
@@ -41088,31 +41826,13 @@ let
         sha1 = "dbbd4af12134e2e635c245ef93ffcf6f60673a5d";
       };
     };
-    "node-red-admin-0.2.7" = {
+    "node-red-admin-2.2.0" = {
       name = "node-red-admin";
       packageName = "node-red-admin";
-      version = "0.2.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-red-admin/-/node-red-admin-0.2.7.tgz";
-        sha512 = "bsFbC7KFfGY37+SuYfmM9Er00cM92anqp6xCj8x7Y+4qZHOXnLi9XDFoWtvvsC1uQyaMqas1ALCfqcOxLlWngw==";
-      };
-    };
-    "node-red-node-rbe-0.5.0" = {
-      name = "node-red-node-rbe";
-      packageName = "node-red-node-rbe";
-      version = "0.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-red-node-rbe/-/node-red-node-rbe-0.5.0.tgz";
-        sha512 = "88zuty5SiLW2/0vK8ZpMCoEBq2JbR4GEEIoJp3YWhQQytQRRvzHgOodzOkuH4AQoMFZXuVxF1lVswL6yiDCQiQ==";
-      };
-    };
-    "node-red-node-tail-0.3.1" = {
-      name = "node-red-node-tail";
-      packageName = "node-red-node-tail";
-      version = "0.3.1";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-red-node-tail/-/node-red-node-tail-0.3.1.tgz";
-        sha512 = "d/CbPGJMSNekJHOQu4WMNwjXRFnZ4c2+D3nlSdRH6wdUVVc++4nat8TuhcXKUe9W9+nqMrmVhReGnf8UwKsfBw==";
+        url = "https://registry.npmjs.org/node-red-admin/-/node-red-admin-2.2.0.tgz";
+        sha512 = "dBljNubVsolJkgfXUAF3KrCAO+hi5AXz+cftGjfHT76PyVB9pFUbAgTrkjZmKciC/B/14kEV5Ds+SwonqyTMfg==";
       };
     };
     "node-releases-1.1.73" = {
@@ -41151,6 +41871,15 @@ let
         sha512 = "zfWC/gICcqb74D9ndyvxZWaI1jzcoHmf4UTHWQchBNuNMxdBLJMDiUgZ1tjGLEIe/BMhj2DxKD8HOuc2062pDQ==";
       };
     };
+    "node-status-codes-1.0.0" = {
+      name = "node-status-codes";
+      packageName = "node-status-codes";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-status-codes/-/node-status-codes-1.0.0.tgz";
+        sha1 = "5ae5541d024645d32a58fcddc9ceecea7ae3ac2f";
+      };
+    };
     "node-swt-0.1.1" = {
       name = "node-swt";
       packageName = "node-swt";
@@ -41241,6 +41970,24 @@ let
         sha512 = "FbuXC+lK+GU2+63D1kC1ETiZo+Z7SIi7B+mxKTCH1byrh6WFvfBCN/wpherFz0a0bjGd7EKTst/cz0yLeNngug==";
       };
     };
+    "noise-peer-2.1.1" = {
+      name = "noise-peer";
+      packageName = "noise-peer";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/noise-peer/-/noise-peer-2.1.1.tgz";
+        sha512 = "8bzZiV7D7GbHn4dSJ89EHYSpXWhveqH+yXjylgPA8qLFAXGizLkZOadZGpIVZqtQpbHuZGI4uUxVqVGHNGzC1A==";
+      };
+    };
+    "noise-protocol-3.0.1" = {
+      name = "noise-protocol";
+      packageName = "noise-protocol";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/noise-protocol/-/noise-protocol-3.0.1.tgz";
+        sha512 = "4rQGZvismeb4tMf91O31oDYLGntkEs4p4wa69+14juHTV4A3COtWyDck9PwBqFjg7S8TPZLCUXUdOnOZQJ5UBA==";
+      };
+    };
     "nomnom-1.8.1" = {
       name = "nomnom";
       packageName = "nomnom";
@@ -41646,6 +42393,15 @@ let
         sha512 = "PuFYYtnQ8IyVl6ib9d3PepeehcUeHN9IO5N/iCRhyg9tStQcqGQBRVHmfmMWPDERU3KwZoHFvbJ4FPXPspvzbA==";
       };
     };
+    "npm-run-path-1.0.0" = {
+      name = "npm-run-path";
+      packageName = "npm-run-path";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-run-path/-/npm-run-path-1.0.0.tgz";
+        sha1 = "f5c32bf595fe81ae927daec52e82f8b000ac3c8f";
+      };
+    };
     "npm-run-path-2.0.2" = {
       name = "npm-run-path";
       packageName = "npm-run-path";
@@ -41853,13 +42609,13 @@ let
         sha512 = "KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==";
       };
     };
-    "oas-resolver-2.5.5" = {
+    "oas-resolver-2.5.6" = {
       name = "oas-resolver";
       packageName = "oas-resolver";
-      version = "2.5.5";
+      version = "2.5.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.5.tgz";
-        sha512 = "1po1gzIlTXQqyVNtLFWJuzDm4xxhMCJ8QcP3OarKDO8aJ8AmCtQ67XZ1X+nBbHH4CjTcEsIab1qX5+GIU4f2Gg==";
+        url = "https://registry.npmjs.org/oas-resolver/-/oas-resolver-2.5.6.tgz";
+        sha512 = "Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==";
       };
     };
     "oas-schema-walker-1.1.5" = {
@@ -41871,13 +42627,13 @@ let
         sha512 = "2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==";
       };
     };
-    "oas-validator-5.0.7" = {
+    "oas-validator-5.0.8" = {
       name = "oas-validator";
       packageName = "oas-validator";
-      version = "5.0.7";
+      version = "5.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.7.tgz";
-        sha512 = "gtOjKWQMVeOBIuioguaXA7sMXfJ9q4efHDFo3kmcy9HZEtmGla3aptQK0LZG1AhOX9zambKUwH72kqgoIJa0Fg==";
+        url = "https://registry.npmjs.org/oas-validator/-/oas-validator-5.0.8.tgz";
+        sha512 = "cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==";
       };
     };
     "oauth-0.9.15" = {
@@ -42007,13 +42763,13 @@ let
         sha512 = "gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==";
       };
     };
-    "object-inspect-1.10.3" = {
+    "object-inspect-1.11.0" = {
       name = "object-inspect";
       packageName = "object-inspect";
-      version = "1.10.3";
+      version = "1.11.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz";
-        sha512 = "e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==";
+        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz";
+        sha512 = "jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==";
       };
     };
     "object-inspect-1.4.1" = {
@@ -42097,6 +42853,15 @@ let
         sha1 = "f79c4493af0c5377b59fe39d395e41042dd045bb";
       };
     };
+    "object.assign-4.1.0" = {
+      name = "object.assign";
+      packageName = "object.assign";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz";
+        sha512 = "exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==";
+      };
+    };
     "object.assign-4.1.2" = {
       name = "object.assign";
       packageName = "object.assign";
@@ -42250,13 +43015,13 @@ let
         sha512 = "0HGaSR/E/seIhSzFxLkh0QqckuNSre4iGqSElZRUv1hVHH2YgrZ7xtQL9McwL8o1fh6HqkzykjUx0Iy2haVIUg==";
       };
     };
-    "office-ui-fabric-react-7.172.1" = {
+    "office-ui-fabric-react-7.173.1" = {
       name = "office-ui-fabric-react";
       packageName = "office-ui-fabric-react";
-      version = "7.172.1";
+      version = "7.173.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/office-ui-fabric-react/-/office-ui-fabric-react-7.172.1.tgz";
-        sha512 = "W3QFwxmHAu4Pn65hccuLSx8yiGzto3eRkMgD46OIwDT9smTEF6U3OVSZC/8cpX24BJF9Qe5u034InIfzPLtJeQ==";
+        url = "https://registry.npmjs.org/office-ui-fabric-react/-/office-ui-fabric-react-7.173.1.tgz";
+        sha512 = "7FKJ4lVXGkVRQccPz3XDeCAysE0h687elFyaRir3BUVAtkqoye9IB7IF/68SsUQahv6Q0LI3YTWym0IG/tlBEQ==";
       };
     };
     "omggif-1.0.10" = {
@@ -42430,13 +43195,13 @@ let
         sha512 = "fvaSZRzprpwLFge/mcwE0CItfniNisVNamDdMK1FQUjh4ArQZ8ZWSkDaJbZc3XaANKZHq0xIa8NJpZ2HSe3oXA==";
       };
     };
-    "oo-ascii-tree-1.30.0" = {
+    "oo-ascii-tree-1.31.0" = {
       name = "oo-ascii-tree";
       packageName = "oo-ascii-tree";
-      version = "1.30.0";
+      version = "1.31.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/oo-ascii-tree/-/oo-ascii-tree-1.30.0.tgz";
-        sha512 = "TzXuoCnha2QHFcAR+8+tBgD7Wnn6Uh+P3aZMoXKDJ3CVLXFnTnzHy4WMmmz01pTfv+f5haQMjhL9OIFJLEZ5kA==";
+        url = "https://registry.npmjs.org/oo-ascii-tree/-/oo-ascii-tree-1.31.0.tgz";
+        sha512 = "gNb2MyP1ZcF7cX0WgsAjYe4gZcx7BMLBWKE2TJZZbQ9/j4D8gbJh5Aq6RlXBgev74ODlgAVVcPr2wKU4Dufhqg==";
       };
     };
     "opal-runtime-1.0.11" = {
@@ -42475,15 +43240,6 @@ let
         sha512 = "IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==";
       };
     };
-    "open-7.1.0" = {
-      name = "open";
-      packageName = "open";
-      version = "7.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/open/-/open-7.1.0.tgz";
-        sha512 = "lLPI5KgOwEYCDKXf4np7y1PBEkj7HYIyP2DY8mVDRnx0VIIu6bNrRB0R66TuO7Mack6EnTNLm4uvcl1UoklTpA==";
-      };
-    };
     "open-7.3.0" = {
       name = "open";
       packageName = "open";
@@ -42970,15 +43726,6 @@ let
         sha512 = "9tXIMPvjZ7hPTbk8DFq1f7Kow/HU/pQYB60JbNq+QnGwcyhWVZaQ4hM9zQDEsPxw/muLpgiHSaumUZxCAmod/w==";
       };
     };
-    "ora-5.3.0" = {
-      name = "ora";
-      packageName = "ora";
-      version = "5.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz";
-        sha512 = "zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==";
-      };
-    };
     "ora-5.4.0" = {
       name = "ora";
       packageName = "ora";
@@ -43123,22 +43870,22 @@ let
         sha512 = "0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==";
       };
     };
-    "ot-builder-1.0.9" = {
+    "ot-builder-1.1.0" = {
       name = "ot-builder";
       packageName = "ot-builder";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ot-builder/-/ot-builder-1.0.9.tgz";
-        sha512 = "y3TBkZdnqoLtHsyPDni+NA43nlN3hGeEfw+5FvrtNplnwMqFtYTTZ0aUa9TCmjyih5dtMOGay8HhOSFGZ5ONhw==";
+        url = "https://registry.npmjs.org/ot-builder/-/ot-builder-1.1.0.tgz";
+        sha512 = "IvQqHq33yHRKQuBzlzE6N3tXR2IktvBXeTvdASzib5Lqz84MJ1raGQrDNMimYxpRjcXZFJVfDgATYy5+gLhJIQ==";
       };
     };
-    "otb-ttc-bundle-1.0.9" = {
+    "otb-ttc-bundle-1.1.0" = {
       name = "otb-ttc-bundle";
       packageName = "otb-ttc-bundle";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/otb-ttc-bundle/-/otb-ttc-bundle-1.0.9.tgz";
-        sha512 = "q1PtQMsMMcZluIkNh5Nk469vzM0j8yNzIqab5/xhM0dstnIC/+8ax0yR1uf6MvcKuZSv6Pict/knFs6n/k065w==";
+        url = "https://registry.npmjs.org/otb-ttc-bundle/-/otb-ttc-bundle-1.1.0.tgz";
+        sha512 = "tn3jkqHfaVIQsecQyAUTNf/VAAfE5EQiDH3AyIb1OFXjcdp0P9pBZUd0E4iP+rQjVoN8eMy1uCgvde5M5ZqVrg==";
       };
     };
     "ow-0.21.0" = {
@@ -43591,6 +44338,15 @@ let
         sha1 = "c8ecac094227cdf76a316874ed05e27cc939a0e0";
       };
     };
+    "package-json-2.4.0" = {
+      name = "package-json";
+      packageName = "package-json";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/package-json/-/package-json-2.4.0.tgz";
+        sha1 = "0d15bd67d1cbbddbb2ca222ff2edb86bcb31a8bb";
+      };
+    };
     "package-json-4.0.1" = {
       name = "package-json";
       packageName = "package-json";
@@ -43672,6 +44428,15 @@ let
         sha512 = "RfahPCunM9GI7ryJV/zY0bWQiokZyLqaSNHXtbNSoLb7bwTvBbJBEyCJ01KWs4j1Gj7GmX8crYXQ1sNX6P2VKA==";
       };
     };
+    "pacote-11.3.5" = {
+      name = "pacote";
+      packageName = "pacote";
+      version = "11.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pacote/-/pacote-11.3.5.tgz";
+        sha512 = "fT375Yczn4zi+6Hkk2TBe1x1sP8FgFsEIZ2/iWaXY2r/NkhDJfxbcn5paz1+RTFCyNf+dPnaoBDJoAxXSU8Bkg==";
+      };
+    };
     "pad-0.0.5" = {
       name = "pad";
       packageName = "pad";
@@ -43690,13 +44455,13 @@ let
         sha1 = "ad1f22ce1bf0fdc0d6ddd908af17f351a404b8ac";
       };
     };
-    "paid-services-2.0.0" = {
+    "paid-services-2.0.1" = {
       name = "paid-services";
       packageName = "paid-services";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/paid-services/-/paid-services-2.0.0.tgz";
-        sha512 = "Z79YC8641Zd58D7tSoQayRdEiMbPUyxs88R5z8Wc66P8eUJKxAiKxo3QLxrx+3bDwI90RylZBVkYY7usAu6Tng==";
+        url = "https://registry.npmjs.org/paid-services/-/paid-services-2.0.1.tgz";
+        sha512 = "zbXKJneBdfu6gnl/H4ahUHPN7gyV2dO0kkz6U7sMm+VmWjPyJgRqpykbAE32YohJtcJCCmgHZf88cSMhRL9jpQ==";
       };
     };
     "pako-0.2.9" = {
@@ -43717,13 +44482,13 @@ let
         sha512 = "4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==";
       };
     };
-    "papaparse-5.2.0" = {
+    "papaparse-5.3.1" = {
       name = "papaparse";
       packageName = "papaparse";
-      version = "5.2.0";
+      version = "5.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/papaparse/-/papaparse-5.2.0.tgz";
-        sha512 = "ylq1wgUSnagU+MKQtNeVqrPhZuMYBvOSL00DHycFTCxownF95gpLAk1HiHdUW77N8yxRq1qHXLdlIPyBSG9NSA==";
+        url = "https://registry.npmjs.org/papaparse/-/papaparse-5.3.1.tgz";
+        sha512 = "Dbt2yjLJrCwH2sRqKFFJaN5XgIASO9YOFeFP8rIBRG2Ain8mqk5r1M6DkfvqEVozVcz3r3HaUGw253hA1nLIcA==";
       };
     };
     "parallel-transform-1.2.0" = {
@@ -43879,15 +44644,6 @@ let
         sha512 = "Js7ueMZOVSZ3tP8C7E3KZiHv6QQl7lnJ+OkbxoaFazzSa2KyEHqApfGbU3XboUgUnq4ZuUmskUpYKTNx01fm5A==";
       };
     };
-    "parse-github-repo-url-1.4.1" = {
-      name = "parse-github-repo-url";
-      packageName = "parse-github-repo-url";
-      version = "1.4.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz";
-        sha1 = "9e7d8bb252a6cb6ba42595060b7bf6df3dbc1f50";
-      };
-    };
     "parse-github-url-1.0.2" = {
       name = "parse-github-url";
       packageName = "parse-github-url";
@@ -44086,13 +44842,13 @@ let
         sha1 = "32d4b6afde631420e5f415919a222b774b575707";
       };
     };
-    "parse-url-5.0.7" = {
+    "parse-url-6.0.0" = {
       name = "parse-url";
       packageName = "parse-url";
-      version = "5.0.7";
+      version = "6.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/parse-url/-/parse-url-5.0.7.tgz";
-        sha512 = "CgbjyWT6aOh2oNSUS0cioYQsGysj9hQ2IdbOfeNwq5KOaKM7dOw/yTupiI0cnJhaDHJEIGybPkQz7LF9WNIhyw==";
+        url = "https://registry.npmjs.org/parse-url/-/parse-url-6.0.0.tgz";
+        sha512 = "cYyojeX7yIIwuJzledIHeLUBVJ6COVLeT4eF+2P6aKVzwvgKQPndCBv3+yQ7pcWjqToYwaligxzSYNNmGoMAvw==";
       };
     };
     "parse5-1.5.1" = {
@@ -44455,6 +45211,15 @@ let
         sha1 = "365417dede44430d1c11af61027facf074bdfc53";
       };
     };
+    "path-key-1.0.0" = {
+      name = "path-key";
+      packageName = "path-key";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-key/-/path-key-1.0.0.tgz";
+        sha1 = "5d53d578019646c0d68800db4e146e6bdc2ac7af";
+      };
+    };
     "path-key-2.0.1" = {
       name = "path-key";
       packageName = "path-key";
@@ -44617,13 +45382,13 @@ let
         sha512 = "8L6zlp+F4InnoFv0jjGdar948yEzP30bE96f6RHnECaUsU9BWRiTBhkAuhIobG4Lrr8CBscUcar7UWe0Bm1lqA==";
       };
     };
-    "patrisika-scopes-0.11.1" = {
+    "patrisika-scopes-0.12.0" = {
       name = "patrisika-scopes";
       packageName = "patrisika-scopes";
-      version = "0.11.1";
+      version = "0.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/patrisika-scopes/-/patrisika-scopes-0.11.1.tgz";
-        sha512 = "UCIBMx1nzNaR5CcDoQ9/jtY5RlJqf2CrJYHiMZJhi15NPvsPKRfJT/DPZMkhCunexOKmH03EDZYZU1hGn7mL0w==";
+        url = "https://registry.npmjs.org/patrisika-scopes/-/patrisika-scopes-0.12.0.tgz";
+        sha512 = "rj428KYq5leS75PCDl6iyl91n6/d63yw1ikHYwd1z9UXwWk11Vj2gpTu0CxjLZJJOiFNA01LiX+WMpC5icCKng==";
       };
     };
     "pause-0.0.1" = {
@@ -44653,13 +45418,22 @@ let
         sha512 = "iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==";
       };
     };
-    "peek-readable-3.1.3" = {
+    "peek-readable-3.1.4" = {
       name = "peek-readable";
       packageName = "peek-readable";
-      version = "3.1.3";
+      version = "3.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/peek-readable/-/peek-readable-3.1.3.tgz";
-        sha512 = "mpAcysyRJxmICBcBa5IXH7SZPvWkcghm6Fk8RekoS3v+BpbSzlZzuWbMx+GXrlUwESi9qHar4nVEZNMKylIHvg==";
+        url = "https://registry.npmjs.org/peek-readable/-/peek-readable-3.1.4.tgz";
+        sha512 = "DX7ec7frSMtCWw+zMd27f66hcxIz/w9LQTY2RflB4WNHCVPAye1pJiP2t3gvaaOhu7IOhtPbHw8MemMj+F5lrg==";
+      };
+    };
+    "peek-readable-4.0.0" = {
+      name = "peek-readable";
+      packageName = "peek-readable";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.0.tgz";
+        sha512 = "kLbU4cz6h86poGVBKgAVMpFmD47nX04fPPQNKnv9fuj+IJZYkEBjsYAVu5nDbZWx0ZsWwWlMzeG90zQa5KLBaA==";
       };
     };
     "peek-stream-1.1.3" = {
@@ -44716,13 +45490,13 @@ let
         sha1 = "7a57eb550a6783f9115331fcf4663d5c8e007a50";
       };
     };
-    "perfect-scrollbar-1.5.1" = {
+    "perfect-scrollbar-1.5.2" = {
       name = "perfect-scrollbar";
       packageName = "perfect-scrollbar";
-      version = "1.5.1";
+      version = "1.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.1.tgz";
-        sha512 = "MrSImINnIh3Tm1hdPT6bji6fmIeRorVEegQvyUnhqko2hDGTHhmjPefHXfxG/Jb8xVbfCwgmUIlIajERGXjVXQ==";
+        url = "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.2.tgz";
+        sha512 = "McHAinFkyzKbBZrFtb4MT2mxkehp15KvOX/UrjB8C5EZZXHTHgyETo5IGFYtHRTI2Pb2bsV0OE0YnkjT9Cw3aw==";
       };
     };
     "performance-now-0.2.0" = {
@@ -44806,15 +45580,6 @@ let
         sha512 = "YmuA56alyBq7M59vxVBfPJrGSozru8QAdoNlWuW3cz8l+UX3cWge0vTvjKhsSHSJpo3Bom8/Mm6hf0TR5GY0+w==";
       };
     };
-    "phantomjs-prebuilt-2.1.16" = {
-      name = "phantomjs-prebuilt";
-      packageName = "phantomjs-prebuilt";
-      version = "2.1.16";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz";
-        sha1 = "efd212a4a3966d3647684ea8ba788549be2aefef";
-      };
-    };
     "phin-2.9.3" = {
       name = "phin";
       packageName = "phin";
@@ -45220,6 +45985,15 @@ let
         sha1 = "72b726aa6fac1edeee42256c7d8dc256b335677f";
       };
     };
+    "pluralize-3.1.0" = {
+      name = "pluralize";
+      packageName = "pluralize";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pluralize/-/pluralize-3.1.0.tgz";
+        sha1 = "84213d0a12356069daa84060c559242633161368";
+      };
+    };
     "pluralize-5.1.0" = {
       name = "pluralize";
       packageName = "pluralize";
@@ -45328,13 +46102,13 @@ let
         sha512 = "40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==";
       };
     };
-    "pnp-webpack-plugin-1.6.4" = {
+    "pnp-webpack-plugin-1.7.0" = {
       name = "pnp-webpack-plugin";
       packageName = "pnp-webpack-plugin";
-      version = "1.6.4";
+      version = "1.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz";
-        sha512 = "7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg==";
+        url = "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.7.0.tgz";
+        sha512 = "2Rb3vm+EXble/sMXNSu6eoBx8e79gKqhNq9F5ZWW6ERNCTE/Q0wQNne5541tE5vKjfM8hpNCYL+LGc1YTfI0dg==";
       };
     };
     "polished-4.1.3" = {
@@ -45446,13 +46220,13 @@ let
         sha512 = "/tZY0PXExXXnNhKv3TOvZAOUYRyuqcCbBm2c17YMDK0PlVII3K7/LKdt3ScHL+hhouddjUWi+1sKDf9xXW+8YA==";
       };
     };
-    "postcss-8.3.5" = {
+    "postcss-8.3.6" = {
       name = "postcss";
       packageName = "postcss";
-      version = "8.3.5";
+      version = "8.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/postcss/-/postcss-8.3.5.tgz";
-        sha512 = "NxTuJocUhYGsMiMFHDUkmjSKT3EdH4/WbGF6GCi1NDGk+vbcUTun4fpbOqaPtD8IIsztA2ilZm2DhYCuyN58gA==";
+        url = "https://registry.npmjs.org/postcss/-/postcss-8.3.6.tgz";
+        sha512 = "wG1cc/JhRgdqB6WHEuyLTedf3KIRuD0hG6ldkFEZNCjRxiC+3i6kkWUUbiJQayP28iwG35cEmAbe98585BYV0A==";
       };
     };
     "postcss-calc-7.0.5" = {
@@ -46373,6 +47147,15 @@ let
         sha512 = "kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==";
       };
     };
+    "pretty-format-26.6.2" = {
+      name = "pretty-format";
+      packageName = "pretty-format";
+      version = "26.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz";
+        sha512 = "7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==";
+      };
+    };
     "pretty-hash-1.0.1" = {
       name = "pretty-hash";
       packageName = "pretty-hash";
@@ -46481,13 +47264,13 @@ let
         sha512 = "dG2w7WtovUa4SiYTdWn9H8Bd4JNdei2djtkP/Bk9fXq81j5Q15ZPHYSwhUVvBRbp5zMkGtu0Yk62HuMcly0pRw==";
       };
     };
-    "prismjs-1.24.0" = {
+    "prismjs-1.24.1" = {
       name = "prismjs";
       packageName = "prismjs";
-      version = "1.24.0";
+      version = "1.24.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prismjs/-/prismjs-1.24.0.tgz";
-        sha512 = "SqV5GRsNqnzCL8k5dfAjCNhUrF3pR0A9lTDSCUZeh/LIshheXJEaP0hwLz2t4XHivd2J/v2HR+gRnigzeKe3cQ==";
+        url = "https://registry.npmjs.org/prismjs/-/prismjs-1.24.1.tgz";
+        sha512 = "mNPsedLuk90RVJioIky8ANZEwYm5w9LcvCXrxHlwf4fNVSn8jEipMybMkWUyyF0JhnC+C4VcOVSBuHRKs1L5Ow==";
       };
     };
     "private-0.1.8" = {
@@ -46571,13 +47354,13 @@ let
         sha512 = "X11vso1oNLtyDa2j8fsMol2fph1+5PoQ4vpEc1it/rM8eLuRTmrmTg4jfn82WhNur241AYitgjKCgmlgMRZesw==";
       };
     };
-    "process-exists-4.0.0" = {
+    "process-exists-4.1.0" = {
       name = "process-exists";
       packageName = "process-exists";
-      version = "4.0.0";
+      version = "4.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/process-exists/-/process-exists-4.0.0.tgz";
-        sha512 = "BnlcYPiZjSW+fye12g9B7UeCzMAOdMkxuTz3zcytJ2BHwYZf2RoKvuuwUcJLeXlGj58x9YQrvhT21PmKhUc4UQ==";
+        url = "https://registry.npmjs.org/process-exists/-/process-exists-4.1.0.tgz";
+        sha512 = "BBJoiorUKoP2AuM5q/yKwIfT1YWRHsaxjW+Ayu9erLhqKOfnXzzVVML0XTYoQZuI1YvcWKmc1dh06DEy4+KzfA==";
       };
     };
     "process-nextick-args-1.0.7" = {
@@ -46760,15 +47543,6 @@ let
         sha1 = "98472870bf228132fcbdd868129bad12c3c029e3";
       };
     };
-    "promise-phantom-3.1.6" = {
-      name = "promise-phantom";
-      packageName = "promise-phantom";
-      version = "3.1.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/promise-phantom/-/promise-phantom-3.1.6.tgz";
-        sha1 = "bbcfd248725259f2bb115a27bfa8d65dc420f931";
-      };
-    };
     "promise-queue-2.2.5" = {
       name = "promise-queue";
       packageName = "promise-queue";
@@ -46967,6 +47741,15 @@ let
         sha512 = "4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==";
       };
     };
+    "protocol-buffers-4.2.0" = {
+      name = "protocol-buffers";
+      packageName = "protocol-buffers";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/protocol-buffers/-/protocol-buffers-4.2.0.tgz";
+        sha512 = "hNp56d5uuREVde7UqP+dmBkwzxrhJwYU5nL/mdivyFfkRZdgAgojkyBeU3jKo7ZHrjdSx6Q1CwUmYJI6INt20g==";
+      };
+    };
     "protocol-buffers-encodings-1.1.1" = {
       name = "protocol-buffers-encodings";
       packageName = "protocol-buffers-encodings";
@@ -46976,6 +47759,15 @@ let
         sha512 = "5aFshI9SbhtcMiDiZZu3g2tMlZeS5lhni//AGJ7V34PQLU5JA91Cva7TIs6inZhYikS3OpnUzAUuL6YtS0CyDA==";
       };
     };
+    "protocol-buffers-schema-3.5.1" = {
+      name = "protocol-buffers-schema";
+      packageName = "protocol-buffers-schema";
+      version = "3.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.5.1.tgz";
+        sha512 = "YVCvdhxWNDP8/nJDyXLuM+UFsuPk4+1PB7WGPVDzm3HTHbzFLxQYeW2iZpS4mmnXrQJGBzt230t/BbEb7PrQaw==";
+      };
+    };
     "protocols-1.4.8" = {
       name = "protocols";
       packageName = "protocols";
@@ -47084,15 +47876,6 @@ let
         sha512 = "LLyJcNVKRK8AUXKcpCrZA21+mlrjzlzTLQZp/Yu279hqqQrakAu9IusT7zEddhhkQrzm6UQ9cER3nhrIZqh0hw==";
       };
     };
-    "psbt-1.1.8" = {
-      name = "psbt";
-      packageName = "psbt";
-      version = "1.1.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/psbt/-/psbt-1.1.8.tgz";
-        sha512 = "gnGq1ikGhvcsJij9BU2DZWBfXp09yRi/72+790hNwPaMPobgWrdlQ6sg6rNyDNYf+lwzYV8WIyHOLk2zH/7fGg==";
-      };
-    };
     "pseudomap-1.0.2" = {
       name = "pseudomap";
       packageName = "pseudomap";
@@ -47948,6 +48731,15 @@ let
         sha512 = "oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==";
       };
     };
+    "pumpify-2.0.1" = {
+      name = "pumpify";
+      packageName = "pumpify";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz";
+        sha512 = "m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==";
+      };
+    };
     "punycode-1.3.2" = {
       name = "punycode";
       packageName = "punycode";
@@ -47993,6 +48785,15 @@ let
         sha512 = "bsyDHbFBvbofZ63xqF7hMhuKBX1h4WsqFIAoh1GuHr/Y9cewh+EFNAOdqWSkQRHLiBU/MY6M+8PUnXXjAPtuSg==";
       };
     };
+    "puppeteer-9.1.1" = {
+      name = "puppeteer";
+      packageName = "puppeteer";
+      version = "9.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/puppeteer/-/puppeteer-9.1.1.tgz";
+        sha512 = "W+nOulP2tYd/ZG99WuZC/I5ljjQQ7EUw/jQGcIb9eu8mDlZxNY2SgcJXTLG9h5gRvqA3uJOe4hZXYsd3EqioMw==";
+      };
+    };
     "purgecss-2.3.0" = {
       name = "purgecss";
       packageName = "purgecss";
@@ -48020,13 +48821,13 @@ let
         sha512 = "Cb5aOY6Z6JxjAKBmpmmzoJ+8I6pJlRjJ5WYoM2Vw3kSlClojmIXzA+FP0yglJ4ELokrqLX223frxJTnxUx0dpw==";
       };
     };
-    "push-stream-to-pull-stream-1.0.4" = {
+    "push-stream-to-pull-stream-1.0.5" = {
       name = "push-stream-to-pull-stream";
       packageName = "push-stream-to-pull-stream";
-      version = "1.0.4";
+      version = "1.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/push-stream-to-pull-stream/-/push-stream-to-pull-stream-1.0.4.tgz";
-        sha512 = "W1ysxl25uU6410OGipJM0/FvlNoXvuZqIgSLGELkZ6+MaXPAp/wr2EvAYKrs1o4blzhYssv/cFXiiRJkMnnhrA==";
+        url = "https://registry.npmjs.org/push-stream-to-pull-stream/-/push-stream-to-pull-stream-1.0.5.tgz";
+        sha512 = "oQfzDroAv+SySQIXFiBVkShIh8Vgpr+hd7TrwyUna1kVrbv3i6D+QQC+31QdI7D6Jow61QLQW+uWToxv4cXI2w==";
       };
     };
     "pushdata-bitcoin-1.0.1" = {
@@ -48038,13 +48839,13 @@ let
         sha1 = "15931d3cd967ade52206f523aa7331aef7d43af7";
       };
     };
-    "pyright-1.1.154" = {
+    "pyright-1.1.157" = {
       name = "pyright";
       packageName = "pyright";
-      version = "1.1.154";
+      version = "1.1.157";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pyright/-/pyright-1.1.154.tgz";
-        sha512 = "J2P5Iurkl7smCyB8CH5fsm8GOGeKRk7d1HWcFiro94E0vJW/5sSKXrkfjPxo7XZ+e96UiW1qyiVTCC++db3Tfg==";
+        url = "https://registry.npmjs.org/pyright/-/pyright-1.1.157.tgz";
+        sha512 = "slTex47hQKuyoi579Zk7lEhVH+4Dmn+eZ3gP1JGcFBcbcmDwd9ZI1ESww3jY3YoOYdNbYTafxBNuh3RHGkGiMA==";
       };
     };
     "q-0.9.7" = {
@@ -48560,6 +49361,15 @@ let
         sha1 = "f7d97d92dee6665ec5f6da08c7f963cad4b2ac99";
       };
     };
+    "random-words-1.1.1" = {
+      name = "random-words";
+      packageName = "random-words";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/random-words/-/random-words-1.1.1.tgz";
+        sha512 = "Rdk5EoQePyt9Tz3RjeMELi2BSaCI+jDiOkBr4U+3fyBRiiW3qqEuaegGAUMOZ4yGWlQscFQGqQpdic3mAbNkrw==";
+      };
+    };
     "randomatic-3.1.1" = {
       name = "randomatic";
       packageName = "randomatic";
@@ -48740,13 +49550,13 @@ let
         sha1 = "08c6e04a0168f6eb621c22ab6cb1151bd9f4a64d";
       };
     };
-    "rcedit-2.3.0" = {
+    "rcedit-3.0.1" = {
       name = "rcedit";
       packageName = "rcedit";
-      version = "2.3.0";
+      version = "3.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rcedit/-/rcedit-2.3.0.tgz";
-        sha512 = "h1gNEl9Oai1oijwyJ1WYqYSXTStHnOcv1KYljg/8WM4NAg3H1KBK3azIaKkQ1WQl+d7PoJpcBMscPfLXVKgCLQ==";
+        url = "https://registry.npmjs.org/rcedit/-/rcedit-3.0.1.tgz";
+        sha512 = "XM0Jv40/y4hVAqj/MO70o/IWs4uOsaSoo2mLyk3klFDW+SStLnCtzuQu+1OBTIMGlM8CvaK9ftlYCp6DJ+cMsw==";
       };
     };
     "re-emitter-1.1.4" = {
@@ -48776,6 +49586,15 @@ let
         sha512 = "eizTZL2ZO0ZseLqfD4t3Qd0M3b3Nr0MBWpX81EbPMIud/1d/CSfUIx2GQK8fWiAeHoSekO5EOeFib2udTZLwYw==";
       };
     };
+    "reachdown-1.1.0" = {
+      name = "reachdown";
+      packageName = "reachdown";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/reachdown/-/reachdown-1.1.0.tgz";
+        sha512 = "6LsdRe4cZyOjw4NnvbhUd/rGG7WQ9HMopPr+kyL018Uci4kijtxcGR5kVb5Ln13k4PEE+fEFQbjfOvNw7cnXmA==";
+      };
+    };
     "react-16.14.0" = {
       name = "react";
       packageName = "react";
@@ -48803,13 +49622,13 @@ let
         sha512 = "dx0LvIGHcOPtKbeiSUM4jqpBl3TcY7CDjZdfOIcKeznE7BWr9dg0iPG90G5yfVQ+p/rGNMXdbfStvzQZEVEi4A==";
       };
     };
-    "react-devtools-core-4.13.5" = {
+    "react-devtools-core-4.14.0" = {
       name = "react-devtools-core";
       packageName = "react-devtools-core";
-      version = "4.13.5";
+      version = "4.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.13.5.tgz";
-        sha512 = "k+P5VSKM6P22Go9IQ8dJmjj9fbztvKt1iRDI/4wS5oTvd1EnytIJMYB59wZt+D3kgp64jklNX/MRmY42xAQ08g==";
+        url = "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.14.0.tgz";
+        sha512 = "cE7tkSUkGCDxTA79pntDGJCBgzNN/XxA3kgPdXujdfSfEfVhzrItQIEsN0kCN/hJJACDvH2Q8p5+tJb/K4B3qA==";
       };
     };
     "react-dom-16.14.0" = {
@@ -48866,6 +49685,15 @@ let
         sha512 = "24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==";
       };
     };
+    "react-is-17.0.2" = {
+      name = "react-is";
+      packageName = "react-is";
+      version = "17.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz";
+        sha512 = "w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==";
+      };
+    };
     "react-lifecycles-compat-3.0.4" = {
       name = "react-lifecycles-compat";
       packageName = "react-lifecycles-compat";
@@ -49217,13 +50045,13 @@ let
         sha512 = "+oZJurc4hXpaaqsN68GoZGQAQIA3qr09Or4fqEsargABnbe5Aau8hFn6ISVleT3cpY/0n/8drn7huyyEvTbghA==";
       };
     };
-    "readable-web-to-node-stream-3.0.1" = {
+    "readable-web-to-node-stream-3.0.2" = {
       name = "readable-web-to-node-stream";
       packageName = "readable-web-to-node-stream";
-      version = "3.0.1";
+      version = "3.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.1.tgz";
-        sha512 = "4zDC6CvjUyusN7V0QLsXVB7pJCD9+vtrM9bYDRv6uBQ+SKfx36rp5AFNPRgh9auKRul/a1iFZJYXcCbwRL+SaA==";
+        url = "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz";
+        sha512 = "ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==";
       };
     };
     "readdir-glob-1.1.1" = {
@@ -49253,6 +50081,15 @@ let
         sha512 = "1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==";
       };
     };
+    "readdirp-3.2.0" = {
+      name = "readdirp";
+      packageName = "readdirp";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz";
+        sha512 = "crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==";
+      };
+    };
     "readdirp-3.5.0" = {
       name = "readdirp";
       packageName = "readdirp";
@@ -49361,13 +50198,13 @@ let
         sha1 = "85204b54dba82d5742e28c96756ef43af50e3384";
       };
     };
-    "rechoir-0.7.0" = {
+    "rechoir-0.7.1" = {
       name = "rechoir";
       packageName = "rechoir";
-      version = "0.7.0";
+      version = "0.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz";
-        sha512 = "ADsDEH2bvbjltXEP+hTIAmeFekTFK0V2BTxMkok6qILyAJEXV0AFfoWcAq4yfll5VdIMd/RVXq0lR+wQi5ZU3Q==";
+        url = "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz";
+        sha512 = "/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==";
       };
     };
     "record-cache-1.1.1" = {
@@ -49469,13 +50306,13 @@ let
         sha1 = "b66d828cdcafe6b4b8a428a7def4c6bcac31c8b4";
       };
     };
-    "redoc-2.0.0-rc.54" = {
+    "redoc-2.0.0-rc.55" = {
       name = "redoc";
       packageName = "redoc";
-      version = "2.0.0-rc.54";
+      version = "2.0.0-rc.55";
       src = fetchurl {
-        url = "https://registry.npmjs.org/redoc/-/redoc-2.0.0-rc.54.tgz";
-        sha512 = "xwukaWdoktkDAoQuhajekdC54+/lSLwIUqJCNSTVEjeYEuZPq2tFUj9H5SBt8/YSq5UF/zOmDQrXPWMgildQpQ==";
+        url = "https://registry.npmjs.org/redoc/-/redoc-2.0.0-rc.55.tgz";
+        sha512 = "32sUHhc33m8zQKz2V7xREwlf05S52dDOkn7K0WMquu2GDl6ZquxmrQfqnlj0IPoVCWQPR+XosmmIJj4rZbqjeA==";
       };
     };
     "reduce-component-1.0.1" = {
@@ -49523,13 +50360,22 @@ let
         sha512 = "Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==";
       };
     };
-    "reftools-1.1.8" = {
+    "refpool-1.2.2" = {
+      name = "refpool";
+      packageName = "refpool";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/refpool/-/refpool-1.2.2.tgz";
+        sha512 = "uxnVlknIezgMMYQu2RDU/OCkyHntFHnC68PqghdKun2z3W3t5CmAt4uDr28TcPP2GQNsTAjvX1+vpHVrjvcolg==";
+      };
+    };
+    "reftools-1.1.9" = {
       name = "reftools";
       packageName = "reftools";
-      version = "1.1.8";
+      version = "1.1.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/reftools/-/reftools-1.1.8.tgz";
-        sha512 = "Yvz9NH8uFHzD/AXX82Li1GdAP6FzDBxEZw+njerNBBQv/XHihqsWAjNfXtaq4QD2l4TEZVnp4UbktdYSegAM3g==";
+        url = "https://registry.npmjs.org/reftools/-/reftools-1.1.9.tgz";
+        sha512 = "OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==";
       };
     };
     "regenerate-1.4.2" = {
@@ -49604,6 +50450,15 @@ let
         sha512 = "J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==";
       };
     };
+    "regexp-to-ast-0.3.5" = {
+      name = "regexp-to-ast";
+      packageName = "regexp-to-ast";
+      version = "0.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regexp-to-ast/-/regexp-to-ast-0.3.5.tgz";
+        sha512 = "1CJygtdvsfNFwiyjaMLBWtg2tfEqx/jSZ8S6TV+GlNL8kiH8rb4cm5Pb7A/C2BpyM/fA8ZJEudlCwi/jvAY+Ow==";
+      };
+    };
     "regexp.prototype.flags-1.3.1" = {
       name = "regexp.prototype.flags";
       packageName = "regexp.prototype.flags";
@@ -50387,13 +51242,13 @@ let
         sha512 = "W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==";
       };
     };
-    "resolve-alpn-1.1.2" = {
+    "resolve-alpn-1.2.0" = {
       name = "resolve-alpn";
       packageName = "resolve-alpn";
-      version = "1.1.2";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.1.2.tgz";
-        sha512 = "8OyfzhAtA32LVUsJSke3auIyINcwdh5l3cvYKdKO0nvsYSKuiLfTM5i78PJswFPT8y6cPW+L1v6/hE95chcpDA==";
+        url = "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.0.tgz";
+        sha512 = "e4FNQs+9cINYMO5NMFc6kOUCdohjqFPSgMuwuZAOUWqrfWsen+Yjy5qZFkV5K7VO7tFSLKcUL97olkED7sCBHA==";
       };
     };
     "resolve-cwd-2.0.0" = {
@@ -50684,13 +51539,13 @@ let
         sha1 = "6f697e50a0e4ddc8c8f7fb547a9b60dead43678d";
       };
     };
-    "retry-request-4.2.1" = {
+    "retry-request-4.2.2" = {
       name = "retry-request";
       packageName = "retry-request";
-      version = "4.2.1";
+      version = "4.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/retry-request/-/retry-request-4.2.1.tgz";
-        sha512 = "afiCoZZ7D/AR2mf+9ajr75dwGFgWmPEshv3h+oKtf9P1AsHfHvcVXumdbAEq2qNy4UXFEXsEX5HpyGj4axvoaA==";
+        url = "https://registry.npmjs.org/retry-request/-/retry-request-4.2.2.tgz";
+        sha512 = "xA93uxUD/rogV7BV59agW/JHPGXeREMWiZc9jhcwY4YdZ7QOtC7qbomYg0n4wyk2lJhggjvKvhNX8wln/Aldhg==";
       };
     };
     "reusify-1.0.4" = {
@@ -50891,13 +51746,13 @@ let
         sha512 = "/2HA0Ec70TvQnXdzynFffkjA6XN+1e2pEv/uKS5Ulca40g2L7KuOE3riasHoNVHOsFD5KKZgDsMk1CP3Tw9s+A==";
       };
     };
-    "rollup-2.52.7" = {
+    "rollup-2.53.3" = {
       name = "rollup";
       packageName = "rollup";
-      version = "2.52.7";
+      version = "2.53.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rollup/-/rollup-2.52.7.tgz";
-        sha512 = "55cSH4CCU6MaPr9TAOyrIC+7qFCHscL7tkNsm1MBfIJRRqRbCEY0mmeFn4Wg8FKsHtEH8r389Fz38r/o+kgXLg==";
+        url = "https://registry.npmjs.org/rollup/-/rollup-2.53.3.tgz";
+        sha512 = "79QIGP5DXz5ZHYnCPi3tLz+elOQi6gudp9YINdaJdjG0Yddubo6JRFUM//qCZ0Bap/GJrsUoEBVdSOc4AkMlRA==";
       };
     };
     "rollup-plugin-babel-4.4.0" = {
@@ -51215,22 +52070,22 @@ let
         sha512 = "xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==";
       };
     };
-    "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==";
       };
     };
-    "rxjs-6.6.7" = {
+    "rxjs-7.2.0" = {
       name = "rxjs";
       packageName = "rxjs";
-      version = "6.6.7";
+      version = "7.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz";
-        sha512 = "hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==";
+        url = "https://registry.npmjs.org/rxjs/-/rxjs-7.2.0.tgz";
+        sha512 = "aX8w9OpKrQmiPKfT1bqETtUr9JygIz6GZ+gql8v7CijClsP0laoFUdKzxFAoWuRdSlOdU2+crss+cMf+cqMTnw==";
       };
     };
     "s3-stream-upload-2.0.2" = {
@@ -51260,6 +52115,15 @@ let
         sha1 = "182a991208fc1ab5214443eb250fc8f53b4bc9ea";
       };
     };
+    "sade-1.7.4" = {
+      name = "sade";
+      packageName = "sade";
+      version = "1.7.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sade/-/sade-1.7.4.tgz";
+        sha512 = "y5yauMD93rX840MwUJr7C1ysLFBgMspsdTo4UVrDg3fXDvtwOyIqykhVAAm6fk/3au77773itJStObgK+LKaiA==";
+      };
+    };
     "safe-buffer-5.0.1" = {
       name = "safe-buffer";
       packageName = "safe-buffer";
@@ -51314,15 +52178,6 @@ let
         sha512 = "b9wZ986HHCo/HbKrRpBJb2kqXMK9CEWIE1egeEvZsYn69ay3kdfl9nG3RyOcR+jInTDf7a86WQ1d4VJX7goSSQ==";
       };
     };
-    "safe-join-0.1.3" = {
-      name = "safe-join";
-      packageName = "safe-join";
-      version = "0.1.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/safe-join/-/safe-join-0.1.3.tgz";
-        sha512 = "Ylh1EWn4pmL57HRV/oi4Ye7ws5AxKkdGpyDdWsvZob5VLH8xnQpG8tqmHD5v4SdKlN7hyrBjYt7Jm3faeC+uJg==";
-      };
-    };
     "safe-json-stringify-1.2.0" = {
       name = "safe-json-stringify";
       packageName = "safe-json-stringify";
@@ -51386,13 +52241,13 @@ let
         sha512 = "y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==";
       };
     };
-    "sass-1.35.1" = {
+    "sass-1.35.2" = {
       name = "sass";
       packageName = "sass";
-      version = "1.35.1";
+      version = "1.35.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sass/-/sass-1.35.1.tgz";
-        sha512 = "oCisuQJstxMcacOPmxLNiLlj4cUyN2+8xJnG7VanRoh2GOLr9RqkvI4AxA4a6LHVg/rsu+PmxXeGhrdSF9jCiQ==";
+        url = "https://registry.npmjs.org/sass/-/sass-1.35.2.tgz";
+        sha512 = "jhO5KAR+AMxCEwIH3v+4zbB2WB0z67V1X0jbapfVwQQdjHZUGUyukpnoM6+iCMfsIUC016w9OPKQ5jrNOS9uXw==";
       };
     };
     "sax-0.5.8" = {
@@ -51512,13 +52367,13 @@ let
         sha512 = "SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==";
       };
     };
-    "schema-utils-3.0.0" = {
+    "schema-utils-3.1.1" = {
       name = "schema-utils";
       packageName = "schema-utils";
-      version = "3.0.0";
+      version = "3.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz";
-        sha512 = "6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==";
+        url = "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz";
+        sha512 = "Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==";
       };
     };
     "scoped-regex-2.1.0" = {
@@ -51566,6 +52421,15 @@ let
         sha512 = "Vnc2bItbjMw5WUtQtxLL4Atl17KaUHdLdxIb3a89CQTAo/1G1YjmiNe2GAAgZHSBi6UYRoB/oRmuJz8HLZmnmA==";
       };
     };
+    "secretstream-stream-2.0.0" = {
+      name = "secretstream-stream";
+      packageName = "secretstream-stream";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/secretstream-stream/-/secretstream-stream-2.0.0.tgz";
+        sha512 = "5w3SlraZgFADOa5ScmJIXB/D/Qm2rFksmRNHSs913P9Z6s9ODsknAi85zni1v0KmTd4DovNKxHr3HCObYHes7Q==";
+      };
+    };
     "secure-compare-3.0.1" = {
       name = "secure-compare";
       packageName = "secure-compare";
@@ -52025,13 +52889,13 @@ let
         sha1 = "f13bf928e42b9c3e79383e61cc3998b5d14e6cdd";
       };
     };
-    "service-runner-2.8.3" = {
+    "service-runner-2.8.4" = {
       name = "service-runner";
       packageName = "service-runner";
-      version = "2.8.3";
+      version = "2.8.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/service-runner/-/service-runner-2.8.3.tgz";
-        sha512 = "oOP54jRgWE9IBeStnYI9lIdJ333HHe+8pjAvBpDmRyOXNcsvVMN22hbuX93YVlTUE87I8J80ORZ3u01DgNKMYg==";
+        url = "https://registry.npmjs.org/service-runner/-/service-runner-2.8.4.tgz";
+        sha512 = "x190eUDdtwmstQluk10aeA89gw0uTtm8OFzlXO6oMgv5MoCcp1PedNI1aCVsQoBHfiraExKhokvEZoxl6xTfQw==";
       };
     };
     "set-blocking-1.0.0" = {
@@ -52133,6 +52997,42 @@ let
         sha1 = "27d171efcc82a118b99639ff581660242b506e7c";
       };
     };
+    "sha256-universal-1.1.2" = {
+      name = "sha256-universal";
+      packageName = "sha256-universal";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sha256-universal/-/sha256-universal-1.1.2.tgz";
+        sha512 = "sheCCiEJve+8rS/fgCaXax8SpXrLzPipCvp0+VDXXjDEHw2DdYqV2PdHVNMNWZrQ3fiQjaor4rQCzYdr3g7TIA==";
+      };
+    };
+    "sha256-wasm-2.2.1" = {
+      name = "sha256-wasm";
+      packageName = "sha256-wasm";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sha256-wasm/-/sha256-wasm-2.2.1.tgz";
+        sha512 = "OkqDgOpo86LzdWlpYVC/MfcQ1jytfR/wxPsGFJTWeEIyLaJg4spZTNQ40vuhYsLNDFidxqvMGae6u9VirkgqqA==";
+      };
+    };
+    "sha512-universal-1.1.2" = {
+      name = "sha512-universal";
+      packageName = "sha512-universal";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sha512-universal/-/sha512-universal-1.1.2.tgz";
+        sha512 = "QGS+eFX3ycFiRl5TxIxWv5ltAYXaLpnUeLMJpnEVIB7dEI/7pw3X0kYe3msuE4XaHERReuqDKBYRrCiQsqlESQ==";
+      };
+    };
+    "sha512-wasm-2.3.1" = {
+      name = "sha512-wasm";
+      packageName = "sha512-wasm";
+      version = "2.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sha512-wasm/-/sha512-wasm-2.3.1.tgz";
+        sha512 = "YxBYNsaHzTJh5gmk6AbD5aAvXktHy5LsjqbaEVdL60XslC4C7U23w2Mt8g+UDcvidr/K9aFZy3V71Y86Ech27A==";
+      };
+    };
     "shallow-clone-3.0.1" = {
       name = "shallow-clone";
       packageName = "shallow-clone";
@@ -52367,13 +53267,13 @@ let
         sha512 = "oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==";
       };
     };
-    "shq-1.0.2" = {
-      name = "shq";
-      packageName = "shq";
-      version = "1.0.2";
+    "shuffled-priority-queue-2.1.0" = {
+      name = "shuffled-priority-queue";
+      packageName = "shuffled-priority-queue";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/shq/-/shq-1.0.2.tgz";
-        sha512 = "8AvNyHL75DHlkbLmzF7nzTzT2F0qEfSewwxHjH79Ww8S+hGpIZVlf8b0TcdOwv4HqIkOVBInu9n+wqhUSl9Wag==";
+        url = "https://registry.npmjs.org/shuffled-priority-queue/-/shuffled-priority-queue-2.1.0.tgz";
+        sha512 = "xhdh7fHyMsr0m/w2kDfRJuBFRS96b9l8ZPNWGaQ+PMvnUnZ/Eh+gJJ9NsHBd7P9k0399WYlCLzsy18EaMfyadA==";
       };
     };
     "shush-1.0.0" = {
@@ -52502,13 +53402,31 @@ let
         sha512 = "rohCHmEjD/ESXFLxF4bVeqgdb4Awc65ZyyuCKl3f7BvgMbZOBa/Ye3HN/GFnvruiUOAWWNupxhz3Rz5/3vJLTg==";
       };
     };
-    "simple-git-2.40.0" = {
+    "simple-git-2.41.1" = {
       name = "simple-git";
       packageName = "simple-git";
-      version = "2.40.0";
+      version = "2.41.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/simple-git/-/simple-git-2.41.1.tgz";
+        sha512 = "n1STz1tfnemvYndzWakgKa0JB4s/LrUG4btXMetWB9N9ZoIAJQd0ZtWj9sBwWxIZ/X/tYdA/tq+KHfFNAGzZhQ==";
+      };
+    };
+    "simple-handshake-3.0.0" = {
+      name = "simple-handshake";
+      packageName = "simple-handshake";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/simple-handshake/-/simple-handshake-3.0.0.tgz";
+        sha512 = "8Te0vlxvhpNCMgwnWFTbRR6Re2l8hq8wyXQc3lY9dPYXFxYwVkh79LhDQHFCOWRavmbiOdfqq1l5HT/73Rn2/w==";
+      };
+    };
+    "simple-hypercore-protocol-2.1.1" = {
+      name = "simple-hypercore-protocol";
+      packageName = "simple-hypercore-protocol";
+      version = "2.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/simple-git/-/simple-git-2.40.0.tgz";
-        sha512 = "7IO/eQwrN5kvS38TTu9ljhG9tx2nn0BTqZOmqpPpp51TvE44YIvLA6fETqEVA8w/SeEfPaVv6mk7Tsk9Jns+ag==";
+        url = "https://registry.npmjs.org/simple-hypercore-protocol/-/simple-hypercore-protocol-2.1.1.tgz";
+        sha512 = "xKuomRCfDDf+r6PDOD3RD88cjOLcbJ0E3Iz9Z+daB4Sq3FVv6efKYsOytgzTfSZMzkszF9EpYHGIILdVI669qA==";
       };
     };
     "simple-markdown-0.4.4" = {
@@ -52520,6 +53438,15 @@ let
         sha512 = "ZmlNUGR1KI12sPHeQ7dQY1qM5KfOgFqClNNVO8zQ9Pg6u7gHLCPFGD+VC7MCwpGDMd1uw3Bb2TfFfR8d6bB34A==";
       };
     };
+    "simple-message-channels-1.2.1" = {
+      name = "simple-message-channels";
+      packageName = "simple-message-channels";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/simple-message-channels/-/simple-message-channels-1.2.1.tgz";
+        sha512 = "knSr69GKW9sCjzpoy817xQelpOASUQ53TXCBcSLDKLE7GTGpUAhZzOZYrdbX2Ig//m+8AIrNp7sM7HDNHBRzXw==";
+      };
+    };
     "simple-peer-6.4.4" = {
       name = "simple-peer";
       packageName = "simple-peer";
@@ -52637,6 +53564,15 @@ let
         sha512 = "51yTA4ZqBY0tHTsBVGy3KAmMI7ArtwSOSmfFwJnZHFL+K76RMzZLx4m59HY5HSByjGHF3q+Fmcl8e5bMF160iQ==";
       };
     };
+    "siphash24-universal-1.0.0" = {
+      name = "siphash24-universal";
+      packageName = "siphash24-universal";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/siphash24-universal/-/siphash24-universal-1.0.0.tgz";
+        sha512 = "TasWcrGz+ITPEvE6Bhz8hACI39bSuoO9aRBYk601lhFZRpkHikbmmCbD5OkBFenYUmhOCjbOSZDbaHb8+FdWkg==";
+      };
+    };
     "sisteransi-1.0.5" = {
       name = "sisteransi";
       packageName = "sisteransi";
@@ -52799,13 +53735,13 @@ let
         sha512 = "tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==";
       };
     };
-    "slugify-1.5.3" = {
+    "slugify-1.6.0" = {
       name = "slugify";
       packageName = "slugify";
-      version = "1.5.3";
+      version = "1.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/slugify/-/slugify-1.5.3.tgz";
-        sha512 = "/HkjRdwPY3yHJReXu38NiusZw2+LLE2SrhkWJtmlPDB1fqFSvioYj62NkPcrKiNCgRLeGcGK7QBvr1iQwybeXw==";
+        url = "https://registry.npmjs.org/slugify/-/slugify-1.6.0.tgz";
+        sha512 = "FkMq+MQc5hzYgM86nLuHI98Acwi3p4wX+a5BO9Hhw4JdK4L7WueIiZ4tXEobImPqBz2sVcV0+Mu3GRB30IGang==";
       };
     };
     "smart-buffer-4.1.0" = {
@@ -52943,13 +53879,13 @@ let
         sha512 = "NFwVLMCqKTocY66gcim0ukF6e31VRDJqDapg5sy3vCHqlD1OCNUXSK/aI4VQEEndDrsnFmQepsL5KpEU0dDRIQ==";
       };
     };
-    "snyk-docker-plugin-4.20.8" = {
+    "snyk-docker-plugin-4.22.1" = {
       name = "snyk-docker-plugin";
       packageName = "snyk-docker-plugin";
-      version = "4.20.8";
+      version = "4.22.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-4.20.8.tgz";
-        sha512 = "uZ0vp2D+AYzPWzoo0jAqdK6gbUwKNPBYPKzyn6A9hBVO8guL/Y3JCq5H+7hCs6FFd0FEuD70Tsy3SNAEJyu4Fg==";
+        url = "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-4.22.1.tgz";
+        sha512 = "fpXGkBu69Vb5meSrq0KjSKr0nlibA8z18fuH/O8HuDh1b5XyqKNz412njybpJtW07JPpA9rKX9gewRBZWch6fQ==";
       };
     };
     "snyk-go-parser-1.4.1" = {
@@ -52997,22 +53933,22 @@ let
         sha512 = "DCs53aRT/uK2e1jXzeVG2d+Ll0bmY/YHL+jEYaWJko8XwGoVwqCrVOkRyzXd2KOZUk3gpD6MaxIrBWsc8RJzRA==";
       };
     };
-    "snyk-nodejs-lockfile-parser-1.34.0" = {
+    "snyk-nodejs-lockfile-parser-1.35.0" = {
       name = "snyk-nodejs-lockfile-parser";
       packageName = "snyk-nodejs-lockfile-parser";
-      version = "1.34.0";
+      version = "1.35.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.34.0.tgz";
-        sha512 = "F5QjIBBu6DWHwvTYlnETJxWabTQSoKGYxyoqzurPyL60lWNQmFVid0x67tQdq0sTQOOr0p6358JI+5w634vuew==";
+        url = "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.35.0.tgz";
+        sha512 = "fSjer9Ic8cdA2HvInUmhwbAhoLFXIokAzGB1PeGKwr0zzyfo3dSX3ReTMEbkhrEg+h0eES13px/KiiJ0EKRKMg==";
       };
     };
-    "snyk-nodejs-lockfile-parser-1.35.0" = {
+    "snyk-nodejs-lockfile-parser-1.35.1" = {
       name = "snyk-nodejs-lockfile-parser";
       packageName = "snyk-nodejs-lockfile-parser";
-      version = "1.35.0";
+      version = "1.35.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.35.0.tgz";
-        sha512 = "fSjer9Ic8cdA2HvInUmhwbAhoLFXIokAzGB1PeGKwr0zzyfo3dSX3ReTMEbkhrEg+h0eES13px/KiiJ0EKRKMg==";
+        url = "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.35.1.tgz";
+        sha512 = "NiXN+MdWaZxseXVDgCM4CZ5aBgI5LloUbwUP9c3oMZDih9Zj6Vf5edDcL8eM3BGl+a6LceJzB6w+xrIqKCXgQA==";
       };
     };
     "snyk-nuget-plugin-1.21.1" = {
@@ -53087,13 +54023,13 @@ let
         sha512 = "Bmtr7QdRL2b3Js+mPDmvXbkprOpzO8aUFXqR0nJKAOlUVQqZ84yiuT0n/mssEiJJ0vP+k0kZvTeiTwgio4KZRg==";
       };
     };
-    "snyk-sbt-plugin-2.11.1" = {
+    "snyk-sbt-plugin-2.11.3" = {
       name = "snyk-sbt-plugin";
       packageName = "snyk-sbt-plugin";
-      version = "2.11.1";
+      version = "2.11.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-2.11.1.tgz";
-        sha512 = "WKSV4MivovUHqdD2EYrkCuESjVLSbtsKpNnHeDCRIvv/GZ7YkvDsDqRLBUzDl6SvhGzaCv9rwEVUl+ZwJITL1w==";
+        url = "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-2.11.3.tgz";
+        sha512 = "xcZAYENuEx+SG51AuLLL59jpN/qerJdSdznTANoyNM7bJjVhTvLTjEfoOxbeogZwKmFDKKUfc6Vw+EdEy8VZug==";
       };
     };
     "snyk-tree-1.0.0" = {
@@ -53159,13 +54095,13 @@ let
         sha512 = "JubKZnTQ4Z8G4IZWtaAZSiRP3I/inpy8c/Bsx2jrwGrTbKeVU5xd6qkKMHpChYeM3dWZSO0QACiGK+obhBNwYw==";
       };
     };
-    "socket.io-4.1.2" = {
+    "socket.io-4.1.3" = {
       name = "socket.io";
       packageName = "socket.io";
-      version = "4.1.2";
+      version = "4.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/socket.io/-/socket.io-4.1.2.tgz";
-        sha512 = "xK0SD1C7hFrh9+bYoYCdVt+ncixkSLKtNLCax5aEy1o3r5PaO5yQhVb97exIe67cE7lAK+EpyMytXWTWmyZY8w==";
+        url = "https://registry.npmjs.org/socket.io/-/socket.io-4.1.3.tgz";
+        sha512 = "tLkaY13RcO4nIRh1K2hT5iuotfTaIQw7cVIe0FUykN3SuQi0cm7ALxuyT5/CtDswOMWUzMGTibxYNx/gU7In+Q==";
       };
     };
     "socket.io-adapter-0.2.0" = {
@@ -53402,6 +54338,15 @@ let
         sha512 = "Uk+JpqHEbzsEmiMxwL7TB/ndhMEpc52KdReYXXSIX2oRFPaI7ZDlDImF8KbkFWbYl9BJRtc82AZ/kNf4/0n9KA==";
       };
     };
+    "sodium-javascript-0.7.3" = {
+      name = "sodium-javascript";
+      packageName = "sodium-javascript";
+      version = "0.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sodium-javascript/-/sodium-javascript-0.7.3.tgz";
+        sha512 = "J2Zzj61bo41oBO4yEM9hTaNo3J98AcmFctjRg3D7+0A5cXdB1jlQOHV1qo2NavDU3BpqCfxdHW5UXCv565zh6Q==";
+      };
+    };
     "sodium-native-2.4.9" = {
       name = "sodium-native";
       packageName = "sodium-native";
@@ -53429,6 +54374,15 @@ let
         sha512 = "csdVyakzHJRyCevY4aZC2Eacda8paf+4nmRGF2N7KxCLKY2Ajn72JsExaQlJQ2BiXJncp44p3T+b80cU+2TTsg==";
       };
     };
+    "sodium-universal-3.0.4" = {
+      name = "sodium-universal";
+      packageName = "sodium-universal";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sodium-universal/-/sodium-universal-3.0.4.tgz";
+        sha512 = "WnBQ0GDo/82shKQHZBZT9h4q4miCtxkbzcwVLsCBPWNq4qbq8BXhKICt9nPwQAsJ43ct/rF61FKu4t0druUBug==";
+      };
+    };
     "sonic-boom-1.4.1" = {
       name = "sonic-boom";
       packageName = "sonic-boom";
@@ -53600,6 +54554,15 @@ let
         sha512 = "CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==";
       };
     };
+    "source-map-0.8.0-beta.0" = {
+      name = "source-map";
+      packageName = "source-map";
+      version = "0.8.0-beta.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz";
+        sha512 = "2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==";
+      };
+    };
     "source-map-js-0.6.2" = {
       name = "source-map-js";
       packageName = "source-map-js";
@@ -54410,13 +55373,13 @@ let
         sha512 = "zZ/Q1M+9ZWlrchgh4QauD/MEUFa6eC6H6FYq6T8Of/y82JqsQBLwN6YlzbO09evE7Rx6x0oliXDCnQSjwGwQRA==";
       };
     };
-    "sscaff-1.2.17" = {
+    "sscaff-1.2.22" = {
       name = "sscaff";
       packageName = "sscaff";
-      version = "1.2.17";
+      version = "1.2.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sscaff/-/sscaff-1.2.17.tgz";
-        sha512 = "0QF6J4B6lJKXKuUdiRDm576Ix1nVO3hdiHZYwEQJujcshJriHnny8kpOch1L6VykLPifg2g3hkHKas6WuNkqsg==";
+        url = "https://registry.npmjs.org/sscaff/-/sscaff-1.2.22.tgz";
+        sha512 = "aEkcIR+UIro2xsDASNy/K0v7hxGi18jgFshHpGrJ/tfB0GlQHQJR0W9y23mNxfDmFg/lbTaR0BdEsgC0znNEGA==";
       };
     };
     "ssh-config-1.1.6" = {
@@ -54878,6 +55841,15 @@ let
         sha512 = "vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==";
       };
     };
+    "stream-equal-1.1.1" = {
+      name = "stream-equal";
+      packageName = "stream-equal";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-equal/-/stream-equal-1.1.1.tgz";
+        sha512 = "SaZxkvxujYBR6NTumhRTg/yztw2p30fzZ/jvSgQtlZFEGI7tdSNDaPbvT47QF92hx6Tar8hAhpr7ErpTNvtuCQ==";
+      };
+    };
     "stream-exhaust-1.0.2" = {
       name = "stream-exhaust";
       packageName = "stream-exhaust";
@@ -55058,6 +56030,15 @@ let
         sha1 = "808b9d0e56fc273d809ba57338e929919a1a9f1a";
       };
     };
+    "streamx-2.10.3" = {
+      name = "streamx";
+      packageName = "streamx";
+      version = "2.10.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/streamx/-/streamx-2.10.3.tgz";
+        sha512 = "Ss4rEDWlTAUrIqaQsX6tNBNANHxSmbyrA5PlCji0a6xdJtVzfkEMLLrkVW5OSyr4TshiSb1WA2TqMGMUpGnouQ==";
+      };
+    };
     "strftime-0.10.0" = {
       name = "strftime";
       packageName = "strftime";
@@ -55517,13 +56498,13 @@ let
         sha1 = "e5211e9224369fbb81d633a2f00044dc8cedad92";
       };
     };
-    "strip-comments-1.0.2" = {
+    "strip-comments-2.0.1" = {
       name = "strip-comments";
       packageName = "strip-comments";
-      version = "1.0.2";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/strip-comments/-/strip-comments-1.0.2.tgz";
-        sha512 = "kL97alc47hoyIQSV165tTt9rG5dn4w1dNnBhOQ3bOU1Nc1hel09jnXANaHJ7vzHLd4Ju8kseDGzlev96pghLFw==";
+        url = "https://registry.npmjs.org/strip-comments/-/strip-comments-2.0.1.tgz";
+        sha512 = "ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==";
       };
     };
     "strip-dirs-2.1.0" = {
@@ -55670,13 +56651,22 @@ let
         sha1 = "0fdedc68e91addcfcb2e6be9c262581a6e8c28aa";
       };
     };
-    "strtok3-6.0.8" = {
+    "strtok3-6.1.3" = {
       name = "strtok3";
       packageName = "strtok3";
-      version = "6.0.8";
+      version = "6.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/strtok3/-/strtok3-6.0.8.tgz";
-        sha512 = "QLgv+oiXwXgCgp2PdPPa+Jpp4D9imK9e/0BsyfeFMr6QL6wMVqoVn9+OXQ9I7MZbmUzN6lmitTJ09uwS2OmGcw==";
+        url = "https://registry.npmjs.org/strtok3/-/strtok3-6.1.3.tgz";
+        sha512 = "ssWSKFOeUTurMSucgyUf+a6Z9mVTYrsYiyEK5RLnh8BM6sFrKSljVlnjZXIDxMguYfdQI+mUPFHo88FYTxq1XA==";
+      };
+    };
+    "strtok3-6.2.2" = {
+      name = "strtok3";
+      packageName = "strtok3";
+      version = "6.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strtok3/-/strtok3-6.2.2.tgz";
+        sha512 = "iUzLl3UhF2RfqQah80JngnfltQFLEidGyTX8+hHFMQFjzUj3UpIpOx824FtFmRI9bwyywReENpdHGDkFJwJlGQ==";
       };
     };
     "structured-source-3.0.2" = {
@@ -55814,6 +56804,15 @@ let
         sha512 = "cm7TQq9I8dA5LKUr+r8W7RzQlLsmTdCr6wXmjYueOoh/bQu55ODEw7GFhT42pUyoaLtO2rgmx1+8cSIjY9lR9g==";
       };
     };
+    "subleveldown-5.0.1" = {
+      name = "subleveldown";
+      packageName = "subleveldown";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/subleveldown/-/subleveldown-5.0.1.tgz";
+        sha512 = "cVqd/URpp7si1HWu5YqQ3vqQkjuolAwHypY1B4itPlS71/lsf6TQPZ2Y0ijT22EYVkvH5ove9JFJf4u7VGPuZw==";
+      };
+    };
     "subscriptions-transport-ws-0.9.19" = {
       name = "subscriptions-transport-ws";
       packageName = "subscriptions-transport-ws";
@@ -55994,6 +56993,15 @@ let
         sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==";
       };
     };
+    "supports-color-6.0.0" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz";
+        sha512 = "on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==";
+      };
+    };
     "supports-color-6.1.0" = {
       name = "supports-color";
       packageName = "supports-color";
@@ -56048,22 +57056,22 @@ let
         sha512 = "N7bBZJH0iF24wsalFZF+fVYMUOigaAUQMIcEKHO3jstK/iL8VmP9xE+P0/a76+FkNcWt+TDv2Gx1taUoUscrvw==";
       };
     };
-    "svelte-preprocess-4.7.3" = {
+    "svelte-preprocess-4.7.4" = {
       name = "svelte-preprocess";
       packageName = "svelte-preprocess";
-      version = "4.7.3";
+      version = "4.7.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-4.7.3.tgz";
-        sha512 = "Zx1/xLeGOIBlZMGPRCaXtlMe4ZA0faato5Dc3CosEqwu75MIEPuOstdkH6cy+RYTUYynoxzNaDxkPX4DbrPwRA==";
+        url = "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-4.7.4.tgz";
+        sha512 = "mDAmaltQl6e5zU2VEtoWEf7eLTfuOTGr9zt+BpA3AGHo8MIhKiNSPE9OLTCTOMgj0vj/uL9QBbaNmpG4G1CgIA==";
       };
     };
-    "svelte2tsx-0.3.0" = {
+    "svelte2tsx-0.4.2" = {
       name = "svelte2tsx";
       packageName = "svelte2tsx";
-      version = "0.3.0";
+      version = "0.4.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/svelte2tsx/-/svelte2tsx-0.3.0.tgz";
-        sha512 = "q3Ss5Fd/PlaMlb61fNtFeKZCzc3rpkHsdLQEiYoRTOqhGqFPjTE8BD287uevtPh5NdouC1RX8u0i6Bv63zrBXA==";
+        url = "https://registry.npmjs.org/svelte2tsx/-/svelte2tsx-0.4.2.tgz";
+        sha512 = "ya93OOdT/WvHVEEvQ3u+Y4lkUqq0D+mD1szbGUWcYVOdBjJyXUF5MhKS5HEJHWQw4r+XK9UlHk52BMeXR2SI8A==";
       };
     };
     "sver-compat-1.5.0" = {
@@ -56219,13 +57227,13 @@ let
         sha512 = "df2mEeVgnJp/FcXY3DRh3CsTfvHVTaO6g3FJP/kfwhxfOD1+YTXqBZrOIIsYTPtcRIFBkCAto0NFCxAV4XFRbw==";
       };
     };
-    "swagger2openapi-7.0.7" = {
+    "swagger2openapi-7.0.8" = {
       name = "swagger2openapi";
       packageName = "swagger2openapi";
-      version = "7.0.7";
+      version = "7.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.7.tgz";
-        sha512 = "uQMHn9Q1gOte13xarNTRtK00K3VgoLydwB3QMHcEptp8e8Q/idynMq+n1gTTf6U9BVcjfrbKXUpfyv/z/RLvQA==";
+        url = "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.8.tgz";
+        sha512 = "upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==";
       };
     };
     "sway-1.0.0" = {
@@ -56354,13 +57362,13 @@ let
         sha512 = "33+lQwlLxXoxy0o9WLOgw8OjbXeS3Jv+pSl+nxKc2AOClBI28HsdRPpH0u9Xa9OVjHLT9vonnOMw1ug7YXI0dA==";
       };
     };
-    "systeminformation-5.7.7" = {
+    "systeminformation-5.7.8" = {
       name = "systeminformation";
       packageName = "systeminformation";
-      version = "5.7.7";
+      version = "5.7.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/systeminformation/-/systeminformation-5.7.7.tgz";
-        sha512 = "aQ7MBeVI2MKPYOi3YJAoZ45JVlRkBA7IXoqGgtVBamvtE0I6JLOyJzD/VVc9pnMXDb3yqaMwssAjhwtJax4/Rw==";
+        url = "https://registry.npmjs.org/systeminformation/-/systeminformation-5.7.8.tgz";
+        sha512 = "gpFGDPtOtWDxMaQ6/7oe2XM/4ErgSvev1l3sdxChnm1AqDJKzZ3cu+VK7Dq1N02pChPiNNsIbUwe6dCLixfWRg==";
       };
     };
     "table-3.8.3" = {
@@ -56688,31 +57696,22 @@ let
         sha1 = "2e3cb2c39ea449e55d1e6cd91117accca4588021";
       };
     };
-    "telegraf-3.38.0" = {
+    "telegraf-3.39.0" = {
       name = "telegraf";
       packageName = "telegraf";
-      version = "3.38.0";
+      version = "3.39.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/telegraf/-/telegraf-3.38.0.tgz";
-        sha512 = "va4VlrKWp64JrowFoZX/NPzzA6q38kvaIukVXOWFO1V+jR1G8+hCfgJy4TX8Z3rwLJzwaBEet1QhikHDRZWl3A==";
+        url = "https://registry.npmjs.org/telegraf/-/telegraf-3.39.0.tgz";
+        sha512 = "6u5UyW2KpMS/hwC4DKLGlicK/rVSYCahPFgF14ioP6BzwcDwQlciHCB/oWguvxLJaYGrvY6crzLHfjupFTBPXw==";
       };
     };
-    "telegraf-4.3.0" = {
+    "telegraf-4.4.0" = {
       name = "telegraf";
       packageName = "telegraf";
-      version = "4.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/telegraf/-/telegraf-4.3.0.tgz";
-        sha512 = "MuDUtSMipzMzQp8fXbQx76jp4ZD70KREdnpH1idUzN9Zlgm6EzatBQFU4Ps0ipxtEmnBBdghBMumQwrjRe3eqg==";
-      };
-    };
-    "telegram-typings-3.6.1" = {
-      name = "telegram-typings";
-      packageName = "telegram-typings";
-      version = "3.6.1";
+      version = "4.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/telegram-typings/-/telegram-typings-3.6.1.tgz";
-        sha512 = "njVv1EAhIZnmQVLocZEADYUyqA1WIXuVcDYlsp+mXua/XB0pxx+PKtMSPeZ/EE4wPWTw9h/hA9ASTT6yQelkiw==";
+        url = "https://registry.npmjs.org/telegraf/-/telegraf-4.4.0.tgz";
+        sha512 = "DjVVEz37/5Hp0n8eLhAVjErwoyrWsqLyFAoRj8sU5XiD2CVAbBOx9J6a7cLn/B46pPgDqgbrdjiOeK0fQMiLOA==";
       };
     };
     "temp-0.6.0" = {
@@ -56787,6 +57786,15 @@ let
         sha512 = "HIeWmj77uOOHb0QX7siN3OtwV3CTntquin6TNVg6SHOqCP3hYKmox90eeFOGaY1MqJ9WYDDjkyZrW6qS5AWpbw==";
       };
     };
+    "tempy-0.1.0" = {
+      name = "tempy";
+      packageName = "tempy";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tempy/-/tempy-0.1.0.tgz";
+        sha1 = "8527413cd07100834fcc9cbb8242be95ba0e1fee";
+      };
+    };
     "tempy-0.2.1" = {
       name = "tempy";
       packageName = "tempy";
@@ -56805,6 +57813,15 @@ let
         sha512 = "WrH/pui8YCwmeiAoxV+lpRH9HpRtgBhSR2ViBPgpGb/wnYDzp21R4MN45fsCGvLROvY67o3byhJRYRONJyImVQ==";
       };
     };
+    "tempy-0.6.0" = {
+      name = "tempy";
+      packageName = "tempy";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tempy/-/tempy-0.6.0.tgz";
+        sha512 = "G13vtMYPT/J8A4X2SjdtBTphZlrp1gKv6hZiOjw14RCWg6GbHuQBGtjlx75xLbYV/wEc0D7G5K4rxKP/cXk8Bw==";
+      };
+    };
     "tempy-0.7.1" = {
       name = "tempy";
       packageName = "tempy";
@@ -57273,6 +58290,15 @@ let
         sha512 = "eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==";
       };
     };
+    "thunky-map-1.0.1" = {
+      name = "thunky-map";
+      packageName = "thunky-map";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/thunky-map/-/thunky-map-1.0.1.tgz";
+        sha512 = "RC34aHdxC9CYpvuO1TLBnsFa2G9KWFvUbbIbYnqX3hWdUfECWUzjDmv1XRgjRsQ9oGVmUZC+pOD4fAUWB6HU4Q==";
+      };
+    };
     "tildify-1.2.0" = {
       name = "tildify";
       packageName = "tildify";
@@ -57291,6 +58317,15 @@ let
         sha1 = "afb89542301c3b5010d118c66b5d63920f5e9a7a";
       };
     };
+    "time-ordered-set-1.0.2" = {
+      name = "time-ordered-set";
+      packageName = "time-ordered-set";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/time-ordered-set/-/time-ordered-set-1.0.2.tgz";
+        sha512 = "vGO99JkxvgX+u+LtOKQEpYf31Kj3i/GNwVstfnh4dyINakMgeZCpew1e3Aj+06hEslhtHEd52g7m5IV+o1K8Mw==";
+      };
+    };
     "time-stamp-1.1.0" = {
       name = "time-stamp";
       packageName = "time-stamp";
@@ -57318,6 +58353,15 @@ let
         sha1 = "f38b0ae81d3747d628001f41dafc652ace671c0a";
       };
     };
+    "timed-out-3.1.3" = {
+      name = "timed-out";
+      packageName = "timed-out";
+      version = "3.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/timed-out/-/timed-out-3.1.3.tgz";
+        sha1 = "95860bfcc5c76c277f8f8326fd0f5b2e20eba217";
+      };
+    };
     "timed-out-4.0.1" = {
       name = "timed-out";
       packageName = "timed-out";
@@ -57471,15 +58515,6 @@ let
         sha1 = "f25125ff0dd9da3ccb0c2dd371ee1288bb9128c0";
       };
     };
-    "tmp-0.0.31" = {
-      name = "tmp";
-      packageName = "tmp";
-      version = "0.0.31";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tmp/-/tmp-0.0.31.tgz";
-        sha1 = "8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7";
-      };
-    };
     "tmp-0.0.33" = {
       name = "tmp";
       packageName = "tmp";
@@ -57768,6 +58803,15 @@ let
         sha512 = "wnQcqlreS6VjthyHO3Y/kpK/emflxDBNhlNUPfh7wE39KnuDdOituXomIbyI79vBtF0Ninpkh72mcuRHo+RG3Q==";
       };
     };
+    "token-types-3.1.0" = {
+      name = "token-types";
+      packageName = "token-types";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/token-types/-/token-types-3.1.0.tgz";
+        sha512 = "WhoeIW7UTn7NC7L0t/4x3vU/YYSS1oeUxYgiGXQLd82Kaf1qtlxOex3ETY0+o2QuRgAdyursMlUhQBKDCfMUkQ==";
+      };
+    };
     "toml-2.3.6" = {
       name = "toml";
       packageName = "toml";
@@ -57813,15 +58857,6 @@ let
         sha512 = "EU+UA4zHc06TkVQaravNNVdqX763/ENTIOKiKlqSJ6WKCPwLxHjvY3d0uEJYaq92iojyHPwD2iaYbZKjdw3icA==";
       };
     };
-    "topo-2.0.2" = {
-      name = "topo";
-      packageName = "topo";
-      version = "2.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/topo/-/topo-2.0.2.tgz";
-        sha1 = "cd5615752539057c0dc0491a621c3bc6fbe1d182";
-      };
-    };
     "topojson-client-3.1.0" = {
       name = "topojson-client";
       packageName = "topojson-client";
@@ -58245,13 +59280,13 @@ let
         sha512 = "csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==";
       };
     };
-    "tsconfig-paths-3.9.0" = {
+    "tsconfig-paths-3.10.1" = {
       name = "tsconfig-paths";
       packageName = "tsconfig-paths";
-      version = "3.9.0";
+      version = "3.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz";
-        sha512 = "dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==";
+        url = "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.10.1.tgz";
+        sha512 = "rETidPDgCpltxF7MjBZlAFPUHv5aHH2MymyPvh+vEyWAED4Eb/WeMbsnD/JDr4OKPOA1TssDHgIcpTN5Kh0p6Q==";
       };
     };
     "tsconfig-paths-webpack-plugin-3.5.1" = {
@@ -58722,15 +59757,6 @@ let
         sha512 = "4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==";
       };
     };
-    "type-fest-1.2.1" = {
-      name = "type-fest";
-      packageName = "type-fest";
-      version = "1.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/type-fest/-/type-fest-1.2.1.tgz";
-        sha512 = "SbmIRuXhJs8KTneu77Ecylt9zuqL683tuiLYpTRil4H++eIhqCmx6ko6KAFem9dty8sOdnEiX7j4K1nRE628fQ==";
-      };
-    };
     "type-is-1.6.18" = {
       name = "type-is";
       packageName = "type-is";
@@ -58794,13 +59820,13 @@ let
         sha512 = "7uc1O8h1M1g0rArakJdf0uLRSSgFcYexrVoKo+bzJd32gd4gDy2L/Z+8/FjPnU9ydY3pEnVPtr9FyscYY60K1g==";
       };
     };
-    "typegram-3.4.0" = {
+    "typegram-3.4.1" = {
       name = "typegram";
       packageName = "typegram";
-      version = "3.4.0";
+      version = "3.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/typegram/-/typegram-3.4.0.tgz";
-        sha512 = "GUE1LV3LJruTThJaUBUvTnaEpTswFhuxhEx9LaVLIA6WRw9CdPQmb87OIA0rCvoMSPBC8gZiHrrPqX9VJGDXwQ==";
+        url = "https://registry.npmjs.org/typegram/-/typegram-3.4.1.tgz";
+        sha512 = "O3HT/D46tsiIX1Y83gGF6sFoJiEITcqM5S8l8Iz9eyjDvarXFzUQ4mNoHZHoJ1JXlokB17GJk/vOT7Nx+TcpNA==";
       };
     };
     "typescript-2.9.2" = {
@@ -58857,15 +59883,6 @@ let
         sha512 = "pxnwLxeb/Z5SP80JDRzVjh58KsM6jZHRAOtTpS7sXLS4ogXNKC9ANxHHZqLLeVHZN35jCtI4JdmLLbLiC1kBow==";
       };
     };
-    "typescript-4.2.3" = {
-      name = "typescript";
-      packageName = "typescript";
-      version = "4.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/typescript/-/typescript-4.2.3.tgz";
-        sha512 = "qOcYwxaByStAWrBf4x0fibwZvMRG+r4cQoTjbPtUlrWjBHbmCAww1i448U0GJ+3cNNEtebDteo/cHOR3xJ4wEw==";
-      };
-    };
     "typescript-4.3.5" = {
       name = "typescript";
       packageName = "typescript";
@@ -58974,15 +59991,6 @@ let
         sha512 = "57H3ACYFXeo1IaZ1w02sfA71wI60MGco/IQFjOqK+WtKoprh7Go2/yvd2HPtoJILO2Or84ncLccI4xoHMTSbGg==";
       };
     };
-    "uglify-js-3.13.3" = {
-      name = "uglify-js";
-      packageName = "uglify-js";
-      version = "3.13.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.3.tgz";
-        sha512 = "otIc7O9LyxpUcQoXzj2hL4LPWKklO6LJWoJUzNa8A17Xgi4fOeDC8FBDOLHnC/Slo1CQgsZMcM6as0M76BZaig==";
-      };
-    };
     "uglify-js-3.4.10" = {
       name = "uglify-js";
       packageName = "uglify-js";
@@ -59073,6 +60081,15 @@ let
         sha512 = "9QqdvpGQTXgxthP+lY4e/gIBy+RuqcBaC6JVwT5I3bDLgT/btL6twZMR0pI3/Fgah9G/pdwzIprE5gL6v9UvyQ==";
       };
     };
+    "uint64be-3.0.0" = {
+      name = "uint64be";
+      packageName = "uint64be";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uint64be/-/uint64be-3.0.0.tgz";
+        sha512 = "mliiCSrsE29aNBI7O9W5gGv6WmA9kBR8PtTt6Apaxns076IRdYrrtFhXHEWMj5CSum3U7cv7/pi4xmi4XsIOqg==";
+      };
+    };
     "ultron-1.0.2" = {
       name = "ultron";
       packageName = "ultron";
@@ -59235,6 +60252,15 @@ let
         sha512 = "5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==";
       };
     };
+    "underscore-db-0.10.0" = {
+      name = "underscore-db";
+      packageName = "underscore-db";
+      version = "0.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/underscore-db/-/underscore-db-0.10.0.tgz";
+        sha1 = "a4bd7f5a9c7f2eec31e4784b402241df36671499";
+      };
+    };
     "underscore.string-2.3.3" = {
       name = "underscore.string";
       packageName = "underscore.string";
@@ -59919,6 +60945,15 @@ let
         sha1 = "150e65da42bf7742445b958a64eb9b85d1d2b180";
       };
     };
+    "unzip-response-1.0.2" = {
+      name = "unzip-response";
+      packageName = "unzip-response";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz";
+        sha1 = "b984f0877fc0a89c2c773cc1ef7b5b232b5b06fe";
+      };
+    };
     "unzip-response-2.0.1" = {
       name = "unzip-response";
       packageName = "unzip-response";
@@ -59982,6 +61017,15 @@ let
         sha1 = "07b5dc2066b3627ab3b4f530130f7eddda07a4cc";
       };
     };
+    "update-notifier-1.0.3" = {
+      name = "update-notifier";
+      packageName = "update-notifier";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/update-notifier/-/update-notifier-1.0.3.tgz";
+        sha1 = "8f92c515482bd6831b7c93013e70f87552c7cf5a";
+      };
+    };
     "update-notifier-2.5.0" = {
       name = "update-notifier";
       packageName = "update-notifier";
@@ -60063,13 +61107,13 @@ let
         sha512 = "7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==";
       };
     };
-    "urijs-1.19.6" = {
+    "urijs-1.19.7" = {
       name = "urijs";
       packageName = "urijs";
-      version = "1.19.6";
+      version = "1.19.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/urijs/-/urijs-1.19.6.tgz";
-        sha512 = "eSXsXZ2jLvGWeLYlQA3Gh36BcjF+0amo92+wHPyN1mdR8Nxf75fuEuYTd9c0a+m/vhCjRK0ESlE9YNLW+E1VEw==";
+        url = "https://registry.npmjs.org/urijs/-/urijs-1.19.7.tgz";
+        sha512 = "Id+IKjdU0Hx+7Zx717jwLPsPeUqz7rAtuVBRLLs+qn+J2nf9NGITWVCxcijgYxBqe83C7sqsQPs6H1pyz3x9gA==";
       };
     };
     "urix-0.1.0" = {
@@ -60225,13 +61269,13 @@ let
         sha1 = "1505a03a289a48cbd7a434efbaeec5055f5633a9";
       };
     };
-    "url-toolkit-2.2.2" = {
+    "url-toolkit-2.2.3" = {
       name = "url-toolkit";
       packageName = "url-toolkit";
-      version = "2.2.2";
+      version = "2.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/url-toolkit/-/url-toolkit-2.2.2.tgz";
-        sha512 = "l25w6Sy+Iy3/IbogunxhWwljPaDnqpiKvrQRoLBm6DfISco7NyRIS7Zf6+Oxhy1T8kHxWdwLND7ZZba6NjXMug==";
+        url = "https://registry.npmjs.org/url-toolkit/-/url-toolkit-2.2.3.tgz";
+        sha512 = "Da75SQoxsZ+2wXS56CZBrj2nukQ4nlGUZUP/dqUBG5E1su5GKThgT94Q00x81eVII7AyS1Pn+CtTTZ4Z0pLUtQ==";
       };
     };
     "urlencode-1.1.0" = {
@@ -60279,6 +61323,15 @@ let
         sha1 = "9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f";
       };
     };
+    "username-2.3.0" = {
+      name = "username";
+      packageName = "username";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/username/-/username-2.3.0.tgz";
+        sha1 = "ba37dd53ac7d6225e77730fdd79244f1fc058e1e";
+      };
+    };
     "username-5.1.0" = {
       name = "username";
       packageName = "username";
@@ -61117,13 +62170,13 @@ let
         sha512 = "/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==";
       };
     };
-    "verda-1.2.2" = {
+    "verda-1.3.0" = {
       name = "verda";
       packageName = "verda";
-      version = "1.2.2";
+      version = "1.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/verda/-/verda-1.2.2.tgz";
-        sha512 = "qWyG2W2wgAw27sV5kVUjceb7GBwUFleVjBmH5XA4L9J8rLpB10N7uaP45ZDYGA7gRuNjo/5futihrBWbKKvJ0Q==";
+        url = "https://registry.npmjs.org/verda/-/verda-1.3.0.tgz";
+        sha512 = "EldyK2oyHMxIKj5aMC1R75aN1XH8vH96ga1PgkuXrK5ZhYndR4g8TvBTomXpIgGvwhICjq5LZITZ37Xz/YHxAg==";
       };
     };
     "verror-1.1.0" = {
@@ -61450,6 +62503,15 @@ let
         sha512 = "2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==";
       };
     };
+    "vm2-3.9.3" = {
+      name = "vm2";
+      packageName = "vm2";
+      version = "3.9.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vm2/-/vm2-3.9.3.tgz";
+        sha512 = "smLS+18RjXYMl9joyJxMNI9l4w7biW8ilSDaVRvFBDwOH8P0BK1ognFQTpg0wyQ6wIKLTblHJvROW692L/E53Q==";
+      };
+    };
     "voc-1.2.0" = {
       name = "voc";
       packageName = "voc";
@@ -61585,13 +62647,22 @@ let
         sha512 = "QxI+qV97uD7HHOCjh3MrM1TfbdwmTXrMckri5Tus1/FQiG3baDZb2C9Y0y8QThs7PwHYBIQXcAc59ZveCRZKPA==";
       };
     };
-    "vscode-json-languageservice-4.1.5" = {
+    "vscode-json-languageservice-4.1.0" = {
       name = "vscode-json-languageservice";
       packageName = "vscode-json-languageservice";
-      version = "4.1.5";
+      version = "4.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-4.1.5.tgz";
-        sha512 = "oRVPj2UY6BQ8PQ1LIz/FigUEZQVqsB9msNCFlxRBHE9sSEIJkCbYG6aCB2n7WR17VIisYQdO3MDheuoyI48G2w==";
+        url = "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-4.1.0.tgz";
+        sha512 = "QW2SFk4kln5lTPQajGNuXWtmr2z9hVA6Sfi4qPFEW2vjt2XaUAp38/1OrcUQYiJXOyXntbWN2jZJaGxg+hDUxw==";
+      };
+    };
+    "vscode-json-languageservice-4.1.6" = {
+      name = "vscode-json-languageservice";
+      packageName = "vscode-json-languageservice";
+      version = "4.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-4.1.6.tgz";
+        sha512 = "DIKb3tcfRtb3tIE6g9SLOl5E9tNSt6kljH08Wa5RwFlVshtXGrDDzttchze4CYy9pJpE9mBtCbRHmLvY1Z1ZXA==";
       };
     };
     "vscode-jsonrpc-3.5.0" = {
@@ -61963,13 +63034,13 @@ let
         sha512 = "u0Lw+IYlgbEJFF6/qAqG2d1jQmJl0eyAGJHoAJqr2HT4M2BNuQYSEiSE75f52pXHSJm8AlTjnLLbBFPrdz2hpA==";
       };
     };
-    "vscode-test-1.5.2" = {
+    "vscode-test-1.6.1" = {
       name = "vscode-test";
       packageName = "vscode-test";
-      version = "1.5.2";
+      version = "1.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-test/-/vscode-test-1.5.2.tgz";
-        sha512 = "x9PVfKxF6EInH9iSFGQi0V8H5zIW1fC7RAer6yNQR6sy3WyOwlWkuT3I+wf75xW/cO53hxMi1aj/EvqQfDFOAg==";
+        url = "https://registry.npmjs.org/vscode-test/-/vscode-test-1.6.1.tgz";
+        sha512 = "086q88T2ca1k95mUzffvbzb7esqQNvJgiwY4h29ukPhFo8u+vXOOmelUoU5EQUHs3Of8+JuQ3oGdbVCqaxuTXA==";
       };
     };
     "vscode-textbuffer-1.0.0" = {
@@ -62071,13 +63142,13 @@ let
         sha512 = "8FdXi0gieEwh1IprIBafpiJWcApwrU+l2FEj8c1HtHFdNXMd0+2jUSjBVmcQYohf/E72irwAXEXLga6TQcB3FA==";
       };
     };
-    "vue-eslint-parser-7.7.1" = {
+    "vue-eslint-parser-7.9.0" = {
       name = "vue-eslint-parser";
       packageName = "vue-eslint-parser";
-      version = "7.7.1";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.7.1.tgz";
-        sha512 = "rUGUCKH5rSGTvF9QlxYXi6MyoSATcrTbLwiCqFuFRhaSJLlDYBmsXJ08xIZoLdsUl/OfCC1ibnkj7SWHRTrStQ==";
+        url = "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.9.0.tgz";
+        sha512 = "QBlhZ5LteDRVy2dISfQhNEmmcqph+GTaD4SH41bYzXcVHFPJ9p34zCG6QAqOZVa8PKaVgbomFnoZpGJRZi14vg==";
       };
     };
     "vue-onsenui-helper-json-1.0.2" = {
@@ -62314,13 +63385,13 @@ let
         sha512 = "b8mEhwh/J928Xk+SQFjtqrR2EGPhpknWLcIt9aCpVPVRXiqjUGo/kpOHKz0azu9c6/onEJ9tWXZt0cVjmH0N5Q==";
       };
     };
-    "webassemblyjs-1.11.0" = {
+    "webassemblyjs-1.11.1" = {
       name = "webassemblyjs";
       packageName = "webassemblyjs";
-      version = "1.11.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webassemblyjs/-/webassemblyjs-1.11.0.tgz";
-        sha512 = "zAwCqHShTm/OBhYzqXlumetrI5yAkMFbFjnv8qba4WtP+KZIchkAml6zPDZWnxQQH2rs9TTbcbXrMVQplleJQA==";
+        url = "https://registry.npmjs.org/webassemblyjs/-/webassemblyjs-1.11.1.tgz";
+        sha512 = "WkwV9qJLZZm1ygrryt4+6hAKbk4jLSVCpE92RYk/MOtLSpxq/2S1U0JFyKgsASXhYU5hqHQRiXvFBoNQhfCHyg==";
       };
     };
     "webidl-conversions-2.0.1" = {
@@ -62386,22 +63457,22 @@ let
         sha512 = "6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==";
       };
     };
-    "webpack-5.28.0" = {
+    "webpack-5.43.0" = {
       name = "webpack";
       packageName = "webpack";
-      version = "5.28.0";
+      version = "5.43.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack/-/webpack-5.28.0.tgz";
-        sha512 = "1xllYVmA4dIvRjHzwELgW4KjIU1fW4PEuEnjsylz7k7H5HgPOctIq7W1jrt3sKH9yG5d72//XWzsHhfoWvsQVg==";
+        url = "https://registry.npmjs.org/webpack/-/webpack-5.43.0.tgz";
+        sha512 = "ex3nB9uxNI0azzb0r3xGwi+LS5Gw1RCRSKk0kg3kq9MYdIPmLS6UI3oEtG7esBaB51t9I+5H+vHmL3htaxqMSw==";
       };
     };
-    "webpack-5.42.0" = {
+    "webpack-5.45.1" = {
       name = "webpack";
       packageName = "webpack";
-      version = "5.42.0";
+      version = "5.45.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack/-/webpack-5.42.0.tgz";
-        sha512 = "Ln8HL0F831t1x/yPB/qZEUVmZM4w9BnHZ1EQD/sAUHv8m22hthoPniWTXEzFMh/Sf84mhrahut22TX5KxWGuyQ==";
+        url = "https://registry.npmjs.org/webpack/-/webpack-5.45.1.tgz";
+        sha512 = "68VT2ZgG9EHs6h6UxfV2SEYewA9BA3SOLSnC2NEbJJiEwbAiueDL033R1xX0jzjmXvMh0oSeKnKgbO2bDXIEyQ==";
       };
     };
     "webpack-bundle-analyzer-3.9.0" = {
@@ -62521,13 +63592,13 @@ let
         sha512 = "ajerHZ+BJKeCLviLUUmnyd5B4RavLF76uv3cs6KNuO8W+HuQaEs0y0L7o40NQxdPy5w0pcv8Ew7yPUAQG0UdCg==";
       };
     };
-    "webpack-node-externals-2.5.2" = {
+    "webpack-node-externals-3.0.0" = {
       name = "webpack-node-externals";
       packageName = "webpack-node-externals";
-      version = "2.5.2";
+      version = "3.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack-node-externals/-/webpack-node-externals-2.5.2.tgz";
-        sha512 = "aHdl/y2N7PW2Sx7K+r3AxpJO+aDMcYzMQd60Qxefq3+EwhewSbTBqNumOsCE1JsCUNoyfGj5465N0sSf6hc/5w==";
+        url = "https://registry.npmjs.org/webpack-node-externals/-/webpack-node-externals-3.0.0.tgz";
+        sha512 = "LnL6Z3GGDPht/AigwRh2dvL9PQPFQ8skEpVrWZXLWBYmqcaojHNN0onvHzie6rq7EWKrrBfPYqNEzTJgiwEQDQ==";
       };
     };
     "webpack-sources-1.4.3" = {
@@ -62539,13 +63610,13 @@ let
         sha512 = "lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==";
       };
     };
-    "webpack-sources-2.3.0" = {
+    "webpack-sources-2.3.1" = {
       name = "webpack-sources";
       packageName = "webpack-sources";
-      version = "2.3.0";
+      version = "2.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.0.tgz";
-        sha512 = "WyOdtwSvOML1kbgtXbTDnEW0jkJ7hZr/bDByIwszhWd/4XX1A3XMkrbFMsuH4+/MfLlZCUzlAdg4r7jaGKEIgQ==";
+        url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.1.tgz";
+        sha512 = "y9EI9AO42JjEcrTJFOYmVywVZdKVUfOvDUPsJea5GIr1JOEGFVqwlY2K098fFoIjOkDzHn2AjRvM8dsBZu+gCA==";
       };
     };
     "webpack-stream-6.1.0" = {
@@ -62593,13 +63664,13 @@ let
         sha512 = "OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==";
       };
     };
-    "webtorrent-1.1.0" = {
+    "webtorrent-1.2.5" = {
       name = "webtorrent";
       packageName = "webtorrent";
-      version = "1.1.0";
+      version = "1.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webtorrent/-/webtorrent-1.1.0.tgz";
-        sha512 = "v5TS7MXmNRJqTWv7+a2wE4KGGZI/RyG4XpxWb1oJ4/CwpQaO5mJ5UA6Aj9unVbgEMLpyIy4xcHgOjE82wpyeUQ==";
+        url = "https://registry.npmjs.org/webtorrent/-/webtorrent-1.2.5.tgz";
+        sha512 = "EvtAQ3rK4c7Kf4ZGxYOGvi8Jih8qsZka1IgNB8T5Vxw5UzSNG1nxTVNNTXL0jFhQUMsyRwIOkTgd7ZkJY6bqsw==";
       };
     };
     "well-known-symbols-2.0.0" = {
@@ -62809,6 +63880,15 @@ let
         sha512 = "QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==";
       };
     };
+    "widest-line-1.0.0" = {
+      name = "widest-line";
+      packageName = "widest-line";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/widest-line/-/widest-line-1.0.0.tgz";
+        sha1 = "0c09c85c2a94683d0d7eaf8ee097d564bf0e105c";
+      };
+    };
     "widest-line-2.0.1" = {
       name = "widest-line";
       packageName = "widest-line";
@@ -63115,139 +64195,157 @@ let
         sha512 = "mO8XtqyPvykVCsrwj5MlOVWvSnCdT+C+QVbm6blradR7JExAhbkZ7hZ9A+9NUtwzSqrlUo9a67ws0EiILrvRpw==";
       };
     };
-    "workbox-background-sync-3.6.3" = {
+    "workbox-background-sync-6.1.5" = {
       name = "workbox-background-sync";
       packageName = "workbox-background-sync";
-      version = "3.6.3";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-3.6.3.tgz";
-        sha512 = "ypLo0B6dces4gSpaslmDg5wuoUWrHHVJfFWwl1udvSylLdXvnrfhFfriCS42SNEe5lsZtcNZF27W/SMzBlva7Q==";
+        url = "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-6.1.5.tgz";
+        sha512 = "VbUmPLsdz+sLzuNxHvMylzyRTiM4q+q7rwLBk3p2mtRL5NZozI8j/KgoGbno96vs84jx4b9zCZMEOIKEUTPf6w==";
       };
     };
-    "workbox-broadcast-cache-update-3.6.3" = {
-      name = "workbox-broadcast-cache-update";
-      packageName = "workbox-broadcast-cache-update";
-      version = "3.6.3";
+    "workbox-broadcast-update-6.1.5" = {
+      name = "workbox-broadcast-update";
+      packageName = "workbox-broadcast-update";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-broadcast-cache-update/-/workbox-broadcast-cache-update-3.6.3.tgz";
-        sha512 = "pJl4lbClQcvp0SyTiEw0zLSsVYE1RDlCPtpKnpMjxFtu8lCFTAEuVyzxp9w7GF4/b3P4h5nyQ+q7V9mIR7YzGg==";
+        url = "https://registry.npmjs.org/workbox-broadcast-update/-/workbox-broadcast-update-6.1.5.tgz";
+        sha512 = "zGrTTs+n4wHpYtqYMqBg6kl/x5j1UrczGCQnODSHTxIDV8GXLb/GtA1BCZdysNxpMmdVSeLmTcgIYAAqWFamrA==";
       };
     };
-    "workbox-build-3.6.3" = {
+    "workbox-build-6.1.5" = {
       name = "workbox-build";
       packageName = "workbox-build";
-      version = "3.6.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-build/-/workbox-build-3.6.3.tgz";
-        sha512 = "w0clZ/pVjL8VXy6GfthefxpEXs0T8uiRuopZSFVQ8ovfbH6c6kUpEh6DcYwm/Y6dyWPiCucdyAZotgjz+nRz8g==";
-      };
-    };
-    "workbox-cache-expiration-3.6.3" = {
-      name = "workbox-cache-expiration";
-      packageName = "workbox-cache-expiration";
-      version = "3.6.3";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-cache-expiration/-/workbox-cache-expiration-3.6.3.tgz";
-        sha512 = "+ECNph/6doYx89oopO/UolYdDmQtGUgo8KCgluwBF/RieyA1ZOFKfrSiNjztxOrGJoyBB7raTIOlEEwZ1LaHoA==";
+        url = "https://registry.npmjs.org/workbox-build/-/workbox-build-6.1.5.tgz";
+        sha512 = "P+fakR5QFVqJN9l9xHVXtmafga72gh9I+jM3A9HiB/6UNRmOAejXnDgD+RMegOHgQHPwnB44TalMToFaXKWIyA==";
       };
     };
-    "workbox-cacheable-response-3.6.3" = {
+    "workbox-cacheable-response-6.1.5" = {
       name = "workbox-cacheable-response";
       packageName = "workbox-cacheable-response";
-      version = "3.6.3";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-3.6.3.tgz";
-        sha512 = "QpmbGA9SLcA7fklBLm06C4zFg577Dt8u3QgLM0eMnnbaVv3rhm4vbmDpBkyTqvgK/Ly8MBDQzlXDtUCswQwqqg==";
+        url = "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-6.1.5.tgz";
+        sha512 = "x8DC71lO/JCgiaJ194l9le8wc8lFPLgUpDkLhp2si7mXV6S/wZO+8Osvw1LLgYa8YYTWGbhbFhFTXIkEMknIIA==";
       };
     };
-    "workbox-core-3.6.3" = {
+    "workbox-core-6.1.5" = {
       name = "workbox-core";
       packageName = "workbox-core";
-      version = "3.6.3";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-core/-/workbox-core-3.6.3.tgz";
-        sha512 = "cx9cx0nscPkIWs8Pt98HGrS9/aORuUcSkWjG25GqNWdvD/pSe7/5Oh3BKs0fC+rUshCiyLbxW54q0hA+GqZeSQ==";
+        url = "https://registry.npmjs.org/workbox-core/-/workbox-core-6.1.5.tgz";
+        sha512 = "9SOEle7YcJzg3njC0xMSmrPIiFjfsFm9WjwGd5enXmI8Lwk8wLdy63B0nzu5LXoibEmS9k+aWF8EzaKtOWjNSA==";
       };
     };
-    "workbox-google-analytics-3.6.3" = {
+    "workbox-expiration-6.1.5" = {
+      name = "workbox-expiration";
+      packageName = "workbox-expiration";
+      version = "6.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-expiration/-/workbox-expiration-6.1.5.tgz";
+        sha512 = "6cN+FVbh8fNq56LFKPMchGNKCJeyboHsDuGBqmhDUPvD4uDjsegQpDQzn52VaE0cpywbSIsDF/BSq9E9Yjh5oQ==";
+      };
+    };
+    "workbox-google-analytics-6.1.5" = {
       name = "workbox-google-analytics";
       packageName = "workbox-google-analytics";
-      version = "3.6.3";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-3.6.3.tgz";
-        sha512 = "RQBUo/6SXtIaQTRFj4RQZ9e1gAl7D8oS5S+Hi173Kk70/BgJjzPwXpC5A249Jv5YfkCOLMQCeF9A27BiD0b0ig==";
+        url = "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-6.1.5.tgz";
+        sha512 = "LYsJ/VxTkYVLxM1uJKXZLz4cJdemidY7kPyAYtKVZ6EiDG89noASqis75/5lhqM1m3HwQfp2DtoPrelKSpSDBA==";
       };
     };
-    "workbox-navigation-preload-3.6.3" = {
+    "workbox-navigation-preload-6.1.5" = {
       name = "workbox-navigation-preload";
       packageName = "workbox-navigation-preload";
-      version = "3.6.3";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-3.6.3.tgz";
-        sha512 = "dd26xTX16DUu0i+MhqZK/jQXgfIitu0yATM4jhRXEmpMqQ4MxEeNvl2CgjDMOHBnCVMax+CFZQWwxMx/X/PqCw==";
+        url = "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-6.1.5.tgz";
+        sha512 = "hDbNcWlffv0uvS21jCAC/mYk7NzaGRSWOQXv1p7bj2aONAX5l699D2ZK4D27G8TO0BaLHUmW/1A5CZcsvweQdg==";
       };
     };
-    "workbox-precaching-3.6.3" = {
+    "workbox-precaching-6.1.5" = {
       name = "workbox-precaching";
       packageName = "workbox-precaching";
-      version = "3.6.3";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-3.6.3.tgz";
-        sha512 = "aBqT66BuMFviPTW6IpccZZHzpA8xzvZU2OM1AdhmSlYDXOJyb1+Z6blVD7z2Q8VNtV1UVwQIdImIX+hH3C3PIw==";
+        url = "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-6.1.5.tgz";
+        sha512 = "yhm1kb6wgi141JeM5X7z42XJxCry53tbMLB3NgrxktrZbwbrJF8JILzYy+RFKC9tHC6u2bPmL789GPLT2NCDzw==";
       };
     };
-    "workbox-range-requests-3.6.3" = {
+    "workbox-range-requests-6.1.5" = {
       name = "workbox-range-requests";
       packageName = "workbox-range-requests";
-      version = "3.6.3";
+      version = "6.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-6.1.5.tgz";
+        sha512 = "iACChSapzB0yuIum3ascP/+cfBNuZi5DRrE+u4u5mCHigPlwfSWtlaY+y8p+a8EwcDTVTZVtnrGrRnF31SiLqQ==";
+      };
+    };
+    "workbox-recipes-6.1.5" = {
+      name = "workbox-recipes";
+      packageName = "workbox-recipes";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-3.6.3.tgz";
-        sha512 = "R+yLWQy7D9aRF9yJ3QzwYnGFnGDhMUij4jVBUVtkl67oaVoP1ymZ81AfCmfZro2kpPRI+vmNMfxxW531cqdx8A==";
+        url = "https://registry.npmjs.org/workbox-recipes/-/workbox-recipes-6.1.5.tgz";
+        sha512 = "MD1yabHca6O/oj1hrRdfj9cRwhKA5zqIE53rWOAg/dKMMzWQsf9nyRbXRgzK3a13iQvYKuQzURU4Cx58tdnR+Q==";
       };
     };
-    "workbox-routing-3.6.3" = {
+    "workbox-routing-6.1.5" = {
       name = "workbox-routing";
       packageName = "workbox-routing";
-      version = "3.6.3";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-routing/-/workbox-routing-3.6.3.tgz";
-        sha512 = "bX20i95OKXXQovXhFOViOK63HYmXvsIwZXKWbSpVeKToxMrp0G/6LZXnhg82ijj/S5yhKNRf9LeGDzaqxzAwMQ==";
+        url = "https://registry.npmjs.org/workbox-routing/-/workbox-routing-6.1.5.tgz";
+        sha512 = "uC/Ctz+4GXGL42h1WxUNKxqKRik/38uS0NZ6VY/EHqL2F1ObLFqMHUZ4ZYvyQsKdyI82cxusvhJZHOrY0a2fIQ==";
       };
     };
-    "workbox-strategies-3.6.3" = {
+    "workbox-strategies-6.1.5" = {
       name = "workbox-strategies";
       packageName = "workbox-strategies";
-      version = "3.6.3";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-3.6.3.tgz";
-        sha512 = "Pg5eulqeKet2y8j73Yw6xTgLdElktcWExGkzDVCGqfV9JCvnGuEpz5eVsCIK70+k4oJcBCin9qEg3g3CwEIH3g==";
+        url = "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-6.1.5.tgz";
+        sha512 = "QhiOn9KT9YGBdbfWOmJT6pXZOIAxaVrs6J6AMYzRpkUegBTEcv36+ZhE/cfHoT0u2fxVtthHnskOQ/snEzaXQw==";
       };
     };
-    "workbox-streams-3.6.3" = {
+    "workbox-streams-6.1.5" = {
       name = "workbox-streams";
       packageName = "workbox-streams";
-      version = "3.6.3";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-streams/-/workbox-streams-3.6.3.tgz";
-        sha512 = "rqDuS4duj+3aZUYI1LsrD2t9hHOjwPqnUIfrXSOxSVjVn83W2MisDF2Bj+dFUZv4GalL9xqErcFW++9gH+Z27w==";
+        url = "https://registry.npmjs.org/workbox-streams/-/workbox-streams-6.1.5.tgz";
+        sha512 = "OI1kLvRHGFXV+soDvs6aEwfBwdAkvPB0mRryqdh3/K17qUj/1gRXc8QtpgU+83xqx/I/ar2bTCIj0KPzI/ChCQ==";
       };
     };
-    "workbox-sw-3.6.3" = {
+    "workbox-sw-6.1.5" = {
       name = "workbox-sw";
       packageName = "workbox-sw";
-      version = "3.6.3";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-sw/-/workbox-sw-3.6.3.tgz";
-        sha512 = "IQOUi+RLhvYCiv80RP23KBW/NTtIvzvjex28B8NW1jOm+iV4VIu3VXKXTA6er5/wjjuhmtB28qEAUqADLAyOSg==";
+        url = "https://registry.npmjs.org/workbox-sw/-/workbox-sw-6.1.5.tgz";
+        sha512 = "IMDiqxYbKzPorZLGMUMacLB6r76iVQbdTzYthIZoPfy+uFURJFUtqiWQJKg1L+RMyuYXwKXTahCIGkgFs4jBeg==";
       };
     };
-    "workbox-webpack-plugin-3.6.3" = {
+    "workbox-webpack-plugin-6.1.5" = {
       name = "workbox-webpack-plugin";
       packageName = "workbox-webpack-plugin";
-      version = "3.6.3";
+      version = "6.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/workbox-webpack-plugin/-/workbox-webpack-plugin-6.1.5.tgz";
+        sha512 = "tsgeNAYiFP4STNPDxBVT58eiU8nGUmcv7Lq9FFJkQf5MMu6tPw1OLp+KpszhbCWP+R/nEdu85Gjexs6fY647Kg==";
+      };
+    };
+    "workbox-window-6.1.5" = {
+      name = "workbox-window";
+      packageName = "workbox-window";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workbox-webpack-plugin/-/workbox-webpack-plugin-3.6.3.tgz";
-        sha512 = "RwmKjc7HFHUFHoOlKoZUq9349u0QN3F8W5tZZU0vc1qsBZDINWXRiIBCAKvo/Njgay5sWz7z4I2adnyTo97qIQ==";
+        url = "https://registry.npmjs.org/workbox-window/-/workbox-window-6.1.5.tgz";
+        sha512 = "akL0X6mAegai2yypnq78RgfazeqvKbsllRtEI4dnbhPcRINEY1NmecFmsQk8SD+zWLK1gw5OdwAOX+zHSRVmeA==";
       };
     };
     "worker-farm-1.7.0" = {
@@ -63286,13 +64384,13 @@ let
         sha512 = "toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg==";
       };
     };
-    "workerpool-6.1.4" = {
+    "workerpool-6.1.5" = {
       name = "workerpool";
       packageName = "workerpool";
-      version = "6.1.4";
+      version = "6.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/workerpool/-/workerpool-6.1.4.tgz";
-        sha512 = "jGWPzsUqzkow8HoAvqaPWTUPCrlPJaJ5tY8Iz7n1uCz3tTp6s3CDG0FF1NsX42WNlkRSW6Mr+CDZGnNoSsKa7g==";
+        url = "https://registry.npmjs.org/workerpool/-/workerpool-6.1.5.tgz";
+        sha512 = "XdKkCK0Zqc6w3iTxLckiuJ81tiD/o5rBE/m+nXpRCB+/Sq4DqkfXZ/x0jW02DG1tGsfUGXbTJyZDP+eu67haSw==";
       };
     };
     "wrap-ansi-2.1.0" = {
@@ -63502,15 +64600,6 @@ let
         sha512 = "eqZfL+NE/YQc1/ZynhojeV8q+H050oR8AZ2uIev7RU10svA9ZnJUddHcOUZTJLinZ9yEfdA2kSATS2qZK5fhJA==";
       };
     };
-    "ws-6.2.1" = {
-      name = "ws";
-      packageName = "ws";
-      version = "6.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz";
-        sha512 = "GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==";
-      };
-    };
     "ws-6.2.2" = {
       name = "ws";
       packageName = "ws";
@@ -63556,6 +64645,15 @@ let
         sha512 = "2c6faOUH/nhoQN6abwMloF7Iyl0ZS2E9HGtsiLrWn0zOOMWlhtDmdf/uihDt6jnuCxgtwGBNy6Onsoy2s2O2Ow==";
       };
     };
+    "ws-7.5.3" = {
+      name = "ws";
+      packageName = "ws";
+      version = "7.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz";
+        sha512 = "kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==";
+      };
+    };
     "x-default-browser-0.3.1" = {
       name = "x-default-browser";
       packageName = "x-default-browser";
@@ -63637,13 +64735,13 @@ let
         sha512 = "N1XQngeqMBoj9wM4ZFadVV2MymImeiFfYD+fJrNlcVcOHsJFFQe7n3b+aBoTPwARuq2HQxukfzVpQmAk1gN4sQ==";
       };
     };
-    "xdl-59.0.47" = {
+    "xdl-59.0.50" = {
       name = "xdl";
       packageName = "xdl";
-      version = "59.0.47";
+      version = "59.0.50";
       src = fetchurl {
-        url = "https://registry.npmjs.org/xdl/-/xdl-59.0.47.tgz";
-        sha512 = "y6oA1/0RAOQ0pVl2nxRE40r/YUCPGcg+JS9mEiKDYZo6U8bIYhWx/X1gdBwvzzDOjfDZV34ls0fyTgLjeq0Xvg==";
+        url = "https://registry.npmjs.org/xdl/-/xdl-59.0.50.tgz";
+        sha512 = "T1QdEP3U4m0BfeqRWPJ1J9ywlmicFTM8zBWPqP/1Xw6V/cpX2QHRfhLpl60uEiD7HsCcAPXTe1zIo8khDhFYvA==";
       };
     };
     "xenvar-0.5.1" = {
@@ -63971,6 +65069,15 @@ let
         sha512 = "3XfeQE/wNkvrIktn2Kf0869fC0BN6UpydVasGIeSm2B1Llihf7/0UfZM+eCkOw3P7bP4+qPgqhm7ZoxuJtFU0Q==";
       };
     };
+    "xor-distance-2.0.0" = {
+      name = "xor-distance";
+      packageName = "xor-distance";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xor-distance/-/xor-distance-2.0.0.tgz";
+        sha512 = "AsAqZfPAuWx7qB/0kyRDUEvoU3QKsHWzHU9smFlkaiprEpGfJ/NBbLze2Uq0rdkxCxkNM9uOLvz/KoNBCbZiLQ==";
+      };
+    };
     "xorshift-0.2.1" = {
       name = "xorshift";
       packageName = "xorshift";
@@ -64025,6 +65132,15 @@ let
         sha512 = "zd3ytX2cm+tcSndRU+krm0eL4TMMpZE7evs5hLRAoOy6gviqLfe3qOlkjF3i5SeAkQUCeJk0lJZrEU56kHRfWw==";
       };
     };
+    "xsalsa20-universal-1.0.0" = {
+      name = "xsalsa20-universal";
+      packageName = "xsalsa20-universal";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xsalsa20-universal/-/xsalsa20-universal-1.0.0.tgz";
+        sha512 = "0M/X61wiKKAGAMqsxEyJ0kY6NtjpcMiKinYSSsl4K7ypgvqXDTMwQK6hxnYE1s1Jm7h6YKcN8obDUg2CC+jVGA==";
+      };
+    };
     "xspfr-0.3.1" = {
       name = "xspfr";
       packageName = "xspfr";
@@ -64043,13 +65159,13 @@ let
         sha512 = "2t7FahYnGJys6DpHLhajusId7R0Pm2yTmuL0GV9+mV0ZlaLSnb2toBmppATfg5sWIhZQGlsTLoecSzya+l4EAQ==";
       };
     };
-    "xstate-4.20.2" = {
+    "xstate-4.23.0" = {
       name = "xstate";
       packageName = "xstate";
-      version = "4.20.2";
+      version = "4.23.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/xstate/-/xstate-4.20.2.tgz";
-        sha512 = "HvU+NCYffTOC1oiopNKve3IdLNRpuvNa3tv+fhM8mo9+TGCF35wIMQJON7bWG/2041ySBKw78PW2goV+Ug073w==";
+        url = "https://registry.npmjs.org/xstate/-/xstate-4.23.0.tgz";
+        sha512 = "YIKb7thsDfpb6ooWJJuj+UnNZq923dG264zfpS2/vi4dkZz41ugO0ktC6QCBDeMfH8LBHhhqZ06sR4AYgWWnWg==";
       };
     };
     "xstream-11.14.0" = {
@@ -64178,13 +65294,13 @@ let
         sha512 = "JbTUdsPiCkOyz+JOSqAVc19omTnUBnBQglhuclYov5HpWbEOz8y+ftqWjiMa9Pe/eF/dmCUeNgVs/VWg53GlgQ==";
       };
     };
-    "yaml-language-server-0.13.1-d0f9b44.0" = {
+    "yaml-language-server-0.20.0" = {
       name = "yaml-language-server";
       packageName = "yaml-language-server";
-      version = "0.13.1-d0f9b44.0";
+      version = "0.20.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yaml-language-server/-/yaml-language-server-0.13.1-d0f9b44.0.tgz";
-        sha512 = "6q5NKJiCqB1ptEopsA6pQDNDBnpwQ5o3A6im9Mus9XdB1gM0TCaR2TT9XU13CFo6JoCgVZ6s3lgoUOsbN8Y5Qw==";
+        url = "https://registry.npmjs.org/yaml-language-server/-/yaml-language-server-0.20.0.tgz";
+        sha512 = "JV5jqB/1p2g4WCW1Gi6Kd3RQQSepdvTQBIDLSSoVzi7Q7kH+6tFkFJlMCBs0qmxLPkaU062d3IxdTWDK/MvvEA==";
       };
     };
     "yaml-language-server-parser-0.1.2" = {
@@ -64196,15 +65312,6 @@ let
         sha512 = "GQ2eRE5GcKBK8XVKBIcMyOfC8WMZmEs6gogtVc6knLKE6pG+e5L/lOMfBxZzAt2lqye5itMggQ9+6stXAVhMsw==";
       };
     };
-    "yaml-language-server-parser-0.1.3-fa8245c.0" = {
-      name = "yaml-language-server-parser";
-      packageName = "yaml-language-server-parser";
-      version = "0.1.3-fa8245c.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/yaml-language-server-parser/-/yaml-language-server-parser-0.1.3-fa8245c.0.tgz";
-        sha512 = "0QPUSsmMXHDpqj00xUrlMyqlEAwHHIAuz3wPMyprcCVYx7jh7oo91Z0nC/jhott4XAKp3iY3vjBsMxqszoZosA==";
-      };
-    };
     "yamljs-0.3.0" = {
       name = "yamljs";
       packageName = "yamljs";
@@ -64331,6 +65438,15 @@ let
         sha1 = "e60432658a3387ff269c028eacde4a512e438dff";
       };
     };
+    "yargs-4.8.1" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "4.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs/-/yargs-4.8.1.tgz";
+        sha1 = "c0c42924ca4aaa6b0e6da1739dfb216439f9ddc0";
+      };
+    };
     "yargs-6.6.0" = {
       name = "yargs";
       packageName = "yargs";
@@ -64457,6 +65573,15 @@ let
         sha1 = "9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077";
       };
     };
+    "yargs-unparser-1.6.0" = {
+      name = "yargs-unparser";
+      packageName = "yargs-unparser";
+      version = "1.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz";
+        sha512 = "W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==";
+      };
+    };
     "yargs-unparser-2.0.0" = {
       name = "yargs-unparser";
       packageName = "yargs-unparser";
@@ -64547,6 +65672,15 @@ let
         sha512 = "Bu3kN5sTOyAcbO/cKEQf6KOxsLta9oRF59saLOKnt3OQM+hXapnWaAHcrat3dygd6l34KjxwM5AMJp09TDa8yw==";
       };
     };
+    "yesno-0.3.1" = {
+      name = "yesno";
+      packageName = "yesno";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yesno/-/yesno-0.3.1.tgz";
+        sha512 = "7RbCXegyu6DykWPWU0YEtW8gFJH8KBL2d5l2fqB0XpkH0Y9rk59YSSWpzEv7yNJBGAouPc67h3kkq0CZkpBdFw==";
+      };
+    };
     "yn-3.1.1" = {
       name = "yn";
       packageName = "yn";
@@ -64601,15 +65735,6 @@ let
         sha512 = "7tDlwhrBG+oYFdXNOjILSurpfQyuVgkRe3hB2q8TEssamDHB7BbLWYkYO98nTn0FibfdFroFKDjndbgufAgS/Q==";
       };
     };
-    "zen-observable-0.5.2" = {
-      name = "zen-observable";
-      packageName = "zen-observable";
-      version = "0.5.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/zen-observable/-/zen-observable-0.5.2.tgz";
-        sha512 = "Dhp/R0pqSHj3vPs5O1gVd9kZx5Iew2lqVcfJQOBHx3llM/dLea8vl9wSa9FK8wLdSBQJ6mmgKi9+Rk2DRH3i9Q==";
-      };
-    };
     "zen-observable-0.8.15" = {
       name = "zen-observable";
       packageName = "zen-observable";
@@ -64706,22 +65831,22 @@ in
   "@angular/cli" = nodeEnv.buildNodePackage {
     name = "_at_angular_slash_cli";
     packageName = "@angular/cli";
-    version = "12.1.1";
+    version = "12.1.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@angular/cli/-/cli-12.1.1.tgz";
-      sha512 = "rQZItn3kpYEX6tH7wquAEhJuxVpW6sYKO2tSi8Suxrm+iz1RPRnfhSwS1WIEumnwpFRtH/8P+lOrScax1ldYkg==";
+      url = "https://registry.npmjs.org/@angular/cli/-/cli-12.1.2.tgz";
+      sha512 = "oBJcSqXJyPzWGYft5/nD3hJhunxTGXlI4++9ehzdF/fRipOLLMqf77vi/4rUA2DGuaPMbYJeunBnIsgXRGIHIg==";
     };
     dependencies = [
-      sources."@angular-devkit/architect-0.1201.1"
-      sources."@angular-devkit/core-12.1.1"
-      sources."@angular-devkit/schematics-12.1.1"
+      sources."@angular-devkit/architect-0.1201.2"
+      sources."@angular-devkit/core-12.1.2"
+      sources."@angular-devkit/schematics-12.1.2"
       sources."@npmcli/git-2.1.0"
       sources."@npmcli/installed-package-contents-1.0.7"
       sources."@npmcli/move-file-1.1.2"
       sources."@npmcli/node-gyp-1.0.2"
       sources."@npmcli/promise-spawn-1.3.2"
       sources."@npmcli/run-script-1.8.5"
-      sources."@schematics/angular-12.1.1"
+      sources."@schematics/angular-12.1.2"
       sources."@tootallnate/once-1.1.2"
       sources."@yarnpkg/lockfile-1.1.0"
       sources."abbrev-1.1.1"
@@ -64837,7 +65962,7 @@ in
       sources."ini-2.0.0"
       sources."inquirer-8.1.1"
       sources."ip-1.1.5"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-docker-2.2.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-interactive-1.0.0"
@@ -64860,14 +65985,14 @@ in
       sources."log-symbols-4.1.0"
       sources."lru-cache-6.0.0"
       sources."magic-string-0.25.7"
-      sources."make-fetch-happen-9.0.3"
+      sources."make-fetch-happen-9.0.4"
       sources."mime-db-1.48.0"
       sources."mime-types-2.1.31"
       sources."mimic-fn-2.1.0"
       sources."minimatch-3.0.4"
       sources."minipass-3.1.3"
       sources."minipass-collect-1.0.2"
-      sources."minipass-fetch-1.3.3"
+      sources."minipass-fetch-1.3.4"
       sources."minipass-flush-1.0.5"
       sources."minipass-json-stream-1.0.1"
       sources."minipass-pipeline-1.2.4"
@@ -65331,131 +66456,114 @@ in
   "@bitwarden/cli" = nodeEnv.buildNodePackage {
     name = "_at_bitwarden_slash_cli";
     packageName = "@bitwarden/cli";
-    version = "1.16.0";
+    version = "1.17.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@bitwarden/cli/-/cli-1.16.0.tgz";
-      sha512 = "HWQnOa3TzRJcF/TVKGWqzFP9PVaG6IhCBzFVY2tZ5mITNAf1nb2aC+gzH2EMa1m41IV6knPuXpqnsVGJGqQuxg==";
+      url = "https://registry.npmjs.org/@bitwarden/cli/-/cli-1.17.1.tgz";
+      sha512 = "OLzkh+ggrr95FL+pFxMmUdq8VMOz8aT50QZXqtyzvyhdhXDcdOCCrp3nd/j5yp4Y1hV0cElwOQUD/IEBmCwEPw==";
     };
     dependencies = [
+      sources."@tootallnate/once-1.1.2"
       sources."abab-2.0.5"
-      sources."acorn-6.4.2"
-      sources."acorn-globals-4.3.4"
-      sources."acorn-walk-6.2.0"
+      sources."acorn-8.4.1"
+      (sources."acorn-globals-6.0.0" // {
+        dependencies = [
+          sources."acorn-7.4.1"
+        ];
+      })
+      sources."acorn-walk-7.2.0"
       sources."agent-base-6.0.2"
-      sources."ajv-6.12.6"
-      sources."ansi-escapes-3.2.0"
-      sources."ansi-regex-3.0.0"
-      sources."ansi-styles-3.2.1"
-      sources."array-equal-1.0.0"
-      sources."asn1-0.2.4"
-      sources."assert-plus-1.0.0"
-      sources."async-limiter-1.0.1"
+      sources."ansi-escapes-4.3.2"
+      sources."ansi-regex-5.0.0"
+      sources."ansi-styles-4.3.0"
       sources."asynckit-0.4.0"
-      sources."aws-sign2-0.7.0"
-      sources."aws4-1.11.0"
-      sources."bcrypt-pbkdf-1.0.2"
       sources."big-integer-1.6.48"
       sources."browser-hrtime-1.1.8"
       sources."browser-process-hrtime-1.0.0"
-      sources."caseless-0.12.0"
-      sources."chalk-2.4.1"
+      sources."chalk-4.1.1"
       sources."chardet-0.7.0"
-      sources."cli-cursor-2.1.0"
-      sources."cli-width-2.2.1"
-      sources."color-convert-1.9.3"
-      sources."color-name-1.1.3"
-      sources."combined-stream-1.0.6"
-      sources."commander-7.0.0"
-      sources."core-util-is-1.0.2"
-      sources."cssom-0.3.8"
-      sources."cssstyle-1.4.0"
-      sources."dashdash-1.14.1"
-      sources."data-urls-1.1.0"
+      sources."cli-cursor-3.1.0"
+      sources."cli-width-3.0.0"
+      sources."color-convert-2.0.1"
+      sources."color-name-1.1.4"
+      sources."combined-stream-1.0.8"
+      sources."commander-7.2.0"
+      sources."cssom-0.4.4"
+      (sources."cssstyle-2.3.0" // {
+        dependencies = [
+          sources."cssom-0.3.8"
+        ];
+      })
+      sources."data-urls-2.0.0"
       sources."debug-4.3.2"
+      sources."decimal.js-10.3.1"
       sources."deep-is-0.1.3"
+      sources."define-lazy-prop-2.0.0"
       sources."delayed-stream-1.0.0"
-      sources."domexception-1.0.1"
-      sources."ecc-jsbn-0.1.2"
+      (sources."domexception-2.0.1" // {
+        dependencies = [
+          sources."webidl-conversions-5.0.0"
+        ];
+      })
+      sources."emoji-regex-8.0.0"
       sources."escape-string-regexp-1.0.5"
-      sources."escodegen-1.14.3"
+      sources."escodegen-2.0.0"
       sources."esprima-4.0.1"
-      sources."estraverse-4.3.0"
+      sources."estraverse-5.2.0"
       sources."esutils-2.0.3"
-      sources."extend-3.0.2"
       sources."external-editor-3.1.0"
-      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."figures-2.0.0"
-      sources."forever-agent-0.6.1"
-      sources."form-data-2.3.2"
-      sources."getpass-0.1.7"
+      sources."figures-3.2.0"
+      sources."form-data-4.0.0"
       sources."graceful-fs-4.2.6"
-      sources."har-schema-2.0.0"
-      sources."har-validator-5.1.5"
-      sources."has-flag-3.0.0"
-      sources."html-encoding-sniffer-1.0.2"
-      sources."http-signature-1.2.0"
+      sources."has-flag-4.0.0"
+      sources."html-encoding-sniffer-2.0.1"
+      sources."http-proxy-agent-4.0.1"
       sources."https-proxy-agent-5.0.0"
       sources."iconv-lite-0.4.24"
-      sources."inquirer-6.2.0"
+      sources."inquirer-8.0.0"
       sources."is-docker-2.2.1"
-      sources."is-fullwidth-code-point-2.0.0"
+      sources."is-fullwidth-code-point-3.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-wsl-2.2.0"
-      sources."isstream-0.1.2"
-      sources."jsbn-0.1.1"
-      sources."jsdom-13.2.0"
-      sources."json-schema-0.2.3"
-      sources."json-schema-traverse-0.4.1"
-      sources."json-stringify-safe-5.0.1"
-      sources."jsprim-1.4.1"
+      (sources."jsdom-16.6.0" // {
+        dependencies = [
+          sources."form-data-3.0.1"
+        ];
+      })
       sources."levn-0.3.0"
       sources."lodash-4.17.21"
-      sources."lodash.sortby-4.7.0"
       sources."lowdb-1.0.0"
-      sources."lunr-2.3.3"
+      sources."lunr-2.3.9"
       sources."mime-db-1.48.0"
       sources."mime-types-2.1.31"
-      sources."mimic-fn-1.2.0"
+      sources."mimic-fn-2.1.0"
       sources."ms-2.1.2"
-      sources."mute-stream-0.0.7"
+      sources."mute-stream-0.0.8"
       sources."node-fetch-2.6.1"
       sources."node-forge-0.10.0"
       sources."nwsapi-2.2.0"
-      sources."oauth-sign-0.9.0"
-      sources."onetime-2.0.1"
-      sources."open-7.1.0"
+      sources."onetime-5.1.2"
+      sources."open-8.2.1"
       sources."optionator-0.8.3"
       sources."os-tmpdir-1.0.2"
-      sources."papaparse-5.2.0"
-      sources."parse5-5.1.0"
-      sources."performance-now-2.1.0"
+      sources."papaparse-5.3.1"
+      sources."parse5-6.0.1"
       sources."pify-3.0.0"
-      sources."pn-1.1.0"
       sources."prelude-ls-1.1.2"
       sources."psl-1.8.0"
       sources."punycode-2.1.1"
-      sources."qs-6.5.2"
-      sources."request-2.88.2"
-      sources."request-promise-core-1.1.4"
-      sources."request-promise-native-1.0.9"
-      sources."restore-cursor-2.0.0"
+      sources."restore-cursor-3.1.0"
       sources."run-async-2.4.1"
       sources."rxjs-6.6.7"
-      sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      sources."saxes-3.1.11"
+      sources."saxes-5.0.1"
       sources."signal-exit-3.0.3"
       sources."source-map-0.6.1"
-      sources."sshpk-1.16.1"
-      sources."stealthy-require-1.1.1"
       sources."steno-0.4.4"
-      sources."string-width-2.1.1"
-      sources."strip-ansi-4.0.0"
-      sources."supports-color-5.5.0"
+      sources."string-width-4.2.2"
+      sources."strip-ansi-6.0.0"
+      sources."supports-color-7.2.0"
       sources."symbol-tree-3.2.4"
       sources."through-2.3.8"
       (sources."tldjs-2.3.1" // {
@@ -65464,23 +66572,20 @@ in
         ];
       })
       sources."tmp-0.0.33"
-      sources."tough-cookie-2.5.0"
-      sources."tr46-1.0.1"
+      sources."tough-cookie-4.0.0"
+      sources."tr46-2.1.0"
       sources."tslib-1.14.1"
-      sources."tunnel-agent-0.6.0"
-      sources."tweetnacl-0.14.5"
       sources."type-check-0.3.2"
-      sources."uri-js-4.4.1"
-      sources."uuid-3.4.0"
-      sources."verror-1.10.0"
+      sources."type-fest-0.21.3"
+      sources."universalify-0.1.2"
       sources."w3c-hr-time-1.0.2"
-      sources."w3c-xmlserializer-1.1.2"
-      sources."webidl-conversions-4.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-7.1.0"
+      sources."whatwg-url-8.7.0"
       sources."word-wrap-1.2.3"
-      sources."ws-6.2.2"
+      sources."ws-7.5.3"
       sources."xml-name-validator-3.0.0"
       sources."xmlchars-2.2.0"
       sources."zxcvbn-4.4.2"
@@ -65495,25 +66600,530 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  "@hyperspace/cli" = nodeEnv.buildNodePackage {
+    name = "_at_hyperspace_slash_cli";
+    packageName = "@hyperspace/cli";
+    version = "1.5.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/@hyperspace/cli/-/cli-1.5.1.tgz";
+      sha512 = "+VU/4tWRLf8jVMYyYo1A/rzkZHg0F3LLSvxNti0515a8VD8iyGbyd07nbh88yZC0SWpzMtUZ9ULtKXB2E53MWQ==";
+    };
+    dependencies = [
+      sources."@corestore/networker-1.1.0"
+      sources."@hyperspace/client-1.18.0"
+      sources."@hyperspace/migration-tool-1.2.1"
+      sources."@hyperspace/rpc-1.15.1"
+      sources."@hyperswarm/dht-4.0.1"
+      sources."@hyperswarm/discovery-2.0.1"
+      sources."@hyperswarm/hypersign-2.1.1"
+      sources."@hyperswarm/network-2.1.0"
+      sources."@leichtgewicht/ip-codec-2.0.3"
+      sources."@types/node-16.4.0"
+      sources."abstract-extension-3.1.1"
+      sources."abstract-leveldown-6.2.3"
+      sources."ansi-colors-3.2.3"
+      (sources."ansi-diff-stream-1.2.1" // {
+        dependencies = [
+          sources."through2-2.0.5"
+        ];
+      })
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."anymatch-3.1.2"
+      sources."argparse-1.0.10"
+      sources."arpeecee-2.2.0"
+      sources."array-lru-1.1.1"
+      sources."atomic-batcher-1.0.2"
+      sources."await-lock-2.1.0"
+      sources."balanced-match-1.0.2"
+      sources."base64-js-1.5.1"
+      sources."binary-extensions-2.2.0"
+      (sources."bitfield-rle-2.2.1" // {
+        dependencies = [
+          sources."varint-4.0.1"
+        ];
+      })
+      sources."blake2b-2.1.3"
+      sources."blake2b-universal-1.0.1"
+      sources."blake2b-wasm-1.1.7"
+      sources."brace-expansion-1.1.11"
+      sources."braces-3.0.2"
+      sources."browser-stdout-1.3.1"
+      sources."buffer-5.7.1"
+      sources."buffer-alloc-1.2.0"
+      sources."buffer-alloc-unsafe-1.1.0"
+      sources."buffer-fill-1.0.0"
+      sources."buffer-from-1.1.1"
+      sources."buffer-json-2.0.0"
+      sources."buffer-json-encoding-1.0.2"
+      sources."bulk-write-stream-1.1.4"
+      (sources."byte-stream-2.1.0" // {
+        dependencies = [
+          sources."debug-1.0.5"
+          sources."isarray-0.0.1"
+          sources."readable-stream-1.1.14"
+          sources."string_decoder-0.10.31"
+        ];
+      })
+      sources."bytes-3.1.0"
+      sources."call-bind-1.0.2"
+      sources."call-me-maybe-1.0.1"
+      sources."camelcase-5.3.1"
+      (sources."chacha20-universal-1.0.4" // {
+        dependencies = [
+          sources."nanoassert-2.0.0"
+        ];
+      })
+      sources."chalk-1.1.3"
+      sources."chokidar-3.5.2"
+      sources."cliclopts-1.1.1"
+      (sources."cliui-5.0.0" // {
+        dependencies = [
+          sources."ansi-regex-4.1.0"
+          sources."ansi-styles-3.2.1"
+          sources."string-width-3.1.0"
+          sources."strip-ansi-5.2.0"
+          sources."wrap-ansi-5.1.0"
+        ];
+      })
+      sources."clone-2.1.2"
+      sources."codecs-2.2.0"
+      sources."color-convert-1.9.3"
+      sources."color-name-1.1.3"
+      sources."concat-map-0.0.1"
+      (sources."concat-stream-2.0.0" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
+      sources."core-util-is-1.0.2"
+      sources."corestore-5.8.2"
+      sources."count-trailing-zeros-1.0.1"
+      sources."cross-spawn-async-2.2.5"
+      sources."crypto-random-string-1.0.0"
+      sources."custom-error-class-1.0.0"
+      sources."dat-encoding-5.0.1"
+      sources."debug-2.6.9"
+      sources."decamelize-1.2.0"
+      sources."deferred-leveldown-5.3.0"
+      sources."define-properties-1.1.3"
+      sources."defined-0.0.0"
+      sources."derive-key-1.0.1"
+      sources."derived-key-storage-2.1.0"
+      sources."dht-rpc-4.9.6"
+      sources."diff-3.5.0"
+      (sources."diff-file-tree-2.5.1" // {
+        dependencies = [
+          sources."pump-1.0.3"
+        ];
+      })
+      sources."dns-packet-5.3.0"
+      sources."duplexify-3.7.1"
+      sources."emoji-regex-7.0.3"
+      sources."encoding-down-6.3.0"
+      sources."end-of-stream-1.4.4"
+      sources."errno-0.1.8"
+      (sources."es-abstract-1.18.3" // {
+        dependencies = [
+          sources."object.assign-4.1.2"
+        ];
+      })
+      sources."es-to-primitive-1.2.1"
+      sources."es6-promise-4.2.8"
+      sources."es6-promisify-5.0.0"
+      sources."escape-string-regexp-1.0.5"
+      sources."esprima-4.0.1"
+      sources."execa-0.4.0"
+      sources."fast-bitfield-1.2.2"
+      sources."fast-fifo-1.0.0"
+      sources."fd-lock-1.2.0"
+      sources."filesystem-constants-1.0.0"
+      sources."fill-range-7.0.1"
+      sources."find-up-3.0.0"
+      sources."flat-4.1.1"
+      sources."flat-tree-1.8.0"
+      sources."freemap-1.0.1"
+      sources."fs.realpath-1.0.0"
+      sources."fsctl-1.0.0"
+      sources."fsevents-2.3.2"
+      sources."function-bind-1.1.1"
+      sources."generate-function-2.3.1"
+      sources."generate-object-property-1.2.0"
+      sources."get-caller-file-2.0.5"
+      sources."get-intrinsic-1.1.1"
+      sources."glob-7.1.3"
+      sources."glob-parent-5.1.2"
+      sources."growl-1.10.5"
+      sources."guard-timeout-2.0.0"
+      sources."has-1.0.3"
+      sources."has-ansi-2.0.0"
+      sources."has-bigints-1.0.1"
+      sources."has-flag-3.0.0"
+      sources."has-symbols-1.0.2"
+      sources."hashlru-2.3.0"
+      sources."he-1.2.0"
+      sources."hmac-blake2b-2.0.0"
+      sources."hrpc-2.2.0"
+      sources."hrpc-runtime-2.1.1"
+      sources."hyperbeam-1.1.3"
+      sources."hyperbee-1.5.5"
+      sources."hypercore-9.10.0"
+      (sources."hypercore-byte-stream-1.0.12" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
+      sources."hypercore-cache-1.0.2"
+      (sources."hypercore-crypto-2.3.0" // {
+        dependencies = [
+          sources."uint64be-3.0.0"
+        ];
+      })
+      sources."hypercore-default-storage-1.1.1"
+      sources."hypercore-promisifier-1.1.0"
+      (sources."hypercore-protocol-8.0.7" // {
+        dependencies = [
+          sources."debug-4.3.2"
+          sources."ms-2.1.2"
+        ];
+      })
+      sources."hypercore-streams-1.0.1"
+      sources."hyperdrive-10.20.0"
+      sources."hyperdrive-schemas-2.0.0"
+      sources."hyperspace-3.19.0"
+      (sources."hyperspace-mirroring-service-1.0.7" // {
+        dependencies = [
+          sources."nanoresource-promise-2.0.0"
+        ];
+      })
+      sources."hyperswarm-2.15.3"
+      sources."hypertrie-5.1.1"
+      sources."identify-filetype-1.0.0"
+      sources."ieee754-1.2.1"
+      sources."immediate-3.3.0"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.4"
+      sources."ini-1.3.8"
+      sources."inspect-custom-symbol-1.1.1"
+      sources."ipv4-peers-2.0.0"
+      sources."is-bigint-1.0.2"
+      sources."is-binary-path-2.1.0"
+      sources."is-boolean-object-1.1.1"
+      sources."is-buffer-2.0.5"
+      sources."is-callable-1.2.3"
+      sources."is-core-module-2.5.0"
+      sources."is-date-object-1.0.4"
+      sources."is-extglob-2.1.1"
+      sources."is-fullwidth-code-point-2.0.0"
+      sources."is-glob-4.0.1"
+      sources."is-negative-zero-2.0.1"
+      sources."is-number-7.0.0"
+      sources."is-number-object-1.0.5"
+      sources."is-options-1.0.1"
+      sources."is-property-1.0.2"
+      sources."is-regex-1.1.3"
+      sources."is-stream-1.1.0"
+      sources."is-string-1.0.6"
+      sources."is-symbol-1.0.4"
+      sources."isarray-1.0.0"
+      sources."isexe-2.0.0"
+      sources."js-yaml-3.13.1"
+      sources."k-bucket-5.1.0"
+      sources."last-one-wins-1.0.4"
+      sources."level-6.0.1"
+      sources."level-codec-9.0.2"
+      sources."level-concat-iterator-2.0.1"
+      sources."level-errors-2.0.1"
+      (sources."level-iterator-stream-4.0.2" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
+      sources."level-js-5.0.2"
+      sources."level-option-wrap-1.1.0"
+      sources."level-packager-5.1.1"
+      sources."level-supports-1.0.1"
+      (sources."leveldown-5.6.0" // {
+        dependencies = [
+          sources."node-gyp-build-4.1.1"
+        ];
+      })
+      sources."levelup-4.4.0"
+      sources."locate-path-3.0.0"
+      sources."lodash-4.17.21"
+      (sources."log-symbols-3.0.0" // {
+        dependencies = [
+          sources."ansi-styles-3.2.1"
+          sources."chalk-2.4.2"
+          sources."supports-color-5.5.0"
+        ];
+      })
+      sources."lru-cache-4.1.5"
+      sources."ltgt-2.2.1"
+      sources."mem-0.1.1"
+      sources."memory-pager-1.5.0"
+      sources."merkle-tree-stream-4.0.0"
+      sources."mime-1.6.0"
+      sources."minimatch-3.0.4"
+      sources."minimist-1.2.5"
+      sources."mkdirp-1.0.4"
+      sources."mkdirp-classic-0.5.3"
+      (sources."mocha-7.2.0" // {
+        dependencies = [
+          sources."chokidar-3.3.0"
+          sources."debug-3.2.6"
+          sources."fsevents-2.1.3"
+          sources."mkdirp-0.5.5"
+          sources."ms-2.1.1"
+          sources."readdirp-3.2.0"
+          sources."supports-color-6.0.0"
+        ];
+      })
+      sources."moment-2.29.1"
+      sources."mountable-hypertrie-2.8.0"
+      sources."ms-2.0.0"
+      sources."multicast-dns-7.2.3"
+      sources."mutexify-1.3.1"
+      sources."nanoassert-1.1.0"
+      sources."nanoguard-1.3.0"
+      sources."nanoiterator-1.2.1"
+      sources."nanoresource-1.3.0"
+      sources."nanoresource-promise-1.2.2"
+      sources."napi-macros-2.0.0"
+      sources."node-environment-flags-1.0.6"
+      sources."node-gyp-build-4.2.3"
+      (sources."noise-peer-2.1.1" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
+      (sources."noise-protocol-3.0.1" // {
+        dependencies = [
+          sources."nanoassert-2.0.0"
+        ];
+      })
+      sources."normalize-path-3.0.0"
+      sources."npm-run-path-1.0.0"
+      sources."object-assign-4.1.1"
+      sources."object-inspect-1.11.0"
+      sources."object-keys-1.1.1"
+      sources."object.assign-4.1.0"
+      sources."object.getownpropertydescriptors-2.1.2"
+      sources."once-1.4.0"
+      sources."p-debounce-2.1.0"
+      sources."p-limit-2.3.0"
+      sources."p-locate-3.0.0"
+      sources."p-try-2.2.0"
+      sources."path-exists-3.0.0"
+      sources."path-is-absolute-1.0.1"
+      sources."path-key-1.0.0"
+      sources."path-parse-1.0.7"
+      sources."picomatch-2.3.0"
+      sources."pify-2.3.0"
+      sources."pretty-bytes-4.0.2"
+      sources."pretty-hash-1.0.1"
+      sources."process-nextick-args-2.0.1"
+      sources."progress-string-1.2.2"
+      sources."protocol-buffers-4.2.0"
+      sources."protocol-buffers-encodings-1.1.1"
+      sources."protocol-buffers-schema-3.5.1"
+      sources."prr-1.0.1"
+      sources."pseudomap-1.0.2"
+      sources."pump-3.0.0"
+      (sources."pumpify-2.0.1" // {
+        dependencies = [
+          sources."duplexify-4.1.2"
+          sources."readable-stream-3.6.0"
+        ];
+      })
+      sources."random-access-file-2.2.0"
+      sources."random-access-memory-3.1.2"
+      sources."random-access-storage-1.4.1"
+      sources."random-words-1.1.1"
+      sources."randombytes-2.1.0"
+      sources."range-parser-1.2.1"
+      sources."reachdown-1.1.0"
+      sources."readable-stream-2.3.7"
+      sources."readdirp-3.6.0"
+      sources."record-cache-1.1.1"
+      sources."refpool-1.2.2"
+      sources."remove-trailing-separator-1.1.0"
+      sources."require-directory-2.1.1"
+      sources."require-main-filename-2.0.0"
+      sources."resolve-1.20.0"
+      sources."safe-buffer-5.1.2"
+      (sources."secretstream-stream-2.0.0" // {
+        dependencies = [
+          sources."nanoassert-2.0.0"
+        ];
+      })
+      sources."semver-5.7.1"
+      sources."set-blocking-2.0.0"
+      sources."sha256-universal-1.1.2"
+      (sources."sha256-wasm-2.2.1" // {
+        dependencies = [
+          sources."nanoassert-2.0.0"
+        ];
+      })
+      sources."sha512-universal-1.1.2"
+      (sources."sha512-wasm-2.3.1" // {
+        dependencies = [
+          sources."nanoassert-2.0.0"
+        ];
+      })
+      sources."shuffled-priority-queue-2.1.0"
+      sources."signed-varint-2.0.1"
+      (sources."simple-handshake-3.0.0" // {
+        dependencies = [
+          sources."nanoassert-2.0.0"
+        ];
+      })
+      sources."simple-hypercore-protocol-2.1.1"
+      sources."simple-message-channels-1.2.1"
+      (sources."siphash24-1.2.0" // {
+        dependencies = [
+          sources."nanoassert-2.0.0"
+        ];
+      })
+      sources."siphash24-universal-1.0.0"
+      (sources."sodium-javascript-0.7.3" // {
+        dependencies = [
+          sources."nanoassert-2.0.0"
+        ];
+      })
+      sources."sodium-native-3.2.1"
+      (sources."sodium-universal-3.0.4" // {
+        dependencies = [
+          sources."nanoassert-2.0.0"
+        ];
+      })
+      sources."sparse-bitfield-3.0.3"
+      sources."speedometer-1.1.0"
+      sources."sprintf-js-1.0.3"
+      sources."stream-collector-1.0.1"
+      sources."stream-equal-1.1.1"
+      sources."stream-shift-1.0.1"
+      sources."streamx-2.10.3"
+      (sources."string-width-2.1.1" // {
+        dependencies = [
+          sources."ansi-regex-3.0.0"
+          sources."strip-ansi-4.0.0"
+        ];
+      })
+      sources."string.prototype.trimend-1.0.4"
+      sources."string.prototype.trimstart-1.0.4"
+      sources."string_decoder-1.1.1"
+      sources."strip-ansi-3.0.1"
+      sources."strip-eof-1.0.0"
+      sources."strip-json-comments-2.0.1"
+      (sources."subcommand-2.1.1" // {
+        dependencies = [
+          sources."debug-4.3.2"
+          sources."ms-2.1.2"
+        ];
+      })
+      (sources."subleveldown-5.0.1" // {
+        dependencies = [
+          sources."abstract-leveldown-6.3.0"
+        ];
+      })
+      sources."supports-color-2.0.0"
+      sources."temp-dir-1.0.0"
+      sources."tempy-0.1.0"
+      sources."textextensions-5.12.0"
+      (sources."through2-4.0.2" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
+      sources."thunky-1.1.0"
+      sources."thunky-map-1.0.1"
+      sources."time-ordered-set-1.0.2"
+      sources."timeout-refresh-1.0.3"
+      sources."to-regex-range-5.0.1"
+      sources."typedarray-0.0.6"
+      sources."uint64be-2.0.2"
+      sources."unbox-primitive-1.0.1"
+      sources."unique-string-1.0.0"
+      (sources."unixify-1.0.0" // {
+        dependencies = [
+          sources."normalize-path-2.1.1"
+        ];
+      })
+      sources."unordered-array-remove-1.0.2"
+      sources."unordered-set-2.0.1"
+      sources."username-2.3.0"
+      sources."util-deprecate-1.0.2"
+      (sources."utp-native-2.5.3" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
+      sources."varint-5.0.0"
+      sources."vm2-3.9.3"
+      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."wrap-ansi-7.0.0" // {
+        dependencies = [
+          sources."ansi-regex-5.0.0"
+          sources."ansi-styles-4.3.0"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."emoji-regex-8.0.0"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."string-width-4.2.2"
+          sources."strip-ansi-6.0.0"
+        ];
+      })
+      sources."wrappy-1.0.2"
+      sources."xor-distance-2.0.0"
+      sources."xsalsa20-1.1.0"
+      sources."xsalsa20-universal-1.0.0"
+      sources."xtend-4.0.2"
+      sources."y18n-4.0.3"
+      sources."yallist-2.1.2"
+      (sources."yargs-13.3.2" // {
+        dependencies = [
+          sources."ansi-regex-4.1.0"
+          sources."string-width-3.1.0"
+          sources."strip-ansi-5.2.0"
+        ];
+      })
+      sources."yargs-parser-13.1.2"
+      sources."yargs-unparser-1.6.0"
+      sources."yesno-0.3.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A CLI for the hyper:// space network.";
+      homepage = "https://github.com/hypercore-protocol/hypercore-cli#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   "@nestjs/cli" = nodeEnv.buildNodePackage {
     name = "_at_nestjs_slash_cli";
     packageName = "@nestjs/cli";
-    version = "7.6.0";
+    version = "8.0.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@nestjs/cli/-/cli-7.6.0.tgz";
-      sha512 = "lW1px2gSHkRoBpKSxzP6IJNQscRKs97OAaVyV46OAP6oUR996E0EPkIslIaa16kKLJ3SFOUeZo5xl5nYbqp43g==";
+      url = "https://registry.npmjs.org/@nestjs/cli/-/cli-8.0.2.tgz";
+      sha512 = "q46mQvqhRkmnG6fXTzL9Wk7CtDxRaa2rE1IrDX3CgXaeOgjBZsA3oJKkIqelQHfKWvPGuU6yV6gDF5pOXNXixw==";
     };
     dependencies = [
-      sources."@angular-devkit/core-11.2.6"
-      (sources."@angular-devkit/schematics-11.2.6" // {
+      sources."@angular-devkit/core-12.1.1"
+      sources."@angular-devkit/schematics-12.1.1"
+      (sources."@angular-devkit/schematics-cli-12.1.1" // {
         dependencies = [
           sources."chalk-4.1.1"
-          sources."ora-5.3.0"
+          sources."inquirer-8.1.1"
         ];
       })
-      sources."@angular-devkit/schematics-cli-0.1102.6"
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -65524,41 +67134,42 @@ in
           sources."supports-color-5.5.0"
         ];
       })
-      (sources."@nestjs/schematics-7.3.1" // {
+      (sources."@nestjs/schematics-8.0.2" // {
         dependencies = [
-          sources."@angular-devkit/core-11.2.4"
-          sources."@angular-devkit/schematics-11.2.4"
+          sources."@angular-devkit/core-12.0.5"
+          sources."@angular-devkit/schematics-12.0.5"
+          sources."ajv-8.2.0"
+          sources."ajv-formats-2.0.2"
           sources."chalk-4.1.1"
-          sources."ora-5.3.0"
+          sources."ora-5.4.0"
         ];
       })
-      sources."@schematics/schematics-0.1102.6"
-      sources."@types/eslint-7.2.13"
-      sources."@types/eslint-scope-3.7.0"
-      sources."@types/estree-0.0.46"
-      sources."@types/json-schema-7.0.7"
-      sources."@types/json5-0.0.29"
-      sources."@types/node-15.14.0"
+      sources."@types/eslint-7.28.0"
+      sources."@types/eslint-scope-3.7.1"
+      sources."@types/estree-0.0.49"
+      sources."@types/json-schema-7.0.8"
+      sources."@types/node-16.4.0"
       sources."@types/parse-json-4.0.0"
-      sources."@webassemblyjs/ast-1.11.0"
-      sources."@webassemblyjs/floating-point-hex-parser-1.11.0"
-      sources."@webassemblyjs/helper-api-error-1.11.0"
-      sources."@webassemblyjs/helper-buffer-1.11.0"
-      sources."@webassemblyjs/helper-numbers-1.11.0"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.11.0"
-      sources."@webassemblyjs/helper-wasm-section-1.11.0"
-      sources."@webassemblyjs/ieee754-1.11.0"
-      sources."@webassemblyjs/leb128-1.11.0"
-      sources."@webassemblyjs/utf8-1.11.0"
-      sources."@webassemblyjs/wasm-edit-1.11.0"
-      sources."@webassemblyjs/wasm-gen-1.11.0"
-      sources."@webassemblyjs/wasm-opt-1.11.0"
-      sources."@webassemblyjs/wasm-parser-1.11.0"
-      sources."@webassemblyjs/wast-printer-1.11.0"
+      sources."@webassemblyjs/ast-1.11.1"
+      sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
+      sources."@webassemblyjs/helper-api-error-1.11.1"
+      sources."@webassemblyjs/helper-buffer-1.11.1"
+      sources."@webassemblyjs/helper-numbers-1.11.1"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.11.1"
+      sources."@webassemblyjs/helper-wasm-section-1.11.1"
+      sources."@webassemblyjs/ieee754-1.11.1"
+      sources."@webassemblyjs/leb128-1.11.1"
+      sources."@webassemblyjs/utf8-1.11.1"
+      sources."@webassemblyjs/wasm-edit-1.11.1"
+      sources."@webassemblyjs/wasm-gen-1.11.1"
+      sources."@webassemblyjs/wasm-opt-1.11.1"
+      sources."@webassemblyjs/wasm-parser-1.11.1"
+      sources."@webassemblyjs/wast-printer-1.11.1"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.2"
       sources."acorn-8.4.1"
-      sources."ajv-6.12.6"
+      sources."ajv-8.6.0"
+      sources."ajv-formats-2.1.0"
       sources."ajv-keywords-3.5.2"
       sources."ansi-colors-4.1.1"
       sources."ansi-escapes-4.3.2"
@@ -65576,14 +67187,21 @@ in
       sources."buffer-5.7.1"
       sources."buffer-from-1.1.1"
       sources."callsites-3.1.0"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       sources."chalk-3.0.0"
       sources."chardet-0.7.0"
-      sources."chokidar-3.5.1"
+      sources."chokidar-3.5.2"
       sources."chrome-trace-event-1.0.3"
       sources."cli-cursor-3.1.0"
       sources."cli-spinners-2.6.0"
-      sources."cli-table3-0.5.1"
+      (sources."cli-table3-0.5.1" // {
+        dependencies = [
+          sources."ansi-regex-3.0.0"
+          sources."is-fullwidth-code-point-2.0.0"
+          sources."string-width-2.1.1"
+          sources."strip-ansi-4.0.0"
+        ];
+      })
       sources."cli-width-3.0.0"
       sources."clone-1.0.4"
       sources."color-convert-2.0.1"
@@ -65596,7 +67214,7 @@ in
       sources."cross-spawn-7.0.3"
       sources."deepmerge-4.2.2"
       sources."defaults-1.0.3"
-      sources."electron-to-chromium-1.3.765"
+      sources."electron-to-chromium-1.3.782"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       (sources."enhanced-resolve-5.8.2" // {
@@ -65605,7 +67223,7 @@ in
         ];
       })
       sources."error-ex-1.3.2"
-      sources."es-module-lexer-0.4.1"
+      sources."es-module-lexer-0.7.1"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
       sources."eslint-scope-5.1.1"
@@ -65622,12 +67240,13 @@ in
       sources."fast-json-stable-stringify-2.1.0"
       sources."figures-3.2.0"
       sources."fill-range-7.0.1"
-      (sources."fork-ts-checker-webpack-plugin-6.2.0" // {
+      (sources."fork-ts-checker-webpack-plugin-6.2.12" // {
         dependencies = [
           sources."chalk-4.1.1"
+          sources."fs-extra-9.1.0"
         ];
       })
-      sources."fs-extra-9.1.0"
+      sources."fs-extra-10.0.0"
       sources."fs-monkey-1.0.3"
       sources."fs.realpath-1.0.0"
       sources."fsevents-2.3.2"
@@ -65648,16 +67267,14 @@ in
       (sources."inquirer-7.3.3" // {
         dependencies = [
           sources."chalk-4.1.1"
-          sources."is-fullwidth-code-point-3.0.0"
-          sources."string-width-4.2.2"
         ];
       })
       sources."interpret-1.4.0"
       sources."is-arrayish-0.2.1"
       sources."is-binary-path-2.1.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-extglob-2.1.1"
-      sources."is-fullwidth-code-point-2.0.0"
+      sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
       sources."is-interactive-1.0.0"
       sources."is-number-7.0.0"
@@ -65672,8 +67289,8 @@ in
       sources."js-tokens-4.0.0"
       sources."json-parse-better-errors-1.0.2"
       sources."json-parse-even-better-errors-2.3.1"
-      sources."json-schema-traverse-0.4.1"
-      sources."json5-1.0.1"
+      sources."json-schema-traverse-1.0.0"
+      sources."json5-2.2.0"
       sources."jsonc-parser-3.0.0"
       sources."jsonfile-6.1.0"
       sources."lines-and-columns-1.1.6"
@@ -65704,7 +67321,7 @@ in
       sources."object-assign-4.1.1"
       sources."once-1.4.0"
       sources."onetime-5.1.2"
-      (sources."ora-5.4.0" // {
+      (sources."ora-5.4.1" // {
         dependencies = [
           sources."chalk-4.1.1"
         ];
@@ -65724,17 +67341,23 @@ in
       sources."punycode-2.1.1"
       sources."randombytes-2.1.0"
       sources."readable-stream-3.6.0"
-      sources."readdirp-3.5.0"
+      sources."readdirp-3.6.0"
       sources."rechoir-0.6.2"
+      sources."require-from-string-2.0.2"
       sources."resolve-1.20.0"
       sources."resolve-from-4.0.0"
       sources."restore-cursor-3.1.0"
       sources."rimraf-3.0.2"
       sources."run-async-2.4.1"
-      sources."rxjs-6.6.3"
+      sources."rxjs-6.6.7"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
-      sources."schema-utils-2.7.0"
+      (sources."schema-utils-2.7.0" // {
+        dependencies = [
+          sources."ajv-6.12.6"
+          sources."json-schema-traverse-0.4.1"
+        ];
+      })
       sources."semver-7.3.5"
       sources."serialize-javascript-6.0.0"
       sources."shebang-command-2.0.0"
@@ -65749,18 +67372,13 @@ in
         ];
       })
       sources."sourcemap-codec-1.4.8"
-      (sources."string-width-2.1.1" // {
-        dependencies = [
-          sources."ansi-regex-3.0.0"
-          sources."strip-ansi-4.0.0"
-        ];
-      })
+      sources."string-width-4.2.2"
       sources."string_decoder-1.3.0"
       sources."strip-ansi-6.0.0"
       sources."strip-bom-3.0.0"
       sources."strip-final-newline-2.0.0"
       sources."supports-color-7.2.0"
-      sources."symbol-observable-3.0.0"
+      sources."symbol-observable-4.0.0"
       sources."tapable-1.1.3"
       (sources."terser-5.7.1" // {
         dependencies = [
@@ -65769,7 +67387,9 @@ in
       })
       (sources."terser-webpack-plugin-5.1.4" // {
         dependencies = [
-          sources."schema-utils-3.0.0"
+          sources."ajv-6.12.6"
+          sources."json-schema-traverse-0.4.1"
+          sources."schema-utils-3.1.1"
           sources."source-map-0.6.1"
         ];
       })
@@ -65777,7 +67397,7 @@ in
       sources."tmp-0.0.33"
       sources."to-regex-range-5.0.1"
       sources."tree-kill-1.2.2"
-      sources."tsconfig-paths-3.9.0"
+      sources."tsconfig-paths-3.10.1"
       (sources."tsconfig-paths-webpack-plugin-3.5.1" // {
         dependencies = [
           sources."chalk-4.1.1"
@@ -65785,20 +67405,22 @@ in
       })
       sources."tslib-1.14.1"
       sources."type-fest-0.21.3"
-      sources."typescript-4.2.3"
+      sources."typescript-4.3.5"
       sources."universalify-2.0.0"
       sources."uri-js-4.4.1"
       sources."util-deprecate-1.0.2"
       sources."watchpack-2.2.0"
       sources."wcwidth-1.0.1"
-      (sources."webpack-5.28.0" // {
+      (sources."webpack-5.43.0" // {
         dependencies = [
-          sources."schema-utils-3.0.0"
+          sources."ajv-6.12.6"
+          sources."json-schema-traverse-0.4.1"
+          sources."schema-utils-3.1.1"
           sources."tapable-2.2.0"
         ];
       })
-      sources."webpack-node-externals-2.5.2"
-      (sources."webpack-sources-2.3.0" // {
+      sources."webpack-node-externals-3.0.0"
+      (sources."webpack-sources-2.3.1" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
@@ -65840,12 +67462,12 @@ in
       sources."@apollographql/graphql-upload-8-fork-8.1.3"
       sources."@babel/code-frame-7.14.5"
       sources."@babel/compat-data-7.14.7"
-      sources."@babel/core-7.14.6"
-      sources."@babel/generator-7.14.5"
+      sources."@babel/core-7.14.8"
+      sources."@babel/generator-7.14.8"
       sources."@babel/helper-annotate-as-pure-7.14.5"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.14.5"
       sources."@babel/helper-compilation-targets-7.14.5"
-      sources."@babel/helper-create-class-features-plugin-7.14.6"
+      sources."@babel/helper-create-class-features-plugin-7.14.8"
       sources."@babel/helper-create-regexp-features-plugin-7.14.5"
       sources."@babel/helper-define-polyfill-provider-0.2.3"
       sources."@babel/helper-explode-assignable-expression-7.14.5"
@@ -65854,20 +67476,20 @@ in
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-member-expression-to-functions-7.14.7"
       sources."@babel/helper-module-imports-7.14.5"
-      sources."@babel/helper-module-transforms-7.14.5"
+      sources."@babel/helper-module-transforms-7.14.8"
       sources."@babel/helper-optimise-call-expression-7.14.5"
       sources."@babel/helper-plugin-utils-7.14.5"
       sources."@babel/helper-remap-async-to-generator-7.14.5"
       sources."@babel/helper-replace-supers-7.14.5"
-      sources."@babel/helper-simple-access-7.14.5"
+      sources."@babel/helper-simple-access-7.14.8"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.14.5"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/helper-validator-option-7.14.5"
       sources."@babel/helper-wrap-function-7.14.5"
-      sources."@babel/helpers-7.14.6"
+      sources."@babel/helpers-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5"
       sources."@babel/plugin-proposal-async-generator-functions-7.14.7"
       sources."@babel/plugin-proposal-class-properties-7.14.5"
@@ -65934,7 +67556,7 @@ in
       sources."@babel/plugin-transform-typescript-7.14.6"
       sources."@babel/plugin-transform-unicode-escapes-7.14.5"
       sources."@babel/plugin-transform-unicode-regex-7.14.5"
-      sources."@babel/preset-env-7.14.7"
+      sources."@babel/preset-env-7.14.8"
       sources."@babel/preset-flow-7.14.5"
       sources."@babel/preset-modules-0.1.4"
       sources."@babel/preset-typescript-7.14.5"
@@ -65945,10 +67567,10 @@ in
           sources."semver-5.7.1"
         ];
       })
-      sources."@babel/runtime-7.14.6"
+      sources."@babel/runtime-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
       sources."@hapi/address-2.1.4"
       sources."@hapi/bourne-1.3.2"
       sources."@hapi/hoek-8.5.1"
@@ -65962,7 +67584,7 @@ in
         ];
       })
       sources."@nodelib/fs.stat-1.1.3"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."@protobufjs/aspromise-1.1.2"
       sources."@protobufjs/base64-1.1.2"
       sources."@protobufjs/codegen-2.0.4"
@@ -65976,17 +67598,17 @@ in
       sources."@sindresorhus/is-0.7.0"
       sources."@types/accepts-1.3.5"
       sources."@types/body-parser-1.19.0"
-      sources."@types/connect-3.4.34"
-      sources."@types/content-disposition-0.5.3"
-      sources."@types/cookies-0.7.6"
+      sources."@types/connect-3.4.35"
+      sources."@types/content-disposition-0.5.4"
+      sources."@types/cookies-0.7.7"
       sources."@types/cors-2.8.10"
       sources."@types/ejs-2.7.0"
-      sources."@types/express-4.17.12"
-      sources."@types/express-serve-static-core-4.17.22"
+      sources."@types/express-4.17.13"
+      sources."@types/express-serve-static-core-4.17.24"
       sources."@types/fs-capacitor-2.0.0"
-      sources."@types/glob-7.1.3"
+      sources."@types/glob-7.1.4"
       sources."@types/http-assert-1.5.1"
-      sources."@types/http-errors-1.8.0"
+      sources."@types/http-errors-1.8.1"
       sources."@types/inquirer-6.5.0"
       (sources."@types/jscodeshift-0.7.2" // {
         dependencies = [
@@ -65996,18 +67618,18 @@ in
         ];
       })
       sources."@types/keygrip-1.0.2"
-      sources."@types/koa-2.13.3"
+      sources."@types/koa-2.13.4"
       sources."@types/koa-compose-3.2.5"
       sources."@types/long-4.0.1"
       sources."@types/mime-1.3.2"
-      sources."@types/minimatch-3.0.4"
-      sources."@types/node-15.14.0"
-      sources."@types/normalize-package-data-2.4.0"
-      sources."@types/qs-6.9.6"
-      sources."@types/range-parser-1.2.3"
-      sources."@types/serve-static-1.13.9"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/node-16.4.0"
+      sources."@types/normalize-package-data-2.4.1"
+      sources."@types/qs-6.9.7"
+      sources."@types/range-parser-1.2.4"
+      sources."@types/serve-static-1.13.10"
       sources."@types/through-0.0.30"
-      sources."@types/ws-7.4.5"
+      sources."@types/ws-7.4.7"
       sources."@vue/cli-shared-utils-4.5.13"
       (sources."@vue/cli-ui-4.5.13" // {
         dependencies = [
@@ -66016,13 +67638,13 @@ in
       })
       sources."@vue/cli-ui-addon-webpack-4.5.13"
       sources."@vue/cli-ui-addon-widgets-4.5.13"
-      (sources."@vue/compiler-core-3.1.3" // {
+      (sources."@vue/compiler-core-3.1.5" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
       })
-      sources."@vue/compiler-dom-3.1.3"
-      sources."@vue/shared-3.1.3"
+      sources."@vue/compiler-dom-3.1.5"
+      sources."@vue/shared-3.1.5"
       sources."@wry/equality-0.1.11"
       sources."accepts-1.3.7"
       sources."aggregate-error-3.1.0"
@@ -66144,7 +67766,7 @@ in
       sources."call-bind-1.0.2"
       sources."call-me-maybe-1.0.1"
       sources."camelcase-5.3.1"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       sources."caseless-0.12.0"
       sources."caw-2.0.1"
       sources."chalk-2.4.2"
@@ -66272,7 +67894,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.765"
+      sources."electron-to-chromium-1.3.782"
       sources."emoji-regex-7.0.3"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
@@ -66334,7 +67956,7 @@ in
       sources."fast-deep-equal-3.1.3"
       sources."fast-glob-2.2.7"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."fd-slicer-1.1.0"
       sources."figures-3.2.0"
       sources."file-type-8.1.0"
@@ -66355,7 +67977,7 @@ in
       })
       sources."find-up-3.0.0"
       sources."fkill-6.2.0"
-      sources."flow-parser-0.154.0"
+      sources."flow-parser-0.155.1"
       sources."for-each-0.3.3"
       sources."for-in-1.0.2"
       sources."forever-agent-0.6.1"
@@ -66466,7 +68088,7 @@ in
       sources."is-boolean-object-1.1.1"
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.3"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-date-object-1.0.4"
       sources."is-descriptor-1.0.2"
@@ -66595,7 +68217,7 @@ in
       sources."nice-try-1.0.5"
       sources."node-dir-0.1.17"
       sources."node-fetch-2.6.1"
-      sources."node-ipc-9.2.0"
+      sources."node-ipc-9.2.1"
       sources."node-modules-regexp-1.0.0"
       (sources."node-notifier-9.0.1" // {
         dependencies = [
@@ -66634,7 +68256,7 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-keys-1.1.1"
       sources."object-path-0.11.5"
       sources."object-visit-1.0.1"
@@ -66696,7 +68318,7 @@ in
       })
       sources."posix-character-classes-0.1.1"
       sources."prepend-http-2.0.0"
-      sources."prismjs-1.24.0"
+      sources."prismjs-1.24.1"
       sources."private-0.1.8"
       sources."process-exists-3.1.0"
       sources."process-nextick-args-2.0.1"
@@ -66985,7 +68607,7 @@ in
           sources."array-union-2.1.0"
           sources."braces-3.0.2"
           sources."dir-glob-3.0.1"
-          sources."fast-glob-3.2.6"
+          sources."fast-glob-3.2.7"
           sources."fill-range-7.0.1"
           sources."glob-parent-5.1.2"
           sources."globby-11.0.4"
@@ -67012,7 +68634,7 @@ in
       })
       sources."wrappy-1.0.2"
       sources."write-file-atomic-2.4.3"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xml2js-0.4.23"
       sources."xmlbuilder-11.0.1"
       sources."xss-1.0.9"
@@ -67043,31 +68665,31 @@ in
   "@webassemblyjs/cli" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_cli";
     packageName = "@webassemblyjs/cli";
-    version = "1.11.0";
+    version = "1.11.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/cli/-/cli-1.11.0.tgz";
-      sha512 = "mQjMqOSOCu1lsA7cVvCKkK/IBED+qUtjrSuFhLBSEusHu5IqhzWFWnappMRpA424lNDMScsxry5jhbM+c9wyEg==";
+      url = "https://registry.npmjs.org/@webassemblyjs/cli/-/cli-1.11.1.tgz";
+      sha512 = "XLCwWiDYeufpJPb/0H9sx4p07LtwXHRyv137I8peZZmTd4Xrk7KH2qSaDOCkpZX9yItTd8g7MWXNqGh0tT+8eg==";
     };
     dependencies = [
-      sources."@webassemblyjs/ast-1.11.0"
-      sources."@webassemblyjs/floating-point-hex-parser-1.11.0"
-      sources."@webassemblyjs/helper-api-error-1.11.0"
-      sources."@webassemblyjs/helper-code-frame-1.11.0"
-      sources."@webassemblyjs/helper-compiler-1.11.0"
-      sources."@webassemblyjs/helper-flatten-ast-1.11.0"
-      sources."@webassemblyjs/helper-fsm-1.11.0"
-      sources."@webassemblyjs/helper-numbers-1.11.0"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.11.0"
-      sources."@webassemblyjs/ieee754-1.11.0"
-      sources."@webassemblyjs/leb128-1.11.0"
-      sources."@webassemblyjs/utf8-1.11.0"
-      sources."@webassemblyjs/validation-1.11.0"
-      sources."@webassemblyjs/wasm-parser-1.11.0"
-      sources."@webassemblyjs/wast-parser-1.11.0"
-      sources."@webassemblyjs/wast-printer-1.11.0"
+      sources."@webassemblyjs/ast-1.11.1"
+      sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
+      sources."@webassemblyjs/helper-api-error-1.11.1"
+      sources."@webassemblyjs/helper-code-frame-1.11.1"
+      sources."@webassemblyjs/helper-compiler-1.11.1"
+      sources."@webassemblyjs/helper-flatten-ast-1.11.1"
+      sources."@webassemblyjs/helper-fsm-1.11.1"
+      sources."@webassemblyjs/helper-numbers-1.11.1"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.11.1"
+      sources."@webassemblyjs/ieee754-1.11.1"
+      sources."@webassemblyjs/leb128-1.11.1"
+      sources."@webassemblyjs/utf8-1.11.1"
+      sources."@webassemblyjs/validation-1.11.1"
+      sources."@webassemblyjs/wasm-parser-1.11.1"
+      sources."@webassemblyjs/wast-parser-1.11.1"
+      sources."@webassemblyjs/wast-printer-1.11.1"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.2"
-      sources."webassemblyjs-1.11.0"
+      sources."webassemblyjs-1.11.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -67082,31 +68704,31 @@ in
   "@webassemblyjs/repl" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_repl";
     packageName = "@webassemblyjs/repl";
-    version = "1.11.0";
+    version = "1.11.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/repl/-/repl-1.11.0.tgz";
-      sha512 = "U+f6IHDVPOdj1C22AMb8+xEq5OpEhXKcTl+YyMEqRtUdAt6CVkoeHdaPVv4iDfBaxR15nds8DRq+gHjCncrA3Q==";
+      url = "https://registry.npmjs.org/@webassemblyjs/repl/-/repl-1.11.1.tgz";
+      sha512 = "RDyNwDPb2YmsUYZ4OVCwJQpvxT7Mus4Dy9wNf0remSn7cTltrYGCk/zWe21+AXuNvuhYO0kzeNzswROuyB33cA==";
     };
     dependencies = [
-      sources."@webassemblyjs/ast-1.11.0"
-      sources."@webassemblyjs/floating-point-hex-parser-1.11.0"
-      sources."@webassemblyjs/helper-api-error-1.11.0"
-      sources."@webassemblyjs/helper-code-frame-1.11.0"
-      sources."@webassemblyjs/helper-compiler-1.11.0"
-      sources."@webassemblyjs/helper-flatten-ast-1.11.0"
-      sources."@webassemblyjs/helper-fsm-1.11.0"
-      sources."@webassemblyjs/helper-numbers-1.11.0"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.11.0"
-      sources."@webassemblyjs/ieee754-1.11.0"
-      sources."@webassemblyjs/leb128-1.11.0"
-      sources."@webassemblyjs/utf8-1.11.0"
-      sources."@webassemblyjs/validation-1.11.0"
-      sources."@webassemblyjs/wasm-parser-1.11.0"
-      sources."@webassemblyjs/wast-parser-1.11.0"
-      sources."@webassemblyjs/wast-printer-1.11.0"
+      sources."@webassemblyjs/ast-1.11.1"
+      sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
+      sources."@webassemblyjs/helper-api-error-1.11.1"
+      sources."@webassemblyjs/helper-code-frame-1.11.1"
+      sources."@webassemblyjs/helper-compiler-1.11.1"
+      sources."@webassemblyjs/helper-flatten-ast-1.11.1"
+      sources."@webassemblyjs/helper-fsm-1.11.1"
+      sources."@webassemblyjs/helper-numbers-1.11.1"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.11.1"
+      sources."@webassemblyjs/ieee754-1.11.1"
+      sources."@webassemblyjs/leb128-1.11.1"
+      sources."@webassemblyjs/utf8-1.11.1"
+      sources."@webassemblyjs/validation-1.11.1"
+      sources."@webassemblyjs/wasm-parser-1.11.1"
+      sources."@webassemblyjs/wast-parser-1.11.1"
+      sources."@webassemblyjs/wast-printer-1.11.1"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.2"
-      sources."webassemblyjs-1.11.0"
+      sources."webassemblyjs-1.11.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -67158,28 +68780,28 @@ in
   "@webassemblyjs/wasm-text-gen" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_wasm-text-gen";
     packageName = "@webassemblyjs/wasm-text-gen";
-    version = "1.11.0";
+    version = "1.11.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/wasm-text-gen/-/wasm-text-gen-1.11.0.tgz";
-      sha512 = "Q1OfB3hpa4TtM6x5a2gJmZncpQYx0hFt4ohdgv4Ms67kcAVwL29QQ2NDbNqfKr15IzlNAhLGueCzxG6dMjdnbQ==";
+      url = "https://registry.npmjs.org/@webassemblyjs/wasm-text-gen/-/wasm-text-gen-1.11.1.tgz";
+      sha512 = "7SWOLN+1eZ5e9gohQPVdA8XQstGIYei/70T5kmLP6vC41zy8BBYNt35OgLZmbpg3iOQ1vWT17ZMhVikSJySSRg==";
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/generator-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/generator-7.14.8"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/types-7.14.5"
-      sources."@webassemblyjs/ast-1.11.0"
-      sources."@webassemblyjs/floating-point-hex-parser-1.11.0"
-      sources."@webassemblyjs/helper-api-error-1.11.0"
-      sources."@webassemblyjs/helper-numbers-1.11.0"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.11.0"
-      sources."@webassemblyjs/ieee754-1.11.0"
-      sources."@webassemblyjs/leb128-1.11.0"
-      sources."@webassemblyjs/utf8-1.11.0"
-      sources."@webassemblyjs/wasm-parser-1.11.0"
+      sources."@babel/types-7.14.8"
+      sources."@webassemblyjs/ast-1.11.1"
+      sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
+      sources."@webassemblyjs/helper-api-error-1.11.1"
+      sources."@webassemblyjs/helper-numbers-1.11.1"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.11.1"
+      sources."@webassemblyjs/ieee754-1.11.1"
+      sources."@webassemblyjs/leb128-1.11.1"
+      sources."@webassemblyjs/utf8-1.11.1"
+      sources."@webassemblyjs/wasm-parser-1.11.1"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.2"
       sources."ansi-styles-3.2.1"
@@ -67208,21 +68830,21 @@ in
   "@webassemblyjs/wast-refmt" = nodeEnv.buildNodePackage {
     name = "_at_webassemblyjs_slash_wast-refmt";
     packageName = "@webassemblyjs/wast-refmt";
-    version = "1.11.0";
+    version = "1.11.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@webassemblyjs/wast-refmt/-/wast-refmt-1.11.0.tgz";
-      sha512 = "UVjojl3i1wzn2odausLskcFh7VaZqbp5HJ5od9pdsLvUZ06cSUo35yJ9Yetoc+yNj/IfdfisJtOcTQmILQ+RqQ==";
+      url = "https://registry.npmjs.org/@webassemblyjs/wast-refmt/-/wast-refmt-1.11.1.tgz";
+      sha512 = "xbYYo9CPjYMz1YHE4xvODqfrREiefWMXPD/rHgqV4rRituNpNRhbWIomwuKBfS5rgBsc0RdoLOmG4UdLbR6SDA==";
     };
     dependencies = [
-      sources."@webassemblyjs/ast-1.11.0"
-      sources."@webassemblyjs/floating-point-hex-parser-1.11.0"
-      sources."@webassemblyjs/helper-api-error-1.11.0"
-      sources."@webassemblyjs/helper-code-frame-1.11.0"
-      sources."@webassemblyjs/helper-fsm-1.11.0"
-      sources."@webassemblyjs/helper-numbers-1.11.0"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.11.0"
-      sources."@webassemblyjs/wast-parser-1.11.0"
-      sources."@webassemblyjs/wast-printer-1.11.0"
+      sources."@webassemblyjs/ast-1.11.1"
+      sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
+      sources."@webassemblyjs/helper-api-error-1.11.1"
+      sources."@webassemblyjs/helper-code-frame-1.11.1"
+      sources."@webassemblyjs/helper-fsm-1.11.1"
+      sources."@webassemblyjs/helper-numbers-1.11.1"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.11.1"
+      sources."@webassemblyjs/wast-parser-1.11.1"
+      sources."@webassemblyjs/wast-printer-1.11.1"
       sources."@xtuc/long-4.2.2"
     ];
     buildInputs = globalBuildInputs;
@@ -67246,12 +68868,12 @@ in
     dependencies = [
       sources."@babel/code-frame-7.14.5"
       sources."@babel/compat-data-7.14.7"
-      (sources."@babel/core-7.14.6" // {
+      (sources."@babel/core-7.14.8" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
-      (sources."@babel/generator-7.14.5" // {
+      (sources."@babel/generator-7.14.8" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
@@ -67262,19 +68884,19 @@ in
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-member-expression-to-functions-7.14.7"
       sources."@babel/helper-module-imports-7.14.5"
-      sources."@babel/helper-module-transforms-7.14.5"
+      sources."@babel/helper-module-transforms-7.14.8"
       sources."@babel/helper-optimise-call-expression-7.14.5"
       sources."@babel/helper-replace-supers-7.14.5"
-      sources."@babel/helper-simple-access-7.14.5"
+      sources."@babel/helper-simple-access-7.14.8"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/helper-validator-option-7.14.5"
-      sources."@babel/helpers-7.14.6"
+      sources."@babel/helpers-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
       sources."JSV-4.0.2"
       sources."ansi-styles-3.2.1"
       sources."array-unique-0.3.2"
@@ -67282,7 +68904,7 @@ in
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
       sources."browserslist-4.16.6"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       sources."chalk-2.4.2"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
@@ -67293,7 +68915,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.765"
+      sources."electron-to-chromium-1.3.782"
       sources."ensure-posix-path-1.1.1"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
@@ -67320,7 +68942,7 @@ in
       sources."homedir-polyfill-1.0.3"
       sources."ini-1.3.8"
       sources."is-3.3.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-windows-1.0.2"
       sources."isexe-2.0.0"
       (sources."jake-10.8.2" // {
@@ -67385,9 +69007,9 @@ in
       sha512 = "k7zd+KoR+n8pl71PvgElcoKHrVNiSXtw7odKbyNpmgKe7EGRF9Pnu3uLOukD37EvavKwVFxOUpqXTIZC5B5Pmw==";
     };
     dependencies = [
-      sources."@types/glob-7.1.3"
-      sources."@types/minimatch-3.0.4"
-      sources."@types/node-15.14.0"
+      sources."@types/glob-7.1.4"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/node-16.4.0"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
       sources."chromium-pickle-js-0.2.0"
@@ -67412,6 +69034,35 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  autoprefixer = nodeEnv.buildNodePackage {
+    name = "autoprefixer";
+    packageName = "autoprefixer";
+    version = "10.3.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.3.1.tgz";
+      sha512 = "L8AmtKzdiRyYg7BUXJTzigmhbQRCXFKz6SA1Lqo0+AR2FBbQ4aTAPFSDlOutnFkjhiz8my4agGXog1xlMjPJ6A==";
+    };
+    dependencies = [
+      sources."browserslist-4.16.6"
+      sources."caniuse-lite-1.0.30001246"
+      sources."colorette-1.2.2"
+      sources."electron-to-chromium-1.3.782"
+      sources."escalade-3.1.1"
+      sources."fraction.js-4.1.1"
+      sources."node-releases-1.1.73"
+      sources."normalize-range-0.1.2"
+      sources."postcss-value-parser-4.1.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Parse CSS and add vendor prefixes to CSS rules using values from the Can I Use website";
+      homepage = "https://github.com/postcss/autoprefixer#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   aws-azure-login = nodeEnv.buildNodePackage {
     name = "aws-azure-login";
     packageName = "aws-azure-login";
@@ -67422,14 +69073,14 @@ in
     };
     dependencies = [
       sources."@tootallnate/once-1.1.2"
-      sources."@types/node-15.14.0"
-      sources."@types/yauzl-2.9.1"
+      sources."@types/node-16.4.0"
+      sources."@types/yauzl-2.9.2"
       sources."agent-base-6.0.2"
       sources."ansi-escapes-4.3.2"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
       sources."ast-types-0.13.4"
-      (sources."aws-sdk-2.938.0" // {
+      (sources."aws-sdk-2.951.0" // {
         dependencies = [
           sources."uuid-3.3.2"
         ];
@@ -67514,7 +69165,7 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-2.0.0"
-      sources."inquirer-8.1.1"
+      sources."inquirer-8.1.2"
       sources."ip-1.1.5"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-interactive-1.0.0"
@@ -67569,9 +69220,9 @@ in
       sources."restore-cursor-3.1.0"
       sources."rimraf-3.0.2"
       sources."run-async-2.4.1"
-      (sources."rxjs-6.6.7" // {
+      (sources."rxjs-7.2.0" // {
         dependencies = [
-          sources."tslib-1.14.1"
+          sources."tslib-2.1.0"
         ];
       })
       sources."safe-buffer-5.2.1"
@@ -67633,10 +69284,10 @@ in
   balanceofsatoshis = nodeEnv.buildNodePackage {
     name = "balanceofsatoshis";
     packageName = "balanceofsatoshis";
-    version = "10.4.3";
+    version = "10.7.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/balanceofsatoshis/-/balanceofsatoshis-10.4.3.tgz";
-      sha512 = "mphALvASQBcm5CEaLP4BSo+/JFQ9L8i0Hmr7az49RnTFFqeZLuLPx+eac9cTA24sbSK3I9sRtbLYQv59dW/1VQ==";
+      url = "https://registry.npmjs.org/balanceofsatoshis/-/balanceofsatoshis-10.7.1.tgz";
+      sha512 = "V3LVbkFNTiy+ctpvCDgEgP8e0myUC/Iupm8D9URkS76SFYibAoMX3elcLVtsOXXqM4QyRrg29iGZj+HB+sQCHg==";
     };
     dependencies = [
       sources."@alexbosworth/html2unicode-1.1.5"
@@ -67649,7 +69300,7 @@ in
       sources."@cto.af/textdecoder-0.0.0"
       (sources."@grpc/grpc-js-1.3.2" // {
         dependencies = [
-          sources."@types/node-15.14.0"
+          sources."@types/node-16.4.0"
         ];
       })
       sources."@grpc/proto-loader-0.6.2"
@@ -67668,32 +69319,26 @@ in
       sources."@protobufjs/utf8-1.1.0"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/body-parser-1.19.0"
+      sources."@types/body-parser-1.19.1"
       sources."@types/caseless-0.12.2"
-      sources."@types/connect-3.4.34"
+      sources."@types/connect-3.4.35"
       sources."@types/express-4.17.12"
-      sources."@types/express-serve-static-core-4.17.22"
+      sources."@types/express-serve-static-core-4.17.24"
       sources."@types/long-4.0.1"
       sources."@types/mime-1.3.2"
       sources."@types/node-10.12.18"
-      sources."@types/qs-6.9.6"
-      sources."@types/range-parser-1.2.3"
+      sources."@types/qs-6.9.7"
+      sources."@types/range-parser-1.2.4"
       (sources."@types/request-2.48.5" // {
         dependencies = [
           sources."form-data-2.5.1"
         ];
       })
-      sources."@types/serve-static-1.13.9"
-      sources."@types/tough-cookie-4.0.0"
+      sources."@types/serve-static-1.13.10"
+      sources."@types/tough-cookie-4.0.1"
       sources."@types/ws-7.4.4"
       sources."abort-controller-3.0.0"
       sources."accepts-1.3.7"
-      (sources."agent-base-6.0.2" // {
-        dependencies = [
-          sources."debug-4.3.2"
-          sources."ms-2.1.2"
-        ];
-      })
       sources."ajv-6.12.6"
       sources."ansi-0.3.1"
       (sources."ansi-align-3.0.0" // {
@@ -67715,7 +69360,6 @@ in
         ];
       })
       sources."array-flatten-1.1.1"
-      sources."arrify-2.0.1"
       sources."asciichart-1.5.25"
       sources."asn1-0.2.4"
       sources."assert-plus-1.0.0"
@@ -67735,7 +69379,6 @@ in
       sources."bcrypt-pbkdf-1.0.2"
       sources."bech32-1.1.4"
       sources."bessel-1.0.2"
-      sources."bignumber.js-9.0.1"
       sources."bindings-1.5.0"
       sources."bip174-2.0.1"
       sources."bip32-2.0.6"
@@ -67782,7 +69425,6 @@ in
       sources."buffer-5.7.1"
       sources."buffer-alloc-1.2.0"
       sources."buffer-alloc-unsafe-1.1.0"
-      sources."buffer-equal-constant-time-1.0.1"
       sources."buffer-fill-1.0.0"
       sources."buffer-from-1.1.1"
       sources."bytes-3.1.0"
@@ -67795,7 +69437,7 @@ in
       sources."camelcase-6.2.0"
       sources."caporal-1.4.0"
       sources."caseless-0.12.0"
-      sources."cbor-7.0.5"
+      sources."cbor-7.0.6"
       sources."cert-info-1.5.1"
       (sources."chalk-1.1.3" // {
         dependencies = [
@@ -67866,7 +69508,6 @@ in
       sources."dot-prop-5.3.0"
       sources."duplexer3-0.1.4"
       sources."ecc-jsbn-0.1.2"
-      sources."ecdsa-sig-formatter-1.0.11"
       sources."ee-first-1.1.1"
       sources."elliptic-6.5.4"
       sources."emoji-regex-8.0.0"
@@ -67892,7 +69533,6 @@ in
       sources."fast-deep-equal-3.1.3"
       sources."fast-json-stable-stringify-2.1.0"
       sources."fast-levenshtein-2.0.6"
-      sources."fast-text-encoding-1.0.3"
       sources."figures-1.7.0"
       sources."file-uri-to-path-1.0.0"
       sources."finalhandler-1.1.2"
@@ -67901,8 +69541,6 @@ in
       sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
       sources."gauge-1.2.7"
-      sources."gaxios-4.3.0"
-      sources."gcp-metadata-4.3.0"
       sources."get-caller-file-2.0.5"
       sources."get-stream-4.1.0"
       sources."getpass-0.1.7"
@@ -67911,15 +69549,13 @@ in
         dependencies = [
           sources."bech32-2.0.0"
           sources."bn.js-5.2.0"
+          sources."cbor-7.0.5"
           sources."invoices-1.2.1"
           sources."ln-service-51.8.2"
         ];
       })
-      sources."google-auth-library-6.1.6"
-      sources."google-p12-pem-3.1.0"
       sources."got-9.6.0"
       sources."graceful-fs-4.2.6"
-      sources."gtoken-5.3.0"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.3"
       (sources."has-ansi-2.0.0" // {
@@ -67941,19 +69577,13 @@ in
         ];
       })
       sources."http-signature-1.3.1"
-      (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."ieee754-1.2.1"
       sources."import-lazy-4.0.0"
       sources."imurmurhash-0.1.4"
       sources."inherits-2.0.4"
       sources."ini-2.0.0"
-      (sources."inquirer-8.1.1" // {
+      (sources."inquirer-8.1.2" // {
         dependencies = [
           sources."ansi-escapes-4.3.2"
           sources."ansi-regex-5.0.0"
@@ -67997,7 +69627,6 @@ in
       })
       sources."is-obj-2.0.0"
       sources."is-path-inside-3.0.3"
-      sources."is-stream-2.0.0"
       sources."is-typedarray-1.0.0"
       sources."is-unicode-supported-0.1.0"
       sources."is-yarn-global-0.3.0"
@@ -68005,7 +69634,6 @@ in
       sources."isnumber-1.0.0"
       sources."isstream-0.1.2"
       sources."jsbn-0.1.1"
-      sources."json-bigint-1.0.0"
       sources."json-buffer-3.0.0"
       sources."json-schema-0.2.3"
       sources."json-schema-traverse-0.4.1"
@@ -68014,8 +69642,6 @@ in
       sources."jsonparse-1.3.1"
       sources."jsprim-1.4.1"
       sources."jstat-1.9.4"
-      sources."jwa-2.0.0"
-      sources."jws-4.0.0"
       sources."keyv-3.1.0"
       sources."kind-of-6.0.3"
       sources."latest-version-5.1.0"
@@ -68024,53 +69650,75 @@ in
           sources."@types/node-15.6.1"
           sources."bech32-2.0.0"
           sources."bn.js-5.2.0"
+          sources."cbor-7.0.5"
           sources."invoices-1.2.1"
         ];
       })
-      sources."ln-accounting-4.3.1"
-      (sources."ln-service-51.8.5" // {
+      (sources."ln-accounting-4.3.1" // {
         dependencies = [
           sources."@grpc/grpc-js-1.3.4"
           sources."@grpc/proto-loader-0.6.3"
           sources."@types/node-15.12.5"
           sources."@types/ws-7.4.5"
           sources."bn.js-5.2.0"
+          sources."cbor-7.0.5"
           sources."lightning-3.3.12"
+          sources."ln-service-51.8.5"
           sources."ws-7.5.0"
         ];
       })
-      (sources."ln-sync-0.4.5" // {
+      (sources."ln-service-51.10.0" // {
         dependencies = [
-          sources."@grpc/grpc-js-1.2.11"
-          sources."@grpc/proto-loader-0.5.6"
-          sources."@types/express-4.17.11"
-          sources."@types/node-14.14.35"
-          sources."@types/ws-7.4.0"
-          sources."asyncjs-util-1.2.4"
-          sources."bech32-2.0.0"
+          sources."@grpc/grpc-js-1.3.6"
+          sources."@grpc/proto-loader-0.6.4"
+          sources."@types/express-4.17.13"
+          sources."@types/node-16.3.3"
+          sources."@types/request-2.48.6"
+          sources."@types/ws-7.4.7"
           sources."bn.js-5.2.0"
-          sources."bolt07-1.7.1"
-          sources."bolt09-0.1.3"
-          sources."invoices-1.1.6"
-          (sources."lightning-3.3.1" // {
-            dependencies = [
-              sources."asyncjs-util-1.2.3"
-              sources."cbor-7.0.4"
-            ];
-          })
-          sources."psbt-1.1.8"
+          sources."form-data-2.5.1"
+          sources."lightning-3.4.0"
+          sources."ws-7.5.3"
         ];
       })
-      (sources."ln-telegram-3.2.6" // {
+      (sources."ln-sync-0.4.7" // {
         dependencies = [
-          sources."@types/node-15.12.4"
-          sources."@types/ws-7.4.5"
-          sources."bech32-2.0.0"
+          sources."@grpc/grpc-js-1.3.6"
+          sources."@grpc/proto-loader-0.6.4"
+          sources."@types/express-4.17.13"
+          sources."@types/node-16.3.3"
+          sources."@types/request-2.48.6"
+          sources."@types/ws-7.4.7"
           sources."bn.js-5.2.0"
-          sources."invoices-1.2.1"
-          sources."lightning-3.3.11"
-          sources."ln-service-51.8.4"
-          sources."ws-7.5.0"
+          sources."form-data-2.5.1"
+          sources."lightning-3.4.0"
+        ];
+      })
+      (sources."ln-telegram-3.2.9" // {
+        dependencies = [
+          sources."@grpc/grpc-js-1.3.5"
+          sources."@grpc/proto-loader-0.6.4"
+          sources."@types/express-4.17.13"
+          sources."@types/node-16.3.2"
+          sources."@types/request-2.48.6"
+          sources."@types/ws-7.4.6"
+          sources."bn.js-5.2.0"
+          sources."cbor-7.0.5"
+          sources."form-data-2.5.1"
+          sources."lightning-3.3.16"
+          sources."ln-service-51.9.0"
+          (sources."ln-sync-0.4.6" // {
+            dependencies = [
+              sources."@grpc/grpc-js-1.3.4"
+              sources."@grpc/proto-loader-0.6.3"
+              sources."@types/express-4.17.12"
+              sources."@types/node-15.12.5"
+              sources."@types/request-2.48.5"
+              sources."@types/ws-7.4.5"
+              sources."lightning-3.3.12"
+            ];
+          })
+          sources."ws-7.5.3"
         ];
       })
       sources."lodash-4.17.21"
@@ -68093,13 +69741,17 @@ in
       sources."long-4.0.0"
       sources."lowercase-keys-1.0.1"
       sources."lru-cache-6.0.0"
-      sources."luxon-1.27.0"
+      sources."luxon-2.0.1"
       (sources."macaroon-3.0.4" // {
         dependencies = [
           sources."tweetnacl-1.0.3"
         ];
       })
-      sources."make-dir-3.1.0"
+      (sources."make-dir-3.1.0" // {
+        dependencies = [
+          sources."semver-6.3.0"
+        ];
+      })
       sources."md5.js-1.3.5"
       sources."media-typer-0.3.0"
       sources."merge-descriptors-1.0.1"
@@ -68128,7 +69780,6 @@ in
       sources."negotiator-0.6.2"
       sources."node-addon-api-2.0.2"
       sources."node-fetch-2.6.1"
-      sources."node-forge-0.10.0"
       sources."node-gyp-build-4.2.3"
       sources."nofilter-2.0.3"
       sources."normalize-url-4.5.1"
@@ -68156,16 +69807,21 @@ in
       sources."os-tmpdir-1.0.2"
       sources."p-cancelable-1.1.0"
       sources."p-timeout-4.1.0"
-      sources."package-json-6.5.0"
-      (sources."paid-services-2.0.0" // {
+      (sources."package-json-6.5.0" // {
         dependencies = [
-          sources."@types/node-15.12.4"
+          sources."semver-6.3.0"
+        ];
+      })
+      (sources."paid-services-2.0.1" // {
+        dependencies = [
+          sources."@grpc/grpc-js-1.3.4"
+          sources."@grpc/proto-loader-0.6.3"
+          sources."@types/node-15.12.5"
           sources."@types/ws-7.4.5"
-          sources."bech32-2.0.0"
           sources."bn.js-5.2.0"
-          sources."invoices-1.2.1"
-          sources."lightning-3.3.11"
-          sources."ln-service-51.8.4"
+          sources."cbor-7.0.5"
+          sources."lightning-3.3.12"
+          sources."ln-service-51.8.5"
           sources."ws-7.5.0"
         ];
       })
@@ -68187,7 +69843,7 @@ in
       sources."process-nextick-args-2.0.1"
       (sources."protobufjs-6.11.2" // {
         dependencies = [
-          sources."@types/node-15.14.0"
+          sources."@types/node-16.4.0"
         ];
       })
       sources."proxy-addr-2.0.7"
@@ -68221,15 +69877,19 @@ in
       sources."ripemd160-2.0.2"
       sources."run-async-2.4.1"
       sources."rx-4.1.0"
-      sources."rxjs-6.6.7"
+      sources."rxjs-7.2.0"
       sources."safe-buffer-5.2.1"
       sources."safe-compare-1.1.4"
       sources."safer-buffer-2.1.2"
       sources."sandwich-stream-2.0.2"
       sources."sanitize-filename-1.6.3"
       sources."secp256k1-4.0.2"
-      sources."semver-6.3.0"
-      sources."semver-diff-3.1.1"
+      sources."semver-7.3.5"
+      (sources."semver-diff-3.1.1" // {
+        dependencies = [
+          sources."semver-6.3.0"
+        ];
+      })
       (sources."send-0.17.1" // {
         dependencies = [
           sources."ms-2.1.1"
@@ -68258,7 +69918,7 @@ in
       sources."supports-color-2.0.0"
       (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.6.0"
+          sources."ajv-8.6.2"
           sources."ansi-regex-5.0.0"
           sources."is-fullwidth-code-point-3.0.0"
           sources."json-schema-traverse-1.0.0"
@@ -68275,7 +69935,7 @@ in
           sources."strip-ansi-3.0.1"
         ];
       })
-      (sources."telegraf-4.3.0" // {
+      (sources."telegraf-4.4.0" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."ms-2.1.2"
@@ -68289,7 +69949,7 @@ in
       sources."toidentifier-1.0.0"
       sources."tough-cookie-3.0.1"
       sources."truncate-utf8-bytes-1.0.2"
-      sources."tslib-1.14.1"
+      sources."tslib-2.1.0"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
       sources."tweetnacl-util-0.15.1"
@@ -68298,7 +69958,7 @@ in
       sources."typedarray-0.0.6"
       sources."typedarray-to-buffer-3.1.5"
       sources."typeforce-1.18.0"
-      sources."typegram-3.4.0"
+      sources."typegram-3.4.1"
       sources."unique-string-2.0.0"
       sources."unpipe-1.0.0"
       (sources."update-notifier-5.1.0" // {
@@ -68306,7 +69966,6 @@ in
           sources."ansi-styles-4.3.0"
           sources."chalk-4.1.1"
           sources."import-lazy-2.1.0"
-          sources."semver-7.3.5"
           sources."supports-color-7.2.0"
         ];
       })
@@ -68482,7 +70141,7 @@ in
       sources."tweetnacl-0.14.5"
       sources."type-check-0.3.2"
       sources."uri-js-4.4.1"
-      sources."urijs-1.19.6"
+      sources."urijs-1.19.7"
       sources."uuid-3.4.0"
       sources."verror-1.10.0"
       sources."vscode-jsonrpc-6.0.0"
@@ -68575,7 +70234,7 @@ in
       sources."inherits-2.0.4"
       sources."intersect-1.0.1"
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-finite-1.1.0"
       sources."is-plain-obj-1.1.0"
       sources."is-utf8-0.2.1"
@@ -68748,7 +70407,7 @@ in
       sources."es-to-primitive-1.2.1"
       sources."events-3.3.0"
       sources."evp_bytestokey-1.0.3"
-      sources."fast-safe-stringify-2.0.7"
+      sources."fast-safe-stringify-2.0.8"
       sources."foreach-2.0.5"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
@@ -68777,7 +70436,7 @@ in
       sources."is-boolean-object-1.1.1"
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.3"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-date-object-1.0.4"
       sources."is-generator-function-1.0.9"
       sources."is-negative-zero-2.0.1"
@@ -68803,7 +70462,7 @@ in
       sources."mkdirp-classic-0.5.3"
       sources."module-deps-6.2.3"
       sources."object-assign-4.1.1"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."once-1.4.0"
@@ -68902,15 +70561,15 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/parser-7.14.8"
+      sources."@babel/types-7.14.8"
       sources."@kwsites/file-exists-1.1.1"
       sources."@kwsites/promise-deferred-1.1.1"
-      sources."@types/minimist-1.2.1"
+      sources."@types/minimist-1.2.2"
       sources."@types/node-10.12.18"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@types/normalize-package-data-2.4.1"
       sources."@uphold/request-logger-2.0.0"
       sources."accepts-1.3.7"
       sources."acorn-7.4.1"
@@ -69105,7 +70764,7 @@ in
       sources."ipaddr.js-1.9.1"
       sources."is-arrayish-0.2.1"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-expression-4.0.0"
       sources."is-fullwidth-code-point-2.0.0"
       sources."is-plain-obj-1.1.0"
@@ -69274,7 +70933,7 @@ in
       sources."set-blocking-2.0.0"
       sources."setprototypeof-1.1.1"
       sources."sha.js-2.4.11"
-      sources."simple-git-2.40.0"
+      sources."simple-git-2.41.1"
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
@@ -69364,7 +71023,7 @@ in
       sources."@protobufjs/pool-1.1.0"
       sources."@protobufjs/utf8-1.1.0"
       sources."@types/long-4.0.1"
-      sources."@types/node-15.14.0"
+      sources."@types/node-16.4.0"
       sources."addr-to-ip-port-1.5.1"
       sources."airplay-js-0.2.16"
       sources."ajv-6.12.6"
@@ -69506,7 +71165,7 @@ in
       sources."ip-set-1.0.2"
       sources."ipaddr.js-2.0.1"
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-finite-1.1.0"
       sources."is-typedarray-1.0.0"
       sources."is-utf8-0.2.1"
@@ -69776,7 +71435,7 @@ in
       sha512 = "+ikLey611rDoxLBiYuFaNJZxZ1ytCppSEzW+wBIfV5mkyV8Ug5ldHuFzpeUxShZToyzqq8TwhQ5A3CGTU0tSJw==";
     };
     dependencies = [
-      sources."@jsii/spec-1.30.0"
+      sources."@jsii/spec-1.31.0"
       sources."@types/node-10.17.60"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
@@ -69789,7 +71448,7 @@ in
       sources."cdk8s-plus-17-1.0.0-beta.30"
       sources."cliui-7.0.4"
       sources."clone-2.1.2"
-      (sources."codemaker-1.30.0" // {
+      (sources."codemaker-1.31.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
         ];
@@ -69798,7 +71457,7 @@ in
       sources."color-name-1.1.4"
       sources."colors-1.4.0"
       sources."commonmark-0.29.3"
-      sources."constructs-3.3.94"
+      sources."constructs-3.3.99"
       sources."date-format-3.0.0"
       sources."debug-4.3.2"
       sources."decamelize-5.0.0"
@@ -69847,37 +71506,37 @@ in
       sources."is-weakmap-2.0.1"
       sources."is-weakset-2.0.1"
       sources."isarray-2.0.5"
-      (sources."jsii-1.30.0" // {
+      (sources."jsii-1.31.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-pacmak-1.30.0" // {
+      (sources."jsii-pacmak-1.31.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-reflect-1.30.0" // {
+      (sources."jsii-reflect-1.31.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-rosetta-1.30.0" // {
+      (sources."jsii-rosetta-1.31.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-srcmak-0.1.297" // {
+      (sources."jsii-srcmak-0.1.302" // {
         dependencies = [
           sources."fs-extra-9.1.0"
         ];
       })
       sources."json-schema-0.3.0"
-      sources."json2jsii-0.1.264"
+      sources."json2jsii-0.1.272"
       sources."jsonfile-6.1.0"
       sources."jsonschema-1.4.0"
       sources."locate-path-5.0.0"
@@ -69889,11 +71548,11 @@ in
       sources."ms-2.1.2"
       sources."ncp-2.0.0"
       sources."no-case-3.0.4"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
-      sources."oo-ascii-tree-1.30.0"
+      sources."oo-ascii-tree-1.31.0"
       sources."p-limit-2.3.0"
       sources."p-locate-4.1.0"
       sources."p-try-2.2.0"
@@ -69913,7 +71572,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.17"
+      sources."sscaff-1.2.22"
       (sources."streamroller-2.2.4" // {
         dependencies = [
           sources."date-format-2.1.0"
@@ -69969,19 +71628,19 @@ in
     };
     dependencies = [
       sources."@cdktf/hcl2json-0.4.1"
-      sources."@jsii/spec-1.30.0"
+      sources."@jsii/spec-1.31.0"
       sources."@skorfmann/ink-confirm-input-3.0.0"
       sources."@skorfmann/terraform-cloud-1.10.1"
-      sources."@types/node-14.17.4"
-      sources."@types/node-fetch-2.5.10"
-      sources."@types/yauzl-2.9.1"
+      sources."@types/node-14.17.5"
+      sources."@types/node-fetch-2.5.11"
+      sources."@types/yauzl-2.9.2"
       sources."@types/yoga-layout-1.9.2"
       (sources."ansi-escapes-4.3.2" // {
         dependencies = [
           sources."type-fest-0.21.3"
         ];
       })
-      sources."ansi-regex-4.1.0"
+      sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
       sources."archiver-5.3.0"
       (sources."archiver-utils-2.1.0" // {
@@ -70028,7 +71687,7 @@ in
       sources."commonmark-0.29.3"
       sources."compress-commons-4.1.1"
       sources."concat-map-0.0.1"
-      sources."constructs-3.3.94"
+      sources."constructs-3.3.99"
       sources."convert-to-spaces-1.0.2"
       sources."core-util-is-1.0.2"
       sources."crc-32-1.2.0"
@@ -70083,7 +71742,7 @@ in
       sources."indent-string-4.0.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      (sources."ink-3.0.8" // {
+      (sources."ink-3.0.9" // {
         dependencies = [
           sources."type-fest-0.12.0"
         ];
@@ -70111,7 +71770,7 @@ in
       sources."is-wsl-2.2.0"
       sources."isarray-1.0.0"
       sources."js-tokens-4.0.0"
-      (sources."jsii-1.30.0" // {
+      (sources."jsii-1.31.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."jsonfile-6.1.0"
@@ -70119,10 +71778,10 @@ in
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-pacmak-1.30.0" // {
+      (sources."jsii-pacmak-1.31.0" // {
         dependencies = [
           sources."camelcase-6.2.0"
-          sources."codemaker-1.30.0"
+          sources."codemaker-1.31.0"
           sources."decamelize-5.0.0"
           sources."escape-string-regexp-4.0.0"
           sources."fs-extra-9.1.0"
@@ -70131,7 +71790,7 @@ in
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-reflect-1.30.0" // {
+      (sources."jsii-reflect-1.31.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."jsonfile-6.1.0"
@@ -70139,7 +71798,7 @@ in
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-rosetta-1.30.0" // {
+      (sources."jsii-rosetta-1.31.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."jsonfile-6.1.0"
@@ -70147,7 +71806,7 @@ in
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-srcmak-0.1.297" // {
+      (sources."jsii-srcmak-0.1.302" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."jsonfile-6.1.0"
@@ -70183,13 +71842,13 @@ in
       sources."node-fetch-2.6.1"
       sources."normalize-path-3.0.0"
       sources."object-assign-4.1.1"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."once-1.4.0"
       sources."onetime-5.1.2"
-      sources."oo-ascii-tree-1.30.0"
+      sources."oo-ascii-tree-1.31.0"
       sources."open-7.4.2"
       sources."p-limit-2.3.0"
       sources."p-locate-4.1.0"
@@ -70204,7 +71863,7 @@ in
       sources."pump-3.0.0"
       sources."quick-lru-4.0.1"
       sources."react-16.14.0"
-      sources."react-devtools-core-4.13.5"
+      sources."react-devtools-core-4.14.0"
       sources."react-is-16.13.1"
       sources."react-reconciler-0.24.0"
       sources."readable-stream-3.6.0"
@@ -70230,7 +71889,7 @@ in
       sources."slice-ansi-3.0.0"
       sources."sort-json-2.0.0"
       sources."spdx-license-list-6.4.0"
-      sources."sscaff-1.2.17"
+      sources."sscaff-1.2.22"
       sources."stack-utils-2.0.3"
       sources."stream-buffers-3.0.2"
       (sources."streamroller-2.2.4" // {
@@ -70238,22 +71897,12 @@ in
           sources."date-format-2.1.0"
         ];
       })
-      (sources."string-length-3.1.0" // {
-        dependencies = [
-          sources."astral-regex-1.0.0"
-          sources."strip-ansi-5.2.0"
-        ];
-      })
       sources."string-width-4.2.2"
       sources."string.prototype.repeat-0.2.0"
       sources."string.prototype.trimend-1.0.4"
       sources."string.prototype.trimstart-1.0.4"
       sources."string_decoder-1.1.1"
-      (sources."strip-ansi-6.0.0" // {
-        dependencies = [
-          sources."ansi-regex-5.0.0"
-        ];
-      })
+      sources."strip-ansi-6.0.0"
       sources."supports-color-7.2.0"
       sources."tar-stream-2.2.0"
       sources."type-fest-0.15.1"
@@ -70269,7 +71918,7 @@ in
       sources."widest-line-3.1.0"
       sources."wrap-ansi-6.2.0"
       sources."wrappy-1.0.2"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xmlbuilder-15.1.1"
       sources."xmldom-0.6.0"
       sources."y18n-5.0.8"
@@ -70419,10 +72068,10 @@ in
   coc-clangd = nodeEnv.buildNodePackage {
     name = "coc-clangd";
     packageName = "coc-clangd";
-    version = "0.11.0";
+    version = "0.12.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-clangd/-/coc-clangd-0.11.0.tgz";
-      sha512 = "RxYUkfb1HO+ZI62tB0JhqmxYgTrtlS8f3a6+gbFDkEkOCdoCG3GiQBlbV6JjQwdoK7LwNWPxeocJjqoA53ZLnQ==";
+      url = "https://registry.npmjs.org/coc-clangd/-/coc-clangd-0.12.0.tgz";
+      sha512 = "nRKGxCQLNKvi38q8QIVM+tvGpqEpi1NugCcrRTQfTF78PXofct6ImtVu9aLKDqoq3cAJk9CmngXLPEj+sdgYzQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -70531,10 +72180,10 @@ in
   coc-explorer = nodeEnv.buildNodePackage {
     name = "coc-explorer";
     packageName = "coc-explorer";
-    version = "0.18.3";
+    version = "0.18.11";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-explorer/-/coc-explorer-0.18.3.tgz";
-      sha512 = "0bYcyZiiH+XlWjtBXGPUNAizDmdz8LFGvazTlOiurij06s1KKzE5gw9waUlbPdnlVwbNpoUkdTZ1mIEPn0bgLg==";
+      url = "https://registry.npmjs.org/coc-explorer/-/coc-explorer-0.18.11.tgz";
+      sha512 = "L16wPMe5iDrprv5JNlTBtTd3WmRM+kLN9u+lQTDFpj0t6WxE16WzCm2Ktl1jzgpGY+xcdGakbZAL2y9bLXaJqg==";
     };
     dependencies = [
       sources."@sindresorhus/df-3.1.1"
@@ -70617,16 +72266,11 @@ in
   coc-git = nodeEnv.buildNodePackage {
     name = "coc-git";
     packageName = "coc-git";
-    version = "2.3.5";
+    version = "2.4.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-git/-/coc-git-2.3.5.tgz";
-      sha512 = "cuWQcWuPKpFAwcED+EfKtGSsGifJJkAtVh5CGBTDbadNQfHdtj63DF+H3YdlM/bQWgsQMfnjxA+AH/yifBg+Ow==";
+      url = "https://registry.npmjs.org/coc-git/-/coc-git-2.4.1.tgz";
+      sha512 = "CgBUD5qPMvbdTUKTIaeKPxmJSieVJNK3JS1PPgr4ivIXqXYZ4ECP4DM7jmnkA+BnK9Xvz1FnlebUTxTv3z/IFQ==";
     };
-    dependencies = [
-      sources."lru-cache-6.0.0"
-      sources."semver-7.3.5"
-      sources."yallist-4.0.0"
-    ];
     buildInputs = globalBuildInputs;
     meta = {
       description = "Git extension for coc.nvim";
@@ -70720,10 +72364,10 @@ in
   coc-java = nodeEnv.buildNodePackage {
     name = "coc-java";
     packageName = "coc-java";
-    version = "1.5.3";
+    version = "1.5.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-java/-/coc-java-1.5.3.tgz";
-      sha512 = "St4Vg5DSHaBW0zqXoSKlKL0KJiASSGMIKDUX2zp/l8ImJd6YI5+SoEwYjCxA2c5x01hZ7k3prXDdfgpKp304RA==";
+      url = "https://registry.npmjs.org/coc-java/-/coc-java-1.5.4.tgz";
+      sha512 = "6/dloBU+OuRHO/YxX/vWYEFykCQSyN+ASTiwIw0O/l5CyDh9E967sLtodN9uH/MAyExOYfl5i65zI20CMZ6zDQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -70763,20 +72407,16 @@ in
     };
     dependencies = [
       sources."agent-base-4.3.0"
-      sources."balanced-match-1.0.2"
-      sources."brace-expansion-1.1.11"
-      sources."concat-map-0.0.1"
       sources."debug-3.1.0"
       sources."es6-promise-4.2.8"
       sources."es6-promisify-5.0.0"
       sources."http-proxy-agent-2.1.0"
       sources."https-proxy-agent-2.2.4"
       sources."jsonc-parser-3.0.0"
-      sources."minimatch-3.0.4"
       sources."ms-2.0.0"
       sources."request-light-0.4.0"
       sources."vscode-json-languageserver-1.3.4"
-      (sources."vscode-json-languageservice-4.1.5" // {
+      (sources."vscode-json-languageservice-4.1.6" // {
         dependencies = [
           sources."vscode-nls-5.0.0"
         ];
@@ -70837,10 +72477,10 @@ in
   coc-metals = nodeEnv.buildNodePackage {
     name = "coc-metals";
     packageName = "coc-metals";
-    version = "1.0.6";
+    version = "1.0.7";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-metals/-/coc-metals-1.0.6.tgz";
-      sha512 = "MQuXdCblmy5Qnrlqmb7ntDjpgxtdXsbdAgxf23Ai2QFpf14bdc+gz4U/+9pOEpSswODtMvMqnjfTA1lY7p2AfQ==";
+      url = "https://registry.npmjs.org/coc-metals/-/coc-metals-1.0.7.tgz";
+      sha512 = "EiD4lpcGW2WyzxEDpRMYPrjxAa0FhG69SzDoc1KbDht2Do/vgnRzvrtIsufPT14dALAesieN3kVVMCCfA9S6jA==";
     };
     dependencies = [
       sources."@chemzqm/neovim-5.2.13"
@@ -70958,7 +72598,7 @@ in
       sources."node-fetch-2.6.1"
       sources."node-int64-0.4.0"
       sources."npm-run-path-2.0.2"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."once-1.4.0"
@@ -71050,25 +72690,27 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."chalk-2.4.2"
           sources."escape-string-regexp-1.0.5"
         ];
       })
-      sources."@eslint/eslintrc-0.4.2"
+      sources."@eslint/eslintrc-0.4.3"
+      sources."@humanwhocodes/config-array-0.5.0"
+      sources."@humanwhocodes/object-schema-1.2.0"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
       sources."@types/eslint-visitor-keys-1.0.0"
-      sources."@types/json-schema-7.0.7"
+      sources."@types/json-schema-7.0.8"
       sources."@typescript-eslint/experimental-utils-3.10.1"
       sources."@typescript-eslint/parser-3.10.1"
       sources."@typescript-eslint/types-3.10.1"
       sources."@typescript-eslint/typescript-estree-3.10.1"
       sources."@typescript-eslint/visitor-keys-3.10.1"
       sources."acorn-7.4.1"
-      sources."acorn-jsx-5.3.1"
+      sources."acorn-jsx-5.3.2"
       sources."ajv-6.12.6"
       sources."ajv-keywords-3.5.2"
       (sources."ansi-align-2.0.0" // {
@@ -71127,7 +72769,7 @@ in
       sources."callsites-3.1.0"
       sources."camelcase-2.1.1"
       sources."camelcase-keys-2.1.0"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       sources."capture-stack-trace-1.0.1"
       sources."ccount-1.1.0"
       (sources."chalk-4.1.1" // {
@@ -71225,14 +72867,14 @@ in
       sources."domutils-1.7.0"
       sources."dot-prop-5.3.0"
       sources."duplexer3-0.1.4"
-      sources."electron-to-chromium-1.3.765"
+      sources."electron-to-chromium-1.3.782"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."enquirer-2.3.6"
       sources."entities-1.1.2"
       sources."error-ex-1.3.2"
       sources."escape-string-regexp-4.0.0"
-      (sources."eslint-7.29.0" // {
+      (sources."eslint-7.31.0" // {
         dependencies = [
           sources."eslint-visitor-keys-2.1.0"
         ];
@@ -71344,7 +72986,7 @@ in
       sources."fill-range-2.2.4"
       sources."find-up-2.1.0"
       sources."flat-cache-3.0.4"
-      sources."flatted-3.2.0"
+      sources."flatted-3.2.1"
       sources."for-in-1.0.2"
       sources."for-own-0.1.5"
       sources."fragment-cache-0.2.1"
@@ -71366,7 +73008,7 @@ in
       sources."glob-parent-5.1.2"
       sources."glob-to-regexp-0.3.0"
       sources."global-dirs-0.1.1"
-      sources."globals-13.9.0"
+      sources."globals-13.10.0"
       (sources."globby-6.1.0" // {
         dependencies = [
           sources."pify-2.3.0"
@@ -71423,7 +73065,7 @@ in
       sources."is-arrayish-0.2.1"
       sources."is-buffer-1.1.6"
       sources."is-ci-1.2.1"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       (sources."is-data-descriptor-1.0.0" // {
         dependencies = [
           sources."kind-of-6.0.3"
@@ -71892,7 +73534,7 @@ in
       sources."svg-tags-1.0.0"
       (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.6.0"
+          sources."ajv-8.6.2"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -72024,13 +73666,13 @@ in
   coc-pyright = nodeEnv.buildNodePackage {
     name = "coc-pyright";
     packageName = "coc-pyright";
-    version = "1.1.154";
+    version = "1.1.157";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-pyright/-/coc-pyright-1.1.154.tgz";
-      sha512 = "SUaGghNwGq4dD6DFWbmsMF0eqwydbO/OKknCmjx0kvLXniIkEkQUnfS3wc3dm3MIWBNYsZ2x3fM0J7a83WhHgA==";
+      url = "https://registry.npmjs.org/coc-pyright/-/coc-pyright-1.1.157.tgz";
+      sha512 = "GyjrMQFSqrAnBB0SlZC93JV9E8VAcsDhfCBHZ6DIRDCH9qsSI3g0Y0RGJp7v+JHDDZTrEPJiiPOu1e/6PFA90A==";
     };
     dependencies = [
-      sources."pyright-1.1.154"
+      sources."pyright-1.1.157"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -72104,10 +73746,10 @@ in
   coc-rust-analyzer = nodeEnv.buildNodePackage {
     name = "coc-rust-analyzer";
     packageName = "coc-rust-analyzer";
-    version = "0.46.3";
+    version = "0.47.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-rust-analyzer/-/coc-rust-analyzer-0.46.3.tgz";
-      sha512 = "eaHTqrFLwtTgjOMSiVIc3Z4I575LZ0xzY6rvrMEKmxWiRHB8c26LzrhKN8dbK+An6XxryUceijBMrfz4dsiOVw==";
+      url = "https://registry.npmjs.org/coc-rust-analyzer/-/coc-rust-analyzer-0.47.2.tgz";
+      sha512 = "DtUoWcXd++TT9PjjB5JDT3r+2c6wdZZlf2pCXeInELfwW/P4p10BKxP8EnMhkNq4jIzfP0V9QAwLMMppACFuRA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -72157,10 +73799,10 @@ in
   coc-solargraph = nodeEnv.buildNodePackage {
     name = "coc-solargraph";
     packageName = "coc-solargraph";
-    version = "1.2.1";
+    version = "1.2.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-solargraph/-/coc-solargraph-1.2.1.tgz";
-      sha512 = "7e+5qluZxgGrw3l/3ib3BLPm2XlfHp1Gxkcb33vmJAw4CC0TDCB+pw2DyWPVGC3t68rLGGAzo5pYCtaGRoxojw==";
+      url = "https://registry.npmjs.org/coc-solargraph/-/coc-solargraph-1.2.2.tgz";
+      sha512 = "KwL3QM6RXsungMkjF0wXsJ6CZuP5h/Lll54Hs49OTJskbQaJTh98DCaCWiIKqBXIuAfxaESEQNihLT2MyefL+Q==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -72182,42 +73824,42 @@ in
     dependencies = [
       sources."@babel/code-frame-7.14.5"
       sources."@babel/compat-data-7.14.7"
-      sources."@babel/core-7.14.6"
-      sources."@babel/generator-7.14.5"
+      sources."@babel/core-7.14.8"
+      sources."@babel/generator-7.14.8"
       sources."@babel/helper-compilation-targets-7.14.5"
       sources."@babel/helper-function-name-7.14.5"
       sources."@babel/helper-get-function-arity-7.14.5"
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-member-expression-to-functions-7.14.7"
       sources."@babel/helper-module-imports-7.14.5"
-      sources."@babel/helper-module-transforms-7.14.5"
+      sources."@babel/helper-module-transforms-7.14.8"
       sources."@babel/helper-optimise-call-expression-7.14.5"
       sources."@babel/helper-replace-supers-7.14.5"
-      sources."@babel/helper-simple-access-7.14.5"
+      sources."@babel/helper-simple-access-7.14.8"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/helper-validator-option-7.14.5"
-      sources."@babel/helpers-7.14.6"
+      sources."@babel/helpers-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."@stylelint/postcss-css-in-js-0.37.2"
       sources."@stylelint/postcss-markdown-0.36.2"
-      sources."@types/mdast-3.0.3"
-      sources."@types/minimist-1.2.1"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@types/mdast-3.0.7"
+      sources."@types/minimist-1.2.2"
+      sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
-      sources."@types/unist-2.0.3"
-      sources."ajv-8.6.0"
+      sources."@types/unist-2.0.6"
+      sources."ajv-8.6.2"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-3.2.1"
       sources."array-union-2.1.0"
@@ -72236,7 +73878,7 @@ in
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       (sources."chalk-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
@@ -72274,7 +73916,7 @@ in
       sources."domelementtype-1.3.1"
       sources."domhandler-2.4.2"
       sources."domutils-1.7.0"
-      sources."electron-to-chromium-1.3.765"
+      sources."electron-to-chromium-1.3.782"
       sources."emoji-regex-8.0.0"
       sources."entities-1.1.2"
       sources."error-ex-1.3.2"
@@ -72284,14 +73926,14 @@ in
       sources."extend-3.0.2"
       sources."fast-deep-equal-3.1.3"
       sources."fast-diff-1.2.0"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fastest-levenshtein-1.0.12"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."file-entry-cache-6.0.1"
       sources."fill-range-7.0.1"
       sources."find-up-4.1.0"
       sources."flat-cache-3.0.4"
-      sources."flatted-3.2.0"
+      sources."flatted-3.2.1"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."gensync-1.0.0-beta.2"
@@ -72326,7 +73968,7 @@ in
       sources."is-alphanumerical-1.0.4"
       sources."is-arrayish-0.2.1"
       sources."is-buffer-2.0.5"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-decimal-1.0.4"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
@@ -72561,7 +74203,7 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/highlight-7.14.5"
       sources."ansi-styles-3.2.1"
       sources."argparse-1.0.10"
@@ -72583,7 +74225,7 @@ in
       sources."has-flag-3.0.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."js-tokens-4.0.0"
       sources."js-yaml-3.14.1"
       sources."minimatch-3.0.4"
@@ -72676,16 +74318,18 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."chalk-2.4.2"
           sources."escape-string-regexp-1.0.5"
         ];
       })
-      sources."@eslint/eslintrc-0.4.2"
+      sources."@eslint/eslintrc-0.4.3"
+      sources."@humanwhocodes/config-array-0.5.0"
+      sources."@humanwhocodes/object-schema-1.2.0"
       sources."acorn-7.4.1"
-      sources."acorn-jsx-5.3.1"
+      sources."acorn-jsx-5.3.2"
       sources."ajv-6.12.6"
       sources."ansi-colors-4.1.1"
       sources."ansi-regex-5.0.0"
@@ -72717,8 +74361,12 @@ in
       sources."emoji-regex-8.0.0"
       sources."enquirer-2.3.6"
       sources."escape-string-regexp-4.0.0"
-      sources."eslint-7.29.0"
-      sources."eslint-plugin-vue-7.12.1"
+      sources."eslint-7.31.0"
+      (sources."eslint-plugin-vue-7.14.0" // {
+        dependencies = [
+          sources."semver-6.3.0"
+        ];
+      })
       sources."eslint-scope-5.1.1"
       (sources."eslint-utils-2.1.0" // {
         dependencies = [
@@ -72749,13 +74397,13 @@ in
       sources."fast-levenshtein-2.0.6"
       sources."file-entry-cache-6.0.1"
       sources."flat-cache-3.0.4"
-      sources."flatted-3.2.0"
+      sources."flatted-3.2.1"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."functional-red-black-tree-1.0.1"
       sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
-      sources."globals-13.9.0"
+      sources."globals-13.10.0"
       sources."has-1.0.3"
       sources."has-flag-3.0.0"
       sources."ignore-4.0.6"
@@ -72763,7 +74411,7 @@ in
       sources."imurmurhash-0.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
@@ -72815,7 +74463,7 @@ in
       sources."supports-color-5.5.0"
       (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.6.0"
+          sources."ajv-8.6.2"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -72835,15 +74483,11 @@ in
       sources."uri-js-4.4.1"
       sources."v8-compile-cache-2.3.0"
       sources."vls-0.7.4"
-      (sources."vue-eslint-parser-7.7.1" // {
+      (sources."vue-eslint-parser-7.9.0" // {
         dependencies = [
-          sources."acorn-8.4.1"
           sources."eslint-visitor-keys-1.3.0"
-          (sources."espree-8.0.0" // {
-            dependencies = [
-              sources."eslint-visitor-keys-3.0.0"
-            ];
-          })
+          sources."espree-6.2.1"
+          sources."semver-6.3.0"
         ];
       })
       sources."which-2.0.2"
@@ -72916,50 +74560,48 @@ in
   coc-yaml = nodeEnv.buildNodePackage {
     name = "coc-yaml";
     packageName = "coc-yaml";
-    version = "1.3.1";
+    version = "1.4.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-yaml/-/coc-yaml-1.3.1.tgz";
-      sha512 = "OJeA16cZ7ds4QsyPP9Vmztca4DDpcz7odPN5O75+jb5nmTD5UgYWQE71sY10vIIqdI+dKYdWw+iausu90cuZHA==";
+      url = "https://registry.npmjs.org/coc-yaml/-/coc-yaml-1.4.2.tgz";
+      sha512 = "cfocwN+TczdspN03m7t+eJMyaAsKCSzfgJJDM2CWPvrreKIMMahWqce/krTtENqDHDu51miuWo+o6/6FEKSf4g==";
     };
     dependencies = [
       sources."agent-base-4.3.0"
-      sources."argparse-1.0.10"
+      sources."argparse-2.0.1"
+      sources."balanced-match-1.0.2"
+      sources."brace-expansion-1.1.11"
+      sources."concat-map-0.0.1"
       sources."debug-3.1.0"
       sources."es6-promise-4.2.8"
       sources."es6-promisify-5.0.0"
-      sources."esprima-4.0.1"
       sources."http-proxy-agent-2.1.0"
       sources."https-proxy-agent-2.2.4"
-      sources."js-yaml-3.14.1"
-      sources."jsonc-parser-2.3.1"
+      sources."js-yaml-4.1.0"
+      sources."jsonc-parser-3.0.0"
+      sources."minimatch-3.0.4"
       sources."ms-2.0.0"
       sources."prettier-2.0.5"
-      sources."request-light-0.2.5"
-      sources."sprintf-js-1.0.3"
-      (sources."vscode-json-languageservice-3.11.0" // {
-        dependencies = [
-          sources."jsonc-parser-3.0.0"
-          sources."vscode-languageserver-types-3.16.0-next.2"
-          sources."vscode-nls-5.0.0"
-        ];
-      })
-      sources."vscode-jsonrpc-4.0.0"
-      (sources."vscode-languageserver-5.2.1" // {
+      (sources."request-light-0.2.5" // {
         dependencies = [
-          sources."vscode-uri-1.0.8"
+          sources."vscode-nls-4.1.2"
         ];
       })
-      (sources."vscode-languageserver-protocol-3.14.1" // {
+      sources."vscode-json-languageservice-4.1.0"
+      sources."vscode-jsonrpc-6.0.0"
+      sources."vscode-languageserver-7.0.0"
+      sources."vscode-languageserver-protocol-3.16.0"
+      sources."vscode-languageserver-textdocument-1.0.1"
+      sources."vscode-languageserver-types-3.16.0"
+      sources."vscode-nls-5.0.0"
+      sources."vscode-uri-3.0.2"
+      (sources."yaml-language-server-0.20.0" // {
         dependencies = [
-          sources."vscode-languageserver-types-3.14.0"
+          sources."jsonc-parser-2.3.1"
+          sources."vscode-nls-4.1.2"
+          sources."vscode-uri-2.1.2"
         ];
       })
-      sources."vscode-languageserver-textdocument-1.0.1"
-      sources."vscode-languageserver-types-3.16.0"
-      sources."vscode-nls-4.1.2"
-      sources."vscode-uri-2.1.2"
-      sources."yaml-language-server-0.13.1-d0f9b44.0"
-      sources."yaml-language-server-parser-0.1.3-fa8245c.0"
+      sources."yaml-language-server-parser-0.1.2"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -73054,10 +74696,10 @@ in
   configurable-http-proxy = nodeEnv.buildNodePackage {
     name = "configurable-http-proxy";
     packageName = "configurable-http-proxy";
-    version = "4.4.0";
+    version = "4.5.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/configurable-http-proxy/-/configurable-http-proxy-4.4.0.tgz";
-      sha512 = "8tSSnS8pjuw6Wtu/3Ufd2elV/3DnE3AUu3L+IYyukLoQNrRY9iS+Qfg3e1APokk7OzSghDkxW7yRZFiAoHF6FQ==";
+      url = "https://registry.npmjs.org/configurable-http-proxy/-/configurable-http-proxy-4.5.0.tgz";
+      sha512 = "iuaG85EDWIp02Dm1LZsi7vRE4CH5cRwo2+GaEEAi6fgX3dRLpt/jhQc7ylwXibi4kUjMvpV/xbMwjRRmGcg4NQ==";
     };
     dependencies = [
       sources."@dabh/diagnostics-2.0.2"
@@ -73066,14 +74708,14 @@ in
       sources."color-3.0.0"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."color-string-1.5.5"
+      sources."color-string-1.6.0"
       sources."colors-1.4.0"
       sources."colorspace-1.1.2"
-      sources."commander-7.2.0"
+      sources."commander-8.0.0"
       sources."core-util-is-1.0.2"
       sources."enabled-2.0.0"
       sources."eventemitter3-4.0.7"
-      sources."fast-safe-stringify-2.0.7"
+      sources."fast-safe-stringify-2.0.8"
       sources."fecha-4.2.1"
       sources."fn.name-1.1.0"
       sources."follow-redirects-1.14.1"
@@ -73130,7 +74772,7 @@ in
       sources."@netflix/nerror-1.1.3"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."@npmcli/git-2.1.0"
       sources."@npmcli/installed-package-contents-1.0.7"
       sources."@npmcli/move-file-1.1.2"
@@ -73313,10 +74955,10 @@ in
       })
       sources."extsprintf-1.4.0"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fast-json-parse-1.0.3"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."figures-2.0.0"
       sources."fill-range-7.0.1"
       (sources."finalhandler-1.1.2" // {
@@ -73421,7 +75063,7 @@ in
       sources."ip-regex-2.1.0"
       sources."ipaddr.js-1.9.1"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-docker-2.2.1"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-1.0.0"
@@ -73467,7 +75109,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."make-fetch-happen-9.0.3"
+      sources."make-fetch-happen-9.0.4"
       sources."md5-file-5.0.0"
       sources."media-typer-0.3.0"
       sources."merge-descriptors-1.0.1"
@@ -73484,7 +75126,7 @@ in
       sources."minimist-1.2.5"
       sources."minipass-3.1.3"
       sources."minipass-collect-1.0.2"
-      sources."minipass-fetch-1.3.3"
+      sources."minipass-fetch-1.3.4"
       sources."minipass-flush-1.0.5"
       sources."minipass-json-stream-1.0.1"
       sources."minipass-pipeline-1.2.4"
@@ -73545,7 +75187,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."pacote-11.3.4"
+      sources."pacote-11.3.5"
       sources."parent-module-1.0.1"
       sources."parseurl-1.3.3"
       sources."path-exists-3.0.0"
@@ -73734,15 +75376,15 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/highlight-7.14.5"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
-      sources."@types/glob-7.1.3"
-      sources."@types/minimatch-3.0.4"
-      sources."@types/minimist-1.2.1"
-      sources."@types/node-15.14.0"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@types/glob-7.1.4"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/minimist-1.2.2"
+      sources."@types/node-16.4.0"
+      sources."@types/normalize-package-data-2.4.1"
       sources."aggregate-error-3.1.0"
       sources."ansi-styles-3.2.1"
       sources."arr-diff-4.0.0"
@@ -73881,7 +75523,7 @@ in
       sources."is-accessor-descriptor-1.0.0"
       sources."is-arrayish-0.2.1"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-descriptor-1.0.2"
       sources."is-extendable-0.1.1"
@@ -74112,7 +75754,7 @@ in
       sources."@cycle/run-3.4.0"
       sources."@cycle/time-0.10.1"
       sources."@types/cookiejar-2.1.2"
-      sources."@types/node-15.14.0"
+      sources."@types/node-16.4.0"
       sources."@types/superagent-3.8.2"
       sources."ansi-escapes-3.2.0"
       sources."ansi-regex-2.1.1"
@@ -74201,7 +75843,7 @@ in
       sources."mute-stream-0.0.7"
       sources."next-tick-1.0.0"
       sources."object-assign-4.1.1"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-keys-1.1.1"
       sources."onetime-2.0.1"
       sources."os-tmpdir-1.0.2"
@@ -74407,6 +76049,7 @@ in
       sha512 = "I6r+8jeGKdZ5ztkxXQUu+2DmzoCkRB4KS0bPfu85u2RoK5xz0ypt3h/WP7GjRBBvhOOM7/LdYKUcOob6RKMtRQ==";
     };
     dependencies = [
+      sources."@leichtgewicht/ip-codec-2.0.3"
       sources."abstract-random-access-1.1.2"
       sources."ajv-6.12.6"
       sources."ansi-align-2.0.0"
@@ -74765,7 +76408,7 @@ in
       sources."multi-random-access-2.1.1"
       (sources."multicast-dns-7.2.3" // {
         dependencies = [
-          sources."dns-packet-5.2.4"
+          sources."dns-packet-5.3.0"
         ];
       })
       sources."multistream-2.1.1"
@@ -75095,7 +76738,7 @@ in
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."aggregate-error-3.1.0"
       sources."array-union-2.1.0"
       sources."balanced-match-1.0.2"
@@ -75107,8 +76750,8 @@ in
       sources."crypto-random-string-2.0.0"
       sources."del-6.0.0"
       sources."dir-glob-3.0.1"
-      sources."fast-glob-3.2.6"
-      sources."fastq-1.11.0"
+      sources."fast-glob-3.2.7"
+      sources."fastq-1.11.1"
       sources."fill-range-7.0.1"
       sources."find-up-4.1.0"
       sources."fs.realpath-1.0.0"
@@ -75230,7 +76873,7 @@ in
     dependencies = [
       sources."@fast-csv/format-4.3.5"
       sources."@fast-csv/parse-4.3.6"
-      sources."@types/node-14.17.4"
+      sources."@types/node-14.17.5"
       sources."JSONStream-1.3.5"
       sources."ajv-6.12.6"
       sources."asn1-0.2.4"
@@ -75368,30 +77011,30 @@ in
   "@electron-forge/cli" = nodeEnv.buildNodePackage {
     name = "_at_electron-forge_slash_cli";
     packageName = "@electron-forge/cli";
-    version = "6.0.0-beta.57";
+    version = "6.0.0-beta.58";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@electron-forge/cli/-/cli-6.0.0-beta.57.tgz";
-      sha512 = "ouIL3FI6C0W3iLwwwQzKufjoP/OZagUDMCDjGLN/dqeg+lZ+cR40bdfaNTFha9ajz+zSe2SmhCOMVUVNNkJ5Sg==";
+      url = "https://registry.npmjs.org/@electron-forge/cli/-/cli-6.0.0-beta.58.tgz";
+      sha512 = "dlGj8lrtUGOwoNaU/zEhbJMOEAqiZUcn9AJrX80saSplkkWEkOpoo4UkLJ256BLyK8nA1+k89pT/KMtFrUFcPg==";
     };
     dependencies = [
-      sources."@electron-forge/async-ora-6.0.0-beta.57"
-      sources."@electron-forge/core-6.0.0-beta.57"
-      sources."@electron-forge/installer-base-6.0.0-beta.57"
-      sources."@electron-forge/installer-darwin-6.0.0-beta.57"
-      sources."@electron-forge/installer-deb-6.0.0-beta.57"
-      sources."@electron-forge/installer-dmg-6.0.0-beta.57"
-      sources."@electron-forge/installer-exe-6.0.0-beta.57"
-      sources."@electron-forge/installer-linux-6.0.0-beta.57"
-      sources."@electron-forge/installer-rpm-6.0.0-beta.57"
-      sources."@electron-forge/installer-zip-6.0.0-beta.57"
-      sources."@electron-forge/maker-base-6.0.0-beta.57"
-      sources."@electron-forge/plugin-base-6.0.0-beta.57"
-      sources."@electron-forge/publisher-base-6.0.0-beta.57"
-      sources."@electron-forge/shared-types-6.0.0-beta.57"
-      sources."@electron-forge/template-base-6.0.0-beta.57"
-      sources."@electron-forge/template-typescript-6.0.0-beta.57"
-      sources."@electron-forge/template-typescript-webpack-6.0.0-beta.57"
-      sources."@electron-forge/template-webpack-6.0.0-beta.57"
+      sources."@electron-forge/async-ora-6.0.0-beta.58"
+      sources."@electron-forge/core-6.0.0-beta.58"
+      sources."@electron-forge/installer-base-6.0.0-beta.58"
+      sources."@electron-forge/installer-darwin-6.0.0-beta.58"
+      sources."@electron-forge/installer-deb-6.0.0-beta.58"
+      sources."@electron-forge/installer-dmg-6.0.0-beta.58"
+      sources."@electron-forge/installer-exe-6.0.0-beta.58"
+      sources."@electron-forge/installer-linux-6.0.0-beta.58"
+      sources."@electron-forge/installer-rpm-6.0.0-beta.58"
+      sources."@electron-forge/installer-zip-6.0.0-beta.58"
+      sources."@electron-forge/maker-base-6.0.0-beta.58"
+      sources."@electron-forge/plugin-base-6.0.0-beta.58"
+      sources."@electron-forge/publisher-base-6.0.0-beta.58"
+      sources."@electron-forge/shared-types-6.0.0-beta.58"
+      sources."@electron-forge/template-base-6.0.0-beta.58"
+      sources."@electron-forge/template-typescript-6.0.0-beta.58"
+      sources."@electron-forge/template-typescript-webpack-6.0.0-beta.58"
+      sources."@electron-forge/template-webpack-6.0.0-beta.58"
       (sources."@electron/get-1.12.4" // {
         dependencies = [
           sources."@sindresorhus/is-0.14.0"
@@ -75418,17 +77061,17 @@ in
           sources."universalify-0.1.2"
         ];
       })
-      sources."@malept/cross-spawn-promise-1.1.1"
+      sources."@malept/cross-spawn-promise-2.0.0"
       sources."@sindresorhus/is-4.0.1"
-      sources."@szmarczak/http-timer-4.0.5"
-      sources."@types/cacheable-request-6.0.1"
-      sources."@types/glob-7.1.3"
-      sources."@types/http-cache-semantics-4.0.0"
-      sources."@types/keyv-3.1.1"
-      sources."@types/minimatch-3.0.4"
-      sources."@types/node-15.14.0"
+      sources."@szmarczak/http-timer-4.0.6"
+      sources."@types/cacheable-request-6.0.2"
+      sources."@types/glob-7.1.4"
+      sources."@types/http-cache-semantics-4.0.1"
+      sources."@types/keyv-3.1.2"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/node-16.4.0"
       sources."@types/responselike-1.0.0"
-      sources."@types/yauzl-2.9.1"
+      sources."@types/yauzl-2.9.2"
       sources."abbrev-1.1.1"
       sources."ajv-6.12.6"
       (sources."ansi-escapes-4.3.2" // {
@@ -75505,6 +77148,11 @@ in
       sources."core-js-3.15.2"
       sources."core-util-is-1.0.2"
       sources."cross-spawn-7.0.3"
+      (sources."cross-spawn-windows-exe-1.2.0" // {
+        dependencies = [
+          sources."@malept/cross-spawn-promise-1.1.1"
+        ];
+      })
       sources."currently-unhandled-0.4.1"
       sources."dashdash-1.14.1"
       (sources."debug-4.3.2" // {
@@ -75543,13 +77191,14 @@ in
           sources."debug-2.6.9"
         ];
       })
-      (sources."electron-packager-15.2.0" // {
+      (sources."electron-packager-15.3.0" // {
         dependencies = [
           sources."fs-extra-9.1.0"
         ];
       })
       (sources."electron-rebuild-2.3.5" // {
         dependencies = [
+          sources."@malept/cross-spawn-promise-1.1.1"
           sources."fs-extra-9.1.0"
         ];
       })
@@ -75658,14 +77307,14 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
-      (sources."inquirer-8.1.1" // {
+      (sources."inquirer-8.1.2" // {
         dependencies = [
           sources."is-fullwidth-code-point-3.0.0"
           sources."string-width-4.2.2"
         ];
       })
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-docker-2.2.1"
       sources."is-finite-1.1.0"
       sources."is-fullwidth-code-point-1.0.0"
@@ -75738,7 +77387,7 @@ in
       sources."mkdirp-0.5.5"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
-      (sources."needle-2.6.0" // {
+      (sources."needle-2.8.0" // {
         dependencies = [
           sources."debug-3.2.7"
           sources."ms-2.1.3"
@@ -75846,7 +77495,7 @@ in
       sources."qs-6.5.2"
       sources."quick-lru-5.1.1"
       sources."rc-1.2.8"
-      sources."rcedit-2.3.0"
+      sources."rcedit-3.0.1"
       sources."read-pkg-2.0.0"
       (sources."read-pkg-up-2.0.0" // {
         dependencies = [
@@ -75859,7 +77508,7 @@ in
       sources."request-2.88.2"
       sources."require-directory-2.1.1"
       sources."resolve-1.20.0"
-      sources."resolve-alpn-1.1.2"
+      sources."resolve-alpn-1.2.0"
       sources."resolve-dir-1.0.1"
       sources."resolve-package-1.0.1"
       sources."responselike-2.0.0"
@@ -75867,7 +77516,7 @@ in
       sources."rimraf-2.7.1"
       sources."roarr-2.15.4"
       sources."run-async-2.4.1"
-      sources."rxjs-6.6.7"
+      sources."rxjs-7.2.0"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.4"
@@ -75928,7 +77577,7 @@ in
       sources."tough-cookie-2.5.0"
       sources."trim-newlines-1.0.0"
       sources."trim-repeated-1.0.0"
-      sources."tslib-1.14.1"
+      sources."tslib-2.1.0"
       sources."tunnel-0.0.6"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
@@ -76015,12 +77664,12 @@ in
     dependencies = [
       sources."@babel/code-frame-7.14.5"
       sources."@babel/compat-data-7.14.7"
-      (sources."@babel/core-7.14.6" // {
+      (sources."@babel/core-7.14.8" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/generator-7.14.5"
+      sources."@babel/generator-7.14.8"
       sources."@babel/helper-annotate-as-pure-7.14.5"
       (sources."@babel/helper-compilation-targets-7.14.5" // {
         dependencies = [
@@ -76032,17 +77681,17 @@ in
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-member-expression-to-functions-7.14.7"
       sources."@babel/helper-module-imports-7.14.5"
-      sources."@babel/helper-module-transforms-7.14.5"
+      sources."@babel/helper-module-transforms-7.14.8"
       sources."@babel/helper-optimise-call-expression-7.14.5"
       sources."@babel/helper-plugin-utils-7.14.5"
       sources."@babel/helper-replace-supers-7.14.5"
-      sources."@babel/helper-simple-access-7.14.5"
+      sources."@babel/helper-simple-access-7.14.8"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/helper-validator-option-7.14.5"
-      sources."@babel/helpers-7.14.6"
+      sources."@babel/helpers-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/plugin-proposal-object-rest-spread-7.14.7"
       sources."@babel/plugin-syntax-jsx-7.14.5"
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
@@ -76050,16 +77699,16 @@ in
       sources."@babel/plugin-transform-parameters-7.14.5"
       sources."@babel/plugin-transform-react-jsx-7.14.5"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
       sources."@sindresorhus/is-4.0.1"
-      sources."@szmarczak/http-timer-4.0.5"
-      sources."@types/cacheable-request-6.0.1"
-      sources."@types/http-cache-semantics-4.0.0"
-      sources."@types/keyv-3.1.1"
-      sources."@types/minimist-1.2.1"
-      sources."@types/node-15.14.0"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@szmarczak/http-timer-4.0.6"
+      sources."@types/cacheable-request-6.0.2"
+      sources."@types/http-cache-semantics-4.0.1"
+      sources."@types/keyv-3.1.2"
+      sources."@types/minimist-1.2.2"
+      sources."@types/node-16.4.0"
+      sources."@types/normalize-package-data-2.4.1"
       sources."@types/responselike-1.0.0"
       sources."@types/yoga-layout-1.9.2"
       sources."ajv-6.12.6"
@@ -76093,7 +77742,7 @@ in
           sources."quick-lru-4.0.1"
         ];
       })
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       sources."chalk-2.4.2"
       sources."ci-info-2.0.0"
       sources."cli-boxes-2.2.1"
@@ -76130,7 +77779,7 @@ in
       })
       sources."defer-to-connect-2.0.1"
       sources."dot-prop-5.3.0"
-      sources."electron-to-chromium-1.3.765"
+      sources."electron-to-chromium-1.3.782"
       sources."emoji-regex-8.0.0"
       sources."emojilib-2.4.0"
       sources."end-of-stream-1.4.4"
@@ -76160,7 +77809,7 @@ in
       sources."indent-string-4.0.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      (sources."ink-3.0.8" // {
+      (sources."ink-3.0.9" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."chalk-4.1.1"
@@ -76183,7 +77832,7 @@ in
       })
       sources."is-arrayish-0.2.1"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-docker-2.2.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-obj-2.0.0"
@@ -76264,7 +77913,7 @@ in
       sources."punycode-2.1.1"
       sources."quick-lru-5.1.1"
       sources."react-16.14.0"
-      sources."react-devtools-core-4.13.5"
+      sources."react-devtools-core-4.14.0"
       sources."react-is-16.13.1"
       sources."react-reconciler-0.24.0"
       (sources."read-pkg-5.2.0" // {
@@ -76283,7 +77932,7 @@ in
       })
       sources."redent-3.0.0"
       sources."resolve-1.20.0"
-      sources."resolve-alpn-1.1.2"
+      sources."resolve-alpn-1.2.0"
       sources."resolve-from-3.0.0"
       sources."responselike-2.0.0"
       sources."restore-cursor-3.1.0"
@@ -76313,13 +77962,6 @@ in
           sources."escape-string-regexp-2.0.0"
         ];
       })
-      (sources."string-length-3.1.0" // {
-        dependencies = [
-          sources."ansi-regex-4.1.0"
-          sources."astral-regex-1.0.0"
-          sources."strip-ansi-5.2.0"
-        ];
-      })
       sources."string-width-4.2.2"
       sources."strip-ansi-6.0.0"
       sources."strip-eof-1.0.0"
@@ -76341,7 +77983,7 @@ in
         ];
       })
       sources."wrappy-1.0.2"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."yallist-4.0.0"
       sources."yargs-parser-18.1.3"
       sources."yoga-layout-prebuilt-1.10.0"
@@ -76380,7 +78022,7 @@ in
     src = ../../applications/video/epgstation;
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -76391,7 +78033,7 @@ in
       sources."@fluentui/date-time-utilities-7.9.1"
       sources."@fluentui/dom-utilities-1.1.2"
       sources."@fluentui/keyboard-key-0.2.17"
-      sources."@fluentui/react-7.172.1"
+      sources."@fluentui/react-7.173.1"
       sources."@fluentui/react-focus-7.17.6"
       sources."@fluentui/react-window-provider-1.0.2"
       sources."@fluentui/theme-1.7.4"
@@ -76405,10 +78047,10 @@ in
           sources."normalize-path-2.1.1"
         ];
       })
-      sources."@microsoft/load-themed-styles-1.10.190"
+      sources."@microsoft/load-themed-styles-1.10.195"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       (sources."@npmcli/move-file-1.1.2" // {
         dependencies = [
           sources."rimraf-3.0.2"
@@ -76420,19 +78062,19 @@ in
       sources."@types/body-parser-1.19.0"
       sources."@types/caseless-0.12.2"
       sources."@types/chart.js-2.9.24"
-      sources."@types/connect-3.4.34"
-      sources."@types/engine.io-3.1.5"
+      sources."@types/connect-3.4.35"
+      sources."@types/engine.io-3.1.6"
       sources."@types/express-4.17.8"
-      sources."@types/express-serve-static-core-4.17.22"
+      sources."@types/express-serve-static-core-4.17.24"
       sources."@types/fancy-log-1.3.0"
-      sources."@types/glob-7.1.3"
+      sources."@types/glob-7.1.4"
       sources."@types/hls.js-0.13.1"
       sources."@types/js-yaml-3.12.5"
-      sources."@types/json-schema-7.0.7"
+      sources."@types/json-schema-7.0.8"
       sources."@types/lodash-4.14.161"
       sources."@types/material-design-lite-1.1.16"
       sources."@types/mime-1.3.2"
-      sources."@types/minimatch-3.0.4"
+      sources."@types/minimatch-3.0.5"
       sources."@types/minimist-1.2.0"
       sources."@types/mithril-2.0.3"
       sources."@types/mkdirp-1.0.1"
@@ -76441,18 +78083,18 @@ in
       sources."@types/node-14.11.1"
       sources."@types/pg-7.14.5"
       sources."@types/pg-types-2.2.0"
-      sources."@types/qs-6.9.6"
-      sources."@types/range-parser-1.2.3"
+      sources."@types/qs-6.9.7"
+      sources."@types/range-parser-1.2.4"
       (sources."@types/request-2.48.5" // {
         dependencies = [
           sources."form-data-2.5.1"
         ];
       })
-      sources."@types/serve-static-1.13.9"
+      sources."@types/serve-static-1.13.10"
       sources."@types/socket.io-2.1.11"
       sources."@types/socket.io-client-1.4.33"
       sources."@types/sqlite3-3.1.6"
-      sources."@types/tough-cookie-4.0.0"
+      sources."@types/tough-cookie-4.0.1"
       sources."@types/url-join-4.0.0"
       sources."@uifabric/foundation-7.9.26"
       sources."@uifabric/icons-7.5.23"
@@ -76938,10 +78580,10 @@ in
       sources."extsprintf-1.3.0"
       sources."fancy-log-1.3.3"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fast-json-stable-stringify-2.1.0"
       sources."fast-levenshtein-1.1.4"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."figgy-pudding-3.5.2"
       sources."figures-2.0.0"
       sources."file-uri-to-path-1.0.0"
@@ -77135,7 +78777,7 @@ in
       sources."is-arrayish-0.2.1"
       sources."is-binary-path-1.0.1"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-descriptor-1.0.2"
       sources."is-dir-1.0.0"
@@ -77357,7 +78999,7 @@ in
       })
       sources."nan-2.14.2"
       sources."nanomatch-1.2.13"
-      (sources."needle-2.6.0" // {
+      (sources."needle-2.8.0" // {
         dependencies = [
           sources."debug-3.2.7"
           sources."ms-2.1.3"
@@ -77432,7 +79074,7 @@ in
       sources."object.map-1.0.1"
       sources."object.pick-1.3.0"
       sources."object.reduce-1.0.1"
-      sources."office-ui-fabric-react-7.172.1"
+      sources."office-ui-fabric-react-7.173.1"
       sources."on-finished-2.3.0"
       sources."on-headers-1.0.2"
       sources."once-1.4.0"
@@ -77659,7 +79301,7 @@ in
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
-      (sources."sass-1.35.1" // {
+      (sources."sass-1.35.2" // {
         dependencies = [
           sources."anymatch-3.1.2"
           sources."binary-extensions-2.2.0"
@@ -77934,7 +79576,7 @@ in
       })
       sources."url-join-4.0.1"
       sources."url-parse-lax-3.0.0"
-      sources."url-toolkit-2.2.2"
+      sources."url-toolkit-2.2.3"
       sources."use-3.1.1"
       sources."util-0.11.1"
       sources."util-deprecate-1.0.2"
@@ -78029,7 +79671,7 @@ in
         ];
       })
       sources."wrappy-1.0.2"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xmlhttprequest-ssl-1.5.5"
       sources."xtend-4.0.2"
       sources."y18n-3.2.2"
@@ -78075,23 +79717,25 @@ in
   eslint = nodeEnv.buildNodePackage {
     name = "eslint";
     packageName = "eslint";
-    version = "7.29.0";
+    version = "7.31.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/eslint/-/eslint-7.29.0.tgz";
-      sha512 = "82G/JToB9qIy/ArBzIWG9xvvwL3R86AlCjtGw+A29OMZDqhTybz/MByORSukGxeI+YPCR4coYyITKk8BFH9nDA==";
+      url = "https://registry.npmjs.org/eslint/-/eslint-7.31.0.tgz";
+      sha512 = "vafgJpSh2ia8tnTkNUkwxGmnumgckLh5aAbLa1xRmIn9+owi8qBNGKL+B881kNKNTy7FFqTEkpNkUvmw0n6PkA==";
     };
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."chalk-2.4.2"
           sources."escape-string-regexp-1.0.5"
         ];
       })
-      sources."@eslint/eslintrc-0.4.2"
+      sources."@eslint/eslintrc-0.4.3"
+      sources."@humanwhocodes/config-array-0.5.0"
+      sources."@humanwhocodes/object-schema-1.2.0"
       sources."acorn-7.4.1"
-      sources."acorn-jsx-5.3.1"
+      sources."acorn-jsx-5.3.2"
       sources."ajv-6.12.6"
       sources."ansi-colors-4.1.1"
       sources."ansi-regex-5.0.0"
@@ -78150,12 +79794,12 @@ in
       sources."fast-levenshtein-2.0.6"
       sources."file-entry-cache-6.0.1"
       sources."flat-cache-3.0.4"
-      sources."flatted-3.2.0"
+      sources."flatted-3.2.1"
       sources."fs.realpath-1.0.0"
       sources."functional-red-black-tree-1.0.1"
       sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
-      sources."globals-13.9.0"
+      sources."globals-13.10.0"
       sources."has-flag-3.0.0"
       sources."ignore-4.0.6"
       sources."import-fresh-3.3.0"
@@ -78207,7 +79851,7 @@ in
       sources."supports-color-5.5.0"
       (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.6.0"
+          sources."ajv-8.6.2"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -78241,7 +79885,7 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."chalk-2.4.2"
@@ -78250,9 +79894,11 @@ in
           sources."supports-color-5.5.0"
         ];
       })
-      sources."@eslint/eslintrc-0.4.2"
+      sources."@eslint/eslintrc-0.4.3"
+      sources."@humanwhocodes/config-array-0.5.0"
+      sources."@humanwhocodes/object-schema-1.2.0"
       sources."acorn-7.4.1"
-      sources."acorn-jsx-5.3.1"
+      sources."acorn-jsx-5.3.2"
       sources."ajv-6.12.6"
       sources."ansi-colors-4.1.1"
       sources."ansi-regex-5.0.0"
@@ -78281,7 +79927,7 @@ in
       sources."emoji-regex-8.0.0"
       sources."enquirer-2.3.6"
       sources."escape-string-regexp-4.0.0"
-      sources."eslint-7.29.0"
+      sources."eslint-7.31.0"
       sources."eslint-scope-5.1.1"
       (sources."eslint-utils-2.1.0" // {
         dependencies = [
@@ -78312,12 +79958,12 @@ in
       sources."fast-levenshtein-2.0.6"
       sources."file-entry-cache-6.0.1"
       sources."flat-cache-3.0.4"
-      sources."flatted-3.2.0"
+      sources."flatted-3.2.1"
       sources."fs.realpath-1.0.0"
       sources."functional-red-black-tree-1.0.1"
       sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
-      sources."globals-13.9.0"
+      sources."globals-13.10.0"
       sources."has-flag-4.0.0"
       sources."ignore-4.0.6"
       sources."import-fresh-3.3.0"
@@ -78370,7 +80016,7 @@ in
       sources."supports-color-8.1.1"
       (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.6.0"
+          sources."ajv-8.6.2"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -78414,10 +80060,10 @@ in
   expo-cli = nodeEnv.buildNodePackage {
     name = "expo-cli";
     packageName = "expo-cli";
-    version = "4.7.2";
+    version = "4.8.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/expo-cli/-/expo-cli-4.7.2.tgz";
-      sha512 = "svwjCPWCk7KMwGBxYIwSm65ypkTIBvjdfR/v7El3365krTPY6sf5to6hY3+NKWUA9m5IZoUn3LUfpTIOyZIuUQ==";
+      url = "https://registry.npmjs.org/expo-cli/-/expo-cli-4.8.1.tgz";
+      sha512 = "oks/ETtrhNKvw1CjKUxQv9vQFXRPIWb+iWKT1Xmjx111cHLDTKXtmxm8hkYXSJZ8zHgqAndlUTRlTc+tDqRbuw==";
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
@@ -78427,7 +80073,7 @@ in
           sources."semver-5.7.1"
         ];
       })
-      sources."@babel/generator-7.14.5"
+      sources."@babel/generator-7.14.8"
       sources."@babel/helper-annotate-as-pure-7.14.5"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.14.5"
       (sources."@babel/helper-compilation-targets-7.14.5" // {
@@ -78435,7 +80081,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/helper-create-class-features-plugin-7.14.6"
+      sources."@babel/helper-create-class-features-plugin-7.14.8"
       sources."@babel/helper-create-regexp-features-plugin-7.14.5"
       (sources."@babel/helper-define-polyfill-provider-0.2.3" // {
         dependencies = [
@@ -78448,24 +80094,24 @@ in
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-member-expression-to-functions-7.14.7"
       sources."@babel/helper-module-imports-7.14.5"
-      sources."@babel/helper-module-transforms-7.14.5"
+      sources."@babel/helper-module-transforms-7.14.8"
       sources."@babel/helper-optimise-call-expression-7.14.5"
       sources."@babel/helper-plugin-utils-7.14.5"
       sources."@babel/helper-remap-async-to-generator-7.14.5"
       sources."@babel/helper-replace-supers-7.14.5"
-      sources."@babel/helper-simple-access-7.14.5"
+      sources."@babel/helper-simple-access-7.14.8"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.14.5"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/helper-validator-option-7.14.5"
       sources."@babel/helper-wrap-function-7.14.5"
-      sources."@babel/helpers-7.14.6"
+      sources."@babel/helpers-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/plugin-proposal-async-generator-functions-7.14.7"
       sources."@babel/plugin-proposal-class-properties-7.12.13"
       sources."@babel/plugin-proposal-dynamic-import-7.14.5"
@@ -78547,16 +80193,20 @@ in
       })
       sources."@babel/preset-modules-0.1.4"
       sources."@babel/preset-typescript-7.12.17"
-      sources."@babel/runtime-7.14.6"
+      sources."@babel/runtime-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
       sources."@expo/apple-utils-0.0.0-alpha.20"
       sources."@expo/bunyan-4.0.0"
-      sources."@expo/config-5.0.2"
-      sources."@expo/config-plugins-3.0.2"
-      sources."@expo/config-types-41.0.0"
-      (sources."@expo/dev-server-0.1.77" // {
+      sources."@expo/config-5.0.5"
+      (sources."@expo/config-plugins-3.0.5" // {
+        dependencies = [
+          sources."semver-7.3.5"
+        ];
+      })
+      sources."@expo/config-types-42.0.0"
+      (sources."@expo/dev-server-0.1.80" // {
         dependencies = [
           sources."body-parser-1.19.0"
           sources."bytes-3.1.0"
@@ -78573,7 +80223,7 @@ in
           sources."temp-dir-2.0.0"
         ];
       })
-      sources."@expo/dev-tools-0.13.107"
+      sources."@expo/dev-tools-0.13.110"
       (sources."@expo/devcert-1.0.0" // {
         dependencies = [
           sources."debug-3.2.7"
@@ -78581,21 +80231,21 @@ in
           sources."sudo-prompt-8.2.5"
         ];
       })
-      (sources."@expo/image-utils-0.3.14" // {
+      (sources."@expo/image-utils-0.3.15" // {
         dependencies = [
           sources."mime-2.5.2"
           sources."tempy-0.3.0"
         ];
       })
-      (sources."@expo/json-file-8.2.30" // {
+      (sources."@expo/json-file-8.2.31" // {
         dependencies = [
           sources."@babel/code-frame-7.10.4"
           sources."json5-1.0.1"
         ];
       })
-      sources."@expo/metro-config-0.1.77"
-      sources."@expo/osascript-2.0.28"
-      (sources."@expo/package-manager-0.0.43" // {
+      sources."@expo/metro-config-0.1.80"
+      sources."@expo/osascript-2.0.29"
+      (sources."@expo/package-manager-0.0.44" // {
         dependencies = [
           sources."npm-package-arg-7.0.0"
           sources."rimraf-3.0.2"
@@ -78607,18 +80257,19 @@ in
           sources."xmlbuilder-14.0.0"
         ];
       })
-      sources."@expo/prebuild-config-2.0.2"
+      sources."@expo/prebuild-config-2.0.5"
       sources."@expo/results-1.0.0"
-      (sources."@expo/schemer-1.3.29" // {
+      (sources."@expo/schemer-1.3.30" // {
         dependencies = [
           sources."ajv-5.5.2"
           sources."fast-deep-equal-1.1.0"
           sources."json-schema-traverse-0.3.1"
         ];
       })
+      sources."@expo/sdk-runtime-versions-1.0.0"
       sources."@expo/simple-spinner-1.0.2"
       sources."@expo/spawn-async-1.5.0"
-      (sources."@expo/webpack-config-0.12.81" // {
+      (sources."@expo/webpack-config-0.13.1" // {
         dependencies = [
           sources."@babel/runtime-7.9.0"
           sources."react-refresh-0.8.3"
@@ -78630,22 +80281,18 @@ in
           sources."js-yaml-4.1.0"
         ];
       })
-      sources."@hapi/address-4.1.0"
-      sources."@hapi/formula-2.0.0"
+      sources."@hapi/address-2.1.4"
+      sources."@hapi/formula-1.2.0"
       sources."@hapi/hoek-9.2.0"
-      sources."@hapi/joi-17.1.1"
-      sources."@hapi/pinpoint-2.0.0"
-      sources."@hapi/topo-5.1.0"
-      (sources."@jest/types-25.5.0" // {
+      (sources."@hapi/joi-16.1.8" // {
         dependencies = [
-          sources."ansi-styles-4.3.0"
-          sources."chalk-3.0.0"
-          sources."color-convert-2.0.1"
-          sources."color-name-1.1.4"
-          sources."has-flag-4.0.0"
-          sources."supports-color-7.2.0"
+          sources."@hapi/hoek-8.5.1"
+          sources."@hapi/topo-3.1.6"
         ];
       })
+      sources."@hapi/pinpoint-1.0.2"
+      sources."@hapi/topo-5.1.0"
+      sources."@jest/types-26.6.2"
       sources."@jimp/bmp-0.12.1"
       sources."@jimp/core-0.12.1"
       sources."@jimp/custom-0.12.1"
@@ -78679,7 +80326,7 @@ in
       sources."@jimp/utils-0.12.1"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       (sources."@npmcli/git-2.1.0" // {
         dependencies = [
           sources."mkdirp-1.0.4"
@@ -78698,14 +80345,14 @@ in
       sources."@npmcli/promise-spawn-1.3.2"
       sources."@npmcli/run-script-1.8.5"
       sources."@pmmmwh/react-refresh-webpack-plugin-0.3.3"
-      sources."@react-native-community/cli-debugger-ui-4.13.1"
-      (sources."@react-native-community/cli-server-api-4.9.0" // {
+      sources."@react-native-community/cli-debugger-ui-5.0.1"
+      (sources."@react-native-community/cli-server-api-5.0.1" // {
         dependencies = [
           sources."ultron-1.0.2"
           sources."ws-1.1.5"
         ];
       })
-      (sources."@react-native-community/cli-tools-4.13.0" // {
+      (sources."@react-native-community/cli-tools-5.0.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."chalk-3.0.0"
@@ -78719,43 +80366,53 @@ in
           sources."supports-color-7.2.0"
         ];
       })
+      sources."@rollup/plugin-babel-5.3.0"
+      sources."@rollup/plugin-node-resolve-11.2.1"
+      sources."@rollup/plugin-replace-2.4.2"
+      sources."@rollup/pluginutils-3.1.0"
       sources."@segment/loosely-validate-event-2.0.0"
+      sources."@sideway/address-4.1.2"
+      sources."@sideway/formula-3.0.0"
+      sources."@sideway/pinpoint-2.0.0"
       sources."@sindresorhus/is-4.0.1"
-      sources."@szmarczak/http-timer-4.0.5"
+      sources."@surma/rollup-plugin-off-main-thread-1.4.2"
+      sources."@szmarczak/http-timer-4.0.6"
       sources."@tootallnate/once-1.1.2"
-      sources."@types/cacheable-request-6.0.1"
-      sources."@types/glob-7.1.3"
-      sources."@types/html-minifier-terser-5.1.1"
-      sources."@types/http-cache-semantics-4.0.0"
+      sources."@types/cacheable-request-6.0.2"
+      sources."@types/estree-0.0.39"
+      sources."@types/glob-7.1.4"
+      sources."@types/html-minifier-terser-5.1.2"
+      sources."@types/http-cache-semantics-4.0.1"
       sources."@types/istanbul-lib-coverage-2.0.3"
       sources."@types/istanbul-lib-report-3.0.0"
-      sources."@types/istanbul-reports-1.1.2"
-      sources."@types/json-schema-7.0.7"
-      sources."@types/keyv-3.1.1"
-      sources."@types/minimatch-3.0.4"
+      sources."@types/istanbul-reports-3.0.1"
+      sources."@types/json-schema-7.0.8"
+      sources."@types/keyv-3.1.2"
+      sources."@types/minimatch-3.0.5"
       sources."@types/node-9.6.61"
-      sources."@types/q-1.5.4"
+      sources."@types/q-1.5.5"
+      sources."@types/resolve-1.17.1"
       sources."@types/responselike-1.0.0"
-      sources."@types/retry-0.12.0"
+      sources."@types/retry-0.12.1"
       sources."@types/source-list-map-0.1.2"
-      sources."@types/tapable-1.0.7"
-      (sources."@types/uglify-js-3.13.0" // {
+      sources."@types/tapable-1.0.8"
+      (sources."@types/uglify-js-3.13.1" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
       })
-      (sources."@types/webpack-4.41.29" // {
+      (sources."@types/webpack-4.41.30" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
       })
-      (sources."@types/webpack-sources-2.1.0" // {
+      (sources."@types/webpack-sources-2.1.1" // {
         dependencies = [
           sources."source-map-0.7.3"
         ];
       })
-      sources."@types/yargs-15.0.13"
-      sources."@types/yargs-parser-20.2.0"
+      sources."@types/yargs-15.0.14"
+      sources."@types/yargs-parser-20.2.1"
       sources."@webassemblyjs/ast-1.9.0"
       sources."@webassemblyjs/floating-point-hex-parser-1.9.0"
       sources."@webassemblyjs/helper-api-error-1.9.0"
@@ -78853,7 +80510,6 @@ in
       sources."aws4-1.11.0"
       sources."axios-0.21.1"
       sources."axios-retry-3.1.9"
-      sources."babel-extract-comments-1.0.0"
       (sources."babel-loader-8.1.0" // {
         dependencies = [
           sources."json5-1.0.1"
@@ -78868,16 +80524,13 @@ in
       })
       sources."babel-plugin-polyfill-corejs3-0.2.3"
       sources."babel-plugin-polyfill-regenerator-0.2.2"
-      sources."babel-plugin-syntax-object-rest-spread-6.13.0"
       sources."babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0"
-      sources."babel-plugin-transform-object-rest-spread-6.26.0"
       sources."babel-preset-fbjs-3.4.0"
       (sources."babel-runtime-6.26.0" // {
         dependencies = [
           sources."regenerator-runtime-0.11.1"
         ];
       })
-      sources."babylon-6.18.0"
       sources."backo2-1.0.2"
       sources."balanced-match-1.0.2"
       (sources."base-0.11.2" // {
@@ -78937,6 +80590,7 @@ in
       sources."buffer-from-1.1.1"
       sources."buffer-indexof-1.1.1"
       sources."buffer-xor-1.0.3"
+      sources."builtin-modules-3.2.0"
       sources."builtin-status-codes-3.0.0"
       sources."builtins-1.0.3"
       sources."bytes-3.0.0"
@@ -78962,7 +80616,7 @@ in
       })
       sources."camelcase-5.3.1"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       sources."caseless-0.12.0"
       (sources."chalk-4.1.1" // {
         dependencies = [
@@ -79034,10 +80688,10 @@ in
       })
       sources."code-point-at-1.1.0"
       sources."collection-visit-1.0.0"
-      sources."color-3.1.3"
+      sources."color-3.2.1"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."color-string-1.5.5"
+      sources."color-string-1.6.0"
       sources."colorette-1.2.2"
       sources."colors-1.4.0"
       sources."combined-stream-1.0.8"
@@ -79230,7 +80884,8 @@ in
       sources."duplexify-3.7.1"
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.3.765"
+      sources."ejs-2.7.4"
+      sources."electron-to-chromium-1.3.782"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -79273,6 +80928,7 @@ in
         ];
       })
       sources."estraverse-4.3.0"
+      sources."estree-walker-1.0.1"
       sources."esutils-2.0.3"
       sources."etag-1.8.1"
       sources."eventemitter3-2.0.3"
@@ -79307,7 +80963,7 @@ in
           sources."ms-2.0.0"
         ];
       })
-      (sources."expo-pwa-0.0.87" // {
+      (sources."expo-pwa-0.0.90" // {
         dependencies = [
           sources."commander-2.20.0"
         ];
@@ -79332,9 +80988,9 @@ in
       })
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."faye-websocket-0.10.0"
       sources."figgy-pudding-3.5.2"
       sources."figures-3.2.0"
@@ -79459,7 +81115,6 @@ in
       sources."he-1.2.0"
       sources."hex-color-regex-1.1.0"
       sources."hmac-drbg-1.0.1"
-      sources."hoek-4.2.1"
       sources."hosted-git-info-3.0.8"
       sources."hpack.js-2.1.6"
       sources."hsl-regex-1.0.0"
@@ -79542,7 +81197,7 @@ in
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.3"
       sources."is-color-stop-1.1.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-date-object-1.0.4"
       sources."is-descriptor-1.0.2"
@@ -79560,6 +81215,7 @@ in
         ];
       })
       sources."is-lambda-1.0.1"
+      sources."is-module-1.0.0"
       sources."is-negative-zero-2.0.1"
       sources."is-number-7.0.0"
       sources."is-number-object-1.0.5"
@@ -79609,7 +81265,6 @@ in
       sources."is-windows-1.0.2"
       sources."is-wsl-2.2.0"
       sources."isarray-1.0.0"
-      sources."isemail-3.2.0"
       sources."isexe-2.0.0"
       sources."isobject-3.0.1"
       sources."isstream-0.1.2"
@@ -79621,7 +81276,7 @@ in
         ];
       })
       sources."jimp-0.12.1"
-      sources."joi-11.4.0"
+      sources."joi-17.4.1"
       sources."join-component-1.1.0"
       sources."jpeg-js-0.4.3"
       sources."js-tokens-4.0.0"
@@ -79643,7 +81298,6 @@ in
         ];
       })
       sources."json-schema-traverse-0.4.1"
-      sources."json-stable-stringify-1.0.1"
       sources."json-stringify-safe-5.0.1"
       sources."json3-3.3.3"
       sources."json5-2.2.0"
@@ -79668,14 +81322,12 @@ in
       sources."loader-utils-2.0.0"
       sources."locate-path-6.0.0"
       sources."lodash-4.17.21"
-      sources."lodash._reinterpolate-3.0.0"
       sources."lodash.assign-4.2.0"
       sources."lodash.debounce-4.0.8"
       sources."lodash.isobject-3.0.2"
       sources."lodash.isstring-4.0.1"
       sources."lodash.memoize-4.1.2"
-      sources."lodash.template-4.5.0"
-      sources."lodash.templatesettings-4.2.0"
+      sources."lodash.sortby-4.7.0"
       sources."lodash.uniq-4.5.0"
       (sources."log-symbols-2.2.0" // {
         dependencies = [
@@ -79691,12 +81343,13 @@ in
       })
       sources."lowercase-keys-2.0.0"
       sources."lru-cache-6.0.0"
+      sources."magic-string-0.25.7"
       (sources."make-dir-2.1.0" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
       })
-      (sources."make-fetch-happen-9.0.3" // {
+      (sources."make-fetch-happen-9.0.4" // {
         dependencies = [
           sources."minipass-3.1.3"
         ];
@@ -79754,7 +81407,7 @@ in
           sources."minipass-3.1.3"
         ];
       })
-      (sources."minipass-fetch-1.3.3" // {
+      (sources."minipass-fetch-1.3.4" // {
         dependencies = [
           sources."minipass-3.1.3"
         ];
@@ -79805,7 +81458,7 @@ in
       sources."nanomatch-1.2.13"
       sources."native-url-0.2.6"
       sources."ncp-2.0.0"
-      (sources."needle-2.6.0" // {
+      (sources."needle-2.8.0" // {
         dependencies = [
           sources."debug-3.2.7"
         ];
@@ -79819,6 +81472,7 @@ in
           sources."tslib-2.3.0"
         ];
       })
+      sources."nocache-2.1.0"
       sources."node-fetch-2.6.1"
       sources."node-forge-0.10.0"
       (sources."node-gyp-7.1.2" // {
@@ -79883,7 +81537,7 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object-visit-1.0.1"
@@ -79953,7 +81607,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      (sources."pacote-11.3.4" // {
+      (sources."pacote-11.3.5" // {
         dependencies = [
           sources."hosted-git-info-4.0.2"
           sources."minipass-3.1.3"
@@ -80027,7 +81681,7 @@ in
       })
       sources."plist-3.0.2"
       sources."pngjs-3.4.0"
-      sources."pnp-webpack-plugin-1.6.4"
+      sources."pnp-webpack-plugin-1.7.0"
       (sources."portfinder-1.0.28" // {
         dependencies = [
           sources."async-2.6.3"
@@ -80160,7 +81814,7 @@ in
       sources."prepend-http-3.0.1"
       sources."pretty-bytes-5.6.0"
       sources."pretty-error-2.1.2"
-      (sources."pretty-format-25.5.0" // {
+      (sources."pretty-format-26.6.2" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."color-convert-2.0.1"
@@ -80231,7 +81885,7 @@ in
         ];
       })
       sources."react-error-overlay-6.0.9"
-      sources."react-is-16.13.1"
+      sources."react-is-17.0.2"
       sources."react-refresh-0.4.3"
       sources."read-chunk-3.2.0"
       sources."read-last-lines-1.6.0"
@@ -80283,7 +81937,7 @@ in
       })
       sources."requires-port-1.0.0"
       sources."resolve-1.20.0"
-      sources."resolve-alpn-1.1.2"
+      sources."resolve-alpn-1.2.0"
       (sources."resolve-cwd-2.0.0" // {
         dependencies = [
           sources."resolve-from-3.0.0"
@@ -80304,6 +81958,19 @@ in
         ];
       })
       sources."ripemd160-2.0.2"
+      sources."rollup-2.53.3"
+      (sources."rollup-plugin-terser-7.0.2" // {
+        dependencies = [
+          sources."commander-2.20.3"
+          sources."source-map-0.7.3"
+          (sources."source-map-support-0.5.19" // {
+            dependencies = [
+              sources."source-map-0.6.1"
+            ];
+          })
+          sources."terser-5.7.1"
+        ];
+      })
       sources."router-ips-1.0.0"
       sources."run-parallel-1.2.0"
       sources."run-queue-1.0.3"
@@ -80361,7 +82028,7 @@ in
           sources."uuid-2.0.3"
         ];
       })
-      sources."slugify-1.5.3"
+      sources."slugify-1.6.0"
       sources."smart-buffer-4.1.0"
       (sources."snapdragon-0.8.2" // {
         dependencies = [
@@ -80411,6 +82078,7 @@ in
       sources."source-map-resolve-0.5.3"
       sources."source-map-support-0.4.18"
       sources."source-map-url-0.4.1"
+      sources."sourcemap-codec-1.4.8"
       sources."spdy-4.0.2"
       (sources."spdy-transport-3.0.0" // {
         dependencies = [
@@ -80474,7 +82142,7 @@ in
         ];
       })
       sources."strip-ansi-6.0.0"
-      sources."strip-comments-1.0.2"
+      sources."strip-comments-2.0.1"
       sources."strip-eof-1.0.0"
       sources."strip-json-comments-2.0.1"
       sources."style-loader-1.2.1"
@@ -80572,8 +82240,8 @@ in
       sources."to-regex-3.0.2"
       sources."to-regex-range-5.0.1"
       sources."toidentifier-1.0.0"
-      sources."topo-2.0.2"
       sources."tough-cookie-2.5.0"
+      sources."tr46-1.0.1"
       sources."traverse-0.6.6"
       sources."tree-kill-1.2.2"
       sources."ts-invariant-0.4.4"
@@ -80625,7 +82293,7 @@ in
       sources."url-join-4.0.0"
       (sources."url-loader-4.1.1" // {
         dependencies = [
-          sources."schema-utils-3.0.0"
+          sources."schema-utils-3.1.1"
         ];
       })
       sources."url-parse-1.5.1"
@@ -80676,6 +82344,7 @@ in
       })
       sources."wbuf-1.7.3"
       sources."wcwidth-1.0.1"
+      sources."webidl-conversions-4.0.2"
       (sources."webpack-4.43.0" // {
         dependencies = [
           sources."braces-2.3.2"
@@ -80805,6 +82474,7 @@ in
       })
       sources."websocket-driver-0.6.5"
       sources."websocket-extensions-0.1.4"
+      sources."whatwg-url-7.1.0"
       sources."which-1.3.1"
       sources."which-boxed-primitive-1.0.2"
       sources."which-module-2.0.0"
@@ -80817,28 +82487,40 @@ in
       })
       sources."widest-line-3.1.0"
       sources."with-open-file-0.1.7"
-      sources."workbox-background-sync-3.6.3"
-      sources."workbox-broadcast-cache-update-3.6.3"
-      (sources."workbox-build-3.6.3" // {
+      sources."workbox-background-sync-6.1.5"
+      sources."workbox-broadcast-update-6.1.5"
+      (sources."workbox-build-6.1.5" // {
         dependencies = [
-          sources."fs-extra-4.0.3"
-          sources."jsonfile-4.0.0"
-          sources."pretty-bytes-4.0.2"
-          sources."universalify-0.1.2"
+          (sources."@babel/core-7.14.8" // {
+            dependencies = [
+              sources."source-map-0.5.7"
+            ];
+          })
+          sources."crypto-random-string-2.0.0"
+          sources."fs-extra-9.1.0"
+          sources."semver-6.3.0"
+          sources."source-map-0.8.0-beta.0"
+          sources."temp-dir-2.0.0"
+          sources."tempy-0.6.0"
+          sources."type-fest-0.16.0"
+          sources."unique-string-2.0.0"
+          sources."universalify-2.0.0"
         ];
       })
-      sources."workbox-cache-expiration-3.6.3"
-      sources."workbox-cacheable-response-3.6.3"
-      sources."workbox-core-3.6.3"
-      sources."workbox-google-analytics-3.6.3"
-      sources."workbox-navigation-preload-3.6.3"
-      sources."workbox-precaching-3.6.3"
-      sources."workbox-range-requests-3.6.3"
-      sources."workbox-routing-3.6.3"
-      sources."workbox-strategies-3.6.3"
-      sources."workbox-streams-3.6.3"
-      sources."workbox-sw-3.6.3"
-      sources."workbox-webpack-plugin-3.6.3"
+      sources."workbox-cacheable-response-6.1.5"
+      sources."workbox-core-6.1.5"
+      sources."workbox-expiration-6.1.5"
+      sources."workbox-google-analytics-6.1.5"
+      sources."workbox-navigation-preload-6.1.5"
+      sources."workbox-precaching-6.1.5"
+      sources."workbox-range-requests-6.1.5"
+      sources."workbox-recipes-6.1.5"
+      sources."workbox-routing-6.1.5"
+      sources."workbox-strategies-6.1.5"
+      sources."workbox-streams-6.1.5"
+      sources."workbox-sw-6.1.5"
+      sources."workbox-webpack-plugin-6.1.5"
+      sources."workbox-window-6.1.5"
       sources."worker-farm-1.7.0"
       (sources."worker-loader-2.0.0" // {
         dependencies = [
@@ -80863,7 +82545,7 @@ in
           sources."uuid-7.0.3"
         ];
       })
-      (sources."xdl-59.0.47" // {
+      (sources."xdl-59.0.50" // {
         dependencies = [
           sources."chownr-1.1.4"
           sources."fs-minipass-1.2.7"
@@ -80914,184 +82596,274 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
-  "fast-cli-1.x" = nodeEnv.buildNodePackage {
+  fast-cli = nodeEnv.buildNodePackage {
     name = "fast-cli";
     packageName = "fast-cli";
-    version = "1.0.0";
+    version = "3.0.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/fast-cli/-/fast-cli-1.0.0.tgz";
-      sha1 = "81f5f98043cc2517053f96ba5d61ef5db430c010";
+      url = "https://registry.npmjs.org/fast-cli/-/fast-cli-3.0.1.tgz";
+      sha512 = "QT3uBdxjHiXEz8iSAUJezETjKgTEP0PicHk36ga2veZHmIpqU5k+M0z1bmZ5G+EJHCN84o4w++fngJIgcj1Nqw==";
     };
     dependencies = [
-      sources."ajv-6.12.6"
-      sources."ansi-escapes-1.4.0"
-      sources."ansi-regex-2.1.1"
-      sources."ansi-styles-2.2.1"
-      sources."array-find-index-1.0.2"
-      sources."asn1-0.2.4"
-      sources."assert-plus-1.0.0"
-      sources."asynckit-0.4.0"
-      sources."aws-sign2-0.7.0"
-      sources."aws4-1.11.0"
-      sources."bcrypt-pbkdf-1.0.2"
+      sources."@babel/code-frame-7.14.5"
+      sources."@babel/compat-data-7.14.7"
+      sources."@babel/core-7.14.8"
+      sources."@babel/generator-7.14.8"
+      sources."@babel/helper-annotate-as-pure-7.14.5"
+      sources."@babel/helper-compilation-targets-7.14.5"
+      sources."@babel/helper-function-name-7.14.5"
+      sources."@babel/helper-get-function-arity-7.14.5"
+      sources."@babel/helper-hoist-variables-7.14.5"
+      sources."@babel/helper-member-expression-to-functions-7.14.7"
+      sources."@babel/helper-module-imports-7.14.5"
+      sources."@babel/helper-module-transforms-7.14.8"
+      sources."@babel/helper-optimise-call-expression-7.14.5"
+      sources."@babel/helper-plugin-utils-7.14.5"
+      sources."@babel/helper-replace-supers-7.14.5"
+      sources."@babel/helper-simple-access-7.14.8"
+      sources."@babel/helper-split-export-declaration-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
+      sources."@babel/helper-validator-option-7.14.5"
+      sources."@babel/helpers-7.14.8"
+      sources."@babel/highlight-7.14.5"
+      sources."@babel/parser-7.14.8"
+      sources."@babel/plugin-proposal-object-rest-spread-7.14.7"
+      sources."@babel/plugin-syntax-jsx-7.14.5"
+      sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
+      sources."@babel/plugin-transform-destructuring-7.14.7"
+      sources."@babel/plugin-transform-parameters-7.14.5"
+      sources."@babel/plugin-transform-react-jsx-7.14.5"
+      sources."@babel/template-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
+      sources."@types/minimist-1.2.2"
+      sources."@types/node-16.4.0"
+      sources."@types/normalize-package-data-2.4.1"
+      sources."@types/yauzl-2.9.2"
+      sources."@types/yoga-layout-1.9.2"
+      sources."agent-base-6.0.2"
+      (sources."ansi-escapes-4.3.2" // {
+        dependencies = [
+          sources."type-fest-0.21.3"
+        ];
+      })
+      sources."ansi-regex-5.0.0"
+      sources."ansi-styles-3.2.1"
+      sources."arrify-1.0.1"
+      sources."astral-regex-2.0.0"
+      sources."auto-bind-4.0.0"
+      sources."balanced-match-1.0.2"
+      sources."base64-js-1.5.1"
+      sources."bl-4.1.0"
+      sources."brace-expansion-1.1.11"
+      sources."browserslist-4.16.6"
+      sources."buffer-5.7.1"
       sources."buffer-crc32-0.2.13"
-      sources."buffer-from-1.1.1"
-      sources."camelcase-2.1.1"
-      sources."camelcase-keys-2.1.0"
-      sources."caseless-0.12.0"
-      sources."chalk-1.1.3"
-      sources."cli-cursor-1.0.2"
-      sources."cli-spinners-1.3.1"
-      sources."co-4.6.0"
+      sources."caller-callsite-2.0.0"
+      sources."caller-path-2.0.0"
+      sources."callsites-2.0.0"
+      sources."camelcase-5.3.1"
+      sources."camelcase-keys-6.2.2"
+      sources."caniuse-lite-1.0.30001246"
+      sources."chalk-2.4.2"
+      sources."chownr-1.1.4"
+      sources."ci-info-2.0.0"
+      sources."cli-boxes-2.2.1"
+      sources."cli-cursor-3.1.0"
+      sources."cli-spinners-2.6.0"
+      sources."cli-truncate-2.1.0"
+      sources."code-excerpt-3.0.0"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."combined-stream-1.0.8"
-      sources."concat-stream-1.6.2"
-      sources."core-util-is-1.0.2"
-      sources."currently-unhandled-0.4.1"
-      sources."dashdash-1.14.1"
-      sources."debug-2.6.9"
+      sources."colorette-1.2.2"
+      sources."commondir-1.0.1"
+      sources."concat-map-0.0.1"
+      sources."convert-source-map-1.8.0"
+      sources."convert-to-spaces-1.0.2"
+      sources."debug-4.3.2"
       sources."decamelize-1.2.0"
-      sources."delayed-stream-1.0.0"
-      sources."ecc-jsbn-0.1.2"
+      (sources."decamelize-keys-1.1.0" // {
+        dependencies = [
+          sources."map-obj-1.0.1"
+        ];
+      })
+      sources."delay-5.0.0"
+      sources."devtools-protocol-0.0.869402"
+      sources."electron-to-chromium-1.3.782"
+      sources."emoji-regex-8.0.0"
+      sources."end-of-stream-1.4.4"
       sources."error-ex-1.3.2"
-      sources."es6-promise-4.2.8"
+      sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
-      sources."exit-hook-1.1.1"
-      sources."extend-3.0.2"
-      sources."extract-zip-1.7.0"
-      sources."extsprintf-1.3.0"
-      sources."fast-deep-equal-3.1.3"
-      sources."fast-json-stable-stringify-2.1.0"
+      sources."extract-zip-2.0.1"
       sources."fd-slicer-1.1.0"
-      sources."find-up-1.1.2"
-      sources."forever-agent-0.6.1"
-      sources."form-data-2.3.3"
-      sources."fs-extra-1.0.0"
+      sources."find-cache-dir-3.3.1"
+      sources."find-up-4.1.0"
+      sources."fs-constants-1.0.0"
+      sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
-      sources."get-stdin-4.0.1"
-      sources."getpass-0.1.7"
-      sources."graceful-fs-4.2.6"
-      sources."har-schema-2.0.0"
-      sources."har-validator-5.1.5"
+      sources."gensync-1.0.0-beta.2"
+      sources."get-stream-5.2.0"
+      sources."glob-7.1.7"
+      sources."globals-11.12.0"
+      sources."hard-rejection-2.1.0"
       sources."has-1.0.3"
-      sources."has-ansi-2.0.0"
       sources."has-flag-3.0.0"
-      sources."hasha-2.2.0"
-      sources."hosted-git-info-2.8.9"
-      sources."http-signature-1.2.0"
-      sources."indent-string-2.1.0"
+      sources."hosted-git-info-4.0.2"
+      sources."https-proxy-agent-5.0.0"
+      sources."ieee754-1.2.1"
+      sources."import-jsx-4.0.0"
+      sources."indent-string-4.0.0"
+      sources."inflight-1.0.6"
       sources."inherits-2.0.4"
+      (sources."ink-3.0.9" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.1"
+          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."ink-spinner-4.0.2"
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.4.0"
-      sources."is-finite-1.1.0"
-      sources."is-stream-1.1.0"
-      sources."is-typedarray-1.0.0"
-      sources."is-utf8-0.2.1"
-      sources."isarray-1.0.0"
-      sources."isexe-2.0.0"
-      sources."isstream-0.1.2"
-      sources."jsbn-0.1.1"
-      sources."json-schema-0.2.3"
-      sources."json-schema-traverse-0.4.1"
-      sources."json-stringify-safe-5.0.1"
-      sources."jsonfile-2.4.0"
-      sources."jsprim-1.4.1"
-      sources."kew-0.7.0"
-      sources."klaw-1.3.1"
-      sources."load-json-file-1.1.0"
-      (sources."log-symbols-2.2.0" // {
+      sources."is-ci-2.0.0"
+      sources."is-core-module-2.5.0"
+      sources."is-fullwidth-code-point-3.0.0"
+      sources."is-plain-obj-1.1.0"
+      sources."js-tokens-4.0.0"
+      sources."jsesc-2.5.2"
+      sources."json-parse-even-better-errors-2.3.1"
+      sources."json5-2.2.0"
+      sources."kind-of-6.0.3"
+      sources."lines-and-columns-1.1.6"
+      sources."locate-path-5.0.0"
+      sources."lodash-4.17.21"
+      sources."loose-envify-1.4.0"
+      sources."lru-cache-6.0.0"
+      sources."make-dir-3.1.0"
+      sources."map-obj-4.2.1"
+      (sources."meow-9.0.0" // {
         dependencies = [
-          sources."ansi-styles-3.2.1"
-          sources."chalk-2.4.2"
-          sources."supports-color-5.5.0"
+          sources."type-fest-0.18.1"
         ];
       })
-      sources."log-update-1.0.2"
-      sources."loud-rejection-1.6.0"
-      sources."map-obj-1.0.1"
-      sources."meow-3.7.0"
-      sources."mime-db-1.48.0"
-      sources."mime-types-2.1.31"
-      sources."mimic-fn-1.2.0"
+      sources."mimic-fn-2.1.0"
+      sources."min-indent-1.0.1"
+      sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
-      sources."mkpath-1.0.0"
-      sources."ms-2.0.0"
-      sources."node-phantom-simple-2.2.4"
-      sources."normalize-package-data-2.5.0"
-      sources."oauth-sign-0.9.0"
-      sources."object-assign-4.1.1"
-      sources."onetime-1.1.0"
-      (sources."ora-1.4.0" // {
+      sources."minimist-options-4.1.0"
+      sources."mkdirp-classic-0.5.3"
+      sources."ms-2.1.2"
+      sources."node-fetch-2.6.1"
+      sources."node-releases-1.1.73"
+      (sources."normalize-package-data-3.0.2" // {
         dependencies = [
-          sources."ansi-styles-3.2.1"
-          sources."chalk-2.4.2"
-          sources."cli-cursor-2.1.0"
-          sources."onetime-2.0.1"
-          sources."restore-cursor-2.0.0"
-          sources."supports-color-5.5.0"
+          sources."semver-7.3.5"
         ];
       })
-      sources."os-tmpdir-1.0.2"
-      sources."parse-json-2.2.0"
-      sources."path-exists-2.1.0"
+      sources."object-assign-4.1.1"
+      sources."once-1.4.0"
+      sources."onetime-5.1.2"
+      sources."p-limit-2.3.0"
+      sources."p-locate-4.1.0"
+      sources."p-try-2.2.0"
+      sources."parse-json-5.2.0"
+      sources."patch-console-1.0.0"
+      sources."path-exists-4.0.0"
+      sources."path-is-absolute-1.0.1"
       sources."path-parse-1.0.7"
-      sources."path-type-1.1.0"
       sources."pend-1.2.0"
-      sources."performance-now-2.1.0"
-      sources."phantomjs-prebuilt-2.1.16"
-      sources."pify-2.3.0"
-      sources."pinkie-2.0.4"
-      sources."pinkie-promise-2.0.1"
-      sources."process-nextick-args-2.0.1"
-      sources."progress-1.1.8"
-      sources."promise-phantom-3.1.6"
-      sources."psl-1.8.0"
-      sources."punycode-2.1.1"
-      sources."qs-6.5.2"
-      sources."read-pkg-1.1.0"
-      sources."read-pkg-up-1.0.1"
-      sources."readable-stream-2.3.7"
-      sources."redent-1.0.0"
-      sources."repeating-2.0.1"
-      sources."request-2.88.2"
-      sources."request-progress-2.0.1"
+      sources."pkg-dir-4.2.0"
+      sources."progress-2.0.3"
+      sources."prop-types-15.7.2"
+      sources."proxy-from-env-1.1.0"
+      sources."pump-3.0.0"
+      sources."puppeteer-9.1.1"
+      sources."quick-lru-4.0.1"
+      sources."react-16.14.0"
+      sources."react-devtools-core-4.14.0"
+      sources."react-is-16.13.1"
+      sources."react-reconciler-0.24.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"
+        ];
+      })
+      (sources."read-pkg-up-7.0.1" // {
+        dependencies = [
+          sources."type-fest-0.8.1"
+        ];
+      })
+      sources."readable-stream-3.6.0"
+      sources."redent-3.0.0"
       sources."resolve-1.20.0"
-      sources."restore-cursor-1.0.1"
+      sources."resolve-from-3.0.0"
+      sources."restore-cursor-3.1.0"
+      sources."rimraf-3.0.2"
       sources."safe-buffer-5.1.2"
-      sources."safer-buffer-2.1.2"
-      sources."semver-5.7.1"
+      sources."scheduler-0.18.0"
+      sources."semver-6.3.0"
+      sources."shell-quote-1.7.2"
       sources."signal-exit-3.0.3"
+      (sources."slice-ansi-3.0.0" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+        ];
+      })
+      sources."source-map-0.5.7"
       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.9"
-      sources."sshpk-1.16.1"
-      sources."string_decoder-1.1.1"
-      sources."strip-ansi-3.0.1"
-      sources."strip-bom-2.0.0"
-      sources."strip-indent-1.0.1"
-      sources."supports-color-2.0.0"
-      sources."throttleit-1.0.0"
-      sources."tmp-0.0.31"
-      sources."tough-cookie-2.5.0"
-      sources."trim-newlines-1.0.0"
-      sources."tunnel-agent-0.6.0"
-      sources."tweetnacl-0.14.5"
-      sources."typedarray-0.0.6"
-      sources."uri-js-4.4.1"
+      (sources."stack-utils-2.0.3" // {
+        dependencies = [
+          sources."escape-string-regexp-2.0.0"
+        ];
+      })
+      sources."string-width-4.2.2"
+      (sources."string_decoder-1.3.0" // {
+        dependencies = [
+          sources."safe-buffer-5.2.1"
+        ];
+      })
+      sources."strip-ansi-6.0.0"
+      sources."strip-indent-3.0.0"
+      sources."supports-color-5.5.0"
+      sources."tar-fs-2.1.1"
+      sources."tar-stream-2.2.0"
+      sources."through-2.3.8"
+      sources."to-fast-properties-2.0.0"
+      sources."trim-newlines-3.0.1"
+      sources."type-fest-0.12.0"
+      sources."unbzip2-stream-1.4.3"
       sources."util-deprecate-1.0.2"
-      sources."uuid-3.4.0"
       sources."validate-npm-package-license-3.0.4"
-      sources."verror-1.10.0"
-      sources."which-1.3.1"
+      sources."widest-line-3.1.0"
+      (sources."wrap-ansi-6.2.0" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+        ];
+      })
+      sources."wrappy-1.0.2"
+      sources."ws-7.5.3"
+      sources."yallist-4.0.0"
+      sources."yargs-parser-20.2.9"
       sources."yauzl-2.10.0"
-      sources."zen-observable-0.5.2"
+      sources."yoga-layout-prebuilt-1.10.0"
+      sources."zen-observable-0.8.15"
     ];
     buildInputs = globalBuildInputs;
     meta = {
-      description = "Test your download speed using fast.com";
+      description = "Test your download and upload speed using fast.com";
       homepage = "https://github.com/sindresorhus/fast-cli#readme";
       license = "MIT";
     };
@@ -81109,17 +82881,17 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/generator-7.14.5"
+      sources."@babel/generator-7.14.8"
       sources."@babel/helper-function-name-7.14.5"
       sources."@babel/helper-get-function-arity-7.14.5"
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
       (sources."@heroku-cli/color-1.1.14" // {
         dependencies = [
           sources."ansi-regex-4.1.0"
@@ -81132,7 +82904,7 @@ in
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       (sources."@oclif/command-1.8.0" // {
         dependencies = [
           sources."@oclif/plugin-help-3.2.2"
@@ -81155,7 +82927,7 @@ in
           sources."tslib-2.3.0"
         ];
       })
-      sources."@oclif/errors-1.3.4"
+      sources."@oclif/errors-1.3.5"
       sources."@oclif/linewrap-1.0.0"
       sources."@oclif/parser-3.8.5"
       (sources."@oclif/plugin-autocomplete-0.1.5" // {
@@ -81357,10 +83129,10 @@ in
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
       sources."fast-diff-1.2.0"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fast-json-stable-stringify-2.1.0"
       sources."fast-levenshtein-2.0.6"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       (sources."faunadb-4.3.0" // {
         dependencies = [
           sources."chalk-4.1.1"
@@ -81455,7 +83227,7 @@ in
       sources."into-stream-3.1.0"
       sources."is-accessor-descriptor-1.0.0"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-descriptor-1.0.2"
       sources."is-docker-2.2.1"
@@ -81721,10 +83493,10 @@ in
   firebase-tools = nodeEnv.buildNodePackage {
     name = "firebase-tools";
     packageName = "firebase-tools";
-    version = "9.14.0";
+    version = "9.16.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/firebase-tools/-/firebase-tools-9.14.0.tgz";
-      sha512 = "CHR1Xw5LJ+hDQ/SaRqvuNXJEmpbPsOEtNRj6oD44VFGRp9ZTjY3irilSj6uv7S2P1A1XLEGyO7jEpCH5mkc9RQ==";
+      url = "https://registry.npmjs.org/firebase-tools/-/firebase-tools-9.16.0.tgz";
+      sha512 = "H/zyDDrQuZKM6ZFyI8t2kDEC+/Ewhk771sM8NLZyEXIQnX5qKAwhi3sJUB+5yrXt+SJQYqUYksBLK6/gqxe9Eg==";
     };
     dependencies = [
       (sources."@apidevtools/json-schema-ref-parser-9.0.9" // {
@@ -81737,12 +83509,12 @@ in
       sources."@google-cloud/precise-date-2.0.3"
       sources."@google-cloud/projectify-2.1.0"
       sources."@google-cloud/promisify-2.0.3"
-      (sources."@google-cloud/pubsub-2.15.1" // {
+      (sources."@google-cloud/pubsub-2.16.1" // {
         dependencies = [
-          sources."google-auth-library-7.2.0"
+          sources."google-auth-library-7.3.0"
         ];
       })
-      sources."@grpc/grpc-js-1.3.4"
+      sources."@grpc/grpc-js-1.3.6"
       sources."@grpc/proto-loader-0.6.4"
       sources."@jsdevtools/ono-7.1.3"
       (sources."@npmcli/move-file-1.1.2" // {
@@ -81765,13 +83537,13 @@ in
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@tootallnate/once-1.1.2"
-      sources."@types/archiver-5.1.0"
+      sources."@types/archiver-5.3.0"
       sources."@types/duplexify-3.6.0"
-      sources."@types/glob-7.1.3"
-      sources."@types/json-schema-7.0.7"
+      sources."@types/glob-7.1.4"
+      sources."@types/json-schema-7.0.8"
       sources."@types/long-4.0.1"
-      sources."@types/minimatch-3.0.4"
-      sources."@types/node-15.14.0"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/node-16.4.0"
       sources."JSONStream-1.3.5"
       sources."abbrev-1.1.1"
       sources."abort-controller-3.0.0"
@@ -81779,11 +83551,7 @@ in
       sources."agent-base-6.0.2"
       sources."agentkeepalive-4.1.4"
       sources."aggregate-error-3.1.0"
-      (sources."ajv-6.12.6" // {
-        dependencies = [
-          sources."json-schema-traverse-0.4.1"
-        ];
-      })
+      sources."ajv-6.12.6"
       (sources."ansi-align-3.0.0" // {
         dependencies = [
           sources."ansi-regex-4.1.0"
@@ -81914,7 +83682,7 @@ in
       })
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
-      sources."color-string-1.5.5"
+      sources."color-string-1.6.0"
       sources."colors-1.0.3"
       sources."colorspace-1.1.2"
       sources."combined-stream-1.0.8"
@@ -81991,7 +83759,7 @@ in
         ];
       })
       sources."duplexer3-0.1.4"
-      sources."duplexify-4.1.1"
+      sources."duplexify-4.1.2"
       sources."ecc-jsbn-0.1.2"
       sources."ecdsa-sig-formatter-1.0.11"
       sources."ee-first-1.1.1"
@@ -82024,6 +83792,7 @@ in
       sources."events-listener-1.1.0"
       (sources."exegesis-2.5.7" // {
         dependencies = [
+          sources."json-schema-traverse-1.0.0"
           sources."semver-7.3.5"
         ];
       })
@@ -82048,7 +83817,7 @@ in
       sources."fast-deep-equal-3.1.3"
       sources."fast-json-stable-stringify-2.1.0"
       sources."fast-levenshtein-2.0.6"
-      sources."fast-safe-stringify-2.0.7"
+      sources."fast-safe-stringify-2.0.8"
       sources."fast-text-encoding-1.0.3"
       (sources."fast-url-parser-1.1.3" // {
         dependencies = [
@@ -82123,9 +83892,9 @@ in
       sources."glob-slasher-1.0.1"
       sources."global-dirs-2.1.0"
       sources."google-auth-library-6.1.6"
-      (sources."google-gax-2.17.0" // {
+      (sources."google-gax-2.19.0" // {
         dependencies = [
-          sources."google-auth-library-7.2.0"
+          sources."google-auth-library-7.3.0"
         ];
       })
       sources."google-p12-pem-3.1.0"
@@ -82218,7 +83987,7 @@ in
       sources."json-parse-helpfulerror-1.0.3"
       sources."json-ptr-2.2.0"
       sources."json-schema-0.2.3"
-      sources."json-schema-traverse-1.0.0"
+      sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsonfile-4.0.0"
       sources."jsonparse-1.3.1"
@@ -82301,7 +84070,7 @@ in
       sources."minimist-1.2.5"
       sources."minipass-3.1.3"
       sources."minipass-collect-1.0.2"
-      sources."minipass-fetch-1.3.3"
+      sources."minipass-fetch-1.3.4"
       sources."minipass-flush-1.0.5"
       sources."minipass-pipeline-1.2.4"
       sources."minipass-sized-1.0.3"
@@ -82423,7 +84192,7 @@ in
       sources."responselike-1.0.2"
       sources."restore-cursor-2.0.0"
       sources."retry-0.12.0"
-      sources."retry-request-4.2.1"
+      sources."retry-request-4.2.2"
       sources."rimraf-3.0.2"
       (sources."router-1.3.5" // {
         dependencies = [
@@ -82620,7 +84389,7 @@ in
       sources."wrap-ansi-7.0.0"
       sources."wrappy-1.0.2"
       sources."write-file-atomic-3.0.3"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xdg-basedir-4.0.0"
       sources."xregexp-2.0.0"
       sources."xtend-4.0.2"
@@ -82693,14 +84462,14 @@ in
   fkill-cli = nodeEnv.buildNodePackage {
     name = "fkill-cli";
     packageName = "fkill-cli";
-    version = "6.1.0";
+    version = "6.2.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/fkill-cli/-/fkill-cli-6.1.0.tgz";
-      sha512 = "untVuHgEQjwTXQGiWcwMTi0Uks6ht9R5hb1mDT4AEQitZ/z8UrhvseQsGEC3kVEjfxQ6bdmCMaA/hKTZ5aQDrA==";
+      url = "https://registry.npmjs.org/fkill-cli/-/fkill-cli-6.2.0.tgz";
+      sha512 = "HFv/ywCzDAVCxq1IL++lB96zxnUwspScZjqcWown87KPfWng3eJi+BDgXMie9PboXikxOcFoqfd+jJQHDgV3EQ==";
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -82711,8 +84480,8 @@ in
           sources."supports-color-5.5.0"
         ];
       })
-      sources."@types/minimist-1.2.1"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@types/minimist-1.2.2"
+      sources."@types/normalize-package-data-2.4.1"
       sources."aggregate-error-3.1.0"
       sources."ansi-escapes-4.3.2"
       sources."ansi-regex-5.0.0"
@@ -82745,7 +84514,7 @@ in
       sources."external-editor-3.1.0"
       sources."figures-3.2.0"
       sources."find-up-4.1.0"
-      sources."fkill-7.1.1"
+      sources."fkill-7.2.1"
       sources."function-bind-1.1.1"
       sources."get-stream-6.0.1"
       sources."hard-rejection-2.1.0"
@@ -82758,7 +84527,7 @@ in
       sources."inquirer-7.3.3"
       sources."inquirer-autocomplete-prompt-1.4.0"
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-plain-obj-1.1.0"
       sources."is-stream-2.0.0"
@@ -82800,7 +84569,7 @@ in
       sources."path-key-3.1.1"
       sources."path-parse-1.0.7"
       sources."pid-port-0.1.1"
-      (sources."process-exists-4.0.0" // {
+      (sources."process-exists-4.1.0" // {
         dependencies = [
           sources."ps-list-6.3.0"
         ];
@@ -82880,7 +84649,7 @@ in
     dependencies = [
       sources."@types/atob-2.1.2"
       sources."@types/inquirer-6.5.0"
-      sources."@types/node-15.14.0"
+      sources."@types/node-16.4.0"
       sources."@types/through-0.0.30"
       sources."ajv-6.12.6"
       sources."ansi-escapes-4.3.2"
@@ -83082,10 +84851,10 @@ in
   flood = nodeEnv.buildNodePackage {
     name = "flood";
     packageName = "flood";
-    version = "4.6.0";
+    version = "4.6.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/flood/-/flood-4.6.0.tgz";
-      sha512 = "uio2KGAC9wNNM9wa6BrmIwRunE/AWJNDz9SnP06zHIpIHX9FC0UEHbj2kairn9CmhzhEwprBNYeFh79eyfqxvw==";
+      url = "https://registry.npmjs.org/flood/-/flood-4.6.1.tgz";
+      sha512 = "OB5AykNCnRUU8KEvuMQhOArRldfCYfmboZWpV9B++7jUsq7cwo7p2W15+SEBQbTyPjD3mmwNH6hNw+geoy/+LA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -83340,7 +85109,7 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object-visit-1.0.1"
@@ -83567,10 +85336,10 @@ in
   gatsby-cli = nodeEnv.buildNodePackage {
     name = "gatsby-cli";
     packageName = "gatsby-cli";
-    version = "3.8.0";
+    version = "3.10.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/gatsby-cli/-/gatsby-cli-3.8.0.tgz";
-      sha512 = "81rQNDgHgkXoFMiwluZGN0ETKonGn8tl1uxL3OpOx3aOfP1aPv5NBSOLX70O6vo9jXyg6oy0gPHGjhbQMdSyIw==";
+      url = "https://registry.npmjs.org/gatsby-cli/-/gatsby-cli-3.10.0.tgz";
+      sha512 = "RgHTA2qdxhdUugoi+S6BCv6LFDYxuV7P8QfbG0QRmmIAybtmpgfse6oLspWgtXwR4liRDZh/hRgwVA4y48JmlA==";
     };
     dependencies = [
       (sources."@ardatan/aggregate-error-0.0.6" // {
@@ -83580,13 +85349,13 @@ in
       })
       sources."@babel/code-frame-7.14.5"
       sources."@babel/compat-data-7.14.7"
-      (sources."@babel/core-7.14.6" // {
+      (sources."@babel/core-7.14.8" // {
         dependencies = [
           sources."semver-6.3.0"
           sources."source-map-0.5.7"
         ];
       })
-      (sources."@babel/generator-7.14.5" // {
+      (sources."@babel/generator-7.14.8" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
@@ -83602,22 +85371,22 @@ in
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-member-expression-to-functions-7.14.7"
       sources."@babel/helper-module-imports-7.14.5"
-      sources."@babel/helper-module-transforms-7.14.5"
+      sources."@babel/helper-module-transforms-7.14.8"
       sources."@babel/helper-optimise-call-expression-7.14.5"
       sources."@babel/helper-plugin-utils-7.14.5"
       sources."@babel/helper-replace-supers-7.14.5"
-      sources."@babel/helper-simple-access-7.14.5"
+      sources."@babel/helper-simple-access-7.14.8"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.14.5"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/helper-validator-option-7.14.5"
-      sources."@babel/helpers-7.14.6"
+      sources."@babel/helpers-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/plugin-proposal-object-rest-spread-7.10.4"
       sources."@babel/plugin-proposal-optional-chaining-7.14.5"
       sources."@babel/plugin-syntax-jsx-7.14.5"
@@ -83625,11 +85394,11 @@ in
       sources."@babel/plugin-syntax-optional-chaining-7.8.3"
       sources."@babel/plugin-transform-parameters-7.14.5"
       sources."@babel/plugin-transform-react-jsx-7.14.5"
-      sources."@babel/runtime-7.14.6"
-      sources."@babel/standalone-7.14.7"
+      sources."@babel/runtime-7.14.8"
+      sources."@babel/standalone-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
       sources."@graphql-tools/schema-7.1.5"
       sources."@graphql-tools/utils-7.10.0"
       sources."@hapi/address-2.1.4"
@@ -83660,22 +85429,20 @@ in
       sources."@tokenizer/token-0.1.1"
       sources."@turist/fetch-7.1.7"
       sources."@turist/time-0.0.1"
-      sources."@types/common-tags-1.8.0"
-      sources."@types/debug-4.1.6"
+      sources."@types/common-tags-1.8.1"
       sources."@types/istanbul-lib-coverage-2.0.3"
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-1.1.2"
       sources."@types/json-patch-0.0.30"
-      sources."@types/node-15.14.0"
-      sources."@types/node-fetch-2.5.10"
-      sources."@types/readable-stream-2.3.10"
-      sources."@types/unist-2.0.3"
-      sources."@types/yargs-15.0.13"
-      sources."@types/yargs-parser-20.2.0"
+      sources."@types/node-16.4.0"
+      sources."@types/node-fetch-2.5.11"
+      sources."@types/unist-2.0.6"
+      sources."@types/yargs-15.0.14"
+      sources."@types/yargs-parser-20.2.1"
       sources."@types/yoga-layout-1.9.2"
       sources."accepts-1.3.7"
       sources."acorn-8.4.1"
-      sources."acorn-jsx-5.3.1"
+      sources."acorn-jsx-5.3.2"
       sources."address-1.1.2"
       (sources."ansi-align-3.0.0" // {
         dependencies = [
@@ -83728,12 +85495,13 @@ in
         dependencies = [
           sources."get-stream-5.2.0"
           sources."lowercase-keys-2.0.0"
+          sources."normalize-url-4.5.1"
         ];
       })
       sources."call-bind-1.0.2"
       sources."camel-case-4.1.2"
       sources."camelcase-5.3.1"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       sources."ccount-1.1.0"
       (sources."chalk-4.1.1" // {
         dependencies = [
@@ -83783,7 +85551,7 @@ in
         ];
       })
       sources."content-type-1.0.4"
-      sources."contentful-management-7.27.0"
+      sources."contentful-management-7.30.0"
       sources."contentful-sdk-core-6.8.0"
       sources."convert-hrtime-3.0.0"
       (sources."convert-source-map-1.8.0" // {
@@ -83794,7 +85562,7 @@ in
       sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
       sources."cors-2.8.5"
-      sources."create-gatsby-1.8.0"
+      sources."create-gatsby-1.10.0"
       (sources."cross-spawn-6.0.5" // {
         dependencies = [
           sources."semver-5.7.1"
@@ -83829,7 +85597,7 @@ in
       sources."dotenv-8.6.0"
       sources."duplexer3-0.1.4"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.3.765"
+      sources."electron-to-chromium-1.3.782"
       sources."emoji-regex-7.0.3"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
@@ -83841,13 +85609,12 @@ in
       sources."escape-string-regexp-1.0.5"
       sources."estree-util-is-identifier-name-1.1.0"
       sources."etag-1.8.1"
-      (sources."execa-3.4.0" // {
+      (sources."execa-5.1.1" // {
         dependencies = [
           sources."cross-spawn-7.0.3"
-          sources."get-stream-5.2.0"
+          sources."get-stream-6.0.1"
           sources."is-stream-2.0.0"
           sources."npm-run-path-4.0.1"
-          sources."p-finally-2.0.1"
           sources."path-key-3.1.1"
           sources."shebang-command-2.0.0"
           sources."shebang-regex-3.0.0"
@@ -83862,7 +85629,7 @@ in
           sources."safe-buffer-5.1.2"
         ];
       })
-      (sources."express-graphql-0.9.0" // {
+      (sources."express-graphql-0.12.0" // {
         dependencies = [
           sources."http-errors-1.8.0"
           (sources."raw-body-2.4.1" // {
@@ -83882,7 +85649,7 @@ in
       })
       sources."fast-copy-2.1.1"
       sources."figures-3.2.0"
-      sources."file-type-16.5.0"
+      sources."file-type-16.5.2"
       sources."fill-range-7.0.1"
       sources."filter-obj-1.1.0"
       (sources."finalhandler-1.1.2" // {
@@ -83901,28 +85668,19 @@ in
       sources."fs.realpath-1.0.0"
       sources."fsevents-2.3.2"
       sources."function-bind-1.1.1"
-      sources."gatsby-core-utils-2.8.0"
-      (sources."gatsby-recipes-0.19.0" // {
+      sources."gatsby-core-utils-2.10.0"
+      (sources."gatsby-recipes-0.21.0" // {
         dependencies = [
-          sources."cross-spawn-7.0.3"
-          sources."execa-4.1.0"
-          sources."get-stream-5.2.0"
-          sources."is-stream-2.0.0"
-          sources."npm-run-path-4.0.1"
-          sources."path-key-3.1.1"
-          sources."shebang-command-2.0.0"
-          sources."shebang-regex-3.0.0"
           sources."strip-ansi-6.0.0"
-          sources."which-2.0.2"
         ];
       })
-      sources."gatsby-telemetry-2.8.0"
+      sources."gatsby-telemetry-2.10.0"
       sources."gensync-1.0.0-beta.2"
       sources."get-caller-file-2.0.5"
       sources."get-intrinsic-1.1.1"
       sources."get-stdin-4.0.1"
       sources."get-stream-4.1.0"
-      sources."git-up-4.0.2"
+      sources."git-up-4.0.5"
       sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
       sources."global-dirs-3.0.0"
@@ -83947,7 +85705,7 @@ in
           sources."inherits-2.0.3"
         ];
       })
-      sources."human-signals-1.1.1"
+      sources."human-signals-2.1.0"
       sources."iconv-lite-0.4.24"
       sources."ieee754-1.2.1"
       sources."import-lazy-2.1.0"
@@ -83968,7 +85726,7 @@ in
       sources."is-binary-path-2.1.0"
       sources."is-buffer-2.0.5"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-decimal-1.0.4"
       sources."is-docker-2.2.1"
       sources."is-extglob-2.1.1"
@@ -84009,7 +85767,7 @@ in
         ];
       })
       sources."jest-get-type-25.2.6"
-      (sources."joi-17.4.0" // {
+      (sources."joi-17.4.1" // {
         dependencies = [
           sources."@hapi/hoek-9.2.0"
           sources."@hapi/topo-5.1.0"
@@ -84078,11 +85836,11 @@ in
       sources."node-object-hash-2.3.7"
       sources."node-releases-1.1.73"
       sources."normalize-path-3.0.0"
-      sources."normalize-url-4.5.1"
+      sources."normalize-url-6.1.0"
       sources."npm-run-path-2.0.2"
       sources."nth-check-2.0.0"
       sources."object-assign-4.1.1"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-path-0.11.5"
       sources."on-finished-2.3.0"
       sources."once-1.4.0"
@@ -84102,7 +85860,7 @@ in
       })
       sources."parse-entities-2.0.0"
       sources."parse-path-4.0.3"
-      sources."parse-url-5.0.7"
+      sources."parse-url-6.0.0"
       sources."parseurl-1.3.3"
       sources."pascal-case-3.1.2"
       sources."path-exists-4.0.0"
@@ -84110,7 +85868,7 @@ in
       sources."path-key-2.0.1"
       sources."path-parse-1.0.7"
       sources."path-to-regexp-0.1.7"
-      sources."peek-readable-3.1.3"
+      sources."peek-readable-3.1.4"
       sources."picomatch-2.3.0"
       sources."pkg-dir-4.2.0"
       sources."prepend-http-2.0.0"
@@ -84143,7 +85901,7 @@ in
       sources."react-is-16.13.1"
       sources."read-1.0.7"
       sources."readable-stream-3.6.0"
-      sources."readable-web-to-node-stream-3.0.1"
+      sources."readable-web-to-node-stream-3.0.2"
       sources."readdirp-3.6.0"
       sources."redux-4.1.0"
       sources."regenerator-runtime-0.13.8"
@@ -84240,7 +85998,7 @@ in
       sources."strip-final-newline-2.0.0"
       sources."strip-indent-3.0.0"
       sources."strip-json-comments-2.0.1"
-      sources."strtok3-6.0.8"
+      sources."strtok3-6.1.3"
       sources."style-to-object-0.3.0"
       sources."supports-color-5.5.0"
       sources."term-size-2.2.1"
@@ -84250,7 +86008,7 @@ in
       sources."to-readable-stream-1.0.0"
       sources."to-regex-range-5.0.1"
       sources."toidentifier-1.0.0"
-      sources."token-types-2.1.1"
+      sources."token-types-3.1.0"
       sources."trim-0.0.1"
       sources."trim-trailing-lines-1.1.4"
       sources."trough-1.0.5"
@@ -84307,9 +86065,9 @@ in
       })
       sources."wrappy-1.0.2"
       sources."write-file-atomic-3.0.3"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xdg-basedir-4.0.0"
-      sources."xstate-4.20.2"
+      sources."xstate-4.23.0"
       sources."xtend-4.0.2"
       sources."y18n-4.0.3"
       sources."yallist-4.0.0"
@@ -84564,7 +86322,7 @@ in
       sources."tweetnacl-0.14.5"
       sources."tweetnacl-auth-0.3.1"
       sources."typedarray-to-buffer-4.0.0"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xtend-4.0.2"
     ];
     buildInputs = globalBuildInputs;
@@ -84605,7 +86363,7 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -84619,10 +86377,10 @@ in
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@tootallnate/once-1.1.2"
-      sources."@types/minimist-1.2.1"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@types/minimist-1.2.2"
+      sources."@types/normalize-package-data-2.4.1"
       sources."agent-base-6.0.2"
-      sources."ajv-8.6.0"
+      sources."ajv-8.6.2"
       sources."ajv-formats-2.1.0"
       (sources."ansi-align-3.0.0" // {
         dependencies = [
@@ -84756,7 +86514,7 @@ in
       sources."ip-1.1.5"
       sources."is-arrayish-0.2.1"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-installed-globally-0.4.0"
       sources."is-interactive-1.0.0"
@@ -84962,7 +86720,7 @@ in
     dependencies = [
       sources."@ardatan/aggregate-error-0.0.6"
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -85053,10 +86811,10 @@ in
       sources."@microsoft/fetch-event-source-2.0.1"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/node-15.14.0"
+      sources."@types/node-16.4.0"
       sources."@types/parse-json-4.0.0"
       sources."@types/websocket-1.0.2"
       sources."abort-controller-3.0.0"
@@ -85169,10 +86927,10 @@ in
       sources."extract-files-9.0.0"
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."fast-safe-stringify-2.0.7"
-      sources."fastq-1.11.0"
+      sources."fast-safe-stringify-2.0.8"
+      sources."fastq-1.11.1"
       sources."figlet-1.5.0"
       sources."figures-3.2.0"
       sources."fill-range-7.0.1"
@@ -85344,15 +87102,15 @@ in
       sources."npm-run-path-2.0.2"
       sources."oas-kit-common-1.0.8"
       sources."oas-linter-3.2.2"
-      (sources."oas-resolver-2.5.5" // {
+      (sources."oas-resolver-2.5.6" // {
         dependencies = [
           sources."yargs-17.0.1"
         ];
       })
       sources."oas-schema-walker-1.1.5"
-      sources."oas-validator-5.0.7"
+      sources."oas-validator-5.0.8"
       sources."oauth-sign-0.9.0"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
@@ -85407,7 +87165,7 @@ in
       sources."qs-6.5.2"
       sources."queue-microtask-1.2.3"
       sources."rc-1.2.8"
-      sources."reftools-1.1.8"
+      sources."reftools-1.1.9"
       sources."regexp.prototype.flags-1.3.1"
       sources."registry-auth-token-4.2.1"
       sources."registry-url-5.1.0"
@@ -85457,7 +87215,7 @@ in
       sources."strip-json-comments-2.0.1"
       sources."subscriptions-transport-ws-0.9.19"
       sources."supports-color-7.2.0"
-      (sources."swagger2openapi-7.0.7" // {
+      (sources."swagger2openapi-7.0.8" // {
         dependencies = [
           sources."yargs-17.0.1"
         ];
@@ -85543,7 +87301,7 @@ in
       sources."ini-1.3.8"
       sources."interpret-1.1.0"
       sources."is-absolute-1.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-extglob-2.1.1"
       sources."is-glob-4.0.1"
       sources."is-number-7.0.0"
@@ -85571,7 +87329,7 @@ in
       sources."path-root-0.1.1"
       sources."path-root-regex-0.1.2"
       sources."picomatch-2.3.0"
-      sources."rechoir-0.7.0"
+      sources."rechoir-0.7.1"
       sources."resolve-1.20.0"
       sources."resolve-dir-1.0.1"
       sources."to-regex-range-5.0.1"
@@ -85801,7 +87559,7 @@ in
           sources."supports-color-7.2.0"
         ];
       })
-      sources."systeminformation-5.7.7"
+      sources."systeminformation-5.7.8"
       sources."term-canvas-0.0.5"
       sources."type-fest-0.21.3"
       sources."wordwrap-0.0.3"
@@ -86039,7 +87797,7 @@ in
       sources."is-arrayish-0.2.1"
       sources."is-binary-path-1.0.1"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-descriptor-1.0.2"
       sources."is-extendable-0.1.1"
@@ -86441,7 +88199,7 @@ in
       })
       sources."is-arrayish-0.2.1"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       (sources."is-data-descriptor-1.0.0" // {
         dependencies = [
           sources."kind-of-6.0.3"
@@ -86833,7 +88591,7 @@ in
       sources."minimist-1.2.5"
       sources."mkdirp-0.5.5"
       sources."ms-2.1.3"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."opener-1.5.2"
       sources."portfinder-1.0.28"
       sources."qs-6.10.1"
@@ -87357,8 +89115,10 @@ in
       sha512 = "56gjTrj9SMfPkbGANfqtGYeY3G5KmCkpgEYlKkmiDNG+SpQtLT9/53gt/9CbYd5iT9GgP+IvGXwDWplgCz3NnA==";
     };
     dependencies = [
-      sources."@types/jquery-3.5.5"
+      sources."@jcubic/lily-0.1.0"
+      sources."@types/jquery-3.5.6"
       sources."@types/sizzle-2.3.3"
+      sources."ansidec-0.3.4"
       sources."arch-2.2.0"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
@@ -87376,6 +89136,7 @@ in
       sources."glob-7.1.7"
       sources."graceful-fs-4.2.6"
       sources."historic-readline-1.0.8"
+      sources."iconv-lite-0.6.3"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."is-docker-2.2.1"
@@ -87383,7 +89144,7 @@ in
       sources."is-wsl-2.2.0"
       sources."isexe-2.0.0"
       sources."jquery-3.6.0"
-      sources."jquery.terminal-2.26.0"
+      sources."jquery.terminal-2.27.1"
       sources."jsonfile-2.4.0"
       sources."keyboardevent-key-polyfill-1.1.0"
       sources."line-reader-0.4.0"
@@ -87395,9 +89156,10 @@ in
       sources."p-finally-1.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
-      sources."prismjs-1.24.0"
+      sources."prismjs-1.24.1"
       sources."pump-3.0.0"
       sources."rimraf-2.7.1"
+      sources."safer-buffer-2.1.2"
       sources."semver-5.7.1"
       sources."shebang-command-1.2.0"
       sources."shebang-regex-1.0.0"
@@ -87606,7 +89368,7 @@ in
           sources."path-key-2.0.1"
         ];
       })
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."once-1.4.0"
       sources."onetime-2.0.1"
       sources."open-7.4.2"
@@ -87713,7 +89475,7 @@ in
       })
       sources."wrappy-1.0.2"
       sources."write-file-atomic-3.0.3"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xregexp-2.0.0"
       sources."yallist-3.1.1"
     ];
@@ -87727,31 +89489,21 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
-  "iosevka-https://github.com/be5invis/Iosevka/archive/v7.0.4.tar.gz" = nodeEnv.buildNodePackage {
+  "iosevka-https://github.com/be5invis/Iosevka/archive/v7.2.4.tar.gz" = nodeEnv.buildNodePackage {
     name = "iosevka";
     packageName = "iosevka";
-    version = "7.0.4";
+    version = "7.2.4";
     src = fetchurl {
-      name = "iosevka-7.0.4.tar.gz";
-      url = "https://codeload.github.com/be5invis/Iosevka/tar.gz/v7.0.4";
-      sha256 = "e0de45dde08463fbd02bced41893746235068167fd91051727dc048d66b91aeb";
+      name = "iosevka-7.2.4.tar.gz";
+      url = "https://codeload.github.com/be5invis/Iosevka/tar.gz/v7.2.4";
+      sha256 = "c4c77a6beead2f164494fca061ba04e7f306771d0a7b86687ffa63fe43f7b83d";
     };
     dependencies = [
       sources."@iarna/toml-2.2.5"
       sources."@msgpack/msgpack-2.7.0"
-      sources."@ot-builder/bin-composite-types-1.0.9"
-      sources."@ot-builder/bin-util-1.0.9"
-      (sources."@ot-builder/cli-help-shower-1.0.9" // {
-        dependencies = [
-          sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.1"
-          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."@ot-builder/cli-proc-1.0.9" // {
+      sources."@ot-builder/bin-composite-types-1.1.0"
+      sources."@ot-builder/bin-util-1.1.0"
+      (sources."@ot-builder/cli-help-shower-1.1.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."chalk-4.1.1"
@@ -87761,45 +89513,37 @@ in
           sources."supports-color-7.2.0"
         ];
       })
-      (sources."@ot-builder/cli-shared-1.0.9" // {
-        dependencies = [
-          sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.1"
-          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."@ot-builder/common-impl-1.0.9"
-      sources."@ot-builder/errors-1.0.9"
-      sources."@ot-builder/io-bin-cff-1.0.9"
-      sources."@ot-builder/io-bin-encoding-1.0.9"
-      sources."@ot-builder/io-bin-ext-private-1.0.9"
-      sources."@ot-builder/io-bin-font-1.0.9"
-      sources."@ot-builder/io-bin-glyph-store-1.0.9"
-      sources."@ot-builder/io-bin-layout-1.0.9"
-      sources."@ot-builder/io-bin-metadata-1.0.9"
-      sources."@ot-builder/io-bin-metric-1.0.9"
-      sources."@ot-builder/io-bin-name-1.0.9"
-      sources."@ot-builder/io-bin-sfnt-1.0.9"
-      sources."@ot-builder/io-bin-ttf-1.0.9"
-      sources."@ot-builder/ot-1.0.9"
-      sources."@ot-builder/ot-encoding-1.0.9"
-      sources."@ot-builder/ot-ext-private-1.0.9"
-      sources."@ot-builder/ot-glyphs-1.0.9"
-      sources."@ot-builder/ot-layout-1.0.9"
-      sources."@ot-builder/ot-metadata-1.0.9"
-      sources."@ot-builder/ot-name-1.0.9"
-      sources."@ot-builder/ot-sfnt-1.0.9"
-      sources."@ot-builder/ot-standard-glyph-namer-1.0.9"
-      sources."@ot-builder/prelude-1.0.9"
-      sources."@ot-builder/primitive-1.0.9"
-      sources."@ot-builder/rectify-1.0.9"
-      sources."@ot-builder/stat-glyphs-1.0.9"
-      sources."@ot-builder/trace-1.0.9"
-      sources."@ot-builder/var-store-1.0.9"
-      sources."@ot-builder/variance-1.0.9"
+      sources."@ot-builder/cli-proc-1.1.0"
+      sources."@ot-builder/cli-shared-1.1.0"
+      sources."@ot-builder/common-impl-1.1.0"
+      sources."@ot-builder/errors-1.1.0"
+      sources."@ot-builder/io-bin-cff-1.1.0"
+      sources."@ot-builder/io-bin-encoding-1.1.0"
+      sources."@ot-builder/io-bin-ext-private-1.1.0"
+      sources."@ot-builder/io-bin-font-1.1.0"
+      sources."@ot-builder/io-bin-glyph-store-1.1.0"
+      sources."@ot-builder/io-bin-layout-1.1.0"
+      sources."@ot-builder/io-bin-metadata-1.1.0"
+      sources."@ot-builder/io-bin-metric-1.1.0"
+      sources."@ot-builder/io-bin-name-1.1.0"
+      sources."@ot-builder/io-bin-sfnt-1.1.0"
+      sources."@ot-builder/io-bin-ttf-1.1.0"
+      sources."@ot-builder/ot-1.1.0"
+      sources."@ot-builder/ot-encoding-1.1.0"
+      sources."@ot-builder/ot-ext-private-1.1.0"
+      sources."@ot-builder/ot-glyphs-1.1.0"
+      sources."@ot-builder/ot-layout-1.1.0"
+      sources."@ot-builder/ot-metadata-1.1.0"
+      sources."@ot-builder/ot-name-1.1.0"
+      sources."@ot-builder/ot-sfnt-1.1.0"
+      sources."@ot-builder/ot-standard-glyph-namer-1.1.0"
+      sources."@ot-builder/prelude-1.1.0"
+      sources."@ot-builder/primitive-1.1.0"
+      sources."@ot-builder/rectify-1.1.0"
+      sources."@ot-builder/stat-glyphs-1.1.0"
+      sources."@ot-builder/trace-1.1.0"
+      sources."@ot-builder/var-store-1.1.0"
+      sources."@ot-builder/variance-1.1.0"
       sources."@unicode/unicode-13.0.0-1.1.0"
       sources."aglfn-1.0.2"
       sources."amdefine-1.0.1"
@@ -87807,11 +89551,9 @@ in
       sources."ansi-styles-3.2.1"
       sources."argparse-2.0.1"
       sources."async-0.9.2"
-      sources."at-least-node-1.0.0"
       sources."atob-2.1.2"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."camelcase-5.3.1"
       sources."chainsaw-0.0.9"
       sources."chalk-2.4.2"
       sources."cldr-6.1.1"
@@ -87824,7 +89566,6 @@ in
       sources."css-2.2.4"
       sources."css-parse-2.0.0"
       sources."debug-3.1.0"
-      sources."decamelize-1.2.0"
       sources."decode-uri-component-0.2.0"
       sources."deep-is-0.1.3"
       sources."ejs-3.1.6"
@@ -87860,7 +89601,6 @@ in
       sources."fast-deep-equal-3.1.3"
       sources."fast-levenshtein-2.0.6"
       sources."filelist-1.0.2"
-      sources."find-up-4.1.0"
       sources."fs-extra-10.0.0"
       sources."fs.realpath-1.0.0"
       sources."get-caller-file-2.0.5"
@@ -87876,7 +89616,6 @@ in
       sources."jake-10.8.2"
       sources."jsonfile-6.1.0"
       sources."levn-0.3.0"
-      sources."locate-path-5.0.0"
       sources."lru-cache-2.5.0"
       sources."memoizeasync-1.1.0"
       sources."mimic-fn-2.1.0"
@@ -87886,30 +89625,16 @@ in
       sources."once-1.4.0"
       sources."onetime-5.1.2"
       sources."optionator-0.8.3"
-      sources."ot-builder-1.0.9"
-      (sources."otb-ttc-bundle-1.0.9" // {
-        dependencies = [
-          sources."ansi-styles-4.3.0"
-          sources."chalk-4.1.1"
-          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."p-limit-2.3.0"
-      sources."p-locate-4.1.0"
-      sources."p-try-2.2.0"
+      sources."ot-builder-1.1.0"
+      sources."otb-ttc-bundle-1.1.0"
       sources."passerror-1.1.1"
       sources."patel-0.34.0"
-      sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."patrisika-0.22.2"
-      sources."patrisika-scopes-0.11.1"
+      sources."patrisika-scopes-0.12.0"
       sources."pegjs-0.10.0"
       sources."prelude-ls-1.1.2"
       sources."require-directory-2.1.1"
-      sources."require-main-filename-2.0.0"
       sources."resolve-url-0.2.1"
       sources."restore-cursor-3.1.0"
       sources."resumer-0.0.0"
@@ -87922,7 +89647,6 @@ in
         ];
       })
       sources."seq-0.3.5"
-      sources."set-blocking-2.0.0"
       sources."signal-exit-3.0.3"
       sources."source-map-0.6.1"
       sources."source-map-resolve-0.5.3"
@@ -87946,25 +89670,19 @@ in
       sources."unicoderegexp-0.4.1"
       sources."universalify-2.0.0"
       sources."urix-0.1.0"
-      (sources."verda-1.2.2" // {
+      (sources."verda-1.3.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."chalk-4.1.1"
-          sources."cliui-6.0.0"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
-          sources."fs-extra-9.1.0"
           sources."has-flag-4.0.0"
           sources."supports-color-7.2.0"
-          sources."wrap-ansi-6.2.0"
-          sources."y18n-4.0.3"
-          sources."yargs-15.4.1"
-          sources."yargs-parser-18.1.3"
+          sources."yargs-17.0.1"
         ];
       })
       sources."wawoff2-2.0.0"
       sources."which-2.0.2"
-      sources."which-module-2.0.0"
       sources."word-wrap-1.2.3"
       sources."wordwrap-0.0.3"
       (sources."wrap-ansi-7.0.0" // {
@@ -88182,7 +89900,7 @@ in
       sources."async-mutex-0.1.4"
       sources."asynckit-0.4.0"
       sources."atob-2.1.2"
-      (sources."aws-sdk-2.938.0" // {
+      (sources."aws-sdk-2.951.0" // {
         dependencies = [
           sources."sax-1.2.1"
           sources."uuid-3.3.2"
@@ -88224,7 +89942,7 @@ in
       sources."color-3.1.2"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."color-string-1.5.5"
+      sources."color-string-1.6.0"
       sources."combined-stream-1.0.8"
       sources."command-line-usage-4.1.0"
       sources."commander-6.2.1"
@@ -88469,7 +90187,7 @@ in
       sources."json-stringify-safe-5.0.1"
       sources."jsonfile-4.0.0"
       sources."jsprim-1.4.1"
-      sources."katex-0.13.11"
+      sources."katex-0.13.13"
       sources."keytar-7.7.0"
       sources."khroma-1.4.1"
       sources."klaw-1.3.1"
@@ -88542,7 +90260,7 @@ in
       sources."napi-build-utils-1.0.2"
       sources."ndarray-1.0.19"
       sources."ndarray-pack-1.2.1"
-      sources."needle-2.6.0"
+      sources."needle-2.8.0"
       sources."nextgen-events-1.5.2"
       sources."no-case-2.3.2"
       (sources."node-abi-2.30.0" // {
@@ -88668,7 +90386,7 @@ in
       sources."seventh-0.7.40"
       (sources."sharp-0.26.3" // {
         dependencies = [
-          sources."color-3.1.3"
+          sources."color-3.2.1"
           sources."decompress-response-6.0.0"
           sources."mimic-response-3.1.0"
           sources."simple-get-4.0.0"
@@ -88808,7 +90526,7 @@ in
         ];
       })
       sources."wrappy-1.0.2"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xml-name-validator-3.0.0"
       sources."xml2js-0.4.23"
       sources."xmlbuilder-11.0.1"
@@ -88899,7 +90617,7 @@ in
       sha512 = "sxKt7h0vzCd+3Y81Ey2qinupL6DpRSZJclS04ugHDNmRUXGzqicMJ6iwayhSA0S0DwwX30c5ozyUthr1QKF6uw==";
     };
     dependencies = [
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."argparse-1.0.10"
       sources."bluebird-3.7.2"
       sources."catharsis-0.9.0"
@@ -89066,7 +90784,7 @@ in
       sources."mime-types-2.1.31"
       sources."ms-2.1.3"
       sources."native-promise-only-0.8.1"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."path-loader-1.0.10"
       sources."process-nextick-args-2.0.1"
       sources."punycode-2.1.1"
@@ -89360,6 +91078,568 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  jsonplaceholder = nodeEnv.buildNodePackage {
+    name = "jsonplaceholder";
+    packageName = "jsonplaceholder";
+    version = "0.3.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/jsonplaceholder/-/jsonplaceholder-0.3.3.tgz";
+      sha1 = "f2de92d8c2f9211e7b4e859ef73d44d32b1b5bfd";
+    };
+    dependencies = [
+      sources."accepts-1.3.7"
+      sources."ajv-6.12.6"
+      sources."ansi-align-1.1.0"
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."anymatch-1.3.2"
+      sources."arr-diff-2.0.0"
+      sources."arr-flatten-1.1.0"
+      sources."arr-union-3.1.0"
+      sources."array-flatten-1.1.1"
+      sources."array-unique-0.2.1"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."assign-symbols-1.0.0"
+      sources."async-each-1.0.3"
+      sources."asynckit-0.4.0"
+      sources."atob-2.1.2"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.11.0"
+      (sources."base-0.11.2" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."basic-auth-2.0.1"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."binary-extensions-1.13.1"
+      sources."bindings-1.5.0"
+      sources."body-parser-1.19.0"
+      sources."boxen-0.6.0"
+      sources."braces-1.8.5"
+      sources."bytes-3.1.0"
+      (sources."cache-base-1.0.1" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."camelcase-2.1.1"
+      sources."capture-stack-trace-1.0.1"
+      sources."caseless-0.12.0"
+      sources."chalk-1.1.3"
+      sources."chokidar-1.7.0"
+      (sources."class-utils-0.3.6" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."isobject-3.0.1"
+          sources."kind-of-5.1.0"
+        ];
+      })
+      sources."cli-boxes-1.0.0"
+      sources."cliui-3.2.0"
+      sources."clone-1.0.4"
+      sources."code-point-at-1.1.0"
+      sources."collection-visit-1.0.0"
+      sources."combined-stream-1.0.8"
+      sources."component-emitter-1.3.0"
+      sources."compressible-2.0.18"
+      (sources."compression-1.7.4" // {
+        dependencies = [
+          sources."bytes-3.0.0"
+        ];
+      })
+      (sources."configstore-2.1.0" // {
+        dependencies = [
+          sources."uuid-2.0.3"
+        ];
+      })
+      sources."connect-pause-0.1.1"
+      sources."content-disposition-0.5.3"
+      sources."content-type-1.0.4"
+      sources."cookie-0.4.0"
+      sources."cookie-signature-1.0.6"
+      sources."copy-descriptor-0.1.1"
+      sources."core-util-is-1.0.2"
+      sources."cors-2.8.5"
+      sources."create-error-class-3.0.2"
+      sources."dashdash-1.14.1"
+      sources."debug-2.6.9"
+      sources."decamelize-1.2.0"
+      sources."decode-uri-component-0.2.0"
+      sources."deep-extend-0.6.0"
+      (sources."define-property-2.0.2" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."delayed-stream-1.0.0"
+      sources."depd-1.1.2"
+      sources."destroy-1.0.4"
+      sources."dot-prop-3.0.0"
+      sources."duplexer2-0.1.4"
+      sources."ecc-jsbn-0.1.2"
+      sources."ee-first-1.1.1"
+      sources."encodeurl-1.0.2"
+      sources."error-ex-1.3.2"
+      sources."errorhandler-1.5.1"
+      sources."escape-html-1.0.3"
+      sources."escape-string-regexp-1.0.5"
+      sources."etag-1.8.1"
+      sources."expand-brackets-0.1.5"
+      sources."expand-range-1.8.2"
+      sources."express-4.17.1"
+      sources."extend-3.0.2"
+      (sources."extend-shallow-3.0.2" // {
+        dependencies = [
+          sources."is-extendable-1.0.1"
+        ];
+      })
+      sources."extglob-0.3.2"
+      sources."extsprintf-1.3.0"
+      sources."fast-deep-equal-3.1.3"
+      sources."fast-json-stable-stringify-2.1.0"
+      sources."file-uri-to-path-1.0.0"
+      sources."filename-regex-2.0.1"
+      sources."fill-range-2.2.4"
+      sources."filled-array-1.1.0"
+      sources."finalhandler-1.1.2"
+      sources."find-up-1.1.2"
+      sources."for-in-1.0.2"
+      sources."for-own-0.1.5"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.3"
+      sources."forwarded-0.2.0"
+      sources."fragment-cache-0.2.1"
+      sources."fresh-0.5.2"
+      sources."fsevents-1.2.13"
+      sources."function-bind-1.1.1"
+      sources."get-caller-file-1.0.3"
+      sources."get-value-2.0.6"
+      sources."getpass-0.1.7"
+      sources."glob-base-0.3.0"
+      sources."glob-parent-2.0.0"
+      sources."got-5.7.1"
+      sources."graceful-fs-4.2.6"
+      sources."har-schema-2.0.0"
+      sources."har-validator-5.1.5"
+      sources."has-1.0.3"
+      sources."has-ansi-2.0.0"
+      (sources."has-value-1.0.0" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
+      (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."hosted-git-info-2.8.9"
+      sources."http-errors-1.7.2"
+      sources."http-signature-1.2.0"
+      sources."iconv-lite-0.4.24"
+      sources."imurmurhash-0.1.4"
+      sources."inherits-2.0.3"
+      sources."ini-1.3.8"
+      sources."invert-kv-1.0.0"
+      sources."ipaddr.js-1.9.1"
+      (sources."is-accessor-descriptor-1.0.0" // {
+        dependencies = [
+          sources."kind-of-6.0.3"
+        ];
+      })
+      sources."is-arrayish-0.2.1"
+      sources."is-binary-path-1.0.1"
+      sources."is-buffer-1.1.6"
+      sources."is-core-module-2.5.0"
+      (sources."is-data-descriptor-1.0.0" // {
+        dependencies = [
+          sources."kind-of-6.0.3"
+        ];
+      })
+      (sources."is-descriptor-1.0.2" // {
+        dependencies = [
+          sources."kind-of-6.0.3"
+        ];
+      })
+      sources."is-dotfile-1.0.3"
+      sources."is-equal-shallow-0.1.3"
+      sources."is-extendable-0.1.1"
+      sources."is-extglob-1.0.0"
+      sources."is-finite-1.1.0"
+      sources."is-fullwidth-code-point-1.0.0"
+      sources."is-glob-2.0.1"
+      sources."is-npm-1.0.0"
+      sources."is-number-2.1.0"
+      sources."is-obj-1.0.1"
+      (sources."is-plain-object-2.0.4" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."is-posix-bracket-0.1.1"
+      sources."is-primitive-2.0.0"
+      sources."is-promise-2.2.2"
+      sources."is-redirect-1.0.0"
+      sources."is-retry-allowed-1.2.0"
+      sources."is-stream-1.1.0"
+      sources."is-typedarray-1.0.0"
+      sources."is-utf8-0.2.1"
+      sources."is-windows-1.0.2"
+      sources."isarray-1.0.0"
+      sources."isobject-2.1.0"
+      sources."isstream-0.1.2"
+      sources."jju-1.4.0"
+      sources."jsbn-0.1.1"
+      sources."json-parse-helpfulerror-1.0.3"
+      sources."json-schema-0.2.3"
+      sources."json-schema-traverse-0.4.1"
+      sources."json-server-0.8.23"
+      sources."json-stringify-safe-5.0.1"
+      sources."jsprim-1.4.1"
+      sources."kind-of-3.2.2"
+      sources."latest-version-2.0.0"
+      sources."lazy-req-1.1.0"
+      sources."lcid-1.0.0"
+      sources."load-json-file-1.1.0"
+      sources."lodash-4.17.21"
+      sources."lodash.assign-4.2.0"
+      sources."lowdb-0.13.1"
+      sources."lowercase-keys-1.0.1"
+      sources."map-cache-0.2.2"
+      sources."map-visit-1.0.0"
+      sources."math-random-1.0.4"
+      sources."media-typer-0.3.0"
+      sources."merge-descriptors-1.0.1"
+      sources."method-override-2.3.10"
+      sources."methods-1.1.2"
+      sources."micromatch-2.3.11"
+      sources."mime-1.6.0"
+      sources."mime-db-1.48.0"
+      sources."mime-types-2.1.31"
+      sources."minimist-1.2.5"
+      (sources."mixin-deep-1.3.2" // {
+        dependencies = [
+          sources."is-extendable-1.0.1"
+        ];
+      })
+      sources."mkdirp-0.5.5"
+      (sources."morgan-1.10.0" // {
+        dependencies = [
+          sources."depd-2.0.0"
+        ];
+      })
+      sources."ms-2.0.0"
+      sources."nan-2.14.2"
+      (sources."nanomatch-1.2.13" // {
+        dependencies = [
+          sources."arr-diff-4.0.0"
+          sources."array-unique-0.3.2"
+          sources."kind-of-6.0.3"
+        ];
+      })
+      sources."negotiator-0.6.2"
+      sources."node-status-codes-1.0.0"
+      sources."node-uuid-1.4.8"
+      sources."normalize-package-data-2.5.0"
+      sources."normalize-path-2.1.1"
+      sources."number-is-nan-1.0.1"
+      sources."oauth-sign-0.9.0"
+      sources."object-assign-4.1.1"
+      (sources."object-copy-0.1.0" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          sources."is-accessor-descriptor-0.1.6"
+          sources."is-data-descriptor-0.1.4"
+          (sources."is-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-5.1.0"
+            ];
+          })
+        ];
+      })
+      (sources."object-visit-1.0.1" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."object.omit-2.0.1"
+      (sources."object.pick-1.3.0" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."on-finished-2.3.0"
+      sources."on-headers-1.0.2"
+      sources."os-homedir-1.0.2"
+      sources."os-locale-1.4.0"
+      sources."os-tmpdir-1.0.2"
+      sources."osenv-0.1.5"
+      sources."package-json-2.4.0"
+      sources."parse-glob-3.0.4"
+      sources."parse-json-2.2.0"
+      sources."parseurl-1.3.3"
+      sources."pascalcase-0.1.1"
+      sources."path-exists-2.1.0"
+      sources."path-is-absolute-1.0.1"
+      sources."path-parse-1.0.7"
+      sources."path-to-regexp-0.1.7"
+      sources."path-type-1.1.0"
+      sources."performance-now-2.1.0"
+      sources."pify-2.3.0"
+      sources."pinkie-2.0.4"
+      sources."pinkie-promise-2.0.1"
+      sources."pluralize-3.1.0"
+      sources."posix-character-classes-0.1.1"
+      sources."prepend-http-1.0.4"
+      sources."preserve-0.2.0"
+      sources."process-nextick-args-2.0.1"
+      sources."proxy-addr-2.0.7"
+      sources."psl-1.8.0"
+      sources."punycode-2.1.1"
+      sources."qs-6.7.0"
+      (sources."randomatic-3.1.1" // {
+        dependencies = [
+          sources."is-number-4.0.0"
+          sources."kind-of-6.0.3"
+        ];
+      })
+      sources."range-parser-1.2.1"
+      sources."raw-body-2.4.0"
+      sources."rc-1.2.8"
+      sources."read-all-stream-3.1.0"
+      sources."read-pkg-1.1.0"
+      sources."read-pkg-up-1.0.1"
+      sources."readable-stream-2.3.7"
+      (sources."readdirp-2.2.1" // {
+        dependencies = [
+          sources."arr-diff-4.0.0"
+          sources."array-unique-0.3.2"
+          (sources."braces-2.3.2" // {
+            dependencies = [
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          (sources."expand-brackets-2.1.4" // {
+            dependencies = [
+              sources."define-property-0.2.5"
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          (sources."extglob-2.0.4" // {
+            dependencies = [
+              sources."define-property-1.0.0"
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          (sources."fill-range-4.0.0" // {
+            dependencies = [
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-5.1.0"
+            ];
+          })
+          (sources."is-number-3.0.0" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."isobject-3.0.1"
+          sources."kind-of-6.0.3"
+          sources."micromatch-3.1.10"
+        ];
+      })
+      sources."regex-cache-0.4.4"
+      sources."regex-not-1.0.2"
+      sources."registry-auth-token-3.4.0"
+      sources."registry-url-3.1.0"
+      sources."remove-trailing-separator-1.1.0"
+      sources."repeat-element-1.1.4"
+      sources."repeat-string-1.6.1"
+      sources."repeating-2.0.1"
+      (sources."request-2.88.2" // {
+        dependencies = [
+          sources."qs-6.5.2"
+        ];
+      })
+      sources."require-directory-2.1.1"
+      sources."require-main-filename-1.0.1"
+      sources."resolve-1.20.0"
+      sources."resolve-url-0.2.1"
+      sources."ret-0.1.15"
+      sources."safe-buffer-5.1.2"
+      sources."safe-regex-1.1.0"
+      sources."safer-buffer-2.1.2"
+      sources."semver-5.7.1"
+      sources."semver-diff-2.1.0"
+      (sources."send-0.17.1" // {
+        dependencies = [
+          sources."ms-2.1.1"
+        ];
+      })
+      sources."serve-static-1.14.1"
+      sources."server-destroy-1.0.1"
+      sources."set-blocking-2.0.0"
+      (sources."set-value-2.0.1" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      sources."setprototypeof-1.1.1"
+      sources."slide-1.1.6"
+      (sources."snapdragon-0.8.2" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          sources."extend-shallow-2.0.1"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."kind-of-5.1.0"
+        ];
+      })
+      (sources."snapdragon-node-2.1.1" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."snapdragon-util-3.0.1"
+      sources."source-map-0.5.7"
+      sources."source-map-resolve-0.5.3"
+      sources."source-map-url-0.4.1"
+      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.9"
+      sources."split-string-3.1.0"
+      sources."sshpk-1.16.1"
+      (sources."static-extend-0.1.2" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."kind-of-5.1.0"
+        ];
+      })
+      sources."statuses-1.5.0"
+      sources."steno-0.4.4"
+      sources."string-width-1.0.2"
+      sources."string_decoder-1.1.1"
+      sources."strip-ansi-3.0.1"
+      sources."strip-bom-2.0.0"
+      sources."strip-json-comments-2.0.1"
+      sources."supports-color-2.0.0"
+      sources."timed-out-3.1.3"
+      sources."to-object-path-0.3.0"
+      sources."to-regex-3.0.2"
+      (sources."to-regex-range-2.1.1" // {
+        dependencies = [
+          sources."is-number-3.0.0"
+        ];
+      })
+      sources."toidentifier-1.0.0"
+      sources."tough-cookie-2.5.0"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."type-is-1.6.18"
+      sources."underscore-db-0.10.0"
+      sources."union-value-1.0.1"
+      sources."unpipe-1.0.0"
+      (sources."unset-value-1.0.0" // {
+        dependencies = [
+          (sources."has-value-0.3.1" // {
+            dependencies = [
+              sources."isobject-2.1.0"
+            ];
+          })
+          sources."has-values-0.1.4"
+          sources."isobject-3.0.1"
+        ];
+      })
+      sources."unzip-response-1.0.2"
+      sources."update-notifier-1.0.3"
+      sources."uri-js-4.4.1"
+      sources."urix-0.1.0"
+      sources."url-parse-lax-1.0.0"
+      sources."use-3.1.1"
+      sources."util-deprecate-1.0.2"
+      sources."utils-merge-1.0.1"
+      sources."uuid-3.4.0"
+      sources."validate-npm-package-license-3.0.4"
+      sources."vary-1.1.2"
+      sources."verror-1.10.0"
+      sources."which-module-1.0.0"
+      sources."widest-line-1.0.0"
+      sources."window-size-0.2.0"
+      sources."wrap-ansi-2.1.0"
+      sources."write-file-atomic-1.3.4"
+      sources."xdg-basedir-2.0.0"
+      sources."y18n-3.2.2"
+      sources."yargs-4.8.1"
+      (sources."yargs-parser-2.4.1" // {
+        dependencies = [
+          sources."camelcase-3.0.0"
+        ];
+      })
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "A simple fake REST API server for testing and prototyping.";
+      homepage = "http://jsonplaceholder.typicode.com";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   kaput-cli = nodeEnv.buildNodePackage {
     name = "kaput-cli";
     packageName = "kaput-cli";
@@ -89371,14 +91651,14 @@ in
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."@oclif/command-1.8.0"
       (sources."@oclif/config-1.17.0" // {
         dependencies = [
           sources."tslib-2.3.0"
         ];
       })
-      sources."@oclif/errors-1.3.4"
+      sources."@oclif/errors-1.3.5"
       sources."@oclif/linewrap-1.0.0"
       (sources."@oclif/parser-3.8.5" // {
         dependencies = [
@@ -89428,7 +91708,7 @@ in
       sources."clean-stack-3.0.1"
       sources."cli-cursor-3.1.0"
       sources."cli-progress-3.9.0"
-      (sources."cli-ux-5.6.2" // {
+      (sources."cli-ux-5.6.3" // {
         dependencies = [
           sources."has-flag-4.0.0"
           sources."supports-color-8.1.1"
@@ -89473,9 +91753,9 @@ in
       sources."external-editor-3.1.0"
       sources."extract-stack-2.0.0"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       (sources."figures-3.2.0" // {
         dependencies = [
           sources."escape-string-regexp-1.0.5"
@@ -89542,7 +91822,7 @@ in
       sources."next-tick-1.0.0"
       sources."nice-try-1.0.5"
       sources."node-downloader-helper-1.0.18"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-treeify-1.1.33"
       sources."onetime-5.1.2"
       sources."os-tmpdir-1.0.2"
@@ -89594,7 +91874,7 @@ in
       sources."typedarray-to-buffer-3.1.5"
       sources."universalify-0.1.2"
       sources."uri-js-4.4.1"
-      sources."urijs-1.19.6"
+      sources."urijs-1.19.7"
       sources."which-1.3.1"
       sources."widest-line-3.1.0"
       sources."wrap-ansi-7.0.0"
@@ -89614,10 +91894,10 @@ in
   katex = nodeEnv.buildNodePackage {
     name = "katex";
     packageName = "katex";
-    version = "0.13.11";
+    version = "0.13.13";
     src = fetchurl {
-      url = "https://registry.npmjs.org/katex/-/katex-0.13.11.tgz";
-      sha512 = "yJBHVIgwlAaapzlbvTpVF/ZOs8UkTj/sd46Fl8+qAf2/UiituPYVeapVD8ADZtqyRg/qNWUKt7gJoyYVWLrcXw==";
+      url = "https://registry.npmjs.org/katex/-/katex-0.13.13.tgz";
+      sha512 = "cCMcil4jwMm7behpXGiQfXJA29sko/Gd/26iCsr53Dv5Jn2iHbHyEb14dm9uVrIijUXx6Zz1WhlFhHE6DckvkQ==";
     };
     dependencies = [
       sources."commander-6.2.1"
@@ -89642,9 +91922,9 @@ in
     };
     dependencies = [
       sources."@types/component-emitter-1.2.10"
-      sources."@types/cookie-0.4.0"
-      sources."@types/cors-2.8.10"
-      sources."@types/node-15.14.0"
+      sources."@types/cookie-0.4.1"
+      sources."@types/cors-2.8.12"
+      sources."@types/node-16.4.0"
       sources."accepts-1.3.7"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
@@ -89896,7 +92176,7 @@ in
       sources."escalade-3.1.1"
       sources."events-3.3.0"
       sources."evp_bytestokey-1.0.3"
-      sources."fast-safe-stringify-2.0.7"
+      sources."fast-safe-stringify-2.0.8"
       sources."filter-obj-1.1.0"
       sources."foreach-2.0.5"
       sources."fs.realpath-1.0.0"
@@ -89929,7 +92209,7 @@ in
       sources."is-boolean-object-1.1.1"
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.3"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-date-object-1.0.4"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-generator-function-1.0.9"
@@ -89961,7 +92241,7 @@ in
       sources."node-fetch-2.6.1"
       sources."node-localstorage-1.3.1"
       sources."object-assign-4.1.1"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."once-1.4.0"
@@ -90666,7 +92946,7 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -90677,6 +92957,7 @@ in
           sources."supports-color-5.5.0"
         ];
       })
+      sources."@hutson/parse-repository-url-3.0.2"
       sources."@lerna/add-4.0.0"
       sources."@lerna/bootstrap-4.0.0"
       sources."@lerna/changed-4.0.0"
@@ -90771,7 +93052,7 @@ in
       })
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."@npmcli/ci-detect-1.3.0"
       sources."@npmcli/git-2.1.0"
       sources."@npmcli/installed-package-contents-1.0.7"
@@ -90787,23 +93068,23 @@ in
         ];
       })
       sources."@octokit/graphql-4.6.4"
-      sources."@octokit/openapi-types-8.1.4"
+      sources."@octokit/openapi-types-9.1.0"
       sources."@octokit/plugin-enterprise-rest-6.0.1"
-      sources."@octokit/plugin-paginate-rest-2.13.6"
+      sources."@octokit/plugin-paginate-rest-2.14.0"
       sources."@octokit/plugin-request-log-1.0.4"
-      sources."@octokit/plugin-rest-endpoint-methods-5.3.7"
+      sources."@octokit/plugin-rest-endpoint-methods-5.5.0"
       (sources."@octokit/request-5.6.0" // {
         dependencies = [
           sources."is-plain-object-5.0.0"
         ];
       })
       sources."@octokit/request-error-2.1.0"
-      sources."@octokit/rest-18.6.6"
-      sources."@octokit/types-6.17.4"
+      sources."@octokit/rest-18.7.0"
+      sources."@octokit/types-6.21.0"
       sources."@tootallnate/once-1.1.2"
-      sources."@types/minimatch-3.0.4"
-      sources."@types/minimist-1.2.1"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/minimist-1.2.2"
+      sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
       sources."JSONStream-1.3.5"
       sources."abbrev-1.1.1"
@@ -90828,7 +93109,6 @@ in
         ];
       })
       sources."array-differ-3.0.0"
-      sources."array-find-index-1.0.2"
       sources."array-ify-1.0.0"
       sources."array-union-2.1.0"
       sources."arrify-2.0.1"
@@ -90885,13 +93165,13 @@ in
       sources."config-chain-1.1.13"
       sources."console-control-strings-1.1.0"
       sources."conventional-changelog-angular-5.0.12"
-      (sources."conventional-changelog-core-4.2.2" // {
+      (sources."conventional-changelog-core-4.2.3" // {
         dependencies = [
           sources."normalize-package-data-3.0.2"
         ];
       })
       sources."conventional-changelog-preset-loader-2.3.4"
-      (sources."conventional-changelog-writer-4.1.0" // {
+      (sources."conventional-changelog-writer-5.0.0" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
@@ -90902,7 +93182,6 @@ in
       sources."core-util-is-1.0.2"
       sources."cosmiconfig-7.0.0"
       sources."cross-spawn-7.0.3"
-      sources."currently-unhandled-0.4.1"
       sources."dargs-7.0.0"
       sources."dashdash-1.14.1"
       sources."dateformat-3.0.3"
@@ -90948,9 +93227,9 @@ in
       })
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."figures-3.2.0"
       sources."fill-range-7.0.1"
       sources."filter-obj-1.1.0"
@@ -90970,34 +93249,28 @@ in
       })
       sources."get-caller-file-2.0.5"
       sources."get-intrinsic-1.1.1"
-      (sources."get-pkg-repo-1.4.0" // {
+      (sources."get-pkg-repo-4.1.2" // {
         dependencies = [
-          sources."camelcase-2.1.1"
-          sources."camelcase-keys-2.1.0"
-          sources."find-up-1.1.2"
-          sources."hosted-git-info-2.8.9"
-          sources."indent-string-2.1.0"
-          sources."load-json-file-1.1.0"
-          sources."map-obj-1.0.1"
-          sources."meow-3.7.0"
-          sources."parse-json-2.2.0"
-          sources."path-exists-2.1.0"
-          sources."path-type-1.1.0"
-          sources."pify-2.3.0"
-          sources."read-pkg-1.1.0"
-          sources."read-pkg-up-1.0.1"
+          sources."meow-7.1.1"
+          (sources."read-pkg-5.2.0" // {
+            dependencies = [
+              sources."type-fest-0.6.0"
+            ];
+          })
+          (sources."read-pkg-up-7.0.1" // {
+            dependencies = [
+              sources."type-fest-0.8.1"
+            ];
+          })
           sources."readable-stream-2.3.7"
-          sources."redent-1.0.0"
           sources."safe-buffer-5.1.2"
           sources."string_decoder-1.1.1"
-          sources."strip-bom-2.0.0"
-          sources."strip-indent-1.0.1"
           sources."through2-2.0.5"
-          sources."trim-newlines-1.0.0"
+          sources."type-fest-0.13.1"
+          sources."yargs-parser-18.1.3"
         ];
       })
       sources."get-port-5.1.1"
-      sources."get-stdin-4.0.1"
       sources."get-stream-6.0.1"
       sources."getpass-0.1.7"
       sources."git-raw-commits-2.0.10"
@@ -91011,7 +93284,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."git-up-4.0.2"
+      sources."git-up-4.0.5"
       sources."git-url-parse-11.5.0"
       sources."gitconfiglocal-1.0.0"
       sources."glob-7.1.7"
@@ -91061,17 +93334,15 @@ in
           sources."strip-ansi-6.0.0"
         ];
       })
-      sources."interpret-1.4.0"
       sources."ip-1.1.5"
       sources."is-arrayish-0.2.1"
       sources."is-bigint-1.0.2"
       sources."is-boolean-object-1.1.1"
       sources."is-callable-1.2.3"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-date-object-1.0.4"
       sources."is-extglob-2.1.1"
-      sources."is-finite-1.1.0"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
       sources."is-lambda-1.0.1"
@@ -91088,7 +93359,6 @@ in
       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."isarray-1.0.0"
       sources."isexe-2.0.0"
       sources."isobject-3.0.1"
@@ -91122,14 +93392,13 @@ in
       sources."lodash.ismatch-4.4.0"
       sources."lodash.template-4.5.0"
       sources."lodash.templatesettings-4.2.0"
-      sources."loud-rejection-1.6.0"
       sources."lru-cache-6.0.0"
       (sources."make-dir-2.1.0" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
       })
-      sources."make-fetch-happen-9.0.3"
+      sources."make-fetch-happen-9.0.4"
       sources."map-obj-4.2.1"
       (sources."meow-8.1.2" // {
         dependencies = [
@@ -91166,7 +93435,7 @@ in
       })
       sources."minipass-3.1.3"
       sources."minipass-collect-1.0.2"
-      sources."minipass-fetch-1.3.3"
+      sources."minipass-fetch-1.3.4"
       sources."minipass-flush-1.0.5"
       sources."minipass-json-stream-1.0.1"
       sources."minipass-pipeline-1.2.4"
@@ -91189,7 +93458,7 @@ in
           sources."semver-5.7.1"
         ];
       })
-      sources."normalize-url-4.5.1"
+      sources."normalize-url-6.1.0"
       sources."npm-bundled-1.1.2"
       sources."npm-install-checks-4.0.0"
       (sources."npm-lifecycle-3.1.5" // {
@@ -91219,7 +93488,7 @@ in
       sources."number-is-nan-1.0.1"
       sources."oauth-sign-0.9.0"
       sources."object-assign-4.1.1"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."object.getownpropertydescriptors-2.1.2"
@@ -91239,16 +93508,15 @@ in
       sources."p-timeout-3.2.0"
       sources."p-try-2.2.0"
       sources."p-waterfall-2.1.1"
-      sources."pacote-11.3.4"
+      sources."pacote-11.3.5"
       sources."parent-module-1.0.1"
-      sources."parse-github-repo-url-1.4.1"
       sources."parse-json-5.2.0"
       (sources."parse-path-4.0.3" // {
         dependencies = [
           sources."qs-6.10.1"
         ];
       })
-      sources."parse-url-5.0.7"
+      sources."parse-url-6.0.0"
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-3.1.1"
@@ -91257,8 +93525,6 @@ in
       sources."performance-now-2.1.0"
       sources."picomatch-2.3.0"
       sources."pify-4.0.1"
-      sources."pinkie-2.0.4"
-      sources."pinkie-promise-2.0.1"
       sources."pkg-dir-4.2.0"
       sources."process-nextick-args-2.0.1"
       sources."promise-inflight-1.0.1"
@@ -91299,9 +93565,7 @@ in
       })
       sources."readable-stream-3.6.0"
       sources."readdir-scoped-modules-1.1.0"
-      sources."rechoir-0.6.2"
       sources."redent-3.0.0"
-      sources."repeating-2.0.1"
       sources."request-2.88.2"
       sources."require-directory-2.1.1"
       sources."resolve-1.20.0"
@@ -91321,7 +93585,6 @@ in
       sources."shallow-clone-3.0.1"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
-      sources."shelljs-0.8.4"
       sources."side-channel-1.0.4"
       sources."signal-exit-3.0.3"
       sources."slash-3.0.0"
@@ -91468,7 +93731,7 @@ in
       sources."make-dir-2.1.0"
       sources."mime-1.6.0"
       sources."ms-2.1.3"
-      sources."needle-2.6.0"
+      sources."needle-2.8.0"
       sources."parse-node-version-1.0.1"
       sources."pify-4.0.1"
       sources."prr-1.0.1"
@@ -92348,12 +94611,12 @@ in
     dependencies = [
       sources."@babel/code-frame-7.14.5"
       sources."@babel/compat-data-7.14.7"
-      sources."@babel/core-7.14.6"
-      sources."@babel/generator-7.14.5"
+      sources."@babel/core-7.14.8"
+      sources."@babel/generator-7.14.8"
       sources."@babel/helper-annotate-as-pure-7.14.5"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.14.5"
       sources."@babel/helper-compilation-targets-7.14.5"
-      sources."@babel/helper-create-class-features-plugin-7.14.6"
+      sources."@babel/helper-create-class-features-plugin-7.14.8"
       sources."@babel/helper-create-regexp-features-plugin-7.14.5"
       sources."@babel/helper-define-polyfill-provider-0.2.3"
       sources."@babel/helper-explode-assignable-expression-7.14.5"
@@ -92362,24 +94625,24 @@ in
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-member-expression-to-functions-7.14.7"
       sources."@babel/helper-module-imports-7.14.5"
-      sources."@babel/helper-module-transforms-7.14.5"
+      sources."@babel/helper-module-transforms-7.14.8"
       sources."@babel/helper-optimise-call-expression-7.14.5"
       sources."@babel/helper-plugin-utils-7.14.5"
       sources."@babel/helper-remap-async-to-generator-7.14.5"
       sources."@babel/helper-replace-supers-7.14.5"
-      sources."@babel/helper-simple-access-7.14.5"
+      sources."@babel/helper-simple-access-7.14.8"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.14.5"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/helper-validator-option-7.14.5"
       sources."@babel/helper-wrap-function-7.14.5"
-      sources."@babel/helpers-7.14.6"
+      sources."@babel/helpers-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5"
       sources."@babel/plugin-external-helpers-7.8.3"
       sources."@babel/plugin-proposal-async-generator-functions-7.14.7"
@@ -92446,13 +94709,13 @@ in
       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.14.7"
+      sources."@babel/preset-env-7.14.8"
       sources."@babel/preset-modules-0.1.4"
       sources."@babel/preset-stage-2-7.8.3"
-      sources."@babel/runtime-7.14.6"
+      sources."@babel/runtime-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
       sources."@cnakazawa/watch-1.0.4"
       sources."@comandeer/babel-plugin-banner-5.0.0"
       sources."@istanbuljs/load-nyc-config-1.1.0"
@@ -92463,21 +94726,21 @@ in
         ];
       })
       sources."@jest/types-25.5.0"
-      sources."@types/babel__core-7.1.14"
-      sources."@types/babel__generator-7.6.2"
-      sources."@types/babel__template-7.4.0"
-      sources."@types/babel__traverse-7.14.0"
-      sources."@types/estree-0.0.49"
+      sources."@types/babel__core-7.1.15"
+      sources."@types/babel__generator-7.6.3"
+      sources."@types/babel__template-7.4.1"
+      sources."@types/babel__traverse-7.14.2"
+      sources."@types/estree-0.0.50"
       sources."@types/graceful-fs-4.1.5"
       sources."@types/istanbul-lib-coverage-2.0.3"
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-1.1.2"
-      sources."@types/json-schema-7.0.7"
-      sources."@types/node-15.14.0"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@types/json-schema-7.0.8"
+      sources."@types/node-16.4.0"
+      sources."@types/normalize-package-data-2.4.1"
       sources."@types/resolve-0.0.8"
-      sources."@types/yargs-15.0.13"
-      sources."@types/yargs-parser-20.2.0"
+      sources."@types/yargs-15.0.14"
+      sources."@types/yargs-parser-20.2.1"
       sources."@webassemblyjs/ast-1.9.0"
       sources."@webassemblyjs/floating-point-hex-parser-1.9.0"
       sources."@webassemblyjs/helper-api-error-1.9.0"
@@ -92646,7 +94909,7 @@ in
       sources."cached-path-relative-1.0.2"
       sources."call-bind-1.0.2"
       sources."camelcase-5.3.1"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       sources."capture-exit-2.0.0"
       sources."caseless-0.12.0"
       (sources."chalk-3.0.0" // {
@@ -92770,7 +95033,7 @@ in
       sources."duplexer2-0.1.4"
       sources."duplexify-3.7.1"
       sources."ecc-jsbn-0.1.2"
-      sources."electron-to-chromium-1.3.765"
+      sources."electron-to-chromium-1.3.782"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -92839,7 +95102,7 @@ in
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."fast-safe-stringify-2.0.7"
+      sources."fast-safe-stringify-2.0.8"
       sources."fb-watchman-2.0.1"
       sources."figgy-pudding-3.5.2"
       sources."file-uri-to-path-1.0.0"
@@ -92945,7 +95208,7 @@ in
       sources."is-binary-path-2.1.0"
       sources."is-buffer-1.1.6"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-deflate-1.0.0"
       sources."is-descriptor-1.0.2"
@@ -93660,10 +95923,10 @@ in
   mastodon-bot = nodeEnv.buildNodePackage {
     name = "mastodon-bot";
     packageName = "mastodon-bot";
-    version = "1.13.5-20210701203013";
+    version = "1.13.7-20210708171758";
     src = fetchurl {
-      url = "https://registry.npmjs.org/mastodon-bot/-/mastodon-bot-1.13.5-20210701203013.tgz";
-      sha512 = "d5HCg9yu6xhFWnUPKBFSzPoXsxXRCYrmy4AGMvjlifWqQnCf9EklbocqVZSO1j50JRymlfDELq1QO/WYKZ5TYQ==";
+      url = "https://registry.npmjs.org/mastodon-bot/-/mastodon-bot-1.13.7-20210708171758.tgz";
+      sha512 = "9jnKVFg0PERBhNgTDv8G86QPFkG7ZGCGCmxgPkj9yTfNu+2Kx+mSzo7hchbDuo6UN1ZLlWGq53TJHZ3kJ/kIQQ==";
     };
     dependencies = [
       sources."acorn-5.7.4"
@@ -93807,7 +96070,7 @@ in
       sources."inherits-2.0.4"
       sources."inquirer-0.12.0"
       sources."interpret-1.4.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-fullwidth-code-point-1.0.0"
       sources."is-my-ip-valid-1.0.0"
       sources."is-my-json-valid-2.20.5"
@@ -94018,8 +96281,8 @@ in
     };
     dependencies = [
       sources."@braintree/sanitize-url-3.1.0"
-      sources."@types/node-15.14.0"
-      sources."@types/yauzl-2.9.1"
+      sources."@types/node-16.4.0"
+      sources."@types/yauzl-2.9.2"
       sources."agent-base-6.0.2"
       sources."ansi-styles-4.3.0"
       sources."balanced-match-1.0.2"
@@ -94149,24 +96412,24 @@ in
       sha512 = "LrJqn/26CxH9aQ9j7iPqnk9fS6ywI3gpCt7HS26UXeycC3VBfhkoONLZQW/JXW3aJGoUHUlxunsQBI0h89EJIw==";
     };
     dependencies = [
-      sources."@fluentui/date-time-utilities-8.2.0"
-      sources."@fluentui/dom-utilities-2.1.2"
-      sources."@fluentui/font-icons-mdl2-8.1.4"
-      sources."@fluentui/foundation-legacy-8.1.4"
-      sources."@fluentui/keyboard-key-0.3.2"
-      sources."@fluentui/merge-styles-8.1.2"
+      sources."@fluentui/date-time-utilities-8.2.1"
+      sources."@fluentui/dom-utilities-2.1.3"
+      sources."@fluentui/font-icons-mdl2-8.1.6"
+      sources."@fluentui/foundation-legacy-8.1.6"
+      sources."@fluentui/keyboard-key-0.3.3"
+      sources."@fluentui/merge-styles-8.1.3"
       sources."@fluentui/react-8.22.0"
-      sources."@fluentui/react-focus-8.1.5"
-      sources."@fluentui/react-hooks-8.2.3"
-      sources."@fluentui/react-window-provider-2.1.2"
-      sources."@fluentui/set-version-8.1.2"
-      sources."@fluentui/style-utilities-8.1.4"
-      sources."@fluentui/theme-2.1.3"
-      sources."@fluentui/utilities-8.2.0"
-      sources."@microsoft/load-themed-styles-1.10.190"
+      sources."@fluentui/react-focus-8.1.8"
+      sources."@fluentui/react-hooks-8.2.4"
+      sources."@fluentui/react-window-provider-2.1.3"
+      sources."@fluentui/set-version-8.1.3"
+      sources."@fluentui/style-utilities-8.2.0"
+      sources."@fluentui/theme-2.1.4"
+      sources."@fluentui/utilities-8.2.1"
+      sources."@microsoft/load-themed-styles-1.10.195"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/cors-2.8.10"
+      sources."@types/cors-2.8.12"
       sources."accepts-1.3.7"
       sources."ajv-6.12.6"
       sources."ansi-escapes-1.4.0"
@@ -94422,10 +96685,10 @@ in
   mocha = nodeEnv.buildNodePackage {
     name = "mocha";
     packageName = "mocha";
-    version = "9.0.1";
+    version = "9.0.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/mocha/-/mocha-9.0.1.tgz";
-      sha512 = "9zwsavlRO+5csZu6iRtl3GHImAbhERoDsZwdRkdJ/bE+eVplmoxNKE901ZJ9LdSchYBjSCPbjKc5XvcAri2ylw==";
+      url = "https://registry.npmjs.org/mocha/-/mocha-9.0.2.tgz";
+      sha512 = "FpspiWU+UT9Sixx/wKimvnpkeW0mh6ROAKkIaPokj3xZgxeRhcna/k5X57jJghEr8X+Cgu/Vegf8zCX5ugSuTA==";
     };
     dependencies = [
       sources."@ungap/promise-all-settled-1.1.2"
@@ -94445,7 +96708,7 @@ in
           sources."supports-color-7.2.0"
         ];
       })
-      sources."chokidar-3.5.1"
+      sources."chokidar-3.5.2"
       (sources."cliui-7.0.4" // {
         dependencies = [
           sources."ansi-regex-5.0.0"
@@ -94502,10 +96765,10 @@ in
       sources."path-is-absolute-1.0.1"
       sources."picomatch-2.3.0"
       sources."randombytes-2.1.0"
-      sources."readdirp-3.5.0"
+      sources."readdirp-3.6.0"
       sources."require-directory-2.1.1"
       sources."safe-buffer-5.2.1"
-      sources."serialize-javascript-5.0.1"
+      sources."serialize-javascript-6.0.0"
       sources."string-width-2.1.1"
       sources."strip-ansi-4.0.0"
       sources."strip-json-comments-3.1.1"
@@ -94513,7 +96776,7 @@ in
       sources."to-regex-range-5.0.1"
       sources."which-2.0.2"
       sources."wide-align-1.1.3"
-      sources."workerpool-6.1.4"
+      sources."workerpool-6.1.5"
       (sources."wrap-ansi-7.0.0" // {
         dependencies = [
           sources."ansi-regex-5.0.0"
@@ -94589,7 +96852,7 @@ in
       sources."mime-types-2.1.31"
       sources."ms-2.1.3"
       sources."native-promise-only-0.8.1"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."path-loader-1.0.10"
       sources."process-nextick-args-2.0.1"
       sources."punycode-2.1.1"
@@ -94627,7 +96890,7 @@ in
       sources."color-3.0.0"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."color-string-1.5.5"
+      sources."color-string-1.6.0"
       sources."colornames-1.1.1"
       sources."colors-1.4.0"
       sources."colorspace-1.1.2"
@@ -94635,7 +96898,7 @@ in
       sources."diagnostics-1.1.1"
       sources."enabled-1.0.2"
       sources."env-variable-0.0.6"
-      sources."fast-safe-stringify-2.0.7"
+      sources."fast-safe-stringify-2.0.8"
       sources."fecha-2.3.3"
       sources."inherits-2.0.4"
       sources."is-arrayish-0.3.2"
@@ -94676,20 +96939,20 @@ in
   netlify-cli = nodeEnv.buildNodePackage {
     name = "netlify-cli";
     packageName = "netlify-cli";
-    version = "4.0.5";
+    version = "5.2.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/netlify-cli/-/netlify-cli-4.0.5.tgz";
-      sha512 = "p1wJwMMWHM/Av5/Bsabtr0UTX4lTJVZg7Hz+G9kbA/n2wdKoWAj5P5B+shDRGRBhaFDbCiHf36baKtLJWP4SiQ==";
+      url = "https://registry.npmjs.org/netlify-cli/-/netlify-cli-5.2.0.tgz";
+      sha512 = "Jwy74SaN5rM4xTE2QSZijF0qN1a/ZGh1PJWUmzmVFX1RnEgA1QMZ7MVHW04UXxZ3igx+G03GGzC071+FRLKT6g==";
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
       sources."@babel/compat-data-7.14.7"
-      (sources."@babel/core-7.14.6" // {
+      (sources."@babel/core-7.14.8" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/generator-7.14.5"
+      sources."@babel/generator-7.14.8"
       sources."@babel/helper-annotate-as-pure-7.14.5"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.14.5"
       (sources."@babel/helper-compilation-targets-7.14.5" // {
@@ -94697,7 +96960,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/helper-create-class-features-plugin-7.14.6"
+      sources."@babel/helper-create-class-features-plugin-7.14.8"
       sources."@babel/helper-create-regexp-features-plugin-7.14.5"
       (sources."@babel/helper-define-polyfill-provider-0.2.3" // {
         dependencies = [
@@ -94710,18 +96973,18 @@ in
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-member-expression-to-functions-7.14.7"
       sources."@babel/helper-module-imports-7.14.5"
-      sources."@babel/helper-module-transforms-7.14.5"
+      sources."@babel/helper-module-transforms-7.14.8"
       sources."@babel/helper-optimise-call-expression-7.14.5"
       sources."@babel/helper-plugin-utils-7.14.5"
       sources."@babel/helper-remap-async-to-generator-7.14.5"
       sources."@babel/helper-replace-supers-7.14.5"
-      sources."@babel/helper-simple-access-7.14.5"
+      sources."@babel/helper-simple-access-7.14.8"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.14.5"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/helper-validator-option-7.14.5"
       sources."@babel/helper-wrap-function-7.14.5"
-      sources."@babel/helpers-7.14.6"
+      sources."@babel/helpers-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -94731,7 +96994,7 @@ in
           sources."supports-color-5.5.0"
         ];
       })
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5"
       sources."@babel/plugin-proposal-async-generator-functions-7.14.7"
       sources."@babel/plugin-proposal-class-properties-7.14.5"
@@ -94794,34 +97057,36 @@ in
       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.14.7" // {
+      (sources."@babel/preset-env-7.14.8" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
       sources."@babel/preset-modules-0.1.4"
-      sources."@babel/runtime-7.14.6"
+      sources."@babel/runtime-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
-      sources."@bugsnag/browser-7.10.4"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
+      sources."@bugsnag/browser-7.10.5"
       sources."@bugsnag/core-7.10.0"
       sources."@bugsnag/cuid-3.0.0"
-      sources."@bugsnag/js-7.10.4"
+      sources."@bugsnag/js-7.10.5"
       sources."@bugsnag/node-7.10.1"
       sources."@bugsnag/safe-json-stringify-6.0.0"
       sources."@dabh/diagnostics-2.0.2"
       sources."@jest/types-24.9.0"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
-      (sources."@netlify/build-12.26.0" // {
+      (sources."@netlify/build-16.1.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
+          sources."boxen-4.2.0"
           sources."chalk-3.0.0"
           sources."execa-3.4.0"
           sources."is-plain-obj-2.1.0"
           sources."locate-path-5.0.0"
           sources."resolve-2.0.0-next.3"
           sources."semver-6.3.0"
+          sources."type-fest-0.8.1"
           sources."update-notifier-4.1.3"
         ];
       })
@@ -94833,7 +97098,7 @@ in
           sources."slash-3.0.0"
         ];
       })
-      (sources."@netlify/config-9.5.0" // {
+      (sources."@netlify/config-13.0.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."chalk-3.0.0"
@@ -94845,13 +97110,13 @@ in
         ];
       })
       sources."@netlify/esbuild-0.13.6"
-      (sources."@netlify/framework-info-5.5.0" // {
+      (sources."@netlify/framework-info-5.7.2" // {
         dependencies = [
           sources."p-limit-3.1.0"
           sources."p-locate-5.0.0"
         ];
       })
-      sources."@netlify/functions-utils-1.4.1"
+      sources."@netlify/functions-utils-1.4.7"
       (sources."@netlify/git-utils-1.0.11" // {
         dependencies = [
           sources."braces-3.0.2"
@@ -94862,25 +97127,40 @@ in
           sources."to-regex-range-5.0.1"
         ];
       })
+      sources."@netlify/local-functions-proxy-0.1.0"
+      sources."@netlify/local-functions-proxy-darwin-arm64-0.1.0"
+      sources."@netlify/local-functions-proxy-darwin-x64-0.1.0"
+      sources."@netlify/local-functions-proxy-freebsd-arm64-0.1.0"
+      sources."@netlify/local-functions-proxy-freebsd-x64-0.1.0"
+      sources."@netlify/local-functions-proxy-linux-arm-0.1.0"
+      sources."@netlify/local-functions-proxy-linux-arm64-0.1.0"
+      sources."@netlify/local-functions-proxy-linux-ia32-0.1.0"
+      sources."@netlify/local-functions-proxy-linux-ppc64-0.1.0"
+      sources."@netlify/local-functions-proxy-linux-x64-0.1.0"
+      sources."@netlify/local-functions-proxy-openbsd-x64-0.1.0"
+      sources."@netlify/local-functions-proxy-win32-ia32-0.1.0"
+      sources."@netlify/local-functions-proxy-win32-x64-0.1.0"
       sources."@netlify/open-api-2.5.0"
-      (sources."@netlify/plugin-edge-handlers-1.11.19" // {
+      (sources."@netlify/plugin-edge-handlers-1.11.22" // {
         dependencies = [
-          sources."@types/node-14.17.4"
+          sources."@types/node-14.17.5"
         ];
       })
-      sources."@netlify/plugins-list-2.18.1"
-      sources."@netlify/routing-local-proxy-0.30.2"
+      sources."@netlify/plugins-list-2.19.3"
+      sources."@netlify/routing-local-proxy-0.31.0"
       (sources."@netlify/run-utils-1.0.7" // {
         dependencies = [
           sources."execa-3.4.0"
         ];
       })
-      (sources."@netlify/zip-it-and-ship-it-4.8.0" // {
+      (sources."@netlify/zip-it-and-ship-it-4.14.0" // {
         dependencies = [
+          sources."ansi-styles-4.3.0"
           sources."cliui-7.0.4"
           sources."cp-file-9.1.0"
           sources."pkg-dir-5.0.0"
           sources."resolve-2.0.0-next.3"
+          sources."wrap-ansi-7.0.0"
           sources."y18n-5.0.8"
           sources."yargs-16.2.0"
           sources."yargs-parser-20.2.9"
@@ -94892,7 +97172,7 @@ in
         ];
       })
       sources."@nodelib/fs.stat-1.1.3"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       (sources."@oclif/color-0.1.2" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -94922,7 +97202,7 @@ in
           sources."array-union-2.1.0"
           sources."braces-3.0.2"
           sources."dir-glob-3.0.1"
-          sources."fast-glob-3.2.6"
+          sources."fast-glob-3.2.7"
           sources."fill-range-7.0.1"
           sources."glob-parent-5.1.2"
           sources."globby-11.0.4"
@@ -94934,10 +97214,12 @@ in
           sources."tslib-2.3.0"
         ];
       })
-      (sources."@oclif/errors-1.3.4" // {
+      (sources."@oclif/errors-1.3.5" // {
         dependencies = [
+          sources."ansi-styles-4.3.0"
           sources."clean-stack-3.0.1"
           sources."escape-string-regexp-4.0.0"
+          sources."wrap-ansi-7.0.0"
         ];
       })
       sources."@oclif/linewrap-1.0.0"
@@ -94998,18 +97280,18 @@ in
         ];
       })
       sources."@octokit/graphql-4.6.4"
-      sources."@octokit/openapi-types-8.1.4"
-      sources."@octokit/plugin-paginate-rest-2.13.6"
+      sources."@octokit/openapi-types-9.1.0"
+      sources."@octokit/plugin-paginate-rest-2.14.0"
       sources."@octokit/plugin-request-log-1.0.4"
-      sources."@octokit/plugin-rest-endpoint-methods-5.3.7"
+      sources."@octokit/plugin-rest-endpoint-methods-5.5.0"
       (sources."@octokit/request-5.6.0" // {
         dependencies = [
           sources."is-plain-object-5.0.0"
         ];
       })
       sources."@octokit/request-error-2.1.0"
-      sources."@octokit/rest-18.6.6"
-      sources."@octokit/types-6.17.4"
+      sources."@octokit/rest-18.7.0"
+      sources."@octokit/types-6.21.0"
       sources."@rollup/plugin-babel-5.3.0"
       (sources."@rollup/plugin-commonjs-18.1.0" // {
         dependencies = [
@@ -95033,35 +97315,35 @@ in
         ];
       })
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/cacheable-request-6.0.1"
-      sources."@types/decompress-4.2.3"
-      sources."@types/download-8.0.0"
+      sources."@types/cacheable-request-6.0.2"
+      sources."@types/decompress-4.2.4"
+      sources."@types/download-8.0.1"
       sources."@types/estree-0.0.39"
-      sources."@types/glob-7.1.3"
-      sources."@types/got-8.3.5"
-      sources."@types/http-cache-semantics-4.0.0"
-      sources."@types/http-proxy-1.17.6"
+      sources."@types/glob-7.1.4"
+      sources."@types/got-8.3.6"
+      sources."@types/http-cache-semantics-4.0.1"
+      sources."@types/http-proxy-1.17.7"
       sources."@types/istanbul-lib-coverage-2.0.3"
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-1.1.2"
-      sources."@types/keyv-3.1.1"
-      sources."@types/minimatch-3.0.4"
-      sources."@types/node-15.14.0"
-      sources."@types/node-fetch-2.5.10"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@types/keyv-3.1.2"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/node-16.4.0"
+      sources."@types/node-fetch-2.5.11"
+      sources."@types/normalize-package-data-2.4.1"
       sources."@types/resolve-1.17.1"
       sources."@types/responselike-1.0.0"
-      sources."@types/semver-7.3.6"
-      sources."@types/yargs-13.0.11"
-      sources."@types/yargs-parser-20.2.0"
-      sources."@typescript-eslint/types-4.28.1"
-      (sources."@typescript-eslint/typescript-estree-4.28.1" // {
+      sources."@types/semver-7.3.7"
+      sources."@types/yargs-13.0.12"
+      sources."@types/yargs-parser-20.2.1"
+      sources."@typescript-eslint/types-4.28.4"
+      (sources."@typescript-eslint/typescript-estree-4.28.4" // {
         dependencies = [
           sources."@nodelib/fs.stat-2.0.5"
           sources."array-union-2.1.0"
           sources."braces-3.0.2"
           sources."dir-glob-3.0.1"
-          sources."fast-glob-3.2.6"
+          sources."fast-glob-3.2.7"
           sources."fill-range-7.0.1"
           sources."glob-parent-5.1.2"
           sources."globby-11.0.4"
@@ -95072,17 +97354,17 @@ in
           sources."to-regex-range-5.0.1"
         ];
       })
-      sources."@typescript-eslint/visitor-keys-4.28.1"
+      sources."@typescript-eslint/visitor-keys-4.28.4"
       sources."@ungap/from-entries-0.2.1"
       sources."accepts-1.3.7"
       sources."acorn-8.4.1"
       sources."agent-base-6.0.2"
       sources."aggregate-error-3.1.0"
-      sources."ajv-8.6.0"
+      sources."ajv-8.6.2"
       (sources."all-node-versions-8.0.0" // {
         dependencies = [
           sources."@jest/types-25.5.0"
-          sources."@types/yargs-15.0.13"
+          sources."@types/yargs-15.0.14"
           sources."ansi-regex-5.0.0"
           sources."ansi-styles-4.3.0"
           sources."chalk-3.0.0"
@@ -95162,11 +97444,12 @@ in
           sources."raw-body-2.4.0"
         ];
       })
-      (sources."boxen-4.2.0" // {
+      (sources."boxen-5.0.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
-          sources."chalk-3.0.0"
-          sources."type-fest-0.8.1"
+          sources."camelcase-6.2.0"
+          sources."type-fest-0.20.2"
+          sources."wrap-ansi-7.0.0"
         ];
       })
       sources."brace-expansion-1.1.11"
@@ -95204,7 +97487,7 @@ in
       sources."call-me-maybe-1.0.1"
       sources."callsite-1.0.0"
       sources."camelcase-5.3.1"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       sources."cardinal-2.1.1"
       (sources."chalk-4.1.1" // {
         dependencies = [
@@ -95253,7 +97536,7 @@ in
           sources."strip-ansi-3.0.1"
         ];
       })
-      (sources."cli-ux-5.6.2" // {
+      (sources."cli-ux-5.6.3" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."argparse-1.0.10"
@@ -95272,12 +97555,7 @@ in
         ];
       })
       sources."cli-width-2.2.1"
-      (sources."cliui-6.0.0" // {
-        dependencies = [
-          sources."ansi-styles-4.3.0"
-          sources."wrap-ansi-6.2.0"
-        ];
-      })
+      sources."cliui-6.0.0"
       sources."clone-1.0.4"
       sources."clone-response-1.0.2"
       sources."code-point-at-1.1.0"
@@ -95290,7 +97568,7 @@ in
       })
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
-      sources."color-string-1.5.5"
+      sources."color-string-1.6.0"
       sources."colorette-1.2.2"
       sources."colors-1.4.0"
       sources."colorspace-1.1.2"
@@ -95410,7 +97688,7 @@ in
           sources."array-union-2.1.0"
           sources."braces-3.0.2"
           sources."dir-glob-3.0.1"
-          sources."fast-glob-3.2.6"
+          sources."fast-glob-3.2.7"
           sources."fill-range-7.0.1"
           sources."glob-parent-5.1.2"
           sources."globby-11.0.4"
@@ -95475,7 +97753,7 @@ in
       })
       sources."duplexer3-0.1.4"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.3.765"
+      sources."electron-to-chromium-1.3.782"
       sources."elegant-spinner-1.0.1"
       sources."elf-cam-0.1.1"
       sources."emoji-regex-8.0.0"
@@ -95560,9 +97838,9 @@ in
       sources."fast-equals-2.0.3"
       sources."fast-glob-2.2.7"
       sources."fast-levenshtein-2.0.6"
-      sources."fast-safe-stringify-2.0.7"
+      sources."fast-safe-stringify-2.0.8"
       sources."fast-stringify-1.1.2"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."fd-slicer-1.1.0"
       sources."fecha-4.2.1"
       (sources."fetch-node-website-5.0.3" // {
@@ -95573,8 +97851,8 @@ in
             ];
           })
           sources."@sindresorhus/is-2.1.1"
-          sources."@szmarczak/http-timer-4.0.5"
-          sources."@types/yargs-15.0.13"
+          sources."@szmarczak/http-timer-4.0.6"
+          sources."@types/yargs-15.0.14"
           sources."ansi-regex-5.0.0"
           sources."ansi-styles-4.3.0"
           sources."cacheable-request-7.0.2"
@@ -95645,7 +97923,7 @@ in
       sources."get-port-5.1.1"
       sources."get-stream-5.2.0"
       sources."get-value-2.0.6"
-      sources."gh-release-fetch-2.0.0"
+      sources."gh-release-fetch-2.0.1"
       sources."git-repo-info-2.1.1"
       sources."gitconfiglocal-2.1.0"
       sources."glob-7.1.7"
@@ -95664,7 +97942,7 @@ in
           sources."array-union-2.1.0"
           sources."braces-3.0.2"
           sources."dir-glob-3.0.1"
-          sources."fast-glob-3.2.6"
+          sources."fast-glob-3.2.7"
           sources."fill-range-7.0.1"
           sources."glob-parent-5.1.2"
           sources."ignore-5.1.8"
@@ -95784,7 +98062,7 @@ in
           sources."ci-info-2.0.0"
         ];
       })
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-descriptor-1.0.2"
       sources."is-docker-2.2.1"
@@ -96027,7 +98305,7 @@ in
           sources."qs-6.10.1"
         ];
       })
-      (sources."netlify-redirect-parser-8.0.0" // {
+      (sources."netlify-redirect-parser-8.1.0" // {
         dependencies = [
           sources."is-plain-obj-2.1.0"
         ];
@@ -96040,7 +98318,7 @@ in
       (sources."node-version-alias-1.0.1" // {
         dependencies = [
           sources."@jest/types-25.5.0"
-          sources."@types/yargs-15.0.13"
+          sources."@types/yargs-15.0.14"
           sources."ansi-regex-5.0.0"
           sources."ansi-styles-4.3.0"
           sources."chalk-3.0.0"
@@ -96053,7 +98331,7 @@ in
       (sources."normalize-node-version-10.0.0" // {
         dependencies = [
           sources."@jest/types-25.5.0"
-          sources."@types/yargs-15.0.13"
+          sources."@types/yargs-15.0.14"
           sources."ansi-regex-5.0.0"
           sources."ansi-styles-4.3.0"
           sources."chalk-3.0.0"
@@ -96086,7 +98364,7 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-keys-1.1.1"
       sources."object-treeify-1.1.33"
       sources."object-visit-1.0.1"
@@ -96205,7 +98483,7 @@ in
         ];
       })
       sources."posix-character-classes-0.1.1"
-      sources."postcss-8.3.5"
+      sources."postcss-8.3.6"
       sources."postcss-values-parser-2.0.1"
       sources."precinct-8.1.0"
       sources."precond-0.2.3"
@@ -96291,8 +98569,9 @@ in
       })
       sources."ret-0.1.15"
       sources."reusify-1.0.4"
+      sources."rfdc-1.3.0"
       sources."rimraf-3.0.2"
-      sources."rollup-2.52.7"
+      sources."rollup-2.53.3"
       (sources."rollup-plugin-inject-3.0.2" // {
         dependencies = [
           sources."estree-walker-0.6.1"
@@ -96309,7 +98588,6 @@ in
       sources."run-parallel-1.2.0"
       sources."rxjs-6.6.7"
       sources."safe-buffer-5.2.1"
-      sources."safe-join-0.1.3"
       sources."safe-json-stringify-1.2.0"
       sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
@@ -96549,13 +98827,10 @@ in
       })
       (sources."update-notifier-5.1.0" // {
         dependencies = [
-          sources."boxen-5.0.1"
-          sources."camelcase-6.2.0"
           sources."global-dirs-3.0.0"
           sources."ini-2.0.0"
           sources."is-installed-globally-0.4.0"
           sources."is-npm-5.0.0"
-          sources."type-fest-0.20.2"
         ];
       })
       sources."uri-js-4.4.1"
@@ -96607,7 +98882,7 @@ in
         ];
       })
       sources."word-wrap-1.2.3"
-      (sources."wrap-ansi-7.0.0" // {
+      (sources."wrap-ansi-6.2.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
         ];
@@ -96721,7 +98996,7 @@ in
       sources."minimatch-3.0.4"
       sources."minipass-3.1.3"
       sources."minipass-collect-1.0.2"
-      sources."minipass-fetch-1.3.3"
+      sources."minipass-fetch-1.3.4"
       sources."minipass-flush-1.0.5"
       sources."minipass-pipeline-1.2.4"
       sources."minipass-sized-1.0.3"
@@ -96902,7 +99177,7 @@ in
       sources."invert-kv-1.0.0"
       sources."ipaddr.js-1.9.1"
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-finite-1.1.0"
       sources."is-fullwidth-code-point-1.0.0"
       sources."is-typedarray-1.0.0"
@@ -97130,7 +99405,7 @@ in
       sources."minizlib-1.3.3"
       sources."mkdirp-0.5.5"
       sources."ms-2.1.3"
-      sources."needle-2.6.0"
+      sources."needle-2.8.0"
       sources."nopt-4.0.3"
       sources."npm-bundled-1.1.2"
       sources."npm-normalize-package-bin-1.0.1"
@@ -97176,20 +99451,20 @@ in
   node-red = nodeEnv.buildNodePackage {
     name = "node-red";
     packageName = "node-red";
-    version = "1.3.5";
+    version = "2.0.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/node-red/-/node-red-1.3.5.tgz";
-      sha512 = "P/EmWwzuY/0mQFlrklSUrVANdv9xQsbrpKrpfA8tuhhxu1OEiSgzYdo87Zj13Hi38K4f1rNPQj4rw2vEBcYS/g==";
+      url = "https://registry.npmjs.org/node-red/-/node-red-2.0.1.tgz";
+      sha512 = "r+wpPLWySuj/toc1mMkR8++mpFoTm9RZwsqe6guFc/IwEpQdDpmYkT11OGmTqjUqr8WdteOP+MNvdgNgtTzyxQ==";
     };
     dependencies = [
-      sources."@babel/runtime-7.14.6"
-      sources."@node-red/editor-api-1.3.5"
-      sources."@node-red/editor-client-1.3.5"
-      (sources."@node-red/nodes-1.3.5" // {
+      sources."@babel/runtime-7.14.8"
+      sources."@mapbox/node-pre-gyp-1.0.5"
+      sources."@node-red/editor-api-2.0.1"
+      sources."@node-red/editor-client-2.0.1"
+      (sources."@node-red/nodes-2.0.1" // {
         dependencies = [
-          sources."cookie-0.4.1"
           sources."http-errors-1.7.3"
-          sources."iconv-lite-0.6.2"
+          sources."iconv-lite-0.6.3"
           sources."inherits-2.0.4"
           sources."media-typer-1.1.0"
           (sources."raw-body-2.4.1" // {
@@ -97199,18 +99474,28 @@ in
           })
         ];
       })
-      sources."@node-red/registry-1.3.5"
-      sources."@node-red/runtime-1.3.5"
-      sources."@node-red/util-1.3.5"
+      sources."@node-red/registry-2.0.1"
+      sources."@node-red/runtime-2.0.1"
+      sources."@node-red/util-2.0.1"
+      sources."@sindresorhus/is-4.0.1"
+      sources."@szmarczak/http-timer-4.0.6"
+      sources."@types/cacheable-request-6.0.2"
+      sources."@types/http-cache-semantics-4.0.1"
+      sources."@types/keyv-3.1.2"
+      sources."@types/node-16.4.0"
+      sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."accepts-1.3.7"
+      sources."acorn-8.4.1"
+      sources."acorn-walk-8.1.1"
       (sources."agent-base-6.0.2" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."ms-2.1.2"
         ];
       })
-      sources."ajv-6.12.6"
+      sources."ajv-8.6.0"
+      sources."ansi-colors-4.1.1"
       sources."ansi-regex-2.1.1"
       sources."append-field-1.0.0"
       sources."aproba-1.2.0"
@@ -97224,14 +99509,9 @@ in
       })
       sources."argparse-1.0.10"
       sources."array-flatten-1.1.1"
-      sources."asn1-0.2.4"
-      sources."assert-plus-1.0.0"
       sources."async-0.1.22"
-      sources."async-limiter-1.0.1"
       sources."async-mutex-0.3.1"
       sources."asynckit-0.4.0"
-      sources."aws-sign2-0.7.0"
-      sources."aws4-1.11.0"
       sources."axios-0.21.1"
       sources."balanced-match-1.0.2"
       sources."base64-js-1.5.1"
@@ -97240,21 +99520,7 @@ in
           sources."safe-buffer-5.1.2"
         ];
       })
-      (sources."bcrypt-3.0.6" // {
-        dependencies = [
-          sources."chownr-1.1.4"
-          sources."fs-minipass-1.2.7"
-          sources."minipass-2.9.0"
-          sources."minizlib-1.3.3"
-          sources."nan-2.13.2"
-          sources."node-pre-gyp-0.12.0"
-          sources."nopt-4.0.3"
-          sources."semver-5.7.1"
-          sources."tar-4.4.13"
-          sources."yallist-3.1.1"
-        ];
-      })
-      sources."bcrypt-pbkdf-1.0.2"
+      sources."bcrypt-5.0.1"
       sources."bcryptjs-2.4.3"
       (sources."bl-4.1.0" // {
         dependencies = [
@@ -97270,12 +99536,14 @@ in
       sources."buffer-from-1.1.1"
       sources."busboy-0.2.14"
       sources."bytes-3.1.0"
-      sources."callback-stream-1.1.0"
-      sources."caseless-0.12.0"
-      sources."cheerio-0.22.0"
+      sources."cacheable-lookup-5.0.4"
+      sources."cacheable-request-7.0.2"
+      sources."cheerio-1.0.0-rc.10"
+      sources."cheerio-select-1.5.0"
       sources."chownr-2.0.0"
       sources."cli-table-0.3.6"
       sources."clone-2.1.2"
+      sources."clone-response-1.0.2"
       sources."code-point-at-1.1.0"
       sources."colors-1.0.3"
       sources."combined-stream-1.0.8"
@@ -97296,17 +99564,25 @@ in
         ];
       })
       sources."content-type-1.0.4"
-      sources."cookie-0.4.0"
-      sources."cookie-parser-1.4.5"
+      sources."cookie-0.4.1"
+      (sources."cookie-parser-1.4.5" // {
+        dependencies = [
+          sources."cookie-0.4.0"
+        ];
+      })
       sources."cookie-signature-1.0.6"
       sources."core-util-is-1.0.2"
       sources."cors-2.8.5"
-      sources."cron-1.7.2"
-      sources."css-select-1.2.0"
-      sources."css-what-2.1.3"
-      sources."dashdash-1.14.1"
+      sources."cronosjs-1.7.1"
+      sources."css-select-4.1.3"
+      sources."css-what-5.0.1"
       sources."debug-2.6.9"
-      sources."deep-extend-0.6.0"
+      (sources."decompress-response-6.0.0" // {
+        dependencies = [
+          sources."mimic-response-3.1.0"
+        ];
+      })
+      sources."defer-to-connect-2.0.1"
       sources."delayed-stream-1.0.0"
       sources."delegates-1.0.0"
       sources."denque-1.5.0"
@@ -97314,126 +99590,102 @@ in
       sources."destroy-1.0.4"
       sources."detect-libc-1.0.3"
       sources."dicer-0.2.5"
-      sources."dom-serializer-0.1.1"
-      sources."domelementtype-1.3.1"
-      sources."domhandler-2.4.2"
-      sources."domutils-1.5.1"
-      (sources."duplexify-3.7.1" // {
+      sources."dom-serializer-1.3.2"
+      sources."domelementtype-2.2.0"
+      sources."domhandler-4.2.0"
+      sources."domutils-2.7.0"
+      (sources."duplexify-4.1.2" // {
         dependencies = [
-          sources."isarray-1.0.0"
-          sources."readable-stream-2.3.7"
-          sources."safe-buffer-5.1.2"
-          sources."string_decoder-1.1.1"
+          sources."readable-stream-3.6.0"
+          sources."string_decoder-1.3.0"
         ];
       })
-      sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
-      sources."entities-1.1.2"
+      sources."enquirer-2.3.6"
+      sources."entities-2.2.0"
       sources."escape-html-1.0.3"
       sources."esprima-4.0.1"
       sources."etag-1.8.1"
       (sources."express-4.17.1" // {
         dependencies = [
+          sources."cookie-0.4.0"
           sources."safe-buffer-5.1.2"
         ];
       })
-      (sources."express-session-1.17.1" // {
+      (sources."express-session-1.17.2" // {
         dependencies = [
           sources."depd-2.0.0"
         ];
       })
-      sources."extend-3.0.2"
-      sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-json-stable-stringify-2.1.0"
       sources."finalhandler-1.1.2"
       sources."follow-redirects-1.14.1"
-      sources."forever-agent-0.6.1"
-      sources."form-data-2.3.3"
+      sources."form-data-4.0.0"
       sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
-      sources."fs-extra-8.1.0"
+      (sources."fs-extra-10.0.0" // {
+        dependencies = [
+          sources."universalify-2.0.0"
+        ];
+      })
       sources."fs-minipass-2.1.0"
       sources."fs.notify-0.0.4"
       sources."fs.realpath-1.0.0"
       sources."gauge-2.7.4"
-      sources."getpass-0.1.7"
+      sources."get-stream-5.2.0"
       sources."glob-7.1.7"
-      sources."glob-parent-3.1.0"
-      (sources."glob-stream-6.1.0" // {
-        dependencies = [
-          sources."isarray-1.0.0"
-          sources."readable-stream-2.3.7"
-          sources."safe-buffer-5.1.2"
-          sources."string_decoder-1.1.1"
-        ];
-      })
+      sources."got-11.8.2"
       sources."graceful-fs-4.2.6"
-      sources."har-schema-2.0.0"
-      sources."har-validator-5.1.5"
       sources."has-unicode-2.0.1"
       sources."hash-sum-2.0.0"
-      sources."help-me-1.1.0"
-      (sources."htmlparser2-3.10.1" // {
+      (sources."help-me-3.0.0" // {
         dependencies = [
           sources."readable-stream-3.6.0"
           sources."string_decoder-1.3.0"
         ];
       })
+      sources."hpagent-0.1.2"
+      sources."htmlparser2-6.1.0"
+      sources."http-cache-semantics-4.1.0"
       sources."http-errors-1.7.2"
-      sources."http-signature-1.2.0"
+      sources."http2-wrapper-1.0.3"
       (sources."https-proxy-agent-5.0.0" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."ms-2.1.2"
         ];
       })
-      sources."i18next-15.1.2"
+      sources."i18next-20.3.2"
       sources."iconv-lite-0.4.24"
       sources."ieee754-1.2.1"
-      sources."ignore-walk-3.0.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
-      sources."ini-1.3.8"
       sources."ipaddr.js-1.9.1"
-      sources."is-absolute-1.0.0"
-      sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-1.0.0"
-      sources."is-glob-3.1.0"
-      sources."is-negated-glob-1.0.0"
-      sources."is-relative-1.0.0"
-      sources."is-typedarray-1.0.0"
-      sources."is-unc-path-1.0.0"
       sources."is-utf8-0.2.1"
-      sources."is-windows-1.0.2"
       sources."isarray-0.0.1"
-      sources."isstream-0.1.2"
-      sources."js-yaml-3.14.0"
-      sources."jsbn-0.1.1"
-      sources."json-schema-0.2.3"
-      sources."json-schema-traverse-0.4.1"
-      sources."json-stable-stringify-without-jsonify-1.0.1"
+      sources."js-yaml-3.14.1"
+      sources."json-buffer-3.0.1"
+      sources."json-schema-traverse-1.0.0"
       sources."json-stringify-safe-5.0.1"
       sources."jsonata-1.8.4"
-      sources."jsonfile-4.0.0"
-      sources."jsprim-1.4.1"
+      (sources."jsonfile-6.1.0" // {
+        dependencies = [
+          sources."universalify-2.0.0"
+        ];
+      })
+      sources."keyv-4.0.3"
       sources."leven-2.1.0"
-      sources."lodash.assignin-4.2.0"
-      sources."lodash.bind-4.2.1"
       sources."lodash.clonedeep-4.5.0"
-      sources."lodash.defaults-4.2.0"
-      sources."lodash.filter-4.6.0"
-      sources."lodash.flatten-4.4.0"
-      sources."lodash.foreach-4.5.0"
-      sources."lodash.map-4.6.0"
-      sources."lodash.merge-4.6.2"
-      sources."lodash.pick-4.4.0"
-      sources."lodash.reduce-4.6.0"
-      sources."lodash.reject-4.6.0"
-      sources."lodash.some-4.6.0"
+      sources."lowercase-keys-2.0.0"
       sources."lru-cache-4.1.5"
+      (sources."make-dir-3.1.0" // {
+        dependencies = [
+          sources."semver-6.3.0"
+        ];
+      })
       sources."media-typer-0.3.0"
       (sources."memorystore-1.6.6" // {
         dependencies = [
@@ -97446,6 +99698,7 @@ in
       sources."mime-2.5.2"
       sources."mime-db-1.48.0"
       sources."mime-types-2.1.31"
+      sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
       (sources."minipass-3.1.3" // {
@@ -97461,14 +99714,13 @@ in
       sources."mkdirp-0.5.5"
       sources."moment-2.29.1"
       sources."moment-timezone-0.5.33"
-      (sources."mqtt-4.2.6" // {
+      (sources."mqtt-4.2.8" // {
         dependencies = [
           sources."concat-stream-2.0.0"
           sources."debug-4.3.2"
           sources."ms-2.1.2"
           sources."readable-stream-3.6.0"
           sources."string_decoder-1.3.0"
-          sources."ws-7.5.1"
         ];
       })
       (sources."mqtt-packet-6.10.0" // {
@@ -97481,99 +99733,60 @@ in
       sources."multer-1.4.2"
       sources."mustache-4.2.0"
       sources."mute-stream-0.0.8"
-      sources."nan-2.14.0"
-      (sources."needle-2.6.0" // {
-        dependencies = [
-          sources."debug-3.2.7"
-          sources."ms-2.1.3"
-        ];
-      })
       sources."negotiator-0.6.2"
-      (sources."node-pre-gyp-0.14.0" // {
-        dependencies = [
-          sources."chownr-1.1.4"
-          sources."fs-minipass-1.2.7"
-          sources."minipass-2.9.0"
-          sources."minizlib-1.3.3"
-          sources."nopt-4.0.3"
-          sources."semver-5.7.1"
-          sources."tar-4.4.13"
-          sources."yallist-3.1.1"
-        ];
-      })
-      (sources."node-red-admin-0.2.7" // {
-        dependencies = [
-          sources."bcrypt-3.0.8"
-        ];
-      })
-      sources."node-red-node-rbe-0.5.0"
-      sources."node-red-node-tail-0.3.1"
+      sources."node-addon-api-3.2.1"
+      sources."node-fetch-2.6.1"
+      sources."node-red-admin-2.2.0"
       sources."nopt-5.0.0"
-      sources."npm-bundled-1.1.2"
-      sources."npm-normalize-package-bin-1.0.1"
-      sources."npm-packlist-1.4.8"
+      sources."normalize-url-6.1.0"
       sources."npmlog-4.1.2"
-      sources."nth-check-1.0.2"
+      sources."nth-check-2.0.0"
       sources."number-is-nan-1.0.1"
-      sources."oauth-sign-0.9.0"
       sources."oauth2orize-1.11.0"
       sources."object-assign-4.1.1"
       sources."on-finished-2.3.0"
       sources."on-headers-1.0.2"
       sources."once-1.4.0"
-      (sources."ordered-read-streams-1.0.1" // {
-        dependencies = [
-          sources."isarray-1.0.0"
-          sources."readable-stream-2.3.7"
-          sources."safe-buffer-5.1.2"
-          sources."string_decoder-1.1.1"
-        ];
-      })
-      sources."os-homedir-1.0.2"
-      sources."os-tmpdir-1.0.2"
-      sources."osenv-0.1.5"
+      sources."p-cancelable-2.1.1"
+      sources."parse5-6.0.1"
+      sources."parse5-htmlparser2-tree-adapter-6.0.1"
       sources."parseurl-1.3.3"
       sources."passport-0.4.1"
       sources."passport-http-bearer-1.0.1"
       sources."passport-oauth2-client-password-0.1.2"
       sources."passport-strategy-1.0.0"
-      sources."path-dirname-1.0.2"
       sources."path-is-absolute-1.0.1"
       sources."path-to-regexp-0.1.7"
       sources."pause-0.0.1"
-      sources."performance-now-2.1.0"
       sources."process-nextick-args-2.0.1"
       sources."proxy-addr-2.0.7"
       sources."pseudomap-1.0.2"
       sources."psl-1.8.0"
       sources."pump-3.0.0"
-      (sources."pumpify-1.5.1" // {
-        dependencies = [
-          sources."pump-2.0.1"
-        ];
-      })
       sources."punycode-2.1.1"
       sources."qs-6.7.0"
+      sources."quick-lru-5.1.1"
       sources."random-bytes-1.0.0"
       sources."range-parser-1.2.1"
       sources."raw-body-2.4.0"
-      sources."rc-1.2.8"
       sources."read-1.0.7"
       sources."readable-stream-1.1.14"
       sources."regenerator-runtime-0.13.8"
       sources."reinterval-1.1.0"
-      sources."remove-trailing-separator-1.1.0"
-      (sources."request-2.88.0" // {
-        dependencies = [
-          sources."qs-6.5.2"
-        ];
-      })
+      sources."require-from-string-2.0.2"
+      sources."resolve-alpn-1.2.0"
+      sources."responselike-2.0.0"
       sources."retry-0.6.1"
-      sources."rimraf-2.7.1"
-      sources."safe-buffer-5.2.0"
+      sources."rimraf-3.0.2"
+      sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.4"
-      sources."semver-6.3.0"
+      (sources."semver-7.3.5" // {
+        dependencies = [
+          sources."lru-cache-6.0.0"
+          sources."yallist-4.0.0"
+        ];
+      })
       (sources."send-0.17.1" // {
         dependencies = [
           sources."mime-1.6.0"
@@ -97591,58 +99804,36 @@ in
         ];
       })
       sources."sprintf-js-1.0.3"
-      sources."sshpk-1.16.1"
       sources."statuses-1.5.0"
       sources."stream-shift-1.0.1"
       sources."streamsearch-0.1.2"
       sources."string-width-1.0.2"
       sources."string_decoder-0.10.31"
       sources."strip-ansi-3.0.1"
-      sources."strip-json-comments-2.0.1"
-      sources."tail-2.2.3"
       (sources."tar-6.1.0" // {
         dependencies = [
           sources."mkdirp-1.0.4"
           sources."yallist-4.0.0"
         ];
       })
-      (sources."through2-2.0.5" // {
-        dependencies = [
-          sources."isarray-1.0.0"
-          sources."readable-stream-2.3.7"
-          sources."safe-buffer-5.1.2"
-          sources."string_decoder-1.1.1"
-        ];
-      })
-      sources."through2-filter-3.0.0"
-      sources."to-absolute-glob-2.0.2"
       sources."toidentifier-1.0.0"
-      (sources."tough-cookie-2.4.3" // {
-        dependencies = [
-          sources."punycode-1.4.1"
-        ];
-      })
+      sources."tough-cookie-4.0.0"
       sources."tslib-2.3.0"
-      sources."tunnel-agent-0.6.0"
-      sources."tweetnacl-0.14.5"
       sources."type-is-1.6.18"
       sources."typedarray-0.0.6"
-      sources."uglify-js-3.13.3"
+      sources."uglify-js-3.13.10"
       sources."uid-safe-2.1.5"
       sources."uid2-0.0.3"
-      sources."unc-path-regex-0.1.2"
-      sources."unique-stream-2.3.1"
       sources."universalify-0.1.2"
       sources."unpipe-1.0.0"
       sources."uri-js-4.4.1"
       sources."util-deprecate-1.0.2"
       sources."utils-merge-1.0.1"
-      sources."uuid-3.4.0"
+      sources."uuid-8.3.2"
       sources."vary-1.1.2"
-      sources."verror-1.10.0"
       sources."wide-align-1.1.3"
       sources."wrappy-1.0.2"
-      sources."ws-6.2.1"
+      sources."ws-7.5.1"
       sources."xml2js-0.4.23"
       sources."xmlbuilder-11.0.1"
       sources."xtend-4.0.2"
@@ -97731,7 +99922,7 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-fullwidth-code-point-1.0.0"
       sources."is-typedarray-1.0.0"
       sources."isarray-1.0.0"
@@ -97855,10 +100046,10 @@ in
   nodemon = nodeEnv.buildNodePackage {
     name = "nodemon";
     packageName = "nodemon";
-    version = "2.0.9";
+    version = "2.0.12";
     src = fetchurl {
-      url = "https://registry.npmjs.org/nodemon/-/nodemon-2.0.9.tgz";
-      sha512 = "6O4k7C8f2HQArGpaPBOqGGddjzDLQAqCYmq3tKMeNIbz7Is/hOphMHy2dcY10sSq5wl3cqyn9Iz+Ep2j51JOLg==";
+      url = "https://registry.npmjs.org/nodemon/-/nodemon-2.0.12.tgz";
+      sha512 = "egCTmNZdObdBxUBw6ZNwvZ/xzk24CKRs5K6d+5zbmrMr7rOpPmfPeF6OxM3DDpaRx331CQRFEktn+wrFFfBSOA==";
     };
     dependencies = [
       sources."@sindresorhus/is-0.14.0"
@@ -98025,7 +100216,7 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -98039,20 +100230,20 @@ in
       })
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       (sources."@samverschueren/stream-to-observable-0.3.1" // {
         dependencies = [
           sources."any-observable-0.3.0"
         ];
       })
       sources."@sindresorhus/is-2.1.1"
-      sources."@szmarczak/http-timer-4.0.5"
-      sources."@types/cacheable-request-6.0.1"
-      sources."@types/http-cache-semantics-4.0.0"
-      sources."@types/keyv-3.1.1"
-      sources."@types/minimist-1.2.1"
-      sources."@types/node-15.14.0"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@szmarczak/http-timer-4.0.6"
+      sources."@types/cacheable-request-6.0.2"
+      sources."@types/http-cache-semantics-4.0.1"
+      sources."@types/keyv-3.1.2"
+      sources."@types/minimist-1.2.2"
+      sources."@types/node-16.4.0"
+      sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
       sources."@types/responselike-1.0.0"
       sources."aggregate-error-3.1.0"
@@ -98146,8 +100337,8 @@ in
       sources."escape-string-regexp-4.0.0"
       sources."execa-5.1.1"
       sources."external-editor-3.1.0"
-      sources."fast-glob-3.2.6"
-      sources."fastq-1.11.0"
+      sources."fast-glob-3.2.7"
+      sources."fastq-1.11.1"
       (sources."figures-3.2.0" // {
         dependencies = [
           sources."escape-string-regexp-1.0.5"
@@ -98231,7 +100422,7 @@ in
       })
       sources."is-arrayish-0.2.1"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-docker-2.2.1"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
@@ -98555,10 +100746,10 @@ in
   npm = nodeEnv.buildNodePackage {
     name = "npm";
     packageName = "npm";
-    version = "7.19.1";
+    version = "7.20.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm/-/npm-7.19.1.tgz";
-      sha512 = "aN3hZzGkPzKOyhjXtOhnQTGumorFhgpOU6xfuQsF1nJKh4DhsgfOMG4s/SNx56r4xHPvM5m/sk914wzDgKba3A==";
+      url = "https://registry.npmjs.org/npm/-/npm-7.20.0.tgz";
+      sha512 = "59Eje4RcXP9EKYPIJvBvQGTyfEvZWaKdOx5+YZ+IJ+fqYhJJH5ng78qcdD8sFPyA1g1MFBR0DYXKfncwbxXpVA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -98573,15 +100764,15 @@ in
   npm-check-updates = nodeEnv.buildNodePackage {
     name = "npm-check-updates";
     packageName = "npm-check-updates";
-    version = "11.7.1";
+    version = "11.8.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-11.7.1.tgz";
-      sha512 = "1ZH1le6fIuCS/Lrj9hKzds2bBcpc60cENZJ681rJ+cx202JmwsmnVmPj6lC4f9MNb0/D81QXR0QbIt5oqDKQtA==";
+      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-11.8.3.tgz";
+      sha512 = "NslIB6Af7GagVrN+bvBkObLyawIZfOnDnl8n9MHE+dFt0aChRYtvR6T2BLJKzOPIepCLmmh0NRR/qha0ExAELQ==";
     };
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."@npmcli/git-2.1.0"
       sources."@npmcli/installed-package-contents-1.0.7"
       sources."@npmcli/move-file-1.1.2"
@@ -98678,9 +100869,10 @@ in
       sources."extend-3.0.2"
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."fastq-1.11.0"
+      sources."fast-memoize-2.5.2"
+      sources."fastq-1.11.1"
       sources."figgy-pudding-3.5.2"
       sources."fill-range-7.0.1"
       sources."find-up-5.0.0"
@@ -98774,20 +100966,17 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."make-fetch-happen-9.0.3"
-      sources."map-age-cleaner-0.1.3"
-      sources."mem-8.1.1"
+      sources."make-fetch-happen-9.0.4"
       sources."merge2-1.4.1"
       sources."micromatch-4.0.4"
       sources."mime-db-1.48.0"
       sources."mime-types-2.1.31"
-      sources."mimic-fn-3.1.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
       sources."minipass-3.1.3"
       sources."minipass-collect-1.0.2"
-      sources."minipass-fetch-1.3.3"
+      sources."minipass-fetch-1.3.4"
       sources."minipass-flush-1.0.5"
       sources."minipass-json-stream-1.0.1"
       sources."minipass-pipeline-1.2.4"
@@ -98812,7 +101001,6 @@ in
       sources."object-assign-4.1.1"
       sources."once-1.4.0"
       sources."p-cancelable-1.1.0"
-      sources."p-defer-1.0.0"
       sources."p-limit-3.1.0"
       sources."p-locate-5.0.0"
       sources."p-map-4.0.0"
@@ -98822,7 +101010,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."pacote-11.3.4"
+      sources."pacote-11.3.5"
       sources."parse-github-url-1.0.2"
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
@@ -98933,6 +101121,24 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  npm-merge-driver = nodeEnv.buildNodePackage {
+    name = "npm-merge-driver";
+    packageName = "npm-merge-driver";
+    version = "2.3.6";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/npm-merge-driver/-/npm-merge-driver-2.3.6.tgz";
+      sha512 = "uPjCEWZ93f379zw0AMEgFtZIlpSSnpXc8BEIcs8yYHEZs5Y3d85OZHisLjNhjbYnbdAznxTq+VbyBWAQZDEm9w==";
+    };
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "git merge driver for automatically merging lockfiles";
+      homepage = "https://github.com/npm/npm-merge-driver#readme";
+      license = "ISC";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   "npm2nix-git://github.com/NixOS/npm2nix.git#5.12.0" = nodeEnv.buildNodePackage {
     name = "npm2nix";
     packageName = "npm2nix";
@@ -99159,14 +101365,14 @@ in
     dependencies = [
       sources."@babel/code-frame-7.14.5"
       sources."@babel/compat-data-7.14.7"
-      (sources."@babel/core-7.14.6" // {
+      (sources."@babel/core-7.14.8" // {
         dependencies = [
           sources."json5-2.2.0"
           sources."semver-6.3.0"
           sources."source-map-0.5.7"
         ];
       })
-      (sources."@babel/generator-7.14.5" // {
+      (sources."@babel/generator-7.14.8" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
@@ -99178,7 +101384,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/helper-create-class-features-plugin-7.14.6"
+      sources."@babel/helper-create-class-features-plugin-7.14.8"
       sources."@babel/helper-create-regexp-features-plugin-7.14.5"
       (sources."@babel/helper-define-polyfill-provider-0.2.3" // {
         dependencies = [
@@ -99191,20 +101397,20 @@ in
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-member-expression-to-functions-7.14.7"
       sources."@babel/helper-module-imports-7.14.5"
-      sources."@babel/helper-module-transforms-7.14.5"
+      sources."@babel/helper-module-transforms-7.14.8"
       sources."@babel/helper-optimise-call-expression-7.14.5"
       sources."@babel/helper-plugin-utils-7.14.5"
       sources."@babel/helper-remap-async-to-generator-7.14.5"
       sources."@babel/helper-replace-supers-7.14.5"
-      sources."@babel/helper-simple-access-7.14.5"
+      sources."@babel/helper-simple-access-7.14.8"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.14.5"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/helper-validator-option-7.14.5"
       sources."@babel/helper-wrap-function-7.14.5"
-      sources."@babel/helpers-7.14.6"
+      sources."@babel/helpers-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5"
       sources."@babel/plugin-proposal-async-generator-functions-7.14.7"
       sources."@babel/plugin-proposal-class-properties-7.14.5"
@@ -99271,16 +101477,16 @@ in
       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.14.7" // {
+      (sources."@babel/preset-env-7.14.8" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
       sources."@babel/preset-modules-0.1.4"
-      sources."@babel/runtime-7.14.6"
+      sources."@babel/runtime-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
       sources."@iarna/toml-2.2.5"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
@@ -99289,7 +101495,7 @@ in
       sources."@parcel/utils-1.11.0"
       sources."@parcel/watcher-1.12.1"
       sources."@parcel/workers-1.11.0"
-      sources."@types/q-1.5.4"
+      sources."@types/q-1.5.5"
       sources."abab-2.0.5"
       sources."acorn-7.4.1"
       (sources."acorn-globals-4.3.4" // {
@@ -99402,7 +101608,7 @@ in
       sources."caller-path-2.0.0"
       sources."callsites-2.0.0"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       sources."caseless-0.12.0"
       sources."chalk-2.4.2"
       sources."chokidar-2.1.8"
@@ -99413,10 +101619,10 @@ in
       sources."clone-2.1.2"
       sources."coa-2.0.2"
       sources."collection-visit-1.0.0"
-      sources."color-3.1.3"
+      sources."color-3.2.1"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."color-string-1.5.5"
+      sources."color-string-1.6.0"
       sources."colorette-1.2.2"
       sources."combined-stream-1.0.8"
       sources."command-exists-1.2.9"
@@ -99540,7 +101746,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.765"
+      sources."electron-to-chromium-1.3.782"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -99552,7 +101758,7 @@ in
       sources."error-ex-1.3.2"
       (sources."es-abstract-1.18.3" // {
         dependencies = [
-          sources."object-inspect-1.10.3"
+          sources."object-inspect-1.11.0"
         ];
       })
       sources."es-to-primitive-1.2.1"
@@ -99681,7 +101887,7 @@ in
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.3"
       sources."is-color-stop-1.1.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       (sources."is-data-descriptor-1.0.0" // {
         dependencies = [
           sources."kind-of-6.0.3"
@@ -100388,7 +102594,7 @@ in
         ];
       })
       sources."serve-static-1.14.1"
-      (sources."service-runner-2.8.3" // {
+      (sources."service-runner-2.8.4" // {
         dependencies = [
           sources."semver-7.3.5"
           sources."yargs-14.2.3"
@@ -100648,7 +102854,7 @@ in
       sources."ipaddr.js-2.0.1"
       sources."is-arguments-1.1.0"
       sources."is-arrayish-0.2.1"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-date-object-1.0.4"
       sources."is-finite-1.1.0"
       sources."is-fullwidth-code-point-1.0.0"
@@ -101205,12 +103411,12 @@ in
       sha512 = "/DGG+QcSPraMAIxaoGCNqb2A6Xkm2jBQMsj2mjb4ag236ByTY9Xhpikvj5ixwlSQV0euuJw4fphKCd5YHRPS8w==";
     };
     dependencies = [
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/parser-7.13.13"
       sources."@babel/types-7.13.12"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."agent-base-6.0.2"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
@@ -101249,9 +103455,9 @@ in
       sources."estraverse-5.2.0"
       sources."esutils-2.0.3"
       sources."expand-template-2.0.3"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fast-levenshtein-2.0.6"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."fill-range-7.0.1"
       sources."from2-2.3.0"
       sources."fs-constants-1.0.0"
@@ -101279,7 +103485,7 @@ in
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
       sources."into-stream-6.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
@@ -101477,7 +103683,7 @@ in
       sources."eventemitter2-5.0.1"
       sources."fast-json-patch-3.0.0-1"
       sources."fast-levenshtein-2.0.6"
-      sources."fast-printf-1.6.5"
+      sources."fast-printf-1.6.6"
       sources."fclone-1.0.11"
       sources."file-uri-to-path-2.0.0"
       sources."fill-range-7.0.1"
@@ -101504,7 +103710,7 @@ in
       sources."ini-1.3.8"
       sources."ip-1.1.5"
       sources."is-binary-path-2.1.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-extglob-2.1.1"
       sources."is-glob-4.0.1"
       sources."is-number-7.0.0"
@@ -101582,7 +103788,7 @@ in
       sources."statuses-1.5.0"
       sources."string_decoder-0.10.31"
       sources."supports-color-7.2.0"
-      sources."systeminformation-5.7.7"
+      sources."systeminformation-5.7.8"
       sources."to-regex-range-5.0.1"
       sources."toidentifier-1.0.0"
       sources."tslib-2.3.0"
@@ -101617,10 +103823,10 @@ in
   pnpm = nodeEnv.buildNodePackage {
     name = "pnpm";
     packageName = "pnpm";
-    version = "6.9.1";
+    version = "6.10.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pnpm/-/pnpm-6.9.1.tgz";
-      sha512 = "2qlbvmHB+ULAoTCMpJ75oADYoVQnsxD1ipCemdDJA2KW4auGwoTUzyowVYEiAe4DIDOqw3axhHVkNAo7P6goZA==";
+      url = "https://registry.npmjs.org/pnpm/-/pnpm-6.10.3.tgz";
+      sha512 = "GdxerBN3hhe9x9W0mAMmiWoDELy7KekrmHbYdo7WeHC1MthP/gI7MGVYIgcKj9Vy4zWLO9v1hVYOgKUrewkDVg==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -101660,6 +103866,29 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  postcss = nodeEnv.buildNodePackage {
+    name = "postcss";
+    packageName = "postcss";
+    version = "8.3.6";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/postcss/-/postcss-8.3.6.tgz";
+      sha512 = "wG1cc/JhRgdqB6WHEuyLTedf3KIRuD0hG6ldkFEZNCjRxiC+3i6kkWUUbiJQayP28iwG35cEmAbe98585BYV0A==";
+    };
+    dependencies = [
+      sources."colorette-1.2.2"
+      sources."nanoid-3.1.23"
+      sources."source-map-js-0.6.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Tool for transforming styles with JS plugins";
+      homepage = "https://postcss.org/";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   postcss-cli = nodeEnv.buildNodePackage {
     name = "postcss-cli";
     packageName = "postcss-cli";
@@ -101671,7 +103900,7 @@ in
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
       sources."anymatch-3.1.2"
@@ -101689,8 +103918,8 @@ in
       sources."dir-glob-3.0.1"
       sources."emoji-regex-8.0.0"
       sources."escalade-3.1.1"
-      sources."fast-glob-3.2.6"
-      sources."fastq-1.11.0"
+      sources."fast-glob-3.2.7"
+      sources."fastq-1.11.1"
       sources."fill-range-7.0.1"
       sources."fs-extra-9.1.0"
       sources."fsevents-2.3.2"
@@ -101771,6 +104000,30 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  prettier-plugin-toml = nodeEnv.buildNodePackage {
+    name = "prettier-plugin-toml";
+    packageName = "prettier-plugin-toml";
+    version = "0.3.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/prettier-plugin-toml/-/prettier-plugin-toml-0.3.1.tgz";
+      sha512 = "j47DEO/dN/acU1nSL/B7q4A4Z2SYJhpWPCLPkcmfAXIQC6A5GD6Ao/bi9HRHZ8ueIDOauqjuAQbnvRxLXMjazA==";
+    };
+    dependencies = [
+      sources."@toml-tools/lexer-0.3.1"
+      sources."@toml-tools/parser-0.3.1"
+      sources."chevrotain-4.1.1"
+      sources."prettier-1.19.1"
+      sources."regexp-to-ast-0.3.5"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "TOML Prettier Plugin";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   pscid = nodeEnv.buildNodePackage {
     name = "pscid";
     packageName = "pscid";
@@ -101909,7 +104162,7 @@ in
       sources."es6-promise-3.3.1"
       sources."events-2.1.0"
       sources."evp_bytestokey-1.0.3"
-      sources."fast-safe-stringify-2.0.7"
+      sources."fast-safe-stringify-2.0.8"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."gaze-1.1.3"
@@ -101937,7 +104190,7 @@ in
         ];
       })
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
       sources."json-stable-stringify-0.0.1"
@@ -102142,10 +104395,10 @@ in
   pyright = nodeEnv.buildNodePackage {
     name = "pyright";
     packageName = "pyright";
-    version = "1.1.154";
+    version = "1.1.157";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pyright/-/pyright-1.1.154.tgz";
-      sha512 = "J2P5Iurkl7smCyB8CH5fsm8GOGeKRk7d1HWcFiro94E0vJW/5sSKXrkfjPxo7XZ+e96UiW1qyiVTCC++db3Tfg==";
+      url = "https://registry.npmjs.org/pyright/-/pyright-1.1.157.tgz";
+      sha512 = "slTex47hQKuyoi579Zk7lEhVH+4Dmn+eZ3gP1JGcFBcbcmDwd9ZI1ESww3jY3YoOYdNbYTafxBNuh3RHGkGiMA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -102225,7 +104478,7 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."invert-kv-2.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-fullwidth-code-point-1.0.0"
       sources."is-stream-1.1.0"
       sources."is-url-1.2.4"
@@ -102348,7 +104601,7 @@ in
           sources."pako-0.2.9"
         ];
       })
-      sources."urijs-1.19.6"
+      sources."urijs-1.19.7"
       sources."util-deprecate-1.0.2"
       sources."uuid-3.4.0"
       sources."vlq-0.2.3"
@@ -102443,7 +104696,7 @@ in
       sources."mkdirp-0.5.5"
       sources."mute-stream-0.0.8"
       sources."ncp-0.4.2"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
@@ -102493,15 +104746,15 @@ in
       sha512 = "coA9MuNPfN+8TyFj7aOycw2e5W9t+sSgFOUyK30oDrh2MWWWHLjY0I4V1puyCconC2arggfDE2GYXvqOTCGv9Q==";
     };
     dependencies = [
-      sources."@babel/cli-7.14.5"
+      sources."@babel/cli-7.14.8"
       sources."@babel/code-frame-7.14.5"
       sources."@babel/compat-data-7.14.7"
-      (sources."@babel/core-7.14.6" // {
+      (sources."@babel/core-7.14.8" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/generator-7.14.5"
+      sources."@babel/generator-7.14.8"
       sources."@babel/helper-annotate-as-pure-7.14.5"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.14.5"
       (sources."@babel/helper-compilation-targets-7.14.5" // {
@@ -102509,7 +104762,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/helper-create-class-features-plugin-7.14.6"
+      sources."@babel/helper-create-class-features-plugin-7.14.8"
       sources."@babel/helper-create-regexp-features-plugin-7.14.5"
       (sources."@babel/helper-define-polyfill-provider-0.2.3" // {
         dependencies = [
@@ -102522,20 +104775,20 @@ in
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-member-expression-to-functions-7.14.7"
       sources."@babel/helper-module-imports-7.14.5"
-      sources."@babel/helper-module-transforms-7.14.5"
+      sources."@babel/helper-module-transforms-7.14.8"
       sources."@babel/helper-optimise-call-expression-7.14.5"
       sources."@babel/helper-plugin-utils-7.14.5"
       sources."@babel/helper-remap-async-to-generator-7.14.5"
       sources."@babel/helper-replace-supers-7.14.5"
-      sources."@babel/helper-simple-access-7.14.5"
+      sources."@babel/helper-simple-access-7.14.8"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.14.5"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/helper-validator-option-7.14.5"
       sources."@babel/helper-wrap-function-7.14.5"
-      sources."@babel/helpers-7.14.6"
+      sources."@babel/helpers-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5"
       sources."@babel/plugin-proposal-async-generator-functions-7.14.7"
       sources."@babel/plugin-proposal-class-properties-7.14.5"
@@ -102610,7 +104863,7 @@ in
       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.14.7" // {
+      (sources."@babel/preset-env-7.14.8" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
@@ -102619,18 +104872,18 @@ in
       sources."@babel/preset-react-7.14.5"
       sources."@babel/preset-stage-0-7.8.3"
       sources."@babel/register-7.14.5"
-      sources."@babel/runtime-7.14.6"
+      sources."@babel/runtime-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
       sources."@reach/router-1.3.4"
       sources."@sindresorhus/is-0.7.0"
-      sources."@types/glob-7.1.3"
-      sources."@types/json-schema-7.0.7"
-      sources."@types/minimatch-3.0.4"
-      sources."@types/node-15.14.0"
+      sources."@types/glob-7.1.4"
+      sources."@types/json-schema-7.0.8"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/node-16.4.0"
       sources."@types/parse-json-4.0.0"
-      sources."@types/q-1.5.4"
+      sources."@types/q-1.5.5"
       sources."@webassemblyjs/ast-1.9.0"
       sources."@webassemblyjs/floating-point-hex-parser-1.9.0"
       sources."@webassemblyjs/helper-api-error-1.9.0"
@@ -102816,7 +105069,7 @@ in
       sources."camel-case-3.0.0"
       sources."camelcase-5.3.1"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       sources."case-sensitive-paths-webpack-plugin-2.4.0"
       sources."caw-2.0.1"
       (sources."chalk-2.4.2" // {
@@ -102870,10 +105123,10 @@ in
       sources."clone-response-1.0.2"
       sources."coa-2.0.2"
       sources."collection-visit-1.0.0"
-      sources."color-3.1.3"
+      sources."color-3.2.1"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."color-string-1.5.5"
+      sources."color-string-1.6.0"
       sources."colorette-1.2.2"
       sources."commander-4.1.1"
       sources."commondir-1.0.1"
@@ -103045,7 +105298,7 @@ in
       sources."duplexify-3.7.1"
       sources."ee-first-1.1.1"
       sources."ejs-2.7.4"
-      sources."electron-to-chromium-1.3.765"
+      sources."electron-to-chromium-1.3.782"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -103342,7 +105595,7 @@ in
       sources."is-buffer-1.1.6"
       sources."is-callable-1.2.3"
       sources."is-color-stop-1.1.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-date-object-1.0.4"
       sources."is-deflate-1.0.0"
@@ -103515,7 +105768,7 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object-visit-1.0.1"
@@ -104334,7 +106587,7 @@ in
           sources."webidl-conversions-5.0.0"
         ];
       })
-      sources."dompurify-2.2.9"
+      sources."dompurify-2.3.0"
       sources."emoji-regex-8.0.0"
       sources."escalade-3.1.1"
       sources."escodegen-2.0.0"
@@ -104381,7 +106634,7 @@ in
       sources."whatwg-url-8.7.0"
       sources."word-wrap-1.2.3"
       sources."wrap-ansi-7.0.0"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xml-name-validator-3.0.0"
       sources."xmlchars-2.2.0"
       sources."y18n-5.0.8"
@@ -104401,14 +106654,14 @@ in
   redoc-cli = nodeEnv.buildNodePackage {
     name = "redoc-cli";
     packageName = "redoc-cli";
-    version = "0.12.1";
+    version = "0.12.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/redoc-cli/-/redoc-cli-0.12.1.tgz";
-      sha512 = "Ew8ByEayRBZgG9iLv2ZO+h3ZMz55naz1jA1CPt6Vm0xcSbVNYb7ubnbHhSvUGshc2bGu8Je74k1veFZZqXjBeQ==";
+      url = "https://registry.npmjs.org/redoc-cli/-/redoc-cli-0.12.2.tgz";
+      sha512 = "GyOCEr1g+U/Js7lgHj+0vH9L2uCwbc0m9CJrlb099qp6jzmxnJQ6sC85BiN9DOwr4/fsQfVhoNpWQSkkpFBo5Q==";
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      (sources."@babel/generator-7.14.5" // {
+      (sources."@babel/generator-7.14.8" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
@@ -104419,27 +106672,27 @@ in
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-module-imports-7.14.5"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.14.7"
-      sources."@babel/runtime-7.14.6"
+      sources."@babel/parser-7.14.8"
+      sources."@babel/runtime-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
       sources."@emotion/is-prop-valid-0.8.8"
       sources."@emotion/memoize-0.7.4"
       sources."@emotion/stylis-0.8.5"
       sources."@emotion/unitless-0.7.5"
       sources."@exodus/schemasafe-1.0.0-rc.3"
       sources."@redocly/ajv-8.6.2"
-      (sources."@redocly/openapi-core-1.0.0-beta.53" // {
+      (sources."@redocly/openapi-core-1.0.0-beta.54" // {
         dependencies = [
-          sources."@types/node-14.17.4"
+          sources."@types/node-14.17.5"
         ];
       })
       sources."@redocly/react-dropdown-aria-2.0.12"
-      sources."@types/json-schema-7.0.7"
-      sources."@types/node-15.14.0"
+      sources."@types/json-schema-7.0.8"
+      sources."@types/node-15.14.2"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-3.2.1"
       sources."anymatch-3.1.2"
@@ -104454,7 +106707,7 @@ in
           sources."util-0.10.3"
         ];
       })
-      sources."babel-plugin-styled-components-1.13.1"
+      sources."babel-plugin-styled-components-1.13.2"
       sources."babel-plugin-syntax-jsx-6.18.0"
       sources."balanced-match-1.0.2"
       sources."base64-js-1.5.1"
@@ -104515,7 +106768,7 @@ in
         ];
       })
       sources."domain-browser-1.2.0"
-      sources."dompurify-2.2.9"
+      sources."dompurify-2.3.0"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -104531,7 +106784,7 @@ in
       sources."events-3.3.0"
       sources."evp_bytestokey-1.0.3"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-safe-stringify-2.0.7"
+      sources."fast-safe-stringify-2.0.8"
       sources."fill-range-7.0.1"
       sources."foreach-2.0.5"
       sources."fsevents-2.3.2"
@@ -104599,9 +106852,9 @@ in
       sources."normalize-path-3.0.0"
       sources."oas-kit-common-1.0.8"
       sources."oas-linter-3.2.2"
-      sources."oas-resolver-2.5.5"
+      sources."oas-resolver-2.5.6"
       sources."oas-schema-walker-1.1.5"
-      sources."oas-validator-5.0.7"
+      sources."oas-validator-5.0.8"
       sources."object-assign-4.1.1"
       sources."openapi-sampler-1.1.0"
       sources."os-browserify-0.3.0"
@@ -104609,11 +106862,11 @@ in
       sources."parse-asn1-5.1.6"
       sources."path-browserify-0.0.1"
       sources."pbkdf2-3.1.2"
-      sources."perfect-scrollbar-1.5.1"
+      sources."perfect-scrollbar-1.5.2"
       sources."picomatch-2.3.0"
       sources."polished-4.1.3"
       sources."postcss-value-parser-4.1.0"
-      sources."prismjs-1.24.0"
+      sources."prismjs-1.24.1"
       sources."process-0.11.10"
       sources."process-nextick-args-2.0.1"
       sources."prop-types-15.7.2"
@@ -104640,12 +106893,12 @@ in
         ];
       })
       sources."readdirp-3.6.0"
-      (sources."redoc-2.0.0-rc.54" // {
+      (sources."redoc-2.0.0-rc.55" // {
         dependencies = [
           sources."path-browserify-1.0.1"
         ];
       })
-      sources."reftools-1.1.8"
+      sources."reftools-1.1.9"
       sources."regenerator-runtime-0.13.8"
       sources."require-directory-2.1.1"
       sources."require-from-string-2.0.2"
@@ -104673,7 +106926,7 @@ in
       sources."strip-ansi-6.0.0"
       sources."styled-components-5.3.0"
       sources."supports-color-5.5.0"
-      sources."swagger2openapi-7.0.7"
+      sources."swagger2openapi-7.0.8"
       sources."timers-browserify-2.0.12"
       sources."to-arraybuffer-1.0.1"
       sources."to-fast-properties-2.0.0"
@@ -104769,7 +107022,7 @@ in
       sources."ink-2.7.1"
       sources."is-arrayish-0.2.1"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-plain-obj-1.1.0"
       sources."js-tokens-4.0.0"
@@ -104915,10 +107168,10 @@ in
   rollup = nodeEnv.buildNodePackage {
     name = "rollup";
     packageName = "rollup";
-    version = "2.52.7";
+    version = "2.53.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/rollup/-/rollup-2.52.7.tgz";
-      sha512 = "55cSH4CCU6MaPr9TAOyrIC+7qFCHscL7tkNsm1MBfIJRRqRbCEY0mmeFn4Wg8FKsHtEH8r389Fz38r/o+kgXLg==";
+      url = "https://registry.npmjs.org/rollup/-/rollup-2.53.3.tgz";
+      sha512 = "79QIGP5DXz5ZHYnCPi3tLz+elOQi6gudp9YINdaJdjG0Yddubo6JRFUM//qCZ0Bap/GJrsUoEBVdSOc4AkMlRA==";
     };
     dependencies = [
       sources."fsevents-2.3.2"
@@ -104940,21 +107193,23 @@ in
     src = ../../misc/vscode-extensions/rust-analyzer/build-deps;
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."chalk-2.4.2"
           sources."escape-string-regexp-1.0.5"
         ];
       })
-      (sources."@eslint/eslintrc-0.4.2" // {
+      (sources."@eslint/eslintrc-0.4.3" // {
         dependencies = [
           sources."ignore-4.0.6"
         ];
       })
+      sources."@humanwhocodes/config-array-0.5.0"
+      sources."@humanwhocodes/object-schema-1.2.0"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."@rollup/plugin-commonjs-17.1.0"
       sources."@rollup/plugin-node-resolve-11.2.1"
       (sources."@rollup/pluginutils-3.1.0" // {
@@ -104964,24 +107219,24 @@ in
       })
       sources."@tootallnate/once-1.1.2"
       sources."@types/estree-0.0.39"
-      sources."@types/glob-7.1.3"
-      sources."@types/json-schema-7.0.7"
-      sources."@types/minimatch-3.0.4"
-      sources."@types/mocha-8.2.2"
+      sources."@types/glob-7.1.4"
+      sources."@types/json-schema-7.0.8"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/mocha-8.2.3"
       sources."@types/node-12.12.70"
-      sources."@types/node-fetch-2.5.10"
+      sources."@types/node-fetch-2.5.11"
       sources."@types/resolve-1.17.1"
-      sources."@types/vscode-1.57.0"
-      sources."@typescript-eslint/eslint-plugin-4.28.1"
-      sources."@typescript-eslint/experimental-utils-4.28.1"
-      sources."@typescript-eslint/parser-4.28.1"
-      sources."@typescript-eslint/scope-manager-4.28.1"
-      sources."@typescript-eslint/types-4.28.1"
-      sources."@typescript-eslint/typescript-estree-4.28.1"
-      sources."@typescript-eslint/visitor-keys-4.28.1"
+      sources."@types/vscode-1.58.1"
+      sources."@typescript-eslint/eslint-plugin-4.28.4"
+      sources."@typescript-eslint/experimental-utils-4.28.4"
+      sources."@typescript-eslint/parser-4.28.4"
+      sources."@typescript-eslint/scope-manager-4.28.4"
+      sources."@typescript-eslint/types-4.28.4"
+      sources."@typescript-eslint/typescript-estree-4.28.4"
+      sources."@typescript-eslint/visitor-keys-4.28.4"
       sources."@ungap/promise-all-settled-1.1.2"
       sources."acorn-7.4.1"
-      sources."acorn-jsx-5.3.1"
+      sources."acorn-jsx-5.3.2"
       sources."agent-base-6.0.2"
       sources."ajv-6.12.6"
       sources."ansi-colors-4.1.1"
@@ -105060,7 +107315,7 @@ in
       sources."entities-2.2.0"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-4.0.0"
-      (sources."eslint-7.29.0" // {
+      (sources."eslint-7.31.0" // {
         dependencies = [
           (sources."eslint-utils-2.1.0" // {
             dependencies = [
@@ -105093,17 +107348,17 @@ in
       sources."estree-walker-2.0.2"
       sources."esutils-2.0.3"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fast-json-stable-stringify-2.1.0"
       sources."fast-levenshtein-2.0.6"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."fd-slicer-1.1.0"
       sources."file-entry-cache-6.0.1"
       sources."fill-range-7.0.1"
       sources."find-up-5.0.0"
       sources."flat-5.0.2"
       sources."flat-cache-3.0.4"
-      sources."flatted-3.2.0"
+      sources."flatted-3.2.1"
       sources."form-data-3.0.1"
       sources."fs.realpath-1.0.0"
       sources."fsevents-2.3.2"
@@ -105118,7 +107373,7 @@ in
       sources."get-intrinsic-1.1.1"
       sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
-      sources."globals-13.9.0"
+      sources."globals-13.10.0"
       sources."globby-11.0.4"
       sources."graceful-fs-4.2.6"
       sources."growl-1.10.5"
@@ -105135,7 +107390,7 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."is-binary-path-2.1.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
@@ -105197,7 +107452,7 @@ in
       sources."node-fetch-2.6.1"
       sources."normalize-path-3.0.0"
       sources."nth-check-2.0.0"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."once-1.4.0"
       sources."optionator-0.9.1"
       sources."os-homedir-1.0.2"
@@ -105242,7 +107497,7 @@ in
       sources."resolve-from-4.0.0"
       sources."reusify-1.0.4"
       sources."rimraf-3.0.2"
-      sources."rollup-2.52.7"
+      sources."rollup-2.53.3"
       sources."run-parallel-1.2.0"
       sources."safe-buffer-5.2.1"
       sources."semver-7.3.5"
@@ -105273,7 +107528,7 @@ in
       sources."supports-color-5.5.0"
       (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.6.0"
+          sources."ajv-8.6.2"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -105312,7 +107567,7 @@ in
       sources."vscode-languageclient-7.1.0-next.5"
       sources."vscode-languageserver-protocol-3.17.0-next.6"
       sources."vscode-languageserver-types-3.17.0-next.2"
-      sources."vscode-test-1.5.2"
+      sources."vscode-test-1.6.1"
       sources."which-2.0.2"
       (sources."wide-align-1.1.3" // {
         dependencies = [
@@ -105414,7 +107669,7 @@ in
       sources."node-uuid-1.4.1"
       sources."node-wsfederation-0.1.1"
       sources."oauth-https://github.com/ciaranj/node-oauth/tarball/master"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       (sources."openid-2.0.9" // {
         dependencies = [
           sources."qs-6.10.1"
@@ -105447,10 +107702,10 @@ in
   sass = nodeEnv.buildNodePackage {
     name = "sass";
     packageName = "sass";
-    version = "1.35.1";
+    version = "1.35.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/sass/-/sass-1.35.1.tgz";
-      sha512 = "oCisuQJstxMcacOPmxLNiLlj4cUyN2+8xJnG7VanRoh2GOLr9RqkvI4AxA4a6LHVg/rsu+PmxXeGhrdSF9jCiQ==";
+      url = "https://registry.npmjs.org/sass/-/sass-1.35.2.tgz";
+      sha512 = "jhO5KAR+AMxCEwIH3v+4zbB2WB0z67V1X0jbapfVwQQdjHZUGUyukpnoM6+iCMfsIUC016w9OPKQ5jrNOS9uXw==";
     };
     dependencies = [
       sources."anymatch-3.1.2"
@@ -105620,10 +107875,10 @@ in
   serverless = nodeEnv.buildNodePackage {
     name = "serverless";
     packageName = "serverless";
-    version = "2.50.0";
+    version = "2.52.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/serverless/-/serverless-2.50.0.tgz";
-      sha512 = "9n2Afh0vEI6guDAue3Fm1Xu1B7i7zVR+LC37AHUhhmAxYRu0hH6ao1ERdrgUhHbzmV2P42yLRD0osB4alrp8gw==";
+      url = "https://registry.npmjs.org/serverless/-/serverless-2.52.0.tgz";
+      sha512 = "MoEA+YLQsfknLuc2d/uV8vTehnAsAJqOXCyQLOZn3/QQ+rdwUFzasbg0m+zZdNMespfcHDTTht+CUgS2/svUJw==";
     };
     dependencies = [
       sources."2-thenable-1.0.0"
@@ -105636,7 +107891,7 @@ in
       sources."@kwsites/promise-deferred-1.1.1"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."@protobufjs/aspromise-1.1.2"
       sources."@protobufjs/base64-1.1.2"
       sources."@protobufjs/codegen-2.0.4"
@@ -105656,7 +107911,7 @@ in
         ];
       })
       sources."@serverless/component-metrics-1.0.8"
-      (sources."@serverless/components-3.13.2" // {
+      (sources."@serverless/components-3.14.0" // {
         dependencies = [
           (sources."@serverless/utils-4.1.0" // {
             dependencies = [
@@ -105686,20 +107941,20 @@ in
       })
       sources."@serverless/dashboard-plugin-5.4.3"
       sources."@serverless/event-mocks-1.1.1"
-      (sources."@serverless/platform-client-4.2.3" // {
+      (sources."@serverless/platform-client-4.2.5" // {
         dependencies = [
           sources."adm-zip-0.4.16"
           sources."js-yaml-3.14.1"
         ];
       })
-      (sources."@serverless/platform-client-china-2.1.17" // {
+      (sources."@serverless/platform-client-china-2.2.0" // {
         dependencies = [
           sources."dotenv-8.6.0"
           sources."js-yaml-3.14.1"
         ];
       })
       sources."@serverless/template-1.1.4"
-      (sources."@serverless/utils-5.3.0" // {
+      (sources."@serverless/utils-5.6.0" // {
         dependencies = [
           sources."get-stream-6.0.1"
           sources."jwt-decode-3.1.2"
@@ -105710,27 +107965,18 @@ in
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@tencent-sdk/capi-1.1.8"
-      sources."@tencent-sdk/cls-0.2.1"
-      (sources."@tencent-sdk/common-0.1.0" // {
-        dependencies = [
-          sources."type-fest-1.2.1"
-        ];
-      })
-      sources."@tencent-sdk/faas-0.1.5"
       sources."@tokenizer/token-0.1.1"
-      sources."@types/cacheable-request-6.0.1"
+      sources."@types/cacheable-request-6.0.2"
       sources."@types/caseless-0.12.2"
-      sources."@types/debug-4.1.6"
-      sources."@types/http-cache-semantics-4.0.0"
-      sources."@types/keyv-3.1.1"
-      sources."@types/lodash-4.14.170"
+      sources."@types/http-cache-semantics-4.0.1"
+      sources."@types/keyv-3.1.2"
+      sources."@types/lodash-4.14.171"
       sources."@types/long-4.0.1"
-      sources."@types/node-15.14.0"
-      sources."@types/readable-stream-2.3.10"
-      sources."@types/request-2.48.5"
-      sources."@types/request-promise-native-1.0.17"
+      sources."@types/node-16.4.0"
+      sources."@types/request-2.48.6"
+      sources."@types/request-promise-native-1.0.18"
       sources."@types/responselike-1.0.0"
-      sources."@types/tough-cookie-4.0.0"
+      sources."@types/tough-cookie-4.0.1"
       sources."adm-zip-0.5.5"
       sources."after-0.8.2"
       (sources."agent-base-6.0.2" // {
@@ -105787,7 +108033,7 @@ in
       sources."async-2.6.3"
       sources."asynckit-0.4.0"
       sources."at-least-node-1.0.0"
-      (sources."aws-sdk-2.938.0" // {
+      (sources."aws-sdk-2.951.0" // {
         dependencies = [
           sources."buffer-4.9.2"
           sources."ieee754-1.1.13"
@@ -105890,7 +108136,7 @@ in
       sources."color-3.0.0"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."color-string-1.5.5"
+      sources."color-string-1.6.0"
       sources."colornames-1.1.1"
       sources."colors-1.3.3"
       sources."colorspace-1.1.2"
@@ -105922,7 +108168,7 @@ in
         ];
       })
       sources."dashdash-1.14.1"
-      sources."dayjs-1.10.5"
+      sources."dayjs-1.10.6"
       sources."debug-2.6.9"
       (sources."decompress-4.2.1" // {
         dependencies = [
@@ -105967,8 +108213,9 @@ in
       sources."dir-glob-3.0.1"
       sources."dot-qs-0.2.0"
       sources."dotenv-10.0.0"
+      sources."dotenv-expand-5.1.0"
       sources."duplexer3-0.1.4"
-      sources."duplexify-4.1.1"
+      sources."duplexify-4.1.2"
       sources."duration-0.2.2"
       sources."ecc-jsbn-0.1.2"
       sources."emoji-regex-8.0.0"
@@ -106007,19 +108254,19 @@ in
       sources."external-editor-3.1.0"
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."fast-safe-stringify-2.0.7"
+      sources."fast-safe-stringify-2.0.8"
       sources."fastest-levenshtein-1.0.12"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."fd-slicer-1.1.0"
       sources."fecha-4.2.1"
       sources."figures-3.2.0"
-      sources."file-type-16.5.0"
+      sources."file-type-16.5.2"
       sources."file-uri-to-path-1.0.0"
       sources."filename-reserved-regex-2.0.0"
       sources."filenamify-4.3.0"
-      sources."filesize-6.4.0"
+      sources."filesize-7.0.0"
       sources."fill-range-7.0.1"
       sources."find-requires-1.0.0"
       sources."flat-5.0.2"
@@ -106054,7 +108301,7 @@ in
       (sources."got-11.8.2" // {
         dependencies = [
           sources."@sindresorhus/is-4.0.1"
-          sources."@szmarczak/http-timer-4.0.5"
+          sources."@szmarczak/http-timer-4.0.6"
           sources."cacheable-request-7.0.2"
           sources."decompress-response-6.0.0"
           sources."defer-to-connect-2.0.1"
@@ -106261,7 +108508,7 @@ in
       sources."path-loader-1.0.10"
       sources."path-type-4.0.0"
       sources."path2-0.1.0"
-      sources."peek-readable-3.1.3"
+      sources."peek-readable-3.1.4"
       sources."pend-1.2.0"
       sources."performance-now-2.1.0"
       sources."picomatch-2.3.0"
@@ -106295,7 +108542,7 @@ in
       sources."ramda-0.26.1"
       sources."rc-1.2.8"
       sources."readable-stream-3.6.0"
-      sources."readable-web-to-node-stream-3.0.1"
+      sources."readable-web-to-node-stream-3.0.2"
       sources."readdir-glob-1.1.1"
       sources."readdirp-3.6.0"
       sources."registry-auth-token-4.2.1"
@@ -106309,7 +108556,7 @@ in
       })
       sources."request-promise-core-1.1.4"
       sources."request-promise-native-1.0.9"
-      sources."resolve-alpn-1.1.2"
+      sources."resolve-alpn-1.2.0"
       sources."responselike-1.0.2"
       sources."restore-cursor-3.1.0"
       sources."retry-0.10.1"
@@ -106331,7 +108578,7 @@ in
       sources."signal-exit-3.0.3"
       sources."simple-concat-1.0.1"
       sources."simple-get-2.8.1"
-      (sources."simple-git-2.40.0" // {
+      (sources."simple-git-2.41.1" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."ms-2.1.2"
@@ -106372,7 +108619,7 @@ in
       sources."strip-dirs-2.1.0"
       sources."strip-json-comments-2.0.1"
       sources."strip-outer-1.0.1"
-      sources."strtok3-6.0.8"
+      sources."strtok3-6.1.3"
       (sources."superagent-3.8.3" // {
         dependencies = [
           sources."debug-3.2.7"
@@ -106433,7 +108680,7 @@ in
       sources."to-buffer-1.1.1"
       sources."to-readable-stream-1.0.0"
       sources."to-regex-range-5.0.1"
-      sources."token-types-2.1.1"
+      sources."token-types-3.1.0"
       sources."tough-cookie-2.5.0"
       sources."traverse-0.6.6"
       sources."trim-repeated-1.0.0"
@@ -106492,7 +108739,7 @@ in
       })
       sources."wrappy-1.0.2"
       sources."write-file-atomic-2.4.3"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xml2js-0.4.19"
       sources."xmlbuilder-9.0.7"
       sources."xmlhttprequest-ssl-1.6.3"
@@ -107141,17 +109388,17 @@ in
   snyk = nodeEnv.buildNodePackage {
     name = "snyk";
     packageName = "snyk";
-    version = "1.653.0";
+    version = "1.664.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/snyk/-/snyk-1.653.0.tgz";
-      sha512 = "AFIsk1kgE9eQ+s31X9+b967us36UyHNes3VnHhgiVPX8YCq+uAPGNDV2rIaWDY/7c0yCtfOmFLD3mI5WxpJmdA==";
+      url = "https://registry.npmjs.org/snyk/-/snyk-1.664.0.tgz";
+      sha512 = "4YPqDdPPZsn3BBN82UiN6+Jy4zdKbBvw4MKClvh2QQgUJy6R9nEm/Q8IbdsM0jOqPByDRWVMwsCPQu3ZpqG3KA==";
     };
     dependencies = [
       sources."@arcanis/slice-ansi-1.0.2"
       sources."@deepcode/dcignore-1.0.2"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."@octetstream/promisify-2.0.2"
       sources."@open-policy-agent/opa-wasm-1.2.0"
       sources."@sindresorhus/is-4.0.1"
@@ -107166,7 +109413,7 @@ in
           sources."semver-7.3.5"
         ];
       })
-      sources."@snyk/docker-registry-v2-client-2.2.2"
+      sources."@snyk/docker-registry-v2-client-2.2.4"
       sources."@snyk/fast-glob-3.2.6-patch"
       (sources."@snyk/fix-1.650.0" // {
         dependencies = [
@@ -107211,9 +109458,10 @@ in
           sources."tslib-2.3.0"
         ];
       })
-      (sources."@snyk/snyk-docker-pull-3.2.5" // {
+      (sources."@snyk/snyk-docker-pull-3.6.3" // {
         dependencies = [
-          sources."tmp-0.1.0"
+          sources."rimraf-3.0.2"
+          sources."tmp-0.2.1"
         ];
       })
       (sources."@snyk/snyk-hex-plugin-1.1.4" // {
@@ -107221,26 +109469,26 @@ in
           sources."tslib-2.3.0"
         ];
       })
-      sources."@szmarczak/http-timer-4.0.5"
-      sources."@types/cacheable-request-6.0.1"
+      sources."@szmarczak/http-timer-4.0.6"
+      sources."@types/cacheable-request-6.0.2"
       sources."@types/debug-4.1.6"
-      sources."@types/emscripten-1.39.4"
+      sources."@types/emscripten-1.39.5"
       sources."@types/flat-cache-2.0.0"
-      sources."@types/graphlib-2.1.7"
-      sources."@types/http-cache-semantics-4.0.0"
-      sources."@types/js-yaml-3.12.6"
-      sources."@types/keyv-3.1.1"
-      sources."@types/lodash-4.14.170"
+      sources."@types/graphlib-2.1.8"
+      sources."@types/http-cache-semantics-4.0.1"
+      sources."@types/js-yaml-3.12.7"
+      sources."@types/keyv-3.1.2"
+      sources."@types/lodash-4.14.171"
       sources."@types/lodash.chunk-4.2.6"
       sources."@types/lodash.omit-4.5.6"
       sources."@types/lodash.union-4.6.6"
-      sources."@types/minimatch-3.0.4"
+      sources."@types/minimatch-3.0.5"
       sources."@types/node-13.13.52"
       sources."@types/responselike-1.0.0"
-      sources."@types/sarif-2.1.3"
-      sources."@types/semver-7.3.6"
+      sources."@types/sarif-2.1.4"
+      sources."@types/semver-7.3.7"
       sources."@types/treeify-1.0.0"
-      sources."@types/uuid-8.3.0"
+      sources."@types/uuid-8.3.1"
       (sources."@yarnpkg/core-2.4.0" // {
         dependencies = [
           sources."chalk-3.0.0"
@@ -107404,12 +109652,12 @@ in
       })
       sources."execa-1.0.0"
       sources."external-editor-3.1.0"
-      (sources."fast-glob-3.2.6" // {
+      (sources."fast-glob-3.2.7" // {
         dependencies = [
           sources."micromatch-4.0.4"
         ];
       })
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."figures-3.2.0"
       sources."fill-range-7.0.1"
       sources."follow-redirects-1.14.1"
@@ -107647,7 +109895,7 @@ in
       sources."readable-stream-3.6.0"
       sources."registry-auth-token-4.2.1"
       sources."registry-url-5.1.0"
-      sources."resolve-alpn-1.1.2"
+      sources."resolve-alpn-1.2.0"
       sources."responselike-2.0.0"
       sources."restore-cursor-3.1.0"
       sources."reusify-1.0.4"
@@ -107679,12 +109927,13 @@ in
           sources."tslib-2.3.0"
         ];
       })
-      (sources."snyk-docker-plugin-4.20.8" // {
+      (sources."snyk-docker-plugin-4.22.1" // {
         dependencies = [
-          sources."p-map-2.1.0"
+          sources."argparse-2.0.1"
+          sources."js-yaml-4.1.0"
           sources."rimraf-3.0.2"
           sources."semver-7.3.5"
-          sources."snyk-nodejs-lockfile-parser-1.34.0"
+          sources."snyk-nodejs-lockfile-parser-1.35.1"
           sources."tmp-0.2.1"
         ];
       })
@@ -107768,7 +110017,7 @@ in
           sources."yallist-2.1.2"
         ];
       })
-      (sources."snyk-sbt-plugin-2.11.1" // {
+      (sources."snyk-sbt-plugin-2.11.3" // {
         dependencies = [
           sources."tmp-0.1.0"
         ];
@@ -107891,16 +110140,16 @@ in
   "socket.io" = nodeEnv.buildNodePackage {
     name = "socket.io";
     packageName = "socket.io";
-    version = "4.1.2";
+    version = "4.1.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/socket.io/-/socket.io-4.1.2.tgz";
-      sha512 = "xK0SD1C7hFrh9+bYoYCdVt+ncixkSLKtNLCax5aEy1o3r5PaO5yQhVb97exIe67cE7lAK+EpyMytXWTWmyZY8w==";
+      url = "https://registry.npmjs.org/socket.io/-/socket.io-4.1.3.tgz";
+      sha512 = "tLkaY13RcO4nIRh1K2hT5iuotfTaIQw7cVIe0FUykN3SuQi0cm7ALxuyT5/CtDswOMWUzMGTibxYNx/gU7In+Q==";
     };
     dependencies = [
       sources."@types/component-emitter-1.2.10"
-      sources."@types/cookie-0.4.0"
-      sources."@types/cors-2.8.10"
-      sources."@types/node-15.14.0"
+      sources."@types/cookie-0.4.1"
+      sources."@types/cors-2.8.12"
+      sources."@types/node-16.4.0"
       sources."accepts-1.3.7"
       sources."base64-arraybuffer-0.1.4"
       sources."base64id-2.0.0"
@@ -107997,7 +110246,7 @@ in
       sources."ini-1.3.8"
       sources."is-arrayish-0.2.1"
       sources."is-ci-1.2.1"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-fullwidth-code-point-2.0.0"
       sources."is-installed-globally-0.1.0"
       sources."is-npm-1.0.0"
@@ -108120,7 +110369,7 @@ in
           sources."random-access-storage-1.3.0"
         ];
       })
-      sources."@types/minimatch-3.0.4"
+      sources."@types/minimatch-3.0.5"
       sources."abstract-leveldown-6.0.3"
       sources."aligned-block-file-1.2.2"
       sources."ansi-escapes-1.4.0"
@@ -108275,7 +110524,7 @@ in
       sources."errno-0.1.8"
       (sources."es-abstract-1.18.3" // {
         dependencies = [
-          sources."object-inspect-1.10.3"
+          sources."object-inspect-1.11.0"
         ];
       })
       (sources."es-get-iterator-1.1.2" // {
@@ -108717,7 +110966,7 @@ in
       sources."pump-3.0.0"
       sources."punycode-1.4.1"
       sources."push-stream-10.1.2"
-      (sources."push-stream-to-pull-stream-1.0.4" // {
+      (sources."push-stream-to-pull-stream-1.0.5" // {
         dependencies = [
           sources."push-stream-11.0.1"
         ];
@@ -108848,7 +111097,7 @@ in
       sources."shellsubstitute-1.2.0"
       (sources."side-channel-1.0.4" // {
         dependencies = [
-          sources."object-inspect-1.10.3"
+          sources."object-inspect-1.11.0"
         ];
       })
       sources."signal-exit-3.0.3"
@@ -109066,7 +111315,7 @@ in
       sources."word-wrap-1.2.3"
       sources."wrap-fn-0.1.5"
       sources."wrappy-1.0.2"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xtend-4.0.2"
       sources."zerr-1.0.4"
     ];
@@ -109116,8 +111365,8 @@ in
           sources."ws-1.1.5"
         ];
       })
-      sources."@types/babel-types-7.0.9"
-      sources."@types/babylon-6.16.5"
+      sources."@types/babel-types-7.0.10"
+      sources."@types/babylon-6.16.6"
       sources."accepts-1.3.7"
       sources."acorn-3.3.0"
       (sources."acorn-globals-3.1.0" // {
@@ -109166,7 +111415,7 @@ in
       sources."async-1.5.2"
       sources."async-limiter-1.0.1"
       sources."asynckit-0.4.0"
-      (sources."aws-sdk-2.938.0" // {
+      (sources."aws-sdk-2.951.0" // {
         dependencies = [
           sources."uuid-3.3.2"
         ];
@@ -109419,7 +111668,7 @@ in
       sources."ipaddr.js-1.9.1"
       sources."is-arrayish-0.2.1"
       sources."is-buffer-1.1.6"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       (sources."is-expression-3.0.0" // {
         dependencies = [
           sources."acorn-4.0.13"
@@ -109552,7 +111801,7 @@ in
       sources."oauth-sign-0.8.2"
       sources."object-assign-4.1.1"
       sources."object-hash-0.3.0"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."on-finished-2.3.0"
       sources."on-headers-1.0.2"
       sources."once-1.4.0"
@@ -109950,42 +112199,42 @@ in
     dependencies = [
       sources."@babel/code-frame-7.14.5"
       sources."@babel/compat-data-7.14.7"
-      sources."@babel/core-7.14.6"
-      sources."@babel/generator-7.14.5"
+      sources."@babel/core-7.14.8"
+      sources."@babel/generator-7.14.8"
       sources."@babel/helper-compilation-targets-7.14.5"
       sources."@babel/helper-function-name-7.14.5"
       sources."@babel/helper-get-function-arity-7.14.5"
       sources."@babel/helper-hoist-variables-7.14.5"
       sources."@babel/helper-member-expression-to-functions-7.14.7"
       sources."@babel/helper-module-imports-7.14.5"
-      sources."@babel/helper-module-transforms-7.14.5"
+      sources."@babel/helper-module-transforms-7.14.8"
       sources."@babel/helper-optimise-call-expression-7.14.5"
       sources."@babel/helper-replace-supers-7.14.5"
-      sources."@babel/helper-simple-access-7.14.5"
+      sources."@babel/helper-simple-access-7.14.8"
       sources."@babel/helper-split-export-declaration-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/helper-validator-option-7.14.5"
-      sources."@babel/helpers-7.14.6"
+      sources."@babel/helpers-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.14.7"
+      sources."@babel/parser-7.14.8"
       sources."@babel/template-7.14.5"
-      sources."@babel/traverse-7.14.7"
-      sources."@babel/types-7.14.5"
+      sources."@babel/traverse-7.14.8"
+      sources."@babel/types-7.14.8"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."@stylelint/postcss-css-in-js-0.37.2"
       sources."@stylelint/postcss-markdown-0.36.2"
-      sources."@types/mdast-3.0.3"
-      sources."@types/minimist-1.2.1"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@types/mdast-3.0.7"
+      sources."@types/minimist-1.2.2"
+      sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
-      sources."@types/unist-2.0.3"
-      sources."ajv-8.6.0"
+      sources."@types/unist-2.0.6"
+      sources."ajv-8.6.2"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-3.2.1"
       sources."array-union-2.1.0"
@@ -110004,7 +112253,7 @@ in
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       (sources."chalk-4.1.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
@@ -110042,7 +112291,7 @@ in
       sources."domelementtype-1.3.1"
       sources."domhandler-2.4.2"
       sources."domutils-1.7.0"
-      sources."electron-to-chromium-1.3.765"
+      sources."electron-to-chromium-1.3.782"
       sources."emoji-regex-8.0.0"
       sources."entities-1.1.2"
       sources."error-ex-1.3.2"
@@ -110051,14 +112300,14 @@ in
       sources."execall-2.0.0"
       sources."extend-3.0.2"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fastest-levenshtein-1.0.12"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."file-entry-cache-6.0.1"
       sources."fill-range-7.0.1"
       sources."find-up-4.1.0"
       sources."flat-cache-3.0.4"
-      sources."flatted-3.2.0"
+      sources."flatted-3.2.1"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."gensync-1.0.0-beta.2"
@@ -110093,7 +112342,7 @@ in
       sources."is-alphanumerical-1.0.4"
       sources."is-arrayish-0.2.1"
       sources."is-buffer-2.0.5"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-decimal-1.0.4"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
@@ -110275,18 +112524,18 @@ in
   svelte-language-server = nodeEnv.buildNodePackage {
     name = "svelte-language-server";
     packageName = "svelte-language-server";
-    version = "0.14.2";
+    version = "0.14.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/svelte-language-server/-/svelte-language-server-0.14.2.tgz";
-      sha512 = "cBKcjcvFEDml6CGrJeRqVS+qvbZNZEOoww0bW4HnLy/wV4cSXTG9yHsGhOZpPrWcCQ0F2oqiDE87K/h9gpSFCQ==";
+      url = "https://registry.npmjs.org/svelte-language-server/-/svelte-language-server-0.14.4.tgz";
+      sha512 = "ldw4/YQR/gpI29Sgv+u/zkHTIMKn2ohpSvfORmDm2H85fNa/Dw8fUoqK080GbVol32sYO8ThzNKkheBjUT0mCw==";
     };
     dependencies = [
       sources."@emmetio/abbreviation-2.2.2"
       sources."@emmetio/css-abbreviation-2.1.4"
       sources."@emmetio/scanner-1.0.0"
-      sources."@types/node-15.14.0"
-      sources."@types/pug-2.0.4"
-      sources."@types/sass-1.16.0"
+      sources."@types/node-16.4.0"
+      sources."@types/pug-2.0.5"
+      sources."@types/sass-1.16.1"
       sources."anymatch-3.1.2"
       sources."balanced-match-1.0.2"
       sources."binary-extensions-2.2.0"
@@ -110326,8 +112575,8 @@ in
       sources."source-map-0.7.3"
       sources."strip-indent-3.0.0"
       sources."svelte-3.38.3"
-      sources."svelte-preprocess-4.7.3"
-      sources."svelte2tsx-0.3.0"
+      sources."svelte-preprocess-4.7.4"
+      sources."svelte2tsx-0.4.2"
       sources."to-regex-range-5.0.1"
       sources."tslib-2.3.0"
       sources."typescript-4.3.5"
@@ -110357,6 +112606,74 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  svelte-check = nodeEnv.buildNodePackage {
+    name = "svelte-check";
+    packageName = "svelte-check";
+    version = "2.2.3";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/svelte-check/-/svelte-check-2.2.3.tgz";
+      sha512 = "mqe/lgF0Ew+54YI4bPW5D26sMolh+MofQiz41U0c1GvUsP3bKsLLH0mjs4P4Xc+ajUFJtvGBo5PWaf0dd46sIQ==";
+    };
+    dependencies = [
+      sources."@types/node-16.4.0"
+      sources."@types/pug-2.0.5"
+      sources."@types/sass-1.16.1"
+      sources."ansi-styles-4.3.0"
+      sources."anymatch-3.1.2"
+      sources."balanced-match-1.0.2"
+      sources."binary-extensions-2.2.0"
+      sources."brace-expansion-1.1.11"
+      sources."braces-3.0.2"
+      sources."callsites-3.1.0"
+      sources."chalk-4.1.1"
+      sources."chokidar-3.5.2"
+      sources."color-convert-2.0.1"
+      sources."color-name-1.1.4"
+      sources."concat-map-0.0.1"
+      sources."detect-indent-6.1.0"
+      sources."fill-range-7.0.1"
+      sources."fs.realpath-1.0.0"
+      sources."fsevents-2.3.2"
+      sources."glob-7.1.7"
+      sources."glob-parent-5.1.2"
+      sources."has-flag-4.0.0"
+      sources."import-fresh-3.3.0"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.4"
+      sources."is-binary-path-2.1.0"
+      sources."is-extglob-2.1.1"
+      sources."is-glob-4.0.1"
+      sources."is-number-7.0.0"
+      sources."min-indent-1.0.1"
+      sources."minimatch-3.0.4"
+      sources."minimist-1.2.5"
+      sources."mri-1.1.6"
+      sources."normalize-path-3.0.0"
+      sources."once-1.4.0"
+      sources."parent-module-1.0.1"
+      sources."path-is-absolute-1.0.1"
+      sources."picomatch-2.3.0"
+      sources."readdirp-3.6.0"
+      sources."resolve-from-4.0.0"
+      sources."sade-1.7.4"
+      sources."source-map-0.7.3"
+      sources."strip-indent-3.0.0"
+      sources."supports-color-7.2.0"
+      sources."svelte-preprocess-4.7.4"
+      sources."to-regex-range-5.0.1"
+      sources."typescript-4.3.5"
+      sources."wrappy-1.0.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Svelte Code Checker Terminal Interface";
+      homepage = "https://github.com/sveltejs/language-tools#readme";
+      license = "MIT";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   svgo = nodeEnv.buildNodePackage {
     name = "svgo";
     packageName = "svgo";
@@ -110782,7 +113099,7 @@ in
           sources."kind-of-3.2.2"
         ];
       })
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-visit-1.0.1"
       sources."object.pick-1.3.0"
       sources."on-finished-2.3.0"
@@ -111134,11 +113451,11 @@ in
       })
       sources."string-width-3.1.0"
       sources."strip-ansi-5.2.0"
-      sources."telegraf-3.38.0"
-      sources."telegram-typings-3.6.1"
+      sources."telegraf-3.39.0"
       sources."tough-cookie-2.5.0"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-1.0.3"
+      sources."typegram-3.4.1"
       sources."uri-js-4.4.1"
       sources."uuid-3.4.0"
       sources."verror-1.10.0"
@@ -111297,39 +113614,67 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  terser = nodeEnv.buildNodePackage {
+    name = "terser";
+    packageName = "terser";
+    version = "5.7.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/terser/-/terser-5.7.1.tgz";
+      sha512 = "b3e+d5JbHAe/JSjwsC3Zn55wsBIM7AsHLjKxT31kGCldgbpFePaFo+PiddtO6uwRZWRw7sPXmAN8dTW61xmnSg==";
+    };
+    dependencies = [
+      sources."buffer-from-1.1.1"
+      sources."commander-2.20.3"
+      sources."source-map-0.7.3"
+      (sources."source-map-support-0.5.19" // {
+        dependencies = [
+          sources."source-map-0.6.1"
+        ];
+      })
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "JavaScript parser, mangler/compressor and beautifier toolkit for ES6+";
+      homepage = "https://terser.org";
+      license = "BSD-2-Clause";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   textlint = nodeEnv.buildNodePackage {
     name = "textlint";
     packageName = "textlint";
-    version = "12.0.0";
+    version = "12.0.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/textlint/-/textlint-12.0.0.tgz";
-      sha512 = "hpXezTFR/BxNzc0iJqwspAuHYrCWF/nF7mBS9OGzgBJx5FfS1xfsAIityV65Ffcr+nxCExzTQqRHR6qSWOZmbg==";
+      url = "https://registry.npmjs.org/textlint/-/textlint-12.0.2.tgz";
+      sha512 = "pg453CN2xtLoqss9YVSKkEFJtJ1AB/9SWTxl11fgdqFPCOK2W/320CJRqSxo5bJFpIn5+6bjqkuPHS0cZWLPvg==";
     };
     dependencies = [
       sources."@azu/format-text-1.0.1"
       sources."@azu/style-format-1.0.0"
       sources."@textlint/ast-node-types-12.0.0"
-      sources."@textlint/ast-tester-12.0.0"
-      sources."@textlint/ast-traverse-12.0.0"
-      sources."@textlint/feature-flag-12.0.0"
-      sources."@textlint/fixer-formatter-12.0.0"
-      sources."@textlint/kernel-12.0.0"
-      sources."@textlint/linter-formatter-12.0.0"
-      sources."@textlint/markdown-to-ast-12.0.0"
-      sources."@textlint/module-interop-12.0.0"
-      sources."@textlint/source-code-fixer-12.0.0"
-      sources."@textlint/text-to-ast-12.0.0"
-      sources."@textlint/textlint-plugin-markdown-12.0.0"
-      sources."@textlint/textlint-plugin-text-12.0.0"
-      sources."@textlint/types-12.0.0"
-      sources."@textlint/utils-12.0.0"
-      sources."@types/mdast-3.0.3"
-      sources."@types/unist-2.0.3"
-      sources."ajv-4.11.8"
-      sources."ajv-keywords-1.5.1"
+      sources."@textlint/ast-tester-12.0.2"
+      sources."@textlint/ast-traverse-12.0.2"
+      sources."@textlint/feature-flag-12.0.2"
+      sources."@textlint/fixer-formatter-12.0.2"
+      sources."@textlint/kernel-12.0.2"
+      sources."@textlint/linter-formatter-12.0.2"
+      sources."@textlint/markdown-to-ast-12.0.2"
+      sources."@textlint/module-interop-12.0.2"
+      sources."@textlint/source-code-fixer-12.0.2"
+      sources."@textlint/text-to-ast-12.0.2"
+      sources."@textlint/textlint-plugin-markdown-12.0.2"
+      sources."@textlint/textlint-plugin-text-12.0.2"
+      sources."@textlint/types-12.0.2"
+      sources."@textlint/utils-12.0.2"
+      sources."@types/mdast-3.0.7"
+      sources."@types/unist-2.0.6"
+      sources."ajv-8.6.2"
       sources."ansi-regex-2.1.1"
       sources."ansi-styles-2.2.1"
       sources."argparse-1.0.10"
+      sources."astral-regex-2.0.0"
       sources."bail-1.0.5"
       sources."balanced-match-1.0.2"
       sources."boundary-1.0.1"
@@ -111345,8 +113690,9 @@ in
       sources."character-entities-legacy-1.1.4"
       sources."character-reference-invalid-1.1.4"
       sources."charenc-0.0.2"
-      sources."co-4.6.0"
       sources."code-point-at-1.1.0"
+      sources."color-convert-2.0.1"
+      sources."color-name-1.1.4"
       sources."concat-map-0.0.1"
       sources."crypt-0.0.2"
       sources."debug-4.3.2"
@@ -111354,10 +113700,12 @@ in
       sources."deep-is-0.1.3"
       sources."define-properties-1.1.3"
       sources."diff-4.0.2"
+      sources."emoji-regex-8.0.0"
       sources."error-ex-1.3.2"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-4.0.1"
       sources."extend-3.0.2"
+      sources."fast-deep-equal-3.1.3"
       sources."fast-levenshtein-2.0.6"
       sources."fault-1.0.4"
       sources."file-entry-cache-5.0.1"
@@ -111382,7 +113730,7 @@ in
       sources."is-arguments-1.1.0"
       sources."is-arrayish-0.2.1"
       sources."is-buffer-2.0.5"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-date-object-1.0.4"
       sources."is-decimal-1.0.4"
       sources."is-file-1.0.0"
@@ -111393,16 +113741,15 @@ in
       sources."is-utf8-0.2.1"
       sources."js-yaml-3.14.1"
       sources."json-parse-better-errors-1.0.2"
-      sources."json-stable-stringify-1.0.1"
+      sources."json-schema-traverse-1.0.0"
       sources."json5-2.2.0"
-      sources."jsonify-0.0.0"
       sources."levn-0.4.1"
       sources."load-json-file-1.1.0"
       sources."locate-path-2.0.0"
-      sources."lodash-4.17.21"
+      sources."lodash.clonedeep-4.5.0"
+      sources."lodash.truncate-4.4.2"
       sources."log-symbols-1.0.2"
       sources."longest-streak-2.0.4"
-      sources."map-like-2.0.0"
       sources."markdown-table-2.0.0"
       (sources."md5-2.3.0" // {
         dependencies = [
@@ -111458,6 +113805,7 @@ in
       sources."pinkie-promise-2.0.1"
       sources."pluralize-2.0.0"
       sources."prelude-ls-1.2.1"
+      sources."punycode-2.1.1"
       sources."rc-config-loader-3.0.0"
       sources."read-pkg-1.1.0"
       (sources."read-pkg-up-3.0.0" // {
@@ -111480,7 +113828,12 @@ in
       sources."resolve-1.20.0"
       sources."rimraf-2.6.3"
       sources."semver-5.7.1"
-      sources."slice-ansi-0.0.4"
+      (sources."slice-ansi-4.0.0" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."is-fullwidth-code-point-3.0.0"
+        ];
+      })
       sources."spdx-correct-3.1.1"
       sources."spdx-exceptions-2.3.0"
       sources."spdx-expression-parse-3.0.1"
@@ -111499,12 +113852,10 @@ in
       sources."strip-bom-2.0.0"
       sources."structured-source-3.0.2"
       sources."supports-color-2.0.0"
-      (sources."table-3.8.3" // {
+      (sources."table-6.7.1" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
-          sources."is-fullwidth-code-point-2.0.0"
-          sources."string-width-2.1.1"
-          sources."strip-ansi-4.0.0"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."string-width-4.2.2"
         ];
       })
       sources."text-table-0.2.0"
@@ -111517,6 +113868,7 @@ in
       sources."unist-util-is-4.1.0"
       sources."unist-util-stringify-position-2.0.3"
       sources."unist-util-visit-parents-3.1.1"
+      sources."uri-js-4.4.1"
       sources."validate-npm-package-license-3.0.4"
       sources."vfile-4.2.1"
       sources."vfile-message-2.0.4"
@@ -111597,19 +113949,19 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/highlight-7.14.5"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@textlint/ast-node-types-4.4.3"
       sources."@textlint/types-1.5.5"
-      sources."@types/hast-2.3.1"
-      sources."@types/minimist-1.2.1"
-      sources."@types/normalize-package-data-2.4.0"
+      sources."@types/hast-2.3.2"
+      sources."@types/minimist-1.2.2"
+      sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse5-5.0.3"
-      sources."@types/unist-2.0.3"
+      sources."@types/unist-2.0.6"
       sources."acorn-8.4.1"
-      sources."acorn-jsx-5.3.1"
+      sources."acorn-jsx-5.3.2"
       sources."alex-9.1.0"
       (sources."ansi-align-3.0.0" // {
         dependencies = [
@@ -111745,7 +114097,7 @@ in
       sources."is-arrayish-0.2.1"
       sources."is-buffer-2.0.5"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-decimal-1.0.4"
       sources."is-empty-1.2.0"
       sources."is-fullwidth-code-point-2.0.0"
@@ -112114,7 +114466,7 @@ in
     dependencies = [
       sources."@textlint/ast-node-types-4.4.3"
       sources."@types/structured-source-3.0.0"
-      sources."@types/unist-2.0.3"
+      sources."@types/unist-2.0.6"
       sources."bail-1.0.5"
       sources."boundary-1.0.1"
       sources."buffer-from-1.1.1"
@@ -112231,7 +114583,7 @@ in
       sources."is-regex-1.1.3"
       sources."is-string-1.0.6"
       sources."is-symbol-1.0.4"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."string.prototype.trimend-1.0.4"
@@ -112338,7 +114690,7 @@ in
       sources."is-regex-1.1.3"
       sources."is-string-1.0.6"
       sources."is-symbol-1.0.4"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
       sources."string.prototype.trimend-1.0.4"
@@ -112402,13 +114754,12 @@ in
     };
     dependencies = [
       sources."@sindresorhus/is-3.1.2"
-      sources."@szmarczak/http-timer-4.0.5"
+      sources."@szmarczak/http-timer-4.0.6"
       sources."@tokenizer/token-0.1.1"
-      sources."@types/cacheable-request-6.0.1"
-      sources."@types/debug-4.1.6"
-      sources."@types/http-cache-semantics-4.0.0"
-      sources."@types/keyv-3.1.1"
-      sources."@types/node-15.14.0"
+      sources."@types/cacheable-request-6.0.2"
+      sources."@types/http-cache-semantics-4.0.1"
+      sources."@types/keyv-3.1.2"
+      sources."@types/node-16.4.0"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."abstract-logging-2.0.1"
@@ -112639,7 +114990,7 @@ in
       sources."mkdirp-0.5.5"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
-      (sources."needle-2.6.0" // {
+      (sources."needle-2.8.0" // {
         dependencies = [
           sources."debug-3.2.7"
           sources."ms-2.1.3"
@@ -112708,7 +115059,7 @@ in
       sources."parseurl-1.3.3"
       sources."path-is-absolute-1.0.1"
       sources."path-to-regexp-0.1.7"
-      sources."peek-readable-3.1.3"
+      sources."peek-readable-4.0.0"
       sources."performance-now-2.1.0"
       sources."pify-4.0.1"
       sources."precond-0.2.3"
@@ -112736,7 +115087,7 @@ in
           sources."uuid-3.4.0"
         ];
       })
-      sources."resolve-alpn-1.1.2"
+      sources."resolve-alpn-1.2.0"
       sources."responselike-2.0.0"
       sources."rimraf-2.7.1"
       sources."safe-buffer-5.2.1"
@@ -112793,7 +115144,7 @@ in
       sources."strip-ansi-3.0.1"
       sources."strip-json-comments-2.0.1"
       sources."strip-outer-1.0.1"
-      sources."strtok3-6.0.8"
+      sources."strtok3-6.2.2"
       sources."supports-color-7.2.0"
       sources."tar-4.4.13"
       sources."tlds-1.208.0"
@@ -112824,7 +115175,7 @@ in
       sources."wide-align-1.1.3"
       sources."with-open-file-0.1.7"
       sources."wrappy-1.0.2"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xmlhttprequest-ssl-1.5.5"
       sources."yallist-3.1.1"
       sources."yarn-1.22.4"
@@ -112843,10 +115194,10 @@ in
   three = nodeEnv.buildNodePackage {
     name = "three";
     packageName = "three";
-    version = "0.130.0";
+    version = "0.130.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/three/-/three-0.130.0.tgz";
-      sha512 = "4jqvbJyvgrjTsBgqE7TrdkZral78l8CXpFCdGzqQoiJHsRhGHxe5tvwqZQVaS6eodPav7jdYO5sp1c5RmMB3ng==";
+      url = "https://registry.npmjs.org/three/-/three-0.130.1.tgz";
+      sha512 = "OSPPKcGvFSiGkG3jFrwwC76PBV/ZSrGxpBbg28bW8s9GU8r/y2spNGtEXHEb/CVqo0Ctf5Lx2rVaxQZB6OasaA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -113298,7 +115649,7 @@ in
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
+      sources."@nodelib/fs.walk-1.2.8"
       sources."aggregate-error-3.1.0"
       sources."array-union-2.1.0"
       sources."balanced-match-1.0.2"
@@ -113311,8 +115662,8 @@ in
       sources."crypto-random-string-2.0.0"
       sources."del-6.0.0"
       sources."dir-glob-3.0.1"
-      sources."fast-glob-3.2.6"
-      sources."fastq-1.11.0"
+      sources."fast-glob-3.2.7"
+      sources."fastq-1.11.1"
       sources."fill-range-7.0.1"
       sources."fs-extra-10.0.0"
       sources."fs.realpath-1.0.0"
@@ -113419,9 +115770,9 @@ in
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@types/component-emitter-1.2.10"
-      sources."@types/cookie-0.4.0"
-      sources."@types/cors-2.8.10"
-      sources."@types/node-14.17.4"
+      sources."@types/cookie-0.4.1"
+      sources."@types/cors-2.8.12"
+      sources."@types/node-14.17.5"
       sources."abbrev-1.1.1"
       sources."accepts-1.3.7"
       sources."ansi-regex-5.0.0"
@@ -113453,7 +115804,7 @@ in
       sources."color-3.0.0"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."color-string-1.5.5"
+      sources."color-string-1.6.0"
       sources."colors-1.4.0"
       sources."colorspace-1.1.2"
       sources."component-emitter-1.3.0"
@@ -113474,7 +115825,7 @@ in
       sources."depd-1.1.2"
       sources."destroy-1.0.4"
       sources."diff-5.0.0"
-      sources."diff2html-3.4.5"
+      sources."diff2html-3.4.7"
       sources."dnd-page-scroll-0.0.4"
       sources."duplexer3-0.1.4"
       sources."ee-first-1.1.1"
@@ -113502,7 +115853,7 @@ in
           sources."safe-buffer-5.2.1"
         ];
       })
-      sources."fast-safe-stringify-2.0.7"
+      sources."fast-safe-stringify-2.0.8"
       sources."fecha-4.2.1"
       sources."finalhandler-1.1.2"
       sources."fn.name-1.1.0"
@@ -113628,7 +115979,7 @@ in
       sources."signals-1.0.0"
       sources."simple-swizzle-0.2.2"
       sources."snapsvg-0.5.1"
-      (sources."socket.io-4.1.2" // {
+      (sources."socket.io-4.1.3" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."ms-2.1.2"
@@ -113766,7 +116117,7 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."internmap-1.0.1"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-fullwidth-code-point-1.0.0"
       sources."isarray-1.0.0"
       sources."lru-cache-6.0.0"
@@ -113880,7 +116231,7 @@ in
       sha512 = "HEyf0iHnCNmWkWFIbEmMphcJwZpcBnfnU8v+Ojrndr7ihDueojHMOSikoyz/GNpdkai+QFxLboA6DDCTtFv9iQ==";
     };
     dependencies = [
-      sources."@types/clone-2.1.0"
+      sources."@types/clone-2.1.1"
       sources."@types/fast-json-stable-stringify-2.1.0"
       sources."ansi-regex-5.0.0"
       sources."ansi-styles-4.3.0"
@@ -113946,16 +116297,18 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."chalk-2.4.2"
           sources."escape-string-regexp-1.0.5"
         ];
       })
-      sources."@eslint/eslintrc-0.4.2"
+      sources."@eslint/eslintrc-0.4.3"
+      sources."@humanwhocodes/config-array-0.5.0"
+      sources."@humanwhocodes/object-schema-1.2.0"
       sources."acorn-7.4.1"
-      sources."acorn-jsx-5.3.1"
+      sources."acorn-jsx-5.3.2"
       sources."ajv-6.12.6"
       sources."ansi-colors-4.1.1"
       sources."ansi-regex-5.0.0"
@@ -113987,8 +116340,12 @@ in
       sources."emoji-regex-8.0.0"
       sources."enquirer-2.3.6"
       sources."escape-string-regexp-4.0.0"
-      sources."eslint-7.29.0"
-      sources."eslint-plugin-vue-7.12.1"
+      sources."eslint-7.31.0"
+      (sources."eslint-plugin-vue-7.14.0" // {
+        dependencies = [
+          sources."semver-6.3.0"
+        ];
+      })
       sources."eslint-scope-5.1.1"
       (sources."eslint-utils-2.1.0" // {
         dependencies = [
@@ -114019,13 +116376,13 @@ in
       sources."fast-levenshtein-2.0.6"
       sources."file-entry-cache-6.0.1"
       sources."flat-cache-3.0.4"
-      sources."flatted-3.2.0"
+      sources."flatted-3.2.1"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."functional-red-black-tree-1.0.1"
       sources."glob-7.1.7"
       sources."glob-parent-5.1.2"
-      sources."globals-13.9.0"
+      sources."globals-13.10.0"
       sources."has-1.0.3"
       sources."has-flag-3.0.0"
       sources."ignore-4.0.6"
@@ -114033,7 +116390,7 @@ in
       sources."imurmurhash-0.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.1"
@@ -114085,7 +116442,7 @@ in
       sources."supports-color-5.5.0"
       (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.6.0"
+          sources."ajv-8.6.2"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -114104,15 +116461,11 @@ in
       sources."typescript-4.3.5"
       sources."uri-js-4.4.1"
       sources."v8-compile-cache-2.3.0"
-      (sources."vue-eslint-parser-7.7.1" // {
+      (sources."vue-eslint-parser-7.9.0" // {
         dependencies = [
-          sources."acorn-8.4.1"
           sources."eslint-visitor-keys-1.3.0"
-          (sources."espree-8.0.0" // {
-            dependencies = [
-              sources."eslint-visitor-keys-3.0.0"
-            ];
-          })
+          sources."espree-6.2.1"
+          sources."semver-6.3.0"
         ];
       })
       sources."which-2.0.2"
@@ -114206,19 +116559,15 @@ in
     };
     dependencies = [
       sources."agent-base-4.3.0"
-      sources."balanced-match-1.0.2"
-      sources."brace-expansion-1.1.11"
-      sources."concat-map-0.0.1"
       sources."debug-3.1.0"
       sources."es6-promise-4.2.8"
       sources."es6-promisify-5.0.0"
       sources."http-proxy-agent-2.1.0"
       sources."https-proxy-agent-2.2.4"
       sources."jsonc-parser-3.0.0"
-      sources."minimatch-3.0.4"
       sources."ms-2.0.0"
       sources."request-light-0.4.0"
-      (sources."vscode-json-languageservice-4.1.5" // {
+      (sources."vscode-json-languageservice-4.1.6" // {
         dependencies = [
           sources."vscode-nls-5.0.0"
         ];
@@ -114298,30 +116647,30 @@ in
     src = ../../misc/vscode-extensions/vscode-lldb/build-deps;
     dependencies = [
       sources."@discoveryjs/json-ext-0.5.3"
-      sources."@types/eslint-7.2.13"
-      sources."@types/eslint-scope-3.7.0"
-      sources."@types/estree-0.0.48"
-      sources."@types/json-schema-7.0.7"
+      sources."@types/eslint-7.28.0"
+      sources."@types/eslint-scope-3.7.1"
+      sources."@types/estree-0.0.50"
+      sources."@types/json-schema-7.0.8"
       sources."@types/mocha-7.0.2"
       sources."@types/node-8.10.66"
-      sources."@types/vscode-1.57.0"
-      sources."@types/yauzl-2.9.1"
+      sources."@types/vscode-1.58.1"
+      sources."@types/yauzl-2.9.2"
       sources."@ungap/promise-all-settled-1.1.2"
-      sources."@webassemblyjs/ast-1.11.0"
-      sources."@webassemblyjs/floating-point-hex-parser-1.11.0"
-      sources."@webassemblyjs/helper-api-error-1.11.0"
-      sources."@webassemblyjs/helper-buffer-1.11.0"
-      sources."@webassemblyjs/helper-numbers-1.11.0"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.11.0"
-      sources."@webassemblyjs/helper-wasm-section-1.11.0"
-      sources."@webassemblyjs/ieee754-1.11.0"
-      sources."@webassemblyjs/leb128-1.11.0"
-      sources."@webassemblyjs/utf8-1.11.0"
-      sources."@webassemblyjs/wasm-edit-1.11.0"
-      sources."@webassemblyjs/wasm-gen-1.11.0"
-      sources."@webassemblyjs/wasm-opt-1.11.0"
-      sources."@webassemblyjs/wasm-parser-1.11.0"
-      sources."@webassemblyjs/wast-printer-1.11.0"
+      sources."@webassemblyjs/ast-1.11.1"
+      sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
+      sources."@webassemblyjs/helper-api-error-1.11.1"
+      sources."@webassemblyjs/helper-buffer-1.11.1"
+      sources."@webassemblyjs/helper-numbers-1.11.1"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.11.1"
+      sources."@webassemblyjs/helper-wasm-section-1.11.1"
+      sources."@webassemblyjs/ieee754-1.11.1"
+      sources."@webassemblyjs/leb128-1.11.1"
+      sources."@webassemblyjs/utf8-1.11.1"
+      sources."@webassemblyjs/wasm-edit-1.11.1"
+      sources."@webassemblyjs/wasm-gen-1.11.1"
+      sources."@webassemblyjs/wasm-opt-1.11.1"
+      sources."@webassemblyjs/wasm-parser-1.11.1"
+      sources."@webassemblyjs/wast-printer-1.11.1"
       sources."@webpack-cli/configtest-1.0.4"
       sources."@webpack-cli/info-1.3.0"
       sources."@webpack-cli/serve-1.5.1"
@@ -114348,7 +116697,7 @@ in
       sources."buffer-from-1.1.1"
       sources."call-bind-1.0.2"
       sources."camelcase-6.2.0"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       (sources."chalk-4.1.1" // {
         dependencies = [
           sources."supports-color-7.2.0"
@@ -114388,14 +116737,14 @@ in
       sources."domelementtype-2.2.0"
       sources."domhandler-4.2.0"
       sources."domutils-2.7.0"
-      sources."electron-to-chromium-1.3.765"
+      sources."electron-to-chromium-1.3.782"
       sources."emoji-regex-8.0.0"
       sources."emojis-list-3.0.0"
       sources."enhanced-resolve-5.8.2"
       sources."entities-2.2.0"
       sources."envinfo-7.8.1"
       sources."errno-0.1.8"
-      sources."es-module-lexer-0.6.0"
+      sources."es-module-lexer-0.7.1"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-4.0.0"
       sources."eslint-scope-5.1.1"
@@ -114436,7 +116785,7 @@ in
       sources."inherits-2.0.4"
       sources."interpret-2.2.0"
       sources."is-binary-path-2.1.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-2.0.0"
       sources."is-glob-4.0.1"
@@ -114494,7 +116843,7 @@ in
       sources."normalize-path-3.0.0"
       sources."npm-run-path-4.0.1"
       sources."nth-check-2.0.0"
-      sources."object-inspect-1.10.3"
+      sources."object-inspect-1.11.0"
       sources."once-1.4.0"
       sources."onetime-5.1.2"
       sources."os-homedir-1.0.2"
@@ -114528,13 +116877,13 @@ in
       sources."read-1.0.7"
       sources."readable-stream-1.0.34"
       sources."readdirp-3.5.0"
-      sources."rechoir-0.7.0"
+      sources."rechoir-0.7.1"
       sources."require-directory-2.1.1"
       sources."resolve-1.20.0"
       sources."resolve-cwd-3.0.0"
       sources."resolve-from-5.0.0"
       sources."safe-buffer-5.2.1"
-      sources."schema-utils-3.0.0"
+      sources."schema-utils-3.1.1"
       sources."semver-5.7.1"
       sources."serialize-javascript-5.0.1"
       sources."shallow-clone-3.0.1"
@@ -114598,14 +116947,14 @@ in
       sources."vscode-debugadapter-testsupport-1.47.0"
       sources."vscode-debugprotocol-1.47.0"
       sources."watchpack-2.2.0"
-      sources."webpack-5.42.0"
+      sources."webpack-5.45.1"
       (sources."webpack-cli-4.7.2" // {
         dependencies = [
           sources."commander-7.2.0"
         ];
       })
       sources."webpack-merge-5.8.0"
-      sources."webpack-sources-2.3.0"
+      sources."webpack-sources-2.3.1"
       sources."which-2.0.2"
       sources."wide-align-1.1.3"
       sources."wildcard-2.0.0"
@@ -114938,7 +117287,7 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.14.5"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       sources."@babel/highlight-7.14.5"
       sources."@emmetio/extract-abbreviation-0.1.6"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
@@ -114955,13 +117304,13 @@ in
       sources."@starptech/rehype-webparser-0.10.0"
       sources."@starptech/webparser-0.10.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/node-15.14.0"
-      sources."@types/unist-2.0.3"
+      sources."@types/node-16.4.0"
+      sources."@types/unist-2.0.6"
       sources."@types/vfile-3.0.2"
       sources."@types/vfile-message-2.0.0"
       sources."abbrev-1.1.1"
       sources."acorn-6.4.2"
-      sources."acorn-jsx-5.3.1"
+      sources."acorn-jsx-5.3.2"
       sources."ajv-6.12.6"
       sources."ajv-keywords-2.1.1"
       (sources."ansi-align-3.0.0" // {
@@ -115150,19 +117499,16 @@ in
       })
       (sources."eslint-plugin-vue-6.2.2" // {
         dependencies = [
-          sources."acorn-8.4.1"
+          sources."acorn-7.4.1"
           sources."debug-4.3.2"
           sources."eslint-scope-5.1.1"
-          sources."eslint-visitor-keys-3.0.0"
-          sources."espree-8.0.0"
-          sources."lru-cache-6.0.0"
+          sources."espree-6.2.1"
           sources."ms-2.1.2"
-          (sources."vue-eslint-parser-7.7.1" // {
+          (sources."vue-eslint-parser-7.9.0" // {
             dependencies = [
-              sources."semver-7.3.5"
+              sources."semver-6.3.0"
             ];
           })
-          sources."yallist-4.0.0"
         ];
       })
       sources."eslint-scope-4.0.3"
@@ -115313,7 +117659,7 @@ in
       sources."is-binary-path-2.1.0"
       sources."is-buffer-2.0.5"
       sources."is-ci-2.0.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-decimal-1.0.4"
       sources."is-descriptor-1.0.2"
@@ -115881,7 +118227,7 @@ in
       sha512 = "uhSNGU27KDT2e2v51l/NqMc59O7X0DG7CHonZOwsnvMHLvyudCLZgXCU8Rw4T8gpqg2asn50vfPHq7l3DGlN5w==";
     };
     dependencies = [
-      sources."@babel/runtime-corejs3-7.14.7"
+      sources."@babel/runtime-corejs3-7.14.8"
       sources."@mapbox/node-pre-gyp-1.0.5"
       sources."@tootallnate/once-1.1.2"
       sources."@types/raf-3.4.0"
@@ -115903,7 +118249,7 @@ in
       sources."at-least-node-1.0.0"
       sources."atob-2.1.2"
       sources."balanced-match-1.0.2"
-      (sources."bit-field-1.5.1" // {
+      (sources."bit-field-1.5.2" // {
         dependencies = [
           sources."ansi-regex-5.0.0"
           sources."fs-extra-10.0.0"
@@ -116069,7 +118415,7 @@ in
         ];
       })
       sources."wrappy-1.0.2"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xml-name-validator-3.0.0"
       sources."xmlchars-2.2.0"
       sources."y18n-5.0.8"
@@ -116104,7 +118450,7 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.8"
       (sources."@babel/highlight-7.14.5" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -116120,7 +118466,7 @@ in
       sources."@devicefarmer/adbkit-2.11.3"
       sources."@devicefarmer/adbkit-logcat-1.1.0"
       sources."@devicefarmer/adbkit-monkey-1.0.1"
-      (sources."@eslint/eslintrc-0.4.2" // {
+      (sources."@eslint/eslintrc-0.4.3" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."ms-2.1.2"
@@ -116129,11 +118475,11 @@ in
       sources."@mdn/browser-compat-data-3.3.7"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/minimatch-3.0.4"
-      sources."@types/node-15.14.0"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/node-16.4.0"
       sources."@types/yauzl-2.9.1"
       sources."acorn-7.4.1"
-      sources."acorn-jsx-5.3.1"
+      sources."acorn-jsx-5.3.2"
       (sources."addons-linter-3.8.0" // {
         dependencies = [
           sources."yargs-17.0.1"
@@ -116307,7 +118653,7 @@ in
       sources."fast-json-stable-stringify-2.1.0"
       sources."fast-levenshtein-2.0.6"
       sources."fast-redact-3.0.1"
-      sources."fast-safe-stringify-2.0.7"
+      sources."fast-safe-stringify-2.0.8"
       sources."fd-slicer-1.1.0"
       sources."file-entry-cache-6.0.1"
       (sources."firefox-profile-4.2.0" // {
@@ -116318,7 +118664,7 @@ in
       sources."first-chunk-stream-3.0.0"
       sources."flat-cache-3.0.4"
       sources."flatstr-1.0.12"
-      sources."flatted-3.2.0"
+      sources."flatted-3.2.1"
       sources."fluent-syntax-0.13.0"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
@@ -116345,7 +118691,7 @@ in
       sources."glob-parent-5.1.2"
       sources."glob-to-regexp-0.4.1"
       sources."global-dirs-3.0.0"
-      sources."globals-13.9.0"
+      sources."globals-13.10.0"
       (sources."got-9.6.0" // {
         dependencies = [
           sources."get-stream-4.1.0"
@@ -116430,7 +118776,7 @@ in
       sources."lcid-3.1.1"
       sources."levn-0.4.1"
       sources."lie-3.3.0"
-      sources."lighthouse-logger-1.2.0"
+      sources."lighthouse-logger-1.3.0"
       sources."lines-and-columns-1.1.6"
       sources."lodash.clonedeep-4.5.0"
       sources."lodash.includes-4.3.0"
@@ -116608,7 +118954,7 @@ in
       sources."supports-color-7.2.0"
       (sources."table-6.7.1" // {
         dependencies = [
-          sources."ajv-8.6.0"
+          sources."ajv-8.6.2"
           sources."ansi-regex-5.0.0"
           sources."json-schema-traverse-1.0.0"
           sources."strip-ansi-6.0.0"
@@ -116683,32 +119029,32 @@ in
   webpack = nodeEnv.buildNodePackage {
     name = "webpack";
     packageName = "webpack";
-    version = "5.42.0";
+    version = "5.45.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/webpack/-/webpack-5.42.0.tgz";
-      sha512 = "Ln8HL0F831t1x/yPB/qZEUVmZM4w9BnHZ1EQD/sAUHv8m22hthoPniWTXEzFMh/Sf84mhrahut22TX5KxWGuyQ==";
+      url = "https://registry.npmjs.org/webpack/-/webpack-5.45.1.tgz";
+      sha512 = "68VT2ZgG9EHs6h6UxfV2SEYewA9BA3SOLSnC2NEbJJiEwbAiueDL033R1xX0jzjmXvMh0oSeKnKgbO2bDXIEyQ==";
     };
     dependencies = [
-      sources."@types/eslint-7.2.13"
-      sources."@types/eslint-scope-3.7.0"
-      sources."@types/estree-0.0.48"
-      sources."@types/json-schema-7.0.7"
-      sources."@types/node-15.14.0"
-      sources."@webassemblyjs/ast-1.11.0"
-      sources."@webassemblyjs/floating-point-hex-parser-1.11.0"
-      sources."@webassemblyjs/helper-api-error-1.11.0"
-      sources."@webassemblyjs/helper-buffer-1.11.0"
-      sources."@webassemblyjs/helper-numbers-1.11.0"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.11.0"
-      sources."@webassemblyjs/helper-wasm-section-1.11.0"
-      sources."@webassemblyjs/ieee754-1.11.0"
-      sources."@webassemblyjs/leb128-1.11.0"
-      sources."@webassemblyjs/utf8-1.11.0"
-      sources."@webassemblyjs/wasm-edit-1.11.0"
-      sources."@webassemblyjs/wasm-gen-1.11.0"
-      sources."@webassemblyjs/wasm-opt-1.11.0"
-      sources."@webassemblyjs/wasm-parser-1.11.0"
-      sources."@webassemblyjs/wast-printer-1.11.0"
+      sources."@types/eslint-7.28.0"
+      sources."@types/eslint-scope-3.7.1"
+      sources."@types/estree-0.0.50"
+      sources."@types/json-schema-7.0.8"
+      sources."@types/node-16.4.0"
+      sources."@webassemblyjs/ast-1.11.1"
+      sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
+      sources."@webassemblyjs/helper-api-error-1.11.1"
+      sources."@webassemblyjs/helper-buffer-1.11.1"
+      sources."@webassemblyjs/helper-numbers-1.11.1"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.11.1"
+      sources."@webassemblyjs/helper-wasm-section-1.11.1"
+      sources."@webassemblyjs/ieee754-1.11.1"
+      sources."@webassemblyjs/leb128-1.11.1"
+      sources."@webassemblyjs/utf8-1.11.1"
+      sources."@webassemblyjs/wasm-edit-1.11.1"
+      sources."@webassemblyjs/wasm-gen-1.11.1"
+      sources."@webassemblyjs/wasm-opt-1.11.1"
+      sources."@webassemblyjs/wasm-parser-1.11.1"
+      sources."@webassemblyjs/wast-printer-1.11.1"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.2"
       sources."acorn-8.4.1"
@@ -116716,13 +119062,13 @@ in
       sources."ajv-keywords-3.5.2"
       sources."browserslist-4.16.6"
       sources."buffer-from-1.1.1"
-      sources."caniuse-lite-1.0.30001241"
+      sources."caniuse-lite-1.0.30001246"
       sources."chrome-trace-event-1.0.3"
       sources."colorette-1.2.2"
       sources."commander-2.20.3"
-      sources."electron-to-chromium-1.3.765"
+      sources."electron-to-chromium-1.3.782"
       sources."enhanced-resolve-5.8.2"
-      sources."es-module-lexer-0.6.0"
+      sources."es-module-lexer-0.7.1"
       sources."escalade-3.1.1"
       sources."eslint-scope-5.1.1"
       (sources."esrecurse-4.3.0" // {
@@ -116750,7 +119096,7 @@ in
       sources."punycode-2.1.1"
       sources."randombytes-2.1.0"
       sources."safe-buffer-5.2.1"
-      sources."schema-utils-3.0.0"
+      sources."schema-utils-3.1.1"
       sources."serialize-javascript-6.0.0"
       sources."source-list-map-2.0.1"
       sources."source-map-0.6.1"
@@ -116765,7 +119111,7 @@ in
       sources."terser-webpack-plugin-5.1.4"
       sources."uri-js-4.4.1"
       sources."watchpack-2.2.0"
-      sources."webpack-sources-2.3.0"
+      sources."webpack-sources-2.3.1"
       sources."yocto-queue-0.1.0"
     ];
     buildInputs = globalBuildInputs;
@@ -116805,7 +119151,7 @@ in
       sources."human-signals-2.1.0"
       sources."import-local-3.0.2"
       sources."interpret-2.2.0"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-plain-object-2.0.4"
       sources."is-stream-2.0.0"
       sources."isexe-2.0.0"
@@ -116823,7 +119169,7 @@ in
       sources."path-key-3.1.1"
       sources."path-parse-1.0.7"
       sources."pkg-dir-4.2.0"
-      sources."rechoir-0.7.0"
+      sources."rechoir-0.7.1"
       sources."resolve-1.20.0"
       sources."resolve-cwd-3.0.0"
       sources."resolve-from-5.0.0"
@@ -116856,9 +119202,9 @@ in
       sha512 = "A80BkuHRQfCiNtGBS1EMf2ChTUs0x+B3wGDFmOeT4rmJOHhHTCH2naNxIHhmkr0/UillP4U3yeIyv1pNp+QDLQ==";
     };
     dependencies = [
-      sources."@types/glob-7.1.3"
-      sources."@types/minimatch-3.0.4"
-      sources."@types/node-15.14.0"
+      sources."@types/glob-7.1.4"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/node-16.4.0"
       sources."accepts-1.3.7"
       sources."ajv-6.12.6"
       sources."ajv-errors-1.0.1"
@@ -117439,23 +119785,23 @@ in
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
-      sources."@types/json-schema-7.0.7"
+      sources."@nodelib/fs.walk-1.2.8"
+      sources."@types/json-schema-7.0.8"
       sources."ajv-6.12.6"
       sources."ajv-keywords-3.5.2"
       sources."array-union-2.1.0"
       sources."braces-3.0.2"
       sources."dir-glob-3.0.1"
       sources."fast-deep-equal-3.1.3"
-      (sources."fast-glob-3.2.6" // {
+      (sources."fast-glob-3.2.7" // {
         dependencies = [
           sources."glob-parent-5.1.2"
         ];
       })
       sources."fast-json-stable-stringify-2.1.0"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."fill-range-7.0.1"
-      sources."glob-parent-6.0.0"
+      sources."glob-parent-6.0.1"
       sources."globby-11.0.4"
       sources."ignore-5.1.8"
       sources."is-extglob-2.1.1"
@@ -117474,7 +119820,7 @@ in
       sources."reusify-1.0.4"
       sources."run-parallel-1.2.0"
       sources."safe-buffer-5.2.1"
-      sources."schema-utils-3.0.0"
+      sources."schema-utils-3.1.1"
       sources."serialize-javascript-6.0.0"
       sources."slash-3.0.0"
       sources."to-regex-range-5.0.1"
@@ -117494,12 +119840,13 @@ in
   webtorrent-cli = nodeEnv.buildNodePackage {
     name = "webtorrent-cli";
     packageName = "webtorrent-cli";
-    version = "3.3.0";
+    version = "3.5.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/webtorrent-cli/-/webtorrent-cli-3.3.0.tgz";
-      sha512 = "E0gb1fXb8xNScgewQmvAmNLrnEto6MOaKlfzITVzR+bbU80LeV/YdrLw536ffcwiUv0arKQyfR/WIweBFrKWbg==";
+      url = "https://registry.npmjs.org/webtorrent-cli/-/webtorrent-cli-3.5.3.tgz";
+      sha512 = "Av+6PnflFJueTj19z6Pv/ai9KzOV8r7nClBiQCBbO55eqNL6pNBV47N/KwxDIPx8OeATTFEA/joCohi5AD/8TQ==";
     };
     dependencies = [
+      sources."@leichtgewicht/ip-codec-2.0.3"
       sources."@protobufjs/aspromise-1.1.2"
       sources."@protobufjs/base64-1.1.2"
       sources."@protobufjs/codegen-2.0.4"
@@ -117511,16 +119858,18 @@ in
       sources."@protobufjs/pool-1.1.0"
       sources."@protobufjs/utf8-1.1.0"
       sources."@types/long-4.0.1"
-      sources."@types/node-15.14.0"
+      sources."@types/node-16.4.0"
       sources."addr-to-ip-port-1.5.1"
       sources."airplay-js-0.3.0"
+      sources."ansi-regex-5.0.0"
+      sources."ansi-styles-4.3.0"
       sources."balanced-match-1.0.2"
       sources."base64-js-1.5.1"
       sources."bencode-2.0.1"
       sources."bep53-range-1.1.0"
       sources."binary-search-1.3.6"
       sources."bitfield-4.0.0"
-      (sources."bittorrent-dht-10.0.0" // {
+      (sources."bittorrent-dht-10.0.1" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."ms-2.1.2"
@@ -117533,13 +119882,13 @@ in
         ];
       })
       sources."bittorrent-peerid-1.3.3"
-      (sources."bittorrent-protocol-3.4.1" // {
+      (sources."bittorrent-protocol-3.4.2" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."ms-2.1.2"
         ];
       })
-      (sources."bittorrent-tracker-9.17.2" // {
+      (sources."bittorrent-tracker-9.17.3" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."decompress-response-6.0.0"
@@ -117559,7 +119908,6 @@ in
       sources."buffer-fill-1.0.0"
       sources."buffer-from-1.1.1"
       sources."buffer-indexof-1.1.1"
-      sources."buffer-xor-2.0.2"
       sources."bufferutil-4.0.3"
       sources."cache-chunk-store-3.2.2"
       (sources."castv2-0.1.10" // {
@@ -117569,6 +119917,7 @@ in
         ];
       })
       sources."castv2-client-1.2.0"
+      sources."chalk-4.1.1"
       sources."charset-1.0.1"
       sources."chrome-dgram-3.0.6"
       sources."chrome-dns-1.0.1"
@@ -117579,7 +119928,9 @@ in
         ];
       })
       sources."chunk-store-stream-4.3.0"
-      sources."clivas-0.2.0"
+      sources."cliui-7.0.4"
+      sources."color-convert-2.0.1"
+      sources."color-name-1.1.4"
       sources."common-tags-1.8.0"
       sources."compact2string-1.4.1"
       sources."concat-map-0.0.1"
@@ -117601,15 +119952,16 @@ in
           sources."mime-1.6.0"
         ];
       })
-      sources."dns-packet-5.2.4"
+      sources."dns-packet-5.3.0"
       sources."dns-txt-2.0.2"
       sources."ecstatic-4.1.4"
       sources."ee-first-1.1.1"
       sources."elementtree-0.1.7"
+      sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."err-code-3.0.1"
+      sources."escalade-3.1.1"
       sources."escape-html-1.0.3"
-      sources."executable-4.1.1"
       sources."filestream-5.0.0"
       sources."freelist-1.0.3"
       (sources."fs-chunk-store-2.0.3" // {
@@ -117619,8 +119971,10 @@ in
       })
       sources."fs.realpath-1.0.0"
       sources."get-browser-rtc-1.1.0"
+      sources."get-caller-file-2.0.5"
       sources."get-stdin-8.0.0"
       sources."glob-7.1.7"
+      sources."has-flag-4.0.0"
       sources."he-1.2.0"
       sources."http-node-git://github.com/feross/http-node#webtorrent"
       sources."http-parser-js-0.4.13"
@@ -117634,6 +119988,7 @@ in
       sources."is-ascii-1.0.0"
       sources."is-docker-2.2.1"
       sources."is-file-1.0.0"
+      sources."is-fullwidth-code-point-3.0.0"
       sources."is-typedarray-1.0.0"
       sources."is-wsl-2.2.0"
       sources."isarray-1.0.0"
@@ -117697,7 +120052,6 @@ in
       })
       sources."path-is-absolute-1.0.1"
       sources."piece-length-2.0.1"
-      sources."pify-2.3.0"
       (sources."plist-with-patches-0.5.1" // {
         dependencies = [
           sources."xmlbuilder-0.4.3"
@@ -117724,6 +120078,7 @@ in
           sources."ms-2.1.2"
         ];
       })
+      sources."require-directory-2.1.1"
       sources."rimraf-3.0.2"
       sources."run-parallel-1.2.0"
       sources."run-parallel-limit-1.1.0"
@@ -117752,12 +120107,15 @@ in
       sources."stream-to-blob-2.0.1"
       sources."stream-to-blob-url-3.0.2"
       sources."stream-with-known-length-to-buffer-1.0.4"
+      sources."string-width-4.2.2"
       (sources."string2compact-1.3.0" // {
         dependencies = [
           sources."ipaddr.js-1.9.1"
         ];
       })
       sources."string_decoder-1.3.0"
+      sources."strip-ansi-6.0.0"
+      sources."supports-color-7.2.0"
       sources."thirty-two-1.0.2"
       sources."through-2.3.8"
       sources."thunky-0.1.0"
@@ -117790,7 +120148,7 @@ in
       sources."utp-native-2.5.3"
       sources."videostream-3.2.2"
       sources."vlc-command-1.2.0"
-      (sources."webtorrent-1.1.0" // {
+      (sources."webtorrent-1.2.5" // {
         dependencies = [
           sources."debug-4.3.2"
           sources."decompress-response-6.0.0"
@@ -117800,11 +120158,15 @@ in
         ];
       })
       sources."winreg-1.2.4"
+      sources."wrap-ansi-7.0.0"
       sources."wrappy-1.0.2"
-      sources."ws-7.5.1"
+      sources."ws-7.5.3"
       sources."xml2js-0.4.23"
       sources."xmlbuilder-11.0.1"
       sources."xmldom-0.1.31"
+      sources."y18n-5.0.8"
+      sources."yargs-17.0.1"
+      sources."yargs-parser-20.2.9"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -117864,30 +120226,25 @@ in
   yaml-language-server = nodeEnv.buildNodePackage {
     name = "yaml-language-server";
     packageName = "yaml-language-server";
-    version = "0.20.0";
+    version = "0.21.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/yaml-language-server/-/yaml-language-server-0.20.0.tgz";
-      sha512 = "JV5jqB/1p2g4WCW1Gi6Kd3RQQSepdvTQBIDLSSoVzi7Q7kH+6tFkFJlMCBs0qmxLPkaU062d3IxdTWDK/MvvEA==";
+      url = "https://registry.npmjs.org/yaml-language-server/-/yaml-language-server-0.21.1.tgz";
+      sha512 = "13Ann9t+BdAmBKsPlSWoYCISUIo+UFcAVf+YQg9wc7HdLZ0FlIhL5Mhn9+l9GMeO2PGRYEiCEAMbNiGn36Y84g==";
     };
     dependencies = [
       sources."agent-base-4.3.0"
       sources."argparse-2.0.1"
-      sources."balanced-match-1.0.2"
-      sources."brace-expansion-1.1.11"
-      sources."concat-map-0.0.1"
       sources."debug-3.1.0"
       sources."es6-promise-4.2.8"
       sources."es6-promisify-5.0.0"
       sources."http-proxy-agent-2.1.0"
       sources."https-proxy-agent-2.2.4"
       sources."js-yaml-4.1.0"
-      sources."jsonc-parser-2.3.1"
-      sources."minimatch-3.0.4"
+      sources."jsonc-parser-3.0.0"
       sources."ms-2.0.0"
       sources."request-light-0.2.5"
-      (sources."vscode-json-languageservice-4.1.5" // {
+      (sources."vscode-json-languageservice-4.1.6" // {
         dependencies = [
-          sources."jsonc-parser-3.0.0"
           sources."vscode-nls-5.0.0"
           sources."vscode-uri-3.0.2"
         ];
@@ -117937,12 +120294,13 @@ in
       sha512 = "dbHkO8dp4/KDsU5V7akSWVdWB+yyfadR0q3vGxRKXxg1umiYlFUrPuiu66Iy4IpRRr2Qrqx495kInkZJIJtqmA==";
     };
     dependencies = [
-      sources."@babel/runtime-7.14.6"
+      sources."@babel/runtime-7.14.8"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.7"
-      (sources."@npmcli/arborist-2.6.4" // {
+      sources."@nodelib/fs.walk-1.2.8"
+      (sources."@npmcli/arborist-2.7.1" // {
         dependencies = [
+          sources."mkdirp-1.0.4"
           sources."semver-7.3.5"
         ];
       })
@@ -117973,9 +120331,9 @@ in
       sources."@sindresorhus/is-0.7.0"
       sources."@tootallnate/once-1.1.2"
       sources."@types/expect-1.20.4"
-      sources."@types/minimatch-3.0.4"
-      sources."@types/node-15.14.0"
-      sources."@types/vinyl-2.0.4"
+      sources."@types/minimatch-3.0.5"
+      sources."@types/node-15.14.2"
+      sources."@types/vinyl-2.0.5"
       sources."abbrev-1.1.1"
       (sources."agent-base-6.0.2" // {
         dependencies = [
@@ -118153,9 +120511,9 @@ in
       sources."external-editor-3.1.0"
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-3.1.3"
-      sources."fast-glob-3.2.6"
+      sources."fast-glob-3.2.7"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."fastq-1.11.0"
+      sources."fastq-1.11.1"
       sources."figures-2.0.0"
       sources."filelist-1.0.2"
       sources."fill-range-7.0.1"
@@ -118247,7 +120605,7 @@ in
       sources."ip-regex-2.1.0"
       sources."is-arrayish-0.2.1"
       sources."is-ci-1.2.1"
-      sources."is-core-module-2.4.0"
+      sources."is-core-module-2.5.0"
       sources."is-docker-1.1.0"
       sources."is-extglob-2.1.1"
       sources."is-finite-1.1.0"
@@ -118330,7 +120688,7 @@ in
       sources."lru-cache-6.0.0"
       sources."macos-release-2.5.0"
       sources."make-dir-1.3.0"
-      (sources."make-fetch-happen-9.0.3" // {
+      (sources."make-fetch-happen-9.0.4" // {
         dependencies = [
           sources."http-cache-semantics-4.1.0"
         ];
@@ -118363,7 +120721,7 @@ in
       sources."minimist-1.2.5"
       sources."minipass-3.1.3"
       sources."minipass-collect-1.0.2"
-      sources."minipass-fetch-1.3.3"
+      sources."minipass-fetch-1.3.4"
       sources."minipass-flush-1.0.5"
       sources."minipass-json-stream-1.0.1"
       sources."minipass-pipeline-1.2.4"
@@ -118478,7 +120836,7 @@ in
       sources."p-timeout-2.0.1"
       sources."p-try-1.0.0"
       sources."package-json-5.0.0"
-      (sources."pacote-11.3.4" // {
+      (sources."pacote-11.3.5" // {
         dependencies = [
           sources."mkdirp-1.0.4"
         ];
@@ -118808,7 +121166,7 @@ in
           })
           sources."get-stream-6.0.1"
           sources."has-flag-4.0.0"
-          sources."inquirer-8.1.1"
+          sources."inquirer-8.1.2"
           sources."is-fullwidth-code-point-3.0.0"
           sources."is-stream-2.0.0"
           sources."locate-path-6.0.0"
@@ -118823,6 +121181,7 @@ in
           sources."path-exists-4.0.0"
           sources."path-key-3.1.1"
           sources."restore-cursor-3.1.0"
+          sources."rxjs-7.2.0"
           sources."semver-7.3.5"
           sources."shebang-command-2.0.0"
           sources."shebang-regex-3.0.0"
@@ -118833,6 +121192,7 @@ in
             ];
           })
           sources."supports-color-7.2.0"
+          sources."tslib-2.1.0"
           sources."type-fest-0.21.3"
           sources."which-2.0.2"
         ];
@@ -118864,14 +121224,16 @@ in
   zx = nodeEnv.buildNodePackage {
     name = "zx";
     packageName = "zx";
-    version = "1.14.2";
+    version = "2.0.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/zx/-/zx-1.14.2.tgz";
-      sha512 = "omgqRVve+5dqbFrogFSjJXLUCUr4xHF2Gan+Njn/z4fumhIj3tMTFEA9iV+HgiobZ5Mgl5N96z4S4fwhaas4Pw==";
+      url = "https://registry.npmjs.org/zx/-/zx-2.0.0.tgz";
+      sha512 = "OF8YvqseMMmtDaASqO+8+0/tJZvykLK0hX9YBAaRO9l7Hc+YjNKjpgJTjrmncgEURoyDr9Ln4r/qBtEuDNZstg==";
     };
     dependencies = [
-      sources."@types/node-15.14.0"
-      sources."@types/node-fetch-2.5.10"
+      sources."@types/fs-extra-9.0.12"
+      sources."@types/minimist-1.2.2"
+      sources."@types/node-16.4.0"
+      sources."@types/node-fetch-2.5.11"
       sources."ansi-styles-4.3.0"
       sources."asynckit-0.4.0"
       sources."chalk-4.1.1"
@@ -118880,13 +121242,17 @@ in
       sources."combined-stream-1.0.8"
       sources."delayed-stream-1.0.0"
       sources."form-data-3.0.1"
+      sources."fs-extra-10.0.0"
+      sources."graceful-fs-4.2.6"
       sources."has-flag-4.0.0"
       sources."isexe-2.0.0"
+      sources."jsonfile-6.1.0"
       sources."mime-db-1.48.0"
       sources."mime-types-2.1.31"
+      sources."minimist-1.2.5"
       sources."node-fetch-2.6.1"
-      sources."shq-1.0.2"
       sources."supports-color-7.2.0"
+      sources."universalify-2.0.0"
       sources."which-2.0.2"
     ];
     buildInputs = globalBuildInputs;
diff --git a/nixpkgs/pkgs/development/node-packages/package-tests/autoprefixer.nix b/nixpkgs/pkgs/development/node-packages/package-tests/autoprefixer.nix
new file mode 100644
index 000000000000..c889795a2ef5
--- /dev/null
+++ b/nixpkgs/pkgs/development/node-packages/package-tests/autoprefixer.nix
@@ -0,0 +1,25 @@
+{ runCommand, autoprefixer }:
+
+let
+  inherit (autoprefixer) packageName version;
+in
+
+runCommand "${packageName}-tests" { meta.timeout = 60; }
+  ''
+    # get version of installed program and compare with package version
+    claimed_version="$(${autoprefixer}/bin/autoprefixer --version | awk '{print $2}')"
+    if [[ "$claimed_version" != "${version}" ]]; then
+      echo "Error: program version does not match package version ($claimed_version != ${version})"
+      exit 1
+    fi
+
+    # run dummy commands
+    ${autoprefixer}/bin/autoprefixer --help > /dev/null
+    ${autoprefixer}/bin/autoprefixer --info > /dev/null
+
+    # Testing the actual functionality is done in the test for postcss
+    # because autoprefixer is a postcss plugin
+
+    # needed for Nix to register the command as successful
+    touch $out
+  ''
diff --git a/nixpkgs/pkgs/development/node-packages/package-tests/postcss-cli.nix b/nixpkgs/pkgs/development/node-packages/package-tests/postcss-cli.nix
new file mode 100644
index 000000000000..521509e7f43b
--- /dev/null
+++ b/nixpkgs/pkgs/development/node-packages/package-tests/postcss-cli.nix
@@ -0,0 +1,45 @@
+{ runCommand, postcss-cli }:
+
+let
+  inherit (postcss-cli) packageName version;
+in
+
+runCommand "${packageName}-tests" { meta.timeout = 60; }
+  ''
+    # get version of installed program and compare with package version
+    claimed_version="$(${postcss-cli}/bin/postcss --version)"
+    if [[ "$claimed_version" != "${version}" ]]; then
+      echo "Error: program version does not match package version ($claimed_version != ${version})"
+      exit 1
+    fi
+
+    # run basic help command
+    ${postcss-cli}/bin/postcss --help > /dev/null
+
+    # basic autoprefixer test
+    config_dir="$(mktemp -d)"
+    clean_up() {
+      rm -rf "$config_dir"
+    }
+    trap clean_up EXIT
+    echo "
+      module.exports = {
+        plugins: {
+          'autoprefixer': { overrideBrowserslist: 'chrome 40' },
+        },
+      }
+    " > "$config_dir/postcss.config.js"
+    input='a{ user-select: none; }'
+    expected_output='a{ -webkit-user-select: none; user-select: none; }'
+    actual_output="$(echo $input | ${postcss-cli}/bin/postcss --no-map --config $config_dir)"
+    if [[ "$actual_output" != "$expected_output" ]]; then
+      echo "Error: autoprefixer did not output the correct CSS:"
+      echo "$actual_output"
+      echo "!="
+      echo "$expected_output"
+      exit 1
+    fi
+
+    # needed for Nix to register the command as successful
+    touch $out
+  ''
diff --git a/nixpkgs/pkgs/development/ocaml-modules/alcotest/default.nix b/nixpkgs/pkgs/development/ocaml-modules/alcotest/default.nix
index abef3ef7ef46..bb1b18e3ec19 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/alcotest/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/alcotest/default.nix
@@ -4,13 +4,13 @@
 
 buildDunePackage rec {
   pname = "alcotest";
-  version = "1.3.0";
+  version = "1.4.0";
 
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/mirage/alcotest/releases/download/${version}/alcotest-mirage-${version}.tbz";
-    sha256 = "sha256-efnevbyolTdNb91zr4pHDcvgaLQQSD01wEu2zMM+iaw=";
+    sha256 = "sha256:1h9yp44snb6sgm5g1x3wg4gwjscic7i56jf0j8jr07355pxwrami";
   };
 
   propagatedBuildInputs = [ astring cmdliner fmt uuidm re stdlib-shims uutf ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/bls12-381/default.nix b/nixpkgs/pkgs/development/ocaml-modules/bls12-381/default.nix
new file mode 100644
index 000000000000..08bb426d8abc
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/bls12-381/default.nix
@@ -0,0 +1,38 @@
+{ lib, fetchFromGitLab, buildDunePackage, ff, zarith, ctypes, tezos-rust-libs, alcotest }:
+
+buildDunePackage rec {
+  pname = "bls12-381";
+  version = "0.3.15";
+
+  src = fetchFromGitLab {
+    owner = "dannywillems";
+    repo = "ocaml-bls12-381";
+    rev = version;
+    sha256 = "1s8n657fsl2gs01p7v2ffpcfzymavifhhpriyx1gq5qh4zvvw4vr";
+  };
+  useDune2 = true;
+
+  minimalOCamlVersion = "4.08";
+  propagatedBuildInputs = [
+    ff
+    zarith
+    ctypes
+    tezos-rust-libs
+  ];
+
+  checkInputs = [
+    alcotest
+  ];
+
+  # This is a hack to work around the hack used in the dune files
+  OPAM_SWITCH_PREFIX = "${tezos-rust-libs}";
+
+  doCheck = true;
+
+  meta = {
+    homepage = "https://gitlab.com/dannywillems/ocaml-bls12-381";
+    description = "OCaml binding for bls12-381 from librustzcash";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.ulrikstrid ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/data-encoding/default.nix b/nixpkgs/pkgs/development/ocaml-modules/data-encoding/default.nix
new file mode 100644
index 000000000000..2e4e0518a522
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/data-encoding/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, fetchFromGitLab
+, buildDunePackage
+, ezjsonm
+, zarith
+, hex
+, json-data-encoding
+, json-data-encoding-bson
+, alcotest
+, crowbar
+}:
+
+buildDunePackage {
+  pname = "data-encoding";
+  version = "0.2.0";
+
+  src = fetchFromGitLab {
+    owner = "nomadic-labs";
+    repo = "data-encoding";
+    rev = "0.2";
+    sha256 = "0d9c2ix2imqk4r0jfhnwak9laarlbsq9kmswvbnjzdm2g0hwin1d";
+  };
+  useDune2 = true;
+
+  propagatedBuildInputs = [
+    ezjsonm
+    zarith
+    hex
+    json-data-encoding
+    json-data-encoding-bson
+  ];
+
+  checkInputs = [
+    alcotest
+    crowbar
+  ];
+
+  doCheck = true;
+
+  meta = {
+    homepage = "https://gitlab.com/nomadic-labs/data-encoding";
+    description = "Library of JSON and binary encoding combinators";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.ulrikstrid ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ff/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ff/default.nix
new file mode 100644
index 000000000000..2a51b377e883
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/ff/default.nix
@@ -0,0 +1,32 @@
+{ lib, fetchFromGitLab, buildDunePackage, zarith, alcotest }:
+
+buildDunePackage rec {
+  pname = "ff";
+  version = "0.4.0";
+
+  src = fetchFromGitLab {
+    owner = "dannywillems";
+    repo = "ocaml-ff";
+    rev = version;
+    sha256 = "1ik29srzkd0pl48p1si9p1c4f8vmx5rgm02yv2arj3vg0a1nfhdv";
+  };
+
+  useDune2 = true;
+
+  propagatedBuildInputs = [
+    zarith
+  ];
+
+  checkInputs = [
+    alcotest
+  ];
+
+  doCheck = true;
+
+  meta = {
+    homepage = "https://gitlab.com/dannywillems/ocaml-ff";
+    description = "OCaml implementation of Finite Field operations";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.ulrikstrid ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/fiat-p256/default.nix b/nixpkgs/pkgs/development/ocaml-modules/fiat-p256/default.nix
index 3ebe98ab775d..c979fe682d3e 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/fiat-p256/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/fiat-p256/default.nix
@@ -12,6 +12,12 @@ buildDunePackage rec {
     sha256 = "0086h9qkvnqfm8acrxqbki54z619nj73x7f0d01v5vg2naznx7w9";
   };
 
+  # Make tests compatible with alcotest 1.4.0
+  postPatch = ''
+    substituteInPlace test/wycheproof/test.ml --replace \
+      'Printf.ksprintf Alcotest.fail' 'Printf.ksprintf (fun s -> Alcotest.fail s)'
+  '';
+
   buildInputs = [ dune-configurator ];
   propagatedBuildInputs = [ bigarray-compat cstruct eqaf hex ];
   checkInputs = [ alcotest asn1-combinators benchmark
diff --git a/nixpkgs/pkgs/development/ocaml-modules/hacl-star/default.nix b/nixpkgs/pkgs/development/ocaml-modules/hacl-star/default.nix
new file mode 100644
index 000000000000..8a29439c7a59
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/hacl-star/default.nix
@@ -0,0 +1,18 @@
+{ lib, buildDunePackage, hacl-star-raw, zarith, cppo }:
+
+buildDunePackage {
+  pname = "hacl-star";
+
+  inherit (hacl-star-raw) version src meta doCheck minimalOCamlVersion;
+
+  useDune2 = true;
+
+  propagatedBuildInputs = [
+    hacl-star-raw
+    zarith
+  ];
+
+  buildInputs = [
+    cppo
+  ];
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/hacl-star/raw.nix b/nixpkgs/pkgs/development/ocaml-modules/hacl-star/raw.nix
new file mode 100644
index 000000000000..cd1217b97101
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/hacl-star/raw.nix
@@ -0,0 +1,51 @@
+{ lib, which, stdenv, fetchzip, ocaml, findlib, hacl-star, ctypes, cppo }:
+
+stdenv.mkDerivation rec {
+  pname = "ocaml${ocaml.version}-hacl-star-raw";
+  version = "0.3.2";
+
+  src = fetchzip {
+    url = "https://github.com/project-everest/hacl-star/releases/download/ocaml-v${version}/hacl-star.${version}.tar.gz";
+    sha256 = "1wp27vf0g43ggs7cv85hpa62jjvzkwzzg5rfznbwac6j6yr17zc7";
+    stripRoot = false;
+  };
+
+  sourceRoot = "./source/raw";
+
+  minimalOCamlVersion = "4.05";
+
+  postPatch = ''
+    patchShebangs ./
+  '';
+
+  preInstall = ''
+    mkdir -p $OCAMLFIND_DESTDIR/stublibs
+  '';
+
+  installTargets = "install-hacl-star-raw";
+
+  dontAddPrefix = true;
+
+  buildInputs = [
+    which
+    ocaml
+    findlib
+  ];
+
+  propagatedBuildInputs = [
+    ctypes
+  ];
+
+  checkInputs = [
+    cppo
+  ];
+
+  doCheck = true;
+
+  meta = {
+    description = "Auto-generated low-level OCaml bindings for EverCrypt/HACL*";
+    license = lib.licenses.asl20;
+    maintainers = [ lib.maintainers.ulrikstrid ];
+    platforms = ocaml.meta.platforms;
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/http/default.nix b/nixpkgs/pkgs/development/ocaml-modules/http/default.nix
deleted file mode 100644
index f762e9c7b238..000000000000
--- a/nixpkgs/pkgs/development/ocaml-modules/http/default.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{lib, stdenv, fetchurl, ocaml_pcre, ocamlnet, ocaml, findlib, camlp4}:
-
-if lib.versionAtLeast ocaml.version "4.06"
-then throw "ocaml-http is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation {
-  name = "ocaml-http-0.1.5";
-
-  src = fetchurl {
-    url = "https://forge.ocamlcore.org/frs/download.php/545/ocaml-http-0.1.5.tar.gz";
-    sha256 = "09q12b0j01iymflssxigsqggbsp8dqh9pfvkm76dv860544mygws";
-  };
-
-  buildInputs = [ocaml findlib camlp4];
-  propagatedBuildInputs = [ocaml_pcre ocamlnet];
-
-  createFindlibDestdir = true;
-
-  prePatch = ''
-    BASH=$(type -tp bash)
-    echo $BASH
-    substituteInPlace Makefile --replace "SHELL=/bin/bash" "SHELL=$BASH"
-  '';
-
-  dontConfigure = true;	# Skip configure phase
-
-  buildPhase = ''
-    make all opt
-  '';
-
-  meta = with lib; {
-    homepage = "http://ocaml-http.forge.ocamlcore.org/";
-    platforms = ocaml.meta.platforms or [];
-    description = "Do it yourself (OCaml) HTTP daemon";
-    license = licenses.lgpl2;
-    maintainers = with maintainers; [ roconnor vbgl ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/index/default.nix b/nixpkgs/pkgs/development/ocaml-modules/index/default.nix
index 61ecb65510cc..8e503f5ddd25 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/index/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/index/default.nix
@@ -1,16 +1,16 @@
 { lib, fetchurl, buildDunePackage
 , repr, ppx_repr, fmt, logs, mtime, stdlib-shims
-, cmdliner, progress, semaphore-compat
+, cmdliner, progress, semaphore-compat, optint
 , alcotest, crowbar, re
 }:
 
 buildDunePackage rec {
   pname = "index";
-  version = "1.3.1";
+  version = "1.4.0";
 
   src = fetchurl {
     url = "https://github.com/mirage/index/releases/download/${version}/index-${version}.tbz";
-    sha256 = "sha256-ycZi/TFLoGRloSpjYqH5FCHWP3eyiTCIDLESEn5inuI=";
+    sha256 = "13xd858c50fs651p1y8x70323ff0gzbf6zgc0a25f6xh3rsmkn4c";
   };
 
   minimumOCamlVersion = "4.08";
@@ -28,6 +28,7 @@ buildDunePackage rec {
     progress
     repr
     semaphore-compat
+    optint
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/ocaml-modules/irmin/pack.nix b/nixpkgs/pkgs/development/ocaml-modules/irmin/pack.nix
index 16ef675c1f8c..5955dda8ed99 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/irmin/pack.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/irmin/pack.nix
@@ -1,5 +1,5 @@
 { lib, buildDunePackage
-, alcotest-lwt, index, irmin, irmin-layers, irmin-test, ocaml_lwt, fpath
+, alcotest-lwt, index, irmin, irmin-layers, irmin-test, ocaml_lwt, fpath, optint
 }:
 
 buildDunePackage rec {
@@ -12,7 +12,7 @@ buildDunePackage rec {
   useDune2 = true;
 
   buildInputs = [ fpath ];
-  propagatedBuildInputs = [ index irmin irmin-layers ocaml_lwt ];
+  propagatedBuildInputs = [ index irmin irmin-layers ocaml_lwt optint ];
 
   checkInputs = [ alcotest-lwt irmin-test ];
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/irmin/ppx.nix b/nixpkgs/pkgs/development/ocaml-modules/irmin/ppx.nix
index c7eed70d9d99..673238843ff3 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/irmin/ppx.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/irmin/ppx.nix
@@ -2,11 +2,11 @@
 
 buildDunePackage rec {
   pname = "ppx_irmin";
-  version = "2.6.0";
+  version = "2.7.1";
 
   src = fetchurl {
     url = "https://github.com/mirage/irmin/releases/download/${version}/irmin-${version}.tbz";
-    sha256 = "1db134221e82c424260a0e206b640fcb82902be35eea4137af2bcd9c98d3ac0f";
+    sha256 = "fac7c032f472fb369378ad2d8fe77e7cd3b3c1c6a0d7bf59980b69528891b399";
   };
 
   minimumOCamlVersion = "4.08";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/json-data-encoding/bson.nix b/nixpkgs/pkgs/development/ocaml-modules/json-data-encoding/bson.nix
new file mode 100644
index 000000000000..5048a8fd06a7
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/json-data-encoding/bson.nix
@@ -0,0 +1,20 @@
+{ lib, buildDunePackage, json-data-encoding, ocplib-endian, crowbar }:
+
+buildDunePackage {
+  pname = "json-data-encoding-bson";
+
+  inherit (json-data-encoding) version src useDune2 doCheck;
+
+  propagatedBuildInputs = [
+    json-data-encoding
+    ocplib-endian
+  ];
+
+  checkInputs = [
+    crowbar
+  ];
+
+  meta = json-data-encoding.meta // {
+    description = "Type-safe encoding to and decoding from JSON (bson support)";
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/json-data-encoding/default.nix b/nixpkgs/pkgs/development/ocaml-modules/json-data-encoding/default.nix
new file mode 100644
index 000000000000..6dfea612b10a
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/json-data-encoding/default.nix
@@ -0,0 +1,31 @@
+{ lib, fetchFromGitLab, buildDunePackage, uri, crowbar }:
+
+buildDunePackage rec {
+  pname = "json-data-encoding";
+  version = "0.8";
+
+  src = fetchFromGitLab {
+    owner = "nomadic-labs";
+    repo = "json-data-encoding";
+    rev = "v${version}";
+    sha256 = "1c6m2qvi9bm6qjxc38p6cia1f66r0rb9xf6b8svlj3jjymvqw889";
+  };
+  useDune2 = true;
+
+  propagatedBuildInputs = [
+    uri
+  ];
+
+  checkInputs = [
+    crowbar
+  ];
+
+  doCheck = true;
+
+  meta = {
+    homepage = "https://gitlab.com/nomadic-labs/json-data-encoding";
+    description = "Type-safe encoding to and decoding from JSON";
+    license = lib.licenses.lgpl3;
+    maintainers = [ lib.maintainers.ulrikstrid ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/luv/default.nix b/nixpkgs/pkgs/development/ocaml-modules/luv/default.nix
index 41fdbc4eedcd..8aaf1bcbddb4 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/luv/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/luv/default.nix
@@ -6,12 +6,12 @@
 
 buildDunePackage rec {
   pname = "luv";
-  version = "0.5.8";
+  version = "0.5.9";
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/aantron/luv/releases/download/${version}/luv-${version}.tar.gz";
-    sha256 = "1y3g7jvb72frckjl92zyn7hzmzjy1fy4a48992jdk80vphsdzgmk";
+    sha256 = "0bbv28vgv5mnfbn1gag5fh3n4d9nkffqy3bif3pf47677c493ym2";
   };
 
   postConfigure = ''
diff --git a/nixpkgs/pkgs/development/ocaml-modules/lwt-watcher/default.nix b/nixpkgs/pkgs/development/ocaml-modules/lwt-watcher/default.nix
new file mode 100644
index 000000000000..23caa894736a
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/lwt-watcher/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, fetchFromGitLab
+, buildDunePackage
+, lwt
+}:
+
+buildDunePackage rec {
+  pname = "lwt-watcher";
+  version = "0.1";
+  src = fetchFromGitLab {
+    owner = "nomadic-labs";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0kaf7py02i0dn9rvrbzxh4ljfg059wc8xvm093m9wy7lsa68rax9";
+  };
+
+  useDune2 = true;
+
+  propagatedBuildInputs = [
+    lwt
+  ];
+
+  doCheck = true;
+
+  meta = {
+    description = "One-to-many broadcast in Lwt";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.ulrikstrid ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mdx/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mdx/default.nix
index 7051c51cc5cc..c8035eea42d3 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mdx/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mdx/default.nix
@@ -1,16 +1,16 @@
-{ lib, fetchurl, buildDunePackage, opaline, ocaml
+{ lib, fetchurl, buildDunePackage, ocaml
 , alcotest
 , astring, cmdliner, cppo, fmt, logs, ocaml-version, odoc, ocaml_lwt, re, result, csexp
 , pandoc}:
 
 buildDunePackage rec {
   pname = "mdx";
-  version = "1.8.1";
+  version = "1.10.1";
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/realworldocaml/mdx/releases/download/${version}/mdx-${version}.tbz";
-    sha256 = "1szik1lyg2vs8jrisnvjdc29n0ifls8mghimff4jcz6f48haa3cv";
+    sha256 = "10d4sfv4qk9569kj46pcaw6cih40v6bkgd44lmsp7cyfhvl8pa9x";
   };
 
   nativeBuildInputs = [ cppo ];
@@ -23,7 +23,9 @@ buildDunePackage rec {
   outputs = [ "bin" "lib" "out" ];
 
   installPhase = ''
-    ${opaline}/bin/opaline -prefix $bin -libdir $lib/lib/ocaml/${ocaml.version}/site-lib
+    runHook preInstall
+    dune install --prefix=$bin --libdir=$lib/lib/ocaml/${ocaml.version}/site-lib ${pname}
+    runHook postInstall
   '';
 
   meta = {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mirage-block-ramdisk/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mirage-block-ramdisk/default.nix
index 1dcc769abb67..7e8ebba73eb5 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mirage-block-ramdisk/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mirage-block-ramdisk/default.nix
@@ -13,6 +13,11 @@ buildDunePackage rec {
     sha256 = "cc0e814fd54efe7a5b7a8c5eb1c04e2dece751b7d8dee2d95908a0768896e8af";
   };
 
+  # Make tests compatible with alcotest 1.4.0
+  postPatch = ''
+    substituteInPlace test/tests.ml --replace 'Fmt.kstrf Alcotest.fail' 'Fmt.kstrf (fun s -> Alcotest.fail s)'
+  '';
+
   minimumOCamlVersion = "4.06";
 
   propagatedBuildInputs = [ io-page mirage-block ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mirage-channel/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mirage-channel/default.nix
index 5b639e6fdd6e..227e821e1924 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mirage-channel/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mirage-channel/default.nix
@@ -14,6 +14,11 @@ buildDunePackage rec {
     sha256 = "0wmb2zhiyp8n78xgcspcsyd19bhcml3kyli2caw3778wc1gyvfpc";
   };
 
+  # Make tests compatible with alcotest 1.4.0
+  postPatch = ''
+    substituteInPlace test/test_channel.ml --replace 'Fmt.kstrf Alcotest.fail' 'Fmt.kstrf (fun s -> Alcotest.fail s)'
+  '';
+
   propagatedBuildInputs = [ cstruct logs lwt mirage-flow ];
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mirage-flow/unix.nix b/nixpkgs/pkgs/development/ocaml-modules/mirage-flow/unix.nix
index 3bd676b45fa0..0bd3e42ad37a 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mirage-flow/unix.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mirage-flow/unix.nix
@@ -6,6 +6,11 @@ buildDunePackage {
 
   inherit (mirage-flow) version useDune2 src;
 
+  # Make tests compatible with alcotest 1.4.0
+  postPatch = ''
+    substituteInPlace test/test.ml --replace 'Fmt.kstrf Alcotest.fail' 'Fmt.kstrf (fun s -> Alcotest.fail s)'
+  '';
+
   propagatedBuildInputs = [ fmt logs mirage-flow ocaml_lwt cstruct ];
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ocaml-lsp/lsp.nix b/nixpkgs/pkgs/development/ocaml-modules/ocaml-lsp/lsp.nix
index b501282c1558..6e172dee6ee6 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ocaml-lsp/lsp.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ocaml-lsp/lsp.nix
@@ -1,4 +1,5 @@
 { buildDunePackage
+, cppo
 , stdlib-shims
 , ppx_yojson_conv_lib
 , ocaml-syntax-shims
@@ -26,16 +27,20 @@ buildDunePackage {
   '';
 
   buildInputs = [
-    stdlib-shims
+    cppo
     ppx_yojson_conv_lib
     ocaml-syntax-shims
     octavius
-    uutf
-    csexp
     dune-build-info
     omd
     cmdliner
+  ];
+
+  propagatedBuildInputs = [
+    csexp
     jsonrpc
+    stdlib-shims
+    uutf
   ];
 
   meta = jsonrpc.meta // {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ocaml-monadic/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ocaml-monadic/default.nix
index 69fa4cba8511..9a6dd1f7cb66 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ocaml-monadic/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ocaml-monadic/default.nix
@@ -1,10 +1,10 @@
 { lib, fetchFromGitHub, buildDunePackage
-, ocaml-migrate-parsetree, ppx_tools_versioned
+, ppxlib
 }:
 
 buildDunePackage rec {
   pname = "ocaml-monadic";
-  version = "0.4.1";
+  version = "0.5.0";
 
   useDune2 = true;
 
@@ -12,11 +12,10 @@ buildDunePackage rec {
     owner = "zepalmer";
     repo = pname;
     rev = version;
-    sha256 = "1zcwydypk5vwfn1g7srnl5076scwwq5a5y8xwcjl70pc4cpzszll";
+    sha256 = "1ynv3yhdqmkhkgnz6c5kv6ryjcc934sdvw9rhh8rjg2dlzlffgbw";
   };
 
-  buildInputs = [ ppx_tools_versioned ];
-  propagatedBuildInputs = [ ocaml-migrate-parsetree ];
+  buildInputs = [ ppxlib ];
 
   meta = {
     inherit (src.meta) homepage;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/odoc/default.nix b/nixpkgs/pkgs/development/ocaml-modules/odoc/default.nix
index fad5917a5a4f..68c06cc4c6f7 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/odoc/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/odoc/default.nix
@@ -5,13 +5,13 @@
 
 buildDunePackage rec {
   pname = "odoc";
-  version = "1.5.2";
+  version = "1.5.3";
 
   minimumOCamlVersion = "4.02";
 
   src = fetchurl {
     url = "https://github.com/ocaml/odoc/releases/download/${version}/odoc-${version}.tbz";
-    sha256 = "0wa87h8q6izcc6rkzqn944vrb3hmc21lf0d0rmr8rhhbcvr66i6j";
+    sha256 = "0idzidmz7y10xkwcf4aih0mdvkipxk1gzi4anhnbbi2q2s0nzdzj";
   };
 
   useDune2 = true;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/pcre/default.nix b/nixpkgs/pkgs/development/ocaml-modules/pcre/default.nix
index 210b7d58857c..ea853c4648b1 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/pcre/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/pcre/default.nix
@@ -1,26 +1,26 @@
-{ lib, stdenv, fetchurl, pcre, ocaml, findlib, ocamlbuild }:
+{ lib, buildDunePackage, fetchurl, pcre, dune-configurator }:
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-pcre-${version}";
-  version = "7.2.3";
+buildDunePackage rec {
+  pname = "pcre";
+  version = "7.4.6";
+
+  useDune2 = true;
+
+  minimalOCamlVersion = "4.08";
 
   src = fetchurl {
-    url = "https://github.com/mmottl/pcre-ocaml/releases/download/v${version}/pcre-ocaml-${version}.tar.gz";
-    sha256 = "0rj6dw79px4sj2kq0iss2nzq3rnsn9wivvc0f44wa1mppr6njfb3";
+    url = "https://github.com/mmottl/pcre-ocaml/releases/download/${version}/pcre-${version}.tbz";
+    sha256 = "17ajl0ra5xkxn5pf0m0zalylp44wsfy6mvcq213djh2pwznh4gya";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild ];
-  propagatedBuildInputs = [pcre];
-
-  createFindlibDestdir = true;
+  buildInputs = [ dune-configurator ];
 
-  dontConfigure = true;	# Skip configure phase
+  propagatedBuildInputs = [ pcre ];
 
   meta = with lib; {
-    homepage = "https://bitbucket.org/mmottl/pcre-ocaml";
+    homepage = "https://mmottl.github.io/pcre-ocaml";
     description = "An efficient C-library for pattern matching with Perl-style regular expressions in OCaml";
-    license = licenses.lgpl21;
-    platforms = ocaml.meta.platforms or [];
+    license = licenses.lgpl21Plus;
     maintainers = with maintainers; [ maggesi vbmithr ];
   };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/repr/default.nix b/nixpkgs/pkgs/development/ocaml-modules/repr/default.nix
index cd7e1e014e4d..282d24d9b73b 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/repr/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/repr/default.nix
@@ -2,11 +2,11 @@
 
 buildDunePackage rec {
   pname = "repr";
-  version = "0.3.0";
+  version = "0.4.0";
 
   src = fetchurl {
     url = "https://github.com/mirage/${pname}/releases/download/${version}/${pname}-fuzz-${version}.tbz";
-    sha256 = "sha256-2b0v5RwutvyidzEDTEb5p33IvJ+3t2IW+KVxYD1ufXQ=";
+    sha256 = "1kpwgncyxcrq90dn7ilja7c5i88whc3fz4fmq1lwr0ar95d7d48p";
   };
 
   minimumOCamlVersion = "4.08";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/repr/ppx.nix b/nixpkgs/pkgs/development/ocaml-modules/repr/ppx.nix
index 7ef2c55c2c26..561015254d75 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/repr/ppx.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/repr/ppx.nix
@@ -1,4 +1,4 @@
-{ buildDunePackage, ppx_deriving, ppxlib, repr, alcotest, hex }:
+{ lib, buildDunePackage, ppx_deriving, ppxlib, repr, alcotest, hex }:
 
 buildDunePackage {
   pname = "ppx_repr";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/resto/acl.nix b/nixpkgs/pkgs/development/ocaml-modules/resto/acl.nix
new file mode 100644
index 000000000000..7ac05cd62da8
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/resto/acl.nix
@@ -0,0 +1,13 @@
+{ lib, buildDunePackage, resto, uri }:
+
+buildDunePackage {
+  pname = "resto-acl";
+  inherit (resto) src version meta useDune2 doCheck;
+
+    minimalOCamlVersion = "4.05";
+
+  propagatedBuildInputs = [
+    resto
+    uri
+  ];
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/resto/cohttp-client.nix b/nixpkgs/pkgs/development/ocaml-modules/resto/cohttp-client.nix
new file mode 100644
index 000000000000..2dc651045ba5
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/resto/cohttp-client.nix
@@ -0,0 +1,20 @@
+{ buildDunePackage
+, resto
+, resto-directory
+, resto-cohttp
+, uri
+, lwt
+}:
+
+buildDunePackage {
+  pname = "resto-cohttp-client";
+  inherit (resto) src version meta useDune2 doCheck;
+
+  propagatedBuildInputs = [
+    resto
+    resto-directory
+    resto-cohttp
+    uri
+    lwt
+  ];
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/resto/cohttp-self-serving-client.nix b/nixpkgs/pkgs/development/ocaml-modules/resto/cohttp-self-serving-client.nix
new file mode 100644
index 000000000000..88f2ef25e6a8
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/resto/cohttp-self-serving-client.nix
@@ -0,0 +1,27 @@
+{ lib
+, buildDunePackage
+, resto
+, resto-directory
+, resto-acl
+, resto-cohttp
+, resto-cohttp-client
+, resto-cohttp-server
+, uri
+, lwt
+}:
+
+buildDunePackage {
+  pname = "resto-cohttp-self-serving-client";
+  inherit (resto) src version meta useDune2 doCheck;
+
+  propagatedBuildInputs = [
+    resto
+    resto-directory
+    resto-acl
+    resto-cohttp
+    resto-cohttp-client
+    resto-cohttp-server
+    uri
+    lwt
+  ];
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/resto/cohttp-server.nix b/nixpkgs/pkgs/development/ocaml-modules/resto/cohttp-server.nix
new file mode 100644
index 000000000000..61a5d93e9fc3
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/resto/cohttp-server.nix
@@ -0,0 +1,25 @@
+{ lib
+, buildDunePackage
+, resto
+, resto-directory
+, resto-acl
+, resto-cohttp
+, cohttp-lwt-unix
+, conduit-lwt-unix
+, lwt
+}:
+
+buildDunePackage {
+  pname = "resto-cohttp-server";
+  inherit (resto) src version meta useDune2 doCheck;
+
+  propagatedBuildInputs = [
+    resto
+    resto-directory
+    resto-acl
+    resto-cohttp
+    cohttp-lwt-unix
+    conduit-lwt-unix
+    lwt
+  ];
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/resto/cohttp.nix b/nixpkgs/pkgs/development/ocaml-modules/resto/cohttp.nix
new file mode 100644
index 000000000000..c29e589057c2
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/resto/cohttp.nix
@@ -0,0 +1,12 @@
+{ buildDunePackage, resto, resto-directory, cohttp-lwt }:
+
+buildDunePackage {
+  pname = "resto-cohttp";
+  inherit (resto) src version meta useDune2 doCheck;
+
+  propagatedBuildInputs = [
+    resto
+    resto-directory
+    cohttp-lwt
+  ];
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/resto/default.nix b/nixpkgs/pkgs/development/ocaml-modules/resto/default.nix
new file mode 100644
index 000000000000..13d55b1af210
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/resto/default.nix
@@ -0,0 +1,28 @@
+{ lib, fetchFromGitLab, buildDunePackage, uri }:
+
+buildDunePackage rec {
+  pname = "resto";
+  version = "0.6.1";
+  src = fetchFromGitLab {
+    owner = "nomadic-labs";
+    repo = "resto";
+    rev = "v${version}";
+    sha256 = "13h3zga7h2jhgbyda1q53szbpxcz3vvy3c51mlqk3jh9jq2wrn87";
+  };
+
+  useDune2 = true;
+
+  propagatedBuildInputs = [
+    uri
+  ];
+
+  # resto has infinite recursion in their tests
+  doCheck = false;
+
+  meta = {
+    description = "A minimal OCaml library for type-safe HTTP/JSON RPCs";
+    homepage = "https://gitlab.com/nomadic-labs/resto";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.ulrikstrid ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/resto/directory.nix b/nixpkgs/pkgs/development/ocaml-modules/resto/directory.nix
new file mode 100644
index 000000000000..7539bf98ffd6
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/resto/directory.nix
@@ -0,0 +1,11 @@
+{ lib, buildDunePackage, resto, resto-json, lwt }:
+
+buildDunePackage {
+  pname = "resto-directory";
+  inherit (resto) src version meta useDune2 doCheck;
+
+  propagatedBuildInputs = [
+    resto
+    lwt
+  ];
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/resto/ezresto-directory.nix b/nixpkgs/pkgs/development/ocaml-modules/resto/ezresto-directory.nix
new file mode 100644
index 000000000000..fa208cc3fbb4
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/resto/ezresto-directory.nix
@@ -0,0 +1,13 @@
+{ buildDunePackage, resto, resto-directory, ezresto, lwt }:
+
+buildDunePackage {
+  pname = "ezresto-directory";
+  inherit (resto) src version meta useDune2 doCheck;
+
+  propagatedBuildInputs = [
+    ezresto
+    resto-directory
+    resto
+    lwt
+  ];
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/resto/ezresto.nix b/nixpkgs/pkgs/development/ocaml-modules/resto/ezresto.nix
new file mode 100644
index 000000000000..8b3b2c6cd71f
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/resto/ezresto.nix
@@ -0,0 +1,12 @@
+{ lib, buildDunePackage, resto, resto-json, uri }:
+
+buildDunePackage {
+  pname = "ezresto";
+  inherit (resto) src version meta useDune2 doCheck;
+
+  propagatedBuildInputs = [
+    uri
+    resto
+    resto-json
+  ];
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/resto/json.nix b/nixpkgs/pkgs/development/ocaml-modules/resto/json.nix
new file mode 100644
index 000000000000..e861cac6d319
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/resto/json.nix
@@ -0,0 +1,12 @@
+{ lib, buildDunePackage, resto, json-data-encoding, json-data-encoding-bson }:
+
+buildDunePackage {
+  pname = "resto-json";
+  inherit (resto) src version meta useDune2 doCheck;
+
+  propagatedBuildInputs = [
+    resto
+    json-data-encoding
+    json-data-encoding-bson
+  ];
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ringo/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ringo/default.nix
new file mode 100644
index 000000000000..7bfd38b869da
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/ringo/default.nix
@@ -0,0 +1,28 @@
+{ lib, fetchFromGitLab, buildDunePackage }:
+
+buildDunePackage rec {
+  pname = "ringo";
+  version = "0.5";
+
+  src = fetchFromGitLab {
+    owner = "nomadic-labs";
+    repo = "ringo";
+    rev = "v${version}";
+    sha256 = "1zwha0ycv3rm3qnw7nkg2m08ibx39yxnx5fan4lnn82b0pdasjag";
+  };
+
+  minimalOCamlVersion = "4.05";
+
+  useDune2 = true;
+
+  doCheck = true;
+
+  # If we just run the test as is it will try to test ringo-lwt
+  checkPhase = "dune build @test/runtest";
+
+  meta = {
+    description = "Caches (bounded-size key-value stores) and other bounded-size stores";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.ulrikstrid ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ringo/lwt.nix b/nixpkgs/pkgs/development/ocaml-modules/ringo/lwt.nix
new file mode 100644
index 000000000000..be9f5bbf2b22
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/ringo/lwt.nix
@@ -0,0 +1,17 @@
+{ lib, buildDunePackage, ringo, lwt }:
+
+buildDunePackage {
+  pname = "ringo-lwt";
+  inherit (ringo) version src doCheck useDune2;
+
+  minimalOCamlVersion = "4.08";
+
+  propagatedBuildInputs = [
+    ringo
+    lwt
+  ];
+
+  meta = ringo.meta // {
+    description = "Lwt-wrappers for Ringo caches";
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/secp256k1-internal/default.nix b/nixpkgs/pkgs/development/ocaml-modules/secp256k1-internal/default.nix
new file mode 100644
index 000000000000..f7d3c1e41c56
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/secp256k1-internal/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, fetchFromGitLab
+, buildDunePackage
+, gmp
+, dune-configurator
+, cstruct
+, bigstring
+, alcotest
+, hex
+}:
+
+buildDunePackage rec {
+  pname = "secp256k1-internal";
+  version = "0.2";
+  src = fetchFromGitLab {
+    owner = "nomadic-labs";
+    repo = "ocaml-secp256k1-internal";
+    rev = "v${version}";
+    sha256 = "1g9fyi78nmmm19l2cggwj14m4n80rz7gmnh1gq376zids71s6qxv";
+  };
+
+  useDune2 = true;
+
+  minimalOCamlVersion = "4.08";
+
+  propagatedBuildInputs = [
+    gmp
+    cstruct
+    bigstring
+  ];
+
+  buildInputs = [
+    dune-configurator
+  ];
+
+  checkInputs = [
+    alcotest
+    hex
+  ];
+
+  doCheck = true;
+
+  meta = {
+    description = "Bindings to secp256k1 internal functions (generic operations on the curve)";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.ulrikstrid ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/tcpip/default.nix b/nixpkgs/pkgs/development/ocaml-modules/tcpip/default.nix
index 4d9f97480ef2..53656f00572a 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/tcpip/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/tcpip/default.nix
@@ -26,6 +26,14 @@ buildDunePackage rec {
     ./makefile-no-opam.patch
   ];
 
+  # Make tests compatible with alcotest 1.4.0
+  postPatch = ''
+    for p in common.ml test_tcp_options.ml
+    do
+      substituteInPlace test/$p --replace 'Fmt.kstrf Alcotest.fail' 'Fmt.kstrf (fun s -> Alcotest.fail s)'
+    done
+  '';
+
   nativeBuildInputs = [
     bisect_ppx
     ppx_cstruct
diff --git a/nixpkgs/pkgs/development/ocaml-modules/uecc/default.nix b/nixpkgs/pkgs/development/ocaml-modules/uecc/default.nix
new file mode 100644
index 000000000000..a9ba880531c4
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/uecc/default.nix
@@ -0,0 +1,34 @@
+{ lib, fetchFromGitLab, buildDunePackage, bigstring, alcotest, cstruct, hex }:
+
+buildDunePackage rec {
+  pname = "uecc";
+  version = "0.3";
+
+  src = fetchFromGitLab {
+    owner = "nomadic-labs";
+    repo = "ocaml-uecc";
+    rev = "v${version}";
+    sha256 = "0m3cw34254baajscrwlrj0jp5n0yad3dhgi4jh3pz89iqykj15fr";
+  };
+
+  useDune2 = true;
+
+  propagatedBuildInputs = [
+    bigstring
+  ];
+
+  checkInputs = [
+    alcotest
+    cstruct
+    hex
+  ];
+
+  doCheck = true;
+
+  meta = {
+    description = "Bindings for ECDH and ECDSA for 8-bit, 32-bit, and 64-bit processors";
+    homepage = https://gitlab.com/nomadic-labs/ocaml-uecc;
+    license = lib.licenses.isc;
+    maintainers = [ lib.maintainers.ulrikstrid ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/yojson/default.nix b/nixpkgs/pkgs/development/ocaml-modules/yojson/default.nix
index 07025be296ce..2be9ce1b0210 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/yojson/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/yojson/default.nix
@@ -1,48 +1,22 @@
-{ lib, stdenv, fetchzip, ocaml, findlib, dune_2, cppo, easy-format, biniou }:
-let
-  pname = "yojson";
-  param =
-  if lib.versionAtLeast ocaml.version "4.02" then rec {
-    version = "1.7.0";
-    url = "https://github.com/ocaml-community/yojson/releases/download/${version}/yojson-${version}.tbz";
-    sha256 = "08llz96if8bcgnaishf18si76cv11zbkni0aldb54k3cn7ipiqvd";
-    nativeBuildInputs = [ dune_2 ];
-    extra = {
-      installPhase = ''
-        dune install --prefix $out --libdir $OCAMLFIND_DESTDIR ${pname}
-      '';
-    };
-  } else rec {
-    version = "1.2.3";
-    url = "https://github.com/ocaml-community/yojson/archive/v${version}.tar.gz";
-    sha256 = "10dvkndgwanvw4agbjln7kgb1n9s6lii7jw82kwxczl5rd1sgmvl";
-    extra = {
-      createFindlibDestdir = true;
+{ lib, fetchurl, buildDunePackage, cppo, easy-format, biniou }:
 
-      makeFlags = [ "PREFIX=$(out)" ];
-
-      preBuild = "mkdir $out/bin";
-    };
-  };
-in
-stdenv.mkDerivation ({
-
-  name = "ocaml${ocaml.version}-${pname}-${param.version}";
+buildDunePackage rec {
+  pname = "yojson";
+  version = "1.7.0";
+  useDune2 = true;
 
-  src = fetchzip {
-    inherit (param) url sha256;
+  src = fetchurl {
+    url = "https://github.com/ocaml-community/yojson/releases/download/${version}/yojson-${version}.tbz";
+    sha256 = "1iich6323npvvs8r50lkr4pxxqm9mf6w67cnid7jg1j1g5gwcvv5";
   };
 
-  nativeBuildInputs = [ ocaml findlib ] ++ (param.nativeBuildInputs or []);
-  propagatedNativeBuildInputs = [ cppo ];
+  nativeBuildInputs = [ cppo ];
   propagatedBuildInputs = [ easy-format biniou ];
-  configurePlatforms = [];
 
   meta = with lib; {
     description = "An optimized parsing and printing library for the JSON format";
     homepage = "https://github.com/ocaml-community/${pname}";
     license = licenses.bsd3;
     maintainers = [ maintainers.vbgl ];
-    platforms = ocaml.meta.platforms or [];
   };
-} // param.extra)
+}
diff --git a/nixpkgs/pkgs/development/python-modules/APScheduler/default.nix b/nixpkgs/pkgs/development/python-modules/APScheduler/default.nix
index 1a27c8c1f0fc..a4083707a072 100644
--- a/nixpkgs/pkgs/development/python-modules/APScheduler/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/APScheduler/default.nix
@@ -6,7 +6,7 @@
 , pytestCheckHook
 , pytest-asyncio
 , pytest-tornado
-, pytestcov
+, pytest-cov
 , sqlalchemy
 , tornado
 , twisted
@@ -38,7 +38,7 @@ buildPythonPackage rec {
     pytest-asyncio
     pytest-tornado
     pytestCheckHook
-    pytestcov
+    pytest-cov
     sqlalchemy
     tornado
     twisted
diff --git a/nixpkgs/pkgs/development/python-modules/Cython/default.nix b/nixpkgs/pkgs/development/python-modules/Cython/default.nix
index c09f1586fd6f..dcede9506e32 100644
--- a/nixpkgs/pkgs/development/python-modules/Cython/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/Cython/default.nix
@@ -37,9 +37,9 @@ in buildPythonPackage rec {
     pkg-config
   ];
   checkInputs = [
-    numpy ncurses
+    gdb numpy ncurses
   ];
-  buildInputs = [ glibcLocales gdb ];
+  buildInputs = [ glibcLocales ];
   LC_ALL = "en_US.UTF-8";
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix b/nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix
index 114130595339..6f1f9b0337ea 100644
--- a/nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "adafruit-platformdetect";
-  version = "3.14.2";
+  version = "3.15.3";
 
   src = fetchPypi {
     pname = "Adafruit-PlatformDetect";
     inherit version;
-    sha256 = "sha256-SFqSTNKZMETRf9RxSD6skzAVpxepmW+JG/gqZgFX06A=";
+    sha256 = "sha256-cmeCh54dwYwbL1AwGrPwTDp4F6VONclV7iu2Sm1g33Q=";
   };
 
   nativeBuildInputs = [ setuptools-scm ];
diff --git a/nixpkgs/pkgs/development/python-modules/adb-shell/default.nix b/nixpkgs/pkgs/development/python-modules/adb-shell/default.nix
index 22e4a67ff2ab..47a70940e927 100644
--- a/nixpkgs/pkgs/development/python-modules/adb-shell/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/adb-shell/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "adb-shell";
-  version = "0.3.4";
+  version = "0.4.0";
 
   disabled = !isPy3k;
 
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "JeffLIrion";
     repo = "adb_shell";
     rev = "v${version}";
-    sha256 = "sha256-H1GVbMeaVUZh8T1jgZP2o+emEkK4fOi5k4aL9ayVesA=";
+    sha256 = "1dzpgpvjvss4mk2kp1s9g1gg0d008pbmfdsi9b98q9fax9syk725";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/addict/default.nix b/nixpkgs/pkgs/development/python-modules/addict/default.nix
new file mode 100644
index 000000000000..2bb531cff908
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/addict/default.nix
@@ -0,0 +1,26 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "addict";
+  version = "2.4.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "b3b2210e0e067a281f5646c8c5db92e99b7231ea8b0eb5f74dbdf9e259d4e494";
+  };
+
+  checkInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "addict" ];
+
+  meta = with lib; {
+    description = "Module that exposes a dictionary subclass that allows items to be set like attributes";
+    homepage = "https://github.com/mewwts/addict";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ veprbl ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/advantage-air/default.nix b/nixpkgs/pkgs/development/python-modules/advantage-air/default.nix
index 4d6d91c5716d..5ce9d196c4c1 100644
--- a/nixpkgs/pkgs/development/python-modules/advantage-air/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/advantage-air/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "advantage_air";
-  version = "0.2.2";
+  version = "0.2.5";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit version pname;
-    sha256 = "04q2sjw9r50c00m4sfv98w9cwmmr970830c97m32p5j8ijb10j5x";
+    sha256 = "sha256-38csg1Cvpz4dkRCwlNc8+af7aJ5xDrZO1D8cCaBlePA=";
   };
 
   propagatedBuildInputs = [ aiohttp ];
diff --git a/nixpkgs/pkgs/development/python-modules/agate-sql/default.nix b/nixpkgs/pkgs/development/python-modules/agate-sql/default.nix
index 890f44b4ad38..68f166b3c7c5 100644
--- a/nixpkgs/pkgs/development/python-modules/agate-sql/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/agate-sql/default.nix
@@ -22,6 +22,10 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ agate sqlalchemy ];
 
+  # crate is broken in nixpkgs, with SQLAlchemy > 1.3
+  # Skip tests for now as they rely on it.
+  doCheck = false;
+
   checkInputs = [ crate nose geojson ];
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/ailment/default.nix b/nixpkgs/pkgs/development/python-modules/ailment/default.nix
index 961a6cff1960..a6c99e72c0ad 100644
--- a/nixpkgs/pkgs/development/python-modules/ailment/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ailment/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "ailment";
-  version = "9.0.8761";
+  version = "9.0.9031";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-UAtVWh3BBZZmU5+BR0+2B+rivzR4E7bZK1ro1uKngtE=";
+    sha256 = "sha256-xyNTcGTGH8030CJif6an+kDZIfOUVDMiRhFamVajAzk=";
   };
 
   propagatedBuildInputs = [ pyvex ];
diff --git a/nixpkgs/pkgs/development/python-modules/aiocontextvars/default.nix b/nixpkgs/pkgs/development/python-modules/aiocontextvars/default.nix
index 728f2b5fa61a..dc70baab9e5c 100644
--- a/nixpkgs/pkgs/development/python-modules/aiocontextvars/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiocontextvars/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, pytestrunner
+, pytest-runner
 , pytest
 , pytest-asyncio
 , contextvars
@@ -23,7 +23,7 @@ buildPythonPackage rec {
   };
 
   buildInputs = [
-    pytestrunner
+    pytest-runner
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix b/nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix
index 896b9c71a707..5def5b1d13f8 100644
--- a/nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix
@@ -1,22 +1,34 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k, attrs, protobuf, zeroconf }:
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchPypi
+, protobuf
+, zeroconf
+}:
 
 buildPythonPackage rec {
   pname = "aioesphomeapi";
-  version = "2.9.0";
+  version = "4.1.0";
+  format = "setuptools";
 
-  disabled = !isPy3k;
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "11259cd1f115d31b91512a209779fa813dded747408100805bc8ecf7c1c1fa82";
+    sha256 = "0210l2d5g76pllr2vh990k9shfv3zrknx5d2dmgqb5y90142cp76";
   };
 
-  propagatedBuildInputs = [ attrs protobuf zeroconf ];
+  propagatedBuildInputs = [
+    protobuf
+    zeroconf
+  ];
 
   # no tests implemented
   doCheck = false;
 
-  pythonImportsCheck = [ "aioesphomeapi" ];
+  pythonImportsCheck = [
+    "aioesphomeapi"
+  ];
 
   meta = with lib; {
     description = "Python Client for ESPHome native API";
diff --git a/nixpkgs/pkgs/development/python-modules/aioftp/default.nix b/nixpkgs/pkgs/development/python-modules/aioftp/default.nix
index e3ca13859acc..a610dba76614 100644
--- a/nixpkgs/pkgs/development/python-modules/aioftp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioftp/default.nix
@@ -4,7 +4,7 @@
 , isPy27
 , pytest
 , pytest-asyncio
-, pytestcov
+, pytest-cov
 , trustme
 , async-timeout
 }:
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   checkInputs = [
     pytest
     pytest-asyncio
-    pytestcov
+    pytest-cov
     trustme
     async-timeout
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/aioguardian/default.nix b/nixpkgs/pkgs/development/python-modules/aioguardian/default.nix
index 74ff8fb3fde6..71e1fb43dd5d 100644
--- a/nixpkgs/pkgs/development/python-modules/aioguardian/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioguardian/default.nix
@@ -15,13 +15,13 @@
 
 buildPythonPackage rec {
   pname = "aioguardian";
-  version = "1.0.7";
+  version = "1.0.8";
 
   src = fetchFromGitHub {
     owner = "bachya";
     repo = pname;
     rev = version;
-    sha256 = "sha256-KMhq86hcqoYloS/6VHsl+3KVEZBbN97ABrZlmEr32Z8=";
+    sha256 = "0nqsacg0yrsqr6qax4486ffk8r88ra5yixxd6r88jwscm2bmjg3p";
   };
 
   format = "pyproject";
@@ -45,15 +45,6 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  postPatch = ''
-    # https://github.com/bachya/aioguardian/pull/66
-    substituteInPlace pyproject.toml \
-      --replace 'asyncio_dgram = "^1.0.1"' 'asyncio_dgram = "^2.0.0"'
-    # https://github.com/bachya/aioguardian/pull/67
-    substituteInPlace pyproject.toml \
-      --replace "poetry>=0.12" "poetry-core"
-  '';
-
   disabledTestPaths = [ "examples/" ];
 
   pythonImportsCheck = [ "aioguardian" ];
diff --git a/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix b/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix
index f1c018989c2d..981a541e9ec8 100644
--- a/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "aiohomekit";
-  version = "0.3.0";
+  version = "0.4.2";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "Jc2k";
     repo = pname;
     rev = version;
-    sha256 = "sha256-chRUQyCDXW4of0XBdmKuQEzUE3Gt4A2uGlPNy+oEoco=";
+    sha256 = "12v9szalh3yzfqgmspk4ch8l38kzmhwzjn9jvsq632n4zhjd7qg4";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aiohttp-jinja2/default.nix b/nixpkgs/pkgs/development/python-modules/aiohttp-jinja2/default.nix
index 0a939dfb0097..589aa14509e2 100644
--- a/nixpkgs/pkgs/development/python-modules/aiohttp-jinja2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiohttp-jinja2/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, aiohttp, jinja2, pytest, pytest-aiohttp, pytestcov }:
+{ lib, buildPythonPackage, fetchPypi, aiohttp, jinja2, pytest, pytest-aiohttp, pytest-cov }:
 
 buildPythonPackage rec {
   pname = "aiohttp-jinja2";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ aiohttp jinja2 ];
 
-  checkInputs = [ pytest pytest-aiohttp pytestcov ];
+  checkInputs = [ pytest pytest-aiohttp pytest-cov ];
 
   checkPhase = ''
     pytest -W ignore::DeprecationWarning
diff --git a/nixpkgs/pkgs/development/python-modules/aiohttp-remotes/default.nix b/nixpkgs/pkgs/development/python-modules/aiohttp-remotes/default.nix
index 8a8f7c4b3132..f3abbddfd957 100644
--- a/nixpkgs/pkgs/development/python-modules/aiohttp-remotes/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiohttp-remotes/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchpatch, buildPythonPackage, fetchPypi
-, aiohttp, pytest, pytestcov, pytest-aiohttp
+, aiohttp, pytest, pytest-cov, pytest-aiohttp
 }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ aiohttp ];
 
-  checkInputs = [ pytest pytestcov pytest-aiohttp ];
+  checkInputs = [ pytest pytest-cov pytest-aiohttp ];
   checkPhase = ''
     python -m pytest
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/aiohttp-wsgi/default.nix b/nixpkgs/pkgs/development/python-modules/aiohttp-wsgi/default.nix
index 25264a665271..18364bdce691 100644
--- a/nixpkgs/pkgs/development/python-modules/aiohttp-wsgi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiohttp-wsgi/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "aiohttp-wsgi";
-  version = "0.8.2";
+  version = "0.9.1";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "etianen";
     repo = pname;
     rev = version;
-    sha256 = "0wirn3xqxxgkpy5spicd7p1bkdnsrch61x2kcpdwpixmx961pq7x";
+    sha256 = "sha256-lQ0mAUqsOmozUIMd6nwRATaq8C5SUFGoyQu1v0RBnas=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aiojobs/default.nix b/nixpkgs/pkgs/development/python-modules/aiojobs/default.nix
index 68c34df1afba..20c068080c9c 100644
--- a/nixpkgs/pkgs/development/python-modules/aiojobs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiojobs/default.nix
@@ -1,22 +1,22 @@
-{ buildPythonPackage
+{ lib
+, buildPythonPackage
 , fetchPypi
-, isPy27
+, pythonOlder
 , aiohttp
-, pytest
+, pytestCheckHook
 , pytest-aiohttp
 , pygments
-, lib
 }:
 
 buildPythonPackage rec {
   pname = "aiojobs";
-  version = "0.2.2";
+  version = "0.3.0";
   format = "flit";
-  disabled = isPy27;
+  disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "01a0msjh4w58fd7jplmblh0hwgpzwjs5xkgqz3d0p5yv3cykwjwf";
+    sha256 = "sha256-9mMdQtxDCPfYg6u9cNTpdvP8w1o7oejq5dSvSUCh4MM=";
   };
 
   nativeBuildInputs = [
@@ -28,13 +28,11 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    pytest
+    pytestCheckHook
     pytest-aiohttp
   ];
 
-  checkPhase = ''
-    pytest tests
-  '';
+  pythonImportsCheck = [ "aiojobs" ];
 
   meta = with lib; {
     homepage = "https://github.com/aio-libs/aiojobs";
diff --git a/nixpkgs/pkgs/development/python-modules/aiopg/default.nix b/nixpkgs/pkgs/development/python-modules/aiopg/default.nix
index 36ea00234830..60b5647f5eb9 100644
--- a/nixpkgs/pkgs/development/python-modules/aiopg/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiopg/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "aiopg";
-  version = "1.3.0";
+  version = "1.3.1";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "aio-libs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-/J53WqBag4ArSF7wETvmoBUtgNqp4eYGH0ytipiSKBI=";
+    sha256 = "sha256-kAkxulAMtLeL3IAuIVvZtsN5RxHWV/qHyFIYu9Odn34=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aiosmb/default.nix b/nixpkgs/pkgs/development/python-modules/aiosmb/default.nix
index 86686d2055e7..88c793f9cb57 100644
--- a/nixpkgs/pkgs/development/python-modules/aiosmb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiosmb/default.nix
@@ -5,6 +5,7 @@
 , fetchPypi
 , minikerberos
 , prompt_toolkit
+, pycryptodomex
 , pythonOlder
 , six
 , tqdm
@@ -14,12 +15,12 @@
 
 buildPythonPackage rec {
   pname = "aiosmb";
-  version = "0.2.48";
+  version = "0.2.49";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f5518987e3d41d213a4ffc4dd38362465b5d2cf99417014cb5402f8ee8c5abac";
+    sha256 = "sha256-XCaAaY7a6Gdddm9B0ET+rVzFra5W0GTI/HUMuvpyhzM=";
   };
 
   propagatedBuildInputs = [
@@ -27,6 +28,7 @@ buildPythonPackage rec {
     colorama
     minikerberos
     prompt_toolkit
+    pycryptodomex
     six
     tqdm
     winacl
@@ -35,6 +37,7 @@ buildPythonPackage rec {
 
   # Project doesn't have tests
   doCheck = false;
+
   pythonImportsCheck = [ "aiosmb" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/aiostream/default.nix b/nixpkgs/pkgs/development/python-modules/aiostream/default.nix
index 0bdab3bb2833..e15271bafdbc 100644
--- a/nixpkgs/pkgs/development/python-modules/aiostream/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiostream/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , pythonOlder
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , pytest-asyncio
 }:
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     sha256 = "1r3x9qwl08yscmzvhafc6gsmq84lr17s6p7a1qxr49cmdvjzsc13";
   };
 
-  checkInputs = [ pytestCheckHook pytestcov pytest-asyncio ];
+  checkInputs = [ pytestCheckHook pytest-cov pytest-asyncio ];
 
   meta = with lib; {
     description = "Generator-based operators for asynchronous iteration";
diff --git a/nixpkgs/pkgs/development/python-modules/alembic/default.nix b/nixpkgs/pkgs/development/python-modules/alembic/default.nix
index 81502a470a68..9c7244b3c066 100644
--- a/nixpkgs/pkgs/development/python-modules/alembic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/alembic/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, pytest, pytestcov, mock, coverage, setuptools
+, pytest, pytest-cov, mock, coverage, setuptools
 , Mako, sqlalchemy, python-editor, python-dateutil
 }:
 
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     sha256 = "a21fedebb3fb8f6bbbba51a11114f08c78709377051384c9c5ead5705ee93a51";
   };
 
-  buildInputs = [ pytest pytestcov mock coverage ];
+  buildInputs = [ pytest pytest-cov mock coverage ];
   propagatedBuildInputs = [ Mako sqlalchemy python-editor python-dateutil setuptools ];
 
   # no traditional test suite
diff --git a/nixpkgs/pkgs/development/python-modules/angr/default.nix b/nixpkgs/pkgs/development/python-modules/angr/default.nix
index 092d3a53e941..285a125a7257 100644
--- a/nixpkgs/pkgs/development/python-modules/angr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/angr/default.nix
@@ -13,6 +13,7 @@
 , GitPython
 , itanium_demangler
 , mulpyplexer
+, nampa
 , networkx
 , progressbar2
 , protobuf
@@ -42,14 +43,14 @@ in
 
 buildPythonPackage rec {
   pname = "angr";
-  version = "9.0.8761";
+  version = "9.0.9031";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-vPqCezHYJP3ue3/J/Pni9jPvSJ+om7nAVgPTU6z5xBE=";
+    sha256 = "sha256-qWAz9SHfQU0cdk4yVekJn5OIDPJPbi63CDdlHDq1Opw=";
   };
 
   propagatedBuildInputs = [
@@ -65,6 +66,7 @@ buildPythonPackage rec {
     GitPython
     itanium_demangler
     mulpyplexer
+    nampa
     networkx
     progressbar2
     protobuf
@@ -83,7 +85,13 @@ buildPythonPackage rec {
   doCheck = false;
 
   # See http://angr.io/api-doc/
-  pythonImportsCheck = [ "angr" "claripy" "cle" "pyvex" "archinfo" ];
+  pythonImportsCheck = [
+    "angr"
+    "claripy"
+    "cle"
+    "pyvex"
+    "archinfo"
+  ];
 
   meta = with lib; {
     description = "Powerful and user-friendly binary analysis platform";
diff --git a/nixpkgs/pkgs/development/python-modules/angrop/default.nix b/nixpkgs/pkgs/development/python-modules/angrop/default.nix
index aa6f72eae54f..e5ab1954276b 100644
--- a/nixpkgs/pkgs/development/python-modules/angrop/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/angrop/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "angrop";
-  version = "9.0.8761";
+  version = "9.0.9031";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-M/4kEESL9OH4KyPgsrlVzm54OtU28pDox5qtV7Up2ew=";
+    sha256 = "sha256-3q/3iFR0FFOcvgmNVXtgi1Spu5xfXNJFy+QoIh8amOY=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ansible/base.nix b/nixpkgs/pkgs/development/python-modules/ansible/base.nix
index 0a5cc01d9294..0c88c378516e 100644
--- a/nixpkgs/pkgs/development/python-modules/ansible/base.nix
+++ b/nixpkgs/pkgs/development/python-modules/ansible/base.nix
@@ -28,11 +28,11 @@ let
 in
 buildPythonPackage rec {
   pname = "ansible-base";
-  version = "2.10.11";
+  version = "2.10.12";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0jr3cxqiami9k07g2kmvfp54iafbcnd1d66l8fdnaqka5bc19wdw";
+    sha256 = "sha256-qWVW4tI5+Sg+FWVNQMGqhmgqTntD9Qtf8CK8jkK2mHg=";
   };
 
   # ansible_connection is already wrapped, so don't pass it through
diff --git a/nixpkgs/pkgs/development/python-modules/ansible/core.nix b/nixpkgs/pkgs/development/python-modules/ansible/core.nix
index 4dd606c9adbf..8584ba7166a2 100644
--- a/nixpkgs/pkgs/development/python-modules/ansible/core.nix
+++ b/nixpkgs/pkgs/development/python-modules/ansible/core.nix
@@ -23,17 +23,17 @@
 
 let
   ansible-collections = callPackage ./collections.nix {
-    version = "4.1.0";
-    sha256 = "0rrivq1g0vizah8zmf012lzig2xxfk5x1371k16s3nn4zfkwqqgm";
+    version = "4.2.0";
+    sha256 = "1l30j97q24klylchvbskdmp1xllswn9xskjvg4l0ra6pzfgq2zbk";
   };
 in
 buildPythonPackage rec {
   pname = "ansible-core";
-  version = "2.11.2";
+  version = "2.11.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1syadgzn5ww5bhq9s2py4h1hkh11h7aac5b37zi8rw2xfvdc7r2s";
+    sha256 = "sha256-DO0bT2cZftsntQk0yV1MtkTG1jXXLH+CbEQl3+RTdnQ=";
   };
 
   # ansible_connection is already wrapped, so don't pass it through
diff --git a/nixpkgs/pkgs/development/python-modules/ansible/legacy.nix b/nixpkgs/pkgs/development/python-modules/ansible/legacy.nix
index 12eed6bdb29e..95b127a0db3b 100644
--- a/nixpkgs/pkgs/development/python-modules/ansible/legacy.nix
+++ b/nixpkgs/pkgs/development/python-modules/ansible/legacy.nix
@@ -1,5 +1,5 @@
 { lib
-, fetchFromGitHub
+, fetchPypi
 , buildPythonPackage
 , pycrypto
 , paramiko
@@ -18,13 +18,11 @@
 
 buildPythonPackage rec {
   pname = "ansible";
-  version = "2.9.23";
+  version = "2.9.24";
 
-  src = fetchFromGitHub {
-    owner = "ansible";
-    repo = "ansible";
-    rev = "v${version}";
-    sha256 = "0mikykpzyqpmaiczz53f71mcyc4qvahi9ckn7wgfx7sw7s2z3skk";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-DC9Tt75z3cNCPZZY/NGQeYl9Wx/FM8StVQ21ixea64o=";
   };
 
   prePatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/apache-airflow/default.nix b/nixpkgs/pkgs/development/python-modules/apache-airflow/default.nix
index 82d7a8cc32af..dea5776fb616 100644
--- a/nixpkgs/pkgs/development/python-modules/apache-airflow/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/apache-airflow/default.nix
@@ -1,165 +1,202 @@
 { lib
 , stdenv
+, python
 , buildPythonPackage
 , fetchFromGitHub
-, fetchpatch
+, writeText
 , alembic
+, argcomplete
+, attrs
+, blinker
 , cached-property
-, configparser
+, cattrs
+, clickclick
 , colorlog
 , croniter
+, cryptography
 , dill
 , flask
 , flask-appbuilder
-, flask-admin
 , flask-caching
 , flask_login
-, flask-swagger
 , flask_wtf
-, flask-bcrypt
-, funcsigs
-, future
 , GitPython
+, graphviz
 , gunicorn
+, httpx
 , iso8601
-, json-merge-patch
+, importlib-resources
+, importlib-metadata
+, inflection
+, itsdangerous
 , jinja2
-, ldap3
-, lxml
+, jsonschema
 , lazy-object-proxy
+, lockfile
 , markdown
+, markupsafe
+, marshmallow-oneofschema
+, numpy
+, openapi-spec-validator
 , pandas
 , pendulum
 , psutil
 , pygments
+, pyjwt
 , python-daemon
 , python-dateutil
-, requests
+, python-nvd3
+, python-slugify
+, python3-openid
+, pyyaml
+, rich
 , setproctitle
-, snakebite
 , sqlalchemy
+, sqlalchemy-jsonfield
+, swagger-ui-bundle
 , tabulate
 , tenacity
 , termcolor
-, text-unidecode
-, thrift
-, tzlocal
 , unicodecsv
-, zope_deprecation
-, nose
-, pythonOlder
-, pythonAtLeast
+, werkzeug
+, pytest
+, freezegun
+, mkYarnPackage
 }:
+let
 
-buildPythonPackage rec {
-  pname = "apache-airflow";
-  version = "1.10.5";
-  # Upstream does not yet support python 3.8
-  # https://github.com/apache/airflow/issues/8674
-  disabled = pythonOlder "3.5" || pythonAtLeast "3.8";
+  version = "2.1.2";
 
-  src = fetchFromGitHub rec {
+  airflow-src = fetchFromGitHub rec {
     owner = "apache";
     repo = "airflow";
     rev = version;
-    sha256 = "14fmhfwx977c9jdb2kgm93i6acx43l45ggj30rb37r68pzpb6l6h";
+    sha256 = "sha256-Q0l2c1tuxcoE65zgdxnv/j1TIoQzaNoEFCYHvqN+Bzk=";
   };
 
-  patches = [
-       # Not yet accepted: https://github.com/apache/airflow/pull/6562
-     (fetchpatch {
-       name = "avoid-warning-from-abc.collections";
-       url = "https://patch-diff.githubusercontent.com/raw/apache/airflow/pull/6562.patch";
-       sha256 = "0swpay1qlb7f9kgc56631s1qd9k82w4nw2ggvkm7jvxwf056k61z";
-     })
-       # Not yet accepted: https://github.com/apache/airflow/pull/6561
-     (fetchpatch {
-       name = "pendulum2-compatibility";
-       url = "https://patch-diff.githubusercontent.com/raw/apache/airflow/pull/6561.patch";
-       sha256 = "17hw8qyd4zxvib9zwpbn32p99vmrdz294r31gnsbkkcl2y6h9knk";
-     })
-  ];
+  # airflow bundles a web interface, which is built using webpack by an undocumented shell script in airflow's source tree.
+  # This replicates this shell script, fixing bugs in yarn.lock and package.json
+
+  airflow-frontend = mkYarnPackage {
+    name = "airflow-frontend";
+
+    src = "${airflow-src}/airflow/www";
+    packageJSON = ./package.json;
+    yarnLock = ./yarn.lock;
+    yarnNix = ./yarn.nix;
+
+    distPhase = "true";
+
+    configurePhase = ''
+      cp -r $node_modules node_modules
+    '';
+
+    buildPhase = ''
+      yarn --offline build
+      find package.json yarn.lock static/css static/js -type f | sort | xargs md5sum > static/dist/sum.md5
+    '';
+
+    installPhase = ''
+      mkdir -p $out/static/
+      cp -r static/dist $out/static
+    '';
+  };
+
+in
+buildPythonPackage rec {
+  pname = "apache-airflow";
+  inherit version;
+  src = airflow-src;
 
   propagatedBuildInputs = [
     alembic
+    argcomplete
+    attrs
+    blinker
     cached-property
+    cattrs
+    clickclick
     colorlog
-    configparser
     croniter
+    cryptography
     dill
     flask
-    flask-admin
     flask-appbuilder
-    flask-bcrypt
     flask-caching
     flask_login
-    flask-swagger
     flask_wtf
-    funcsigs
-    future
     GitPython
+    graphviz
     gunicorn
+    httpx
     iso8601
-    json-merge-patch
+    importlib-resources
+    importlib-metadata
+    inflection
+    itsdangerous
     jinja2
-    ldap3
-    lxml
+    jsonschema
     lazy-object-proxy
+    lockfile
     markdown
+    markupsafe
+    marshmallow-oneofschema
+    numpy
+    openapi-spec-validator
     pandas
     pendulum
     psutil
     pygments
+    pyjwt
     python-daemon
     python-dateutil
-    requests
+    python-nvd3
+    python-slugify
+    python3-openid
+    pyyaml
+    rich
     setproctitle
     sqlalchemy
+    sqlalchemy-jsonfield
+    swagger-ui-bundle
     tabulate
     tenacity
     termcolor
-    text-unidecode
-    thrift
-    tzlocal
     unicodecsv
-    zope_deprecation
+    werkzeug
+  ];
+
+  buildInputs = [
+    airflow-frontend
   ];
 
   checkInputs = [
-    snakebite
-    nose
+    freezegun
+    pytest
   ];
 
+  INSTALL_PROVIDERS_FROM_SOURCES = "true";
+
   postPatch = ''
-    substituteInPlace setup.py \
+    substituteInPlace setup.cfg \
+      --replace "importlib_resources~=1.4" "importlib_resources" \
+      --replace "importlib_metadata~=1.7" "importlib_metadata" \
+      --replace "tenacity~=6.2.0" "tenacity" \
+      --replace "pyjwt<2" "pyjwt" \
       --replace "flask>=1.1.0, <2.0" "flask" \
-      --replace "jinja2>=2.10.1, <2.11.0" "jinja2" \
-      --replace "pandas>=0.17.1, <1.0.0" "pandas" \
-      --replace "flask-caching>=1.3.3, <1.4.0" "flask-caching" \
-      --replace "flask-appbuilder>=1.12.5, <2.0.0" "flask-appbuilder" \
-      --replace "flask-admin==1.5.3" "flask-admin" \
       --replace "flask-login>=0.3, <0.5" "flask-login" \
-      --replace "cached_property~=1.5" "cached_property" \
-      --replace "dill>=0.2.2, <0.3" "dill" \
-      --replace "configparser>=3.5.0, <3.6.0" "configparser" \
-      --replace "colorlog==4.0.2" "colorlog" \
-      --replace "funcsigs==1.0.0" "funcsigs" \
-      --replace "flask-swagger==0.2.13" "flask-swagger" \
-      --replace "python-daemon>=2.1.1, <2.2" "python-daemon" \
-      --replace "alembic>=1.0, <2.0" "alembic" \
-      --replace "markdown>=2.5.2, <3.0" "markdown" \
-      --replace "future>=0.16.0, <0.17" "future" \
-      --replace "tenacity==4.12.0" "tenacity" \
-      --replace "text-unidecode==1.2" "text-unidecode" \
-      --replace "tzlocal>=1.4,<2.0.0" "tzlocal" \
-      --replace "sqlalchemy~=1.3" "sqlalchemy" \
-      --replace "gunicorn>=19.5.0, <20.0" "gunicorn"
-
-    # dumb-init is only needed for CI and Docker, not relevant for NixOS.
-    substituteInPlace setup.py \
-      --replace "'dumb-init>=1.2.2'," ""
-
-    substituteInPlace tests/core.py \
+      --replace "flask-wtf>=0.14.3, <0.15" "flask-wtf" \
+      --replace "jinja2>=2.10.1, <2.12.0" "jinja2" \
+      --replace "attrs>=20.0, <21.0" "attrs" \
+      --replace "cattrs~=1.1, <1.7.0" "cattrs" \
+      --replace "markupsafe>=1.1.1, <2.0" "markupsafe" \
+      --replace "docutils<0.17" "docutils" \
+      --replace "sqlalchemy>=1.3.18, <1.4" "sqlalchemy" \
+      --replace "sqlalchemy_jsonfield~=1.0" "sqlalchemy-jsonfield" \
+      --replace "werkzeug~=1.0, >=1.0.1" "werkzeug" \
+      --replace "itsdangerous>=1.1.0, <2.0" "itsdangerous"
+
+    substituteInPlace tests/core/test_core.py \
       --replace "/bin/bash" "${stdenv.shell}"
   '';
 
@@ -174,11 +211,14 @@ buildPythonPackage rec {
    export PATH=$PATH:$out/bin
 
    airflow version
-   airflow initdb
-   airflow resetdb -y
-   nosetests tests.core.CoreTest
-   ## all tests
-   # nosetests --cover-package=airflow
+   airflow db init
+   airflow db reset -y
+
+   pytest tests/core/test_core.py
+  '';
+
+  postInstall = ''
+    cp -rv ${airflow-frontend}/static/dist $out/lib/${python.libPrefix}/site-packages/airflow/www/static
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/apache-airflow/package.json b/nixpkgs/pkgs/development/python-modules/apache-airflow/package.json
new file mode 100644
index 000000000000..f9dad24a06f9
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/apache-airflow/package.json
@@ -0,0 +1,80 @@
+{
+  "name": "airflow-frontend",
+  "version": "2.1.1rc1",
+  "description": "Apache Airflow is a platform to programmatically author, schedule and monitor workflows.",
+  "scripts": {
+    "test": "echo \"Error: no test specified\" && exit 1",
+    "dev": "NODE_ENV=dev webpack --watch --colors --progress --debug --output-pathinfo --devtool eval-cheap-source-map --mode development",
+    "prod": "NODE_ENV=production node --max_old_space_size=4096 ./node_modules/webpack/bin/webpack.js -p --colors --progress",
+    "build": "NODE_ENV=production webpack --colors --progress",
+    "lint": "eslint --ignore-path=.eslintignore --ext .js,.html .",
+    "lint:fix": "eslint --fix --ignore-path=.eslintignore --ext .js,.html ."
+  },
+  "author": "Apache",
+  "license": "Apache-2.0",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/apache/airflow.git"
+  },
+  "homepage": "https://airflow.apache.org/",
+  "keywords": [
+    "big",
+    "data",
+    "workflow",
+    "airflow",
+    "d3",
+    "nerds",
+    "database",
+    "flask"
+  ],
+  "devDependencies": {
+    "babel": "^6.23.0",
+    "babel-core": "^6.26.3",
+    "babel-eslint": "^10.1.0",
+    "babel-loader": "^8.1.0",
+    "babel-plugin-css-modules-transform": "^1.6.1",
+    "babel-polyfill": "^6.26.0",
+    "clean-webpack-plugin": "^3.0.0",
+    "copy-webpack-plugin": "^6.0.3",
+    "css-loader": "^3.4.2",
+    "eslint": "^7.5.0",
+    "eslint-config-airbnb-base": "^14.2.0",
+    "eslint-plugin-html": "^6.0.2",
+    "eslint-plugin-import": "^2.22.0",
+    "eslint-plugin-node": "^11.1.0",
+    "eslint-plugin-promise": "^4.2.1",
+    "eslint-plugin-standard": "^4.0.1",
+    "file-loader": "^6.0.0",
+    "imports-loader": "^1.1.0",
+    "mini-css-extract-plugin": "1.6.0",
+    "moment-locales-webpack-plugin": "^1.2.0",
+    "optimize-css-assets-webpack-plugin": "6.0.0",
+    "style-loader": "^1.2.1",
+    "stylelint": "^13.6.1",
+    "stylelint-config-standard": "^20.0.0",
+    "url-loader": "4.1.0",
+    "webpack": "^4.16.3",
+    "webpack-cli": "^3.1.0",
+    "webpack-manifest-plugin": "^2.2.0"
+  },
+  "dependencies": {
+    "bootstrap-3-typeahead": "^4.0.2",
+    "codemirror": "^5.59.1",
+    "d3": "^3.4.4",
+    "d3-shape": "^2.1.0",
+    "d3-tip": "^0.9.1",
+    "dagre-d3": "^0.6.4",
+    "datatables.net": "^1.10.23",
+    "datatables.net-bs": "^1.10.23",
+    "eonasdan-bootstrap-datetimepicker": "^4.17.47",
+    "jquery": ">=3.4.0",
+    "jshint": "^2.12.0",
+    "moment-timezone": "^0.5.28",
+    "nvd3": "^1.8.6",
+    "redoc": "^2.0.0-rc.48",
+    "url-search-params-polyfill": "^8.1.0"
+  },
+  "resolutions": {
+    "lodash": "^4.17.21"
+  }
+}
diff --git a/nixpkgs/pkgs/development/python-modules/apache-airflow/yarn.lock b/nixpkgs/pkgs/development/python-modules/apache-airflow/yarn.lock
new file mode 100644
index 000000000000..df97316e2d9f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/apache-airflow/yarn.lock
@@ -0,0 +1,7740 @@
+# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
+# yarn lockfile v1
+
+
+"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13":
+  version "7.12.13"
+  resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.13.tgz#dcfc826beef65e75c50e21d3837d7d95798dd658"
+  integrity sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==
+  dependencies:
+    "@babel/highlight" "^7.12.13"
+
+"@babel/code-frame@^7.10.4":
+  version "7.10.4"
+  resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a"
+  integrity sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==
+  dependencies:
+    "@babel/highlight" "^7.10.4"
+
+"@babel/compat-data@^7.13.15":
+  version "7.14.0"
+  resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.0.tgz#a901128bce2ad02565df95e6ecbf195cf9465919"
+  integrity sha512-vu9V3uMM/1o5Hl5OekMUowo3FqXLJSw+s+66nt0fSWVWTtmosdzn45JHOB3cPtZoe6CTBDzvSw0RdOY85Q37+Q==
+
+"@babel/core@>=7.9.0":
+  version "7.14.0"
+  resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.14.0.tgz#47299ff3ec8d111b493f1a9d04bf88c04e728d88"
+  integrity sha512-8YqpRig5NmIHlMLw09zMlPTvUVMILjqCOtVgu+TVNWEBvy9b5I3RRyhqnrV4hjgEK7n8P9OqvkWJAFmEL6Wwfw==
+  dependencies:
+    "@babel/code-frame" "^7.12.13"
+    "@babel/generator" "^7.14.0"
+    "@babel/helper-compilation-targets" "^7.13.16"
+    "@babel/helper-module-transforms" "^7.14.0"
+    "@babel/helpers" "^7.14.0"
+    "@babel/parser" "^7.14.0"
+    "@babel/template" "^7.12.13"
+    "@babel/traverse" "^7.14.0"
+    "@babel/types" "^7.14.0"
+    convert-source-map "^1.7.0"
+    debug "^4.1.0"
+    gensync "^1.0.0-beta.2"
+    json5 "^2.1.2"
+    semver "^6.3.0"
+    source-map "^0.5.0"
+
+"@babel/generator@^7.10.5":
+  version "7.10.5"
+  resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.10.5.tgz#1b903554bc8c583ee8d25f1e8969732e6b829a69"
+  integrity sha512-3vXxr3FEW7E7lJZiWQ3bM4+v/Vyr9C+hpolQ8BGFr9Y8Ri2tFLWTixmwKBafDujO1WVah4fhZBeU1bieKdghig==
+  dependencies:
+    "@babel/types" "^7.10.5"
+    jsesc "^2.5.1"
+    source-map "^0.5.0"
+
+"@babel/generator@^7.14.0":
+  version "7.14.1"
+  resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.14.1.tgz#1f99331babd65700183628da186f36f63d615c93"
+  integrity sha512-TMGhsXMXCP/O1WtQmZjpEYDhCYC9vFhayWZPJSZCGkPJgUqX0rF0wwtrYvnzVxIjcF80tkUertXVk5cwqi5cAQ==
+  dependencies:
+    "@babel/types" "^7.14.1"
+    jsesc "^2.5.1"
+    source-map "^0.5.0"
+
+"@babel/helper-compilation-targets@^7.13.16":
+  version "7.13.16"
+  resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.16.tgz#6e91dccf15e3f43e5556dffe32d860109887563c"
+  integrity sha512-3gmkYIrpqsLlieFwjkGgLaSHmhnvlAYzZLlYVjlW+QwI+1zE17kGxuJGmIqDQdYp56XdmGeD+Bswx0UTyG18xA==
+  dependencies:
+    "@babel/compat-data" "^7.13.15"
+    "@babel/helper-validator-option" "^7.12.17"
+    browserslist "^4.14.5"
+    semver "^6.3.0"
+
+"@babel/helper-function-name@^7.10.4":
+  version "7.10.4"
+  resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz#d2d3b20c59ad8c47112fa7d2a94bc09d5ef82f1a"
+  integrity sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==
+  dependencies:
+    "@babel/helper-get-function-arity" "^7.10.4"
+    "@babel/template" "^7.10.4"
+    "@babel/types" "^7.10.4"
+
+"@babel/helper-function-name@^7.12.13":
+  version "7.12.13"
+  resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz#93ad656db3c3c2232559fd7b2c3dbdcbe0eb377a"
+  integrity sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==
+  dependencies:
+    "@babel/helper-get-function-arity" "^7.12.13"
+    "@babel/template" "^7.12.13"
+    "@babel/types" "^7.12.13"
+
+"@babel/helper-get-function-arity@^7.10.4":
+  version "7.10.4"
+  resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz#98c1cbea0e2332f33f9a4661b8ce1505b2c19ba2"
+  integrity sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==
+  dependencies:
+    "@babel/types" "^7.10.4"
+
+"@babel/helper-get-function-arity@^7.12.13":
+  version "7.12.13"
+  resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz#bc63451d403a3b3082b97e1d8b3fe5bd4091e583"
+  integrity sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==
+  dependencies:
+    "@babel/types" "^7.12.13"
+
+"@babel/helper-member-expression-to-functions@^7.13.12":
+  version "7.13.12"
+  resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz#dfe368f26d426a07299d8d6513821768216e6d72"
+  integrity sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==
+  dependencies:
+    "@babel/types" "^7.13.12"
+
+"@babel/helper-module-imports@^7.13.12":
+  version "7.13.12"
+  resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz#c6a369a6f3621cb25da014078684da9196b61977"
+  integrity sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==
+  dependencies:
+    "@babel/types" "^7.13.12"
+
+"@babel/helper-module-transforms@^7.14.0":
+  version "7.14.0"
+  resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.14.0.tgz#8fcf78be220156f22633ee204ea81f73f826a8ad"
+  integrity sha512-L40t9bxIuGOfpIGA3HNkJhU9qYrf4y5A5LUSw7rGMSn+pcG8dfJ0g6Zval6YJGd2nEjI7oP00fRdnhLKndx6bw==
+  dependencies:
+    "@babel/helper-module-imports" "^7.13.12"
+    "@babel/helper-replace-supers" "^7.13.12"
+    "@babel/helper-simple-access" "^7.13.12"
+    "@babel/helper-split-export-declaration" "^7.12.13"
+    "@babel/helper-validator-identifier" "^7.14.0"
+    "@babel/template" "^7.12.13"
+    "@babel/traverse" "^7.14.0"
+    "@babel/types" "^7.14.0"
+
+"@babel/helper-optimise-call-expression@^7.12.13":
+  version "7.12.13"
+  resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz#5c02d171b4c8615b1e7163f888c1c81c30a2aaea"
+  integrity sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==
+  dependencies:
+    "@babel/types" "^7.12.13"
+
+"@babel/helper-replace-supers@^7.13.12":
+  version "7.13.12"
+  resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz#6442f4c1ad912502481a564a7386de0c77ff3804"
+  integrity sha512-Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw==
+  dependencies:
+    "@babel/helper-member-expression-to-functions" "^7.13.12"
+    "@babel/helper-optimise-call-expression" "^7.12.13"
+    "@babel/traverse" "^7.13.0"
+    "@babel/types" "^7.13.12"
+
+"@babel/helper-simple-access@^7.13.12":
+  version "7.13.12"
+  resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz#dd6c538afb61819d205a012c31792a39c7a5eaf6"
+  integrity sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA==
+  dependencies:
+    "@babel/types" "^7.13.12"
+
+"@babel/helper-split-export-declaration@^7.10.4":
+  version "7.10.4"
+  resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.4.tgz#2c70576eaa3b5609b24cb99db2888cc3fc4251d1"
+  integrity sha512-pySBTeoUff56fL5CBU2hWm9TesA4r/rOkI9DyJLvvgz09MB9YtfIYe3iBriVaYNaPe+Alua0vBIOVOLs2buWhg==
+  dependencies:
+    "@babel/types" "^7.10.4"
+
+"@babel/helper-split-export-declaration@^7.12.13":
+  version "7.12.13"
+  resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz#e9430be00baf3e88b0e13e6f9d4eaf2136372b05"
+  integrity sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==
+  dependencies:
+    "@babel/types" "^7.12.13"
+
+"@babel/helper-validator-identifier@^7.10.4", "@babel/helper-validator-identifier@^7.14.0":
+  version "7.14.0"
+  resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz#d26cad8a47c65286b15df1547319a5d0bcf27288"
+  integrity sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==
+
+"@babel/helper-validator-option@^7.12.17":
+  version "7.12.17"
+  resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz#d1fbf012e1a79b7eebbfdc6d270baaf8d9eb9831"
+  integrity sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw==
+
+"@babel/helpers@^7.14.0":
+  version "7.14.0"
+  resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.14.0.tgz#ea9b6be9478a13d6f961dbb5f36bf75e2f3b8f62"
+  integrity sha512-+ufuXprtQ1D1iZTO/K9+EBRn+qPWMJjZSw/S0KlFrxCw4tkrzv9grgpDHkY9MeQTjTY8i2sp7Jep8DfU6tN9Mg==
+  dependencies:
+    "@babel/template" "^7.12.13"
+    "@babel/traverse" "^7.14.0"
+    "@babel/types" "^7.14.0"
+
+"@babel/highlight@^7.10.4", "@babel/highlight@^7.12.13":
+  version "7.14.0"
+  resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.0.tgz#3197e375711ef6bf834e67d0daec88e4f46113cf"
+  integrity sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==
+  dependencies:
+    "@babel/helper-validator-identifier" "^7.14.0"
+    chalk "^2.0.0"
+    js-tokens "^4.0.0"
+
+"@babel/parser@^7.10.4", "@babel/parser@^7.10.5", "@babel/parser@^7.7.0":
+  version "7.10.5"
+  resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.10.5.tgz#e7c6bf5a7deff957cec9f04b551e2762909d826b"
+  integrity sha512-wfryxy4bE1UivvQKSQDU4/X6dr+i8bctjUjj8Zyt3DQy7NtPizJXT8M52nqpNKL+nq2PW8lxk4ZqLj0fD4B4hQ==
+
+"@babel/parser@^7.12.13", "@babel/parser@^7.14.0":
+  version "7.14.1"
+  resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.1.tgz#1bd644b5db3f5797c4479d89ec1817fe02b84c47"
+  integrity sha512-muUGEKu8E/ftMTPlNp+mc6zL3E9zKWmF5sDHZ5MSsoTP9Wyz64AhEf9kD08xYJ7w6Hdcu8H550ircnPyWSIF0Q==
+
+"@babel/runtime@^7.0.0":
+  version "7.10.5"
+  resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.10.5.tgz#303d8bd440ecd5a491eae6117fd3367698674c5c"
+  integrity sha512-otddXKhdNn7d0ptoFRHtMLa8LqDxLYwTjB4nYgM1yy5N6gU/MUf8zqyyLltCH3yAVitBzmwK4us+DD0l/MauAg==
+  dependencies:
+    regenerator-runtime "^0.13.4"
+
+"@babel/runtime@^7.12.5":
+  version "7.13.9"
+  resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.13.9.tgz#97dbe2116e2630c489f22e0656decd60aaa1fcee"
+  integrity sha512-aY2kU+xgJ3dJ1eU6FMB9EH8dIe8dmusF1xEku52joLvw6eAFN0AI+WxCLDnpev2LEejWBAy2sBvBOBAjI3zmvA==
+  dependencies:
+    regenerator-runtime "^0.13.4"
+
+"@babel/template@^7.10.4":
+  version "7.10.4"
+  resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.10.4.tgz#3251996c4200ebc71d1a8fc405fba940f36ba278"
+  integrity sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==
+  dependencies:
+    "@babel/code-frame" "^7.10.4"
+    "@babel/parser" "^7.10.4"
+    "@babel/types" "^7.10.4"
+
+"@babel/template@^7.12.13":
+  version "7.12.13"
+  resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.12.13.tgz#530265be8a2589dbb37523844c5bcb55947fb327"
+  integrity sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==
+  dependencies:
+    "@babel/code-frame" "^7.12.13"
+    "@babel/parser" "^7.12.13"
+    "@babel/types" "^7.12.13"
+
+"@babel/traverse@^7.13.0", "@babel/traverse@^7.14.0":
+  version "7.14.0"
+  resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.14.0.tgz#cea0dc8ae7e2b1dec65f512f39f3483e8cc95aef"
+  integrity sha512-dZ/a371EE5XNhTHomvtuLTUyx6UEoJmYX+DT5zBCQN3McHemsuIaKKYqsc/fs26BEkHs/lBZy0J571LP5z9kQA==
+  dependencies:
+    "@babel/code-frame" "^7.12.13"
+    "@babel/generator" "^7.14.0"
+    "@babel/helper-function-name" "^7.12.13"
+    "@babel/helper-split-export-declaration" "^7.12.13"
+    "@babel/parser" "^7.14.0"
+    "@babel/types" "^7.14.0"
+    debug "^4.1.0"
+    globals "^11.1.0"
+
+"@babel/traverse@^7.7.0":
+  version "7.10.5"
+  resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.10.5.tgz#77ce464f5b258be265af618d8fddf0536f20b564"
+  integrity sha512-yc/fyv2gUjPqzTz0WHeRJH2pv7jA9kA7mBX2tXl/x5iOE81uaVPuGPtaYk7wmkx4b67mQ7NqI8rmT2pF47KYKQ==
+  dependencies:
+    "@babel/code-frame" "^7.10.4"
+    "@babel/generator" "^7.10.5"
+    "@babel/helper-function-name" "^7.10.4"
+    "@babel/helper-split-export-declaration" "^7.10.4"
+    "@babel/parser" "^7.10.5"
+    "@babel/types" "^7.10.5"
+    debug "^4.1.0"
+    globals "^11.1.0"
+    lodash "^4.17.19"
+
+"@babel/types@^7.10.4", "@babel/types@^7.10.5", "@babel/types@^7.7.0":
+  version "7.10.5"
+  resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.10.5.tgz#d88ae7e2fde86bfbfe851d4d81afa70a997b5d15"
+  integrity sha512-ixV66KWfCI6GKoA/2H9v6bQdbfXEwwpOdQ8cRvb4F+eyvhlaHxWFMQB4+3d9QFJXZsiiiqVrewNV0DFEQpyT4Q==
+  dependencies:
+    "@babel/helper-validator-identifier" "^7.10.4"
+    lodash "^4.17.19"
+    to-fast-properties "^2.0.0"
+
+"@babel/types@^7.12.13", "@babel/types@^7.13.12", "@babel/types@^7.14.0", "@babel/types@^7.14.1":
+  version "7.14.1"
+  resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.14.1.tgz#095bd12f1c08ab63eff6e8f7745fa7c9cc15a9db"
+  integrity sha512-S13Qe85fzLs3gYRUnrpyeIrBJIMYv33qSTg1qoBwiG6nPKwUWAD9odSzWhEedpwOIzSEI6gbdQIWEMiCI42iBA==
+  dependencies:
+    "@babel/helper-validator-identifier" "^7.14.0"
+    to-fast-properties "^2.0.0"
+
+"@exodus/schemasafe@^1.0.0-rc.2":
+  version "1.0.0-rc.3"
+  resolved "https://registry.yarnpkg.com/@exodus/schemasafe/-/schemasafe-1.0.0-rc.3.tgz#dda2fbf3dafa5ad8c63dadff7e01d3fdf4736025"
+  integrity sha512-GoXw0U2Qaa33m3eUcxuHnHpNvHjNlLo0gtV091XBpaRINaB4X6FGCG5XKxSFNFiPpugUDqNruHzaqpTdDm4AOg==
+
+"@nodelib/fs.scandir@2.1.4":
+  version "2.1.4"
+  resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz#d4b3549a5db5de2683e0c1071ab4f140904bbf69"
+  integrity sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==
+  dependencies:
+    "@nodelib/fs.stat" "2.0.4"
+    run-parallel "^1.1.9"
+
+"@nodelib/fs.stat@2.0.4", "@nodelib/fs.stat@^2.0.2":
+  version "2.0.4"
+  resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz#a3f2dd61bab43b8db8fa108a121cfffe4c676655"
+  integrity sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q==
+
+"@nodelib/fs.walk@^1.2.3":
+  version "1.2.6"
+  resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz#cce9396b30aa5afe9e3756608f5831adcb53d063"
+  integrity sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==
+  dependencies:
+    "@nodelib/fs.scandir" "2.1.4"
+    fastq "^1.6.0"
+
+"@npmcli/move-file@^1.0.1":
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.0.1.tgz#de103070dac0f48ce49cf6693c23af59c0f70464"
+  integrity sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw==
+  dependencies:
+    mkdirp "^1.0.4"
+
+"@redocly/react-dropdown-aria@^2.0.11":
+  version "2.0.11"
+  resolved "https://registry.yarnpkg.com/@redocly/react-dropdown-aria/-/react-dropdown-aria-2.0.11.tgz#532b864b329237e646abe45d0f8edc923e77370a"
+  integrity sha512-rmuSC2JFFl4DkPDdGVrmffT9KcbG2AB5jvhxPIrOc1dO9mHRMUUftQY35KZlvWqqSSqVn+AM+J9dhiTo1ZqR8A==
+
+"@stylelint/postcss-css-in-js@^0.37.2":
+  version "0.37.2"
+  resolved "https://registry.yarnpkg.com/@stylelint/postcss-css-in-js/-/postcss-css-in-js-0.37.2.tgz#7e5a84ad181f4234a2480803422a47b8749af3d2"
+  integrity sha512-nEhsFoJurt8oUmieT8qy4nk81WRHmJynmVwn/Vts08PL9fhgIsMhk1GId5yAN643OzqEEb5S/6At2TZW7pqPDA==
+  dependencies:
+    "@babel/core" ">=7.9.0"
+
+"@stylelint/postcss-markdown@^0.36.2":
+  version "0.36.2"
+  resolved "https://registry.yarnpkg.com/@stylelint/postcss-markdown/-/postcss-markdown-0.36.2.tgz#0a540c4692f8dcdfc13c8e352c17e7bfee2bb391"
+  integrity sha512-2kGbqUVJUGE8dM+bMzXG/PYUWKkjLIkRLWNh39OaADkiabDRdw8ATFCgbMz5xdIcvwspPAluSL7uY+ZiTWdWmQ==
+  dependencies:
+    remark "^13.0.0"
+    unist-util-find-all-after "^3.0.2"
+
+"@trysound/sax@0.1.1":
+  version "0.1.1"
+  resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.1.1.tgz#3348564048e7a2d7398c935d466c0414ebb6a669"
+  integrity sha512-Z6DoceYb/1xSg5+e+ZlPZ9v0N16ZvZ+wYMraFue4HYrE4ttONKtsvruIRf6t9TBR0YvSOfi1hUU0fJfBLCDYow==
+
+"@types/anymatch@*":
+  version "1.3.1"
+  resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a"
+  integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA==
+
+"@types/color-name@^1.1.1":
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
+  integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
+
+"@types/glob@^7.1.1":
+  version "7.1.3"
+  resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.3.tgz#e6ba80f36b7daad2c685acd9266382e68985c183"
+  integrity sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==
+  dependencies:
+    "@types/minimatch" "*"
+    "@types/node" "*"
+
+"@types/json-schema@^7.0.4":
+  version "7.0.5"
+  resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.5.tgz#dcce4430e64b443ba8945f0290fb564ad5bac6dd"
+  integrity sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==
+
+"@types/json-schema@^7.0.6":
+  version "7.0.7"
+  resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.7.tgz#98a993516c859eb0d5c4c8f098317a9ea68db9ad"
+  integrity sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==
+
+"@types/json5@^0.0.29":
+  version "0.0.29"
+  resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee"
+  integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4=
+
+"@types/mdast@^3.0.0":
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.3.tgz#2d7d671b1cd1ea3deb306ea75036c2a0407d2deb"
+  integrity sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw==
+  dependencies:
+    "@types/unist" "*"
+
+"@types/minimatch@*":
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d"
+  integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==
+
+"@types/minimist@^1.2.0":
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.1.tgz#283f669ff76d7b8260df8ab7a4262cc83d988256"
+  integrity sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==
+
+"@types/node@*":
+  version "14.0.24"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.24.tgz#b0f86f58564fa02a28b68f8b55d4cdec42e3b9d6"
+  integrity sha512-btt/oNOiDWcSuI721MdL8VQGnjsKjlTMdrKyTcLCKeQp/n4AAMFJ961wMbp+09y8WuGPClDEv07RIItdXKIXAA==
+
+"@types/node@^13.11.1":
+  version "13.13.14"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-13.13.14.tgz#20cd7d2a98f0c3b08d379f4ea9e6b315d2019529"
+  integrity sha512-Az3QsOt1U/K1pbCQ0TXGELTuTkPLOiFIQf3ILzbOyo0FqgV9SxRnxbxM5QlAveERZMHpZY+7u3Jz2tKyl+yg6g==
+
+"@types/normalize-package-data@^2.4.0":
+  version "2.4.0"
+  resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e"
+  integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==
+
+"@types/parse-json@^4.0.0":
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0"
+  integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==
+
+"@types/source-list-map@*":
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9"
+  integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==
+
+"@types/tapable@*":
+  version "1.0.6"
+  resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.6.tgz#a9ca4b70a18b270ccb2bc0aaafefd1d486b7ea74"
+  integrity sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA==
+
+"@types/uglify-js@*":
+  version "3.9.3"
+  resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.9.3.tgz#d94ed608e295bc5424c9600e6b8565407b6b4b6b"
+  integrity sha512-KswB5C7Kwduwjj04Ykz+AjvPcfgv/37Za24O2EDzYNbwyzOo8+ydtvzUfZ5UMguiVu29Gx44l1A6VsPPcmYu9w==
+  dependencies:
+    source-map "^0.6.1"
+
+"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2":
+  version "2.0.3"
+  resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e"
+  integrity sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ==
+
+"@types/webpack-sources@*":
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-1.4.0.tgz#e58f1f05f87d39a5c64cf85705bdbdbb94d4d57e"
+  integrity sha512-c88dKrpSle9BtTqR6ifdaxu1Lvjsl3C5OsfvuUbUwdXymshv1TkufUAXBajCCUM/f/TmnkZC/Esb03MinzSiXQ==
+  dependencies:
+    "@types/node" "*"
+    "@types/source-list-map" "*"
+    source-map "^0.7.3"
+
+"@types/webpack@^4.4.31":
+  version "4.41.21"
+  resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.21.tgz#cc685b332c33f153bb2f5fc1fa3ac8adeb592dee"
+  integrity sha512-2j9WVnNrr/8PLAB5csW44xzQSJwS26aOnICsP3pSGCEdsu6KYtfQ6QJsVUKHWRnm1bL7HziJsfh5fHqth87yKA==
+  dependencies:
+    "@types/anymatch" "*"
+    "@types/node" "*"
+    "@types/tapable" "*"
+    "@types/uglify-js" "*"
+    "@types/webpack-sources" "*"
+    source-map "^0.6.0"
+
+"@webassemblyjs/ast@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964"
+  integrity sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==
+  dependencies:
+    "@webassemblyjs/helper-module-context" "1.9.0"
+    "@webassemblyjs/helper-wasm-bytecode" "1.9.0"
+    "@webassemblyjs/wast-parser" "1.9.0"
+
+"@webassemblyjs/floating-point-hex-parser@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4"
+  integrity sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==
+
+"@webassemblyjs/helper-api-error@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2"
+  integrity sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==
+
+"@webassemblyjs/helper-buffer@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00"
+  integrity sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==
+
+"@webassemblyjs/helper-code-frame@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz#647f8892cd2043a82ac0c8c5e75c36f1d9159f27"
+  integrity sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==
+  dependencies:
+    "@webassemblyjs/wast-printer" "1.9.0"
+
+"@webassemblyjs/helper-fsm@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8"
+  integrity sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==
+
+"@webassemblyjs/helper-module-context@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz#25d8884b76839871a08a6c6f806c3979ef712f07"
+  integrity sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==
+  dependencies:
+    "@webassemblyjs/ast" "1.9.0"
+
+"@webassemblyjs/helper-wasm-bytecode@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790"
+  integrity sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==
+
+"@webassemblyjs/helper-wasm-section@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346"
+  integrity sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==
+  dependencies:
+    "@webassemblyjs/ast" "1.9.0"
+    "@webassemblyjs/helper-buffer" "1.9.0"
+    "@webassemblyjs/helper-wasm-bytecode" "1.9.0"
+    "@webassemblyjs/wasm-gen" "1.9.0"
+
+"@webassemblyjs/ieee754@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4"
+  integrity sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==
+  dependencies:
+    "@xtuc/ieee754" "^1.2.0"
+
+"@webassemblyjs/leb128@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95"
+  integrity sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==
+  dependencies:
+    "@xtuc/long" "4.2.2"
+
+"@webassemblyjs/utf8@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab"
+  integrity sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==
+
+"@webassemblyjs/wasm-edit@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz#3fe6d79d3f0f922183aa86002c42dd256cfee9cf"
+  integrity sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==
+  dependencies:
+    "@webassemblyjs/ast" "1.9.0"
+    "@webassemblyjs/helper-buffer" "1.9.0"
+    "@webassemblyjs/helper-wasm-bytecode" "1.9.0"
+    "@webassemblyjs/helper-wasm-section" "1.9.0"
+    "@webassemblyjs/wasm-gen" "1.9.0"
+    "@webassemblyjs/wasm-opt" "1.9.0"
+    "@webassemblyjs/wasm-parser" "1.9.0"
+    "@webassemblyjs/wast-printer" "1.9.0"
+
+"@webassemblyjs/wasm-gen@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c"
+  integrity sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==
+  dependencies:
+    "@webassemblyjs/ast" "1.9.0"
+    "@webassemblyjs/helper-wasm-bytecode" "1.9.0"
+    "@webassemblyjs/ieee754" "1.9.0"
+    "@webassemblyjs/leb128" "1.9.0"
+    "@webassemblyjs/utf8" "1.9.0"
+
+"@webassemblyjs/wasm-opt@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61"
+  integrity sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==
+  dependencies:
+    "@webassemblyjs/ast" "1.9.0"
+    "@webassemblyjs/helper-buffer" "1.9.0"
+    "@webassemblyjs/wasm-gen" "1.9.0"
+    "@webassemblyjs/wasm-parser" "1.9.0"
+
+"@webassemblyjs/wasm-parser@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e"
+  integrity sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==
+  dependencies:
+    "@webassemblyjs/ast" "1.9.0"
+    "@webassemblyjs/helper-api-error" "1.9.0"
+    "@webassemblyjs/helper-wasm-bytecode" "1.9.0"
+    "@webassemblyjs/ieee754" "1.9.0"
+    "@webassemblyjs/leb128" "1.9.0"
+    "@webassemblyjs/utf8" "1.9.0"
+
+"@webassemblyjs/wast-parser@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz#3031115d79ac5bd261556cecc3fa90a3ef451914"
+  integrity sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==
+  dependencies:
+    "@webassemblyjs/ast" "1.9.0"
+    "@webassemblyjs/floating-point-hex-parser" "1.9.0"
+    "@webassemblyjs/helper-api-error" "1.9.0"
+    "@webassemblyjs/helper-code-frame" "1.9.0"
+    "@webassemblyjs/helper-fsm" "1.9.0"
+    "@xtuc/long" "4.2.2"
+
+"@webassemblyjs/wast-printer@1.9.0":
+  version "1.9.0"
+  resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899"
+  integrity sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==
+  dependencies:
+    "@webassemblyjs/ast" "1.9.0"
+    "@webassemblyjs/wast-parser" "1.9.0"
+    "@xtuc/long" "4.2.2"
+
+"@xtuc/ieee754@^1.2.0":
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790"
+  integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==
+
+"@xtuc/long@4.2.2":
+  version "4.2.2"
+  resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d"
+  integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==
+
+acorn-jsx@^5.2.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz#4c66069173d6fdd68ed85239fc256226182b2ebe"
+  integrity sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==
+
+acorn@^6.4.1:
+  version "6.4.1"
+  resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474"
+  integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==
+
+acorn@^7.3.1:
+  version "7.3.1"
+  resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.3.1.tgz#85010754db53c3fbaf3b9ea3e083aa5c5d147ffd"
+  integrity sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==
+
+aggregate-error@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.0.1.tgz#db2fe7246e536f40d9b5442a39e117d7dd6a24e0"
+  integrity sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==
+  dependencies:
+    clean-stack "^2.0.0"
+    indent-string "^4.0.0"
+
+ajv-errors@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d"
+  integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==
+
+ajv-keywords@^3.1.0, ajv-keywords@^3.4.1:
+  version "3.5.1"
+  resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.1.tgz#b83ca89c5d42d69031f424cad49aada0236c6957"
+  integrity sha512-KWcq3xN8fDjSB+IMoh2VaXVhRI0BBGxoYp3rx7Pkb6z0cFjYR9Q9l4yZqqals0/zsioCmocC5H6UvsGD4MoIBA==
+
+ajv-keywords@^3.5.2:
+  version "3.5.2"
+  resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d"
+  integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==
+
+ajv@^5.5.2:
+  version "5.5.2"
+  resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965"
+  integrity sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=
+  dependencies:
+    co "^4.6.0"
+    fast-deep-equal "^1.0.0"
+    fast-json-stable-stringify "^2.0.0"
+    json-schema-traverse "^0.3.0"
+
+ajv@^6.1.0, ajv@^6.10.0, ajv@^6.12.2:
+  version "6.12.3"
+  resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.3.tgz#18c5af38a111ddeb4f2697bd78d68abc1cabd706"
+  integrity sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==
+  dependencies:
+    fast-deep-equal "^3.1.1"
+    fast-json-stable-stringify "^2.0.0"
+    json-schema-traverse "^0.4.1"
+    uri-js "^4.2.2"
+
+ajv@^6.10.2, ajv@^6.12.5:
+  version "6.12.6"
+  resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
+  integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
+  dependencies:
+    fast-deep-equal "^3.1.1"
+    fast-json-stable-stringify "^2.0.0"
+    json-schema-traverse "^0.4.1"
+    uri-js "^4.2.2"
+
+ajv@^8.0.1:
+  version "8.3.0"
+  resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.3.0.tgz#25ee7348e32cdc4a1dbb38256bf6bdc451dd577c"
+  integrity sha512-RYE7B5An83d7eWnDR8kbdaIFqmKCNsP16ay1hDbJEU+sa0e3H9SebskCt0Uufem6cfAVu7Col6ubcn/W+Sm8/Q==
+  dependencies:
+    fast-deep-equal "^3.1.1"
+    json-schema-traverse "^1.0.0"
+    require-from-string "^2.0.2"
+    uri-js "^4.2.2"
+
+alphanum-sort@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3"
+  integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=
+
+ansi-colors@^4.1.1:
+  version "4.1.1"
+  resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348"
+  integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==
+
+ansi-regex@^2.0.0:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
+  integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
+
+ansi-regex@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997"
+  integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==
+
+ansi-regex@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75"
+  integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==
+
+ansi-styles@^2.2.1:
+  version "2.2.1"
+  resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
+  integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=
+
+ansi-styles@^3.2.0, ansi-styles@^3.2.1:
+  version "3.2.1"
+  resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
+  integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
+  dependencies:
+    color-convert "^1.9.0"
+
+ansi-styles@^4.0.0:
+  version "4.2.1"
+  resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359"
+  integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==
+  dependencies:
+    "@types/color-name" "^1.1.1"
+    color-convert "^2.0.1"
+
+ansi-styles@^4.1.0:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
+  integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
+  dependencies:
+    color-convert "^2.0.1"
+
+anymatch@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb"
+  integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==
+  dependencies:
+    micromatch "^3.1.4"
+    normalize-path "^2.1.1"
+
+anymatch@~3.1.1:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142"
+  integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==
+  dependencies:
+    normalize-path "^3.0.0"
+    picomatch "^2.0.4"
+
+aproba@^1.1.1:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
+  integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==
+
+argparse@^1.0.7:
+  version "1.0.10"
+  resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
+  integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
+  dependencies:
+    sprintf-js "~1.0.2"
+
+arr-diff@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520"
+  integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=
+
+arr-flatten@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1"
+  integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==
+
+arr-union@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4"
+  integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=
+
+array-includes@^3.1.1:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.1.tgz#cdd67e6852bdf9c1215460786732255ed2459348"
+  integrity sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.0"
+    is-string "^1.0.5"
+
+array-union@^1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39"
+  integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=
+  dependencies:
+    array-uniq "^1.0.1"
+
+array-union@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"
+  integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==
+
+array-uniq@^1.0.1:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
+  integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=
+
+array-unique@^0.3.2:
+  version "0.3.2"
+  resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"
+  integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=
+
+array.prototype.flat@^1.2.3:
+  version "1.2.3"
+  resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz#0de82b426b0318dbfdb940089e38b043d37f6c7b"
+  integrity sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.0-next.1"
+
+arrify@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
+  integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=
+
+asn1.js@^4.0.0:
+  version "4.10.1"
+  resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0"
+  integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==
+  dependencies:
+    bn.js "^4.0.0"
+    inherits "^2.0.1"
+    minimalistic-assert "^1.0.0"
+
+assert@^1.1.1:
+  version "1.5.0"
+  resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb"
+  integrity sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==
+  dependencies:
+    object-assign "^4.1.1"
+    util "0.10.3"
+
+assign-symbols@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"
+  integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=
+
+astral-regex@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9"
+  integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==
+
+astral-regex@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31"
+  integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==
+
+async-each@^1.0.1:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf"
+  integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==
+
+atob@^2.1.2:
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
+  integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
+
+autoprefixer@^9.8.6:
+  version "9.8.6"
+  resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.6.tgz#3b73594ca1bf9266320c5acf1588d74dea74210f"
+  integrity sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==
+  dependencies:
+    browserslist "^4.12.0"
+    caniuse-lite "^1.0.30001109"
+    colorette "^1.2.1"
+    normalize-range "^0.1.2"
+    num2fraction "^1.2.2"
+    postcss "^7.0.32"
+    postcss-value-parser "^4.1.0"
+
+babel-code-frame@^6.26.0:
+  version "6.26.0"
+  resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"
+  integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=
+  dependencies:
+    chalk "^1.1.3"
+    esutils "^2.0.2"
+    js-tokens "^3.0.2"
+
+babel-core@^6.26.0, babel-core@^6.26.3:
+  version "6.26.3"
+  resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207"
+  integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==
+  dependencies:
+    babel-code-frame "^6.26.0"
+    babel-generator "^6.26.0"
+    babel-helpers "^6.24.1"
+    babel-messages "^6.23.0"
+    babel-register "^6.26.0"
+    babel-runtime "^6.26.0"
+    babel-template "^6.26.0"
+    babel-traverse "^6.26.0"
+    babel-types "^6.26.0"
+    babylon "^6.18.0"
+    convert-source-map "^1.5.1"
+    debug "^2.6.9"
+    json5 "^0.5.1"
+    lodash "^4.17.4"
+    minimatch "^3.0.4"
+    path-is-absolute "^1.0.1"
+    private "^0.1.8"
+    slash "^1.0.0"
+    source-map "^0.5.7"
+
+babel-eslint@^10.1.0:
+  version "10.1.0"
+  resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232"
+  integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==
+  dependencies:
+    "@babel/code-frame" "^7.0.0"
+    "@babel/parser" "^7.7.0"
+    "@babel/traverse" "^7.7.0"
+    "@babel/types" "^7.7.0"
+    eslint-visitor-keys "^1.0.0"
+    resolve "^1.12.0"
+
+babel-generator@^6.26.0:
+  version "6.26.1"
+  resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90"
+  integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==
+  dependencies:
+    babel-messages "^6.23.0"
+    babel-runtime "^6.26.0"
+    babel-types "^6.26.0"
+    detect-indent "^4.0.0"
+    jsesc "^1.3.0"
+    lodash "^4.17.4"
+    source-map "^0.5.7"
+    trim-right "^1.0.1"
+
+babel-helpers@^6.24.1:
+  version "6.24.1"
+  resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2"
+  integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=
+  dependencies:
+    babel-runtime "^6.22.0"
+    babel-template "^6.24.1"
+
+babel-loader@^8.1.0:
+  version "8.1.0"
+  resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.1.0.tgz#c611d5112bd5209abe8b9fa84c3e4da25275f1c3"
+  integrity sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==
+  dependencies:
+    find-cache-dir "^2.1.0"
+    loader-utils "^1.4.0"
+    mkdirp "^0.5.3"
+    pify "^4.0.1"
+    schema-utils "^2.6.5"
+
+babel-messages@^6.23.0:
+  version "6.23.0"
+  resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e"
+  integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=
+  dependencies:
+    babel-runtime "^6.22.0"
+
+babel-plugin-css-modules-transform@^1.6.1:
+  version "1.6.2"
+  resolved "https://registry.yarnpkg.com/babel-plugin-css-modules-transform/-/babel-plugin-css-modules-transform-1.6.2.tgz#eecf4889637bf1c56cda25ee21df060775d1bd22"
+  integrity sha512-zBsI54N5n979vfYpqFzQ6oRwEiVcmLH5REyaincNW+Ecl52nvRsQPYIbDcJzHePrXI20YSRUw6G/qbPwZZDgfg==
+  dependencies:
+    css-modules-require-hook "^4.0.6"
+    mkdirp "^0.5.1"
+
+babel-polyfill@^6.26.0:
+  version "6.26.0"
+  resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.26.0.tgz#379937abc67d7895970adc621f284cd966cf2153"
+  integrity sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=
+  dependencies:
+    babel-runtime "^6.26.0"
+    core-js "^2.5.0"
+    regenerator-runtime "^0.10.5"
+
+babel-register@^6.26.0:
+  version "6.26.0"
+  resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071"
+  integrity sha1-btAhFz4vy0htestFxgCahW9kcHE=
+  dependencies:
+    babel-core "^6.26.0"
+    babel-runtime "^6.26.0"
+    core-js "^2.5.0"
+    home-or-tmp "^2.0.0"
+    lodash "^4.17.4"
+    mkdirp "^0.5.1"
+    source-map-support "^0.4.15"
+
+babel-runtime@^6.22.0, babel-runtime@^6.26.0:
+  version "6.26.0"
+  resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe"
+  integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4=
+  dependencies:
+    core-js "^2.4.0"
+    regenerator-runtime "^0.11.0"
+
+babel-template@^6.24.1, babel-template@^6.26.0:
+  version "6.26.0"
+  resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02"
+  integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=
+  dependencies:
+    babel-runtime "^6.26.0"
+    babel-traverse "^6.26.0"
+    babel-types "^6.26.0"
+    babylon "^6.18.0"
+    lodash "^4.17.4"
+
+babel-traverse@^6.26.0:
+  version "6.26.0"
+  resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee"
+  integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=
+  dependencies:
+    babel-code-frame "^6.26.0"
+    babel-messages "^6.23.0"
+    babel-runtime "^6.26.0"
+    babel-types "^6.26.0"
+    babylon "^6.18.0"
+    debug "^2.6.8"
+    globals "^9.18.0"
+    invariant "^2.2.2"
+    lodash "^4.17.4"
+
+babel-types@^6.26.0:
+  version "6.26.0"
+  resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497"
+  integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=
+  dependencies:
+    babel-runtime "^6.26.0"
+    esutils "^2.0.2"
+    lodash "^4.17.4"
+    to-fast-properties "^1.0.3"
+
+babel@^6.23.0:
+  version "6.23.0"
+  resolved "https://registry.yarnpkg.com/babel/-/babel-6.23.0.tgz#d0d1e7d803e974765beea3232d4e153c0efb90f4"
+  integrity sha1-0NHn2APpdHZb7qMjLU4VPA77kPQ=
+
+babylon@^6.18.0:
+  version "6.18.0"
+  resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3"
+  integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==
+
+bail@^1.0.0:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776"
+  integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==
+
+balanced-match@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
+  integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
+
+balanced-match@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-2.0.0.tgz#dc70f920d78db8b858535795867bf48f820633d9"
+  integrity sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==
+
+base64-js@^1.0.2:
+  version "1.3.1"
+  resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1"
+  integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==
+
+base@^0.11.1:
+  version "0.11.2"
+  resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f"
+  integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==
+  dependencies:
+    cache-base "^1.0.1"
+    class-utils "^0.3.5"
+    component-emitter "^1.2.1"
+    define-property "^1.0.0"
+    isobject "^3.0.1"
+    mixin-deep "^1.2.0"
+    pascalcase "^0.1.1"
+
+better-ajv-errors@^0.6.1, better-ajv-errors@^0.6.7:
+  version "0.6.7"
+  resolved "https://registry.yarnpkg.com/better-ajv-errors/-/better-ajv-errors-0.6.7.tgz#b5344af1ce10f434fe02fc4390a5a9c811e470d1"
+  integrity sha512-PYgt/sCzR4aGpyNy5+ViSQ77ognMnWq7745zM+/flYO4/Yisdtp9wDQW2IKCyVYPUxQt3E/b5GBSwfhd1LPdlg==
+  dependencies:
+    "@babel/code-frame" "^7.0.0"
+    "@babel/runtime" "^7.0.0"
+    chalk "^2.4.1"
+    core-js "^3.2.1"
+    json-to-ast "^2.0.3"
+    jsonpointer "^4.0.1"
+    leven "^3.1.0"
+
+big.js@^3.1.3:
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e"
+  integrity sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==
+
+big.js@^5.2.2:
+  version "5.2.2"
+  resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328"
+  integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==
+
+binary-extensions@^1.0.0:
+  version "1.13.1"
+  resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65"
+  integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==
+
+binary-extensions@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.1.0.tgz#30fa40c9e7fe07dbc895678cd287024dea241dd9"
+  integrity sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==
+
+bindings@^1.5.0:
+  version "1.5.0"
+  resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df"
+  integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==
+  dependencies:
+    file-uri-to-path "1.0.0"
+
+bluebird@^3.5.5:
+  version "3.7.2"
+  resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
+  integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==
+
+bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9:
+  version "4.12.0"
+  resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88"
+  integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==
+
+bn.js@^5.1.1:
+  version "5.1.2"
+  resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.1.2.tgz#c9686902d3c9a27729f43ab10f9d79c2004da7b0"
+  integrity sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==
+
+boolbase@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
+  integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24=
+
+bootstrap-3-typeahead@^4.0.2:
+  version "4.0.2"
+  resolved "https://registry.yarnpkg.com/bootstrap-3-typeahead/-/bootstrap-3-typeahead-4.0.2.tgz#cb1c969044856862096fc8c71cc21b3acbb50412"
+  integrity sha1-yxyWkESFaGIJb8jHHMIbOsu1BBI=
+
+bootstrap@^3.3:
+  version "3.4.1"
+  resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-3.4.1.tgz#c3a347d419e289ad11f4033e3c4132b87c081d72"
+  integrity sha512-yN5oZVmRCwe5aKwzRj6736nSmKDX7pLYwsXiCj/EYmo16hODaBiT4En5btW/jhBF/seV+XMx3aYwukYC3A49DA==
+
+brace-expansion@^1.1.7:
+  version "1.1.11"
+  resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
+  integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
+  dependencies:
+    balanced-match "^1.0.0"
+    concat-map "0.0.1"
+
+braces@^2.3.1, braces@^2.3.2:
+  version "2.3.2"
+  resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729"
+  integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==
+  dependencies:
+    arr-flatten "^1.1.0"
+    array-unique "^0.3.2"
+    extend-shallow "^2.0.1"
+    fill-range "^4.0.0"
+    isobject "^3.0.1"
+    repeat-element "^1.1.2"
+    snapdragon "^0.8.1"
+    snapdragon-node "^2.0.1"
+    split-string "^3.0.2"
+    to-regex "^3.0.1"
+
+braces@^3.0.1, braces@~3.0.2:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
+  integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
+  dependencies:
+    fill-range "^7.0.1"
+
+brorand@^1.0.1, brorand@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
+  integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=
+
+browserify-aes@^1.0.0, browserify-aes@^1.0.4:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48"
+  integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==
+  dependencies:
+    buffer-xor "^1.0.3"
+    cipher-base "^1.0.0"
+    create-hash "^1.1.0"
+    evp_bytestokey "^1.0.3"
+    inherits "^2.0.1"
+    safe-buffer "^5.0.1"
+
+browserify-cipher@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0"
+  integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==
+  dependencies:
+    browserify-aes "^1.0.4"
+    browserify-des "^1.0.0"
+    evp_bytestokey "^1.0.0"
+
+browserify-des@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c"
+  integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==
+  dependencies:
+    cipher-base "^1.0.1"
+    des.js "^1.0.0"
+    inherits "^2.0.1"
+    safe-buffer "^5.1.2"
+
+browserify-rsa@^4.0.0, browserify-rsa@^4.0.1:
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524"
+  integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=
+  dependencies:
+    bn.js "^4.1.0"
+    randombytes "^2.0.1"
+
+browserify-sign@^4.0.0:
+  version "4.2.0"
+  resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.0.tgz#545d0b1b07e6b2c99211082bf1b12cce7a0b0e11"
+  integrity sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA==
+  dependencies:
+    bn.js "^5.1.1"
+    browserify-rsa "^4.0.1"
+    create-hash "^1.2.0"
+    create-hmac "^1.1.7"
+    elliptic "^6.5.2"
+    inherits "^2.0.4"
+    parse-asn1 "^5.1.5"
+    readable-stream "^3.6.0"
+    safe-buffer "^5.2.0"
+
+browserify-zlib@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f"
+  integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==
+  dependencies:
+    pako "~1.0.5"
+
+browserslist@^4.0.0:
+  version "4.14.5"
+  resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.5.tgz#1c751461a102ddc60e40993639b709be7f2c4015"
+  integrity sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA==
+  dependencies:
+    caniuse-lite "^1.0.30001135"
+    electron-to-chromium "^1.3.571"
+    escalade "^3.1.0"
+    node-releases "^1.1.61"
+
+browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.16.0, browserslist@^4.16.6:
+  version "4.16.6"
+  resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz#d7901277a5a88e554ed305b183ec9b0c08f66fa2"
+  integrity sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==
+  dependencies:
+    caniuse-lite "^1.0.30001219"
+    colorette "^1.2.2"
+    electron-to-chromium "^1.3.723"
+    escalade "^3.1.1"
+    node-releases "^1.1.71"
+
+buffer-from@^1.0.0:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
+  integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==
+
+buffer-xor@^1.0.3:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9"
+  integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=
+
+buffer@^4.3.0:
+  version "4.9.2"
+  resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8"
+  integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==
+  dependencies:
+    base64-js "^1.0.2"
+    ieee754 "^1.1.4"
+    isarray "^1.0.0"
+
+builtin-status-codes@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8"
+  integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=
+
+cacache@^12.0.2:
+  version "12.0.4"
+  resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c"
+  integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==
+  dependencies:
+    bluebird "^3.5.5"
+    chownr "^1.1.1"
+    figgy-pudding "^3.5.1"
+    glob "^7.1.4"
+    graceful-fs "^4.1.15"
+    infer-owner "^1.0.3"
+    lru-cache "^5.1.1"
+    mississippi "^3.0.0"
+    mkdirp "^0.5.1"
+    move-concurrently "^1.0.1"
+    promise-inflight "^1.0.1"
+    rimraf "^2.6.3"
+    ssri "^6.0.1"
+    unique-filename "^1.1.1"
+    y18n "^4.0.0"
+
+cacache@^15.0.4:
+  version "15.0.5"
+  resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.0.5.tgz#69162833da29170d6732334643c60e005f5f17d0"
+  integrity sha512-lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A==
+  dependencies:
+    "@npmcli/move-file" "^1.0.1"
+    chownr "^2.0.0"
+    fs-minipass "^2.0.0"
+    glob "^7.1.4"
+    infer-owner "^1.0.4"
+    lru-cache "^6.0.0"
+    minipass "^3.1.1"
+    minipass-collect "^1.0.2"
+    minipass-flush "^1.0.5"
+    minipass-pipeline "^1.2.2"
+    mkdirp "^1.0.3"
+    p-map "^4.0.0"
+    promise-inflight "^1.0.1"
+    rimraf "^3.0.2"
+    ssri "^8.0.0"
+    tar "^6.0.2"
+    unique-filename "^1.1.1"
+
+cache-base@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2"
+  integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==
+  dependencies:
+    collection-visit "^1.0.0"
+    component-emitter "^1.2.1"
+    get-value "^2.0.6"
+    has-value "^1.0.0"
+    isobject "^3.0.1"
+    set-value "^2.0.0"
+    to-object-path "^0.3.0"
+    union-value "^1.0.0"
+    unset-value "^1.0.0"
+
+call-me-maybe@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b"
+  integrity sha1-JtII6onje1y95gJQoV8DHBak1ms=
+
+callsites@^3.0.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
+  integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
+
+camelcase-keys@^6.2.2:
+  version "6.2.2"
+  resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0"
+  integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==
+  dependencies:
+    camelcase "^5.3.1"
+    map-obj "^4.0.0"
+    quick-lru "^4.0.1"
+
+camelcase@^5.0.0, camelcase@^5.3.1:
+  version "5.3.1"
+  resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
+  integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
+
+caniuse-api@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0"
+  integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==
+  dependencies:
+    browserslist "^4.0.0"
+    caniuse-lite "^1.0.0"
+    lodash.memoize "^4.1.2"
+    lodash.uniq "^4.5.0"
+
+caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001135, caniuse-lite@^1.0.30001219:
+  version "1.0.30001236"
+  resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001236.tgz#0a80de4cdf62e1770bb46a30d884fc8d633e3958"
+  integrity sha512-o0PRQSrSCGJKCPZcgMzl5fUaj5xHe8qA2m4QRvnyY4e1lITqoNkr7q/Oh1NcpGSy0Th97UZ35yoKcINPoq7YOQ==
+
+chalk@^1.1.3:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
+  integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=
+  dependencies:
+    ansi-styles "^2.2.1"
+    escape-string-regexp "^1.0.2"
+    has-ansi "^2.0.0"
+    strip-ansi "^3.0.0"
+    supports-color "^2.0.0"
+
+chalk@^2.0.0, chalk@^2.4.1, chalk@^2.4.2:
+  version "2.4.2"
+  resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
+  integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
+  dependencies:
+    ansi-styles "^3.2.1"
+    escape-string-regexp "^1.0.5"
+    supports-color "^5.3.0"
+
+chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1:
+  version "4.1.1"
+  resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.1.tgz#c80b3fab28bf6371e6863325eee67e618b77e6ad"
+  integrity sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==
+  dependencies:
+    ansi-styles "^4.1.0"
+    supports-color "^7.1.0"
+
+character-entities-legacy@^1.0.0:
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1"
+  integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==
+
+character-entities@^1.0.0:
+  version "1.2.4"
+  resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b"
+  integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==
+
+character-reference-invalid@^1.0.0:
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560"
+  integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==
+
+chokidar@^2.1.8:
+  version "2.1.8"
+  resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917"
+  integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==
+  dependencies:
+    anymatch "^2.0.0"
+    async-each "^1.0.1"
+    braces "^2.3.2"
+    glob-parent "^3.1.0"
+    inherits "^2.0.3"
+    is-binary-path "^1.0.0"
+    is-glob "^4.0.0"
+    normalize-path "^3.0.0"
+    path-is-absolute "^1.0.0"
+    readdirp "^2.2.1"
+    upath "^1.1.1"
+  optionalDependencies:
+    fsevents "^1.2.7"
+
+chokidar@^3.4.0:
+  version "3.4.1"
+  resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.1.tgz#e905bdecf10eaa0a0b1db0c664481cc4cbc22ba1"
+  integrity sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==
+  dependencies:
+    anymatch "~3.1.1"
+    braces "~3.0.2"
+    glob-parent "~5.1.0"
+    is-binary-path "~2.1.0"
+    is-glob "~4.0.1"
+    normalize-path "~3.0.0"
+    readdirp "~3.4.0"
+  optionalDependencies:
+    fsevents "~2.1.2"
+
+chownr@^1.1.1:
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b"
+  integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==
+
+chownr@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece"
+  integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==
+
+chrome-trace-event@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4"
+  integrity sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==
+  dependencies:
+    tslib "^1.9.0"
+
+cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de"
+  integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==
+  dependencies:
+    inherits "^2.0.1"
+    safe-buffer "^5.0.1"
+
+class-utils@^0.3.5:
+  version "0.3.6"
+  resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463"
+  integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==
+  dependencies:
+    arr-union "^3.1.0"
+    define-property "^0.2.5"
+    isobject "^3.0.0"
+    static-extend "^0.1.1"
+
+classnames@^2.2.6:
+  version "2.2.6"
+  resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce"
+  integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==
+
+clean-stack@^2.0.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b"
+  integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==
+
+clean-webpack-plugin@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/clean-webpack-plugin/-/clean-webpack-plugin-3.0.0.tgz#a99d8ec34c1c628a4541567aa7b457446460c62b"
+  integrity sha512-MciirUH5r+cYLGCOL5JX/ZLzOZbVr1ot3Fw+KcvbhUb6PM+yycqd9ZhIlcigQ5gl+XhppNmw3bEFuaaMNyLj3A==
+  dependencies:
+    "@types/webpack" "^4.4.31"
+    del "^4.1.1"
+
+cli@~1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/cli/-/cli-1.0.1.tgz#22817534f24bfa4950c34d532d48ecbc621b8c14"
+  integrity sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=
+  dependencies:
+    exit "0.1.2"
+    glob "^7.1.1"
+
+clipboard@^2.0.0:
+  version "2.0.6"
+  resolved "https://registry.yarnpkg.com/clipboard/-/clipboard-2.0.6.tgz#52921296eec0fdf77ead1749421b21c968647376"
+  integrity sha512-g5zbiixBRk/wyKakSwCKd7vQXDjFnAMGHoEyBogG/bw9kTD9GvdAvaoRR1ALcEzt3pVKxZR0pViekPMIS0QyGg==
+  dependencies:
+    good-listener "^1.2.2"
+    select "^1.1.2"
+    tiny-emitter "^2.0.0"
+
+cliui@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5"
+  integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==
+  dependencies:
+    string-width "^3.1.0"
+    strip-ansi "^5.2.0"
+    wrap-ansi "^5.1.0"
+
+cliui@^6.0.0:
+  version "6.0.0"
+  resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1"
+  integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==
+  dependencies:
+    string-width "^4.2.0"
+    strip-ansi "^6.0.0"
+    wrap-ansi "^6.2.0"
+
+cliui@^7.0.2:
+  version "7.0.4"
+  resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f"
+  integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==
+  dependencies:
+    string-width "^4.2.0"
+    strip-ansi "^6.0.0"
+    wrap-ansi "^7.0.0"
+
+clone-regexp@^2.1.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-2.2.0.tgz#7d65e00885cd8796405c35a737e7a86b7429e36f"
+  integrity sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q==
+  dependencies:
+    is-regexp "^2.0.0"
+
+clsx@^1.1.0:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.1.1.tgz#98b3134f9abbdf23b2663491ace13c5c03a73188"
+  integrity sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA==
+
+co@^4.6.0:
+  version "4.6.0"
+  resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
+  integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=
+
+code-error-fragment@0.0.230:
+  version "0.0.230"
+  resolved "https://registry.yarnpkg.com/code-error-fragment/-/code-error-fragment-0.0.230.tgz#d736d75c832445342eca1d1fedbf17d9618b14d7"
+  integrity sha512-cadkfKp6932H8UkhzE/gcUqhRMNf8jHzkAN7+5Myabswaghu4xABTgPHDCjW+dBAJxj/SpkTYokpzDqY4pCzQw==
+
+codemirror@^5.59.1:
+  version "5.59.1"
+  resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.59.1.tgz#cd6465555a87f8a2243eb41ffb460c777e15212c"
+  integrity sha512-d0SSW/PCCD4LoSCBPdnP0BzmZB1v3emomCUtVlIWgZHJ06yVeBOvBtOH7vYz707pfAvEeWbO9aP6akh8vl1V3w==
+
+collection-visit@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0"
+  integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=
+  dependencies:
+    map-visit "^1.0.0"
+    object-visit "^1.0.0"
+
+color-convert@^1.9.0:
+  version "1.9.3"
+  resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
+  integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
+  dependencies:
+    color-name "1.1.3"
+
+color-convert@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
+  integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
+  dependencies:
+    color-name "~1.1.4"
+
+color-name@1.1.3:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
+  integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
+
+color-name@~1.1.4:
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
+  integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
+
+colord@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/colord/-/colord-2.0.1.tgz#1e7fb1f9fa1cf74f42c58cb9c20320bab8435aa0"
+  integrity sha512-vm5YpaWamD0Ov6TSG0GGmUIwstrWcfKQV/h2CmbR7PbNu41+qdB5PW9lpzhjedrpm08uuYvcXi0Oel1RLZIJuA==
+
+colorette@^1.2.1, colorette@^1.2.2:
+  version "1.2.2"
+  resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94"
+  integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==
+
+commander@2, commander@^2.20.0:
+  version "2.20.3"
+  resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
+  integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
+
+commander@^7.1.0:
+  version "7.2.0"
+  resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7"
+  integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==
+
+commondir@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
+  integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=
+
+component-emitter@^1.2.1:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0"
+  integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==
+
+concat-map@0.0.1:
+  version "0.0.1"
+  resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
+  integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
+
+concat-stream@^1.5.0:
+  version "1.6.2"
+  resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
+  integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
+  dependencies:
+    buffer-from "^1.0.0"
+    inherits "^2.0.3"
+    readable-stream "^2.2.2"
+    typedarray "^0.0.6"
+
+confusing-browser-globals@^1.0.9:
+  version "1.0.9"
+  resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz#72bc13b483c0276801681871d4898516f8f54fdd"
+  integrity sha512-KbS1Y0jMtyPgIxjO7ZzMAuUpAKMt1SzCL9fsrKsX6b0zJPTaT0SiSPmewwVZg9UAO83HVIlEhZF84LIjZ0lmAw==
+
+console-browserify@1.1.x:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10"
+  integrity sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=
+  dependencies:
+    date-now "^0.1.4"
+
+console-browserify@^1.1.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336"
+  integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==
+
+constants-browserify@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75"
+  integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=
+
+contains-path@^0.1.0:
+  version "0.1.0"
+  resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a"
+  integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=
+
+convert-source-map@^1.5.1, convert-source-map@^1.7.0:
+  version "1.7.0"
+  resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442"
+  integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==
+  dependencies:
+    safe-buffer "~5.1.1"
+
+copy-concurrently@^1.0.0:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0"
+  integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==
+  dependencies:
+    aproba "^1.1.1"
+    fs-write-stream-atomic "^1.0.8"
+    iferr "^0.1.5"
+    mkdirp "^0.5.1"
+    rimraf "^2.5.4"
+    run-queue "^1.0.0"
+
+copy-descriptor@^0.1.0:
+  version "0.1.1"
+  resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
+  integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=
+
+copy-webpack-plugin@^6.0.3:
+  version "6.0.3"
+  resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-6.0.3.tgz#2b3d2bfc6861b96432a65f0149720adbd902040b"
+  integrity sha512-q5m6Vz4elsuyVEIUXr7wJdIdePWTubsqVbEMvf1WQnHGv0Q+9yPRu7MtYFPt+GBOXRav9lvIINifTQ1vSCs+eA==
+  dependencies:
+    cacache "^15.0.4"
+    fast-glob "^3.2.4"
+    find-cache-dir "^3.3.1"
+    glob-parent "^5.1.1"
+    globby "^11.0.1"
+    loader-utils "^2.0.0"
+    normalize-path "^3.0.0"
+    p-limit "^3.0.1"
+    schema-utils "^2.7.0"
+    serialize-javascript "^4.0.0"
+    webpack-sources "^1.4.3"
+
+core-js@^2.4.0, core-js@^2.5.0:
+  version "2.6.11"
+  resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.11.tgz#38831469f9922bded8ee21c9dc46985e0399308c"
+  integrity sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==
+
+core-js@^3.2.1:
+  version "3.6.5"
+  resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.6.5.tgz#7395dc273af37fb2e50e9bd3d9fe841285231d1a"
+  integrity sha512-vZVEEwZoIsI+vPEuoF9Iqf5H7/M3eeQqWlQnYa8FSKKePuYTf5MWnxb5SDAzCa60b3JBRS5g9b+Dq7b1y/RCrA==
+
+core-util-is@~1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
+  integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
+
+cosmiconfig@^7.0.0:
+  version "7.0.0"
+  resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.0.tgz#ef9b44d773959cae63ddecd122de23853b60f8d3"
+  integrity sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==
+  dependencies:
+    "@types/parse-json" "^4.0.0"
+    import-fresh "^3.2.1"
+    parse-json "^5.0.0"
+    path-type "^4.0.0"
+    yaml "^1.10.0"
+
+create-ecdh@^4.0.0:
+  version "4.0.3"
+  resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff"
+  integrity sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==
+  dependencies:
+    bn.js "^4.1.0"
+    elliptic "^6.0.0"
+
+create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196"
+  integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==
+  dependencies:
+    cipher-base "^1.0.1"
+    inherits "^2.0.1"
+    md5.js "^1.3.4"
+    ripemd160 "^2.0.1"
+    sha.js "^2.4.0"
+
+create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:
+  version "1.1.7"
+  resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff"
+  integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==
+  dependencies:
+    cipher-base "^1.0.3"
+    create-hash "^1.1.0"
+    inherits "^2.0.1"
+    ripemd160 "^2.0.0"
+    safe-buffer "^5.0.1"
+    sha.js "^2.4.8"
+
+cross-spawn@^6.0.5:
+  version "6.0.5"
+  resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"
+  integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==
+  dependencies:
+    nice-try "^1.0.4"
+    path-key "^2.0.1"
+    semver "^5.5.0"
+    shebang-command "^1.2.0"
+    which "^1.2.9"
+
+cross-spawn@^7.0.2:
+  version "7.0.3"
+  resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
+  integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
+  dependencies:
+    path-key "^3.1.0"
+    shebang-command "^2.0.0"
+    which "^2.0.1"
+
+crypto-browserify@^3.11.0:
+  version "3.12.0"
+  resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec"
+  integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==
+  dependencies:
+    browserify-cipher "^1.0.0"
+    browserify-sign "^4.0.0"
+    create-ecdh "^4.0.0"
+    create-hash "^1.1.0"
+    create-hmac "^1.1.0"
+    diffie-hellman "^5.0.0"
+    inherits "^2.0.1"
+    pbkdf2 "^3.0.3"
+    public-encrypt "^4.0.0"
+    randombytes "^2.0.0"
+    randomfill "^1.0.3"
+
+css-color-names@^0.0.4:
+  version "0.0.4"
+  resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0"
+  integrity sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=
+
+css-color-names@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-1.0.1.tgz#6ff7ee81a823ad46e020fa2fd6ab40a887e2ba67"
+  integrity sha512-/loXYOch1qU1biStIFsHH8SxTmOseh1IJqFvy8IujXOm1h+QjUdDhkzOrR5HG8K8mlxREj0yfi8ewCHx0eMxzA==
+
+css-declaration-sorter@^6.0.3:
+  version "6.0.3"
+  resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.0.3.tgz#9dfd8ea0df4cc7846827876fafb52314890c21a9"
+  integrity sha512-52P95mvW1SMzuRZegvpluT6yEv0FqQusydKQPZsNN5Q7hh8EwQvN8E2nwuJ16BBvNN6LcoIZXu/Bk58DAhrrxw==
+  dependencies:
+    timsort "^0.3.0"
+
+css-loader@^3.4.2:
+  version "3.6.0"
+  resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.6.0.tgz#2e4b2c7e6e2d27f8c8f28f61bffcd2e6c91ef645"
+  integrity sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==
+  dependencies:
+    camelcase "^5.3.1"
+    cssesc "^3.0.0"
+    icss-utils "^4.1.1"
+    loader-utils "^1.2.3"
+    normalize-path "^3.0.0"
+    postcss "^7.0.32"
+    postcss-modules-extract-imports "^2.0.0"
+    postcss-modules-local-by-default "^3.0.2"
+    postcss-modules-scope "^2.2.0"
+    postcss-modules-values "^3.0.0"
+    postcss-value-parser "^4.1.0"
+    schema-utils "^2.7.0"
+    semver "^6.3.0"
+
+css-modules-require-hook@^4.0.6:
+  version "4.2.3"
+  resolved "https://registry.yarnpkg.com/css-modules-require-hook/-/css-modules-require-hook-4.2.3.tgz#6792ca412b15e23e6f9be6a07dcef7f577ff904d"
+  integrity sha1-Z5LKQSsV4j5vm+agfc739Xf/kE0=
+  dependencies:
+    debug "^2.2.0"
+    generic-names "^1.0.1"
+    glob-to-regexp "^0.3.0"
+    icss-replace-symbols "^1.0.2"
+    lodash "^4.3.0"
+    postcss "^6.0.1"
+    postcss-modules-extract-imports "^1.0.0"
+    postcss-modules-local-by-default "^1.0.1"
+    postcss-modules-resolve-imports "^1.3.0"
+    postcss-modules-scope "^1.0.0"
+    postcss-modules-values "^1.1.1"
+    seekout "^1.0.1"
+
+css-select@^3.1.2:
+  version "3.1.2"
+  resolved "https://registry.yarnpkg.com/css-select/-/css-select-3.1.2.tgz#d52cbdc6fee379fba97fb0d3925abbd18af2d9d8"
+  integrity sha512-qmss1EihSuBNWNNhHjxzxSfJoFBM/lERB/Q4EnsJQQC62R2evJDW481091oAdOr9uh46/0n4nrg0It5cAnj1RA==
+  dependencies:
+    boolbase "^1.0.0"
+    css-what "^4.0.0"
+    domhandler "^4.0.0"
+    domutils "^2.4.3"
+    nth-check "^2.0.0"
+
+css-selector-tokenizer@^0.7.0:
+  version "0.7.1"
+  resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz#a177271a8bca5019172f4f891fc6eed9cbf68d5d"
+  integrity sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA==
+  dependencies:
+    cssesc "^0.1.0"
+    fastparse "^1.1.1"
+    regexpu-core "^1.0.0"
+
+css-tree@^1.1.2:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d"
+  integrity sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==
+  dependencies:
+    mdn-data "2.0.14"
+    source-map "^0.6.1"
+
+css-what@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/css-what/-/css-what-4.0.0.tgz#35e73761cab2eeb3d3661126b23d7aa0e8432233"
+  integrity sha512-teijzG7kwYfNVsUh2H/YN62xW3KK9YhXEgSlbxMlcyjPNvdKJqFx5lrwlJgoFP1ZHlB89iGDlo/JyshKeRhv5A==
+
+cssesc@^0.1.0:
+  version "0.1.0"
+  resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4"
+  integrity sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=
+
+cssesc@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
+  integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==
+
+cssnano-preset-default@^5.1.3:
+  version "5.1.3"
+  resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.1.3.tgz#caa54183a8c8df03124a9e23f374ab89df5a9a99"
+  integrity sha512-qo9tX+t4yAAZ/yagVV3b+QBKeLklQbmgR3wI7mccrDcR+bEk9iHgZN1E7doX68y9ThznLya3RDmR+nc7l6/2WQ==
+  dependencies:
+    css-declaration-sorter "^6.0.3"
+    cssnano-utils "^2.0.1"
+    postcss-calc "^8.0.0"
+    postcss-colormin "^5.2.0"
+    postcss-convert-values "^5.0.1"
+    postcss-discard-comments "^5.0.1"
+    postcss-discard-duplicates "^5.0.1"
+    postcss-discard-empty "^5.0.1"
+    postcss-discard-overridden "^5.0.1"
+    postcss-merge-longhand "^5.0.2"
+    postcss-merge-rules "^5.0.2"
+    postcss-minify-font-values "^5.0.1"
+    postcss-minify-gradients "^5.0.1"
+    postcss-minify-params "^5.0.1"
+    postcss-minify-selectors "^5.1.0"
+    postcss-normalize-charset "^5.0.1"
+    postcss-normalize-display-values "^5.0.1"
+    postcss-normalize-positions "^5.0.1"
+    postcss-normalize-repeat-style "^5.0.1"
+    postcss-normalize-string "^5.0.1"
+    postcss-normalize-timing-functions "^5.0.1"
+    postcss-normalize-unicode "^5.0.1"
+    postcss-normalize-url "^5.0.2"
+    postcss-normalize-whitespace "^5.0.1"
+    postcss-ordered-values "^5.0.2"
+    postcss-reduce-initial "^5.0.1"
+    postcss-reduce-transforms "^5.0.1"
+    postcss-svgo "^5.0.2"
+    postcss-unique-selectors "^5.0.1"
+
+cssnano-utils@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-2.0.1.tgz#8660aa2b37ed869d2e2f22918196a9a8b6498ce2"
+  integrity sha512-i8vLRZTnEH9ubIyfdZCAdIdgnHAUeQeByEeQ2I7oTilvP9oHO6RScpeq3GsFUVqeB8uZgOQ9pw8utofNn32hhQ==
+
+cssnano@^5.0.2:
+  version "5.0.6"
+  resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-5.0.6.tgz#2a91ad34c6521ae31eab3da9c90108ea3093535d"
+  integrity sha512-NiaLH/7yqGksFGsFNvSRe2IV/qmEBAeDE64dYeD8OBrgp6lE8YoMeQJMtsv5ijo6MPyhuoOvFhI94reahBRDkw==
+  dependencies:
+    cosmiconfig "^7.0.0"
+    cssnano-preset-default "^5.1.3"
+    is-resolvable "^1.1.0"
+
+csso@^4.2.0:
+  version "4.2.0"
+  resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529"
+  integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==
+  dependencies:
+    css-tree "^1.1.2"
+
+cyclist@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9"
+  integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=
+
+d3-array@1, d3-array@^1.1.1, d3-array@^1.2.0:
+  version "1.2.4"
+  resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.4.tgz#635ce4d5eea759f6f605863dbcfc30edc737f71f"
+  integrity sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw==
+
+d3-axis@1:
+  version "1.0.12"
+  resolved "https://registry.yarnpkg.com/d3-axis/-/d3-axis-1.0.12.tgz#cdf20ba210cfbb43795af33756886fb3638daac9"
+  integrity sha512-ejINPfPSNdGFKEOAtnBtdkpr24c4d4jsei6Lg98mxf424ivoDP2956/5HDpIAtmHo85lqT4pruy+zEgvRUBqaQ==
+
+d3-brush@1:
+  version "1.1.5"
+  resolved "https://registry.yarnpkg.com/d3-brush/-/d3-brush-1.1.5.tgz#066b8e84d17b192986030446c97c0fba7e1bacdc"
+  integrity sha512-rEaJ5gHlgLxXugWjIkolTA0OyMvw8UWU1imYXy1v642XyyswmI1ybKOv05Ft+ewq+TFmdliD3VuK0pRp1VT/5A==
+  dependencies:
+    d3-dispatch "1"
+    d3-drag "1"
+    d3-interpolate "1"
+    d3-selection "1"
+    d3-transition "1"
+
+d3-chord@1:
+  version "1.0.6"
+  resolved "https://registry.yarnpkg.com/d3-chord/-/d3-chord-1.0.6.tgz#309157e3f2db2c752f0280fedd35f2067ccbb15f"
+  integrity sha512-JXA2Dro1Fxw9rJe33Uv+Ckr5IrAa74TlfDEhE/jfLOaXegMQFQTAgAw9WnZL8+HxVBRXaRGCkrNU7pJeylRIuA==
+  dependencies:
+    d3-array "1"
+    d3-path "1"
+
+d3-collection@1, d3-collection@^1.0.4:
+  version "1.0.7"
+  resolved "https://registry.yarnpkg.com/d3-collection/-/d3-collection-1.0.7.tgz#349bd2aa9977db071091c13144d5e4f16b5b310e"
+  integrity sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A==
+
+d3-color@1:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-1.4.0.tgz#89c45a995ed773b13314f06460df26d60ba0ecaf"
+  integrity sha512-TzNPeJy2+iEepfiL92LAAB7fvnp/dV2YwANPVHdDWmYMm23qIJBYww3qT8I8C1wXrmrg4UWs7BKc2tKIgyjzHg==
+
+d3-contour@1:
+  version "1.3.2"
+  resolved "https://registry.yarnpkg.com/d3-contour/-/d3-contour-1.3.2.tgz#652aacd500d2264cb3423cee10db69f6f59bead3"
+  integrity sha512-hoPp4K/rJCu0ladiH6zmJUEz6+u3lgR+GSm/QdM2BBvDraU39Vr7YdDCicJcxP1z8i9B/2dJLgDC1NcvlF8WCg==
+  dependencies:
+    d3-array "^1.1.1"
+
+d3-dispatch@1:
+  version "1.0.6"
+  resolved "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-1.0.6.tgz#00d37bcee4dd8cd97729dd893a0ac29caaba5d58"
+  integrity sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA==
+
+d3-drag@1:
+  version "1.2.5"
+  resolved "https://registry.yarnpkg.com/d3-drag/-/d3-drag-1.2.5.tgz#2537f451acd39d31406677b7dc77c82f7d988f70"
+  integrity sha512-rD1ohlkKQwMZYkQlYVCrSFxsWPzI97+W+PaEIBNTMxRuxz9RF0Hi5nJWHGVJ3Om9d2fRTe1yOBINJyy/ahV95w==
+  dependencies:
+    d3-dispatch "1"
+    d3-selection "1"
+
+d3-dsv@1:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/d3-dsv/-/d3-dsv-1.2.0.tgz#9d5f75c3a5f8abd611f74d3f5847b0d4338b885c"
+  integrity sha512-9yVlqvZcSOMhCYzniHE7EVUws7Fa1zgw+/EAV2BxJoG3ME19V6BQFBwI855XQDsxyOuG7NibqRMTtiF/Qup46g==
+  dependencies:
+    commander "2"
+    iconv-lite "0.4"
+    rw "1"
+
+d3-ease@1:
+  version "1.0.6"
+  resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-1.0.6.tgz#ebdb6da22dfac0a22222f2d4da06f66c416a0ec0"
+  integrity sha512-SZ/lVU7LRXafqp7XtIcBdxnWl8yyLpgOmzAk0mWBI9gXNzLDx5ybZgnRbH9dN/yY5tzVBqCQ9avltSnqVwessQ==
+
+d3-fetch@1:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/d3-fetch/-/d3-fetch-1.1.2.tgz#957c8fbc6d4480599ba191b1b2518bf86b3e1be2"
+  integrity sha512-S2loaQCV/ZeyTyIF2oP8D1K9Z4QizUzW7cWeAOAS4U88qOt3Ucf6GsmgthuYSdyB2HyEm4CeGvkQxWsmInsIVA==
+  dependencies:
+    d3-dsv "1"
+
+d3-force@1:
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/d3-force/-/d3-force-1.2.1.tgz#fd29a5d1ff181c9e7f0669e4bd72bdb0e914ec0b"
+  integrity sha512-HHvehyaiUlVo5CxBJ0yF/xny4xoaxFxDnBXNvNcfW9adORGZfyNF1dj6DGLKyk4Yh3brP/1h3rnDzdIAwL08zg==
+  dependencies:
+    d3-collection "1"
+    d3-dispatch "1"
+    d3-quadtree "1"
+    d3-timer "1"
+
+d3-format@1:
+  version "1.4.3"
+  resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-1.4.3.tgz#4e8eb4dff3fdcb891a8489ec6e698601c41b96f1"
+  integrity sha512-mm/nE2Y9HgGyjP+rKIekeITVgBtX97o1nrvHCWX8F/yBYyevUTvu9vb5pUnKwrcSw7o7GuwMOWjS9gFDs4O+uQ==
+
+d3-geo@1:
+  version "1.11.9"
+  resolved "https://registry.yarnpkg.com/d3-geo/-/d3-geo-1.11.9.tgz#77eaed14ba62fc2c0aef55cd2943849c866f7ae6"
+  integrity sha512-9edcH6J3s/Aa3KJITWqFJbyB/8q3mMlA9Fi7z6yy+FAYMnRaxmC7jBhUnsINxVWD14GmqX3DK8uk7nV6/Ekt4A==
+  dependencies:
+    d3-array "1"
+
+d3-hierarchy@1:
+  version "1.1.9"
+  resolved "https://registry.yarnpkg.com/d3-hierarchy/-/d3-hierarchy-1.1.9.tgz#2f6bee24caaea43f8dc37545fa01628559647a83"
+  integrity sha512-j8tPxlqh1srJHAtxfvOUwKNYJkQuBFdM1+JAUfq6xqH5eAqf93L7oG1NVqDa4CpFZNvnNKtCYEUC8KY9yEn9lQ==
+
+d3-interpolate@1:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-1.4.0.tgz#526e79e2d80daa383f9e0c1c1c7dcc0f0583e987"
+  integrity sha512-V9znK0zc3jOPV4VD2zZn0sDhZU3WAE2bmlxdIwwQPPzPjvyLkd8B3JUVdS1IDUFDkWZ72c9qnv1GK2ZagTZ8EA==
+  dependencies:
+    d3-color "1"
+
+d3-path@1:
+  version "1.0.9"
+  resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.9.tgz#48c050bb1fe8c262493a8caf5524e3e9591701cf"
+  integrity sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==
+
+"d3-path@1 - 2":
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-2.0.0.tgz#55d86ac131a0548adae241eebfb56b4582dd09d8"
+  integrity sha512-ZwZQxKhBnv9yHaiWd6ZU4x5BtCQ7pXszEV9CU6kRgwIQVQGLMv1oiL4M+MK/n79sYzsj+gcgpPQSctJUsLN7fA==
+
+d3-polygon@1:
+  version "1.0.6"
+  resolved "https://registry.yarnpkg.com/d3-polygon/-/d3-polygon-1.0.6.tgz#0bf8cb8180a6dc107f518ddf7975e12abbfbd38e"
+  integrity sha512-k+RF7WvI08PC8reEoXa/w2nSg5AUMTi+peBD9cmFc+0ixHfbs4QmxxkarVal1IkVkgxVuk9JSHhJURHiyHKAuQ==
+
+d3-quadtree@1:
+  version "1.0.7"
+  resolved "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-1.0.7.tgz#ca8b84df7bb53763fe3c2f24bd435137f4e53135"
+  integrity sha512-RKPAeXnkC59IDGD0Wu5mANy0Q2V28L+fNe65pOCXVdVuTJS3WPKaJlFHer32Rbh9gIo9qMuJXio8ra4+YmIymA==
+
+d3-random@1:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/d3-random/-/d3-random-1.1.2.tgz#2833be7c124360bf9e2d3fd4f33847cfe6cab291"
+  integrity sha512-6AK5BNpIFqP+cx/sreKzNjWbwZQCSUatxq+pPRmFIQaWuoD+NrbVWw7YWpHiXpCQ/NanKdtGDuB+VQcZDaEmYQ==
+
+d3-scale-chromatic@1:
+  version "1.5.0"
+  resolved "https://registry.yarnpkg.com/d3-scale-chromatic/-/d3-scale-chromatic-1.5.0.tgz#54e333fc78212f439b14641fb55801dd81135a98"
+  integrity sha512-ACcL46DYImpRFMBcpk9HhtIyC7bTBR4fNOPxwVSl0LfulDAwyiHyPOTqcDG1+t5d4P9W7t/2NAuWu59aKko/cg==
+  dependencies:
+    d3-color "1"
+    d3-interpolate "1"
+
+d3-scale@2:
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-2.2.2.tgz#4e880e0b2745acaaddd3ede26a9e908a9e17b81f"
+  integrity sha512-LbeEvGgIb8UMcAa0EATLNX0lelKWGYDQiPdHj+gLblGVhGLyNbaCn3EvrJf0A3Y/uOOU5aD6MTh5ZFCdEwGiCw==
+  dependencies:
+    d3-array "^1.2.0"
+    d3-collection "1"
+    d3-format "1"
+    d3-interpolate "1"
+    d3-time "1"
+    d3-time-format "2"
+
+d3-selection@1, d3-selection@^1.1.0, d3-selection@^1.3.0:
+  version "1.4.1"
+  resolved "https://registry.yarnpkg.com/d3-selection/-/d3-selection-1.4.1.tgz#98eedbbe085fbda5bafa2f9e3f3a2f4d7d622a98"
+  integrity sha512-BTIbRjv/m5rcVTfBs4AMBLKs4x8XaaLkwm28KWu9S2vKNqXkXt2AH2Qf0sdPZHjFxcWg/YL53zcqAz+3g4/7PA==
+
+d3-shape@1:
+  version "1.3.7"
+  resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-1.3.7.tgz#df63801be07bc986bc54f63789b4fe502992b5d7"
+  integrity sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==
+  dependencies:
+    d3-path "1"
+
+d3-shape@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-2.1.0.tgz#3b6a82ccafbc45de55b57fcf956c584ded3b666f"
+  integrity sha512-PnjUqfM2PpskbSLTJvAzp2Wv4CZsnAgTfcVRTwW03QR3MkXF8Uo7B1y/lWkAsmbKwuecto++4NlsYcvYpXpTHA==
+  dependencies:
+    d3-path "1 - 2"
+
+d3-time-format@2:
+  version "2.2.3"
+  resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-2.2.3.tgz#0c9a12ee28342b2037e5ea1cf0b9eb4dd75f29cb"
+  integrity sha512-RAHNnD8+XvC4Zc4d2A56Uw0yJoM7bsvOlJR33bclxq399Rak/b9bhvu/InjxdWhPtkgU53JJcleJTGkNRnN6IA==
+  dependencies:
+    d3-time "1"
+
+d3-time@1:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-1.1.0.tgz#b1e19d307dae9c900b7e5b25ffc5dcc249a8a0f1"
+  integrity sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA==
+
+d3-timer@1:
+  version "1.0.10"
+  resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-1.0.10.tgz#dfe76b8a91748831b13b6d9c793ffbd508dd9de5"
+  integrity sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==
+
+d3-tip@^0.9.1:
+  version "0.9.1"
+  resolved "https://registry.yarnpkg.com/d3-tip/-/d3-tip-0.9.1.tgz#84e6d331c4e6650d80c5228a07e41820609ab64b"
+  integrity sha512-EVBfG9d+HnjIoyVXfhpytWxlF59JaobwizqMX9EBXtsFmJytjwHeYiUs74ldHQjE7S9vzfKTx2LCtvUrIbuFYg==
+  dependencies:
+    d3-collection "^1.0.4"
+    d3-selection "^1.3.0"
+
+d3-transition@1:
+  version "1.3.2"
+  resolved "https://registry.yarnpkg.com/d3-transition/-/d3-transition-1.3.2.tgz#a98ef2151be8d8600543434c1ca80140ae23b398"
+  integrity sha512-sc0gRU4PFqZ47lPVHloMn9tlPcv8jxgOQg+0zjhfZXMQuvppjG6YuwdMBE0TuqCZjeJkLecku/l9R0JPcRhaDA==
+  dependencies:
+    d3-color "1"
+    d3-dispatch "1"
+    d3-ease "1"
+    d3-interpolate "1"
+    d3-selection "^1.1.0"
+    d3-timer "1"
+
+d3-voronoi@1:
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/d3-voronoi/-/d3-voronoi-1.1.4.tgz#dd3c78d7653d2bb359284ae478645d95944c8297"
+  integrity sha512-dArJ32hchFsrQ8uMiTBLq256MpnZjeuBtdHpaDlYuQyjU0CVzCJl/BVW+SkszaAeH95D/8gxqAhgx0ouAWAfRg==
+
+d3-zoom@1:
+  version "1.8.3"
+  resolved "https://registry.yarnpkg.com/d3-zoom/-/d3-zoom-1.8.3.tgz#b6a3dbe738c7763121cd05b8a7795ffe17f4fc0a"
+  integrity sha512-VoLXTK4wvy1a0JpH2Il+F2CiOhVu7VRXWF5M/LroMIh3/zBAC3WAt7QoIvPibOavVo20hN6/37vwAsdBejLyKQ==
+  dependencies:
+    d3-dispatch "1"
+    d3-drag "1"
+    d3-interpolate "1"
+    d3-selection "1"
+    d3-transition "1"
+
+d3@^3.4.4:
+  version "3.5.17"
+  resolved "https://registry.yarnpkg.com/d3/-/d3-3.5.17.tgz#bc46748004378b21a360c9fc7cf5231790762fb8"
+  integrity sha1-vEZ0gAQ3iyGjYMn8fPUjF5B2L7g=
+
+d3@^5.14:
+  version "5.15.0"
+  resolved "https://registry.yarnpkg.com/d3/-/d3-5.15.0.tgz#ffd44958e6a3cb8a59a84429c45429b8bca5677a"
+  integrity sha512-C+E80SL2nLLtmykZ6klwYj5rPqB5nlfN5LdWEAVdWPppqTD8taoJi2PxLZjPeYT8FFRR2yucXq+kBlOnnvZeLg==
+  dependencies:
+    d3-array "1"
+    d3-axis "1"
+    d3-brush "1"
+    d3-chord "1"
+    d3-collection "1"
+    d3-color "1"
+    d3-contour "1"
+    d3-dispatch "1"
+    d3-drag "1"
+    d3-dsv "1"
+    d3-ease "1"
+    d3-fetch "1"
+    d3-force "1"
+    d3-format "1"
+    d3-geo "1"
+    d3-hierarchy "1"
+    d3-interpolate "1"
+    d3-path "1"
+    d3-polygon "1"
+    d3-quadtree "1"
+    d3-random "1"
+    d3-scale "2"
+    d3-scale-chromatic "1"
+    d3-selection "1"
+    d3-shape "1"
+    d3-time "1"
+    d3-time-format "2"
+    d3-timer "1"
+    d3-transition "1"
+    d3-voronoi "1"
+    d3-zoom "1"
+
+dagre-d3@^0.6.4:
+  version "0.6.4"
+  resolved "https://registry.yarnpkg.com/dagre-d3/-/dagre-d3-0.6.4.tgz#0728d5ce7f177ca2337df141ceb60fbe6eeb7b29"
+  integrity sha512-e/6jXeCP7/ptlAM48clmX4xTZc5Ek6T6kagS7Oz2HrYSdqcLZFLqpAfh7ldbZRFfxCZVyh61NEPR08UQRVxJzQ==
+  dependencies:
+    d3 "^5.14"
+    dagre "^0.8.5"
+    graphlib "^2.1.8"
+    lodash "^4.17.15"
+
+dagre@^0.8.5:
+  version "0.8.5"
+  resolved "https://registry.yarnpkg.com/dagre/-/dagre-0.8.5.tgz#ba30b0055dac12b6c1fcc247817442777d06afee"
+  integrity sha512-/aTqmnRta7x7MCCpExk7HQL2O4owCT2h8NT//9I1OQ9vt29Pa0BzSAkR5lwFUcQ7491yVi/3CXU9jQ5o0Mn2Sw==
+  dependencies:
+    graphlib "^2.1.8"
+    lodash "^4.17.15"
+
+datatables.net-bs@^1.10.23:
+  version "1.10.23"
+  resolved "https://registry.yarnpkg.com/datatables.net-bs/-/datatables.net-bs-1.10.23.tgz#985094ea63b28c630de4a0ecb75804ab53341fb0"
+  integrity sha512-O/kJxT93i9hIq8trdbHuIcHhrTodkVPfPqvxOqKK8lJ03XUUrT6V8ZoGyxROFjQGcgbye5CoRLVf7MY+5biOIQ==
+  dependencies:
+    datatables.net "1.10.23"
+    jquery ">=1.7"
+
+datatables.net@1.10.23, datatables.net@^1.10.23:
+  version "1.10.23"
+  resolved "https://registry.yarnpkg.com/datatables.net/-/datatables.net-1.10.23.tgz#59f7d7b12845183b1b379530d1385077e113ec01"
+  integrity sha512-we3tlNkzpxvgkKKlTxTMXPCt35untVXNg8zUYWpQyC1U5vJc+lT0+Zdc1ztK8d3lh5CfdnuFde2p8n3XwaGl3Q==
+  dependencies:
+    jquery ">=1.7"
+
+date-now@^0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b"
+  integrity sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=
+
+debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9:
+  version "2.6.9"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
+  integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
+  dependencies:
+    ms "2.0.0"
+
+debug@^4.0.0, debug@^4.1.0, debug@^4.3.1:
+  version "4.3.1"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee"
+  integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==
+  dependencies:
+    ms "2.1.2"
+
+debug@^4.0.1:
+  version "4.1.1"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791"
+  integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==
+  dependencies:
+    ms "^2.1.1"
+
+decamelize-keys@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9"
+  integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=
+  dependencies:
+    decamelize "^1.1.0"
+    map-obj "^1.0.0"
+
+decamelize@^1.1.0, decamelize@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
+  integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
+
+decko@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/decko/-/decko-1.2.0.tgz#fd43c735e967b8013306884a56fbe665996b6817"
+  integrity sha1-/UPHNelnuAEzBohKVvvmZZlraBc=
+
+decode-uri-component@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
+  integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=
+
+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=
+
+define-properties@^1.1.2, define-properties@^1.1.3:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
+  integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==
+  dependencies:
+    object-keys "^1.0.12"
+
+define-property@^0.2.5:
+  version "0.2.5"
+  resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116"
+  integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=
+  dependencies:
+    is-descriptor "^0.1.0"
+
+define-property@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6"
+  integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY=
+  dependencies:
+    is-descriptor "^1.0.0"
+
+define-property@^2.0.2:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d"
+  integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==
+  dependencies:
+    is-descriptor "^1.0.2"
+    isobject "^3.0.1"
+
+del@^4.1.1:
+  version "4.1.1"
+  resolved "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4"
+  integrity sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==
+  dependencies:
+    "@types/glob" "^7.1.1"
+    globby "^6.1.0"
+    is-path-cwd "^2.0.0"
+    is-path-in-cwd "^2.0.0"
+    p-map "^2.0.0"
+    pify "^4.0.1"
+    rimraf "^2.6.3"
+
+delegate@^3.1.2:
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/delegate/-/delegate-3.2.0.tgz#b66b71c3158522e8ab5744f720d8ca0c2af59166"
+  integrity sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==
+
+des.js@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843"
+  integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==
+  dependencies:
+    inherits "^2.0.1"
+    minimalistic-assert "^1.0.0"
+
+detect-file@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7"
+  integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=
+
+detect-indent@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208"
+  integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg=
+  dependencies:
+    repeating "^2.0.0"
+
+diffie-hellman@^5.0.0:
+  version "5.0.3"
+  resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875"
+  integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==
+  dependencies:
+    bn.js "^4.1.0"
+    miller-rabin "^4.0.0"
+    randombytes "^2.0.0"
+
+dir-glob@^3.0.1:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"
+  integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==
+  dependencies:
+    path-type "^4.0.0"
+
+doctrine@1.5.0:
+  version "1.5.0"
+  resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
+  integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=
+  dependencies:
+    esutils "^2.0.2"
+    isarray "^1.0.0"
+
+doctrine@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
+  integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==
+  dependencies:
+    esutils "^2.0.2"
+
+dom-serializer@0, dom-serializer@^0.2.1:
+  version "0.2.2"
+  resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51"
+  integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==
+  dependencies:
+    domelementtype "^2.0.1"
+    entities "^2.0.0"
+
+dom-serializer@^1.0.1:
+  version "1.3.2"
+  resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91"
+  integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==
+  dependencies:
+    domelementtype "^2.0.1"
+    domhandler "^4.2.0"
+    entities "^2.0.0"
+
+domain-browser@^1.1.1:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda"
+  integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==
+
+domelementtype@1, domelementtype@^1.3.1:
+  version "1.3.1"
+  resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f"
+  integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==
+
+domelementtype@^2.0.1, domelementtype@^2.2.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57"
+  integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==
+
+domhandler@2.3:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.3.0.tgz#2de59a0822d5027fabff6f032c2b25a2a8abe738"
+  integrity sha1-LeWaCCLVAn+r/28DLCsloqir5zg=
+  dependencies:
+    domelementtype "1"
+
+domhandler@^2.3.0:
+  version "2.4.2"
+  resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803"
+  integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==
+  dependencies:
+    domelementtype "1"
+
+domhandler@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.0.0.tgz#51cd13efca31da95bbb0c5bee3a48300e333b3e9"
+  integrity sha512-eKLdI5v9m67kbXQbJSNn1zjh0SDzvzWVWtX+qEI3eMjZw8daH9k8rlj1FZY9memPwjiskQFbe7vHVVJIAqoEhw==
+  dependencies:
+    domelementtype "^2.0.1"
+
+domhandler@^4.0.0, domhandler@^4.2.0:
+  version "4.2.0"
+  resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.2.0.tgz#f9768a5f034be60a89a27c2e4d0f74eba0d8b059"
+  integrity sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==
+  dependencies:
+    domelementtype "^2.2.0"
+
+dompurify@^2.0.12:
+  version "2.2.6"
+  resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-2.2.6.tgz#54945dc5c0b45ce5ae228705777e8e59d7b2edc4"
+  integrity sha512-7b7ZArhhH0SP6W2R9cqK6RjaU82FZ2UPM7RO8qN1b1wyvC/NY1FNWcX1Pu00fFOAnzEORtwXe4bPaClg6pUybQ==
+
+domutils@1.5:
+  version "1.5.1"
+  resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf"
+  integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=
+  dependencies:
+    dom-serializer "0"
+    domelementtype "1"
+
+domutils@^1.5.1:
+  version "1.7.0"
+  resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a"
+  integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==
+  dependencies:
+    dom-serializer "0"
+    domelementtype "1"
+
+domutils@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.1.0.tgz#7ade3201af43703fde154952e3a868eb4b635f16"
+  integrity sha512-CD9M0Dm1iaHfQ1R/TI+z3/JWp/pgub0j4jIQKH89ARR4ATAV2nbaOQS5XxU9maJP5jHaPdDDQSEHuE2UmpUTKg==
+  dependencies:
+    dom-serializer "^0.2.1"
+    domelementtype "^2.0.1"
+    domhandler "^3.0.0"
+
+domutils@^2.4.3:
+  version "2.7.0"
+  resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.7.0.tgz#8ebaf0c41ebafcf55b0b72ec31c56323712c5442"
+  integrity sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg==
+  dependencies:
+    dom-serializer "^1.0.1"
+    domelementtype "^2.2.0"
+    domhandler "^4.2.0"
+
+duplexify@^3.4.2, duplexify@^3.6.0:
+  version "3.7.1"
+  resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309"
+  integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==
+  dependencies:
+    end-of-stream "^1.0.0"
+    inherits "^2.0.1"
+    readable-stream "^2.0.0"
+    stream-shift "^1.0.0"
+
+electron-to-chromium@^1.3.571:
+  version "1.3.580"
+  resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.580.tgz#eb27873cfa012c43c53c9e9129038b8fd7cb964f"
+  integrity sha512-5flHTbRpptO6h3lQUG4zdSAxryAS3PrZOkLpLS0DL5/y2LBf+l9HJ8X6UBorNs1QRBrMR7u/QvkdK+GlekW1kQ==
+
+electron-to-chromium@^1.3.723:
+  version "1.3.727"
+  resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.727.tgz#857e310ca00f0b75da4e1db6ff0e073cc4a91ddf"
+  integrity sha512-Mfz4FIB4FSvEwBpDfdipRIrwd6uo8gUDoRDF4QEYb4h4tSuI3ov594OrjU6on042UlFHouIJpClDODGkPcBSbg==
+
+elliptic@^6.0.0, elliptic@^6.5.2:
+  version "6.5.4"
+  resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb"
+  integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==
+  dependencies:
+    bn.js "^4.11.9"
+    brorand "^1.1.0"
+    hash.js "^1.0.0"
+    hmac-drbg "^1.0.1"
+    inherits "^2.0.4"
+    minimalistic-assert "^1.0.1"
+    minimalistic-crypto-utils "^1.0.1"
+
+emoji-regex@^7.0.1:
+  version "7.0.3"
+  resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156"
+  integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==
+
+emoji-regex@^8.0.0:
+  version "8.0.0"
+  resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
+  integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
+
+emojis-list@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389"
+  integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k=
+
+emojis-list@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78"
+  integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==
+
+end-of-stream@^1.0.0, end-of-stream@^1.1.0:
+  version "1.4.4"
+  resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
+  integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
+  dependencies:
+    once "^1.4.0"
+
+enhanced-resolve@^4.1.0, enhanced-resolve@^4.1.1:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz#3b806f3bfafc1ec7de69551ef93cca46c1704126"
+  integrity sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==
+  dependencies:
+    graceful-fs "^4.1.2"
+    memory-fs "^0.5.0"
+    tapable "^1.0.0"
+
+enquirer@^2.3.5:
+  version "2.3.6"
+  resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d"
+  integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==
+  dependencies:
+    ansi-colors "^4.1.1"
+
+entities@1.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/entities/-/entities-1.0.0.tgz#b2987aa3821347fcde642b24fdfc9e4fb712bf26"
+  integrity sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY=
+
+entities@^1.1.1:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56"
+  integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==
+
+entities@^2.0.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55"
+  integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==
+
+eonasdan-bootstrap-datetimepicker@^4.17.47:
+  version "4.17.47"
+  resolved "https://registry.yarnpkg.com/eonasdan-bootstrap-datetimepicker/-/eonasdan-bootstrap-datetimepicker-4.17.47.tgz#7a49970044065276e7965efd16f822735219e735"
+  integrity sha1-ekmXAEQGUnbnll79Fvgic1IZ5zU=
+  dependencies:
+    bootstrap "^3.3"
+    jquery "^1.8.3 || ^2.0 || ^3.0"
+    moment "^2.10"
+    moment-timezone "^0.4.0"
+
+errno@^0.1.3, errno@~0.1.7:
+  version "0.1.7"
+  resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618"
+  integrity sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==
+  dependencies:
+    prr "~1.0.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==
+  dependencies:
+    is-arrayish "^0.2.1"
+
+es-abstract@^1.17.0, es-abstract@^1.17.5:
+  version "1.17.6"
+  resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a"
+  integrity sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==
+  dependencies:
+    es-to-primitive "^1.2.1"
+    function-bind "^1.1.1"
+    has "^1.0.3"
+    has-symbols "^1.0.1"
+    is-callable "^1.2.0"
+    is-regex "^1.1.0"
+    object-inspect "^1.7.0"
+    object-keys "^1.1.1"
+    object.assign "^4.1.0"
+    string.prototype.trimend "^1.0.1"
+    string.prototype.trimstart "^1.0.1"
+
+es-abstract@^1.17.0-next.1:
+  version "1.17.0-next.1"
+  resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.0-next.1.tgz#94acc93e20b05a6e96dacb5ab2f1cb3a81fc2172"
+  integrity sha512-7MmGr03N7Rnuid6+wyhD9sHNE2n4tFSwExnU2lQl3lIo2ShXWGePY80zYaoMOmILWv57H0amMjZGHNzzGG70Rw==
+  dependencies:
+    es-to-primitive "^1.2.1"
+    function-bind "^1.1.1"
+    has "^1.0.3"
+    has-symbols "^1.0.1"
+    is-callable "^1.1.4"
+    is-regex "^1.0.4"
+    object-inspect "^1.7.0"
+    object-keys "^1.1.1"
+    object.assign "^4.1.0"
+    string.prototype.trimleft "^2.1.0"
+    string.prototype.trimright "^2.1.0"
+
+es-to-primitive@^1.2.1:
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a"
+  integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==
+  dependencies:
+    is-callable "^1.1.4"
+    is-date-object "^1.0.1"
+    is-symbol "^1.0.2"
+
+es6-promise@^3.2.1:
+  version "3.3.1"
+  resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613"
+  integrity sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=
+
+escalade@^3.1.0, escalade@^3.1.1:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
+  integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
+
+escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
+  integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
+
+eslint-config-airbnb-base@^14.2.0:
+  version "14.2.0"
+  resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.2.0.tgz#fe89c24b3f9dc8008c9c0d0d88c28f95ed65e9c4"
+  integrity sha512-Snswd5oC6nJaevs3nZoLSTvGJBvzTfnBqOIArkf3cbyTyq9UD79wOk8s+RiL6bhca0p/eRO6veczhf6A/7Jy8Q==
+  dependencies:
+    confusing-browser-globals "^1.0.9"
+    object.assign "^4.1.0"
+    object.entries "^1.1.2"
+
+eslint-import-resolver-node@^0.3.3:
+  version "0.3.4"
+  resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz#85ffa81942c25012d8231096ddf679c03042c717"
+  integrity sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==
+  dependencies:
+    debug "^2.6.9"
+    resolve "^1.13.1"
+
+eslint-module-utils@^2.6.0:
+  version "2.6.0"
+  resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz#579ebd094f56af7797d19c9866c9c9486629bfa6"
+  integrity sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==
+  dependencies:
+    debug "^2.6.9"
+    pkg-dir "^2.0.0"
+
+eslint-plugin-es@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz#75a7cdfdccddc0589934aeeb384175f221c57893"
+  integrity sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==
+  dependencies:
+    eslint-utils "^2.0.0"
+    regexpp "^3.0.0"
+
+eslint-plugin-html@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-html/-/eslint-plugin-html-6.0.2.tgz#fcbd293e218d03dd72c147fc999d185c6f5989fe"
+  integrity sha512-Ik/z32UteKLo8GEfwNqVKcJ/WOz/be4h8N5mbMmxxnZ+9aL9XczOXQFz/bGu+nAGVoRg8CflldxJhONFpqlrxw==
+  dependencies:
+    htmlparser2 "^4.1.0"
+
+eslint-plugin-import@^2.22.0:
+  version "2.22.0"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.22.0.tgz#92f7736fe1fde3e2de77623c838dd992ff5ffb7e"
+  integrity sha512-66Fpf1Ln6aIS5Gr/55ts19eUuoDhAbZgnr6UxK5hbDx6l/QgQgx61AePq+BV4PP2uXQFClgMVzep5zZ94qqsxg==
+  dependencies:
+    array-includes "^3.1.1"
+    array.prototype.flat "^1.2.3"
+    contains-path "^0.1.0"
+    debug "^2.6.9"
+    doctrine "1.5.0"
+    eslint-import-resolver-node "^0.3.3"
+    eslint-module-utils "^2.6.0"
+    has "^1.0.3"
+    minimatch "^3.0.4"
+    object.values "^1.1.1"
+    read-pkg-up "^2.0.0"
+    resolve "^1.17.0"
+    tsconfig-paths "^3.9.0"
+
+eslint-plugin-node@^11.1.0:
+  version "11.1.0"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz#c95544416ee4ada26740a30474eefc5402dc671d"
+  integrity sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==
+  dependencies:
+    eslint-plugin-es "^3.0.0"
+    eslint-utils "^2.0.0"
+    ignore "^5.1.1"
+    minimatch "^3.0.4"
+    resolve "^1.10.1"
+    semver "^6.1.0"
+
+eslint-plugin-promise@^4.2.1:
+  version "4.2.1"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz#845fd8b2260ad8f82564c1222fce44ad71d9418a"
+  integrity sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw==
+
+eslint-plugin-standard@^4.0.1:
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.0.1.tgz#ff0519f7ffaff114f76d1bd7c3996eef0f6e20b4"
+  integrity sha512-v/KBnfyaOMPmZc/dmc6ozOdWqekGp7bBGq4jLAecEfPGmfKiWS4sA8sC0LqiV9w5qmXAtXVn4M3p1jSyhY85SQ==
+
+eslint-scope@^4.0.3:
+  version "4.0.3"
+  resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848"
+  integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==
+  dependencies:
+    esrecurse "^4.1.0"
+    estraverse "^4.1.1"
+
+eslint-scope@^5.1.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.0.tgz#d0f971dfe59c69e0cada684b23d49dbf82600ce5"
+  integrity sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==
+  dependencies:
+    esrecurse "^4.1.0"
+    estraverse "^4.1.1"
+
+eslint-utils@^2.0.0, eslint-utils@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27"
+  integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==
+  dependencies:
+    eslint-visitor-keys "^1.1.0"
+
+eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2"
+  integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==
+
+eslint-visitor-keys@^1.3.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e"
+  integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==
+
+eslint@^7.5.0:
+  version "7.5.0"
+  resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.5.0.tgz#9ecbfad62216d223b82ac9ffea7ef3444671d135"
+  integrity sha512-vlUP10xse9sWt9SGRtcr1LAC67BENcQMFeV+w5EvLEoFe3xJ8cF1Skd0msziRx/VMC+72B4DxreCE+OR12OA6Q==
+  dependencies:
+    "@babel/code-frame" "^7.0.0"
+    ajv "^6.10.0"
+    chalk "^4.0.0"
+    cross-spawn "^7.0.2"
+    debug "^4.0.1"
+    doctrine "^3.0.0"
+    enquirer "^2.3.5"
+    eslint-scope "^5.1.0"
+    eslint-utils "^2.1.0"
+    eslint-visitor-keys "^1.3.0"
+    espree "^7.2.0"
+    esquery "^1.2.0"
+    esutils "^2.0.2"
+    file-entry-cache "^5.0.1"
+    functional-red-black-tree "^1.0.1"
+    glob-parent "^5.0.0"
+    globals "^12.1.0"
+    ignore "^4.0.6"
+    import-fresh "^3.0.0"
+    imurmurhash "^0.1.4"
+    is-glob "^4.0.0"
+    js-yaml "^3.13.1"
+    json-stable-stringify-without-jsonify "^1.0.1"
+    levn "^0.4.1"
+    lodash "^4.17.19"
+    minimatch "^3.0.4"
+    natural-compare "^1.4.0"
+    optionator "^0.9.1"
+    progress "^2.0.0"
+    regexpp "^3.1.0"
+    semver "^7.2.1"
+    strip-ansi "^6.0.0"
+    strip-json-comments "^3.1.0"
+    table "^5.2.3"
+    text-table "^0.2.0"
+    v8-compile-cache "^2.0.3"
+
+espree@^7.2.0:
+  version "7.2.0"
+  resolved "https://registry.yarnpkg.com/espree/-/espree-7.2.0.tgz#1c263d5b513dbad0ac30c4991b93ac354e948d69"
+  integrity sha512-H+cQ3+3JYRMEIOl87e7QdHX70ocly5iW4+dttuR8iYSPr/hXKFb+7dBsZ7+u1adC4VrnPlTkv0+OwuPnDop19g==
+  dependencies:
+    acorn "^7.3.1"
+    acorn-jsx "^5.2.0"
+    eslint-visitor-keys "^1.3.0"
+
+esprima@^4.0.0:
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
+  integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
+
+esquery@^1.2.0:
+  version "1.3.1"
+  resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57"
+  integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==
+  dependencies:
+    estraverse "^5.1.0"
+
+esrecurse@^4.1.0:
+  version "4.2.1"
+  resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf"
+  integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==
+  dependencies:
+    estraverse "^4.1.0"
+
+estraverse@^4.1.0, estraverse@^4.1.1:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
+  integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
+
+estraverse@^5.1.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz#374309d39fd935ae500e7b92e8a6b4c720e59642"
+  integrity sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==
+
+esutils@^2.0.2:
+  version "2.0.3"
+  resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
+  integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
+
+eventemitter3@^4.0.4:
+  version "4.0.7"
+  resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f"
+  integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==
+
+events@^3.0.0:
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/events/-/events-3.2.0.tgz#93b87c18f8efcd4202a461aec4dfc0556b639379"
+  integrity sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==
+
+evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02"
+  integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==
+  dependencies:
+    md5.js "^1.3.4"
+    safe-buffer "^5.1.1"
+
+execall@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/execall/-/execall-2.0.0.tgz#16a06b5fe5099df7d00be5d9c06eecded1663b45"
+  integrity sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow==
+  dependencies:
+    clone-regexp "^2.1.0"
+
+exit@0.1.2, exit@0.1.x:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
+  integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=
+
+expand-brackets@^2.1.4:
+  version "2.1.4"
+  resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622"
+  integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI=
+  dependencies:
+    debug "^2.3.3"
+    define-property "^0.2.5"
+    extend-shallow "^2.0.1"
+    posix-character-classes "^0.1.0"
+    regex-not "^1.0.0"
+    snapdragon "^0.8.1"
+    to-regex "^3.0.1"
+
+expand-tilde@^2.0.0, expand-tilde@^2.0.2:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502"
+  integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=
+  dependencies:
+    homedir-polyfill "^1.0.1"
+
+extend-shallow@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f"
+  integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=
+  dependencies:
+    is-extendable "^0.1.0"
+
+extend-shallow@^3.0.0, extend-shallow@^3.0.2:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8"
+  integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=
+  dependencies:
+    assign-symbols "^1.0.0"
+    is-extendable "^1.0.1"
+
+extend@^3.0.0:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
+  integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
+
+extglob@^2.0.4:
+  version "2.0.4"
+  resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543"
+  integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==
+  dependencies:
+    array-unique "^0.3.2"
+    define-property "^1.0.0"
+    expand-brackets "^2.1.4"
+    extend-shallow "^2.0.1"
+    fragment-cache "^0.2.1"
+    regex-not "^1.0.0"
+    snapdragon "^0.8.1"
+    to-regex "^3.0.1"
+
+fast-deep-equal@^1.0.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614"
+  integrity sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=
+
+fast-deep-equal@^3.1.1:
+  version "3.1.3"
+  resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
+  integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
+
+fast-glob@^3.1.1, fast-glob@^3.2.5:
+  version "3.2.5"
+  resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.5.tgz#7939af2a656de79a4f1901903ee8adcaa7cb9661"
+  integrity sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==
+  dependencies:
+    "@nodelib/fs.stat" "^2.0.2"
+    "@nodelib/fs.walk" "^1.2.3"
+    glob-parent "^5.1.0"
+    merge2 "^1.3.0"
+    micromatch "^4.0.2"
+    picomatch "^2.2.1"
+
+fast-glob@^3.2.4:
+  version "3.2.4"
+  resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.4.tgz#d20aefbf99579383e7f3cc66529158c9b98554d3"
+  integrity sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==
+  dependencies:
+    "@nodelib/fs.stat" "^2.0.2"
+    "@nodelib/fs.walk" "^1.2.3"
+    glob-parent "^5.1.0"
+    merge2 "^1.3.0"
+    micromatch "^4.0.2"
+    picomatch "^2.2.1"
+
+fast-json-stable-stringify@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
+  integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
+
+fast-levenshtein@^2.0.6:
+  version "2.0.6"
+  resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
+  integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
+
+fast-safe-stringify@^2.0.7:
+  version "2.0.7"
+  resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz#124aa885899261f68aedb42a7c080de9da608743"
+  integrity sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==
+
+fastest-levenshtein@^1.0.12:
+  version "1.0.12"
+  resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz#9990f7d3a88cc5a9ffd1f1745745251700d497e2"
+  integrity sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==
+
+fastparse@^1.1.1:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9"
+  integrity sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==
+
+fastq@^1.6.0:
+  version "1.11.0"
+  resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.11.0.tgz#bb9fb955a07130a918eb63c1f5161cc32a5d0858"
+  integrity sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==
+  dependencies:
+    reusify "^1.0.4"
+
+figgy-pudding@^3.5.1:
+  version "3.5.2"
+  resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e"
+  integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==
+
+file-entry-cache@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c"
+  integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==
+  dependencies:
+    flat-cache "^2.0.1"
+
+file-entry-cache@^6.0.1:
+  version "6.0.1"
+  resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
+  integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==
+  dependencies:
+    flat-cache "^3.0.4"
+
+file-loader@^6.0.0:
+  version "6.0.0"
+  resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.0.0.tgz#97bbfaab7a2460c07bcbd72d3a6922407f67649f"
+  integrity sha512-/aMOAYEFXDdjG0wytpTL5YQLfZnnTmLNjn+AIrJ/6HVnTfDqLsVKUUwkDf4I4kgex36BvjuXEn/TX9B/1ESyqQ==
+  dependencies:
+    loader-utils "^2.0.0"
+    schema-utils "^2.6.5"
+
+file-uri-to-path@1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd"
+  integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==
+
+fill-range@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7"
+  integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=
+  dependencies:
+    extend-shallow "^2.0.1"
+    is-number "^3.0.0"
+    repeat-string "^1.6.1"
+    to-regex-range "^2.1.0"
+
+fill-range@^7.0.1:
+  version "7.0.1"
+  resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
+  integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
+  dependencies:
+    to-regex-range "^5.0.1"
+
+find-cache-dir@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7"
+  integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==
+  dependencies:
+    commondir "^1.0.1"
+    make-dir "^2.0.0"
+    pkg-dir "^3.0.0"
+
+find-cache-dir@^3.3.1:
+  version "3.3.1"
+  resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880"
+  integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==
+  dependencies:
+    commondir "^1.0.1"
+    make-dir "^3.0.2"
+    pkg-dir "^4.1.0"
+
+find-up@^2.0.0, find-up@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
+  integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c=
+  dependencies:
+    locate-path "^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"
+  integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==
+  dependencies:
+    locate-path "^3.0.0"
+
+find-up@^4.0.0, find-up@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
+  integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
+  dependencies:
+    locate-path "^5.0.0"
+    path-exists "^4.0.0"
+
+findup-sync@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1"
+  integrity sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==
+  dependencies:
+    detect-file "^1.0.0"
+    is-glob "^4.0.0"
+    micromatch "^3.0.4"
+    resolve-dir "^1.0.1"
+
+flat-cache@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0"
+  integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==
+  dependencies:
+    flatted "^2.0.0"
+    rimraf "2.6.3"
+    write "1.0.3"
+
+flat-cache@^3.0.4:
+  version "3.0.4"
+  resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11"
+  integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==
+  dependencies:
+    flatted "^3.1.0"
+    rimraf "^3.0.2"
+
+flatted@^2.0.0:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138"
+  integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==
+
+flatted@^3.1.0:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469"
+  integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==
+
+flush-write-stream@^1.0.0:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8"
+  integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==
+  dependencies:
+    inherits "^2.0.3"
+    readable-stream "^2.3.6"
+
+for-in@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
+  integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=
+
+foreach@^2.0.4:
+  version "2.0.5"
+  resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99"
+  integrity sha1-C+4AUBiusmDQo6865ljdATbsG5k=
+
+format-util@^1.0.3:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/format-util/-/format-util-1.0.5.tgz#1ffb450c8a03e7bccffe40643180918cc297d271"
+  integrity sha512-varLbTj0e0yVyRpqQhuWV+8hlePAgaoFRhNFj50BNjEIrw1/DphHSObtqwskVCPWNgzwPoQrZAbfa/SBiicNeg==
+
+fragment-cache@^0.2.1:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19"
+  integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=
+  dependencies:
+    map-cache "^0.2.2"
+
+from2@^2.1.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af"
+  integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=
+  dependencies:
+    inherits "^2.0.1"
+    readable-stream "^2.0.0"
+
+fs-extra@^7.0.0:
+  version "7.0.1"
+  resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9"
+  integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==
+  dependencies:
+    graceful-fs "^4.1.2"
+    jsonfile "^4.0.0"
+    universalify "^0.1.0"
+
+fs-minipass@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb"
+  integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==
+  dependencies:
+    minipass "^3.0.0"
+
+fs-write-stream-atomic@^1.0.8:
+  version "1.0.10"
+  resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9"
+  integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=
+  dependencies:
+    graceful-fs "^4.1.2"
+    iferr "^0.1.5"
+    imurmurhash "^0.1.4"
+    readable-stream "1 || 2"
+
+fs.realpath@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
+  integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
+
+fsevents@^1.2.7:
+  version "1.2.13"
+  resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38"
+  integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==
+  dependencies:
+    bindings "^1.5.0"
+    nan "^2.12.1"
+
+fsevents@~2.1.2:
+  version "2.1.3"
+  resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e"
+  integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==
+
+function-bind@^1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
+  integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
+
+functional-red-black-tree@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
+  integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=
+
+generic-names@^1.0.1:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/generic-names/-/generic-names-1.0.3.tgz#2d786a121aee508876796939e8e3bff836c20917"
+  integrity sha1-LXhqEhruUIh2eWk56OO/+DbCCRc=
+  dependencies:
+    loader-utils "^0.2.16"
+
+gensync@^1.0.0-beta.2:
+  version "1.0.0-beta.2"
+  resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"
+  integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
+
+get-caller-file@^2.0.1, get-caller-file@^2.0.5:
+  version "2.0.5"
+  resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
+  integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
+
+get-stdin@^8.0.0:
+  version "8.0.0"
+  resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53"
+  integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==
+
+get-value@^2.0.3, get-value@^2.0.6:
+  version "2.0.6"
+  resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28"
+  integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=
+
+glob-parent@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae"
+  integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=
+  dependencies:
+    is-glob "^3.1.0"
+    path-dirname "^1.0.0"
+
+glob-parent@^5.0.0, glob-parent@^5.1.1, glob-parent@~5.1.0:
+  version "5.1.1"
+  resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229"
+  integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==
+  dependencies:
+    is-glob "^4.0.1"
+
+glob-parent@^5.1.0:
+  version "5.1.2"
+  resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
+  integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
+  dependencies:
+    is-glob "^4.0.1"
+
+glob-to-regexp@^0.3.0:
+  version "0.3.0"
+  resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab"
+  integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=
+
+glob@^7.0.3, glob@^7.1.1, glob@^7.1.4:
+  version "7.1.6"
+  resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6"
+  integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==
+  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"
+
+glob@^7.1.3:
+  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"
+  integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==
+  dependencies:
+    global-prefix "^1.0.1"
+    is-windows "^1.0.1"
+    resolve-dir "^1.0.0"
+
+global-modules@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780"
+  integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==
+  dependencies:
+    global-prefix "^3.0.0"
+
+global-prefix@^1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe"
+  integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=
+  dependencies:
+    expand-tilde "^2.0.2"
+    homedir-polyfill "^1.0.1"
+    ini "^1.3.4"
+    is-windows "^1.0.1"
+    which "^1.2.14"
+
+global-prefix@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz#fc85f73064df69f50421f47f883fe5b913ba9b97"
+  integrity sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==
+  dependencies:
+    ini "^1.3.5"
+    kind-of "^6.0.2"
+    which "^1.3.1"
+
+globals@^11.1.0:
+  version "11.12.0"
+  resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
+  integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
+
+globals@^12.1.0:
+  version "12.4.0"
+  resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8"
+  integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==
+  dependencies:
+    type-fest "^0.8.1"
+
+globals@^9.18.0:
+  version "9.18.0"
+  resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a"
+  integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==
+
+globby@^11.0.1, globby@^11.0.3:
+  version "11.0.3"
+  resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.3.tgz#9b1f0cb523e171dd1ad8c7b2a9fb4b644b9593cb"
+  integrity sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==
+  dependencies:
+    array-union "^2.1.0"
+    dir-glob "^3.0.1"
+    fast-glob "^3.1.1"
+    ignore "^5.1.4"
+    merge2 "^1.3.0"
+    slash "^3.0.0"
+
+globby@^6.1.0:
+  version "6.1.0"
+  resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c"
+  integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=
+  dependencies:
+    array-union "^1.0.1"
+    glob "^7.0.3"
+    object-assign "^4.0.1"
+    pify "^2.0.0"
+    pinkie-promise "^2.0.0"
+
+globjoin@^0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/globjoin/-/globjoin-0.1.4.tgz#2f4494ac8919e3767c5cbb691e9f463324285d43"
+  integrity sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=
+
+gonzales-pe@^4.3.0:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/gonzales-pe/-/gonzales-pe-4.3.0.tgz#fe9dec5f3c557eead09ff868c65826be54d067b3"
+  integrity sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==
+  dependencies:
+    minimist "^1.2.5"
+
+good-listener@^1.2.2:
+  version "1.2.2"
+  resolved "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50"
+  integrity sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=
+  dependencies:
+    delegate "^3.1.2"
+
+graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2:
+  version "4.2.4"
+  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb"
+  integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==
+
+graceful-fs@^4.1.6:
+  version "4.2.3"
+  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423"
+  integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==
+
+grapheme-splitter@^1.0.4:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e"
+  integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==
+
+graphlib@^2.1.8:
+  version "2.1.8"
+  resolved "https://registry.yarnpkg.com/graphlib/-/graphlib-2.1.8.tgz#5761d414737870084c92ec7b5dbcb0592c9d35da"
+  integrity sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==
+  dependencies:
+    lodash "^4.17.15"
+
+hard-rejection@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883"
+  integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==
+
+has-ansi@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
+  integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=
+  dependencies:
+    ansi-regex "^2.0.0"
+
+has-flag@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
+  integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
+
+has-flag@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
+  integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
+
+has-symbols@^1.0.0, has-symbols@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8"
+  integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==
+
+has-value@^0.3.1:
+  version "0.3.1"
+  resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f"
+  integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=
+  dependencies:
+    get-value "^2.0.3"
+    has-values "^0.1.4"
+    isobject "^2.0.0"
+
+has-value@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177"
+  integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=
+  dependencies:
+    get-value "^2.0.6"
+    has-values "^1.0.0"
+    isobject "^3.0.0"
+
+has-values@^0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771"
+  integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E=
+
+has-values@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f"
+  integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=
+  dependencies:
+    is-number "^3.0.0"
+    kind-of "^4.0.0"
+
+has@^1.0.3:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
+  integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
+  dependencies:
+    function-bind "^1.1.1"
+
+hash-base@^3.0.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33"
+  integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==
+  dependencies:
+    inherits "^2.0.4"
+    readable-stream "^3.6.0"
+    safe-buffer "^5.2.0"
+
+hash.js@^1.0.0, hash.js@^1.0.3:
+  version "1.1.7"
+  resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42"
+  integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==
+  dependencies:
+    inherits "^2.0.3"
+    minimalistic-assert "^1.0.1"
+
+hex-color-regex@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e"
+  integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==
+
+hmac-drbg@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1"
+  integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=
+  dependencies:
+    hash.js "^1.0.3"
+    minimalistic-assert "^1.0.0"
+    minimalistic-crypto-utils "^1.0.1"
+
+home-or-tmp@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8"
+  integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg=
+  dependencies:
+    os-homedir "^1.0.0"
+    os-tmpdir "^1.0.1"
+
+homedir-polyfill@^1.0.1:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8"
+  integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==
+  dependencies:
+    parse-passwd "^1.0.0"
+
+hosted-git-info@^2.1.4:
+  version "2.8.9"
+  resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9"
+  integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==
+
+hosted-git-info@^4.0.1:
+  version "4.0.2"
+  resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz#5e425507eede4fea846b7262f0838456c4209961"
+  integrity sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==
+  dependencies:
+    lru-cache "^6.0.0"
+
+hsl-regex@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e"
+  integrity sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=
+
+hsla-regex@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38"
+  integrity sha1-wc56MWjIxmFAM6S194d/OyJfnDg=
+
+html-tags@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz#7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140"
+  integrity sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==
+
+htmlparser2@3.8.x:
+  version "3.8.3"
+  resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.8.3.tgz#996c28b191516a8be86501a7d79757e5c70c1068"
+  integrity sha1-mWwosZFRaovoZQGn15dX5ccMEGg=
+  dependencies:
+    domelementtype "1"
+    domhandler "2.3"
+    domutils "1.5"
+    entities "1.0"
+    readable-stream "1.1"
+
+htmlparser2@^3.10.0:
+  version "3.10.1"
+  resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f"
+  integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==
+  dependencies:
+    domelementtype "^1.3.1"
+    domhandler "^2.3.0"
+    domutils "^1.5.1"
+    entities "^1.1.1"
+    inherits "^2.0.1"
+    readable-stream "^3.1.1"
+
+htmlparser2@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-4.1.0.tgz#9a4ef161f2e4625ebf7dfbe6c0a2f52d18a59e78"
+  integrity sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==
+  dependencies:
+    domelementtype "^2.0.1"
+    domhandler "^3.0.0"
+    domutils "^2.0.0"
+    entities "^2.0.0"
+
+http2-client@^1.2.5:
+  version "1.3.3"
+  resolved "https://registry.yarnpkg.com/http2-client/-/http2-client-1.3.3.tgz#90fc15d646cca86956b156d07c83947d57d659a9"
+  integrity sha512-nUxLymWQ9pzkzTmir24p2RtsgruLmhje7lH3hLX1IpwvyTg77fW+1brenPPP3USAR+rQ36p5sTA/x7sjCJVkAA==
+
+https-browserify@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
+  integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
+
+iconv-lite@0.4:
+  version "0.4.24"
+  resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
+  integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
+  dependencies:
+    safer-buffer ">= 2.1.2 < 3"
+
+icss-replace-symbols@^1.0.2, icss-replace-symbols@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded"
+  integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=
+
+icss-utils@^3.0.1:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-3.0.1.tgz#ee70d3ae8cac38c6be5ed91e851b27eed343ad0f"
+  integrity sha1-7nDTroysOMa+XtkehRsn7tNDrQ8=
+  dependencies:
+    postcss "^6.0.2"
+
+icss-utils@^4.0.0, icss-utils@^4.1.1:
+  version "4.1.1"
+  resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467"
+  integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==
+  dependencies:
+    postcss "^7.0.14"
+
+ieee754@^1.1.4:
+  version "1.1.13"
+  resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84"
+  integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==
+
+iferr@^0.1.5:
+  version "0.1.5"
+  resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501"
+  integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE=
+
+ignore@^4.0.6:
+  version "4.0.6"
+  resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc"
+  integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==
+
+ignore@^5.1.1, ignore@^5.1.4, ignore@^5.1.8:
+  version "5.1.8"
+  resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57"
+  integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==
+
+import-fresh@^3.0.0:
+  version "3.2.1"
+  resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66"
+  integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==
+  dependencies:
+    parent-module "^1.0.0"
+    resolve-from "^4.0.0"
+
+import-fresh@^3.2.1:
+  version "3.3.0"
+  resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
+  integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==
+  dependencies:
+    parent-module "^1.0.0"
+    resolve-from "^4.0.0"
+
+import-lazy@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz#e8eb627483a0a43da3c03f3e35548be5cb0cc153"
+  integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==
+
+import-local@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d"
+  integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==
+  dependencies:
+    pkg-dir "^3.0.0"
+    resolve-cwd "^2.0.0"
+
+imports-loader@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/imports-loader/-/imports-loader-1.1.0.tgz#1c3a388d0c5cd7f9eb08f3646d4aae3b70e57933"
+  integrity sha512-HcPM6rULdQ6EBLVq+5O+CF9xb7qiUjsRm6V28bTG/c3IU5sQkVZzUDwYY0r4jHvSAmVFdO9WA/vLAURR5WQSeQ==
+  dependencies:
+    loader-utils "^2.0.0"
+    schema-utils "^2.7.0"
+    source-map "^0.6.1"
+    strip-comments "^2.0.1"
+
+imurmurhash@^0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
+  integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
+
+indent-string@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251"
+  integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==
+
+indexes-of@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607"
+  integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc=
+
+infer-owner@^1.0.3, infer-owner@^1.0.4:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467"
+  integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==
+
+inflight@^1.0.4:
+  version "1.0.6"
+  resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
+  integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
+  dependencies:
+    once "^1.3.0"
+    wrappy "1"
+
+inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3:
+  version "2.0.4"
+  resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
+  integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
+
+inherits@2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
+  integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=
+
+inherits@2.0.3:
+  version "2.0.3"
+  resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
+  integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
+
+ini@^1.3.4, ini@^1.3.5:
+  version "1.3.8"
+  resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c"
+  integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
+
+interpret@^1.4.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e"
+  integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==
+
+invariant@^2.2.2:
+  version "2.2.4"
+  resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6"
+  integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==
+  dependencies:
+    loose-envify "^1.0.0"
+
+is-absolute-url@^3.0.3:
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698"
+  integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==
+
+is-accessor-descriptor@^0.1.6:
+  version "0.1.6"
+  resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6"
+  integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=
+  dependencies:
+    kind-of "^3.0.2"
+
+is-accessor-descriptor@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656"
+  integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==
+  dependencies:
+    kind-of "^6.0.0"
+
+is-alphabetical@^1.0.0:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d"
+  integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==
+
+is-alphanumerical@^1.0.0:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf"
+  integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==
+  dependencies:
+    is-alphabetical "^1.0.0"
+    is-decimal "^1.0.0"
+
+is-arrayish@^0.2.1:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
+  integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
+
+is-binary-path@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898"
+  integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=
+  dependencies:
+    binary-extensions "^1.0.0"
+
+is-binary-path@~2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"
+  integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==
+  dependencies:
+    binary-extensions "^2.0.0"
+
+is-buffer@^1.1.5:
+  version "1.1.6"
+  resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
+  integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
+
+is-buffer@^2.0.0:
+  version "2.0.5"
+  resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191"
+  integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==
+
+is-callable@^1.1.4:
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75"
+  integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==
+
+is-callable@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.0.tgz#83336560b54a38e35e3a2df7afd0454d691468bb"
+  integrity sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==
+
+is-color-stop@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345"
+  integrity sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=
+  dependencies:
+    css-color-names "^0.0.4"
+    hex-color-regex "^1.1.0"
+    hsl-regex "^1.0.0"
+    hsla-regex "^1.0.0"
+    rgb-regex "^1.0.1"
+    rgba-regex "^1.0.0"
+
+is-core-module@^2.2.0:
+  version "2.4.0"
+  resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.4.0.tgz#8e9fc8e15027b011418026e98f0e6f4d86305cc1"
+  integrity sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==
+  dependencies:
+    has "^1.0.3"
+
+is-data-descriptor@^0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56"
+  integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=
+  dependencies:
+    kind-of "^3.0.2"
+
+is-data-descriptor@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7"
+  integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==
+  dependencies:
+    kind-of "^6.0.0"
+
+is-date-object@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
+  integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=
+
+is-decimal@^1.0.0:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5"
+  integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==
+
+is-descriptor@^0.1.0:
+  version "0.1.6"
+  resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca"
+  integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==
+  dependencies:
+    is-accessor-descriptor "^0.1.6"
+    is-data-descriptor "^0.1.4"
+    kind-of "^5.0.0"
+
+is-descriptor@^1.0.0, is-descriptor@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec"
+  integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==
+  dependencies:
+    is-accessor-descriptor "^1.0.0"
+    is-data-descriptor "^1.0.0"
+    kind-of "^6.0.2"
+
+is-extendable@^0.1.0, is-extendable@^0.1.1:
+  version "0.1.1"
+  resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
+  integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=
+
+is-extendable@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4"
+  integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==
+  dependencies:
+    is-plain-object "^2.0.4"
+
+is-extglob@^2.1.0, is-extglob@^2.1.1:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
+  integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
+
+is-finite@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa"
+  integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=
+  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"
+  integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
+
+is-fullwidth-code-point@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
+  integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
+
+is-glob@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a"
+  integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=
+  dependencies:
+    is-extglob "^2.1.0"
+
+is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1:
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc"
+  integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==
+  dependencies:
+    is-extglob "^2.1.1"
+
+is-hexadecimal@^1.0.0:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7"
+  integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==
+
+is-number@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195"
+  integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=
+  dependencies:
+    kind-of "^3.0.2"
+
+is-number@^7.0.0:
+  version "7.0.0"
+  resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
+  integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
+
+is-path-cwd@^2.0.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb"
+  integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==
+
+is-path-in-cwd@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz#bfe2dca26c69f397265a4009963602935a053acb"
+  integrity sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==
+  dependencies:
+    is-path-inside "^2.1.0"
+
+is-path-inside@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz#7c9810587d659a40d27bcdb4d5616eab059494b2"
+  integrity sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==
+  dependencies:
+    path-is-inside "^1.0.2"
+
+is-plain-obj@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e"
+  integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4=
+
+is-plain-obj@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287"
+  integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==
+
+is-plain-object@^2.0.3, is-plain-object@^2.0.4:
+  version "2.0.4"
+  resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
+  integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==
+  dependencies:
+    isobject "^3.0.1"
+
+is-regex@^1.0.4:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz#39d589a358bf18967f726967120b8fc1aed74eae"
+  integrity sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==
+  dependencies:
+    has "^1.0.3"
+
+is-regex@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.0.tgz#ece38e389e490df0dc21caea2bd596f987f767ff"
+  integrity sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==
+  dependencies:
+    has-symbols "^1.0.1"
+
+is-regexp@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-2.1.0.tgz#cd734a56864e23b956bf4e7c66c396a4c0b22c2d"
+  integrity sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA==
+
+is-resolvable@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88"
+  integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==
+
+is-string@^1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6"
+  integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==
+
+is-symbol@^1.0.2:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937"
+  integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==
+  dependencies:
+    has-symbols "^1.0.1"
+
+is-typedarray@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
+  integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
+
+is-unicode-supported@^0.1.0:
+  version "0.1.0"
+  resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7"
+  integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==
+
+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"
+  integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==
+
+is-wsl@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d"
+  integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=
+
+isarray@0.0.1:
+  version "0.0.1"
+  resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
+  integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=
+
+isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
+  integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
+
+isexe@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
+  integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
+
+isobject@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
+  integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=
+  dependencies:
+    isarray "1.0.0"
+
+isobject@^3.0.0, isobject@^3.0.1:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
+  integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8=
+
+jquery@>=1.7, jquery@>=3.4.0, "jquery@^1.8.3 || ^2.0 || ^3.0":
+  version "3.4.1"
+  resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.4.1.tgz#714f1f8d9dde4bdfa55764ba37ef214630d80ef2"
+  integrity sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw==
+
+"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
+  integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
+
+js-tokens@^3.0.2:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
+  integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls=
+
+js-yaml@^3.12.1, js-yaml@^3.13.1:
+  version "3.14.0"
+  resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482"
+  integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==
+  dependencies:
+    argparse "^1.0.7"
+    esprima "^4.0.0"
+
+jsesc@^1.3.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
+  integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s=
+
+jsesc@^2.5.1:
+  version "2.5.2"
+  resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"
+  integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==
+
+jsesc@~0.5.0:
+  version "0.5.0"
+  resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d"
+  integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=
+
+jshint@^2.12.0:
+  version "2.12.0"
+  resolved "https://registry.yarnpkg.com/jshint/-/jshint-2.12.0.tgz#52e75bd058d587ef81a0e2f95e5cf18eb5dc5c37"
+  integrity sha512-TwuuaUDmra0JMkuqvqy+WGo2xGHSNjv1BA1nTIgtH2K5z1jHuAEeAgp7laaR+hLRmajRjcrM71+vByBDanCyYA==
+  dependencies:
+    cli "~1.0.0"
+    console-browserify "1.1.x"
+    exit "0.1.x"
+    htmlparser2 "3.8.x"
+    lodash "~4.17.19"
+    minimatch "~3.0.2"
+    shelljs "0.3.x"
+    strip-json-comments "1.0.x"
+
+json-parse-better-errors@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9"
+  integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==
+
+json-parse-even-better-errors@^2.3.0:
+  version "2.3.1"
+  resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
+  integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
+
+json-pointer@^0.6.0:
+  version "0.6.0"
+  resolved "https://registry.yarnpkg.com/json-pointer/-/json-pointer-0.6.0.tgz#8e500550a6aac5464a473377da57aa6cc22828d7"
+  integrity sha1-jlAFUKaqxUZKRzN32leqbMIoKNc=
+  dependencies:
+    foreach "^2.0.4"
+
+json-schema-ref-parser@^6.1.0:
+  version "6.1.0"
+  resolved "https://registry.yarnpkg.com/json-schema-ref-parser/-/json-schema-ref-parser-6.1.0.tgz#30af34aeab5bee0431da805dac0eb21b574bf63d"
+  integrity sha512-pXe9H1m6IgIpXmE5JSb8epilNTGsmTb2iPohAXpOdhqGFbQjNeHHsZxU+C8w6T81GZxSPFLeUoqDJmzxx5IGuw==
+  dependencies:
+    call-me-maybe "^1.0.1"
+    js-yaml "^3.12.1"
+    ono "^4.0.11"
+
+json-schema-traverse@^0.3.0:
+  version "0.3.1"
+  resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340"
+  integrity sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=
+
+json-schema-traverse@^0.4.1:
+  version "0.4.1"
+  resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
+  integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
+
+json-schema-traverse@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2"
+  integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==
+
+json-stable-stringify-without-jsonify@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
+  integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=
+
+json-to-ast@^2.0.3:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/json-to-ast/-/json-to-ast-2.1.0.tgz#041a9fcd03c0845036acb670d29f425cea4faaf9"
+  integrity sha512-W9Lq347r8tA1DfMvAGn9QNcgYm4Wm7Yc+k8e6vezpMnRT+NHbtlxgNBXRVjXe9YM6eTn6+p/MKOlV/aABJcSnQ==
+  dependencies:
+    code-error-fragment "0.0.230"
+    grapheme-splitter "^1.0.4"
+
+json5@^0.5.0, json5@^0.5.1:
+  version "0.5.1"
+  resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
+  integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=
+
+json5@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe"
+  integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==
+  dependencies:
+    minimist "^1.2.0"
+
+json5@^2.1.2:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3"
+  integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==
+  dependencies:
+    minimist "^1.2.5"
+
+jsonfile@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"
+  integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=
+  optionalDependencies:
+    graceful-fs "^4.1.6"
+
+jsonpointer@^4.0.1:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.1.0.tgz#501fb89986a2389765ba09e6053299ceb4f2c2cc"
+  integrity sha512-CXcRvMyTlnR53xMcKnuMzfCA5i/nfblTnnr74CZb6C4vG39eu6w51t7nKmU5MfLfbTgGItliNyjO/ciNPDqClg==
+
+kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0:
+  version "3.2.2"
+  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
+  integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=
+  dependencies:
+    is-buffer "^1.1.5"
+
+kind-of@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57"
+  integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc=
+  dependencies:
+    is-buffer "^1.1.5"
+
+kind-of@^5.0.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d"
+  integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==
+
+kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3:
+  version "6.0.3"
+  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
+  integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
+
+known-css-properties@^0.21.0:
+  version "0.21.0"
+  resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.21.0.tgz#15fbd0bbb83447f3ce09d8af247ed47c68ede80d"
+  integrity sha512-sZLUnTqimCkvkgRS+kbPlYW5o8q5w1cu+uIisKpEWkj31I8mx8kNG162DwRav8Zirkva6N5uoFsm9kzK4mUXjw==
+
+last-call-webpack-plugin@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555"
+  integrity sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w==
+  dependencies:
+    lodash "^4.17.5"
+    webpack-sources "^1.1.0"
+
+leven@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2"
+  integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==
+
+levn@^0.4.1:
+  version "0.4.1"
+  resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade"
+  integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==
+  dependencies:
+    prelude-ls "^1.2.1"
+    type-check "~0.4.0"
+
+lines-and-columns@^1.1.6:
+  version "1.1.6"
+  resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00"
+  integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=
+
+load-json-file@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8"
+  integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=
+  dependencies:
+    graceful-fs "^4.1.2"
+    parse-json "^2.2.0"
+    pify "^2.0.0"
+    strip-bom "^3.0.0"
+
+loader-runner@^2.4.0:
+  version "2.4.0"
+  resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357"
+  integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==
+
+loader-utils@^0.2.16:
+  version "0.2.17"
+  resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348"
+  integrity sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=
+  dependencies:
+    big.js "^3.1.3"
+    emojis-list "^2.0.0"
+    json5 "^0.5.0"
+    object-assign "^4.0.1"
+
+loader-utils@^1.2.3, loader-utils@^1.4.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613"
+  integrity sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==
+  dependencies:
+    big.js "^5.2.2"
+    emojis-list "^3.0.0"
+    json5 "^1.0.1"
+
+loader-utils@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0"
+  integrity sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==
+  dependencies:
+    big.js "^5.2.2"
+    emojis-list "^3.0.0"
+    json5 "^2.1.2"
+
+locate-path@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"
+  integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=
+  dependencies:
+    p-locate "^2.0.0"
+    path-exists "^3.0.0"
+
+locate-path@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e"
+  integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==
+  dependencies:
+    p-locate "^3.0.0"
+    path-exists "^3.0.0"
+
+locate-path@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0"
+  integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==
+  dependencies:
+    p-locate "^4.1.0"
+
+lodash.clonedeep@^4.5.0:
+  version "4.5.0"
+  resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef"
+  integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=
+
+lodash.difference@^4.5.0:
+  version "4.5.0"
+  resolved "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz#9ccb4e505d486b91651345772885a2df27fd017c"
+  integrity sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=
+
+lodash.memoize@^4.1.2:
+  version "4.1.2"
+  resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
+  integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=
+
+lodash.truncate@^4.4.2:
+  version "4.4.2"
+  resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193"
+  integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=
+
+lodash.uniq@^4.5.0:
+  version "4.5.0"
+  resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
+  integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=
+
+"lodash@>=3.5 <5", lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.3.0, lodash@~4.17.19:
+  version "4.17.21"
+  resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
+  integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
+
+log-symbols@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503"
+  integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==
+  dependencies:
+    chalk "^4.1.0"
+    is-unicode-supported "^0.1.0"
+
+longest-streak@^2.0.0:
+  version "2.0.4"
+  resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-2.0.4.tgz#b8599957da5b5dab64dee3fe316fa774597d90e4"
+  integrity sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==
+
+loose-envify@^1.0.0, loose-envify@^1.4.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
+  integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
+  dependencies:
+    js-tokens "^3.0.0 || ^4.0.0"
+
+lru-cache@^5.1.1:
+  version "5.1.1"
+  resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920"
+  integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==
+  dependencies:
+    yallist "^3.0.2"
+
+lru-cache@^6.0.0:
+  version "6.0.0"
+  resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
+  integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
+  dependencies:
+    yallist "^4.0.0"
+
+lunr@2.3.8:
+  version "2.3.8"
+  resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.8.tgz#a8b89c31f30b5a044b97d2d28e2da191b6ba2072"
+  integrity sha512-oxMeX/Y35PNFuZoHp+jUj5OSEmLCaIH4KTFJh7a93cHBoFmpw2IoPs22VIz7vyO2YUnx2Tn9dzIwO2P/4quIRg==
+
+make-dir@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5"
+  integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==
+  dependencies:
+    pify "^4.0.1"
+    semver "^5.6.0"
+
+make-dir@^3.0.2:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
+  integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==
+  dependencies:
+    semver "^6.0.0"
+
+map-cache@^0.2.2:
+  version "0.2.2"
+  resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf"
+  integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=
+
+map-obj@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d"
+  integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=
+
+map-obj@^4.0.0:
+  version "4.2.1"
+  resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.2.1.tgz#e4ea399dbc979ae735c83c863dd31bdf364277b7"
+  integrity sha512-+WA2/1sPmDj1dlvvJmB5G6JKfY9dpn7EVBUL06+y6PoljPkh+6V1QihwxNkbcGxCRjt2b0F9K0taiCuo7MbdFQ==
+
+map-visit@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f"
+  integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=
+  dependencies:
+    object-visit "^1.0.0"
+
+mark.js@^8.11.1:
+  version "8.11.1"
+  resolved "https://registry.yarnpkg.com/mark.js/-/mark.js-8.11.1.tgz#180f1f9ebef8b0e638e4166ad52db879beb2ffc5"
+  integrity sha1-GA8fnr74sOY45BZq1S24eb6y/8U=
+
+marked@^0.7.0:
+  version "0.7.0"
+  resolved "https://registry.yarnpkg.com/marked/-/marked-0.7.0.tgz#b64201f051d271b1edc10a04d1ae9b74bb8e5c0e"
+  integrity sha512-c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg==
+
+mathml-tag-names@^2.1.3:
+  version "2.1.3"
+  resolved "https://registry.yarnpkg.com/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz#4ddadd67308e780cf16a47685878ee27b736a0a3"
+  integrity sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==
+
+md5.js@^1.3.4:
+  version "1.3.5"
+  resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f"
+  integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==
+  dependencies:
+    hash-base "^3.0.0"
+    inherits "^2.0.1"
+    safe-buffer "^5.1.2"
+
+mdast-util-from-markdown@^0.8.0:
+  version "0.8.5"
+  resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz#d1ef2ca42bc377ecb0463a987910dae89bd9a28c"
+  integrity sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==
+  dependencies:
+    "@types/mdast" "^3.0.0"
+    mdast-util-to-string "^2.0.0"
+    micromark "~2.11.0"
+    parse-entities "^2.0.0"
+    unist-util-stringify-position "^2.0.0"
+
+mdast-util-to-markdown@^0.6.0:
+  version "0.6.5"
+  resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz#b33f67ca820d69e6cc527a93d4039249b504bebe"
+  integrity sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==
+  dependencies:
+    "@types/unist" "^2.0.0"
+    longest-streak "^2.0.0"
+    mdast-util-to-string "^2.0.0"
+    parse-entities "^2.0.0"
+    repeat-string "^1.0.0"
+    zwitch "^1.0.0"
+
+mdast-util-to-string@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz#b8cfe6a713e1091cb5b728fc48885a4767f8b97b"
+  integrity sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==
+
+mdn-data@2.0.14:
+  version "2.0.14"
+  resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50"
+  integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==
+
+memoize-one@~5.1.1:
+  version "5.1.1"
+  resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.1.1.tgz#047b6e3199b508eaec03504de71229b8eb1d75c0"
+  integrity sha512-HKeeBpWvqiVJD57ZUAsJNm71eHTykffzcLZVYWiVfQeI1rJtuEaS7hQiEpWfVVk18donPwJEcFKIkCmPJNOhHA==
+
+memory-fs@^0.4.1:
+  version "0.4.1"
+  resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552"
+  integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=
+  dependencies:
+    errno "^0.1.3"
+    readable-stream "^2.0.1"
+
+memory-fs@^0.5.0:
+  version "0.5.0"
+  resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c"
+  integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==
+  dependencies:
+    errno "^0.1.3"
+    readable-stream "^2.0.1"
+
+meow@^9.0.0:
+  version "9.0.0"
+  resolved "https://registry.yarnpkg.com/meow/-/meow-9.0.0.tgz#cd9510bc5cac9dee7d03c73ee1f9ad959f4ea364"
+  integrity sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==
+  dependencies:
+    "@types/minimist" "^1.2.0"
+    camelcase-keys "^6.2.2"
+    decamelize "^1.2.0"
+    decamelize-keys "^1.1.0"
+    hard-rejection "^2.1.0"
+    minimist-options "4.1.0"
+    normalize-package-data "^3.0.0"
+    read-pkg-up "^7.0.1"
+    redent "^3.0.0"
+    trim-newlines "^3.0.0"
+    type-fest "^0.18.0"
+    yargs-parser "^20.2.3"
+
+merge2@^1.3.0:
+  version "1.4.1"
+  resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
+  integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
+
+micromark@~2.11.0:
+  version "2.11.4"
+  resolved "https://registry.yarnpkg.com/micromark/-/micromark-2.11.4.tgz#d13436138eea826383e822449c9a5c50ee44665a"
+  integrity sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==
+  dependencies:
+    debug "^4.0.0"
+    parse-entities "^2.0.0"
+
+micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4:
+  version "3.1.10"
+  resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23"
+  integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==
+  dependencies:
+    arr-diff "^4.0.0"
+    array-unique "^0.3.2"
+    braces "^2.3.1"
+    define-property "^2.0.2"
+    extend-shallow "^3.0.2"
+    extglob "^2.0.4"
+    fragment-cache "^0.2.1"
+    kind-of "^6.0.2"
+    nanomatch "^1.2.9"
+    object.pick "^1.3.0"
+    regex-not "^1.0.0"
+    snapdragon "^0.8.1"
+    to-regex "^3.0.2"
+
+micromatch@^4.0.2, micromatch@^4.0.4:
+  version "4.0.4"
+  resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9"
+  integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==
+  dependencies:
+    braces "^3.0.1"
+    picomatch "^2.2.3"
+
+miller-rabin@^4.0.0:
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d"
+  integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==
+  dependencies:
+    bn.js "^4.0.0"
+    brorand "^1.0.1"
+
+mime-db@1.44.0:
+  version "1.44.0"
+  resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92"
+  integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==
+
+mime-types@^2.1.26:
+  version "2.1.27"
+  resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f"
+  integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==
+  dependencies:
+    mime-db "1.44.0"
+
+min-indent@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869"
+  integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==
+
+mini-css-extract-plugin@1.6.0:
+  version "1.6.0"
+  resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-1.6.0.tgz#b4db2525af2624899ed64a23b0016e0036411893"
+  integrity sha512-nPFKI7NSy6uONUo9yn2hIfb9vyYvkFu95qki0e21DQ9uaqNKDP15DGpK0KnV6wDroWxPHtExrdEwx/yDQ8nVRw==
+  dependencies:
+    loader-utils "^2.0.0"
+    schema-utils "^3.0.0"
+    webpack-sources "^1.1.0"
+
+minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
+  integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==
+
+minimalistic-crypto-utils@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
+  integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=
+
+minimatch@^3.0.4, minimatch@~3.0.2:
+  version "3.0.4"
+  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
+  integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
+  dependencies:
+    brace-expansion "^1.1.7"
+
+minimist-options@4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619"
+  integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==
+  dependencies:
+    arrify "^1.0.1"
+    is-plain-obj "^1.1.0"
+    kind-of "^6.0.3"
+
+minimist@^1.2.0, 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==
+
+minipass-collect@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617"
+  integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==
+  dependencies:
+    minipass "^3.0.0"
+
+minipass-flush@^1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373"
+  integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==
+  dependencies:
+    minipass "^3.0.0"
+
+minipass-pipeline@^1.2.2:
+  version "1.2.3"
+  resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.3.tgz#55f7839307d74859d6e8ada9c3ebe72cec216a34"
+  integrity sha512-cFOknTvng5vqnwOpDsZTWhNll6Jf8o2x+/diplafmxpuIymAjzoOolZG0VvQf3V2HgqzJNhnuKHYp2BqDgz8IQ==
+  dependencies:
+    minipass "^3.0.0"
+
+minipass@^3.0.0, minipass@^3.1.1:
+  version "3.1.3"
+  resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd"
+  integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==
+  dependencies:
+    yallist "^4.0.0"
+
+minizlib@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.0.tgz#fd52c645301ef09a63a2c209697c294c6ce02cf3"
+  integrity sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA==
+  dependencies:
+    minipass "^3.0.0"
+    yallist "^4.0.0"
+
+mississippi@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022"
+  integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==
+  dependencies:
+    concat-stream "^1.5.0"
+    duplexify "^3.4.2"
+    end-of-stream "^1.1.0"
+    flush-write-stream "^1.0.0"
+    from2 "^2.1.0"
+    parallel-transform "^1.1.0"
+    pump "^3.0.0"
+    pumpify "^1.3.3"
+    stream-each "^1.1.0"
+    through2 "^2.0.0"
+
+mixin-deep@^1.2.0:
+  version "1.3.2"
+  resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566"
+  integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==
+  dependencies:
+    for-in "^1.0.2"
+    is-extendable "^1.0.1"
+
+mkdirp@^0.5.1, mkdirp@^0.5.3:
+  version "0.5.5"
+  resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
+  integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
+  dependencies:
+    minimist "^1.2.5"
+
+mkdirp@^1.0.3, mkdirp@^1.0.4:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e"
+  integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
+
+mobx-react-lite@^3.2.0:
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/mobx-react-lite/-/mobx-react-lite-3.2.0.tgz#331d7365a6b053378dfe9c087315b4e41c5df69f"
+  integrity sha512-q5+UHIqYCOpBoFm/PElDuOhbcatvTllgRp3M1s+Hp5j0Z6XNgDbgqxawJ0ZAUEyKM8X1zs70PCuhAIzX1f4Q/g==
+
+mobx-react@^7.0.5:
+  version "7.1.0"
+  resolved "https://registry.yarnpkg.com/mobx-react/-/mobx-react-7.1.0.tgz#d947cada3cfad294b4b6f692e969c242b9c16eaf"
+  integrity sha512-DxvA6VXmnZ+N9f/UTtolWtdRnAAQY2iHWTSPLktfpj8NKlXUe4dabBAjuXrBcZUM8GjLWnxD1ZEjssXq1M0RAw==
+  dependencies:
+    mobx-react-lite "^3.2.0"
+
+moment-locales-webpack-plugin@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/moment-locales-webpack-plugin/-/moment-locales-webpack-plugin-1.2.0.tgz#9af83876a44053706b868ceece5119584d10d7aa"
+  integrity sha512-QAi5v0OlPUP7GXviKMtxnpBAo8WmTHrUNN7iciAhNOEAd9evCOvuN0g1N7ThIg3q11GLCkjY1zQ2saRcf/43nQ==
+  dependencies:
+    lodash.difference "^4.5.0"
+
+moment-timezone@^0.4.0:
+  version "0.4.1"
+  resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.4.1.tgz#81f598c3ad5e22cdad796b67ecd8d88d0f5baa06"
+  integrity sha1-gfWYw61eIs2teWtn7NjYjQ9bqgY=
+  dependencies:
+    moment ">= 2.6.0"
+
+moment-timezone@^0.5.28:
+  version "0.5.28"
+  resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.28.tgz#f093d789d091ed7b055d82aa81a82467f72e4338"
+  integrity sha512-TDJkZvAyKIVWg5EtVqRzU97w0Rb0YVbfpqyjgu6GwXCAohVRqwZjf4fOzDE6p1Ch98Sro/8hQQi65WDXW5STPw==
+  dependencies:
+    moment ">= 2.9.0"
+
+"moment@>= 2.6.0", "moment@>= 2.9.0", moment@^2.10:
+  version "2.24.0"
+  resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b"
+  integrity sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==
+
+move-concurrently@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92"
+  integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=
+  dependencies:
+    aproba "^1.1.1"
+    copy-concurrently "^1.0.0"
+    fs-write-stream-atomic "^1.0.8"
+    mkdirp "^0.5.1"
+    rimraf "^2.5.4"
+    run-queue "^1.0.3"
+
+ms@2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
+  integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
+
+ms@2.1.2:
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
+  integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
+
+ms@^2.1.1:
+  version "2.1.3"
+  resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
+  integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
+
+nan@^2.12.1:
+  version "2.14.1"
+  resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01"
+  integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==
+
+nanoid@^3.1.23:
+  version "3.1.23"
+  resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.23.tgz#f744086ce7c2bc47ee0a8472574d5c78e4183a81"
+  integrity sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==
+
+nanomatch@^1.2.9:
+  version "1.2.13"
+  resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119"
+  integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==
+  dependencies:
+    arr-diff "^4.0.0"
+    array-unique "^0.3.2"
+    define-property "^2.0.2"
+    extend-shallow "^3.0.2"
+    fragment-cache "^0.2.1"
+    is-windows "^1.0.2"
+    kind-of "^6.0.2"
+    object.pick "^1.3.0"
+    regex-not "^1.0.0"
+    snapdragon "^0.8.1"
+    to-regex "^3.0.1"
+
+natural-compare@^1.4.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
+  integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
+
+neo-async@^2.5.0, neo-async@^2.6.1:
+  version "2.6.2"
+  resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"
+  integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
+
+nice-try@^1.0.4:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
+  integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==
+
+node-fetch-h2@^2.3.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/node-fetch-h2/-/node-fetch-h2-2.3.0.tgz#c6188325f9bd3d834020bf0f2d6dc17ced2241ac"
+  integrity sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==
+  dependencies:
+    http2-client "^1.2.5"
+
+node-libs-browser@^2.2.1:
+  version "2.2.1"
+  resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425"
+  integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==
+  dependencies:
+    assert "^1.1.1"
+    browserify-zlib "^0.2.0"
+    buffer "^4.3.0"
+    console-browserify "^1.1.0"
+    constants-browserify "^1.0.0"
+    crypto-browserify "^3.11.0"
+    domain-browser "^1.1.1"
+    events "^3.0.0"
+    https-browserify "^1.0.0"
+    os-browserify "^0.3.0"
+    path-browserify "0.0.1"
+    process "^0.11.10"
+    punycode "^1.2.4"
+    querystring-es3 "^0.2.0"
+    readable-stream "^2.3.3"
+    stream-browserify "^2.0.1"
+    stream-http "^2.7.2"
+    string_decoder "^1.0.0"
+    timers-browserify "^2.0.4"
+    tty-browserify "0.0.0"
+    url "^0.11.0"
+    util "^0.11.0"
+    vm-browserify "^1.0.1"
+
+node-readfiles@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/node-readfiles/-/node-readfiles-0.2.0.tgz#dbbd4af12134e2e635c245ef93ffcf6f60673a5d"
+  integrity sha1-271K8SE04uY1wkXvk//Pb2BnOl0=
+  dependencies:
+    es6-promise "^3.2.1"
+
+node-releases@^1.1.61:
+  version "1.1.63"
+  resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.63.tgz#db6dbb388544c31e888216304e8fd170efee3ff5"
+  integrity sha512-ukW3iCfQaoxJkSPN+iK7KznTeqDGVJatAEuXsJERYHa9tn/KaT5lBdIyxQjLEVTzSkyjJEuQ17/vaEjrOauDkg==
+
+node-releases@^1.1.71:
+  version "1.1.71"
+  resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.71.tgz#cb1334b179896b1c89ecfdd4b725fb7bbdfc7dbb"
+  integrity sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==
+
+normalize-package-data@^2.3.2, normalize-package-data@^2.5.0:
+  version "2.5.0"
+  resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
+  integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
+  dependencies:
+    hosted-git-info "^2.1.4"
+    resolve "^1.10.0"
+    semver "2 || 3 || 4 || 5"
+    validate-npm-package-license "^3.0.1"
+
+normalize-package-data@^3.0.0:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.2.tgz#cae5c410ae2434f9a6c1baa65d5bc3b9366c8699"
+  integrity sha512-6CdZocmfGaKnIHPVFhJJZ3GuR8SsLKvDANFp47Jmy51aKIr8akjAWTSxtpI+MBgBFdSMRyo4hMpDlT6dTffgZg==
+  dependencies:
+    hosted-git-info "^4.0.1"
+    resolve "^1.20.0"
+    semver "^7.3.4"
+    validate-npm-package-license "^3.0.1"
+
+normalize-path@^2.1.1:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
+  integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=
+  dependencies:
+    remove-trailing-separator "^1.0.1"
+
+normalize-path@^3.0.0, normalize-path@~3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
+  integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
+
+normalize-range@^0.1.2:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
+  integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=
+
+normalize-selector@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/normalize-selector/-/normalize-selector-0.2.0.tgz#d0b145eb691189c63a78d201dc4fdb1293ef0c03"
+  integrity sha1-0LFF62kRicY6eNIB3E/bEpPvDAM=
+
+normalize-url@^6.0.1:
+  version "6.0.1"
+  resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.0.1.tgz#a4f27f58cf8c7b287b440b8a8201f42d0b00d256"
+  integrity sha512-VU4pzAuh7Kip71XEmO9aNREYAdMHFGTVj/i+CaTImS8x0i1d3jUZkXhqluy/PRgjPLMgsLQulYY3PJ/aSbSjpQ==
+
+nth-check@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.0.tgz#1bb4f6dac70072fc313e8c9cd1417b5074c0a125"
+  integrity sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==
+  dependencies:
+    boolbase "^1.0.0"
+
+num2fraction@^1.2.2:
+  version "1.2.2"
+  resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede"
+  integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=
+
+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=
+
+nvd3@^1.8.6:
+  version "1.8.6"
+  resolved "https://registry.yarnpkg.com/nvd3/-/nvd3-1.8.6.tgz#2d3eba74bf33363b5101ebf1d093c59a53ae73c4"
+  integrity sha1-LT66dL8zNjtRAevx0JPFmlOuc8Q=
+
+oas-kit-common@^1.0.8:
+  version "1.0.8"
+  resolved "https://registry.yarnpkg.com/oas-kit-common/-/oas-kit-common-1.0.8.tgz#6d8cacf6e9097967a4c7ea8bcbcbd77018e1f535"
+  integrity sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==
+  dependencies:
+    fast-safe-stringify "^2.0.7"
+
+oas-linter@^3.1.3:
+  version "3.2.1"
+  resolved "https://registry.yarnpkg.com/oas-linter/-/oas-linter-3.2.1.tgz#1a6d9117d146805b58e56df479861de0293b6e5b"
+  integrity sha512-e5G6bbq3Nrfxm+SDPR5AiZ6n2smVUmhLA1OgI2/Bl8e2ywfWsKw/yuqrwiXXiNHb1wdM/GyPMX6QjCGJODlaaA==
+  dependencies:
+    "@exodus/schemasafe" "^1.0.0-rc.2"
+    should "^13.2.1"
+    yaml "^1.10.0"
+
+oas-resolver@^2.4.3:
+  version "2.5.4"
+  resolved "https://registry.yarnpkg.com/oas-resolver/-/oas-resolver-2.5.4.tgz#81fa1aaa7e2387ab2dba1045827e9d7b79822326"
+  integrity sha512-1vIj5Wkjmi+kZj5sFamt95LkuXoalmoKUohtaUQoCQZjLfPFaY8uZ7nw6IZaWuE6eLON2b6xrXhxD4hiTdYl0g==
+  dependencies:
+    node-fetch-h2 "^2.3.0"
+    oas-kit-common "^1.0.8"
+    reftools "^1.1.8"
+    yaml "^1.10.0"
+    yargs "^16.1.1"
+
+oas-schema-walker@^1.1.5:
+  version "1.1.5"
+  resolved "https://registry.yarnpkg.com/oas-schema-walker/-/oas-schema-walker-1.1.5.tgz#74c3cd47b70ff8e0b19adada14455b5d3ac38a22"
+  integrity sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==
+
+oas-validator@^4.0.8:
+  version "4.0.8"
+  resolved "https://registry.yarnpkg.com/oas-validator/-/oas-validator-4.0.8.tgz#4f1a4d6bd9e030ad07db03fd7a7bc3a91aabcc7d"
+  integrity sha512-bIt8erTyclF7bkaySTtQ9sppqyVc+mAlPi7vPzCLVHJsL9nrivQjc/jHLX/o+eGbxHd6a6YBwuY/Vxa6wGsiuw==
+  dependencies:
+    ajv "^5.5.2"
+    better-ajv-errors "^0.6.7"
+    call-me-maybe "^1.0.1"
+    oas-kit-common "^1.0.8"
+    oas-linter "^3.1.3"
+    oas-resolver "^2.4.3"
+    oas-schema-walker "^1.1.5"
+    reftools "^1.1.5"
+    should "^13.2.1"
+    yaml "^1.8.3"
+
+object-assign@^4.0.1, object-assign@^4.1.1:
+  version "4.1.1"
+  resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
+  integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
+
+object-copy@^0.1.0:
+  version "0.1.0"
+  resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c"
+  integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw=
+  dependencies:
+    copy-descriptor "^0.1.0"
+    define-property "^0.2.5"
+    kind-of "^3.0.3"
+
+object-inspect@^1.7.0:
+  version "1.7.0"
+  resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67"
+  integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==
+
+object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
+  integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
+
+object-visit@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb"
+  integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=
+  dependencies:
+    isobject "^3.0.0"
+
+object.assign@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da"
+  integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==
+  dependencies:
+    define-properties "^1.1.2"
+    function-bind "^1.1.1"
+    has-symbols "^1.0.0"
+    object-keys "^1.0.11"
+
+object.entries@^1.1.0:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.1.tgz#ee1cf04153de02bb093fec33683900f57ce5399b"
+  integrity sha512-ilqR7BgdyZetJutmDPfXCDffGa0/Yzl2ivVNpbx/g4UeWrCdRnFDUBrKJGLhGieRHDATnyZXWBeCb29k9CJysQ==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.0-next.1"
+    function-bind "^1.1.1"
+    has "^1.0.3"
+
+object.entries@^1.1.2:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.2.tgz#bc73f00acb6b6bb16c203434b10f9a7e797d3add"
+  integrity sha512-BQdB9qKmb/HyNdMNWVr7O3+z5MUIx3aiegEIJqjMBbBf0YT9RRxTJSim4mzFqtyr7PDAHigq0N9dO0m0tRakQA==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.5"
+    has "^1.0.3"
+
+object.pick@^1.3.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747"
+  integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=
+  dependencies:
+    isobject "^3.0.1"
+
+object.values@^1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.1.tgz#68a99ecde356b7e9295a3c5e0ce31dc8c953de5e"
+  integrity sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.0-next.1"
+    function-bind "^1.1.1"
+    has "^1.0.3"
+
+once@^1.3.0, once@^1.3.1, once@^1.4.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
+  integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
+  dependencies:
+    wrappy "1"
+
+ono@^4.0.11:
+  version "4.0.11"
+  resolved "https://registry.yarnpkg.com/ono/-/ono-4.0.11.tgz#c7f4209b3e396e8a44ef43b9cedc7f5d791d221d"
+  integrity sha512-jQ31cORBFE6td25deYeD80wxKBMj+zBmHTrVxnc6CKhx8gho6ipmWM5zj/oeoqioZ99yqBls9Z/9Nss7J26G2g==
+  dependencies:
+    format-util "^1.0.3"
+
+openapi-sampler@^1.0.0-beta.18:
+  version "1.0.0-beta.18"
+  resolved "https://registry.yarnpkg.com/openapi-sampler/-/openapi-sampler-1.0.0-beta.18.tgz#9e0845616a669e048860625ea5c10d0f554f1b53"
+  integrity sha512-nG/0kvvSY5FbrU5A+Dbp1xTQN++7pKIh87/atryZlxrzDuok5Y6TCbpxO1jYqpUKLycE4ReKGHCywezngG6xtQ==
+  dependencies:
+    json-pointer "^0.6.0"
+
+optimize-css-assets-webpack-plugin@6.0.0:
+  version "6.0.0"
+  resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-6.0.0.tgz#00acd99d420715ad96ed3d8ad65a8a4df1be233b"
+  integrity sha512-XKVxJuCBSslP1Eyuf1uVtZT3Pkp6jEIkmg7BMcNU/pq6XAnDXTINkYFWmiQWt8+j//FO4dIDd4v+gn0m5VWJIw==
+  dependencies:
+    cssnano "^5.0.2"
+    last-call-webpack-plugin "^3.0.0"
+    postcss "^8.2.1"
+
+optionator@^0.9.1:
+  version "0.9.1"
+  resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499"
+  integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==
+  dependencies:
+    deep-is "^0.1.3"
+    fast-levenshtein "^2.0.6"
+    levn "^0.4.1"
+    prelude-ls "^1.2.1"
+    type-check "^0.4.0"
+    word-wrap "^1.2.3"
+
+os-browserify@^0.3.0:
+  version "0.3.0"
+  resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27"
+  integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=
+
+os-homedir@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
+  integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M=
+
+os-tmpdir@^1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
+  integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
+
+p-limit@^1.1.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8"
+  integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==
+  dependencies:
+    p-try "^1.0.0"
+
+p-limit@^2.0.0, p-limit@^2.2.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
+  integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
+  dependencies:
+    p-try "^2.0.0"
+
+p-limit@^3.0.1:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.0.2.tgz#1664e010af3cadc681baafd3e2a437be7b0fb5fe"
+  integrity sha512-iwqZSOoWIW+Ew4kAGUlN16J4M7OB3ysMLSZtnhmqx7njIHFPlxWBX8xo3lVTyFVq6mI/lL9qt2IsN1sHwaxJkg==
+  dependencies:
+    p-try "^2.0.0"
+
+p-locate@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43"
+  integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=
+  dependencies:
+    p-limit "^1.1.0"
+
+p-locate@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4"
+  integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==
+  dependencies:
+    p-limit "^2.0.0"
+
+p-locate@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07"
+  integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==
+  dependencies:
+    p-limit "^2.2.0"
+
+p-map@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175"
+  integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==
+
+p-map@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b"
+  integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==
+  dependencies:
+    aggregate-error "^3.0.0"
+
+p-try@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"
+  integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=
+
+p-try@^2.0.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
+  integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
+
+pako@~1.0.5:
+  version "1.0.11"
+  resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf"
+  integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==
+
+parallel-transform@^1.1.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc"
+  integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==
+  dependencies:
+    cyclist "^1.0.1"
+    inherits "^2.0.3"
+    readable-stream "^2.1.5"
+
+parent-module@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
+  integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
+  dependencies:
+    callsites "^3.0.0"
+
+parse-asn1@^5.0.0, parse-asn1@^5.1.5:
+  version "5.1.5"
+  resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.5.tgz#003271343da58dc94cace494faef3d2147ecea0e"
+  integrity sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==
+  dependencies:
+    asn1.js "^4.0.0"
+    browserify-aes "^1.0.0"
+    create-hash "^1.1.0"
+    evp_bytestokey "^1.0.0"
+    pbkdf2 "^3.0.3"
+    safe-buffer "^5.1.1"
+
+parse-entities@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-2.0.0.tgz#53c6eb5b9314a1f4ec99fa0fdf7ce01ecda0cbe8"
+  integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==
+  dependencies:
+    character-entities "^1.0.0"
+    character-entities-legacy "^1.0.0"
+    character-reference-invalid "^1.0.0"
+    is-alphanumerical "^1.0.0"
+    is-decimal "^1.0.0"
+    is-hexadecimal "^1.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@^5.0.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd"
+  integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==
+  dependencies:
+    "@babel/code-frame" "^7.0.0"
+    error-ex "^1.3.1"
+    json-parse-even-better-errors "^2.3.0"
+    lines-and-columns "^1.1.6"
+
+parse-passwd@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6"
+  integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=
+
+pascalcase@^0.1.1:
+  version "0.1.1"
+  resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14"
+  integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=
+
+path-browserify@0.0.1:
+  version "0.0.1"
+  resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a"
+  integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==
+
+path-dirname@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0"
+  integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=
+
+path-exists@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
+  integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=
+
+path-exists@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
+  integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
+
+path-is-absolute@^1.0.0, path-is-absolute@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
+  integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
+
+path-is-inside@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
+  integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=
+
+path-key@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
+  integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=
+
+path-key@^3.1.0:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
+  integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
+
+path-parse@^1.0.6:
+  version "1.0.6"
+  resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c"
+  integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==
+
+path-type@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73"
+  integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=
+  dependencies:
+    pify "^2.0.0"
+
+path-type@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
+  integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
+
+pbkdf2@^3.0.3:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.1.tgz#cb8724b0fada984596856d1a6ebafd3584654b94"
+  integrity sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==
+  dependencies:
+    create-hash "^1.1.2"
+    create-hmac "^1.1.4"
+    ripemd160 "^2.0.1"
+    safe-buffer "^5.0.1"
+    sha.js "^2.4.8"
+
+perfect-scrollbar@^1.4.0:
+  version "1.5.0"
+  resolved "https://registry.yarnpkg.com/perfect-scrollbar/-/perfect-scrollbar-1.5.0.tgz#821d224ed8ff61990c23f26db63048cdc75b6b83"
+  integrity sha512-NrNHJn5mUGupSiheBTy6x+6SXCFbLlm8fVZh9moIzw/LgqElN5q4ncR4pbCBCYuCJ8Kcl9mYM0NgDxvW+b4LxA==
+
+picomatch@^2.0.4:
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad"
+  integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==
+
+picomatch@^2.2.1, picomatch@^2.2.3:
+  version "2.2.3"
+  resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.3.tgz#465547f359ccc206d3c48e46a1bcb89bf7ee619d"
+  integrity sha512-KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg==
+
+pify@^2.0.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
+  integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw=
+
+pify@^4.0.1:
+  version "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@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b"
+  integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=
+  dependencies:
+    find-up "^2.1.0"
+
+pkg-dir@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3"
+  integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==
+  dependencies:
+    find-up "^3.0.0"
+
+pkg-dir@^4.1.0:
+  version "4.2.0"
+  resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3"
+  integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==
+  dependencies:
+    find-up "^4.0.0"
+
+polished@^3.6.5:
+  version "3.7.1"
+  resolved "https://registry.yarnpkg.com/polished/-/polished-3.7.1.tgz#d1addc87ee16eb5b413c6165eda37600cccb9c11"
+  integrity sha512-/QgHrNGYwIA4mwxJ/7FSvalUJsm7KNfnXiScVSEG2Xa5qxDeBn4nmdjN2pW00mkM2Tts64ktc47U8F7Ed1BRAA==
+  dependencies:
+    "@babel/runtime" "^7.12.5"
+
+posix-character-classes@^0.1.0:
+  version "0.1.1"
+  resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
+  integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=
+
+postcss-calc@^8.0.0:
+  version "8.0.0"
+  resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.0.0.tgz#a05b87aacd132740a5db09462a3612453e5df90a"
+  integrity sha512-5NglwDrcbiy8XXfPM11F3HeC6hoT9W7GUH/Zi5U/p7u3Irv4rHhdDcIZwG0llHXV4ftsBjpfWMXAnXNl4lnt8g==
+  dependencies:
+    postcss-selector-parser "^6.0.2"
+    postcss-value-parser "^4.0.2"
+
+postcss-colormin@^5.2.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.2.0.tgz#2b620b88c0ff19683f3349f4cf9e24ebdafb2c88"
+  integrity sha512-+HC6GfWU3upe5/mqmxuqYZ9B2Wl4lcoUUNkoaX59nEWV4EtADCMiBqui111Bu8R8IvaZTmqmxrqOAqjbHIwXPw==
+  dependencies:
+    browserslist "^4.16.6"
+    caniuse-api "^3.0.0"
+    colord "^2.0.1"
+    postcss-value-parser "^4.1.0"
+
+postcss-convert-values@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.0.1.tgz#4ec19d6016534e30e3102fdf414e753398645232"
+  integrity sha512-C3zR1Do2BkKkCgC0g3sF8TS0koF2G+mN8xxayZx3f10cIRmTaAnpgpRQZjNekTZxM2ciSPoh2IWJm0VZx8NoQg==
+  dependencies:
+    postcss-value-parser "^4.1.0"
+
+postcss-discard-comments@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-5.0.1.tgz#9eae4b747cf760d31f2447c27f0619d5718901fe"
+  integrity sha512-lgZBPTDvWrbAYY1v5GYEv8fEO/WhKOu/hmZqmCYfrpD6eyDWWzAOsl2rF29lpvziKO02Gc5GJQtlpkTmakwOWg==
+
+postcss-discard-duplicates@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.0.1.tgz#68f7cc6458fe6bab2e46c9f55ae52869f680e66d"
+  integrity sha512-svx747PWHKOGpAXXQkCc4k/DsWo+6bc5LsVrAsw+OU+Ibi7klFZCyX54gjYzX4TH+f2uzXjRviLARxkMurA2bA==
+
+postcss-discard-empty@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-5.0.1.tgz#ee136c39e27d5d2ed4da0ee5ed02bc8a9f8bf6d8"
+  integrity sha512-vfU8CxAQ6YpMxV2SvMcMIyF2LX1ZzWpy0lqHDsOdaKKLQVQGVP1pzhrI9JlsO65s66uQTfkQBKBD/A5gp9STFw==
+
+postcss-discard-overridden@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-5.0.1.tgz#454b41f707300b98109a75005ca4ab0ff2743ac6"
+  integrity sha512-Y28H7y93L2BpJhrdUR2SR2fnSsT+3TVx1NmVQLbcnZWwIUpJ7mfcTC6Za9M2PG6w8j7UQRfzxqn8jU2VwFxo3Q==
+
+postcss-html@^0.36.0:
+  version "0.36.0"
+  resolved "https://registry.yarnpkg.com/postcss-html/-/postcss-html-0.36.0.tgz#b40913f94eaacc2453fd30a1327ad6ee1f88b204"
+  integrity sha512-HeiOxGcuwID0AFsNAL0ox3mW6MHH5cstWN1Z3Y+n6H+g12ih7LHdYxWwEA/QmrebctLjo79xz9ouK3MroHwOJw==
+  dependencies:
+    htmlparser2 "^3.10.0"
+
+postcss-less@^3.1.4:
+  version "3.1.4"
+  resolved "https://registry.yarnpkg.com/postcss-less/-/postcss-less-3.1.4.tgz#369f58642b5928ef898ffbc1a6e93c958304c5ad"
+  integrity sha512-7TvleQWNM2QLcHqvudt3VYjULVB49uiW6XzEUFmvwHzvsOEF5MwBrIXZDJQvJNFGjJQTzSzZnDoCJ8h/ljyGXA==
+  dependencies:
+    postcss "^7.0.14"
+
+postcss-media-query-parser@^0.2.3:
+  version "0.2.3"
+  resolved "https://registry.yarnpkg.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#27b39c6f4d94f81b1a73b8f76351c609e5cef244"
+  integrity sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ=
+
+postcss-merge-longhand@^5.0.2:
+  version "5.0.2"
+  resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.0.2.tgz#277ada51d9a7958e8ef8cf263103c9384b322a41"
+  integrity sha512-BMlg9AXSI5G9TBT0Lo/H3PfUy63P84rVz3BjCFE9e9Y9RXQZD3+h3YO1kgTNsNJy7bBc1YQp8DmSnwLIW5VPcw==
+  dependencies:
+    css-color-names "^1.0.1"
+    postcss-value-parser "^4.1.0"
+    stylehacks "^5.0.1"
+
+postcss-merge-rules@^5.0.2:
+  version "5.0.2"
+  resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.0.2.tgz#d6e4d65018badbdb7dcc789c4f39b941305d410a"
+  integrity sha512-5K+Md7S3GwBewfB4rjDeol6V/RZ8S+v4B66Zk2gChRqLTCC8yjnHQ601omj9TKftS19OPGqZ/XzoqpzNQQLwbg==
+  dependencies:
+    browserslist "^4.16.6"
+    caniuse-api "^3.0.0"
+    cssnano-utils "^2.0.1"
+    postcss-selector-parser "^6.0.5"
+    vendors "^1.0.3"
+
+postcss-minify-font-values@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-5.0.1.tgz#a90cefbfdaa075bd3dbaa1b33588bb4dc268addf"
+  integrity sha512-7JS4qIsnqaxk+FXY1E8dHBDmraYFWmuL6cgt0T1SWGRO5bzJf8sUoelwa4P88LEWJZweHevAiDKxHlofuvtIoA==
+  dependencies:
+    postcss-value-parser "^4.1.0"
+
+postcss-minify-gradients@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-5.0.1.tgz#2dc79fd1a1afcb72a9e727bc549ce860f93565d2"
+  integrity sha512-odOwBFAIn2wIv+XYRpoN2hUV3pPQlgbJ10XeXPq8UY2N+9ZG42xu45lTn/g9zZ+d70NKSQD6EOi6UiCMu3FN7g==
+  dependencies:
+    cssnano-utils "^2.0.1"
+    is-color-stop "^1.1.0"
+    postcss-value-parser "^4.1.0"
+
+postcss-minify-params@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.0.1.tgz#371153ba164b9d8562842fdcd929c98abd9e5b6c"
+  integrity sha512-4RUC4k2A/Q9mGco1Z8ODc7h+A0z7L7X2ypO1B6V8057eVK6mZ6xwz6QN64nHuHLbqbclkX1wyzRnIrdZehTEHw==
+  dependencies:
+    alphanum-sort "^1.0.2"
+    browserslist "^4.16.0"
+    cssnano-utils "^2.0.1"
+    postcss-value-parser "^4.1.0"
+    uniqs "^2.0.0"
+
+postcss-minify-selectors@^5.1.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-5.1.0.tgz#4385c845d3979ff160291774523ffa54eafd5a54"
+  integrity sha512-NzGBXDa7aPsAcijXZeagnJBKBPMYLaJJzB8CQh6ncvyl2sIndLVWfbcDi0SBjRWk5VqEjXvf8tYwzoKf4Z07og==
+  dependencies:
+    alphanum-sort "^1.0.2"
+    postcss-selector-parser "^6.0.5"
+
+postcss-modules-extract-imports@^1.0.0:
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz#dc87e34148ec7eab5f791f7cd5849833375b741a"
+  integrity sha512-6jt9XZwUhwmRUhb/CkyJY020PYaPJsCyt3UjbaWo6XEbH/94Hmv6MP7fG2C5NDU/BcHzyGYxNtHvM+LTf9HrYw==
+  dependencies:
+    postcss "^6.0.1"
+
+postcss-modules-extract-imports@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e"
+  integrity sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==
+  dependencies:
+    postcss "^7.0.5"
+
+postcss-modules-local-by-default@^1.0.1:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069"
+  integrity sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=
+  dependencies:
+    css-selector-tokenizer "^0.7.0"
+    postcss "^6.0.1"
+
+postcss-modules-local-by-default@^3.0.2:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.2.tgz#e8a6561be914aaf3c052876377524ca90dbb7915"
+  integrity sha512-jM/V8eqM4oJ/22j0gx4jrp63GSvDH6v86OqyTHHUvk4/k1vceipZsaymiZ5PvocqZOl5SFHiFJqjs3la0wnfIQ==
+  dependencies:
+    icss-utils "^4.1.1"
+    postcss "^7.0.16"
+    postcss-selector-parser "^6.0.2"
+    postcss-value-parser "^4.0.0"
+
+postcss-modules-resolve-imports@^1.3.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/postcss-modules-resolve-imports/-/postcss-modules-resolve-imports-1.3.0.tgz#398d3000b95ae969420cdf4cd83fa8067f1c5eae"
+  integrity sha1-OY0wALla6WlCDN9M2D+oBn8cXq4=
+  dependencies:
+    css-selector-tokenizer "^0.7.0"
+    icss-utils "^3.0.1"
+    minimist "^1.2.0"
+
+postcss-modules-scope@^1.0.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90"
+  integrity sha1-1upkmUx5+XtipytCb75gVqGUu5A=
+  dependencies:
+    css-selector-tokenizer "^0.7.0"
+    postcss "^6.0.1"
+
+postcss-modules-scope@^2.2.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz#385cae013cc7743f5a7d7602d1073a89eaae62ee"
+  integrity sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==
+  dependencies:
+    postcss "^7.0.6"
+    postcss-selector-parser "^6.0.0"
+
+postcss-modules-values@^1.1.1:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20"
+  integrity sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=
+  dependencies:
+    icss-replace-symbols "^1.1.0"
+    postcss "^6.0.1"
+
+postcss-modules-values@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10"
+  integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==
+  dependencies:
+    icss-utils "^4.0.0"
+    postcss "^7.0.6"
+
+postcss-normalize-charset@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-5.0.1.tgz#121559d1bebc55ac8d24af37f67bd4da9efd91d0"
+  integrity sha512-6J40l6LNYnBdPSk+BHZ8SF+HAkS4q2twe5jnocgd+xWpz/mx/5Sa32m3W1AA8uE8XaXN+eg8trIlfu8V9x61eg==
+
+postcss-normalize-display-values@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.0.1.tgz#62650b965981a955dffee83363453db82f6ad1fd"
+  integrity sha512-uupdvWk88kLDXi5HEyI9IaAJTE3/Djbcrqq8YgjvAVuzgVuqIk3SuJWUisT2gaJbZm1H9g5k2w1xXilM3x8DjQ==
+  dependencies:
+    cssnano-utils "^2.0.1"
+    postcss-value-parser "^4.1.0"
+
+postcss-normalize-positions@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-5.0.1.tgz#868f6af1795fdfa86fbbe960dceb47e5f9492fe5"
+  integrity sha512-rvzWAJai5xej9yWqlCb1OWLd9JjW2Ex2BCPzUJrbaXmtKtgfL8dBMOOMTX6TnvQMtjk3ei1Lswcs78qKO1Skrg==
+  dependencies:
+    postcss-value-parser "^4.1.0"
+
+postcss-normalize-repeat-style@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.0.1.tgz#cbc0de1383b57f5bb61ddd6a84653b5e8665b2b5"
+  integrity sha512-syZ2itq0HTQjj4QtXZOeefomckiV5TaUO6ReIEabCh3wgDs4Mr01pkif0MeVwKyU/LHEkPJnpwFKRxqWA/7O3w==
+  dependencies:
+    cssnano-utils "^2.0.1"
+    postcss-value-parser "^4.1.0"
+
+postcss-normalize-string@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-5.0.1.tgz#d9eafaa4df78c7a3b973ae346ef0e47c554985b0"
+  integrity sha512-Ic8GaQ3jPMVl1OEn2U//2pm93AXUcF3wz+OriskdZ1AOuYV25OdgS7w9Xu2LO5cGyhHCgn8dMXh9bO7vi3i9pA==
+  dependencies:
+    postcss-value-parser "^4.1.0"
+
+postcss-normalize-timing-functions@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.0.1.tgz#8ee41103b9130429c6cbba736932b75c5e2cb08c"
+  integrity sha512-cPcBdVN5OsWCNEo5hiXfLUnXfTGtSFiBU9SK8k7ii8UD7OLuznzgNRYkLZow11BkQiiqMcgPyh4ZqXEEUrtQ1Q==
+  dependencies:
+    cssnano-utils "^2.0.1"
+    postcss-value-parser "^4.1.0"
+
+postcss-normalize-unicode@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.0.1.tgz#82d672d648a411814aa5bf3ae565379ccd9f5e37"
+  integrity sha512-kAtYD6V3pK0beqrU90gpCQB7g6AOfP/2KIPCVBKJM2EheVsBQmx/Iof+9zR9NFKLAx4Pr9mDhogB27pmn354nA==
+  dependencies:
+    browserslist "^4.16.0"
+    postcss-value-parser "^4.1.0"
+
+postcss-normalize-url@^5.0.2:
+  version "5.0.2"
+  resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-5.0.2.tgz#ddcdfb7cede1270740cf3e4dfc6008bd96abc763"
+  integrity sha512-k4jLTPUxREQ5bpajFQZpx8bCF2UrlqOTzP9kEqcEnOfwsRshWs2+oAFIHfDQB8GO2PaUaSE0NlTAYtbluZTlHQ==
+  dependencies:
+    is-absolute-url "^3.0.3"
+    normalize-url "^6.0.1"
+    postcss-value-parser "^4.1.0"
+
+postcss-normalize-whitespace@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.0.1.tgz#b0b40b5bcac83585ff07ead2daf2dcfbeeef8e9a"
+  integrity sha512-iPklmI5SBnRvwceb/XH568yyzK0qRVuAG+a1HFUsFRf11lEJTiQQa03a4RSCQvLKdcpX7XsI1Gen9LuLoqwiqA==
+  dependencies:
+    postcss-value-parser "^4.1.0"
+
+postcss-ordered-values@^5.0.2:
+  version "5.0.2"
+  resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-5.0.2.tgz#1f351426977be00e0f765b3164ad753dac8ed044"
+  integrity sha512-8AFYDSOYWebJYLyJi3fyjl6CqMEG/UVworjiyK1r573I56kb3e879sCJLGvR3merj+fAdPpVplXKQZv+ey6CgQ==
+  dependencies:
+    cssnano-utils "^2.0.1"
+    postcss-value-parser "^4.1.0"
+
+postcss-reduce-initial@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.0.1.tgz#9d6369865b0f6f6f6b165a0ef5dc1a4856c7e946"
+  integrity sha512-zlCZPKLLTMAqA3ZWH57HlbCjkD55LX9dsRyxlls+wfuRfqCi5mSlZVan0heX5cHr154Dq9AfbH70LyhrSAezJw==
+  dependencies:
+    browserslist "^4.16.0"
+    caniuse-api "^3.0.0"
+
+postcss-reduce-transforms@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.0.1.tgz#93c12f6a159474aa711d5269923e2383cedcf640"
+  integrity sha512-a//FjoPeFkRuAguPscTVmRQUODP+f3ke2HqFNgGPwdYnpeC29RZdCBvGRGTsKpMURb/I3p6jdKoBQ2zI+9Q7kA==
+  dependencies:
+    cssnano-utils "^2.0.1"
+    postcss-value-parser "^4.1.0"
+
+postcss-resolve-nested-selector@^0.1.1:
+  version "0.1.1"
+  resolved "https://registry.yarnpkg.com/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz#29ccbc7c37dedfac304e9fff0bf1596b3f6a0e4e"
+  integrity sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4=
+
+postcss-safe-parser@^4.0.2:
+  version "4.0.2"
+  resolved "https://registry.yarnpkg.com/postcss-safe-parser/-/postcss-safe-parser-4.0.2.tgz#a6d4e48f0f37d9f7c11b2a581bf00f8ba4870b96"
+  integrity sha512-Uw6ekxSWNLCPesSv/cmqf2bY/77z11O7jZGPax3ycZMFU/oi2DMH9i89AdHc1tRwFg/arFoEwX0IS3LCUxJh1g==
+  dependencies:
+    postcss "^7.0.26"
+
+postcss-sass@^0.4.4:
+  version "0.4.4"
+  resolved "https://registry.yarnpkg.com/postcss-sass/-/postcss-sass-0.4.4.tgz#91f0f3447b45ce373227a98b61f8d8f0785285a3"
+  integrity sha512-BYxnVYx4mQooOhr+zer0qWbSPYnarAy8ZT7hAQtbxtgVf8gy+LSLT/hHGe35h14/pZDTw1DsxdbrwxBN++H+fg==
+  dependencies:
+    gonzales-pe "^4.3.0"
+    postcss "^7.0.21"
+
+postcss-scss@^2.1.1:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-2.1.1.tgz#ec3a75fa29a55e016b90bf3269026c53c1d2b383"
+  integrity sha512-jQmGnj0hSGLd9RscFw9LyuSVAa5Bl1/KBPqG1NQw9w8ND55nY4ZEsdlVuYJvLPpV+y0nwTV5v/4rHPzZRihQbA==
+  dependencies:
+    postcss "^7.0.6"
+
+postcss-selector-parser@^6.0.0:
+  version "6.0.2"
+  resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c"
+  integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==
+  dependencies:
+    cssesc "^3.0.0"
+    indexes-of "^1.0.1"
+    uniq "^1.0.1"
+
+postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5:
+  version "6.0.6"
+  resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz#2c5bba8174ac2f6981ab631a42ab0ee54af332ea"
+  integrity sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==
+  dependencies:
+    cssesc "^3.0.0"
+    util-deprecate "^1.0.2"
+
+postcss-svgo@^5.0.2:
+  version "5.0.2"
+  resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.0.2.tgz#bc73c4ea4c5a80fbd4b45e29042c34ceffb9257f"
+  integrity sha512-YzQuFLZu3U3aheizD+B1joQ94vzPfE6BNUcSYuceNxlVnKKsOtdo6hL9/zyC168Q8EwfLSgaDSalsUGa9f2C0A==
+  dependencies:
+    postcss-value-parser "^4.1.0"
+    svgo "^2.3.0"
+
+postcss-syntax@^0.36.2:
+  version "0.36.2"
+  resolved "https://registry.yarnpkg.com/postcss-syntax/-/postcss-syntax-0.36.2.tgz#f08578c7d95834574e5593a82dfbfa8afae3b51c"
+  integrity sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w==
+
+postcss-unique-selectors@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-5.0.1.tgz#3be5c1d7363352eff838bd62b0b07a0abad43bfc"
+  integrity sha512-gwi1NhHV4FMmPn+qwBNuot1sG1t2OmacLQ/AX29lzyggnjd+MnVD5uqQmpXO3J17KGL2WAxQruj1qTd3H0gG/w==
+  dependencies:
+    alphanum-sort "^1.0.2"
+    postcss-selector-parser "^6.0.5"
+    uniqs "^2.0.0"
+
+postcss-value-parser@^4.0.0, postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb"
+  integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==
+
+postcss@^6.0.1, postcss@^6.0.2:
+  version "6.0.23"
+  resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324"
+  integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==
+  dependencies:
+    chalk "^2.4.1"
+    source-map "^0.6.1"
+    supports-color "^5.4.0"
+
+postcss@^7.0.14, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0.26, postcss@^7.0.32, postcss@^7.0.35, postcss@^7.0.6:
+  version "7.0.35"
+  resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24"
+  integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==
+  dependencies:
+    chalk "^2.4.2"
+    source-map "^0.6.1"
+    supports-color "^6.1.0"
+
+postcss@^7.0.16, postcss@^7.0.5:
+  version "7.0.32"
+  resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.32.tgz#4310d6ee347053da3433db2be492883d62cec59d"
+  integrity sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw==
+  dependencies:
+    chalk "^2.4.2"
+    source-map "^0.6.1"
+    supports-color "^6.1.0"
+
+postcss@^8.2.1:
+  version "8.3.1"
+  resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.3.1.tgz#71f380151c227f83b898294a46481f689f86b70a"
+  integrity sha512-9qH0MGjsSm+fjxOi3GnwViL1otfi7qkj+l/WX5gcRGmZNGsIcqc+A5fBkE6PUobEQK4APqYVaES+B3Uti98TCw==
+  dependencies:
+    colorette "^1.2.2"
+    nanoid "^3.1.23"
+    source-map-js "^0.6.2"
+
+prelude-ls@^1.2.1:
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
+  integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==
+
+prismjs@^1.22.0:
+  version "1.23.0"
+  resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.23.0.tgz#d3b3967f7d72440690497652a9d40ff046067f33"
+  integrity sha512-c29LVsqOaLbBHuIbsTxaKENh1N2EQBOHaWv7gkHN4dgRbxSREqDnDbtFJYdpPauS4YCplMSNCABQ6Eeor69bAA==
+  optionalDependencies:
+    clipboard "^2.0.0"
+
+private@^0.1.8:
+  version "0.1.8"
+  resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff"
+  integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==
+
+process-nextick-args@~2.0.0:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
+  integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
+
+process@^0.11.10:
+  version "0.11.10"
+  resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
+  integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI=
+
+progress@^2.0.0:
+  version "2.0.3"
+  resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
+  integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==
+
+promise-inflight@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3"
+  integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM=
+
+prop-types@^15.5.0, prop-types@^15.7.2:
+  version "15.7.2"
+  resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5"
+  integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==
+  dependencies:
+    loose-envify "^1.4.0"
+    object-assign "^4.1.1"
+    react-is "^16.8.1"
+
+prr@~1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
+  integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY=
+
+public-encrypt@^4.0.0:
+  version "4.0.3"
+  resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0"
+  integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==
+  dependencies:
+    bn.js "^4.1.0"
+    browserify-rsa "^4.0.0"
+    create-hash "^1.1.0"
+    parse-asn1 "^5.0.0"
+    randombytes "^2.0.1"
+    safe-buffer "^5.1.2"
+
+pump@^2.0.0:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909"
+  integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==
+  dependencies:
+    end-of-stream "^1.1.0"
+    once "^1.3.1"
+
+pump@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
+  integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==
+  dependencies:
+    end-of-stream "^1.1.0"
+    once "^1.3.1"
+
+pumpify@^1.3.3:
+  version "1.5.1"
+  resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce"
+  integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==
+  dependencies:
+    duplexify "^3.6.0"
+    inherits "^2.0.3"
+    pump "^2.0.0"
+
+punycode@1.3.2:
+  version "1.3.2"
+  resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d"
+  integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=
+
+punycode@^1.2.4:
+  version "1.4.1"
+  resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
+  integrity sha1-wNWmOycYgArY4esPpSachN1BhF4=
+
+punycode@^2.1.0:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
+  integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
+
+querystring-es3@^0.2.0:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73"
+  integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=
+
+querystring@0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620"
+  integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=
+
+queue-microtask@^1.2.2:
+  version "1.2.3"
+  resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
+  integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
+
+quick-lru@^4.0.1:
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f"
+  integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==
+
+randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a"
+  integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==
+  dependencies:
+    safe-buffer "^5.1.0"
+
+randomfill@^1.0.3:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458"
+  integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==
+  dependencies:
+    randombytes "^2.0.5"
+    safe-buffer "^5.1.0"
+
+react-is@^16.8.1:
+  version "16.13.1"
+  resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
+  integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
+
+react-tabs@^3.1.1:
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/react-tabs/-/react-tabs-3.2.0.tgz#0fd8d595ef26d3684da876c27a3cc90392dffb40"
+  integrity sha512-q7oNapNRoYTQq8gDhApXwdBheuuN5qQ4YvUaQUAkb6OSSttJulBAvxJ0FS6W5uojvMxbbIZKu1f2I+GXISoLjw==
+  dependencies:
+    clsx "^1.1.0"
+    prop-types "^15.5.0"
+
+read-pkg-up@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be"
+  integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=
+  dependencies:
+    find-up "^2.0.0"
+    read-pkg "^2.0.0"
+
+read-pkg-up@^7.0.1:
+  version "7.0.1"
+  resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507"
+  integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==
+  dependencies:
+    find-up "^4.1.0"
+    read-pkg "^5.2.0"
+    type-fest "^0.8.1"
+
+read-pkg@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8"
+  integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=
+  dependencies:
+    load-json-file "^2.0.0"
+    normalize-package-data "^2.3.2"
+    path-type "^2.0.0"
+
+read-pkg@^5.2.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc"
+  integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==
+  dependencies:
+    "@types/normalize-package-data" "^2.4.0"
+    normalize-package-data "^2.5.0"
+    parse-json "^5.0.0"
+    type-fest "^0.6.0"
+
+"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6:
+  version "2.3.7"
+  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
+  integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
+  dependencies:
+    core-util-is "~1.0.0"
+    inherits "~2.0.3"
+    isarray "~1.0.0"
+    process-nextick-args "~2.0.0"
+    safe-buffer "~5.1.1"
+    string_decoder "~1.1.1"
+    util-deprecate "~1.0.1"
+
+readable-stream@1.1:
+  version "1.1.13"
+  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.13.tgz#f6eef764f514c89e2b9e23146a75ba106756d23e"
+  integrity sha1-9u73ZPUUyJ4rniMUanW6EGdW0j4=
+  dependencies:
+    core-util-is "~1.0.0"
+    inherits "~2.0.1"
+    isarray "0.0.1"
+    string_decoder "~0.10.x"
+
+readable-stream@^3.1.1, 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==
+  dependencies:
+    inherits "^2.0.3"
+    string_decoder "^1.1.1"
+    util-deprecate "^1.0.1"
+
+readdirp@^2.2.1:
+  version "2.2.1"
+  resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525"
+  integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==
+  dependencies:
+    graceful-fs "^4.1.11"
+    micromatch "^3.1.10"
+    readable-stream "^2.0.2"
+
+readdirp@~3.4.0:
+  version "3.4.0"
+  resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.4.0.tgz#9fdccdf9e9155805449221ac645e8303ab5b9ada"
+  integrity sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==
+  dependencies:
+    picomatch "^2.2.1"
+
+redent@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f"
+  integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==
+  dependencies:
+    indent-string "^4.0.0"
+    strip-indent "^3.0.0"
+
+redoc@^2.0.0-rc.48:
+  version "2.0.0-rc.48"
+  resolved "https://registry.yarnpkg.com/redoc/-/redoc-2.0.0-rc.48.tgz#5303cff67af5cba8a2b48dc1347a9854d45be835"
+  integrity sha512-shArJWhNG2gQ0XKxW8WcfG8peNOtxbZ86CqxgrR9P7MnE5ESAo559CH/PSlezePeVLpcC0C9tcimOfSN5MaAvA==
+  dependencies:
+    "@redocly/react-dropdown-aria" "^2.0.11"
+    "@types/node" "^13.11.1"
+    classnames "^2.2.6"
+    decko "^1.2.0"
+    dompurify "^2.0.12"
+    eventemitter3 "^4.0.4"
+    json-pointer "^0.6.0"
+    json-schema-ref-parser "^6.1.0"
+    lunr "2.3.8"
+    mark.js "^8.11.1"
+    marked "^0.7.0"
+    memoize-one "~5.1.1"
+    mobx-react "^7.0.5"
+    openapi-sampler "^1.0.0-beta.18"
+    perfect-scrollbar "^1.4.0"
+    polished "^3.6.5"
+    prismjs "^1.22.0"
+    prop-types "^15.7.2"
+    react-tabs "^3.1.1"
+    slugify "^1.4.4"
+    stickyfill "^1.1.1"
+    swagger2openapi "^6.2.1"
+    tslib "^2.0.0"
+    url-template "^2.0.8"
+
+reftools@^1.1.5, reftools@^1.1.8:
+  version "1.1.8"
+  resolved "https://registry.yarnpkg.com/reftools/-/reftools-1.1.8.tgz#cc08fd67eb913d779fd330657d010cc080c7d643"
+  integrity sha512-Yvz9NH8uFHzD/AXX82Li1GdAP6FzDBxEZw+njerNBBQv/XHihqsWAjNfXtaq4QD2l4TEZVnp4UbktdYSegAM3g==
+
+regenerate@^1.2.1:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11"
+  integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==
+
+regenerator-runtime@^0.10.5:
+  version "0.10.5"
+  resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658"
+  integrity sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=
+
+regenerator-runtime@^0.11.0:
+  version "0.11.1"
+  resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
+  integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==
+
+regenerator-runtime@^0.13.4:
+  version "0.13.7"
+  resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz#cac2dacc8a1ea675feaabaeb8ae833898ae46f55"
+  integrity sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==
+
+regex-not@^1.0.0, regex-not@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c"
+  integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==
+  dependencies:
+    extend-shallow "^3.0.2"
+    safe-regex "^1.1.0"
+
+regexpp@^3.0.0, regexpp@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2"
+  integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==
+
+regexpu-core@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b"
+  integrity sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=
+  dependencies:
+    regenerate "^1.2.1"
+    regjsgen "^0.2.0"
+    regjsparser "^0.1.4"
+
+regjsgen@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7"
+  integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=
+
+regjsparser@^0.1.4:
+  version "0.1.5"
+  resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c"
+  integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=
+  dependencies:
+    jsesc "~0.5.0"
+
+remark-parse@^9.0.0:
+  version "9.0.0"
+  resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-9.0.0.tgz#4d20a299665880e4f4af5d90b7c7b8a935853640"
+  integrity sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==
+  dependencies:
+    mdast-util-from-markdown "^0.8.0"
+
+remark-stringify@^9.0.0:
+  version "9.0.1"
+  resolved "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-9.0.1.tgz#576d06e910548b0a7191a71f27b33f1218862894"
+  integrity sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==
+  dependencies:
+    mdast-util-to-markdown "^0.6.0"
+
+remark@^13.0.0:
+  version "13.0.0"
+  resolved "https://registry.yarnpkg.com/remark/-/remark-13.0.0.tgz#d15d9bf71a402f40287ebe36067b66d54868e425"
+  integrity sha512-HDz1+IKGtOyWN+QgBiAT0kn+2s6ovOxHyPAFGKVE81VSzJ+mq7RwHFledEvB5F1p4iJvOah/LOKdFuzvRnNLCA==
+  dependencies:
+    remark-parse "^9.0.0"
+    remark-stringify "^9.0.0"
+    unified "^9.1.0"
+
+remove-trailing-separator@^1.0.1:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
+  integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8=
+
+repeat-element@^1.1.2:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce"
+  integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==
+
+repeat-string@^1.0.0, repeat-string@^1.6.1:
+  version "1.6.1"
+  resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
+  integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc=
+
+repeating@^2.0.0:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
+  integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=
+  dependencies:
+    is-finite "^1.0.0"
+
+require-directory@^2.1.1:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
+  integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I=
+
+require-from-string@^2.0.2:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
+  integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==
+
+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"
+  integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==
+
+resolve-cwd@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a"
+  integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=
+  dependencies:
+    resolve-from "^3.0.0"
+
+resolve-dir@^1.0.0, resolve-dir@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43"
+  integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=
+  dependencies:
+    expand-tilde "^2.0.0"
+    global-modules "^1.0.0"
+
+resolve-from@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748"
+  integrity sha1-six699nWiBvItuZTM17rywoYh0g=
+
+resolve-from@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
+  integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
+
+resolve-from@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
+  integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
+
+resolve-url@^0.2.1:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
+  integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=
+
+resolve@^1.10.0, resolve@^1.20.0:
+  version "1.20.0"
+  resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975"
+  integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==
+  dependencies:
+    is-core-module "^2.2.0"
+    path-parse "^1.0.6"
+
+resolve@^1.10.1, resolve@^1.13.1, resolve@^1.17.0:
+  version "1.17.0"
+  resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444"
+  integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==
+  dependencies:
+    path-parse "^1.0.6"
+
+resolve@^1.12.0:
+  version "1.14.0"
+  resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.14.0.tgz#6d14c6f9db9f8002071332b600039abf82053f64"
+  integrity sha512-uviWSi5N67j3t3UKFxej1loCH0VZn5XuqdNxoLShPcYPw6cUZn74K1VRj+9myynRX03bxIBEkwlkob/ujLsJVw==
+  dependencies:
+    path-parse "^1.0.6"
+
+ret@~0.1.10:
+  version "0.1.15"
+  resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
+  integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==
+
+reusify@^1.0.4:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
+  integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
+
+rgb-regex@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1"
+  integrity sha1-wODWiC3w4jviVKR16O3UGRX+rrE=
+
+rgba-regex@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3"
+  integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=
+
+rimraf@2.6.3:
+  version "2.6.3"
+  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab"
+  integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==
+  dependencies:
+    glob "^7.1.3"
+
+rimraf@^2.5.4, rimraf@^2.6.3:
+  version "2.7.1"
+  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
+  integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
+  dependencies:
+    glob "^7.1.3"
+
+rimraf@^3.0.2:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
+  integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
+  dependencies:
+    glob "^7.1.3"
+
+ripemd160@^2.0.0, ripemd160@^2.0.1:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c"
+  integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==
+  dependencies:
+    hash-base "^3.0.0"
+    inherits "^2.0.1"
+
+run-parallel@^1.1.9:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
+  integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
+  dependencies:
+    queue-microtask "^1.2.2"
+
+run-queue@^1.0.0, run-queue@^1.0.3:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47"
+  integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=
+  dependencies:
+    aproba "^1.1.1"
+
+rw@1:
+  version "1.3.3"
+  resolved "https://registry.yarnpkg.com/rw/-/rw-1.3.3.tgz#3f862dfa91ab766b14885ef4d01124bfda074fb4"
+  integrity sha1-P4Yt+pGrdmsUiF700BEkv9oHT7Q=
+
+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"
+  integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
+
+safe-buffer@~5.1.0, safe-buffer@~5.1.1:
+  version "5.1.2"
+  resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
+  integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
+
+safe-regex@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e"
+  integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4=
+  dependencies:
+    ret "~0.1.10"
+
+"safer-buffer@>= 2.1.2 < 3":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
+  integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
+
+schema-utils@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770"
+  integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==
+  dependencies:
+    ajv "^6.1.0"
+    ajv-errors "^1.0.0"
+    ajv-keywords "^3.1.0"
+
+schema-utils@^2.6.5, schema-utils@^2.6.6, schema-utils@^2.7.0:
+  version "2.7.0"
+  resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7"
+  integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==
+  dependencies:
+    "@types/json-schema" "^7.0.4"
+    ajv "^6.12.2"
+    ajv-keywords "^3.4.1"
+
+schema-utils@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz#67502f6aa2b66a2d4032b4279a2944978a0913ef"
+  integrity sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==
+  dependencies:
+    "@types/json-schema" "^7.0.6"
+    ajv "^6.12.5"
+    ajv-keywords "^3.5.2"
+
+seekout@^1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/seekout/-/seekout-1.0.2.tgz#09ba9f1bd5b46fbb134718eb19a68382cbb1b9c9"
+  integrity sha1-CbqfG9W0b7sTRxjrGaaDgsuxuck=
+
+select@^1.1.2:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d"
+  integrity sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=
+
+"semver@2 || 3 || 4 || 5", semver@^5.5.0, semver@^5.6.0:
+  version "5.7.1"
+  resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
+  integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
+
+semver@^6.0.0, semver@^6.1.0, semver@^6.3.0:
+  version "6.3.0"
+  resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
+  integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
+
+semver@^7.2.1:
+  version "7.3.2"
+  resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938"
+  integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==
+
+semver@^7.3.4:
+  version "7.3.5"
+  resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
+  integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==
+  dependencies:
+    lru-cache "^6.0.0"
+
+serialize-javascript@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-3.1.0.tgz#8bf3a9170712664ef2561b44b691eafe399214ea"
+  integrity sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==
+  dependencies:
+    randombytes "^2.1.0"
+
+serialize-javascript@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa"
+  integrity sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==
+  dependencies:
+    randombytes "^2.1.0"
+
+set-blocking@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
+  integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc=
+
+set-value@^2.0.0, set-value@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b"
+  integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==
+  dependencies:
+    extend-shallow "^2.0.1"
+    is-extendable "^0.1.1"
+    is-plain-object "^2.0.3"
+    split-string "^3.0.1"
+
+setimmediate@^1.0.4:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
+  integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=
+
+sha.js@^2.4.0, sha.js@^2.4.8:
+  version "2.4.11"
+  resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7"
+  integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==
+  dependencies:
+    inherits "^2.0.1"
+    safe-buffer "^5.0.1"
+
+shebang-command@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
+  integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=
+  dependencies:
+    shebang-regex "^1.0.0"
+
+shebang-command@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
+  integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
+  dependencies:
+    shebang-regex "^3.0.0"
+
+shebang-regex@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
+  integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=
+
+shebang-regex@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
+  integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
+
+shelljs@0.3.x:
+  version "0.3.0"
+  resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.3.0.tgz#3596e6307a781544f591f37da618360f31db57b1"
+  integrity sha1-NZbmMHp4FUT1kfN9phg2DzHbV7E=
+
+should-equal@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/should-equal/-/should-equal-2.0.0.tgz#6072cf83047360867e68e98b09d71143d04ee0c3"
+  integrity sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==
+  dependencies:
+    should-type "^1.4.0"
+
+should-format@^3.0.3:
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/should-format/-/should-format-3.0.3.tgz#9bfc8f74fa39205c53d38c34d717303e277124f1"
+  integrity sha1-m/yPdPo5IFxT04w01xcwPidxJPE=
+  dependencies:
+    should-type "^1.3.0"
+    should-type-adaptors "^1.0.1"
+
+should-type-adaptors@^1.0.1:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/should-type-adaptors/-/should-type-adaptors-1.1.0.tgz#401e7f33b5533033944d5cd8bf2b65027792e27a"
+  integrity sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==
+  dependencies:
+    should-type "^1.3.0"
+    should-util "^1.0.0"
+
+should-type@^1.3.0, should-type@^1.4.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/should-type/-/should-type-1.4.0.tgz#0756d8ce846dfd09843a6947719dfa0d4cff5cf3"
+  integrity sha1-B1bYzoRt/QmEOmlHcZ36DUz/XPM=
+
+should-util@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/should-util/-/should-util-1.0.1.tgz#fb0d71338f532a3a149213639e2d32cbea8bcb28"
+  integrity sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==
+
+should@^13.2.1:
+  version "13.2.3"
+  resolved "https://registry.yarnpkg.com/should/-/should-13.2.3.tgz#96d8e5acf3e97b49d89b51feaa5ae8d07ef58f10"
+  integrity sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==
+  dependencies:
+    should-equal "^2.0.0"
+    should-format "^3.0.3"
+    should-type "^1.4.0"
+    should-type-adaptors "^1.0.1"
+    should-util "^1.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==
+
+slash@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
+  integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=
+
+slash@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
+  integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
+
+slice-ansi@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636"
+  integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==
+  dependencies:
+    ansi-styles "^3.2.0"
+    astral-regex "^1.0.0"
+    is-fullwidth-code-point "^2.0.0"
+
+slice-ansi@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b"
+  integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==
+  dependencies:
+    ansi-styles "^4.0.0"
+    astral-regex "^2.0.0"
+    is-fullwidth-code-point "^3.0.0"
+
+slugify@^1.4.4:
+  version "1.4.7"
+  resolved "https://registry.yarnpkg.com/slugify/-/slugify-1.4.7.tgz#e42359d505afd84a44513280868e31202a79a628"
+  integrity sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==
+
+snapdragon-node@^2.0.1:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b"
+  integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==
+  dependencies:
+    define-property "^1.0.0"
+    isobject "^3.0.0"
+    snapdragon-util "^3.0.1"
+
+snapdragon-util@^3.0.1:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2"
+  integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==
+  dependencies:
+    kind-of "^3.2.0"
+
+snapdragon@^0.8.1:
+  version "0.8.2"
+  resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d"
+  integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==
+  dependencies:
+    base "^0.11.1"
+    debug "^2.2.0"
+    define-property "^0.2.5"
+    extend-shallow "^2.0.1"
+    map-cache "^0.2.2"
+    source-map "^0.5.6"
+    source-map-resolve "^0.5.0"
+    use "^3.1.0"
+
+source-list-map@^2.0.0:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34"
+  integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==
+
+source-map-js@^0.6.2:
+  version "0.6.2"
+  resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-0.6.2.tgz#0bb5de631b41cfbda6cfba8bd05a80efdfd2385e"
+  integrity sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==
+
+source-map-resolve@^0.5.0:
+  version "0.5.3"
+  resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a"
+  integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==
+  dependencies:
+    atob "^2.1.2"
+    decode-uri-component "^0.2.0"
+    resolve-url "^0.2.1"
+    source-map-url "^0.4.0"
+    urix "^0.1.0"
+
+source-map-support@^0.4.15:
+  version "0.4.18"
+  resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
+  integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==
+  dependencies:
+    source-map "^0.5.6"
+
+source-map-support@~0.5.12:
+  version "0.5.19"
+  resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61"
+  integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==
+  dependencies:
+    buffer-from "^1.0.0"
+    source-map "^0.6.0"
+
+source-map-url@^0.4.0:
+  version "0.4.0"
+  resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3"
+  integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=
+
+source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7:
+  version "0.5.7"
+  resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
+  integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=
+
+source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1:
+  version "0.6.1"
+  resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
+  integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
+
+source-map@^0.7.3:
+  version "0.7.3"
+  resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383"
+  integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==
+
+spdx-correct@^3.0.0:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9"
+  integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==
+  dependencies:
+    spdx-expression-parse "^3.0.0"
+    spdx-license-ids "^3.0.0"
+
+spdx-exceptions@^2.1.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d"
+  integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==
+
+spdx-expression-parse@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679"
+  integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==
+  dependencies:
+    spdx-exceptions "^2.1.0"
+    spdx-license-ids "^3.0.0"
+
+spdx-license-ids@^3.0.0:
+  version "3.0.7"
+  resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz#e9c18a410e5ed7e12442a549fbd8afa767038d65"
+  integrity sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==
+
+specificity@^0.4.1:
+  version "0.4.1"
+  resolved "https://registry.yarnpkg.com/specificity/-/specificity-0.4.1.tgz#aab5e645012db08ba182e151165738d00887b019"
+  integrity sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==
+
+split-string@^3.0.1, split-string@^3.0.2:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2"
+  integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==
+  dependencies:
+    extend-shallow "^3.0.0"
+
+sprintf-js@~1.0.2:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
+  integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
+
+ssri@^6.0.1:
+  version "6.0.2"
+  resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.2.tgz#157939134f20464e7301ddba3e90ffa8f7728ac5"
+  integrity sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==
+  dependencies:
+    figgy-pudding "^3.5.1"
+
+ssri@^8.0.0:
+  version "8.0.0"
+  resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.0.tgz#79ca74e21f8ceaeddfcb4b90143c458b8d988808"
+  integrity sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA==
+  dependencies:
+    minipass "^3.1.1"
+
+stable@^0.1.8:
+  version "0.1.8"
+  resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf"
+  integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==
+
+static-extend@^0.1.1:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6"
+  integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=
+  dependencies:
+    define-property "^0.2.5"
+    object-copy "^0.1.0"
+
+stickyfill@^1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/stickyfill/-/stickyfill-1.1.1.tgz#39413fee9d025c74a7e59ceecb23784cc0f17f02"
+  integrity sha1-OUE/7p0CXHSn5ZzuyyN4TMDxfwI=
+
+stream-browserify@^2.0.1:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b"
+  integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==
+  dependencies:
+    inherits "~2.0.1"
+    readable-stream "^2.0.2"
+
+stream-each@^1.1.0:
+  version "1.2.3"
+  resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae"
+  integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==
+  dependencies:
+    end-of-stream "^1.1.0"
+    stream-shift "^1.0.0"
+
+stream-http@^2.7.2:
+  version "2.8.3"
+  resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc"
+  integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==
+  dependencies:
+    builtin-status-codes "^3.0.0"
+    inherits "^2.0.1"
+    readable-stream "^2.3.6"
+    to-arraybuffer "^1.0.0"
+    xtend "^4.0.0"
+
+stream-shift@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d"
+  integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==
+
+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"
+  integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==
+  dependencies:
+    emoji-regex "^7.0.1"
+    is-fullwidth-code-point "^2.0.0"
+    strip-ansi "^5.1.0"
+
+string-width@^4.1.0:
+  version "4.2.0"
+  resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5"
+  integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==
+  dependencies:
+    emoji-regex "^8.0.0"
+    is-fullwidth-code-point "^3.0.0"
+    strip-ansi "^6.0.0"
+
+string-width@^4.2.0, string-width@^4.2.2:
+  version "4.2.2"
+  resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5"
+  integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==
+  dependencies:
+    emoji-regex "^8.0.0"
+    is-fullwidth-code-point "^3.0.0"
+    strip-ansi "^6.0.0"
+
+string.prototype.trimend@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz#85812a6b847ac002270f5808146064c995fb6913"
+  integrity sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.5"
+
+string.prototype.trimleft@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634"
+  integrity sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==
+  dependencies:
+    define-properties "^1.1.3"
+    function-bind "^1.1.1"
+
+string.prototype.trimright@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz#669d164be9df9b6f7559fa8e89945b168a5a6c58"
+  integrity sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==
+  dependencies:
+    define-properties "^1.1.3"
+    function-bind "^1.1.1"
+
+string.prototype.trimstart@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz#14af6d9f34b053f7cfc89b72f8f2ee14b9039a54"
+  integrity sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==
+  dependencies:
+    define-properties "^1.1.3"
+    es-abstract "^1.17.5"
+
+string_decoder@^1.0.0, string_decoder@^1.1.1:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
+  integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
+  dependencies:
+    safe-buffer "~5.2.0"
+
+string_decoder@~0.10.x:
+  version "0.10.31"
+  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
+  integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=
+
+string_decoder@~1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
+  integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
+  dependencies:
+    safe-buffer "~5.1.0"
+
+strip-ansi@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
+  integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
+  dependencies:
+    ansi-regex "^2.0.0"
+
+strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae"
+  integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==
+  dependencies:
+    ansi-regex "^4.1.0"
+
+strip-ansi@^6.0.0:
+  version "6.0.0"
+  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532"
+  integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==
+  dependencies:
+    ansi-regex "^5.0.0"
+
+strip-bom@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
+  integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=
+
+strip-comments@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/strip-comments/-/strip-comments-2.0.1.tgz#4ad11c3fbcac177a67a40ac224ca339ca1c1ba9b"
+  integrity sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==
+
+strip-indent@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001"
+  integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==
+  dependencies:
+    min-indent "^1.0.0"
+
+strip-json-comments@1.0.x:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91"
+  integrity sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=
+
+strip-json-comments@^3.1.0:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
+  integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
+
+style-loader@^1.2.1:
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.2.1.tgz#c5cbbfbf1170d076cfdd86e0109c5bba114baa1a"
+  integrity sha512-ByHSTQvHLkWE9Ir5+lGbVOXhxX10fbprhLvdg96wedFZb4NDekDPxVKv5Fwmio+QcMlkkNfuK+5W1peQ5CUhZg==
+  dependencies:
+    loader-utils "^2.0.0"
+    schema-utils "^2.6.6"
+
+style-search@^0.1.0:
+  version "0.1.0"
+  resolved "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz#7958c793e47e32e07d2b5cafe5c0bf8e12e77902"
+  integrity sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI=
+
+stylehacks@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.0.1.tgz#323ec554198520986806388c7fdaebc38d2c06fb"
+  integrity sha512-Es0rVnHIqbWzveU1b24kbw92HsebBepxfcqe5iix7t9j0PQqhs0IxXVXv0pY2Bxa08CgMkzD6OWql7kbGOuEdA==
+  dependencies:
+    browserslist "^4.16.0"
+    postcss-selector-parser "^6.0.4"
+
+stylelint-config-recommended@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/stylelint-config-recommended/-/stylelint-config-recommended-3.0.0.tgz#e0e547434016c5539fe2650afd58049a2fd1d657"
+  integrity sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ==
+
+stylelint-config-standard@^20.0.0:
+  version "20.0.0"
+  resolved "https://registry.yarnpkg.com/stylelint-config-standard/-/stylelint-config-standard-20.0.0.tgz#06135090c9e064befee3d594289f50e295b5e20d"
+  integrity sha512-IB2iFdzOTA/zS4jSVav6z+wGtin08qfj+YyExHB3LF9lnouQht//YyB0KZq9gGz5HNPkddHOzcY8HsUey6ZUlA==
+  dependencies:
+    stylelint-config-recommended "^3.0.0"
+
+stylelint@^13.6.1:
+  version "13.13.1"
+  resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-13.13.1.tgz#fca9c9f5de7990ab26a00f167b8978f083a18f3c"
+  integrity sha512-Mv+BQr5XTUrKqAXmpqm6Ddli6Ief+AiPZkRsIrAoUKFuq/ElkUh9ZMYxXD0iQNZ5ADghZKLOWz1h7hTClB7zgQ==
+  dependencies:
+    "@stylelint/postcss-css-in-js" "^0.37.2"
+    "@stylelint/postcss-markdown" "^0.36.2"
+    autoprefixer "^9.8.6"
+    balanced-match "^2.0.0"
+    chalk "^4.1.1"
+    cosmiconfig "^7.0.0"
+    debug "^4.3.1"
+    execall "^2.0.0"
+    fast-glob "^3.2.5"
+    fastest-levenshtein "^1.0.12"
+    file-entry-cache "^6.0.1"
+    get-stdin "^8.0.0"
+    global-modules "^2.0.0"
+    globby "^11.0.3"
+    globjoin "^0.1.4"
+    html-tags "^3.1.0"
+    ignore "^5.1.8"
+    import-lazy "^4.0.0"
+    imurmurhash "^0.1.4"
+    known-css-properties "^0.21.0"
+    lodash "^4.17.21"
+    log-symbols "^4.1.0"
+    mathml-tag-names "^2.1.3"
+    meow "^9.0.0"
+    micromatch "^4.0.4"
+    normalize-selector "^0.2.0"
+    postcss "^7.0.35"
+    postcss-html "^0.36.0"
+    postcss-less "^3.1.4"
+    postcss-media-query-parser "^0.2.3"
+    postcss-resolve-nested-selector "^0.1.1"
+    postcss-safe-parser "^4.0.2"
+    postcss-sass "^0.4.4"
+    postcss-scss "^2.1.1"
+    postcss-selector-parser "^6.0.5"
+    postcss-syntax "^0.36.2"
+    postcss-value-parser "^4.1.0"
+    resolve-from "^5.0.0"
+    slash "^3.0.0"
+    specificity "^0.4.1"
+    string-width "^4.2.2"
+    strip-ansi "^6.0.0"
+    style-search "^0.1.0"
+    sugarss "^2.0.0"
+    svg-tags "^1.0.0"
+    table "^6.6.0"
+    v8-compile-cache "^2.3.0"
+    write-file-atomic "^3.0.3"
+
+sugarss@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/sugarss/-/sugarss-2.0.0.tgz#ddd76e0124b297d40bf3cca31c8b22ecb43bc61d"
+  integrity sha512-WfxjozUk0UVA4jm+U1d736AUpzSrNsQcIbyOkoE364GrtWmIrFdk5lksEupgWMD4VaT/0kVx1dobpiDumSgmJQ==
+  dependencies:
+    postcss "^7.0.2"
+
+supports-color@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
+  integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=
+
+supports-color@^5.3.0, supports-color@^5.4.0:
+  version "5.5.0"
+  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
+  integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
+  dependencies:
+    has-flag "^3.0.0"
+
+supports-color@^6.1.0:
+  version "6.1.0"
+  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3"
+  integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==
+  dependencies:
+    has-flag "^3.0.0"
+
+supports-color@^7.1.0:
+  version "7.2.0"
+  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
+  integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
+  dependencies:
+    has-flag "^4.0.0"
+
+svg-tags@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz#58f71cee3bd519b59d4b2a843b6c7de64ac04764"
+  integrity sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=
+
+svgo@^2.3.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/svgo/-/svgo-2.3.0.tgz#6b3af81d0cbd1e19c83f5f63cec2cb98c70b5373"
+  integrity sha512-fz4IKjNO6HDPgIQxu4IxwtubtbSfGEAJUq/IXyTPIkGhWck/faiiwfkvsB8LnBkKLvSoyNNIY6d13lZprJMc9Q==
+  dependencies:
+    "@trysound/sax" "0.1.1"
+    chalk "^4.1.0"
+    commander "^7.1.0"
+    css-select "^3.1.2"
+    css-tree "^1.1.2"
+    csso "^4.2.0"
+    stable "^0.1.8"
+
+swagger2openapi@^6.2.1:
+  version "6.2.3"
+  resolved "https://registry.yarnpkg.com/swagger2openapi/-/swagger2openapi-6.2.3.tgz#4a8059f89d851aee4c9ab178f9b7190debd904e2"
+  integrity sha512-cUUktzLpK69UwpMbcTzjMw2ns9RZChfxh56AHv6+hTx3StPOX2foZjPgds3HlJcINbxosYYBn/D3cG8nwcCWwQ==
+  dependencies:
+    better-ajv-errors "^0.6.1"
+    call-me-maybe "^1.0.1"
+    node-fetch-h2 "^2.3.0"
+    node-readfiles "^0.2.0"
+    oas-kit-common "^1.0.8"
+    oas-resolver "^2.4.3"
+    oas-schema-walker "^1.1.5"
+    oas-validator "^4.0.8"
+    reftools "^1.1.5"
+    yaml "^1.8.3"
+    yargs "^15.3.1"
+
+table@^5.2.3:
+  version "5.4.6"
+  resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e"
+  integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==
+  dependencies:
+    ajv "^6.10.2"
+    lodash "^4.17.14"
+    slice-ansi "^2.1.0"
+    string-width "^3.0.0"
+
+table@^6.6.0:
+  version "6.7.0"
+  resolved "https://registry.yarnpkg.com/table/-/table-6.7.0.tgz#26274751f0ee099c547f6cb91d3eff0d61d155b2"
+  integrity sha512-SAM+5p6V99gYiiy2gT5ArdzgM1dLDed0nkrWmG6Fry/bUS/m9x83BwpJUOf1Qj/x2qJd+thL6IkIx7qPGRxqBw==
+  dependencies:
+    ajv "^8.0.1"
+    lodash.clonedeep "^4.5.0"
+    lodash.truncate "^4.4.2"
+    slice-ansi "^4.0.0"
+    string-width "^4.2.0"
+    strip-ansi "^6.0.0"
+
+tapable@^1.0.0, tapable@^1.1.3:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2"
+  integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==
+
+tar@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.yarnpkg.com/tar/-/tar-6.0.2.tgz#5df17813468a6264ff14f766886c622b84ae2f39"
+  integrity sha512-Glo3jkRtPcvpDlAs/0+hozav78yoXKFr+c4wgw62NNMO3oo4AaJdCo21Uu7lcwr55h39W2XD1LMERc64wtbItg==
+  dependencies:
+    chownr "^2.0.0"
+    fs-minipass "^2.0.0"
+    minipass "^3.0.0"
+    minizlib "^2.1.0"
+    mkdirp "^1.0.3"
+    yallist "^4.0.0"
+
+terser-webpack-plugin@^1.4.3:
+  version "1.4.4"
+  resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz#2c63544347324baafa9a56baaddf1634c8abfc2f"
+  integrity sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA==
+  dependencies:
+    cacache "^12.0.2"
+    find-cache-dir "^2.1.0"
+    is-wsl "^1.1.0"
+    schema-utils "^1.0.0"
+    serialize-javascript "^3.1.0"
+    source-map "^0.6.1"
+    terser "^4.1.2"
+    webpack-sources "^1.4.0"
+    worker-farm "^1.7.0"
+
+terser@^4.1.2:
+  version "4.8.0"
+  resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17"
+  integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==
+  dependencies:
+    commander "^2.20.0"
+    source-map "~0.6.1"
+    source-map-support "~0.5.12"
+
+text-table@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
+  integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=
+
+through2@^2.0.0:
+  version "2.0.5"
+  resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd"
+  integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==
+  dependencies:
+    readable-stream "~2.3.6"
+    xtend "~4.0.1"
+
+timers-browserify@^2.0.4:
+  version "2.0.11"
+  resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.11.tgz#800b1f3eee272e5bc53ee465a04d0e804c31211f"
+  integrity sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==
+  dependencies:
+    setimmediate "^1.0.4"
+
+timsort@^0.3.0:
+  version "0.3.0"
+  resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4"
+  integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=
+
+tiny-emitter@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423"
+  integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==
+
+to-arraybuffer@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
+  integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=
+
+to-fast-properties@^1.0.3:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47"
+  integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=
+
+to-fast-properties@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
+  integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=
+
+to-object-path@^0.3.0:
+  version "0.3.0"
+  resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af"
+  integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=
+  dependencies:
+    kind-of "^3.0.2"
+
+to-regex-range@^2.1.0:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38"
+  integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=
+  dependencies:
+    is-number "^3.0.0"
+    repeat-string "^1.6.1"
+
+to-regex-range@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
+  integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
+  dependencies:
+    is-number "^7.0.0"
+
+to-regex@^3.0.1, to-regex@^3.0.2:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce"
+  integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==
+  dependencies:
+    define-property "^2.0.2"
+    extend-shallow "^3.0.2"
+    regex-not "^1.0.2"
+    safe-regex "^1.1.0"
+
+trim-newlines@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.0.tgz#79726304a6a898aa8373427298d54c2ee8b1cb30"
+  integrity sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==
+
+trim-right@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
+  integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=
+
+trough@^1.0.0:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.5.tgz#b8b639cefad7d0bb2abd37d433ff8293efa5f406"
+  integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==
+
+tsconfig-paths@^3.9.0:
+  version "3.9.0"
+  resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz#098547a6c4448807e8fcb8eae081064ee9a3c90b"
+  integrity sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==
+  dependencies:
+    "@types/json5" "^0.0.29"
+    json5 "^1.0.1"
+    minimist "^1.2.0"
+    strip-bom "^3.0.0"
+
+tslib@^1.9.0:
+  version "1.13.0"
+  resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043"
+  integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==
+
+tslib@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a"
+  integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==
+
+tty-browserify@0.0.0:
+  version "0.0.0"
+  resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
+  integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=
+
+type-check@^0.4.0, type-check@~0.4.0:
+  version "0.4.0"
+  resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"
+  integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==
+  dependencies:
+    prelude-ls "^1.2.1"
+
+type-fest@^0.18.0:
+  version "0.18.1"
+  resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f"
+  integrity sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==
+
+type-fest@^0.6.0:
+  version "0.6.0"
+  resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b"
+  integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==
+
+type-fest@^0.8.1:
+  version "0.8.1"
+  resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d"
+  integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==
+
+typedarray-to-buffer@^3.1.5:
+  version "3.1.5"
+  resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"
+  integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==
+  dependencies:
+    is-typedarray "^1.0.0"
+
+typedarray@^0.0.6:
+  version "0.0.6"
+  resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
+  integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
+
+unified@^9.1.0:
+  version "9.2.1"
+  resolved "https://registry.yarnpkg.com/unified/-/unified-9.2.1.tgz#ae18d5674c114021bfdbdf73865ca60f410215a3"
+  integrity sha512-juWjuI8Z4xFg8pJbnEZ41b5xjGUWGHqXALmBZ3FC3WX0PIx1CZBIIJ6mXbYMcf6Yw4Fi0rFUTA1cdz/BglbOhA==
+  dependencies:
+    bail "^1.0.0"
+    extend "^3.0.0"
+    is-buffer "^2.0.0"
+    is-plain-obj "^2.0.0"
+    trough "^1.0.0"
+    vfile "^4.0.0"
+
+union-value@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847"
+  integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==
+  dependencies:
+    arr-union "^3.1.0"
+    get-value "^2.0.6"
+    is-extendable "^0.1.1"
+    set-value "^2.0.1"
+
+uniq@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff"
+  integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=
+
+uniqs@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02"
+  integrity sha1-/+3ks2slKQaW5uFl1KWe25mOawI=
+
+unique-filename@^1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230"
+  integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==
+  dependencies:
+    unique-slug "^2.0.0"
+
+unique-slug@^2.0.0:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c"
+  integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==
+  dependencies:
+    imurmurhash "^0.1.4"
+
+unist-util-find-all-after@^3.0.2:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/unist-util-find-all-after/-/unist-util-find-all-after-3.0.2.tgz#fdfecd14c5b7aea5e9ef38d5e0d5f774eeb561f6"
+  integrity sha512-xaTC/AGZ0rIM2gM28YVRAFPIZpzbpDtU3dRmp7EXlNVA8ziQc4hY3H7BHXM1J49nEmiqc3svnqMReW+PGqbZKQ==
+  dependencies:
+    unist-util-is "^4.0.0"
+
+unist-util-is@^4.0.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.1.0.tgz#976e5f462a7a5de73d94b706bac1b90671b57797"
+  integrity sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==
+
+unist-util-stringify-position@^2.0.0:
+  version "2.0.3"
+  resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz#cce3bfa1cdf85ba7375d1d5b17bdc4cada9bd9da"
+  integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==
+  dependencies:
+    "@types/unist" "^2.0.2"
+
+universalify@^0.1.0:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
+  integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
+
+unset-value@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559"
+  integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=
+  dependencies:
+    has-value "^0.3.1"
+    isobject "^3.0.0"
+
+upath@^1.1.1:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894"
+  integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==
+
+uri-js@^4.2.2:
+  version "4.4.1"
+  resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
+  integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
+  dependencies:
+    punycode "^2.1.0"
+
+urix@^0.1.0:
+  version "0.1.0"
+  resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
+  integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=
+
+url-loader@4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.0.tgz#c7d6b0d6b0fccd51ab3ffc58a78d32b8d89a7be2"
+  integrity sha512-IzgAAIC8wRrg6NYkFIJY09vtktQcsvU8V6HhtQj9PTefbYImzLB1hufqo4m+RyM5N3mLx5BqJKccgxJS+W3kqw==
+  dependencies:
+    loader-utils "^2.0.0"
+    mime-types "^2.1.26"
+    schema-utils "^2.6.5"
+
+url-search-params-polyfill@^8.1.0:
+  version "8.1.0"
+  resolved "https://registry.yarnpkg.com/url-search-params-polyfill/-/url-search-params-polyfill-8.1.0.tgz#5c15b69687165bfd4f6c7d8a161d70d85385885b"
+  integrity sha512-MRG3vzXyG20BJ2fox50/9ZRoe+2h3RM7DIudVD2u/GY9MtayO1Dkrna76IUOak+uoUPVWbyR0pHCzxctP/eDYQ==
+
+url-template@^2.0.8:
+  version "2.0.8"
+  resolved "https://registry.yarnpkg.com/url-template/-/url-template-2.0.8.tgz#fc565a3cccbff7730c775f5641f9555791439f21"
+  integrity sha1-/FZaPMy/93MMd19WQflVV5FDnyE=
+
+url@^0.11.0:
+  version "0.11.0"
+  resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1"
+  integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=
+  dependencies:
+    punycode "1.3.2"
+    querystring "0.2.0"
+
+use@^3.1.0:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f"
+  integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==
+
+util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
+  integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
+
+util@0.10.3:
+  version "0.10.3"
+  resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
+  integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk=
+  dependencies:
+    inherits "2.0.1"
+
+util@^0.11.0:
+  version "0.11.1"
+  resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61"
+  integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==
+  dependencies:
+    inherits "2.0.3"
+
+v8-compile-cache@^2.0.3:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz#54bc3cdd43317bca91e35dcaf305b1a7237de745"
+  integrity sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==
+
+v8-compile-cache@^2.1.1, v8-compile-cache@^2.3.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee"
+  integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==
+
+validate-npm-package-license@^3.0.1:
+  version "3.0.4"
+  resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
+  integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==
+  dependencies:
+    spdx-correct "^3.0.0"
+    spdx-expression-parse "^3.0.0"
+
+vendors@^1.0.3:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.4.tgz#e2b800a53e7a29b93506c3cf41100d16c4c4ad8e"
+  integrity sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==
+
+vfile-message@^2.0.0:
+  version "2.0.4"
+  resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-2.0.4.tgz#5b43b88171d409eae58477d13f23dd41d52c371a"
+  integrity sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==
+  dependencies:
+    "@types/unist" "^2.0.0"
+    unist-util-stringify-position "^2.0.0"
+
+vfile@^4.0.0:
+  version "4.2.1"
+  resolved "https://registry.yarnpkg.com/vfile/-/vfile-4.2.1.tgz#03f1dce28fc625c625bc6514350fbdb00fa9e624"
+  integrity sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==
+  dependencies:
+    "@types/unist" "^2.0.0"
+    is-buffer "^2.0.0"
+    unist-util-stringify-position "^2.0.0"
+    vfile-message "^2.0.0"
+
+vm-browserify@^1.0.1:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0"
+  integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==
+
+watchpack-chokidar2@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz#9948a1866cbbd6cb824dea13a7ed691f6c8ddff0"
+  integrity sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==
+  dependencies:
+    chokidar "^2.1.8"
+
+watchpack@^1.6.1:
+  version "1.7.2"
+  resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.2.tgz#c02e4d4d49913c3e7e122c3325365af9d331e9aa"
+  integrity sha512-ymVbbQP40MFTp+cNMvpyBpBtygHnPzPkHqoIwRRj/0B8KhqQwV8LaKjtbaxF2lK4vl8zN9wCxS46IFCU5K4W0g==
+  dependencies:
+    graceful-fs "^4.1.2"
+    neo-async "^2.5.0"
+  optionalDependencies:
+    chokidar "^3.4.0"
+    watchpack-chokidar2 "^2.0.0"
+
+webpack-cli@^3.1.0:
+  version "3.3.12"
+  resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.12.tgz#94e9ada081453cd0aa609c99e500012fd3ad2d4a"
+  integrity sha512-NVWBaz9k839ZH/sinurM+HcDvJOTXwSjYp1ku+5XKeOC03z8v5QitnK/x+lAxGXFyhdayoIf/GOpv85z3/xPag==
+  dependencies:
+    chalk "^2.4.2"
+    cross-spawn "^6.0.5"
+    enhanced-resolve "^4.1.1"
+    findup-sync "^3.0.0"
+    global-modules "^2.0.0"
+    import-local "^2.0.0"
+    interpret "^1.4.0"
+    loader-utils "^1.4.0"
+    supports-color "^6.1.0"
+    v8-compile-cache "^2.1.1"
+    yargs "^13.3.2"
+
+webpack-manifest-plugin@^2.2.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/webpack-manifest-plugin/-/webpack-manifest-plugin-2.2.0.tgz#19ca69b435b0baec7e29fbe90fb4015de2de4f16"
+  integrity sha512-9S6YyKKKh/Oz/eryM1RyLVDVmy3NSPV0JXMRhZ18fJsq+AwGxUY34X54VNwkzYcEmEkDwNxuEOboCZEebJXBAQ==
+  dependencies:
+    fs-extra "^7.0.0"
+    lodash ">=3.5 <5"
+    object.entries "^1.1.0"
+    tapable "^1.0.0"
+
+webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3:
+  version "1.4.3"
+  resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933"
+  integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==
+  dependencies:
+    source-list-map "^2.0.0"
+    source-map "~0.6.1"
+
+webpack@^4.16.3:
+  version "4.43.0"
+  resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.43.0.tgz#c48547b11d563224c561dad1172c8aa0b8a678e6"
+  integrity sha512-GW1LjnPipFW2Y78OOab8NJlCflB7EFskMih2AHdvjbpKMeDJqEgSx24cXXXiPS65+WSwVyxtDsJH6jGX2czy+g==
+  dependencies:
+    "@webassemblyjs/ast" "1.9.0"
+    "@webassemblyjs/helper-module-context" "1.9.0"
+    "@webassemblyjs/wasm-edit" "1.9.0"
+    "@webassemblyjs/wasm-parser" "1.9.0"
+    acorn "^6.4.1"
+    ajv "^6.10.2"
+    ajv-keywords "^3.4.1"
+    chrome-trace-event "^1.0.2"
+    enhanced-resolve "^4.1.0"
+    eslint-scope "^4.0.3"
+    json-parse-better-errors "^1.0.2"
+    loader-runner "^2.4.0"
+    loader-utils "^1.2.3"
+    memory-fs "^0.4.1"
+    micromatch "^3.1.10"
+    mkdirp "^0.5.3"
+    neo-async "^2.6.1"
+    node-libs-browser "^2.2.1"
+    schema-utils "^1.0.0"
+    tapable "^1.1.3"
+    terser-webpack-plugin "^1.4.3"
+    watchpack "^1.6.1"
+    webpack-sources "^1.4.1"
+
+which-module@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
+  integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=
+
+which@^1.2.14, which@^1.2.9, which@^1.3.1:
+  version "1.3.1"
+  resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
+  integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
+  dependencies:
+    isexe "^2.0.0"
+
+which@^2.0.1:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
+  integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
+  dependencies:
+    isexe "^2.0.0"
+
+word-wrap@^1.2.3:
+  version "1.2.3"
+  resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
+  integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==
+
+worker-farm@^1.7.0:
+  version "1.7.0"
+  resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8"
+  integrity sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==
+  dependencies:
+    errno "~0.1.7"
+
+wrap-ansi@^5.1.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09"
+  integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==
+  dependencies:
+    ansi-styles "^3.2.0"
+    string-width "^3.0.0"
+    strip-ansi "^5.0.0"
+
+wrap-ansi@^6.2.0:
+  version "6.2.0"
+  resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53"
+  integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==
+  dependencies:
+    ansi-styles "^4.0.0"
+    string-width "^4.1.0"
+    strip-ansi "^6.0.0"
+
+wrap-ansi@^7.0.0:
+  version "7.0.0"
+  resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
+  integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
+  dependencies:
+    ansi-styles "^4.0.0"
+    string-width "^4.1.0"
+    strip-ansi "^6.0.0"
+
+wrappy@1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
+  integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
+
+write-file-atomic@^3.0.3:
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8"
+  integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==
+  dependencies:
+    imurmurhash "^0.1.4"
+    is-typedarray "^1.0.0"
+    signal-exit "^3.0.2"
+    typedarray-to-buffer "^3.1.5"
+
+write@1.0.3:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3"
+  integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==
+  dependencies:
+    mkdirp "^0.5.1"
+
+xtend@^4.0.0, xtend@~4.0.1:
+  version "4.0.2"
+  resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
+  integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
+
+y18n@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b"
+  integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==
+
+y18n@^5.0.5:
+  version "5.0.5"
+  resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18"
+  integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg==
+
+yallist@^3.0.2:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
+  integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
+
+yallist@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
+  integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
+
+yaml@^1.10.0, yaml@^1.8.3:
+  version "1.10.0"
+  resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e"
+  integrity sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==
+
+yargs-parser@^13.1.2:
+  version "13.1.2"
+  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38"
+  integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==
+  dependencies:
+    camelcase "^5.0.0"
+    decamelize "^1.2.0"
+
+yargs-parser@^18.1.2:
+  version "18.1.3"
+  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0"
+  integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==
+  dependencies:
+    camelcase "^5.0.0"
+    decamelize "^1.2.0"
+
+yargs-parser@^20.2.2:
+  version "20.2.6"
+  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.6.tgz#69f920addf61aafc0b8b89002f5d66e28f2d8b20"
+  integrity sha512-AP1+fQIWSM/sMiET8fyayjx/J+JmTPt2Mr0FkrgqB4todtfa53sOsrSAcIrJRD5XS20bKUwaDIuMkWKCEiQLKA==
+
+yargs-parser@^20.2.3:
+  version "20.2.7"
+  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a"
+  integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==
+
+yargs@^13.3.2:
+  version "13.3.2"
+  resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd"
+  integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==
+  dependencies:
+    cliui "^5.0.0"
+    find-up "^3.0.0"
+    get-caller-file "^2.0.1"
+    require-directory "^2.1.1"
+    require-main-filename "^2.0.0"
+    set-blocking "^2.0.0"
+    string-width "^3.0.0"
+    which-module "^2.0.0"
+    y18n "^4.0.0"
+    yargs-parser "^13.1.2"
+
+yargs@^15.3.1:
+  version "15.4.1"
+  resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8"
+  integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==
+  dependencies:
+    cliui "^6.0.0"
+    decamelize "^1.2.0"
+    find-up "^4.1.0"
+    get-caller-file "^2.0.1"
+    require-directory "^2.1.1"
+    require-main-filename "^2.0.0"
+    set-blocking "^2.0.0"
+    string-width "^4.2.0"
+    which-module "^2.0.0"
+    y18n "^4.0.0"
+    yargs-parser "^18.1.2"
+
+yargs@^16.1.1:
+  version "16.2.0"
+  resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66"
+  integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==
+  dependencies:
+    cliui "^7.0.2"
+    escalade "^3.1.1"
+    get-caller-file "^2.0.5"
+    require-directory "^2.1.1"
+    string-width "^4.2.0"
+    y18n "^5.0.5"
+    yargs-parser "^20.2.2"
+
+zwitch@^1.0.0:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-1.0.5.tgz#d11d7381ffed16b742f6af7b3f223d5cd9fe9920"
+  integrity sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==
diff --git a/nixpkgs/pkgs/development/python-modules/apache-airflow/yarn.nix b/nixpkgs/pkgs/development/python-modules/apache-airflow/yarn.nix
new file mode 100644
index 000000000000..a0388a1af3ec
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/apache-airflow/yarn.nix
@@ -0,0 +1,8485 @@
+{ fetchurl, fetchgit, linkFarm, runCommandNoCC, gnutar }: rec {
+  offline_cache = linkFarm "offline" packages;
+  packages = [
+    {
+      name = "_babel_code_frame___code_frame_7.12.13.tgz";
+      path = fetchurl {
+        name = "_babel_code_frame___code_frame_7.12.13.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.13.tgz";
+        sha1 = "dcfc826beef65e75c50e21d3837d7d95798dd658";
+      };
+    }
+    {
+      name = "_babel_code_frame___code_frame_7.10.4.tgz";
+      path = fetchurl {
+        name = "_babel_code_frame___code_frame_7.10.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz";
+        sha1 = "168da1a36e90da68ae8d49c0f1b48c7c6249213a";
+      };
+    }
+    {
+      name = "_babel_compat_data___compat_data_7.14.0.tgz";
+      path = fetchurl {
+        name = "_babel_compat_data___compat_data_7.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.0.tgz";
+        sha1 = "a901128bce2ad02565df95e6ecbf195cf9465919";
+      };
+    }
+    {
+      name = "_babel_core___core_7.14.0.tgz";
+      path = fetchurl {
+        name = "_babel_core___core_7.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/core/-/core-7.14.0.tgz";
+        sha1 = "47299ff3ec8d111b493f1a9d04bf88c04e728d88";
+      };
+    }
+    {
+      name = "_babel_generator___generator_7.10.5.tgz";
+      path = fetchurl {
+        name = "_babel_generator___generator_7.10.5.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.10.5.tgz";
+        sha1 = "1b903554bc8c583ee8d25f1e8969732e6b829a69";
+      };
+    }
+    {
+      name = "_babel_generator___generator_7.14.1.tgz";
+      path = fetchurl {
+        name = "_babel_generator___generator_7.14.1.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.14.1.tgz";
+        sha1 = "1f99331babd65700183628da186f36f63d615c93";
+      };
+    }
+    {
+      name = "_babel_helper_compilation_targets___helper_compilation_targets_7.13.16.tgz";
+      path = fetchurl {
+        name = "_babel_helper_compilation_targets___helper_compilation_targets_7.13.16.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.16.tgz";
+        sha1 = "6e91dccf15e3f43e5556dffe32d860109887563c";
+      };
+    }
+    {
+      name = "_babel_helper_function_name___helper_function_name_7.10.4.tgz";
+      path = fetchurl {
+        name = "_babel_helper_function_name___helper_function_name_7.10.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz";
+        sha1 = "d2d3b20c59ad8c47112fa7d2a94bc09d5ef82f1a";
+      };
+    }
+    {
+      name = "_babel_helper_function_name___helper_function_name_7.12.13.tgz";
+      path = fetchurl {
+        name = "_babel_helper_function_name___helper_function_name_7.12.13.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz";
+        sha1 = "93ad656db3c3c2232559fd7b2c3dbdcbe0eb377a";
+      };
+    }
+    {
+      name = "_babel_helper_get_function_arity___helper_get_function_arity_7.10.4.tgz";
+      path = fetchurl {
+        name = "_babel_helper_get_function_arity___helper_get_function_arity_7.10.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz";
+        sha1 = "98c1cbea0e2332f33f9a4661b8ce1505b2c19ba2";
+      };
+    }
+    {
+      name = "_babel_helper_get_function_arity___helper_get_function_arity_7.12.13.tgz";
+      path = fetchurl {
+        name = "_babel_helper_get_function_arity___helper_get_function_arity_7.12.13.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz";
+        sha1 = "bc63451d403a3b3082b97e1d8b3fe5bd4091e583";
+      };
+    }
+    {
+      name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.13.12.tgz";
+      path = fetchurl {
+        name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.13.12.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz";
+        sha1 = "dfe368f26d426a07299d8d6513821768216e6d72";
+      };
+    }
+    {
+      name = "_babel_helper_module_imports___helper_module_imports_7.13.12.tgz";
+      path = fetchurl {
+        name = "_babel_helper_module_imports___helper_module_imports_7.13.12.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz";
+        sha1 = "c6a369a6f3621cb25da014078684da9196b61977";
+      };
+    }
+    {
+      name = "_babel_helper_module_transforms___helper_module_transforms_7.14.0.tgz";
+      path = fetchurl {
+        name = "_babel_helper_module_transforms___helper_module_transforms_7.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.14.0.tgz";
+        sha1 = "8fcf78be220156f22633ee204ea81f73f826a8ad";
+      };
+    }
+    {
+      name = "_babel_helper_optimise_call_expression___helper_optimise_call_expression_7.12.13.tgz";
+      path = fetchurl {
+        name = "_babel_helper_optimise_call_expression___helper_optimise_call_expression_7.12.13.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz";
+        sha1 = "5c02d171b4c8615b1e7163f888c1c81c30a2aaea";
+      };
+    }
+    {
+      name = "_babel_helper_replace_supers___helper_replace_supers_7.13.12.tgz";
+      path = fetchurl {
+        name = "_babel_helper_replace_supers___helper_replace_supers_7.13.12.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz";
+        sha1 = "6442f4c1ad912502481a564a7386de0c77ff3804";
+      };
+    }
+    {
+      name = "_babel_helper_simple_access___helper_simple_access_7.13.12.tgz";
+      path = fetchurl {
+        name = "_babel_helper_simple_access___helper_simple_access_7.13.12.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz";
+        sha1 = "dd6c538afb61819d205a012c31792a39c7a5eaf6";
+      };
+    }
+    {
+      name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.10.4.tgz";
+      path = fetchurl {
+        name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.10.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.4.tgz";
+        sha1 = "2c70576eaa3b5609b24cb99db2888cc3fc4251d1";
+      };
+    }
+    {
+      name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.12.13.tgz";
+      path = fetchurl {
+        name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.12.13.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz";
+        sha1 = "e9430be00baf3e88b0e13e6f9d4eaf2136372b05";
+      };
+    }
+    {
+      name = "_babel_helper_validator_identifier___helper_validator_identifier_7.14.0.tgz";
+      path = fetchurl {
+        name = "_babel_helper_validator_identifier___helper_validator_identifier_7.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz";
+        sha1 = "d26cad8a47c65286b15df1547319a5d0bcf27288";
+      };
+    }
+    {
+      name = "_babel_helper_validator_option___helper_validator_option_7.12.17.tgz";
+      path = fetchurl {
+        name = "_babel_helper_validator_option___helper_validator_option_7.12.17.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz";
+        sha1 = "d1fbf012e1a79b7eebbfdc6d270baaf8d9eb9831";
+      };
+    }
+    {
+      name = "_babel_helpers___helpers_7.14.0.tgz";
+      path = fetchurl {
+        name = "_babel_helpers___helpers_7.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.14.0.tgz";
+        sha1 = "ea9b6be9478a13d6f961dbb5f36bf75e2f3b8f62";
+      };
+    }
+    {
+      name = "_babel_highlight___highlight_7.14.0.tgz";
+      path = fetchurl {
+        name = "_babel_highlight___highlight_7.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.0.tgz";
+        sha1 = "3197e375711ef6bf834e67d0daec88e4f46113cf";
+      };
+    }
+    {
+      name = "_babel_parser___parser_7.10.5.tgz";
+      path = fetchurl {
+        name = "_babel_parser___parser_7.10.5.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.10.5.tgz";
+        sha1 = "e7c6bf5a7deff957cec9f04b551e2762909d826b";
+      };
+    }
+    {
+      name = "_babel_parser___parser_7.14.1.tgz";
+      path = fetchurl {
+        name = "_babel_parser___parser_7.14.1.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.1.tgz";
+        sha1 = "1bd644b5db3f5797c4479d89ec1817fe02b84c47";
+      };
+    }
+    {
+      name = "_babel_runtime___runtime_7.10.5.tgz";
+      path = fetchurl {
+        name = "_babel_runtime___runtime_7.10.5.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.10.5.tgz";
+        sha1 = "303d8bd440ecd5a491eae6117fd3367698674c5c";
+      };
+    }
+    {
+      name = "_babel_runtime___runtime_7.13.9.tgz";
+      path = fetchurl {
+        name = "_babel_runtime___runtime_7.13.9.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.13.9.tgz";
+        sha1 = "97dbe2116e2630c489f22e0656decd60aaa1fcee";
+      };
+    }
+    {
+      name = "_babel_template___template_7.10.4.tgz";
+      path = fetchurl {
+        name = "_babel_template___template_7.10.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.10.4.tgz";
+        sha1 = "3251996c4200ebc71d1a8fc405fba940f36ba278";
+      };
+    }
+    {
+      name = "_babel_template___template_7.12.13.tgz";
+      path = fetchurl {
+        name = "_babel_template___template_7.12.13.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.12.13.tgz";
+        sha1 = "530265be8a2589dbb37523844c5bcb55947fb327";
+      };
+    }
+    {
+      name = "_babel_traverse___traverse_7.14.0.tgz";
+      path = fetchurl {
+        name = "_babel_traverse___traverse_7.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.14.0.tgz";
+        sha1 = "cea0dc8ae7e2b1dec65f512f39f3483e8cc95aef";
+      };
+    }
+    {
+      name = "_babel_traverse___traverse_7.10.5.tgz";
+      path = fetchurl {
+        name = "_babel_traverse___traverse_7.10.5.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.10.5.tgz";
+        sha1 = "77ce464f5b258be265af618d8fddf0536f20b564";
+      };
+    }
+    {
+      name = "_babel_types___types_7.10.5.tgz";
+      path = fetchurl {
+        name = "_babel_types___types_7.10.5.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.10.5.tgz";
+        sha1 = "d88ae7e2fde86bfbfe851d4d81afa70a997b5d15";
+      };
+    }
+    {
+      name = "_babel_types___types_7.14.1.tgz";
+      path = fetchurl {
+        name = "_babel_types___types_7.14.1.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.14.1.tgz";
+        sha1 = "095bd12f1c08ab63eff6e8f7745fa7c9cc15a9db";
+      };
+    }
+    {
+      name = "_exodus_schemasafe___schemasafe_1.0.0_rc.3.tgz";
+      path = fetchurl {
+        name = "_exodus_schemasafe___schemasafe_1.0.0_rc.3.tgz";
+        url  = "https://registry.yarnpkg.com/@exodus/schemasafe/-/schemasafe-1.0.0-rc.3.tgz";
+        sha1 = "dda2fbf3dafa5ad8c63dadff7e01d3fdf4736025";
+      };
+    }
+    {
+      name = "_nodelib_fs.scandir___fs.scandir_2.1.4.tgz";
+      path = fetchurl {
+        name = "_nodelib_fs.scandir___fs.scandir_2.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz";
+        sha1 = "d4b3549a5db5de2683e0c1071ab4f140904bbf69";
+      };
+    }
+    {
+      name = "_nodelib_fs.stat___fs.stat_2.0.4.tgz";
+      path = fetchurl {
+        name = "_nodelib_fs.stat___fs.stat_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz";
+        sha1 = "a3f2dd61bab43b8db8fa108a121cfffe4c676655";
+      };
+    }
+    {
+      name = "_nodelib_fs.walk___fs.walk_1.2.6.tgz";
+      path = fetchurl {
+        name = "_nodelib_fs.walk___fs.walk_1.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz";
+        sha1 = "cce9396b30aa5afe9e3756608f5831adcb53d063";
+      };
+    }
+    {
+      name = "_npmcli_move_file___move_file_1.0.1.tgz";
+      path = fetchurl {
+        name = "_npmcli_move_file___move_file_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.0.1.tgz";
+        sha1 = "de103070dac0f48ce49cf6693c23af59c0f70464";
+      };
+    }
+    {
+      name = "_redocly_react_dropdown_aria___react_dropdown_aria_2.0.11.tgz";
+      path = fetchurl {
+        name = "_redocly_react_dropdown_aria___react_dropdown_aria_2.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/@redocly/react-dropdown-aria/-/react-dropdown-aria-2.0.11.tgz";
+        sha1 = "532b864b329237e646abe45d0f8edc923e77370a";
+      };
+    }
+    {
+      name = "_stylelint_postcss_css_in_js___postcss_css_in_js_0.37.2.tgz";
+      path = fetchurl {
+        name = "_stylelint_postcss_css_in_js___postcss_css_in_js_0.37.2.tgz";
+        url  = "https://registry.yarnpkg.com/@stylelint/postcss-css-in-js/-/postcss-css-in-js-0.37.2.tgz";
+        sha1 = "7e5a84ad181f4234a2480803422a47b8749af3d2";
+      };
+    }
+    {
+      name = "_stylelint_postcss_markdown___postcss_markdown_0.36.2.tgz";
+      path = fetchurl {
+        name = "_stylelint_postcss_markdown___postcss_markdown_0.36.2.tgz";
+        url  = "https://registry.yarnpkg.com/@stylelint/postcss-markdown/-/postcss-markdown-0.36.2.tgz";
+        sha1 = "0a540c4692f8dcdfc13c8e352c17e7bfee2bb391";
+      };
+    }
+    {
+      name = "_trysound_sax___sax_0.1.1.tgz";
+      path = fetchurl {
+        name = "_trysound_sax___sax_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.1.1.tgz";
+        sha1 = "3348564048e7a2d7398c935d466c0414ebb6a669";
+      };
+    }
+    {
+      name = "_types_anymatch___anymatch_1.3.1.tgz";
+      path = fetchurl {
+        name = "_types_anymatch___anymatch_1.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz";
+        sha1 = "336badc1beecb9dacc38bea2cf32adf627a8421a";
+      };
+    }
+    {
+      name = "_types_color_name___color_name_1.1.1.tgz";
+      path = fetchurl {
+        name = "_types_color_name___color_name_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz";
+        sha1 = "1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0";
+      };
+    }
+    {
+      name = "_types_glob___glob_7.1.3.tgz";
+      path = fetchurl {
+        name = "_types_glob___glob_7.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.3.tgz";
+        sha1 = "e6ba80f36b7daad2c685acd9266382e68985c183";
+      };
+    }
+    {
+      name = "_types_json_schema___json_schema_7.0.5.tgz";
+      path = fetchurl {
+        name = "_types_json_schema___json_schema_7.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.5.tgz";
+        sha1 = "dcce4430e64b443ba8945f0290fb564ad5bac6dd";
+      };
+    }
+    {
+      name = "_types_json_schema___json_schema_7.0.7.tgz";
+      path = fetchurl {
+        name = "_types_json_schema___json_schema_7.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.7.tgz";
+        sha1 = "98a993516c859eb0d5c4c8f098317a9ea68db9ad";
+      };
+    }
+    {
+      name = "_types_json5___json5_0.0.29.tgz";
+      path = fetchurl {
+        name = "_types_json5___json5_0.0.29.tgz";
+        url  = "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz";
+        sha1 = "ee28707ae94e11d2b827bcbe5270bcea7f3e71ee";
+      };
+    }
+    {
+      name = "_types_mdast___mdast_3.0.3.tgz";
+      path = fetchurl {
+        name = "_types_mdast___mdast_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.3.tgz";
+        sha1 = "2d7d671b1cd1ea3deb306ea75036c2a0407d2deb";
+      };
+    }
+    {
+      name = "_types_minimatch___minimatch_3.0.3.tgz";
+      path = fetchurl {
+        name = "_types_minimatch___minimatch_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz";
+        sha1 = "3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d";
+      };
+    }
+    {
+      name = "_types_minimist___minimist_1.2.1.tgz";
+      path = fetchurl {
+        name = "_types_minimist___minimist_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.1.tgz";
+        sha1 = "283f669ff76d7b8260df8ab7a4262cc83d988256";
+      };
+    }
+    {
+      name = "_types_node___node_14.0.24.tgz";
+      path = fetchurl {
+        name = "_types_node___node_14.0.24.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-14.0.24.tgz";
+        sha1 = "b0f86f58564fa02a28b68f8b55d4cdec42e3b9d6";
+      };
+    }
+    {
+      name = "_types_node___node_13.13.14.tgz";
+      path = fetchurl {
+        name = "_types_node___node_13.13.14.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-13.13.14.tgz";
+        sha1 = "20cd7d2a98f0c3b08d379f4ea9e6b315d2019529";
+      };
+    }
+    {
+      name = "_types_normalize_package_data___normalize_package_data_2.4.0.tgz";
+      path = fetchurl {
+        name = "_types_normalize_package_data___normalize_package_data_2.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz";
+        sha1 = "e486d0d97396d79beedd0a6e33f4534ff6b4973e";
+      };
+    }
+    {
+      name = "_types_parse_json___parse_json_4.0.0.tgz";
+      path = fetchurl {
+        name = "_types_parse_json___parse_json_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz";
+        sha1 = "2f8bb441434d163b35fb8ffdccd7138927ffb8c0";
+      };
+    }
+    {
+      name = "_types_source_list_map___source_list_map_0.1.2.tgz";
+      path = fetchurl {
+        name = "_types_source_list_map___source_list_map_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz";
+        sha1 = "0078836063ffaf17412349bba364087e0ac02ec9";
+      };
+    }
+    {
+      name = "_types_tapable___tapable_1.0.6.tgz";
+      path = fetchurl {
+        name = "_types_tapable___tapable_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.6.tgz";
+        sha1 = "a9ca4b70a18b270ccb2bc0aaafefd1d486b7ea74";
+      };
+    }
+    {
+      name = "_types_uglify_js___uglify_js_3.9.3.tgz";
+      path = fetchurl {
+        name = "_types_uglify_js___uglify_js_3.9.3.tgz";
+        url  = "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.9.3.tgz";
+        sha1 = "d94ed608e295bc5424c9600e6b8565407b6b4b6b";
+      };
+    }
+    {
+      name = "_types_unist___unist_2.0.3.tgz";
+      path = fetchurl {
+        name = "_types_unist___unist_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz";
+        sha1 = "9c088679876f374eb5983f150d4787aa6fb32d7e";
+      };
+    }
+    {
+      name = "_types_webpack_sources___webpack_sources_1.4.0.tgz";
+      path = fetchurl {
+        name = "_types_webpack_sources___webpack_sources_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-1.4.0.tgz";
+        sha1 = "e58f1f05f87d39a5c64cf85705bdbdbb94d4d57e";
+      };
+    }
+    {
+      name = "_types_webpack___webpack_4.41.21.tgz";
+      path = fetchurl {
+        name = "_types_webpack___webpack_4.41.21.tgz";
+        url  = "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.21.tgz";
+        sha1 = "cc685b332c33f153bb2f5fc1fa3ac8adeb592dee";
+      };
+    }
+    {
+      name = "_webassemblyjs_ast___ast_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_ast___ast_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz";
+        sha1 = "bd850604b4042459a5a41cd7d338cbed695ed964";
+      };
+    }
+    {
+      name = "_webassemblyjs_floating_point_hex_parser___floating_point_hex_parser_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_floating_point_hex_parser___floating_point_hex_parser_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz";
+        sha1 = "3c3d3b271bddfc84deb00f71344438311d52ffb4";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_api_error___helper_api_error_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_api_error___helper_api_error_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz";
+        sha1 = "203f676e333b96c9da2eeab3ccef33c45928b6a2";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_buffer___helper_buffer_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_buffer___helper_buffer_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz";
+        sha1 = "a1442d269c5feb23fcbc9ef759dac3547f29de00";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_code_frame___helper_code_frame_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_code_frame___helper_code_frame_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz";
+        sha1 = "647f8892cd2043a82ac0c8c5e75c36f1d9159f27";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_fsm___helper_fsm_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_fsm___helper_fsm_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz";
+        sha1 = "c05256b71244214671f4b08ec108ad63b70eddb8";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_module_context___helper_module_context_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_module_context___helper_module_context_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz";
+        sha1 = "25d8884b76839871a08a6c6f806c3979ef712f07";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_wasm_bytecode___helper_wasm_bytecode_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_wasm_bytecode___helper_wasm_bytecode_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz";
+        sha1 = "4fed8beac9b8c14f8c58b70d124d549dd1fe5790";
+      };
+    }
+    {
+      name = "_webassemblyjs_helper_wasm_section___helper_wasm_section_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_helper_wasm_section___helper_wasm_section_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz";
+        sha1 = "5a4138d5a6292ba18b04c5ae49717e4167965346";
+      };
+    }
+    {
+      name = "_webassemblyjs_ieee754___ieee754_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_ieee754___ieee754_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz";
+        sha1 = "15c7a0fbaae83fb26143bbacf6d6df1702ad39e4";
+      };
+    }
+    {
+      name = "_webassemblyjs_leb128___leb128_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_leb128___leb128_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.9.0.tgz";
+        sha1 = "f19ca0b76a6dc55623a09cffa769e838fa1e1c95";
+      };
+    }
+    {
+      name = "_webassemblyjs_utf8___utf8_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_utf8___utf8_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz";
+        sha1 = "04d33b636f78e6a6813227e82402f7637b6229ab";
+      };
+    }
+    {
+      name = "_webassemblyjs_wasm_edit___wasm_edit_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_wasm_edit___wasm_edit_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz";
+        sha1 = "3fe6d79d3f0f922183aa86002c42dd256cfee9cf";
+      };
+    }
+    {
+      name = "_webassemblyjs_wasm_gen___wasm_gen_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_wasm_gen___wasm_gen_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz";
+        sha1 = "50bc70ec68ded8e2763b01a1418bf43491a7a49c";
+      };
+    }
+    {
+      name = "_webassemblyjs_wasm_opt___wasm_opt_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_wasm_opt___wasm_opt_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz";
+        sha1 = "2211181e5b31326443cc8112eb9f0b9028721a61";
+      };
+    }
+    {
+      name = "_webassemblyjs_wasm_parser___wasm_parser_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_wasm_parser___wasm_parser_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz";
+        sha1 = "9d48e44826df4a6598294aa6c87469d642fff65e";
+      };
+    }
+    {
+      name = "_webassemblyjs_wast_parser___wast_parser_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_wast_parser___wast_parser_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz";
+        sha1 = "3031115d79ac5bd261556cecc3fa90a3ef451914";
+      };
+    }
+    {
+      name = "_webassemblyjs_wast_printer___wast_printer_1.9.0.tgz";
+      path = fetchurl {
+        name = "_webassemblyjs_wast_printer___wast_printer_1.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz";
+        sha1 = "4935d54c85fef637b00ce9f52377451d00d47899";
+      };
+    }
+    {
+      name = "_xtuc_ieee754___ieee754_1.2.0.tgz";
+      path = fetchurl {
+        name = "_xtuc_ieee754___ieee754_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz";
+        sha1 = "eef014a3145ae477a1cbc00cd1e552336dceb790";
+      };
+    }
+    {
+      name = "_xtuc_long___long_4.2.2.tgz";
+      path = fetchurl {
+        name = "_xtuc_long___long_4.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz";
+        sha1 = "d291c6a4e97989b5c61d9acf396ae4fe133a718d";
+      };
+    }
+    {
+      name = "acorn_jsx___acorn_jsx_5.2.0.tgz";
+      path = fetchurl {
+        name = "acorn_jsx___acorn_jsx_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz";
+        sha1 = "4c66069173d6fdd68ed85239fc256226182b2ebe";
+      };
+    }
+    {
+      name = "acorn___acorn_6.4.1.tgz";
+      path = fetchurl {
+        name = "acorn___acorn_6.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz";
+        sha1 = "531e58ba3f51b9dacb9a6646ca4debf5b14ca474";
+      };
+    }
+    {
+      name = "acorn___acorn_7.3.1.tgz";
+      path = fetchurl {
+        name = "acorn___acorn_7.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/acorn/-/acorn-7.3.1.tgz";
+        sha1 = "85010754db53c3fbaf3b9ea3e083aa5c5d147ffd";
+      };
+    }
+    {
+      name = "aggregate_error___aggregate_error_3.0.1.tgz";
+      path = fetchurl {
+        name = "aggregate_error___aggregate_error_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.0.1.tgz";
+        sha1 = "db2fe7246e536f40d9b5442a39e117d7dd6a24e0";
+      };
+    }
+    {
+      name = "ajv_errors___ajv_errors_1.0.1.tgz";
+      path = fetchurl {
+        name = "ajv_errors___ajv_errors_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz";
+        sha1 = "f35986aceb91afadec4102fbd85014950cefa64d";
+      };
+    }
+    {
+      name = "ajv_keywords___ajv_keywords_3.5.1.tgz";
+      path = fetchurl {
+        name = "ajv_keywords___ajv_keywords_3.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.1.tgz";
+        sha1 = "b83ca89c5d42d69031f424cad49aada0236c6957";
+      };
+    }
+    {
+      name = "ajv_keywords___ajv_keywords_3.5.2.tgz";
+      path = fetchurl {
+        name = "ajv_keywords___ajv_keywords_3.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz";
+        sha1 = "31f29da5ab6e00d1c2d329acf7b5929614d5014d";
+      };
+    }
+    {
+      name = "ajv___ajv_5.5.2.tgz";
+      path = fetchurl {
+        name = "ajv___ajv_5.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz";
+        sha1 = "73b5eeca3fab653e3d3f9422b341ad42205dc965";
+      };
+    }
+    {
+      name = "ajv___ajv_6.12.3.tgz";
+      path = fetchurl {
+        name = "ajv___ajv_6.12.3.tgz";
+        url  = "https://registry.yarnpkg.com/ajv/-/ajv-6.12.3.tgz";
+        sha1 = "18c5af38a111ddeb4f2697bd78d68abc1cabd706";
+      };
+    }
+    {
+      name = "ajv___ajv_6.12.6.tgz";
+      path = fetchurl {
+        name = "ajv___ajv_6.12.6.tgz";
+        url  = "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz";
+        sha1 = "baf5a62e802b07d977034586f8c3baf5adf26df4";
+      };
+    }
+    {
+      name = "ajv___ajv_8.3.0.tgz";
+      path = fetchurl {
+        name = "ajv___ajv_8.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/ajv/-/ajv-8.3.0.tgz";
+        sha1 = "25ee7348e32cdc4a1dbb38256bf6bdc451dd577c";
+      };
+    }
+    {
+      name = "alphanum_sort___alphanum_sort_1.0.2.tgz";
+      path = fetchurl {
+        name = "alphanum_sort___alphanum_sort_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz";
+        sha1 = "97a1119649b211ad33691d9f9f486a8ec9fbe0a3";
+      };
+    }
+    {
+      name = "ansi_colors___ansi_colors_4.1.1.tgz";
+      path = fetchurl {
+        name = "ansi_colors___ansi_colors_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz";
+        sha1 = "cbb9ae256bf750af1eab344f229aa27fe94ba348";
+      };
+    }
+    {
+      name = "ansi_regex___ansi_regex_2.1.1.tgz";
+      path = fetchurl {
+        name = "ansi_regex___ansi_regex_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz";
+        sha1 = "c3b33ab5ee360d86e0e628f0468ae7ef27d654df";
+      };
+    }
+    {
+      name = "ansi_regex___ansi_regex_4.1.0.tgz";
+      path = fetchurl {
+        name = "ansi_regex___ansi_regex_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz";
+        sha1 = "8b9f8f08cf1acb843756a839ca8c7e3168c51997";
+      };
+    }
+    {
+      name = "ansi_regex___ansi_regex_5.0.0.tgz";
+      path = fetchurl {
+        name = "ansi_regex___ansi_regex_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz";
+        sha1 = "388539f55179bf39339c81af30a654d69f87cb75";
+      };
+    }
+    {
+      name = "ansi_styles___ansi_styles_2.2.1.tgz";
+      path = fetchurl {
+        name = "ansi_styles___ansi_styles_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz";
+        sha1 = "b432dd3358b634cf75e1e4664368240533c1ddbe";
+      };
+    }
+    {
+      name = "ansi_styles___ansi_styles_3.2.1.tgz";
+      path = fetchurl {
+        name = "ansi_styles___ansi_styles_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz";
+        sha1 = "41fbb20243e50b12be0f04b8dedbf07520ce841d";
+      };
+    }
+    {
+      name = "ansi_styles___ansi_styles_4.2.1.tgz";
+      path = fetchurl {
+        name = "ansi_styles___ansi_styles_4.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz";
+        sha1 = "90ae75c424d008d2624c5bf29ead3177ebfcf359";
+      };
+    }
+    {
+      name = "ansi_styles___ansi_styles_4.3.0.tgz";
+      path = fetchurl {
+        name = "ansi_styles___ansi_styles_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz";
+        sha1 = "edd803628ae71c04c85ae7a0906edad34b648937";
+      };
+    }
+    {
+      name = "anymatch___anymatch_2.0.0.tgz";
+      path = fetchurl {
+        name = "anymatch___anymatch_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz";
+        sha1 = "bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb";
+      };
+    }
+    {
+      name = "anymatch___anymatch_3.1.1.tgz";
+      path = fetchurl {
+        name = "anymatch___anymatch_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz";
+        sha1 = "c55ecf02185e2469259399310c173ce31233b142";
+      };
+    }
+    {
+      name = "aproba___aproba_1.2.0.tgz";
+      path = fetchurl {
+        name = "aproba___aproba_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz";
+        sha1 = "6802e6264efd18c790a1b0d517f0f2627bf2c94a";
+      };
+    }
+    {
+      name = "argparse___argparse_1.0.10.tgz";
+      path = fetchurl {
+        name = "argparse___argparse_1.0.10.tgz";
+        url  = "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz";
+        sha1 = "bcd6791ea5ae09725e17e5ad988134cd40b3d911";
+      };
+    }
+    {
+      name = "arr_diff___arr_diff_4.0.0.tgz";
+      path = fetchurl {
+        name = "arr_diff___arr_diff_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz";
+        sha1 = "d6461074febfec71e7e15235761a329a5dc7c520";
+      };
+    }
+    {
+      name = "arr_flatten___arr_flatten_1.1.0.tgz";
+      path = fetchurl {
+        name = "arr_flatten___arr_flatten_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz";
+        sha1 = "36048bbff4e7b47e136644316c99669ea5ae91f1";
+      };
+    }
+    {
+      name = "arr_union___arr_union_3.1.0.tgz";
+      path = fetchurl {
+        name = "arr_union___arr_union_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz";
+        sha1 = "e39b09aea9def866a8f206e288af63919bae39c4";
+      };
+    }
+    {
+      name = "array_includes___array_includes_3.1.1.tgz";
+      path = fetchurl {
+        name = "array_includes___array_includes_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.1.tgz";
+        sha1 = "cdd67e6852bdf9c1215460786732255ed2459348";
+      };
+    }
+    {
+      name = "array_union___array_union_1.0.2.tgz";
+      path = fetchurl {
+        name = "array_union___array_union_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz";
+        sha1 = "9a34410e4f4e3da23dea375be5be70f24778ec39";
+      };
+    }
+    {
+      name = "array_union___array_union_2.1.0.tgz";
+      path = fetchurl {
+        name = "array_union___array_union_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz";
+        sha1 = "b798420adbeb1de828d84acd8a2e23d3efe85e8d";
+      };
+    }
+    {
+      name = "array_uniq___array_uniq_1.0.3.tgz";
+      path = fetchurl {
+        name = "array_uniq___array_uniq_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz";
+        sha1 = "af6ac877a25cc7f74e058894753858dfdb24fdb6";
+      };
+    }
+    {
+      name = "array_unique___array_unique_0.3.2.tgz";
+      path = fetchurl {
+        name = "array_unique___array_unique_0.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz";
+        sha1 = "a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428";
+      };
+    }
+    {
+      name = "array.prototype.flat___array.prototype.flat_1.2.3.tgz";
+      path = fetchurl {
+        name = "array.prototype.flat___array.prototype.flat_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz";
+        sha1 = "0de82b426b0318dbfdb940089e38b043d37f6c7b";
+      };
+    }
+    {
+      name = "arrify___arrify_1.0.1.tgz";
+      path = fetchurl {
+        name = "arrify___arrify_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz";
+        sha1 = "898508da2226f380df904728456849c1501a4b0d";
+      };
+    }
+    {
+      name = "asn1.js___asn1.js_4.10.1.tgz";
+      path = fetchurl {
+        name = "asn1.js___asn1.js_4.10.1.tgz";
+        url  = "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz";
+        sha1 = "b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0";
+      };
+    }
+    {
+      name = "assert___assert_1.5.0.tgz";
+      path = fetchurl {
+        name = "assert___assert_1.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz";
+        sha1 = "55c109aaf6e0aefdb3dc4b71240c70bf574b18eb";
+      };
+    }
+    {
+      name = "assign_symbols___assign_symbols_1.0.0.tgz";
+      path = fetchurl {
+        name = "assign_symbols___assign_symbols_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz";
+        sha1 = "59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367";
+      };
+    }
+    {
+      name = "astral_regex___astral_regex_1.0.0.tgz";
+      path = fetchurl {
+        name = "astral_regex___astral_regex_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz";
+        sha1 = "6c8c3fb827dd43ee3918f27b82782ab7658a6fd9";
+      };
+    }
+    {
+      name = "astral_regex___astral_regex_2.0.0.tgz";
+      path = fetchurl {
+        name = "astral_regex___astral_regex_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz";
+        sha1 = "483143c567aeed4785759c0865786dc77d7d2e31";
+      };
+    }
+    {
+      name = "async_each___async_each_1.0.3.tgz";
+      path = fetchurl {
+        name = "async_each___async_each_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz";
+        sha1 = "b727dbf87d7651602f06f4d4ac387f47d91b0cbf";
+      };
+    }
+    {
+      name = "atob___atob_2.1.2.tgz";
+      path = fetchurl {
+        name = "atob___atob_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz";
+        sha1 = "6d9517eb9e030d2436666651e86bd9f6f13533c9";
+      };
+    }
+    {
+      name = "autoprefixer___autoprefixer_9.8.6.tgz";
+      path = fetchurl {
+        name = "autoprefixer___autoprefixer_9.8.6.tgz";
+        url  = "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.6.tgz";
+        sha1 = "3b73594ca1bf9266320c5acf1588d74dea74210f";
+      };
+    }
+    {
+      name = "babel_code_frame___babel_code_frame_6.26.0.tgz";
+      path = fetchurl {
+        name = "babel_code_frame___babel_code_frame_6.26.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz";
+        sha1 = "63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b";
+      };
+    }
+    {
+      name = "babel_core___babel_core_6.26.3.tgz";
+      path = fetchurl {
+        name = "babel_core___babel_core_6.26.3.tgz";
+        url  = "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz";
+        sha1 = "b2e2f09e342d0f0c88e2f02e067794125e75c207";
+      };
+    }
+    {
+      name = "babel_eslint___babel_eslint_10.1.0.tgz";
+      path = fetchurl {
+        name = "babel_eslint___babel_eslint_10.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz";
+        sha1 = "6968e568a910b78fb3779cdd8b6ac2f479943232";
+      };
+    }
+    {
+      name = "babel_generator___babel_generator_6.26.1.tgz";
+      path = fetchurl {
+        name = "babel_generator___babel_generator_6.26.1.tgz";
+        url  = "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz";
+        sha1 = "1844408d3b8f0d35a404ea7ac180f087a601bd90";
+      };
+    }
+    {
+      name = "babel_helpers___babel_helpers_6.24.1.tgz";
+      path = fetchurl {
+        name = "babel_helpers___babel_helpers_6.24.1.tgz";
+        url  = "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz";
+        sha1 = "3471de9caec388e5c850e597e58a26ddf37602b2";
+      };
+    }
+    {
+      name = "babel_loader___babel_loader_8.1.0.tgz";
+      path = fetchurl {
+        name = "babel_loader___babel_loader_8.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.1.0.tgz";
+        sha1 = "c611d5112bd5209abe8b9fa84c3e4da25275f1c3";
+      };
+    }
+    {
+      name = "babel_messages___babel_messages_6.23.0.tgz";
+      path = fetchurl {
+        name = "babel_messages___babel_messages_6.23.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz";
+        sha1 = "f3cdf4703858035b2a2951c6ec5edf6c62f2630e";
+      };
+    }
+    {
+      name = "babel_plugin_css_modules_transform___babel_plugin_css_modules_transform_1.6.2.tgz";
+      path = fetchurl {
+        name = "babel_plugin_css_modules_transform___babel_plugin_css_modules_transform_1.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/babel-plugin-css-modules-transform/-/babel-plugin-css-modules-transform-1.6.2.tgz";
+        sha1 = "eecf4889637bf1c56cda25ee21df060775d1bd22";
+      };
+    }
+    {
+      name = "babel_polyfill___babel_polyfill_6.26.0.tgz";
+      path = fetchurl {
+        name = "babel_polyfill___babel_polyfill_6.26.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.26.0.tgz";
+        sha1 = "379937abc67d7895970adc621f284cd966cf2153";
+      };
+    }
+    {
+      name = "babel_register___babel_register_6.26.0.tgz";
+      path = fetchurl {
+        name = "babel_register___babel_register_6.26.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz";
+        sha1 = "6ed021173e2fcb486d7acb45c6009a856f647071";
+      };
+    }
+    {
+      name = "babel_runtime___babel_runtime_6.26.0.tgz";
+      path = fetchurl {
+        name = "babel_runtime___babel_runtime_6.26.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz";
+        sha1 = "965c7058668e82b55d7bfe04ff2337bc8b5647fe";
+      };
+    }
+    {
+      name = "babel_template___babel_template_6.26.0.tgz";
+      path = fetchurl {
+        name = "babel_template___babel_template_6.26.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz";
+        sha1 = "de03e2d16396b069f46dd9fff8521fb1a0e35e02";
+      };
+    }
+    {
+      name = "babel_traverse___babel_traverse_6.26.0.tgz";
+      path = fetchurl {
+        name = "babel_traverse___babel_traverse_6.26.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz";
+        sha1 = "46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee";
+      };
+    }
+    {
+      name = "babel_types___babel_types_6.26.0.tgz";
+      path = fetchurl {
+        name = "babel_types___babel_types_6.26.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz";
+        sha1 = "a3b073f94ab49eb6fa55cd65227a334380632497";
+      };
+    }
+    {
+      name = "babel___babel_6.23.0.tgz";
+      path = fetchurl {
+        name = "babel___babel_6.23.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel/-/babel-6.23.0.tgz";
+        sha1 = "d0d1e7d803e974765beea3232d4e153c0efb90f4";
+      };
+    }
+    {
+      name = "babylon___babylon_6.18.0.tgz";
+      path = fetchurl {
+        name = "babylon___babylon_6.18.0.tgz";
+        url  = "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz";
+        sha1 = "af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3";
+      };
+    }
+    {
+      name = "bail___bail_1.0.5.tgz";
+      path = fetchurl {
+        name = "bail___bail_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz";
+        sha1 = "b6fa133404a392cbc1f8c4bf63f5953351e7a776";
+      };
+    }
+    {
+      name = "balanced_match___balanced_match_1.0.2.tgz";
+      path = fetchurl {
+        name = "balanced_match___balanced_match_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz";
+        sha1 = "e83e3a7e3f300b34cb9d87f615fa0cbf357690ee";
+      };
+    }
+    {
+      name = "balanced_match___balanced_match_2.0.0.tgz";
+      path = fetchurl {
+        name = "balanced_match___balanced_match_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/balanced-match/-/balanced-match-2.0.0.tgz";
+        sha1 = "dc70f920d78db8b858535795867bf48f820633d9";
+      };
+    }
+    {
+      name = "base64_js___base64_js_1.3.1.tgz";
+      path = fetchurl {
+        name = "base64_js___base64_js_1.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz";
+        sha1 = "58ece8cb75dd07e71ed08c736abc5fac4dbf8df1";
+      };
+    }
+    {
+      name = "base___base_0.11.2.tgz";
+      path = fetchurl {
+        name = "base___base_0.11.2.tgz";
+        url  = "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz";
+        sha1 = "7bde5ced145b6d551a90db87f83c558b4eb48a8f";
+      };
+    }
+    {
+      name = "better_ajv_errors___better_ajv_errors_0.6.7.tgz";
+      path = fetchurl {
+        name = "better_ajv_errors___better_ajv_errors_0.6.7.tgz";
+        url  = "https://registry.yarnpkg.com/better-ajv-errors/-/better-ajv-errors-0.6.7.tgz";
+        sha1 = "b5344af1ce10f434fe02fc4390a5a9c811e470d1";
+      };
+    }
+    {
+      name = "big.js___big.js_3.2.0.tgz";
+      path = fetchurl {
+        name = "big.js___big.js_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz";
+        sha1 = "a5fc298b81b9e0dca2e458824784b65c52ba588e";
+      };
+    }
+    {
+      name = "big.js___big.js_5.2.2.tgz";
+      path = fetchurl {
+        name = "big.js___big.js_5.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz";
+        sha1 = "65f0af382f578bcdc742bd9c281e9cb2d7768328";
+      };
+    }
+    {
+      name = "binary_extensions___binary_extensions_1.13.1.tgz";
+      path = fetchurl {
+        name = "binary_extensions___binary_extensions_1.13.1.tgz";
+        url  = "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz";
+        sha1 = "598afe54755b2868a5330d2aff9d4ebb53209b65";
+      };
+    }
+    {
+      name = "binary_extensions___binary_extensions_2.1.0.tgz";
+      path = fetchurl {
+        name = "binary_extensions___binary_extensions_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.1.0.tgz";
+        sha1 = "30fa40c9e7fe07dbc895678cd287024dea241dd9";
+      };
+    }
+    {
+      name = "bindings___bindings_1.5.0.tgz";
+      path = fetchurl {
+        name = "bindings___bindings_1.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz";
+        sha1 = "10353c9e945334bc0511a6d90b38fbc7c9c504df";
+      };
+    }
+    {
+      name = "bluebird___bluebird_3.7.2.tgz";
+      path = fetchurl {
+        name = "bluebird___bluebird_3.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz";
+        sha1 = "9f229c15be272454ffa973ace0dbee79a1b0c36f";
+      };
+    }
+    {
+      name = "bn.js___bn.js_4.12.0.tgz";
+      path = fetchurl {
+        name = "bn.js___bn.js_4.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz";
+        sha1 = "775b3f278efbb9718eec7361f483fb36fbbfea88";
+      };
+    }
+    {
+      name = "bn.js___bn.js_5.1.2.tgz";
+      path = fetchurl {
+        name = "bn.js___bn.js_5.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/bn.js/-/bn.js-5.1.2.tgz";
+        sha1 = "c9686902d3c9a27729f43ab10f9d79c2004da7b0";
+      };
+    }
+    {
+      name = "boolbase___boolbase_1.0.0.tgz";
+      path = fetchurl {
+        name = "boolbase___boolbase_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz";
+        sha1 = "68dff5fbe60c51eb37725ea9e3ed310dcc1e776e";
+      };
+    }
+    {
+      name = "bootstrap_3_typeahead___bootstrap_3_typeahead_4.0.2.tgz";
+      path = fetchurl {
+        name = "bootstrap_3_typeahead___bootstrap_3_typeahead_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/bootstrap-3-typeahead/-/bootstrap-3-typeahead-4.0.2.tgz";
+        sha1 = "cb1c969044856862096fc8c71cc21b3acbb50412";
+      };
+    }
+    {
+      name = "bootstrap___bootstrap_3.4.1.tgz";
+      path = fetchurl {
+        name = "bootstrap___bootstrap_3.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/bootstrap/-/bootstrap-3.4.1.tgz";
+        sha1 = "c3a347d419e289ad11f4033e3c4132b87c081d72";
+      };
+    }
+    {
+      name = "brace_expansion___brace_expansion_1.1.11.tgz";
+      path = fetchurl {
+        name = "brace_expansion___brace_expansion_1.1.11.tgz";
+        url  = "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz";
+        sha1 = "3c7fcbf529d87226f3d2f52b966ff5271eb441dd";
+      };
+    }
+    {
+      name = "braces___braces_2.3.2.tgz";
+      path = fetchurl {
+        name = "braces___braces_2.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz";
+        sha1 = "5979fd3f14cd531565e5fa2df1abfff1dfaee729";
+      };
+    }
+    {
+      name = "braces___braces_3.0.2.tgz";
+      path = fetchurl {
+        name = "braces___braces_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz";
+        sha1 = "3454e1a462ee8d599e236df336cd9ea4f8afe107";
+      };
+    }
+    {
+      name = "brorand___brorand_1.1.0.tgz";
+      path = fetchurl {
+        name = "brorand___brorand_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz";
+        sha1 = "12c25efe40a45e3c323eb8675a0a0ce57b22371f";
+      };
+    }
+    {
+      name = "browserify_aes___browserify_aes_1.2.0.tgz";
+      path = fetchurl {
+        name = "browserify_aes___browserify_aes_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz";
+        sha1 = "326734642f403dabc3003209853bb70ad428ef48";
+      };
+    }
+    {
+      name = "browserify_cipher___browserify_cipher_1.0.1.tgz";
+      path = fetchurl {
+        name = "browserify_cipher___browserify_cipher_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz";
+        sha1 = "8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0";
+      };
+    }
+    {
+      name = "browserify_des___browserify_des_1.0.2.tgz";
+      path = fetchurl {
+        name = "browserify_des___browserify_des_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz";
+        sha1 = "3af4f1f59839403572f1c66204375f7a7f703e9c";
+      };
+    }
+    {
+      name = "browserify_rsa___browserify_rsa_4.0.1.tgz";
+      path = fetchurl {
+        name = "browserify_rsa___browserify_rsa_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz";
+        sha1 = "21e0abfaf6f2029cf2fafb133567a701d4135524";
+      };
+    }
+    {
+      name = "browserify_sign___browserify_sign_4.2.0.tgz";
+      path = fetchurl {
+        name = "browserify_sign___browserify_sign_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.0.tgz";
+        sha1 = "545d0b1b07e6b2c99211082bf1b12cce7a0b0e11";
+      };
+    }
+    {
+      name = "browserify_zlib___browserify_zlib_0.2.0.tgz";
+      path = fetchurl {
+        name = "browserify_zlib___browserify_zlib_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz";
+        sha1 = "2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f";
+      };
+    }
+    {
+      name = "browserslist___browserslist_4.14.5.tgz";
+      path = fetchurl {
+        name = "browserslist___browserslist_4.14.5.tgz";
+        url  = "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.5.tgz";
+        sha1 = "1c751461a102ddc60e40993639b709be7f2c4015";
+      };
+    }
+    {
+      name = "browserslist___browserslist_4.16.6.tgz";
+      path = fetchurl {
+        name = "browserslist___browserslist_4.16.6.tgz";
+        url  = "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz";
+        sha1 = "d7901277a5a88e554ed305b183ec9b0c08f66fa2";
+      };
+    }
+    {
+      name = "buffer_from___buffer_from_1.1.1.tgz";
+      path = fetchurl {
+        name = "buffer_from___buffer_from_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz";
+        sha1 = "32713bc028f75c02fdb710d7c7bcec1f2c6070ef";
+      };
+    }
+    {
+      name = "buffer_xor___buffer_xor_1.0.3.tgz";
+      path = fetchurl {
+        name = "buffer_xor___buffer_xor_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz";
+        sha1 = "26e61ed1422fb70dd42e6e36729ed51d855fe8d9";
+      };
+    }
+    {
+      name = "buffer___buffer_4.9.2.tgz";
+      path = fetchurl {
+        name = "buffer___buffer_4.9.2.tgz";
+        url  = "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz";
+        sha1 = "230ead344002988644841ab0244af8c44bbe3ef8";
+      };
+    }
+    {
+      name = "builtin_status_codes___builtin_status_codes_3.0.0.tgz";
+      path = fetchurl {
+        name = "builtin_status_codes___builtin_status_codes_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz";
+        sha1 = "85982878e21b98e1c66425e03d0174788f569ee8";
+      };
+    }
+    {
+      name = "cacache___cacache_12.0.4.tgz";
+      path = fetchurl {
+        name = "cacache___cacache_12.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz";
+        sha1 = "668bcbd105aeb5f1d92fe25570ec9525c8faa40c";
+      };
+    }
+    {
+      name = "cacache___cacache_15.0.5.tgz";
+      path = fetchurl {
+        name = "cacache___cacache_15.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/cacache/-/cacache-15.0.5.tgz";
+        sha1 = "69162833da29170d6732334643c60e005f5f17d0";
+      };
+    }
+    {
+      name = "cache_base___cache_base_1.0.1.tgz";
+      path = fetchurl {
+        name = "cache_base___cache_base_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz";
+        sha1 = "0a7f46416831c8b662ee36fe4e7c59d76f666ab2";
+      };
+    }
+    {
+      name = "call_me_maybe___call_me_maybe_1.0.1.tgz";
+      path = fetchurl {
+        name = "call_me_maybe___call_me_maybe_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz";
+        sha1 = "26d208ea89e37b5cbde60250a15f031c16a4d66b";
+      };
+    }
+    {
+      name = "callsites___callsites_3.1.0.tgz";
+      path = fetchurl {
+        name = "callsites___callsites_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz";
+        sha1 = "b3630abd8943432f54b3f0519238e33cd7df2f73";
+      };
+    }
+    {
+      name = "camelcase_keys___camelcase_keys_6.2.2.tgz";
+      path = fetchurl {
+        name = "camelcase_keys___camelcase_keys_6.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz";
+        sha1 = "5e755d6ba51aa223ec7d3d52f25778210f9dc3c0";
+      };
+    }
+    {
+      name = "camelcase___camelcase_5.3.1.tgz";
+      path = fetchurl {
+        name = "camelcase___camelcase_5.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz";
+        sha1 = "e3c9b31569e106811df242f715725a1f4c494320";
+      };
+    }
+    {
+      name = "caniuse_api___caniuse_api_3.0.0.tgz";
+      path = fetchurl {
+        name = "caniuse_api___caniuse_api_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz";
+        sha1 = "5e4d90e2274961d46291997df599e3ed008ee4c0";
+      };
+    }
+    {
+      name = "caniuse_lite___caniuse_lite_1.0.30001236.tgz";
+      path = fetchurl {
+        name = "caniuse_lite___caniuse_lite_1.0.30001236.tgz";
+        url  = "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001236.tgz";
+        sha1 = "0a80de4cdf62e1770bb46a30d884fc8d633e3958";
+      };
+    }
+    {
+      name = "chalk___chalk_1.1.3.tgz";
+      path = fetchurl {
+        name = "chalk___chalk_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz";
+        sha1 = "a8115c55e4a702fe4d150abd3872822a7e09fc98";
+      };
+    }
+    {
+      name = "chalk___chalk_2.4.2.tgz";
+      path = fetchurl {
+        name = "chalk___chalk_2.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz";
+        sha1 = "cd42541677a54333cf541a49108c1432b44c9424";
+      };
+    }
+    {
+      name = "chalk___chalk_4.1.1.tgz";
+      path = fetchurl {
+        name = "chalk___chalk_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/chalk/-/chalk-4.1.1.tgz";
+        sha1 = "c80b3fab28bf6371e6863325eee67e618b77e6ad";
+      };
+    }
+    {
+      name = "character_entities_legacy___character_entities_legacy_1.1.4.tgz";
+      path = fetchurl {
+        name = "character_entities_legacy___character_entities_legacy_1.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz";
+        sha1 = "94bc1845dce70a5bb9d2ecc748725661293d8fc1";
+      };
+    }
+    {
+      name = "character_entities___character_entities_1.2.4.tgz";
+      path = fetchurl {
+        name = "character_entities___character_entities_1.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz";
+        sha1 = "e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b";
+      };
+    }
+    {
+      name = "character_reference_invalid___character_reference_invalid_1.1.4.tgz";
+      path = fetchurl {
+        name = "character_reference_invalid___character_reference_invalid_1.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz";
+        sha1 = "083329cda0eae272ab3dbbf37e9a382c13af1560";
+      };
+    }
+    {
+      name = "chokidar___chokidar_2.1.8.tgz";
+      path = fetchurl {
+        name = "chokidar___chokidar_2.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz";
+        sha1 = "804b3a7b6a99358c3c5c61e71d8728f041cff917";
+      };
+    }
+    {
+      name = "chokidar___chokidar_3.4.1.tgz";
+      path = fetchurl {
+        name = "chokidar___chokidar_3.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.1.tgz";
+        sha1 = "e905bdecf10eaa0a0b1db0c664481cc4cbc22ba1";
+      };
+    }
+    {
+      name = "chownr___chownr_1.1.4.tgz";
+      path = fetchurl {
+        name = "chownr___chownr_1.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz";
+        sha1 = "6fc9d7b42d32a583596337666e7d08084da2cc6b";
+      };
+    }
+    {
+      name = "chownr___chownr_2.0.0.tgz";
+      path = fetchurl {
+        name = "chownr___chownr_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz";
+        sha1 = "15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece";
+      };
+    }
+    {
+      name = "chrome_trace_event___chrome_trace_event_1.0.2.tgz";
+      path = fetchurl {
+        name = "chrome_trace_event___chrome_trace_event_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz";
+        sha1 = "234090ee97c7d4ad1a2c4beae27505deffc608a4";
+      };
+    }
+    {
+      name = "cipher_base___cipher_base_1.0.4.tgz";
+      path = fetchurl {
+        name = "cipher_base___cipher_base_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz";
+        sha1 = "8760e4ecc272f4c363532f926d874aae2c1397de";
+      };
+    }
+    {
+      name = "class_utils___class_utils_0.3.6.tgz";
+      path = fetchurl {
+        name = "class_utils___class_utils_0.3.6.tgz";
+        url  = "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz";
+        sha1 = "f93369ae8b9a7ce02fd41faad0ca83033190c463";
+      };
+    }
+    {
+      name = "classnames___classnames_2.2.6.tgz";
+      path = fetchurl {
+        name = "classnames___classnames_2.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz";
+        sha1 = "43935bffdd291f326dad0a205309b38d00f650ce";
+      };
+    }
+    {
+      name = "clean_stack___clean_stack_2.2.0.tgz";
+      path = fetchurl {
+        name = "clean_stack___clean_stack_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz";
+        sha1 = "ee8472dbb129e727b31e8a10a427dee9dfe4008b";
+      };
+    }
+    {
+      name = "clean_webpack_plugin___clean_webpack_plugin_3.0.0.tgz";
+      path = fetchurl {
+        name = "clean_webpack_plugin___clean_webpack_plugin_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/clean-webpack-plugin/-/clean-webpack-plugin-3.0.0.tgz";
+        sha1 = "a99d8ec34c1c628a4541567aa7b457446460c62b";
+      };
+    }
+    {
+      name = "cli___cli_1.0.1.tgz";
+      path = fetchurl {
+        name = "cli___cli_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/cli/-/cli-1.0.1.tgz";
+        sha1 = "22817534f24bfa4950c34d532d48ecbc621b8c14";
+      };
+    }
+    {
+      name = "clipboard___clipboard_2.0.6.tgz";
+      path = fetchurl {
+        name = "clipboard___clipboard_2.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/clipboard/-/clipboard-2.0.6.tgz";
+        sha1 = "52921296eec0fdf77ead1749421b21c968647376";
+      };
+    }
+    {
+      name = "cliui___cliui_5.0.0.tgz";
+      path = fetchurl {
+        name = "cliui___cliui_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz";
+        sha1 = "deefcfdb2e800784aa34f46fa08e06851c7bbbc5";
+      };
+    }
+    {
+      name = "cliui___cliui_6.0.0.tgz";
+      path = fetchurl {
+        name = "cliui___cliui_6.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz";
+        sha1 = "511d702c0c4e41ca156d7d0e96021f23e13225b1";
+      };
+    }
+    {
+      name = "cliui___cliui_7.0.4.tgz";
+      path = fetchurl {
+        name = "cliui___cliui_7.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz";
+        sha1 = "a0265ee655476fc807aea9df3df8df7783808b4f";
+      };
+    }
+    {
+      name = "clone_regexp___clone_regexp_2.2.0.tgz";
+      path = fetchurl {
+        name = "clone_regexp___clone_regexp_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-2.2.0.tgz";
+        sha1 = "7d65e00885cd8796405c35a737e7a86b7429e36f";
+      };
+    }
+    {
+      name = "clsx___clsx_1.1.1.tgz";
+      path = fetchurl {
+        name = "clsx___clsx_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/clsx/-/clsx-1.1.1.tgz";
+        sha1 = "98b3134f9abbdf23b2663491ace13c5c03a73188";
+      };
+    }
+    {
+      name = "co___co_4.6.0.tgz";
+      path = fetchurl {
+        name = "co___co_4.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz";
+        sha1 = "6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184";
+      };
+    }
+    {
+      name = "code_error_fragment___code_error_fragment_0.0.230.tgz";
+      path = fetchurl {
+        name = "code_error_fragment___code_error_fragment_0.0.230.tgz";
+        url  = "https://registry.yarnpkg.com/code-error-fragment/-/code-error-fragment-0.0.230.tgz";
+        sha1 = "d736d75c832445342eca1d1fedbf17d9618b14d7";
+      };
+    }
+    {
+      name = "codemirror___codemirror_5.59.1.tgz";
+      path = fetchurl {
+        name = "codemirror___codemirror_5.59.1.tgz";
+        url  = "https://registry.yarnpkg.com/codemirror/-/codemirror-5.59.1.tgz";
+        sha1 = "cd6465555a87f8a2243eb41ffb460c777e15212c";
+      };
+    }
+    {
+      name = "collection_visit___collection_visit_1.0.0.tgz";
+      path = fetchurl {
+        name = "collection_visit___collection_visit_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz";
+        sha1 = "4bc0373c164bc3291b4d368c829cf1a80a59dca0";
+      };
+    }
+    {
+      name = "color_convert___color_convert_1.9.3.tgz";
+      path = fetchurl {
+        name = "color_convert___color_convert_1.9.3.tgz";
+        url  = "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz";
+        sha1 = "bb71850690e1f136567de629d2d5471deda4c1e8";
+      };
+    }
+    {
+      name = "color_convert___color_convert_2.0.1.tgz";
+      path = fetchurl {
+        name = "color_convert___color_convert_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz";
+        sha1 = "72d3a68d598c9bdb3af2ad1e84f21d896abd4de3";
+      };
+    }
+    {
+      name = "color_name___color_name_1.1.3.tgz";
+      path = fetchurl {
+        name = "color_name___color_name_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz";
+        sha1 = "a7d0558bd89c42f795dd42328f740831ca53bc25";
+      };
+    }
+    {
+      name = "color_name___color_name_1.1.4.tgz";
+      path = fetchurl {
+        name = "color_name___color_name_1.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz";
+        sha1 = "c2a09a87acbde69543de6f63fa3995c826c536a2";
+      };
+    }
+    {
+      name = "colord___colord_2.0.1.tgz";
+      path = fetchurl {
+        name = "colord___colord_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/colord/-/colord-2.0.1.tgz";
+        sha1 = "1e7fb1f9fa1cf74f42c58cb9c20320bab8435aa0";
+      };
+    }
+    {
+      name = "colorette___colorette_1.2.2.tgz";
+      path = fetchurl {
+        name = "colorette___colorette_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz";
+        sha1 = "cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94";
+      };
+    }
+    {
+      name = "commander___commander_2.20.3.tgz";
+      path = fetchurl {
+        name = "commander___commander_2.20.3.tgz";
+        url  = "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz";
+        sha1 = "fd485e84c03eb4881c20722ba48035e8531aeb33";
+      };
+    }
+    {
+      name = "commander___commander_7.2.0.tgz";
+      path = fetchurl {
+        name = "commander___commander_7.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz";
+        sha1 = "a36cb57d0b501ce108e4d20559a150a391d97ab7";
+      };
+    }
+    {
+      name = "commondir___commondir_1.0.1.tgz";
+      path = fetchurl {
+        name = "commondir___commondir_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz";
+        sha1 = "ddd800da0c66127393cca5950ea968a3aaf1253b";
+      };
+    }
+    {
+      name = "component_emitter___component_emitter_1.3.0.tgz";
+      path = fetchurl {
+        name = "component_emitter___component_emitter_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz";
+        sha1 = "16e4070fba8ae29b679f2215853ee181ab2eabc0";
+      };
+    }
+    {
+      name = "concat_map___concat_map_0.0.1.tgz";
+      path = fetchurl {
+        name = "concat_map___concat_map_0.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz";
+        sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
+      };
+    }
+    {
+      name = "concat_stream___concat_stream_1.6.2.tgz";
+      path = fetchurl {
+        name = "concat_stream___concat_stream_1.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz";
+        sha1 = "904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34";
+      };
+    }
+    {
+      name = "confusing_browser_globals___confusing_browser_globals_1.0.9.tgz";
+      path = fetchurl {
+        name = "confusing_browser_globals___confusing_browser_globals_1.0.9.tgz";
+        url  = "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz";
+        sha1 = "72bc13b483c0276801681871d4898516f8f54fdd";
+      };
+    }
+    {
+      name = "console_browserify___console_browserify_1.1.0.tgz";
+      path = fetchurl {
+        name = "console_browserify___console_browserify_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz";
+        sha1 = "f0241c45730a9fc6323b206dbf38edc741d0bb10";
+      };
+    }
+    {
+      name = "console_browserify___console_browserify_1.2.0.tgz";
+      path = fetchurl {
+        name = "console_browserify___console_browserify_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz";
+        sha1 = "67063cef57ceb6cf4993a2ab3a55840ae8c49336";
+      };
+    }
+    {
+      name = "constants_browserify___constants_browserify_1.0.0.tgz";
+      path = fetchurl {
+        name = "constants_browserify___constants_browserify_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz";
+        sha1 = "c20b96d8c617748aaf1c16021760cd27fcb8cb75";
+      };
+    }
+    {
+      name = "contains_path___contains_path_0.1.0.tgz";
+      path = fetchurl {
+        name = "contains_path___contains_path_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz";
+        sha1 = "fe8cf184ff6670b6baef01a9d4861a5cbec4120a";
+      };
+    }
+    {
+      name = "convert_source_map___convert_source_map_1.7.0.tgz";
+      path = fetchurl {
+        name = "convert_source_map___convert_source_map_1.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz";
+        sha1 = "17a2cb882d7f77d3490585e2ce6c524424a3a442";
+      };
+    }
+    {
+      name = "copy_concurrently___copy_concurrently_1.0.5.tgz";
+      path = fetchurl {
+        name = "copy_concurrently___copy_concurrently_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz";
+        sha1 = "92297398cae34937fcafd6ec8139c18051f0b5e0";
+      };
+    }
+    {
+      name = "copy_descriptor___copy_descriptor_0.1.1.tgz";
+      path = fetchurl {
+        name = "copy_descriptor___copy_descriptor_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz";
+        sha1 = "676f6eb3c39997c2ee1ac3a924fd6124748f578d";
+      };
+    }
+    {
+      name = "copy_webpack_plugin___copy_webpack_plugin_6.0.3.tgz";
+      path = fetchurl {
+        name = "copy_webpack_plugin___copy_webpack_plugin_6.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-6.0.3.tgz";
+        sha1 = "2b3d2bfc6861b96432a65f0149720adbd902040b";
+      };
+    }
+    {
+      name = "core_js___core_js_2.6.11.tgz";
+      path = fetchurl {
+        name = "core_js___core_js_2.6.11.tgz";
+        url  = "https://registry.yarnpkg.com/core-js/-/core-js-2.6.11.tgz";
+        sha1 = "38831469f9922bded8ee21c9dc46985e0399308c";
+      };
+    }
+    {
+      name = "core_js___core_js_3.6.5.tgz";
+      path = fetchurl {
+        name = "core_js___core_js_3.6.5.tgz";
+        url  = "https://registry.yarnpkg.com/core-js/-/core-js-3.6.5.tgz";
+        sha1 = "7395dc273af37fb2e50e9bd3d9fe841285231d1a";
+      };
+    }
+    {
+      name = "core_util_is___core_util_is_1.0.2.tgz";
+      path = fetchurl {
+        name = "core_util_is___core_util_is_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz";
+        sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
+      };
+    }
+    {
+      name = "cosmiconfig___cosmiconfig_7.0.0.tgz";
+      path = fetchurl {
+        name = "cosmiconfig___cosmiconfig_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.0.tgz";
+        sha1 = "ef9b44d773959cae63ddecd122de23853b60f8d3";
+      };
+    }
+    {
+      name = "create_ecdh___create_ecdh_4.0.3.tgz";
+      path = fetchurl {
+        name = "create_ecdh___create_ecdh_4.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz";
+        sha1 = "c9111b6f33045c4697f144787f9254cdc77c45ff";
+      };
+    }
+    {
+      name = "create_hash___create_hash_1.2.0.tgz";
+      path = fetchurl {
+        name = "create_hash___create_hash_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz";
+        sha1 = "889078af11a63756bcfb59bd221996be3a9ef196";
+      };
+    }
+    {
+      name = "create_hmac___create_hmac_1.1.7.tgz";
+      path = fetchurl {
+        name = "create_hmac___create_hmac_1.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz";
+        sha1 = "69170c78b3ab957147b2b8b04572e47ead2243ff";
+      };
+    }
+    {
+      name = "cross_spawn___cross_spawn_6.0.5.tgz";
+      path = fetchurl {
+        name = "cross_spawn___cross_spawn_6.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz";
+        sha1 = "4a5ec7c64dfae22c3a14124dbacdee846d80cbc4";
+      };
+    }
+    {
+      name = "cross_spawn___cross_spawn_7.0.3.tgz";
+      path = fetchurl {
+        name = "cross_spawn___cross_spawn_7.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz";
+        sha1 = "f73a85b9d5d41d045551c177e2882d4ac85728a6";
+      };
+    }
+    {
+      name = "crypto_browserify___crypto_browserify_3.12.0.tgz";
+      path = fetchurl {
+        name = "crypto_browserify___crypto_browserify_3.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz";
+        sha1 = "396cf9f3137f03e4b8e532c58f698254e00f80ec";
+      };
+    }
+    {
+      name = "css_color_names___css_color_names_0.0.4.tgz";
+      path = fetchurl {
+        name = "css_color_names___css_color_names_0.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz";
+        sha1 = "808adc2e79cf84738069b646cb20ec27beb629e0";
+      };
+    }
+    {
+      name = "css_color_names___css_color_names_1.0.1.tgz";
+      path = fetchurl {
+        name = "css_color_names___css_color_names_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/css-color-names/-/css-color-names-1.0.1.tgz";
+        sha1 = "6ff7ee81a823ad46e020fa2fd6ab40a887e2ba67";
+      };
+    }
+    {
+      name = "css_declaration_sorter___css_declaration_sorter_6.0.3.tgz";
+      path = fetchurl {
+        name = "css_declaration_sorter___css_declaration_sorter_6.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.0.3.tgz";
+        sha1 = "9dfd8ea0df4cc7846827876fafb52314890c21a9";
+      };
+    }
+    {
+      name = "css_loader___css_loader_3.6.0.tgz";
+      path = fetchurl {
+        name = "css_loader___css_loader_3.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/css-loader/-/css-loader-3.6.0.tgz";
+        sha1 = "2e4b2c7e6e2d27f8c8f28f61bffcd2e6c91ef645";
+      };
+    }
+    {
+      name = "css_modules_require_hook___css_modules_require_hook_4.2.3.tgz";
+      path = fetchurl {
+        name = "css_modules_require_hook___css_modules_require_hook_4.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/css-modules-require-hook/-/css-modules-require-hook-4.2.3.tgz";
+        sha1 = "6792ca412b15e23e6f9be6a07dcef7f577ff904d";
+      };
+    }
+    {
+      name = "css_select___css_select_3.1.2.tgz";
+      path = fetchurl {
+        name = "css_select___css_select_3.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/css-select/-/css-select-3.1.2.tgz";
+        sha1 = "d52cbdc6fee379fba97fb0d3925abbd18af2d9d8";
+      };
+    }
+    {
+      name = "css_selector_tokenizer___css_selector_tokenizer_0.7.1.tgz";
+      path = fetchurl {
+        name = "css_selector_tokenizer___css_selector_tokenizer_0.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz";
+        sha1 = "a177271a8bca5019172f4f891fc6eed9cbf68d5d";
+      };
+    }
+    {
+      name = "css_tree___css_tree_1.1.3.tgz";
+      path = fetchurl {
+        name = "css_tree___css_tree_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz";
+        sha1 = "eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d";
+      };
+    }
+    {
+      name = "css_what___css_what_4.0.0.tgz";
+      path = fetchurl {
+        name = "css_what___css_what_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/css-what/-/css-what-4.0.0.tgz";
+        sha1 = "35e73761cab2eeb3d3661126b23d7aa0e8432233";
+      };
+    }
+    {
+      name = "cssesc___cssesc_0.1.0.tgz";
+      path = fetchurl {
+        name = "cssesc___cssesc_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz";
+        sha1 = "c814903e45623371a0477b40109aaafbeeaddbb4";
+      };
+    }
+    {
+      name = "cssesc___cssesc_3.0.0.tgz";
+      path = fetchurl {
+        name = "cssesc___cssesc_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz";
+        sha1 = "37741919903b868565e1c09ea747445cd18983ee";
+      };
+    }
+    {
+      name = "cssnano_preset_default___cssnano_preset_default_5.1.3.tgz";
+      path = fetchurl {
+        name = "cssnano_preset_default___cssnano_preset_default_5.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.1.3.tgz";
+        sha1 = "caa54183a8c8df03124a9e23f374ab89df5a9a99";
+      };
+    }
+    {
+      name = "cssnano_utils___cssnano_utils_2.0.1.tgz";
+      path = fetchurl {
+        name = "cssnano_utils___cssnano_utils_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-2.0.1.tgz";
+        sha1 = "8660aa2b37ed869d2e2f22918196a9a8b6498ce2";
+      };
+    }
+    {
+      name = "cssnano___cssnano_5.0.6.tgz";
+      path = fetchurl {
+        name = "cssnano___cssnano_5.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/cssnano/-/cssnano-5.0.6.tgz";
+        sha1 = "2a91ad34c6521ae31eab3da9c90108ea3093535d";
+      };
+    }
+    {
+      name = "csso___csso_4.2.0.tgz";
+      path = fetchurl {
+        name = "csso___csso_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz";
+        sha1 = "ea3a561346e8dc9f546d6febedd50187cf389529";
+      };
+    }
+    {
+      name = "cyclist___cyclist_1.0.1.tgz";
+      path = fetchurl {
+        name = "cyclist___cyclist_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz";
+        sha1 = "596e9698fd0c80e12038c2b82d6eb1b35b6224d9";
+      };
+    }
+    {
+      name = "d3_array___d3_array_1.2.4.tgz";
+      path = fetchurl {
+        name = "d3_array___d3_array_1.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.4.tgz";
+        sha1 = "635ce4d5eea759f6f605863dbcfc30edc737f71f";
+      };
+    }
+    {
+      name = "d3_axis___d3_axis_1.0.12.tgz";
+      path = fetchurl {
+        name = "d3_axis___d3_axis_1.0.12.tgz";
+        url  = "https://registry.yarnpkg.com/d3-axis/-/d3-axis-1.0.12.tgz";
+        sha1 = "cdf20ba210cfbb43795af33756886fb3638daac9";
+      };
+    }
+    {
+      name = "d3_brush___d3_brush_1.1.5.tgz";
+      path = fetchurl {
+        name = "d3_brush___d3_brush_1.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/d3-brush/-/d3-brush-1.1.5.tgz";
+        sha1 = "066b8e84d17b192986030446c97c0fba7e1bacdc";
+      };
+    }
+    {
+      name = "d3_chord___d3_chord_1.0.6.tgz";
+      path = fetchurl {
+        name = "d3_chord___d3_chord_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/d3-chord/-/d3-chord-1.0.6.tgz";
+        sha1 = "309157e3f2db2c752f0280fedd35f2067ccbb15f";
+      };
+    }
+    {
+      name = "d3_collection___d3_collection_1.0.7.tgz";
+      path = fetchurl {
+        name = "d3_collection___d3_collection_1.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/d3-collection/-/d3-collection-1.0.7.tgz";
+        sha1 = "349bd2aa9977db071091c13144d5e4f16b5b310e";
+      };
+    }
+    {
+      name = "d3_color___d3_color_1.4.0.tgz";
+      path = fetchurl {
+        name = "d3_color___d3_color_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-color/-/d3-color-1.4.0.tgz";
+        sha1 = "89c45a995ed773b13314f06460df26d60ba0ecaf";
+      };
+    }
+    {
+      name = "d3_contour___d3_contour_1.3.2.tgz";
+      path = fetchurl {
+        name = "d3_contour___d3_contour_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/d3-contour/-/d3-contour-1.3.2.tgz";
+        sha1 = "652aacd500d2264cb3423cee10db69f6f59bead3";
+      };
+    }
+    {
+      name = "d3_dispatch___d3_dispatch_1.0.6.tgz";
+      path = fetchurl {
+        name = "d3_dispatch___d3_dispatch_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-1.0.6.tgz";
+        sha1 = "00d37bcee4dd8cd97729dd893a0ac29caaba5d58";
+      };
+    }
+    {
+      name = "d3_drag___d3_drag_1.2.5.tgz";
+      path = fetchurl {
+        name = "d3_drag___d3_drag_1.2.5.tgz";
+        url  = "https://registry.yarnpkg.com/d3-drag/-/d3-drag-1.2.5.tgz";
+        sha1 = "2537f451acd39d31406677b7dc77c82f7d988f70";
+      };
+    }
+    {
+      name = "d3_dsv___d3_dsv_1.2.0.tgz";
+      path = fetchurl {
+        name = "d3_dsv___d3_dsv_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-dsv/-/d3-dsv-1.2.0.tgz";
+        sha1 = "9d5f75c3a5f8abd611f74d3f5847b0d4338b885c";
+      };
+    }
+    {
+      name = "d3_ease___d3_ease_1.0.6.tgz";
+      path = fetchurl {
+        name = "d3_ease___d3_ease_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/d3-ease/-/d3-ease-1.0.6.tgz";
+        sha1 = "ebdb6da22dfac0a22222f2d4da06f66c416a0ec0";
+      };
+    }
+    {
+      name = "d3_fetch___d3_fetch_1.1.2.tgz";
+      path = fetchurl {
+        name = "d3_fetch___d3_fetch_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/d3-fetch/-/d3-fetch-1.1.2.tgz";
+        sha1 = "957c8fbc6d4480599ba191b1b2518bf86b3e1be2";
+      };
+    }
+    {
+      name = "d3_force___d3_force_1.2.1.tgz";
+      path = fetchurl {
+        name = "d3_force___d3_force_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/d3-force/-/d3-force-1.2.1.tgz";
+        sha1 = "fd29a5d1ff181c9e7f0669e4bd72bdb0e914ec0b";
+      };
+    }
+    {
+      name = "d3_format___d3_format_1.4.3.tgz";
+      path = fetchurl {
+        name = "d3_format___d3_format_1.4.3.tgz";
+        url  = "https://registry.yarnpkg.com/d3-format/-/d3-format-1.4.3.tgz";
+        sha1 = "4e8eb4dff3fdcb891a8489ec6e698601c41b96f1";
+      };
+    }
+    {
+      name = "d3_geo___d3_geo_1.11.9.tgz";
+      path = fetchurl {
+        name = "d3_geo___d3_geo_1.11.9.tgz";
+        url  = "https://registry.yarnpkg.com/d3-geo/-/d3-geo-1.11.9.tgz";
+        sha1 = "77eaed14ba62fc2c0aef55cd2943849c866f7ae6";
+      };
+    }
+    {
+      name = "d3_hierarchy___d3_hierarchy_1.1.9.tgz";
+      path = fetchurl {
+        name = "d3_hierarchy___d3_hierarchy_1.1.9.tgz";
+        url  = "https://registry.yarnpkg.com/d3-hierarchy/-/d3-hierarchy-1.1.9.tgz";
+        sha1 = "2f6bee24caaea43f8dc37545fa01628559647a83";
+      };
+    }
+    {
+      name = "d3_interpolate___d3_interpolate_1.4.0.tgz";
+      path = fetchurl {
+        name = "d3_interpolate___d3_interpolate_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-1.4.0.tgz";
+        sha1 = "526e79e2d80daa383f9e0c1c1c7dcc0f0583e987";
+      };
+    }
+    {
+      name = "d3_path___d3_path_1.0.9.tgz";
+      path = fetchurl {
+        name = "d3_path___d3_path_1.0.9.tgz";
+        url  = "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.9.tgz";
+        sha1 = "48c050bb1fe8c262493a8caf5524e3e9591701cf";
+      };
+    }
+    {
+      name = "d3_path___d3_path_2.0.0.tgz";
+      path = fetchurl {
+        name = "d3_path___d3_path_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-path/-/d3-path-2.0.0.tgz";
+        sha1 = "55d86ac131a0548adae241eebfb56b4582dd09d8";
+      };
+    }
+    {
+      name = "d3_polygon___d3_polygon_1.0.6.tgz";
+      path = fetchurl {
+        name = "d3_polygon___d3_polygon_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/d3-polygon/-/d3-polygon-1.0.6.tgz";
+        sha1 = "0bf8cb8180a6dc107f518ddf7975e12abbfbd38e";
+      };
+    }
+    {
+      name = "d3_quadtree___d3_quadtree_1.0.7.tgz";
+      path = fetchurl {
+        name = "d3_quadtree___d3_quadtree_1.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-1.0.7.tgz";
+        sha1 = "ca8b84df7bb53763fe3c2f24bd435137f4e53135";
+      };
+    }
+    {
+      name = "d3_random___d3_random_1.1.2.tgz";
+      path = fetchurl {
+        name = "d3_random___d3_random_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/d3-random/-/d3-random-1.1.2.tgz";
+        sha1 = "2833be7c124360bf9e2d3fd4f33847cfe6cab291";
+      };
+    }
+    {
+      name = "d3_scale_chromatic___d3_scale_chromatic_1.5.0.tgz";
+      path = fetchurl {
+        name = "d3_scale_chromatic___d3_scale_chromatic_1.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-scale-chromatic/-/d3-scale-chromatic-1.5.0.tgz";
+        sha1 = "54e333fc78212f439b14641fb55801dd81135a98";
+      };
+    }
+    {
+      name = "d3_scale___d3_scale_2.2.2.tgz";
+      path = fetchurl {
+        name = "d3_scale___d3_scale_2.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/d3-scale/-/d3-scale-2.2.2.tgz";
+        sha1 = "4e880e0b2745acaaddd3ede26a9e908a9e17b81f";
+      };
+    }
+    {
+      name = "d3_selection___d3_selection_1.4.1.tgz";
+      path = fetchurl {
+        name = "d3_selection___d3_selection_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/d3-selection/-/d3-selection-1.4.1.tgz";
+        sha1 = "98eedbbe085fbda5bafa2f9e3f3a2f4d7d622a98";
+      };
+    }
+    {
+      name = "d3_shape___d3_shape_1.3.7.tgz";
+      path = fetchurl {
+        name = "d3_shape___d3_shape_1.3.7.tgz";
+        url  = "https://registry.yarnpkg.com/d3-shape/-/d3-shape-1.3.7.tgz";
+        sha1 = "df63801be07bc986bc54f63789b4fe502992b5d7";
+      };
+    }
+    {
+      name = "d3_shape___d3_shape_2.1.0.tgz";
+      path = fetchurl {
+        name = "d3_shape___d3_shape_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-shape/-/d3-shape-2.1.0.tgz";
+        sha1 = "3b6a82ccafbc45de55b57fcf956c584ded3b666f";
+      };
+    }
+    {
+      name = "d3_time_format___d3_time_format_2.2.3.tgz";
+      path = fetchurl {
+        name = "d3_time_format___d3_time_format_2.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-2.2.3.tgz";
+        sha1 = "0c9a12ee28342b2037e5ea1cf0b9eb4dd75f29cb";
+      };
+    }
+    {
+      name = "d3_time___d3_time_1.1.0.tgz";
+      path = fetchurl {
+        name = "d3_time___d3_time_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3-time/-/d3-time-1.1.0.tgz";
+        sha1 = "b1e19d307dae9c900b7e5b25ffc5dcc249a8a0f1";
+      };
+    }
+    {
+      name = "d3_timer___d3_timer_1.0.10.tgz";
+      path = fetchurl {
+        name = "d3_timer___d3_timer_1.0.10.tgz";
+        url  = "https://registry.yarnpkg.com/d3-timer/-/d3-timer-1.0.10.tgz";
+        sha1 = "dfe76b8a91748831b13b6d9c793ffbd508dd9de5";
+      };
+    }
+    {
+      name = "d3_tip___d3_tip_0.9.1.tgz";
+      path = fetchurl {
+        name = "d3_tip___d3_tip_0.9.1.tgz";
+        url  = "https://registry.yarnpkg.com/d3-tip/-/d3-tip-0.9.1.tgz";
+        sha1 = "84e6d331c4e6650d80c5228a07e41820609ab64b";
+      };
+    }
+    {
+      name = "d3_transition___d3_transition_1.3.2.tgz";
+      path = fetchurl {
+        name = "d3_transition___d3_transition_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/d3-transition/-/d3-transition-1.3.2.tgz";
+        sha1 = "a98ef2151be8d8600543434c1ca80140ae23b398";
+      };
+    }
+    {
+      name = "d3_voronoi___d3_voronoi_1.1.4.tgz";
+      path = fetchurl {
+        name = "d3_voronoi___d3_voronoi_1.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/d3-voronoi/-/d3-voronoi-1.1.4.tgz";
+        sha1 = "dd3c78d7653d2bb359284ae478645d95944c8297";
+      };
+    }
+    {
+      name = "d3_zoom___d3_zoom_1.8.3.tgz";
+      path = fetchurl {
+        name = "d3_zoom___d3_zoom_1.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/d3-zoom/-/d3-zoom-1.8.3.tgz";
+        sha1 = "b6a3dbe738c7763121cd05b8a7795ffe17f4fc0a";
+      };
+    }
+    {
+      name = "d3___d3_3.5.17.tgz";
+      path = fetchurl {
+        name = "d3___d3_3.5.17.tgz";
+        url  = "https://registry.yarnpkg.com/d3/-/d3-3.5.17.tgz";
+        sha1 = "bc46748004378b21a360c9fc7cf5231790762fb8";
+      };
+    }
+    {
+      name = "d3___d3_5.15.0.tgz";
+      path = fetchurl {
+        name = "d3___d3_5.15.0.tgz";
+        url  = "https://registry.yarnpkg.com/d3/-/d3-5.15.0.tgz";
+        sha1 = "ffd44958e6a3cb8a59a84429c45429b8bca5677a";
+      };
+    }
+    {
+      name = "dagre_d3___dagre_d3_0.6.4.tgz";
+      path = fetchurl {
+        name = "dagre_d3___dagre_d3_0.6.4.tgz";
+        url  = "https://registry.yarnpkg.com/dagre-d3/-/dagre-d3-0.6.4.tgz";
+        sha1 = "0728d5ce7f177ca2337df141ceb60fbe6eeb7b29";
+      };
+    }
+    {
+      name = "dagre___dagre_0.8.5.tgz";
+      path = fetchurl {
+        name = "dagre___dagre_0.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/dagre/-/dagre-0.8.5.tgz";
+        sha1 = "ba30b0055dac12b6c1fcc247817442777d06afee";
+      };
+    }
+    {
+      name = "datatables.net_bs___datatables.net_bs_1.10.23.tgz";
+      path = fetchurl {
+        name = "datatables.net_bs___datatables.net_bs_1.10.23.tgz";
+        url  = "https://registry.yarnpkg.com/datatables.net-bs/-/datatables.net-bs-1.10.23.tgz";
+        sha1 = "985094ea63b28c630de4a0ecb75804ab53341fb0";
+      };
+    }
+    {
+      name = "datatables.net___datatables.net_1.10.23.tgz";
+      path = fetchurl {
+        name = "datatables.net___datatables.net_1.10.23.tgz";
+        url  = "https://registry.yarnpkg.com/datatables.net/-/datatables.net-1.10.23.tgz";
+        sha1 = "59f7d7b12845183b1b379530d1385077e113ec01";
+      };
+    }
+    {
+      name = "date_now___date_now_0.1.4.tgz";
+      path = fetchurl {
+        name = "date_now___date_now_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz";
+        sha1 = "eaf439fd4d4848ad74e5cc7dbef200672b9e345b";
+      };
+    }
+    {
+      name = "debug___debug_2.6.9.tgz";
+      path = fetchurl {
+        name = "debug___debug_2.6.9.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz";
+        sha1 = "5d128515df134ff327e90a4c93f4e077a536341f";
+      };
+    }
+    {
+      name = "debug___debug_4.3.1.tgz";
+      path = fetchurl {
+        name = "debug___debug_4.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz";
+        sha1 = "f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee";
+      };
+    }
+    {
+      name = "debug___debug_4.1.1.tgz";
+      path = fetchurl {
+        name = "debug___debug_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz";
+        sha1 = "3b72260255109c6b589cee050f1d516139664791";
+      };
+    }
+    {
+      name = "decamelize_keys___decamelize_keys_1.1.0.tgz";
+      path = fetchurl {
+        name = "decamelize_keys___decamelize_keys_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz";
+        sha1 = "d171a87933252807eb3cb61dc1c1445d078df2d9";
+      };
+    }
+    {
+      name = "decamelize___decamelize_1.2.0.tgz";
+      path = fetchurl {
+        name = "decamelize___decamelize_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz";
+        sha1 = "f6534d15148269b20352e7bee26f501f9a191290";
+      };
+    }
+    {
+      name = "decko___decko_1.2.0.tgz";
+      path = fetchurl {
+        name = "decko___decko_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/decko/-/decko-1.2.0.tgz";
+        sha1 = "fd43c735e967b8013306884a56fbe665996b6817";
+      };
+    }
+    {
+      name = "decode_uri_component___decode_uri_component_0.2.0.tgz";
+      path = fetchurl {
+        name = "decode_uri_component___decode_uri_component_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz";
+        sha1 = "eb3913333458775cb84cd1a1fae062106bb87545";
+      };
+    }
+    {
+      name = "deep_is___deep_is_0.1.3.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 = "define_properties___define_properties_1.1.3.tgz";
+      path = fetchurl {
+        name = "define_properties___define_properties_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz";
+        sha1 = "cf88da6cbee26fe6db7094f61d870cbd84cee9f1";
+      };
+    }
+    {
+      name = "define_property___define_property_0.2.5.tgz";
+      path = fetchurl {
+        name = "define_property___define_property_0.2.5.tgz";
+        url  = "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz";
+        sha1 = "c35b1ef918ec3c990f9a5bc57be04aacec5c8116";
+      };
+    }
+    {
+      name = "define_property___define_property_1.0.0.tgz";
+      path = fetchurl {
+        name = "define_property___define_property_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz";
+        sha1 = "769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6";
+      };
+    }
+    {
+      name = "define_property___define_property_2.0.2.tgz";
+      path = fetchurl {
+        name = "define_property___define_property_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz";
+        sha1 = "d459689e8d654ba77e02a817f8710d702cb16e9d";
+      };
+    }
+    {
+      name = "del___del_4.1.1.tgz";
+      path = fetchurl {
+        name = "del___del_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz";
+        sha1 = "9e8f117222ea44a31ff3a156c049b99052a9f0b4";
+      };
+    }
+    {
+      name = "delegate___delegate_3.2.0.tgz";
+      path = fetchurl {
+        name = "delegate___delegate_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/delegate/-/delegate-3.2.0.tgz";
+        sha1 = "b66b71c3158522e8ab5744f720d8ca0c2af59166";
+      };
+    }
+    {
+      name = "des.js___des.js_1.0.1.tgz";
+      path = fetchurl {
+        name = "des.js___des.js_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz";
+        sha1 = "5382142e1bdc53f85d86d53e5f4aa7deb91e0843";
+      };
+    }
+    {
+      name = "detect_file___detect_file_1.0.0.tgz";
+      path = fetchurl {
+        name = "detect_file___detect_file_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz";
+        sha1 = "f0d66d03672a825cb1b73bdb3fe62310c8e552b7";
+      };
+    }
+    {
+      name = "detect_indent___detect_indent_4.0.0.tgz";
+      path = fetchurl {
+        name = "detect_indent___detect_indent_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz";
+        sha1 = "f76d064352cdf43a1cb6ce619c4ee3a9475de208";
+      };
+    }
+    {
+      name = "diffie_hellman___diffie_hellman_5.0.3.tgz";
+      path = fetchurl {
+        name = "diffie_hellman___diffie_hellman_5.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz";
+        sha1 = "40e8ee98f55a2149607146921c63e1ae5f3d2875";
+      };
+    }
+    {
+      name = "dir_glob___dir_glob_3.0.1.tgz";
+      path = fetchurl {
+        name = "dir_glob___dir_glob_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz";
+        sha1 = "56dbf73d992a4a93ba1584f4534063fd2e41717f";
+      };
+    }
+    {
+      name = "doctrine___doctrine_1.5.0.tgz";
+      path = fetchurl {
+        name = "doctrine___doctrine_1.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz";
+        sha1 = "379dce730f6166f76cefa4e6707a159b02c5a6fa";
+      };
+    }
+    {
+      name = "doctrine___doctrine_3.0.0.tgz";
+      path = fetchurl {
+        name = "doctrine___doctrine_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz";
+        sha1 = "addebead72a6574db783639dc87a121773973961";
+      };
+    }
+    {
+      name = "dom_serializer___dom_serializer_0.2.2.tgz";
+      path = fetchurl {
+        name = "dom_serializer___dom_serializer_0.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz";
+        sha1 = "1afb81f533717175d478655debc5e332d9f9bb51";
+      };
+    }
+    {
+      name = "dom_serializer___dom_serializer_1.3.2.tgz";
+      path = fetchurl {
+        name = "dom_serializer___dom_serializer_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz";
+        sha1 = "6206437d32ceefaec7161803230c7a20bc1b4d91";
+      };
+    }
+    {
+      name = "domain_browser___domain_browser_1.2.0.tgz";
+      path = fetchurl {
+        name = "domain_browser___domain_browser_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz";
+        sha1 = "3d31f50191a6749dd1375a7f522e823d42e54eda";
+      };
+    }
+    {
+      name = "domelementtype___domelementtype_1.3.1.tgz";
+      path = fetchurl {
+        name = "domelementtype___domelementtype_1.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz";
+        sha1 = "d048c44b37b0d10a7f2a3d5fee3f4333d790481f";
+      };
+    }
+    {
+      name = "domelementtype___domelementtype_2.2.0.tgz";
+      path = fetchurl {
+        name = "domelementtype___domelementtype_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz";
+        sha1 = "9a0b6c2782ed6a1c7323d42267183df9bd8b1d57";
+      };
+    }
+    {
+      name = "domhandler___domhandler_2.3.0.tgz";
+      path = fetchurl {
+        name = "domhandler___domhandler_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/domhandler/-/domhandler-2.3.0.tgz";
+        sha1 = "2de59a0822d5027fabff6f032c2b25a2a8abe738";
+      };
+    }
+    {
+      name = "domhandler___domhandler_2.4.2.tgz";
+      path = fetchurl {
+        name = "domhandler___domhandler_2.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz";
+        sha1 = "8805097e933d65e85546f726d60f5eb88b44f803";
+      };
+    }
+    {
+      name = "domhandler___domhandler_3.0.0.tgz";
+      path = fetchurl {
+        name = "domhandler___domhandler_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/domhandler/-/domhandler-3.0.0.tgz";
+        sha1 = "51cd13efca31da95bbb0c5bee3a48300e333b3e9";
+      };
+    }
+    {
+      name = "domhandler___domhandler_4.2.0.tgz";
+      path = fetchurl {
+        name = "domhandler___domhandler_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/domhandler/-/domhandler-4.2.0.tgz";
+        sha1 = "f9768a5f034be60a89a27c2e4d0f74eba0d8b059";
+      };
+    }
+    {
+      name = "dompurify___dompurify_2.2.6.tgz";
+      path = fetchurl {
+        name = "dompurify___dompurify_2.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/dompurify/-/dompurify-2.2.6.tgz";
+        sha1 = "54945dc5c0b45ce5ae228705777e8e59d7b2edc4";
+      };
+    }
+    {
+      name = "domutils___domutils_1.5.1.tgz";
+      path = fetchurl {
+        name = "domutils___domutils_1.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz";
+        sha1 = "dcd8488a26f563d61079e48c9f7b7e32373682cf";
+      };
+    }
+    {
+      name = "domutils___domutils_1.7.0.tgz";
+      path = fetchurl {
+        name = "domutils___domutils_1.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz";
+        sha1 = "56ea341e834e06e6748af7a1cb25da67ea9f8c2a";
+      };
+    }
+    {
+      name = "domutils___domutils_2.1.0.tgz";
+      path = fetchurl {
+        name = "domutils___domutils_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/domutils/-/domutils-2.1.0.tgz";
+        sha1 = "7ade3201af43703fde154952e3a868eb4b635f16";
+      };
+    }
+    {
+      name = "domutils___domutils_2.7.0.tgz";
+      path = fetchurl {
+        name = "domutils___domutils_2.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/domutils/-/domutils-2.7.0.tgz";
+        sha1 = "8ebaf0c41ebafcf55b0b72ec31c56323712c5442";
+      };
+    }
+    {
+      name = "duplexify___duplexify_3.7.1.tgz";
+      path = fetchurl {
+        name = "duplexify___duplexify_3.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz";
+        sha1 = "2a4df5317f6ccfd91f86d6fd25d8d8a103b88309";
+      };
+    }
+    {
+      name = "electron_to_chromium___electron_to_chromium_1.3.580.tgz";
+      path = fetchurl {
+        name = "electron_to_chromium___electron_to_chromium_1.3.580.tgz";
+        url  = "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.580.tgz";
+        sha1 = "eb27873cfa012c43c53c9e9129038b8fd7cb964f";
+      };
+    }
+    {
+      name = "electron_to_chromium___electron_to_chromium_1.3.727.tgz";
+      path = fetchurl {
+        name = "electron_to_chromium___electron_to_chromium_1.3.727.tgz";
+        url  = "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.727.tgz";
+        sha1 = "857e310ca00f0b75da4e1db6ff0e073cc4a91ddf";
+      };
+    }
+    {
+      name = "elliptic___elliptic_6.5.4.tgz";
+      path = fetchurl {
+        name = "elliptic___elliptic_6.5.4.tgz";
+        url  = "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz";
+        sha1 = "da37cebd31e79a1367e941b592ed1fbebd58abbb";
+      };
+    }
+    {
+      name = "emoji_regex___emoji_regex_7.0.3.tgz";
+      path = fetchurl {
+        name = "emoji_regex___emoji_regex_7.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz";
+        sha1 = "933a04052860c85e83c122479c4748a8e4c72156";
+      };
+    }
+    {
+      name = "emoji_regex___emoji_regex_8.0.0.tgz";
+      path = fetchurl {
+        name = "emoji_regex___emoji_regex_8.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz";
+        sha1 = "e818fd69ce5ccfcb404594f842963bf53164cc37";
+      };
+    }
+    {
+      name = "emojis_list___emojis_list_2.1.0.tgz";
+      path = fetchurl {
+        name = "emojis_list___emojis_list_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz";
+        sha1 = "4daa4d9db00f9819880c79fa457ae5b09a1fd389";
+      };
+    }
+    {
+      name = "emojis_list___emojis_list_3.0.0.tgz";
+      path = fetchurl {
+        name = "emojis_list___emojis_list_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz";
+        sha1 = "5570662046ad29e2e916e71aae260abdff4f6a78";
+      };
+    }
+    {
+      name = "end_of_stream___end_of_stream_1.4.4.tgz";
+      path = fetchurl {
+        name = "end_of_stream___end_of_stream_1.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz";
+        sha1 = "5ae64a5f45057baf3626ec14da0ca5e4b2431eb0";
+      };
+    }
+    {
+      name = "enhanced_resolve___enhanced_resolve_4.3.0.tgz";
+      path = fetchurl {
+        name = "enhanced_resolve___enhanced_resolve_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz";
+        sha1 = "3b806f3bfafc1ec7de69551ef93cca46c1704126";
+      };
+    }
+    {
+      name = "enquirer___enquirer_2.3.6.tgz";
+      path = fetchurl {
+        name = "enquirer___enquirer_2.3.6.tgz";
+        url  = "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz";
+        sha1 = "2a7fe5dd634a1e4125a975ec994ff5456dc3734d";
+      };
+    }
+    {
+      name = "entities___entities_1.0.0.tgz";
+      path = fetchurl {
+        name = "entities___entities_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/entities/-/entities-1.0.0.tgz";
+        sha1 = "b2987aa3821347fcde642b24fdfc9e4fb712bf26";
+      };
+    }
+    {
+      name = "entities___entities_1.1.2.tgz";
+      path = fetchurl {
+        name = "entities___entities_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz";
+        sha1 = "bdfa735299664dfafd34529ed4f8522a275fea56";
+      };
+    }
+    {
+      name = "entities___entities_2.2.0.tgz";
+      path = fetchurl {
+        name = "entities___entities_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz";
+        sha1 = "098dc90ebb83d8dffa089d55256b351d34c4da55";
+      };
+    }
+    {
+      name = "eonasdan_bootstrap_datetimepicker___eonasdan_bootstrap_datetimepicker_4.17.47.tgz";
+      path = fetchurl {
+        name = "eonasdan_bootstrap_datetimepicker___eonasdan_bootstrap_datetimepicker_4.17.47.tgz";
+        url  = "https://registry.yarnpkg.com/eonasdan-bootstrap-datetimepicker/-/eonasdan-bootstrap-datetimepicker-4.17.47.tgz";
+        sha1 = "7a49970044065276e7965efd16f822735219e735";
+      };
+    }
+    {
+      name = "errno___errno_0.1.7.tgz";
+      path = fetchurl {
+        name = "errno___errno_0.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz";
+        sha1 = "4684d71779ad39af177e3f007996f7c67c852618";
+      };
+    }
+    {
+      name = "error_ex___error_ex_1.3.2.tgz";
+      path = fetchurl {
+        name = "error_ex___error_ex_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz";
+        sha1 = "b4ac40648107fdcdcfae242f428bea8a14d4f1bf";
+      };
+    }
+    {
+      name = "es_abstract___es_abstract_1.17.6.tgz";
+      path = fetchurl {
+        name = "es_abstract___es_abstract_1.17.6.tgz";
+        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz";
+        sha1 = "9142071707857b2cacc7b89ecb670316c3e2d52a";
+      };
+    }
+    {
+      name = "es_abstract___es_abstract_1.17.0_next.1.tgz";
+      path = fetchurl {
+        name = "es_abstract___es_abstract_1.17.0_next.1.tgz";
+        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.0-next.1.tgz";
+        sha1 = "94acc93e20b05a6e96dacb5ab2f1cb3a81fc2172";
+      };
+    }
+    {
+      name = "es_to_primitive___es_to_primitive_1.2.1.tgz";
+      path = fetchurl {
+        name = "es_to_primitive___es_to_primitive_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz";
+        sha1 = "e55cd4c9cdc188bcefb03b366c736323fc5c898a";
+      };
+    }
+    {
+      name = "es6_promise___es6_promise_3.3.1.tgz";
+      path = fetchurl {
+        name = "es6_promise___es6_promise_3.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.3.1.tgz";
+        sha1 = "a08cdde84ccdbf34d027a1451bc91d4bcd28a613";
+      };
+    }
+    {
+      name = "escalade___escalade_3.1.1.tgz";
+      path = fetchurl {
+        name = "escalade___escalade_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz";
+        sha1 = "d8cfdc7000965c5a0174b4a82eaa5c0552742e40";
+      };
+    }
+    {
+      name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
+      path = fetchurl {
+        name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
+        sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4";
+      };
+    }
+    {
+      name = "eslint_config_airbnb_base___eslint_config_airbnb_base_14.2.0.tgz";
+      path = fetchurl {
+        name = "eslint_config_airbnb_base___eslint_config_airbnb_base_14.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.2.0.tgz";
+        sha1 = "fe89c24b3f9dc8008c9c0d0d88c28f95ed65e9c4";
+      };
+    }
+    {
+      name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.4.tgz";
+      path = fetchurl {
+        name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.4.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz";
+        sha1 = "85ffa81942c25012d8231096ddf679c03042c717";
+      };
+    }
+    {
+      name = "eslint_module_utils___eslint_module_utils_2.6.0.tgz";
+      path = fetchurl {
+        name = "eslint_module_utils___eslint_module_utils_2.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz";
+        sha1 = "579ebd094f56af7797d19c9866c9c9486629bfa6";
+      };
+    }
+    {
+      name = "eslint_plugin_es___eslint_plugin_es_3.0.1.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_es___eslint_plugin_es_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz";
+        sha1 = "75a7cdfdccddc0589934aeeb384175f221c57893";
+      };
+    }
+    {
+      name = "eslint_plugin_html___eslint_plugin_html_6.0.2.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_html___eslint_plugin_html_6.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-html/-/eslint-plugin-html-6.0.2.tgz";
+        sha1 = "fcbd293e218d03dd72c147fc999d185c6f5989fe";
+      };
+    }
+    {
+      name = "eslint_plugin_import___eslint_plugin_import_2.22.0.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_import___eslint_plugin_import_2.22.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.22.0.tgz";
+        sha1 = "92f7736fe1fde3e2de77623c838dd992ff5ffb7e";
+      };
+    }
+    {
+      name = "eslint_plugin_node___eslint_plugin_node_11.1.0.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_node___eslint_plugin_node_11.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz";
+        sha1 = "c95544416ee4ada26740a30474eefc5402dc671d";
+      };
+    }
+    {
+      name = "eslint_plugin_promise___eslint_plugin_promise_4.2.1.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_promise___eslint_plugin_promise_4.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz";
+        sha1 = "845fd8b2260ad8f82564c1222fce44ad71d9418a";
+      };
+    }
+    {
+      name = "eslint_plugin_standard___eslint_plugin_standard_4.0.1.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_standard___eslint_plugin_standard_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.0.1.tgz";
+        sha1 = "ff0519f7ffaff114f76d1bd7c3996eef0f6e20b4";
+      };
+    }
+    {
+      name = "eslint_scope___eslint_scope_4.0.3.tgz";
+      path = fetchurl {
+        name = "eslint_scope___eslint_scope_4.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz";
+        sha1 = "ca03833310f6889a3264781aa82e63eb9cfe7848";
+      };
+    }
+    {
+      name = "eslint_scope___eslint_scope_5.1.0.tgz";
+      path = fetchurl {
+        name = "eslint_scope___eslint_scope_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.0.tgz";
+        sha1 = "d0f971dfe59c69e0cada684b23d49dbf82600ce5";
+      };
+    }
+    {
+      name = "eslint_utils___eslint_utils_2.1.0.tgz";
+      path = fetchurl {
+        name = "eslint_utils___eslint_utils_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz";
+        sha1 = "d2de5e03424e707dc10c74068ddedae708741b27";
+      };
+    }
+    {
+      name = "eslint_visitor_keys___eslint_visitor_keys_1.1.0.tgz";
+      path = fetchurl {
+        name = "eslint_visitor_keys___eslint_visitor_keys_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz";
+        sha1 = "e2a82cea84ff246ad6fb57f9bde5b46621459ec2";
+      };
+    }
+    {
+      name = "eslint_visitor_keys___eslint_visitor_keys_1.3.0.tgz";
+      path = fetchurl {
+        name = "eslint_visitor_keys___eslint_visitor_keys_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz";
+        sha1 = "30ebd1ef7c2fdff01c3a4f151044af25fab0523e";
+      };
+    }
+    {
+      name = "eslint___eslint_7.5.0.tgz";
+      path = fetchurl {
+        name = "eslint___eslint_7.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint/-/eslint-7.5.0.tgz";
+        sha1 = "9ecbfad62216d223b82ac9ffea7ef3444671d135";
+      };
+    }
+    {
+      name = "espree___espree_7.2.0.tgz";
+      path = fetchurl {
+        name = "espree___espree_7.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/espree/-/espree-7.2.0.tgz";
+        sha1 = "1c263d5b513dbad0ac30c4991b93ac354e948d69";
+      };
+    }
+    {
+      name = "esprima___esprima_4.0.1.tgz";
+      path = fetchurl {
+        name = "esprima___esprima_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz";
+        sha1 = "13b04cdb3e6c5d19df91ab6987a8695619b0aa71";
+      };
+    }
+    {
+      name = "esquery___esquery_1.3.1.tgz";
+      path = fetchurl {
+        name = "esquery___esquery_1.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz";
+        sha1 = "b78b5828aa8e214e29fb74c4d5b752e1c033da57";
+      };
+    }
+    {
+      name = "esrecurse___esrecurse_4.2.1.tgz";
+      path = fetchurl {
+        name = "esrecurse___esrecurse_4.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz";
+        sha1 = "007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf";
+      };
+    }
+    {
+      name = "estraverse___estraverse_4.3.0.tgz";
+      path = fetchurl {
+        name = "estraverse___estraverse_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz";
+        sha1 = "398ad3f3c5a24948be7725e83d11a7de28cdbd1d";
+      };
+    }
+    {
+      name = "estraverse___estraverse_5.1.0.tgz";
+      path = fetchurl {
+        name = "estraverse___estraverse_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz";
+        sha1 = "374309d39fd935ae500e7b92e8a6b4c720e59642";
+      };
+    }
+    {
+      name = "esutils___esutils_2.0.3.tgz";
+      path = fetchurl {
+        name = "esutils___esutils_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz";
+        sha1 = "74d2eb4de0b8da1293711910d50775b9b710ef64";
+      };
+    }
+    {
+      name = "eventemitter3___eventemitter3_4.0.7.tgz";
+      path = fetchurl {
+        name = "eventemitter3___eventemitter3_4.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz";
+        sha1 = "2de9b68f6528d5644ef5c59526a1b4a07306169f";
+      };
+    }
+    {
+      name = "events___events_3.2.0.tgz";
+      path = fetchurl {
+        name = "events___events_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/events/-/events-3.2.0.tgz";
+        sha1 = "93b87c18f8efcd4202a461aec4dfc0556b639379";
+      };
+    }
+    {
+      name = "evp_bytestokey___evp_bytestokey_1.0.3.tgz";
+      path = fetchurl {
+        name = "evp_bytestokey___evp_bytestokey_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz";
+        sha1 = "7fcbdb198dc71959432efe13842684e0525acb02";
+      };
+    }
+    {
+      name = "execall___execall_2.0.0.tgz";
+      path = fetchurl {
+        name = "execall___execall_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/execall/-/execall-2.0.0.tgz";
+        sha1 = "16a06b5fe5099df7d00be5d9c06eecded1663b45";
+      };
+    }
+    {
+      name = "exit___exit_0.1.2.tgz";
+      path = fetchurl {
+        name = "exit___exit_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz";
+        sha1 = "0632638f8d877cc82107d30a0fff1a17cba1cd0c";
+      };
+    }
+    {
+      name = "expand_brackets___expand_brackets_2.1.4.tgz";
+      path = fetchurl {
+        name = "expand_brackets___expand_brackets_2.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz";
+        sha1 = "b77735e315ce30f6b6eff0f83b04151a22449622";
+      };
+    }
+    {
+      name = "expand_tilde___expand_tilde_2.0.2.tgz";
+      path = fetchurl {
+        name = "expand_tilde___expand_tilde_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz";
+        sha1 = "97e801aa052df02454de46b02bf621642cdc8502";
+      };
+    }
+    {
+      name = "extend_shallow___extend_shallow_2.0.1.tgz";
+      path = fetchurl {
+        name = "extend_shallow___extend_shallow_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz";
+        sha1 = "51af7d614ad9a9f610ea1bafbb989d6b1c56890f";
+      };
+    }
+    {
+      name = "extend_shallow___extend_shallow_3.0.2.tgz";
+      path = fetchurl {
+        name = "extend_shallow___extend_shallow_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz";
+        sha1 = "26a71aaf073b39fb2127172746131c2704028db8";
+      };
+    }
+    {
+      name = "extend___extend_3.0.2.tgz";
+      path = fetchurl {
+        name = "extend___extend_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz";
+        sha1 = "f8b1136b4071fbd8eb140aff858b1019ec2915fa";
+      };
+    }
+    {
+      name = "extglob___extglob_2.0.4.tgz";
+      path = fetchurl {
+        name = "extglob___extglob_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz";
+        sha1 = "ad00fe4dc612a9232e8718711dc5cb5ab0285543";
+      };
+    }
+    {
+      name = "fast_deep_equal___fast_deep_equal_1.1.0.tgz";
+      path = fetchurl {
+        name = "fast_deep_equal___fast_deep_equal_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz";
+        sha1 = "c053477817c86b51daa853c81e059b733d023614";
+      };
+    }
+    {
+      name = "fast_deep_equal___fast_deep_equal_3.1.3.tgz";
+      path = fetchurl {
+        name = "fast_deep_equal___fast_deep_equal_3.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz";
+        sha1 = "3a7d56b559d6cbc3eb512325244e619a65c6c525";
+      };
+    }
+    {
+      name = "fast_glob___fast_glob_3.2.5.tgz";
+      path = fetchurl {
+        name = "fast_glob___fast_glob_3.2.5.tgz";
+        url  = "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.5.tgz";
+        sha1 = "7939af2a656de79a4f1901903ee8adcaa7cb9661";
+      };
+    }
+    {
+      name = "fast_glob___fast_glob_3.2.4.tgz";
+      path = fetchurl {
+        name = "fast_glob___fast_glob_3.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.4.tgz";
+        sha1 = "d20aefbf99579383e7f3cc66529158c9b98554d3";
+      };
+    }
+    {
+      name = "fast_json_stable_stringify___fast_json_stable_stringify_2.1.0.tgz";
+      path = fetchurl {
+        name = "fast_json_stable_stringify___fast_json_stable_stringify_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz";
+        sha1 = "874bf69c6f404c2b5d99c481341399fd55892633";
+      };
+    }
+    {
+      name = "fast_levenshtein___fast_levenshtein_2.0.6.tgz";
+      path = fetchurl {
+        name = "fast_levenshtein___fast_levenshtein_2.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz";
+        sha1 = "3d8a5c66883a16a30ca8643e851f19baa7797917";
+      };
+    }
+    {
+      name = "fast_safe_stringify___fast_safe_stringify_2.0.7.tgz";
+      path = fetchurl {
+        name = "fast_safe_stringify___fast_safe_stringify_2.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz";
+        sha1 = "124aa885899261f68aedb42a7c080de9da608743";
+      };
+    }
+    {
+      name = "fastest_levenshtein___fastest_levenshtein_1.0.12.tgz";
+      path = fetchurl {
+        name = "fastest_levenshtein___fastest_levenshtein_1.0.12.tgz";
+        url  = "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz";
+        sha1 = "9990f7d3a88cc5a9ffd1f1745745251700d497e2";
+      };
+    }
+    {
+      name = "fastparse___fastparse_1.1.2.tgz";
+      path = fetchurl {
+        name = "fastparse___fastparse_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz";
+        sha1 = "91728c5a5942eced8531283c79441ee4122c35a9";
+      };
+    }
+    {
+      name = "fastq___fastq_1.11.0.tgz";
+      path = fetchurl {
+        name = "fastq___fastq_1.11.0.tgz";
+        url  = "https://registry.yarnpkg.com/fastq/-/fastq-1.11.0.tgz";
+        sha1 = "bb9fb955a07130a918eb63c1f5161cc32a5d0858";
+      };
+    }
+    {
+      name = "figgy_pudding___figgy_pudding_3.5.2.tgz";
+      path = fetchurl {
+        name = "figgy_pudding___figgy_pudding_3.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz";
+        sha1 = "b4eee8148abb01dcf1d1ac34367d59e12fa61d6e";
+      };
+    }
+    {
+      name = "file_entry_cache___file_entry_cache_5.0.1.tgz";
+      path = fetchurl {
+        name = "file_entry_cache___file_entry_cache_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz";
+        sha1 = "ca0f6efa6dd3d561333fb14515065c2fafdf439c";
+      };
+    }
+    {
+      name = "file_entry_cache___file_entry_cache_6.0.1.tgz";
+      path = fetchurl {
+        name = "file_entry_cache___file_entry_cache_6.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz";
+        sha1 = "211b2dd9659cb0394b073e7323ac3c933d522027";
+      };
+    }
+    {
+      name = "file_loader___file_loader_6.0.0.tgz";
+      path = fetchurl {
+        name = "file_loader___file_loader_6.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/file-loader/-/file-loader-6.0.0.tgz";
+        sha1 = "97bbfaab7a2460c07bcbd72d3a6922407f67649f";
+      };
+    }
+    {
+      name = "file_uri_to_path___file_uri_to_path_1.0.0.tgz";
+      path = fetchurl {
+        name = "file_uri_to_path___file_uri_to_path_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz";
+        sha1 = "553a7b8446ff6f684359c445f1e37a05dacc33dd";
+      };
+    }
+    {
+      name = "fill_range___fill_range_4.0.0.tgz";
+      path = fetchurl {
+        name = "fill_range___fill_range_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz";
+        sha1 = "d544811d428f98eb06a63dc402d2403c328c38f7";
+      };
+    }
+    {
+      name = "fill_range___fill_range_7.0.1.tgz";
+      path = fetchurl {
+        name = "fill_range___fill_range_7.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz";
+        sha1 = "1919a6a7c75fe38b2c7c77e5198535da9acdda40";
+      };
+    }
+    {
+      name = "find_cache_dir___find_cache_dir_2.1.0.tgz";
+      path = fetchurl {
+        name = "find_cache_dir___find_cache_dir_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz";
+        sha1 = "8d0f94cd13fe43c6c7c261a0d86115ca918c05f7";
+      };
+    }
+    {
+      name = "find_cache_dir___find_cache_dir_3.3.1.tgz";
+      path = fetchurl {
+        name = "find_cache_dir___find_cache_dir_3.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz";
+        sha1 = "89b33fad4a4670daa94f855f7fbe31d6d84fe880";
+      };
+    }
+    {
+      name = "find_up___find_up_2.1.0.tgz";
+      path = fetchurl {
+        name = "find_up___find_up_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz";
+        sha1 = "45d1b7e506c717ddd482775a2b77920a3c0c57a7";
+      };
+    }
+    {
+      name = "find_up___find_up_3.0.0.tgz";
+      path = fetchurl {
+        name = "find_up___find_up_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz";
+        sha1 = "49169f1d7993430646da61ecc5ae355c21c97b73";
+      };
+    }
+    {
+      name = "find_up___find_up_4.1.0.tgz";
+      path = fetchurl {
+        name = "find_up___find_up_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz";
+        sha1 = "97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19";
+      };
+    }
+    {
+      name = "findup_sync___findup_sync_3.0.0.tgz";
+      path = fetchurl {
+        name = "findup_sync___findup_sync_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz";
+        sha1 = "17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1";
+      };
+    }
+    {
+      name = "flat_cache___flat_cache_2.0.1.tgz";
+      path = fetchurl {
+        name = "flat_cache___flat_cache_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz";
+        sha1 = "5d296d6f04bda44a4630a301413bdbc2ec085ec0";
+      };
+    }
+    {
+      name = "flat_cache___flat_cache_3.0.4.tgz";
+      path = fetchurl {
+        name = "flat_cache___flat_cache_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz";
+        sha1 = "61b0338302b2fe9f957dcc32fc2a87f1c3048b11";
+      };
+    }
+    {
+      name = "flatted___flatted_2.0.2.tgz";
+      path = fetchurl {
+        name = "flatted___flatted_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz";
+        sha1 = "4575b21e2bcee7434aa9be662f4b7b5f9c2b5138";
+      };
+    }
+    {
+      name = "flatted___flatted_3.1.1.tgz";
+      path = fetchurl {
+        name = "flatted___flatted_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz";
+        sha1 = "c4b489e80096d9df1dfc97c79871aea7c617c469";
+      };
+    }
+    {
+      name = "flush_write_stream___flush_write_stream_1.1.1.tgz";
+      path = fetchurl {
+        name = "flush_write_stream___flush_write_stream_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz";
+        sha1 = "8dd7d873a1babc207d94ead0c2e0e44276ebf2e8";
+      };
+    }
+    {
+      name = "for_in___for_in_1.0.2.tgz";
+      path = fetchurl {
+        name = "for_in___for_in_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz";
+        sha1 = "81068d295a8142ec0ac726c6e2200c30fb6d5e80";
+      };
+    }
+    {
+      name = "foreach___foreach_2.0.5.tgz";
+      path = fetchurl {
+        name = "foreach___foreach_2.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz";
+        sha1 = "0bee005018aeb260d0a3af3ae658dd0136ec1b99";
+      };
+    }
+    {
+      name = "format_util___format_util_1.0.5.tgz";
+      path = fetchurl {
+        name = "format_util___format_util_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/format-util/-/format-util-1.0.5.tgz";
+        sha1 = "1ffb450c8a03e7bccffe40643180918cc297d271";
+      };
+    }
+    {
+      name = "fragment_cache___fragment_cache_0.2.1.tgz";
+      path = fetchurl {
+        name = "fragment_cache___fragment_cache_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz";
+        sha1 = "4290fad27f13e89be7f33799c6bc5a0abfff0d19";
+      };
+    }
+    {
+      name = "from2___from2_2.3.0.tgz";
+      path = fetchurl {
+        name = "from2___from2_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz";
+        sha1 = "8bfb5502bde4a4d36cfdeea007fcca21d7e382af";
+      };
+    }
+    {
+      name = "fs_extra___fs_extra_7.0.1.tgz";
+      path = fetchurl {
+        name = "fs_extra___fs_extra_7.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz";
+        sha1 = "4f189c44aa123b895f722804f55ea23eadc348e9";
+      };
+    }
+    {
+      name = "fs_minipass___fs_minipass_2.1.0.tgz";
+      path = fetchurl {
+        name = "fs_minipass___fs_minipass_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz";
+        sha1 = "7f5036fdbf12c63c169190cbe4199c852271f9fb";
+      };
+    }
+    {
+      name = "fs_write_stream_atomic___fs_write_stream_atomic_1.0.10.tgz";
+      path = fetchurl {
+        name = "fs_write_stream_atomic___fs_write_stream_atomic_1.0.10.tgz";
+        url  = "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz";
+        sha1 = "b47df53493ef911df75731e70a9ded0189db40c9";
+      };
+    }
+    {
+      name = "fs.realpath___fs.realpath_1.0.0.tgz";
+      path = fetchurl {
+        name = "fs.realpath___fs.realpath_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz";
+        sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f";
+      };
+    }
+    {
+      name = "fsevents___fsevents_1.2.13.tgz";
+      path = fetchurl {
+        name = "fsevents___fsevents_1.2.13.tgz";
+        url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz";
+        sha1 = "f325cb0455592428bcf11b383370ef70e3bfcc38";
+      };
+    }
+    {
+      name = "fsevents___fsevents_2.1.3.tgz";
+      path = fetchurl {
+        name = "fsevents___fsevents_2.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz";
+        sha1 = "fb738703ae8d2f9fe900c33836ddebee8b97f23e";
+      };
+    }
+    {
+      name = "function_bind___function_bind_1.1.1.tgz";
+      path = fetchurl {
+        name = "function_bind___function_bind_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz";
+        sha1 = "a56899d3ea3c9bab874bb9773b7c5ede92f4895d";
+      };
+    }
+    {
+      name = "functional_red_black_tree___functional_red_black_tree_1.0.1.tgz";
+      path = fetchurl {
+        name = "functional_red_black_tree___functional_red_black_tree_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz";
+        sha1 = "1b0ab3bd553b2a0d6399d29c0e3ea0b252078327";
+      };
+    }
+    {
+      name = "generic_names___generic_names_1.0.3.tgz";
+      path = fetchurl {
+        name = "generic_names___generic_names_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/generic-names/-/generic-names-1.0.3.tgz";
+        sha1 = "2d786a121aee508876796939e8e3bff836c20917";
+      };
+    }
+    {
+      name = "gensync___gensync_1.0.0_beta.2.tgz";
+      path = fetchurl {
+        name = "gensync___gensync_1.0.0_beta.2.tgz";
+        url  = "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz";
+        sha1 = "32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0";
+      };
+    }
+    {
+      name = "get_caller_file___get_caller_file_2.0.5.tgz";
+      path = fetchurl {
+        name = "get_caller_file___get_caller_file_2.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz";
+        sha1 = "4f94412a82db32f36e3b0b9741f8a97feb031f7e";
+      };
+    }
+    {
+      name = "get_stdin___get_stdin_8.0.0.tgz";
+      path = fetchurl {
+        name = "get_stdin___get_stdin_8.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz";
+        sha1 = "cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53";
+      };
+    }
+    {
+      name = "get_value___get_value_2.0.6.tgz";
+      path = fetchurl {
+        name = "get_value___get_value_2.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz";
+        sha1 = "dc15ca1c672387ca76bd37ac0a395ba2042a2c28";
+      };
+    }
+    {
+      name = "glob_parent___glob_parent_3.1.0.tgz";
+      path = fetchurl {
+        name = "glob_parent___glob_parent_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz";
+        sha1 = "9e6af6299d8d3bd2bd40430832bd113df906c5ae";
+      };
+    }
+    {
+      name = "glob_parent___glob_parent_5.1.1.tgz";
+      path = fetchurl {
+        name = "glob_parent___glob_parent_5.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz";
+        sha1 = "b6c1ef417c4e5663ea498f1c45afac6916bbc229";
+      };
+    }
+    {
+      name = "glob_parent___glob_parent_5.1.2.tgz";
+      path = fetchurl {
+        name = "glob_parent___glob_parent_5.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz";
+        sha1 = "869832c58034fe68a4093c17dc15e8340d8401c4";
+      };
+    }
+    {
+      name = "glob_to_regexp___glob_to_regexp_0.3.0.tgz";
+      path = fetchurl {
+        name = "glob_to_regexp___glob_to_regexp_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz";
+        sha1 = "8c5a1494d2066c570cc3bfe4496175acc4d502ab";
+      };
+    }
+    {
+      name = "glob___glob_7.1.6.tgz";
+      path = fetchurl {
+        name = "glob___glob_7.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz";
+        sha1 = "141f33b81a7c2492e125594307480c46679278a6";
+      };
+    }
+    {
+      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";
+        url  = "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz";
+        sha1 = "6d770f0eb523ac78164d72b5e71a8877265cc3ea";
+      };
+    }
+    {
+      name = "global_modules___global_modules_2.0.0.tgz";
+      path = fetchurl {
+        name = "global_modules___global_modules_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz";
+        sha1 = "997605ad2345f27f51539bea26574421215c7780";
+      };
+    }
+    {
+      name = "global_prefix___global_prefix_1.0.2.tgz";
+      path = fetchurl {
+        name = "global_prefix___global_prefix_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz";
+        sha1 = "dbf743c6c14992593c655568cb66ed32c0122ebe";
+      };
+    }
+    {
+      name = "global_prefix___global_prefix_3.0.0.tgz";
+      path = fetchurl {
+        name = "global_prefix___global_prefix_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz";
+        sha1 = "fc85f73064df69f50421f47f883fe5b913ba9b97";
+      };
+    }
+    {
+      name = "globals___globals_11.12.0.tgz";
+      path = fetchurl {
+        name = "globals___globals_11.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz";
+        sha1 = "ab8795338868a0babd8525758018c2a7eb95c42e";
+      };
+    }
+    {
+      name = "globals___globals_12.4.0.tgz";
+      path = fetchurl {
+        name = "globals___globals_12.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz";
+        sha1 = "a18813576a41b00a24a97e7f815918c2e19925f8";
+      };
+    }
+    {
+      name = "globals___globals_9.18.0.tgz";
+      path = fetchurl {
+        name = "globals___globals_9.18.0.tgz";
+        url  = "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz";
+        sha1 = "aa3896b3e69b487f17e31ed2143d69a8e30c2d8a";
+      };
+    }
+    {
+      name = "globby___globby_11.0.3.tgz";
+      path = fetchurl {
+        name = "globby___globby_11.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/globby/-/globby-11.0.3.tgz";
+        sha1 = "9b1f0cb523e171dd1ad8c7b2a9fb4b644b9593cb";
+      };
+    }
+    {
+      name = "globby___globby_6.1.0.tgz";
+      path = fetchurl {
+        name = "globby___globby_6.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz";
+        sha1 = "f5a6d70e8395e21c858fb0489d64df02424d506c";
+      };
+    }
+    {
+      name = "globjoin___globjoin_0.1.4.tgz";
+      path = fetchurl {
+        name = "globjoin___globjoin_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/globjoin/-/globjoin-0.1.4.tgz";
+        sha1 = "2f4494ac8919e3767c5cbb691e9f463324285d43";
+      };
+    }
+    {
+      name = "gonzales_pe___gonzales_pe_4.3.0.tgz";
+      path = fetchurl {
+        name = "gonzales_pe___gonzales_pe_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/gonzales-pe/-/gonzales-pe-4.3.0.tgz";
+        sha1 = "fe9dec5f3c557eead09ff868c65826be54d067b3";
+      };
+    }
+    {
+      name = "good_listener___good_listener_1.2.2.tgz";
+      path = fetchurl {
+        name = "good_listener___good_listener_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz";
+        sha1 = "d53b30cdf9313dffb7dc9a0d477096aa6d145c50";
+      };
+    }
+    {
+      name = "graceful_fs___graceful_fs_4.2.4.tgz";
+      path = fetchurl {
+        name = "graceful_fs___graceful_fs_4.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz";
+        sha1 = "2256bde14d3632958c465ebc96dc467ca07a29fb";
+      };
+    }
+    {
+      name = "graceful_fs___graceful_fs_4.2.3.tgz";
+      path = fetchurl {
+        name = "graceful_fs___graceful_fs_4.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz";
+        sha1 = "4a12ff1b60376ef09862c2093edd908328be8423";
+      };
+    }
+    {
+      name = "grapheme_splitter___grapheme_splitter_1.0.4.tgz";
+      path = fetchurl {
+        name = "grapheme_splitter___grapheme_splitter_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz";
+        sha1 = "9cf3a665c6247479896834af35cf1dbb4400767e";
+      };
+    }
+    {
+      name = "graphlib___graphlib_2.1.8.tgz";
+      path = fetchurl {
+        name = "graphlib___graphlib_2.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/graphlib/-/graphlib-2.1.8.tgz";
+        sha1 = "5761d414737870084c92ec7b5dbcb0592c9d35da";
+      };
+    }
+    {
+      name = "hard_rejection___hard_rejection_2.1.0.tgz";
+      path = fetchurl {
+        name = "hard_rejection___hard_rejection_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz";
+        sha1 = "1c6eda5c1685c63942766d79bb40ae773cecd883";
+      };
+    }
+    {
+      name = "has_ansi___has_ansi_2.0.0.tgz";
+      path = fetchurl {
+        name = "has_ansi___has_ansi_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz";
+        sha1 = "34f5049ce1ecdf2b0649af3ef24e45ed35416d91";
+      };
+    }
+    {
+      name = "has_flag___has_flag_3.0.0.tgz";
+      path = fetchurl {
+        name = "has_flag___has_flag_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz";
+        sha1 = "b5d454dc2199ae225699f3467e5a07f3b955bafd";
+      };
+    }
+    {
+      name = "has_flag___has_flag_4.0.0.tgz";
+      path = fetchurl {
+        name = "has_flag___has_flag_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz";
+        sha1 = "944771fd9c81c81265c4d6941860da06bb59479b";
+      };
+    }
+    {
+      name = "has_symbols___has_symbols_1.0.1.tgz";
+      path = fetchurl {
+        name = "has_symbols___has_symbols_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz";
+        sha1 = "9f5214758a44196c406d9bd76cebf81ec2dd31e8";
+      };
+    }
+    {
+      name = "has_value___has_value_0.3.1.tgz";
+      path = fetchurl {
+        name = "has_value___has_value_0.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz";
+        sha1 = "7b1f58bada62ca827ec0a2078025654845995e1f";
+      };
+    }
+    {
+      name = "has_value___has_value_1.0.0.tgz";
+      path = fetchurl {
+        name = "has_value___has_value_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz";
+        sha1 = "18b281da585b1c5c51def24c930ed29a0be6b177";
+      };
+    }
+    {
+      name = "has_values___has_values_0.1.4.tgz";
+      path = fetchurl {
+        name = "has_values___has_values_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz";
+        sha1 = "6d61de95d91dfca9b9a02089ad384bff8f62b771";
+      };
+    }
+    {
+      name = "has_values___has_values_1.0.0.tgz";
+      path = fetchurl {
+        name = "has_values___has_values_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz";
+        sha1 = "95b0b63fec2146619a6fe57fe75628d5a39efe4f";
+      };
+    }
+    {
+      name = "has___has_1.0.3.tgz";
+      path = fetchurl {
+        name = "has___has_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz";
+        sha1 = "722d7cbfc1f6aa8241f16dd814e011e1f41e8796";
+      };
+    }
+    {
+      name = "hash_base___hash_base_3.1.0.tgz";
+      path = fetchurl {
+        name = "hash_base___hash_base_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz";
+        sha1 = "55c381d9e06e1d2997a883b4a3fddfe7f0d3af33";
+      };
+    }
+    {
+      name = "hash.js___hash.js_1.1.7.tgz";
+      path = fetchurl {
+        name = "hash.js___hash.js_1.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz";
+        sha1 = "0babca538e8d4ee4a0f8988d68866537a003cf42";
+      };
+    }
+    {
+      name = "hex_color_regex___hex_color_regex_1.1.0.tgz";
+      path = fetchurl {
+        name = "hex_color_regex___hex_color_regex_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz";
+        sha1 = "4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e";
+      };
+    }
+    {
+      name = "hmac_drbg___hmac_drbg_1.0.1.tgz";
+      path = fetchurl {
+        name = "hmac_drbg___hmac_drbg_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz";
+        sha1 = "d2745701025a6c775a6c545793ed502fc0c649a1";
+      };
+    }
+    {
+      name = "home_or_tmp___home_or_tmp_2.0.0.tgz";
+      path = fetchurl {
+        name = "home_or_tmp___home_or_tmp_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz";
+        sha1 = "e36c3f2d2cae7d746a857e38d18d5f32a7882db8";
+      };
+    }
+    {
+      name = "homedir_polyfill___homedir_polyfill_1.0.3.tgz";
+      path = fetchurl {
+        name = "homedir_polyfill___homedir_polyfill_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz";
+        sha1 = "743298cef4e5af3e194161fbadcc2151d3a058e8";
+      };
+    }
+    {
+      name = "hosted_git_info___hosted_git_info_2.8.9.tgz";
+      path = fetchurl {
+        name = "hosted_git_info___hosted_git_info_2.8.9.tgz";
+        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz";
+        sha1 = "dffc0bf9a21c02209090f2aa69429e1414daf3f9";
+      };
+    }
+    {
+      name = "hosted_git_info___hosted_git_info_4.0.2.tgz";
+      path = fetchurl {
+        name = "hosted_git_info___hosted_git_info_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz";
+        sha1 = "5e425507eede4fea846b7262f0838456c4209961";
+      };
+    }
+    {
+      name = "hsl_regex___hsl_regex_1.0.0.tgz";
+      path = fetchurl {
+        name = "hsl_regex___hsl_regex_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz";
+        sha1 = "d49330c789ed819e276a4c0d272dffa30b18fe6e";
+      };
+    }
+    {
+      name = "hsla_regex___hsla_regex_1.0.0.tgz";
+      path = fetchurl {
+        name = "hsla_regex___hsla_regex_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz";
+        sha1 = "c1ce7a3168c8c6614033a4b5f7877f3b225f9c38";
+      };
+    }
+    {
+      name = "html_tags___html_tags_3.1.0.tgz";
+      path = fetchurl {
+        name = "html_tags___html_tags_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz";
+        sha1 = "7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140";
+      };
+    }
+    {
+      name = "htmlparser2___htmlparser2_3.8.3.tgz";
+      path = fetchurl {
+        name = "htmlparser2___htmlparser2_3.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.8.3.tgz";
+        sha1 = "996c28b191516a8be86501a7d79757e5c70c1068";
+      };
+    }
+    {
+      name = "htmlparser2___htmlparser2_3.10.1.tgz";
+      path = fetchurl {
+        name = "htmlparser2___htmlparser2_3.10.1.tgz";
+        url  = "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz";
+        sha1 = "bd679dc3f59897b6a34bb10749c855bb53a9392f";
+      };
+    }
+    {
+      name = "htmlparser2___htmlparser2_4.1.0.tgz";
+      path = fetchurl {
+        name = "htmlparser2___htmlparser2_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-4.1.0.tgz";
+        sha1 = "9a4ef161f2e4625ebf7dfbe6c0a2f52d18a59e78";
+      };
+    }
+    {
+      name = "http2_client___http2_client_1.3.3.tgz";
+      path = fetchurl {
+        name = "http2_client___http2_client_1.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/http2-client/-/http2-client-1.3.3.tgz";
+        sha1 = "90fc15d646cca86956b156d07c83947d57d659a9";
+      };
+    }
+    {
+      name = "https_browserify___https_browserify_1.0.0.tgz";
+      path = fetchurl {
+        name = "https_browserify___https_browserify_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz";
+        sha1 = "ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73";
+      };
+    }
+    {
+      name = "iconv_lite___iconv_lite_0.4.24.tgz";
+      path = fetchurl {
+        name = "iconv_lite___iconv_lite_0.4.24.tgz";
+        url  = "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz";
+        sha1 = "2022b4b25fbddc21d2f524974a474aafe733908b";
+      };
+    }
+    {
+      name = "icss_replace_symbols___icss_replace_symbols_1.1.0.tgz";
+      path = fetchurl {
+        name = "icss_replace_symbols___icss_replace_symbols_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz";
+        sha1 = "06ea6f83679a7749e386cfe1fe812ae5db223ded";
+      };
+    }
+    {
+      name = "icss_utils___icss_utils_3.0.1.tgz";
+      path = fetchurl {
+        name = "icss_utils___icss_utils_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/icss-utils/-/icss-utils-3.0.1.tgz";
+        sha1 = "ee70d3ae8cac38c6be5ed91e851b27eed343ad0f";
+      };
+    }
+    {
+      name = "icss_utils___icss_utils_4.1.1.tgz";
+      path = fetchurl {
+        name = "icss_utils___icss_utils_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz";
+        sha1 = "21170b53789ee27447c2f47dd683081403f9a467";
+      };
+    }
+    {
+      name = "ieee754___ieee754_1.1.13.tgz";
+      path = fetchurl {
+        name = "ieee754___ieee754_1.1.13.tgz";
+        url  = "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz";
+        sha1 = "ec168558e95aa181fd87d37f55c32bbcb6708b84";
+      };
+    }
+    {
+      name = "iferr___iferr_0.1.5.tgz";
+      path = fetchurl {
+        name = "iferr___iferr_0.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz";
+        sha1 = "c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501";
+      };
+    }
+    {
+      name = "ignore___ignore_4.0.6.tgz";
+      path = fetchurl {
+        name = "ignore___ignore_4.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz";
+        sha1 = "750e3db5862087b4737ebac8207ffd1ef27b25fc";
+      };
+    }
+    {
+      name = "ignore___ignore_5.1.8.tgz";
+      path = fetchurl {
+        name = "ignore___ignore_5.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz";
+        sha1 = "f150a8b50a34289b33e22f5889abd4d8016f0e57";
+      };
+    }
+    {
+      name = "import_fresh___import_fresh_3.2.1.tgz";
+      path = fetchurl {
+        name = "import_fresh___import_fresh_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz";
+        sha1 = "633ff618506e793af5ac91bf48b72677e15cbe66";
+      };
+    }
+    {
+      name = "import_fresh___import_fresh_3.3.0.tgz";
+      path = fetchurl {
+        name = "import_fresh___import_fresh_3.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz";
+        sha1 = "37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b";
+      };
+    }
+    {
+      name = "import_lazy___import_lazy_4.0.0.tgz";
+      path = fetchurl {
+        name = "import_lazy___import_lazy_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz";
+        sha1 = "e8eb627483a0a43da3c03f3e35548be5cb0cc153";
+      };
+    }
+    {
+      name = "import_local___import_local_2.0.0.tgz";
+      path = fetchurl {
+        name = "import_local___import_local_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz";
+        sha1 = "55070be38a5993cf18ef6db7e961f5bee5c5a09d";
+      };
+    }
+    {
+      name = "imports_loader___imports_loader_1.1.0.tgz";
+      path = fetchurl {
+        name = "imports_loader___imports_loader_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/imports-loader/-/imports-loader-1.1.0.tgz";
+        sha1 = "1c3a388d0c5cd7f9eb08f3646d4aae3b70e57933";
+      };
+    }
+    {
+      name = "imurmurhash___imurmurhash_0.1.4.tgz";
+      path = fetchurl {
+        name = "imurmurhash___imurmurhash_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz";
+        sha1 = "9218b9b2b928a238b13dc4fb6b6d576f231453ea";
+      };
+    }
+    {
+      name = "indent_string___indent_string_4.0.0.tgz";
+      path = fetchurl {
+        name = "indent_string___indent_string_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz";
+        sha1 = "624f8f4497d619b2d9768531d58f4122854d7251";
+      };
+    }
+    {
+      name = "indexes_of___indexes_of_1.0.1.tgz";
+      path = fetchurl {
+        name = "indexes_of___indexes_of_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz";
+        sha1 = "f30f716c8e2bd346c7b67d3df3915566a7c05607";
+      };
+    }
+    {
+      name = "infer_owner___infer_owner_1.0.4.tgz";
+      path = fetchurl {
+        name = "infer_owner___infer_owner_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz";
+        sha1 = "c4cefcaa8e51051c2a40ba2ce8a3d27295af9467";
+      };
+    }
+    {
+      name = "inflight___inflight_1.0.6.tgz";
+      path = fetchurl {
+        name = "inflight___inflight_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz";
+        sha1 = "49bd6331d7d02d0c09bc910a1075ba8165b56df9";
+      };
+    }
+    {
+      name = "inherits___inherits_2.0.4.tgz";
+      path = fetchurl {
+        name = "inherits___inherits_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz";
+        sha1 = "0fa2c64f932917c3433a0ded55363aae37416b7c";
+      };
+    }
+    {
+      name = "inherits___inherits_2.0.1.tgz";
+      path = fetchurl {
+        name = "inherits___inherits_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz";
+        sha1 = "b17d08d326b4423e568eff719f91b0b1cbdf69f1";
+      };
+    }
+    {
+      name = "inherits___inherits_2.0.3.tgz";
+      path = fetchurl {
+        name = "inherits___inherits_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz";
+        sha1 = "633c2c83e3da42a502f52466022480f4208261de";
+      };
+    }
+    {
+      name = "ini___ini_1.3.8.tgz";
+      path = fetchurl {
+        name = "ini___ini_1.3.8.tgz";
+        url  = "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz";
+        sha1 = "a29da425b48806f34767a4efce397269af28432c";
+      };
+    }
+    {
+      name = "interpret___interpret_1.4.0.tgz";
+      path = fetchurl {
+        name = "interpret___interpret_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz";
+        sha1 = "665ab8bc4da27a774a40584e812e3e0fa45b1a1e";
+      };
+    }
+    {
+      name = "invariant___invariant_2.2.4.tgz";
+      path = fetchurl {
+        name = "invariant___invariant_2.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz";
+        sha1 = "610f3c92c9359ce1db616e538008d23ff35158e6";
+      };
+    }
+    {
+      name = "is_absolute_url___is_absolute_url_3.0.3.tgz";
+      path = fetchurl {
+        name = "is_absolute_url___is_absolute_url_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz";
+        sha1 = "96c6a22b6a23929b11ea0afb1836c36ad4a5d698";
+      };
+    }
+    {
+      name = "is_accessor_descriptor___is_accessor_descriptor_0.1.6.tgz";
+      path = fetchurl {
+        name = "is_accessor_descriptor___is_accessor_descriptor_0.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz";
+        sha1 = "a9e12cb3ae8d876727eeef3843f8a0897b5c98d6";
+      };
+    }
+    {
+      name = "is_accessor_descriptor___is_accessor_descriptor_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_accessor_descriptor___is_accessor_descriptor_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz";
+        sha1 = "169c2f6d3df1f992618072365c9b0ea1f6878656";
+      };
+    }
+    {
+      name = "is_alphabetical___is_alphabetical_1.0.4.tgz";
+      path = fetchurl {
+        name = "is_alphabetical___is_alphabetical_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz";
+        sha1 = "9e7d6b94916be22153745d184c298cbf986a686d";
+      };
+    }
+    {
+      name = "is_alphanumerical___is_alphanumerical_1.0.4.tgz";
+      path = fetchurl {
+        name = "is_alphanumerical___is_alphanumerical_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz";
+        sha1 = "7eb9a2431f855f6b1ef1a78e326df515696c4dbf";
+      };
+    }
+    {
+      name = "is_arrayish___is_arrayish_0.2.1.tgz";
+      path = fetchurl {
+        name = "is_arrayish___is_arrayish_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz";
+        sha1 = "77c99840527aa8ecb1a8ba697b80645a7a926a9d";
+      };
+    }
+    {
+      name = "is_binary_path___is_binary_path_1.0.1.tgz";
+      path = fetchurl {
+        name = "is_binary_path___is_binary_path_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz";
+        sha1 = "75f16642b480f187a711c814161fd3a4a7655898";
+      };
+    }
+    {
+      name = "is_binary_path___is_binary_path_2.1.0.tgz";
+      path = fetchurl {
+        name = "is_binary_path___is_binary_path_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz";
+        sha1 = "ea1f7f3b80f064236e83470f86c09c254fb45b09";
+      };
+    }
+    {
+      name = "is_buffer___is_buffer_1.1.6.tgz";
+      path = fetchurl {
+        name = "is_buffer___is_buffer_1.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz";
+        sha1 = "efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be";
+      };
+    }
+    {
+      name = "is_buffer___is_buffer_2.0.5.tgz";
+      path = fetchurl {
+        name = "is_buffer___is_buffer_2.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz";
+        sha1 = "ebc252e400d22ff8d77fa09888821a24a658c191";
+      };
+    }
+    {
+      name = "is_callable___is_callable_1.1.4.tgz";
+      path = fetchurl {
+        name = "is_callable___is_callable_1.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz";
+        sha1 = "1e1adf219e1eeb684d691f9d6a05ff0d30a24d75";
+      };
+    }
+    {
+      name = "is_callable___is_callable_1.2.0.tgz";
+      path = fetchurl {
+        name = "is_callable___is_callable_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.0.tgz";
+        sha1 = "83336560b54a38e35e3a2df7afd0454d691468bb";
+      };
+    }
+    {
+      name = "is_color_stop___is_color_stop_1.1.0.tgz";
+      path = fetchurl {
+        name = "is_color_stop___is_color_stop_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz";
+        sha1 = "cfff471aee4dd5c9e158598fbe12967b5cdad345";
+      };
+    }
+    {
+      name = "is_core_module___is_core_module_2.4.0.tgz";
+      path = fetchurl {
+        name = "is_core_module___is_core_module_2.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.4.0.tgz";
+        sha1 = "8e9fc8e15027b011418026e98f0e6f4d86305cc1";
+      };
+    }
+    {
+      name = "is_data_descriptor___is_data_descriptor_0.1.4.tgz";
+      path = fetchurl {
+        name = "is_data_descriptor___is_data_descriptor_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz";
+        sha1 = "0b5ee648388e2c860282e793f1856fec3f301b56";
+      };
+    }
+    {
+      name = "is_data_descriptor___is_data_descriptor_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_data_descriptor___is_data_descriptor_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz";
+        sha1 = "d84876321d0e7add03990406abbbbd36ba9268c7";
+      };
+    }
+    {
+      name = "is_date_object___is_date_object_1.0.1.tgz";
+      path = fetchurl {
+        name = "is_date_object___is_date_object_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz";
+        sha1 = "9aa20eb6aeebbff77fbd33e74ca01b33581d3a16";
+      };
+    }
+    {
+      name = "is_decimal___is_decimal_1.0.4.tgz";
+      path = fetchurl {
+        name = "is_decimal___is_decimal_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz";
+        sha1 = "65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5";
+      };
+    }
+    {
+      name = "is_descriptor___is_descriptor_0.1.6.tgz";
+      path = fetchurl {
+        name = "is_descriptor___is_descriptor_0.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz";
+        sha1 = "366d8240dde487ca51823b1ab9f07a10a78251ca";
+      };
+    }
+    {
+      name = "is_descriptor___is_descriptor_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_descriptor___is_descriptor_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz";
+        sha1 = "3b159746a66604b04f8c81524ba365c5f14d86ec";
+      };
+    }
+    {
+      name = "is_extendable___is_extendable_0.1.1.tgz";
+      path = fetchurl {
+        name = "is_extendable___is_extendable_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz";
+        sha1 = "62b110e289a471418e3ec36a617d472e301dfc89";
+      };
+    }
+    {
+      name = "is_extendable___is_extendable_1.0.1.tgz";
+      path = fetchurl {
+        name = "is_extendable___is_extendable_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz";
+        sha1 = "a7470f9e426733d81bd81e1155264e3a3507cab4";
+      };
+    }
+    {
+      name = "is_extglob___is_extglob_2.1.1.tgz";
+      path = fetchurl {
+        name = "is_extglob___is_extglob_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz";
+        sha1 = "a88c02535791f02ed37c76a1b9ea9773c833f8c2";
+      };
+    }
+    {
+      name = "is_finite___is_finite_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_finite___is_finite_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz";
+        sha1 = "cc6677695602be550ef11e8b4aa6305342b6d0aa";
+      };
+    }
+    {
+      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";
+        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz";
+        sha1 = "a3b30a5c4f199183167aaab93beefae3ddfb654f";
+      };
+    }
+    {
+      name = "is_fullwidth_code_point___is_fullwidth_code_point_3.0.0.tgz";
+      path = fetchurl {
+        name = "is_fullwidth_code_point___is_fullwidth_code_point_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz";
+        sha1 = "f116f8064fe90b3f7844a38997c0b75051269f1d";
+      };
+    }
+    {
+      name = "is_glob___is_glob_3.1.0.tgz";
+      path = fetchurl {
+        name = "is_glob___is_glob_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz";
+        sha1 = "7ba5ae24217804ac70707b96922567486cc3e84a";
+      };
+    }
+    {
+      name = "is_glob___is_glob_4.0.1.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_hexadecimal___is_hexadecimal_1.0.4.tgz";
+      path = fetchurl {
+        name = "is_hexadecimal___is_hexadecimal_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz";
+        sha1 = "cc35c97588da4bd49a8eedd6bc4082d44dcb23a7";
+      };
+    }
+    {
+      name = "is_number___is_number_3.0.0.tgz";
+      path = fetchurl {
+        name = "is_number___is_number_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz";
+        sha1 = "24fd6201a4782cf50561c810276afc7d12d71195";
+      };
+    }
+    {
+      name = "is_number___is_number_7.0.0.tgz";
+      path = fetchurl {
+        name = "is_number___is_number_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz";
+        sha1 = "7535345b896734d5f80c4d06c50955527a14f12b";
+      };
+    }
+    {
+      name = "is_path_cwd___is_path_cwd_2.2.0.tgz";
+      path = fetchurl {
+        name = "is_path_cwd___is_path_cwd_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz";
+        sha1 = "67d43b82664a7b5191fd9119127eb300048a9fdb";
+      };
+    }
+    {
+      name = "is_path_in_cwd___is_path_in_cwd_2.1.0.tgz";
+      path = fetchurl {
+        name = "is_path_in_cwd___is_path_in_cwd_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz";
+        sha1 = "bfe2dca26c69f397265a4009963602935a053acb";
+      };
+    }
+    {
+      name = "is_path_inside___is_path_inside_2.1.0.tgz";
+      path = fetchurl {
+        name = "is_path_inside___is_path_inside_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz";
+        sha1 = "7c9810587d659a40d27bcdb4d5616eab059494b2";
+      };
+    }
+    {
+      name = "is_plain_obj___is_plain_obj_1.1.0.tgz";
+      path = fetchurl {
+        name = "is_plain_obj___is_plain_obj_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz";
+        sha1 = "71a50c8429dfca773c92a390a4a03b39fcd51d3e";
+      };
+    }
+    {
+      name = "is_plain_obj___is_plain_obj_2.1.0.tgz";
+      path = fetchurl {
+        name = "is_plain_obj___is_plain_obj_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz";
+        sha1 = "45e42e37fccf1f40da8e5f76ee21515840c09287";
+      };
+    }
+    {
+      name = "is_plain_object___is_plain_object_2.0.4.tgz";
+      path = fetchurl {
+        name = "is_plain_object___is_plain_object_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz";
+        sha1 = "2c163b3fafb1b606d9d17928f05c2a1c38e07677";
+      };
+    }
+    {
+      name = "is_regex___is_regex_1.0.5.tgz";
+      path = fetchurl {
+        name = "is_regex___is_regex_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz";
+        sha1 = "39d589a358bf18967f726967120b8fc1aed74eae";
+      };
+    }
+    {
+      name = "is_regex___is_regex_1.1.0.tgz";
+      path = fetchurl {
+        name = "is_regex___is_regex_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.0.tgz";
+        sha1 = "ece38e389e490df0dc21caea2bd596f987f767ff";
+      };
+    }
+    {
+      name = "is_regexp___is_regexp_2.1.0.tgz";
+      path = fetchurl {
+        name = "is_regexp___is_regexp_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-regexp/-/is-regexp-2.1.0.tgz";
+        sha1 = "cd734a56864e23b956bf4e7c66c396a4c0b22c2d";
+      };
+    }
+    {
+      name = "is_resolvable___is_resolvable_1.1.0.tgz";
+      path = fetchurl {
+        name = "is_resolvable___is_resolvable_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz";
+        sha1 = "fb18f87ce1feb925169c9a407c19318a3206ed88";
+      };
+    }
+    {
+      name = "is_string___is_string_1.0.5.tgz";
+      path = fetchurl {
+        name = "is_string___is_string_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz";
+        sha1 = "40493ed198ef3ff477b8c7f92f644ec82a5cd3a6";
+      };
+    }
+    {
+      name = "is_symbol___is_symbol_1.0.3.tgz";
+      path = fetchurl {
+        name = "is_symbol___is_symbol_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz";
+        sha1 = "38e1014b9e6329be0de9d24a414fd7441ec61937";
+      };
+    }
+    {
+      name = "is_typedarray___is_typedarray_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_typedarray___is_typedarray_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz";
+        sha1 = "e479c80858df0c1b11ddda6940f96011fcda4a9a";
+      };
+    }
+    {
+      name = "is_unicode_supported___is_unicode_supported_0.1.0.tgz";
+      path = fetchurl {
+        name = "is_unicode_supported___is_unicode_supported_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz";
+        sha1 = "3f26c76a809593b52bfa2ecb5710ed2779b522a7";
+      };
+    }
+    {
+      name = "is_windows___is_windows_1.0.2.tgz";
+      path = fetchurl {
+        name = "is_windows___is_windows_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz";
+        sha1 = "d1850eb9791ecd18e6182ce12a30f396634bb19d";
+      };
+    }
+    {
+      name = "is_wsl___is_wsl_1.1.0.tgz";
+      path = fetchurl {
+        name = "is_wsl___is_wsl_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz";
+        sha1 = "1f16e4aa22b04d1336b66188a66af3c600c3a66d";
+      };
+    }
+    {
+      name = "isarray___isarray_0.0.1.tgz";
+      path = fetchurl {
+        name = "isarray___isarray_0.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz";
+        sha1 = "8a18acfca9a8f4177e09abfc6038939b05d1eedf";
+      };
+    }
+    {
+      name = "isarray___isarray_1.0.0.tgz";
+      path = fetchurl {
+        name = "isarray___isarray_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz";
+        sha1 = "bb935d48582cba168c06834957a54a3e07124f11";
+      };
+    }
+    {
+      name = "isexe___isexe_2.0.0.tgz";
+      path = fetchurl {
+        name = "isexe___isexe_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz";
+        sha1 = "e8fbf374dc556ff8947a10dcb0572d633f2cfa10";
+      };
+    }
+    {
+      name = "isobject___isobject_2.1.0.tgz";
+      path = fetchurl {
+        name = "isobject___isobject_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz";
+        sha1 = "f065561096a3f1da2ef46272f815c840d87e0c89";
+      };
+    }
+    {
+      name = "isobject___isobject_3.0.1.tgz";
+      path = fetchurl {
+        name = "isobject___isobject_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz";
+        sha1 = "4e431e92b11a9731636aa1f9c8d1ccbcfdab78df";
+      };
+    }
+    {
+      name = "jquery___jquery_3.4.1.tgz";
+      path = fetchurl {
+        name = "jquery___jquery_3.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/jquery/-/jquery-3.4.1.tgz";
+        sha1 = "714f1f8d9dde4bdfa55764ba37ef214630d80ef2";
+      };
+    }
+    {
+      name = "js_tokens___js_tokens_4.0.0.tgz";
+      path = fetchurl {
+        name = "js_tokens___js_tokens_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz";
+        sha1 = "19203fb59991df98e3a287050d4647cdeaf32499";
+      };
+    }
+    {
+      name = "js_tokens___js_tokens_3.0.2.tgz";
+      path = fetchurl {
+        name = "js_tokens___js_tokens_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz";
+        sha1 = "9866df395102130e38f7f996bceb65443209c25b";
+      };
+    }
+    {
+      name = "js_yaml___js_yaml_3.14.0.tgz";
+      path = fetchurl {
+        name = "js_yaml___js_yaml_3.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz";
+        sha1 = "a7a34170f26a21bb162424d8adacb4113a69e482";
+      };
+    }
+    {
+      name = "jsesc___jsesc_1.3.0.tgz";
+      path = fetchurl {
+        name = "jsesc___jsesc_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz";
+        sha1 = "46c3fec8c1892b12b0833db9bc7622176dbab34b";
+      };
+    }
+    {
+      name = "jsesc___jsesc_2.5.2.tgz";
+      path = fetchurl {
+        name = "jsesc___jsesc_2.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz";
+        sha1 = "80564d2e483dacf6e8ef209650a67df3f0c283a4";
+      };
+    }
+    {
+      name = "jsesc___jsesc_0.5.0.tgz";
+      path = fetchurl {
+        name = "jsesc___jsesc_0.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz";
+        sha1 = "e7dee66e35d6fc16f710fe91d5cf69f70f08911d";
+      };
+    }
+    {
+      name = "jshint___jshint_2.12.0.tgz";
+      path = fetchurl {
+        name = "jshint___jshint_2.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/jshint/-/jshint-2.12.0.tgz";
+        sha1 = "52e75bd058d587ef81a0e2f95e5cf18eb5dc5c37";
+      };
+    }
+    {
+      name = "json_parse_better_errors___json_parse_better_errors_1.0.2.tgz";
+      path = fetchurl {
+        name = "json_parse_better_errors___json_parse_better_errors_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz";
+        sha1 = "bb867cfb3450e69107c131d1c514bab3dc8bcaa9";
+      };
+    }
+    {
+      name = "json_parse_even_better_errors___json_parse_even_better_errors_2.3.1.tgz";
+      path = fetchurl {
+        name = "json_parse_even_better_errors___json_parse_even_better_errors_2.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz";
+        sha1 = "7c47805a94319928e05777405dc12e1f7a4ee02d";
+      };
+    }
+    {
+      name = "json_pointer___json_pointer_0.6.0.tgz";
+      path = fetchurl {
+        name = "json_pointer___json_pointer_0.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/json-pointer/-/json-pointer-0.6.0.tgz";
+        sha1 = "8e500550a6aac5464a473377da57aa6cc22828d7";
+      };
+    }
+    {
+      name = "json_schema_ref_parser___json_schema_ref_parser_6.1.0.tgz";
+      path = fetchurl {
+        name = "json_schema_ref_parser___json_schema_ref_parser_6.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/json-schema-ref-parser/-/json-schema-ref-parser-6.1.0.tgz";
+        sha1 = "30af34aeab5bee0431da805dac0eb21b574bf63d";
+      };
+    }
+    {
+      name = "json_schema_traverse___json_schema_traverse_0.3.1.tgz";
+      path = fetchurl {
+        name = "json_schema_traverse___json_schema_traverse_0.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz";
+        sha1 = "349a6d44c53a51de89b40805c5d5e59b417d3340";
+      };
+    }
+    {
+      name = "json_schema_traverse___json_schema_traverse_0.4.1.tgz";
+      path = fetchurl {
+        name = "json_schema_traverse___json_schema_traverse_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz";
+        sha1 = "69f6a87d9513ab8bb8fe63bdb0979c448e684660";
+      };
+    }
+    {
+      name = "json_schema_traverse___json_schema_traverse_1.0.0.tgz";
+      path = fetchurl {
+        name = "json_schema_traverse___json_schema_traverse_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz";
+        sha1 = "ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2";
+      };
+    }
+    {
+      name = "json_stable_stringify_without_jsonify___json_stable_stringify_without_jsonify_1.0.1.tgz";
+      path = fetchurl {
+        name = "json_stable_stringify_without_jsonify___json_stable_stringify_without_jsonify_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz";
+        sha1 = "9db7b59496ad3f3cfef30a75142d2d930ad72651";
+      };
+    }
+    {
+      name = "json_to_ast___json_to_ast_2.1.0.tgz";
+      path = fetchurl {
+        name = "json_to_ast___json_to_ast_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/json-to-ast/-/json-to-ast-2.1.0.tgz";
+        sha1 = "041a9fcd03c0845036acb670d29f425cea4faaf9";
+      };
+    }
+    {
+      name = "json5___json5_0.5.1.tgz";
+      path = fetchurl {
+        name = "json5___json5_0.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz";
+        sha1 = "1eade7acc012034ad84e2396767ead9fa5495821";
+      };
+    }
+    {
+      name = "json5___json5_1.0.1.tgz";
+      path = fetchurl {
+        name = "json5___json5_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz";
+        sha1 = "779fb0018604fa854eacbf6252180d83543e3dbe";
+      };
+    }
+    {
+      name = "json5___json5_2.2.0.tgz";
+      path = fetchurl {
+        name = "json5___json5_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz";
+        sha1 = "2dfefe720c6ba525d9ebd909950f0515316c89a3";
+      };
+    }
+    {
+      name = "jsonfile___jsonfile_4.0.0.tgz";
+      path = fetchurl {
+        name = "jsonfile___jsonfile_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz";
+        sha1 = "8771aae0799b64076b76640fca058f9c10e33ecb";
+      };
+    }
+    {
+      name = "jsonpointer___jsonpointer_4.1.0.tgz";
+      path = fetchurl {
+        name = "jsonpointer___jsonpointer_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.1.0.tgz";
+        sha1 = "501fb89986a2389765ba09e6053299ceb4f2c2cc";
+      };
+    }
+    {
+      name = "kind_of___kind_of_3.2.2.tgz";
+      path = fetchurl {
+        name = "kind_of___kind_of_3.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz";
+        sha1 = "31ea21a734bab9bbb0f32466d893aea51e4a3c64";
+      };
+    }
+    {
+      name = "kind_of___kind_of_4.0.0.tgz";
+      path = fetchurl {
+        name = "kind_of___kind_of_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz";
+        sha1 = "20813df3d712928b207378691a45066fae72dd57";
+      };
+    }
+    {
+      name = "kind_of___kind_of_5.1.0.tgz";
+      path = fetchurl {
+        name = "kind_of___kind_of_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz";
+        sha1 = "729c91e2d857b7a419a1f9aa65685c4c33f5845d";
+      };
+    }
+    {
+      name = "kind_of___kind_of_6.0.3.tgz";
+      path = fetchurl {
+        name = "kind_of___kind_of_6.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz";
+        sha1 = "07c05034a6c349fa06e24fa35aa76db4580ce4dd";
+      };
+    }
+    {
+      name = "known_css_properties___known_css_properties_0.21.0.tgz";
+      path = fetchurl {
+        name = "known_css_properties___known_css_properties_0.21.0.tgz";
+        url  = "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.21.0.tgz";
+        sha1 = "15fbd0bbb83447f3ce09d8af247ed47c68ede80d";
+      };
+    }
+    {
+      name = "last_call_webpack_plugin___last_call_webpack_plugin_3.0.0.tgz";
+      path = fetchurl {
+        name = "last_call_webpack_plugin___last_call_webpack_plugin_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz";
+        sha1 = "9742df0e10e3cf46e5c0381c2de90d3a7a2d7555";
+      };
+    }
+    {
+      name = "leven___leven_3.1.0.tgz";
+      path = fetchurl {
+        name = "leven___leven_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz";
+        sha1 = "77891de834064cccba82ae7842bb6b14a13ed7f2";
+      };
+    }
+    {
+      name = "levn___levn_0.4.1.tgz";
+      path = fetchurl {
+        name = "levn___levn_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz";
+        sha1 = "ae4562c007473b932a6200d403268dd2fffc6ade";
+      };
+    }
+    {
+      name = "lines_and_columns___lines_and_columns_1.1.6.tgz";
+      path = fetchurl {
+        name = "lines_and_columns___lines_and_columns_1.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz";
+        sha1 = "1c00c743b433cd0a4e80758f7b64a57440d9ff00";
+      };
+    }
+    {
+      name = "load_json_file___load_json_file_2.0.0.tgz";
+      path = fetchurl {
+        name = "load_json_file___load_json_file_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz";
+        sha1 = "7947e42149af80d696cbf797bcaabcfe1fe29ca8";
+      };
+    }
+    {
+      name = "loader_runner___loader_runner_2.4.0.tgz";
+      path = fetchurl {
+        name = "loader_runner___loader_runner_2.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz";
+        sha1 = "ed47066bfe534d7e84c4c7b9998c2a75607d9357";
+      };
+    }
+    {
+      name = "loader_utils___loader_utils_0.2.17.tgz";
+      path = fetchurl {
+        name = "loader_utils___loader_utils_0.2.17.tgz";
+        url  = "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz";
+        sha1 = "f86e6374d43205a6e6c60e9196f17c0299bfb348";
+      };
+    }
+    {
+      name = "loader_utils___loader_utils_1.4.0.tgz";
+      path = fetchurl {
+        name = "loader_utils___loader_utils_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz";
+        sha1 = "c579b5e34cb34b1a74edc6c1fb36bfa371d5a613";
+      };
+    }
+    {
+      name = "loader_utils___loader_utils_2.0.0.tgz";
+      path = fetchurl {
+        name = "loader_utils___loader_utils_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.0.tgz";
+        sha1 = "e4cace5b816d425a166b5f097e10cd12b36064b0";
+      };
+    }
+    {
+      name = "locate_path___locate_path_2.0.0.tgz";
+      path = fetchurl {
+        name = "locate_path___locate_path_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz";
+        sha1 = "2b568b265eec944c6d9c0de9c3dbbbca0354cd8e";
+      };
+    }
+    {
+      name = "locate_path___locate_path_3.0.0.tgz";
+      path = fetchurl {
+        name = "locate_path___locate_path_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz";
+        sha1 = "dbec3b3ab759758071b58fe59fc41871af21400e";
+      };
+    }
+    {
+      name = "locate_path___locate_path_5.0.0.tgz";
+      path = fetchurl {
+        name = "locate_path___locate_path_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz";
+        sha1 = "1afba396afd676a6d42504d0a67a3a7eb9f62aa0";
+      };
+    }
+    {
+      name = "lodash.clonedeep___lodash.clonedeep_4.5.0.tgz";
+      path = fetchurl {
+        name = "lodash.clonedeep___lodash.clonedeep_4.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz";
+        sha1 = "e23f3f9c4f8fbdde872529c1071857a086e5ccef";
+      };
+    }
+    {
+      name = "lodash.difference___lodash.difference_4.5.0.tgz";
+      path = fetchurl {
+        name = "lodash.difference___lodash.difference_4.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz";
+        sha1 = "9ccb4e505d486b91651345772885a2df27fd017c";
+      };
+    }
+    {
+      name = "lodash.memoize___lodash.memoize_4.1.2.tgz";
+      path = fetchurl {
+        name = "lodash.memoize___lodash.memoize_4.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz";
+        sha1 = "bcc6c49a42a2840ed997f323eada5ecd182e0bfe";
+      };
+    }
+    {
+      name = "lodash.truncate___lodash.truncate_4.4.2.tgz";
+      path = fetchurl {
+        name = "lodash.truncate___lodash.truncate_4.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz";
+        sha1 = "5a350da0b1113b837ecfffd5812cbe58d6eae193";
+      };
+    }
+    {
+      name = "lodash.uniq___lodash.uniq_4.5.0.tgz";
+      path = fetchurl {
+        name = "lodash.uniq___lodash.uniq_4.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz";
+        sha1 = "d0225373aeb652adc1bc82e4945339a842754773";
+      };
+    }
+    {
+      name = "lodash___lodash_4.17.21.tgz";
+      path = fetchurl {
+        name = "lodash___lodash_4.17.21.tgz";
+        url  = "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz";
+        sha1 = "679591c564c3bffaae8454cf0b3df370c3d6911c";
+      };
+    }
+    {
+      name = "log_symbols___log_symbols_4.1.0.tgz";
+      path = fetchurl {
+        name = "log_symbols___log_symbols_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz";
+        sha1 = "3fbdbb95b4683ac9fc785111e792e558d4abd503";
+      };
+    }
+    {
+      name = "longest_streak___longest_streak_2.0.4.tgz";
+      path = fetchurl {
+        name = "longest_streak___longest_streak_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/longest-streak/-/longest-streak-2.0.4.tgz";
+        sha1 = "b8599957da5b5dab64dee3fe316fa774597d90e4";
+      };
+    }
+    {
+      name = "loose_envify___loose_envify_1.4.0.tgz";
+      path = fetchurl {
+        name = "loose_envify___loose_envify_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz";
+        sha1 = "71ee51fa7be4caec1a63839f7e682d8132d30caf";
+      };
+    }
+    {
+      name = "lru_cache___lru_cache_5.1.1.tgz";
+      path = fetchurl {
+        name = "lru_cache___lru_cache_5.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz";
+        sha1 = "1da27e6710271947695daf6848e847f01d84b920";
+      };
+    }
+    {
+      name = "lru_cache___lru_cache_6.0.0.tgz";
+      path = fetchurl {
+        name = "lru_cache___lru_cache_6.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz";
+        sha1 = "6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94";
+      };
+    }
+    {
+      name = "lunr___lunr_2.3.8.tgz";
+      path = fetchurl {
+        name = "lunr___lunr_2.3.8.tgz";
+        url  = "https://registry.yarnpkg.com/lunr/-/lunr-2.3.8.tgz";
+        sha1 = "a8b89c31f30b5a044b97d2d28e2da191b6ba2072";
+      };
+    }
+    {
+      name = "make_dir___make_dir_2.1.0.tgz";
+      path = fetchurl {
+        name = "make_dir___make_dir_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz";
+        sha1 = "5f0310e18b8be898cc07009295a30ae41e91e6f5";
+      };
+    }
+    {
+      name = "make_dir___make_dir_3.1.0.tgz";
+      path = fetchurl {
+        name = "make_dir___make_dir_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz";
+        sha1 = "415e967046b3a7f1d185277d84aa58203726a13f";
+      };
+    }
+    {
+      name = "map_cache___map_cache_0.2.2.tgz";
+      path = fetchurl {
+        name = "map_cache___map_cache_0.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz";
+        sha1 = "c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf";
+      };
+    }
+    {
+      name = "map_obj___map_obj_1.0.1.tgz";
+      path = fetchurl {
+        name = "map_obj___map_obj_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz";
+        sha1 = "d933ceb9205d82bdcf4886f6742bdc2b4dea146d";
+      };
+    }
+    {
+      name = "map_obj___map_obj_4.2.1.tgz";
+      path = fetchurl {
+        name = "map_obj___map_obj_4.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/map-obj/-/map-obj-4.2.1.tgz";
+        sha1 = "e4ea399dbc979ae735c83c863dd31bdf364277b7";
+      };
+    }
+    {
+      name = "map_visit___map_visit_1.0.0.tgz";
+      path = fetchurl {
+        name = "map_visit___map_visit_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz";
+        sha1 = "ecdca8f13144e660f1b5bd41f12f3479d98dfb8f";
+      };
+    }
+    {
+      name = "mark.js___mark.js_8.11.1.tgz";
+      path = fetchurl {
+        name = "mark.js___mark.js_8.11.1.tgz";
+        url  = "https://registry.yarnpkg.com/mark.js/-/mark.js-8.11.1.tgz";
+        sha1 = "180f1f9ebef8b0e638e4166ad52db879beb2ffc5";
+      };
+    }
+    {
+      name = "marked___marked_0.7.0.tgz";
+      path = fetchurl {
+        name = "marked___marked_0.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/marked/-/marked-0.7.0.tgz";
+        sha1 = "b64201f051d271b1edc10a04d1ae9b74bb8e5c0e";
+      };
+    }
+    {
+      name = "mathml_tag_names___mathml_tag_names_2.1.3.tgz";
+      path = fetchurl {
+        name = "mathml_tag_names___mathml_tag_names_2.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz";
+        sha1 = "4ddadd67308e780cf16a47685878ee27b736a0a3";
+      };
+    }
+    {
+      name = "md5.js___md5.js_1.3.5.tgz";
+      path = fetchurl {
+        name = "md5.js___md5.js_1.3.5.tgz";
+        url  = "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz";
+        sha1 = "b5d07b8e3216e3e27cd728d72f70d1e6a342005f";
+      };
+    }
+    {
+      name = "mdast_util_from_markdown___mdast_util_from_markdown_0.8.5.tgz";
+      path = fetchurl {
+        name = "mdast_util_from_markdown___mdast_util_from_markdown_0.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz";
+        sha1 = "d1ef2ca42bc377ecb0463a987910dae89bd9a28c";
+      };
+    }
+    {
+      name = "mdast_util_to_markdown___mdast_util_to_markdown_0.6.5.tgz";
+      path = fetchurl {
+        name = "mdast_util_to_markdown___mdast_util_to_markdown_0.6.5.tgz";
+        url  = "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz";
+        sha1 = "b33f67ca820d69e6cc527a93d4039249b504bebe";
+      };
+    }
+    {
+      name = "mdast_util_to_string___mdast_util_to_string_2.0.0.tgz";
+      path = fetchurl {
+        name = "mdast_util_to_string___mdast_util_to_string_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz";
+        sha1 = "b8cfe6a713e1091cb5b728fc48885a4767f8b97b";
+      };
+    }
+    {
+      name = "mdn_data___mdn_data_2.0.14.tgz";
+      path = fetchurl {
+        name = "mdn_data___mdn_data_2.0.14.tgz";
+        url  = "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz";
+        sha1 = "7113fc4281917d63ce29b43446f701e68c25ba50";
+      };
+    }
+    {
+      name = "memoize_one___memoize_one_5.1.1.tgz";
+      path = fetchurl {
+        name = "memoize_one___memoize_one_5.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.1.1.tgz";
+        sha1 = "047b6e3199b508eaec03504de71229b8eb1d75c0";
+      };
+    }
+    {
+      name = "memory_fs___memory_fs_0.4.1.tgz";
+      path = fetchurl {
+        name = "memory_fs___memory_fs_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz";
+        sha1 = "3a9a20b8462523e447cfbc7e8bb80ed667bfc552";
+      };
+    }
+    {
+      name = "memory_fs___memory_fs_0.5.0.tgz";
+      path = fetchurl {
+        name = "memory_fs___memory_fs_0.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz";
+        sha1 = "324c01288b88652966d161db77838720845a8e3c";
+      };
+    }
+    {
+      name = "meow___meow_9.0.0.tgz";
+      path = fetchurl {
+        name = "meow___meow_9.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/meow/-/meow-9.0.0.tgz";
+        sha1 = "cd9510bc5cac9dee7d03c73ee1f9ad959f4ea364";
+      };
+    }
+    {
+      name = "merge2___merge2_1.4.1.tgz";
+      path = fetchurl {
+        name = "merge2___merge2_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz";
+        sha1 = "4368892f885e907455a6fd7dc55c0c9d404990ae";
+      };
+    }
+    {
+      name = "micromark___micromark_2.11.4.tgz";
+      path = fetchurl {
+        name = "micromark___micromark_2.11.4.tgz";
+        url  = "https://registry.yarnpkg.com/micromark/-/micromark-2.11.4.tgz";
+        sha1 = "d13436138eea826383e822449c9a5c50ee44665a";
+      };
+    }
+    {
+      name = "micromatch___micromatch_3.1.10.tgz";
+      path = fetchurl {
+        name = "micromatch___micromatch_3.1.10.tgz";
+        url  = "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz";
+        sha1 = "70859bc95c9840952f359a068a3fc49f9ecfac23";
+      };
+    }
+    {
+      name = "micromatch___micromatch_4.0.4.tgz";
+      path = fetchurl {
+        name = "micromatch___micromatch_4.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz";
+        sha1 = "896d519dfe9db25fce94ceb7a500919bf881ebf9";
+      };
+    }
+    {
+      name = "miller_rabin___miller_rabin_4.0.1.tgz";
+      path = fetchurl {
+        name = "miller_rabin___miller_rabin_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz";
+        sha1 = "f080351c865b0dc562a8462966daa53543c78a4d";
+      };
+    }
+    {
+      name = "mime_db___mime_db_1.44.0.tgz";
+      path = fetchurl {
+        name = "mime_db___mime_db_1.44.0.tgz";
+        url  = "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz";
+        sha1 = "fa11c5eb0aca1334b4233cb4d52f10c5a6272f92";
+      };
+    }
+    {
+      name = "mime_types___mime_types_2.1.27.tgz";
+      path = fetchurl {
+        name = "mime_types___mime_types_2.1.27.tgz";
+        url  = "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz";
+        sha1 = "47949f98e279ea53119f5722e0f34e529bec009f";
+      };
+    }
+    {
+      name = "min_indent___min_indent_1.0.1.tgz";
+      path = fetchurl {
+        name = "min_indent___min_indent_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz";
+        sha1 = "a63f681673b30571fbe8bc25686ae746eefa9869";
+      };
+    }
+    {
+      name = "mini_css_extract_plugin___mini_css_extract_plugin_1.6.0.tgz";
+      path = fetchurl {
+        name = "mini_css_extract_plugin___mini_css_extract_plugin_1.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-1.6.0.tgz";
+        sha1 = "b4db2525af2624899ed64a23b0016e0036411893";
+      };
+    }
+    {
+      name = "minimalistic_assert___minimalistic_assert_1.0.1.tgz";
+      path = fetchurl {
+        name = "minimalistic_assert___minimalistic_assert_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz";
+        sha1 = "2e194de044626d4a10e7f7fbc00ce73e83e4d5c7";
+      };
+    }
+    {
+      name = "minimalistic_crypto_utils___minimalistic_crypto_utils_1.0.1.tgz";
+      path = fetchurl {
+        name = "minimalistic_crypto_utils___minimalistic_crypto_utils_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz";
+        sha1 = "f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a";
+      };
+    }
+    {
+      name = "minimatch___minimatch_3.0.4.tgz";
+      path = fetchurl {
+        name = "minimatch___minimatch_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz";
+        sha1 = "5166e286457f03306064be5497e8dbb0c3d32083";
+      };
+    }
+    {
+      name = "minimist_options___minimist_options_4.1.0.tgz";
+      path = fetchurl {
+        name = "minimist_options___minimist_options_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz";
+        sha1 = "c0655713c53a8a2ebd77ffa247d342c40f010619";
+      };
+    }
+    {
+      name = "minimist___minimist_1.2.5.tgz";
+      path = fetchurl {
+        name = "minimist___minimist_1.2.5.tgz";
+        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz";
+        sha1 = "67d66014b66a6a8aaa0c083c5fd58df4e4e97602";
+      };
+    }
+    {
+      name = "minipass_collect___minipass_collect_1.0.2.tgz";
+      path = fetchurl {
+        name = "minipass_collect___minipass_collect_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz";
+        sha1 = "22b813bf745dc6edba2576b940022ad6edc8c617";
+      };
+    }
+    {
+      name = "minipass_flush___minipass_flush_1.0.5.tgz";
+      path = fetchurl {
+        name = "minipass_flush___minipass_flush_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz";
+        sha1 = "82e7135d7e89a50ffe64610a787953c4c4cbb373";
+      };
+    }
+    {
+      name = "minipass_pipeline___minipass_pipeline_1.2.3.tgz";
+      path = fetchurl {
+        name = "minipass_pipeline___minipass_pipeline_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.3.tgz";
+        sha1 = "55f7839307d74859d6e8ada9c3ebe72cec216a34";
+      };
+    }
+    {
+      name = "minipass___minipass_3.1.3.tgz";
+      path = fetchurl {
+        name = "minipass___minipass_3.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz";
+        sha1 = "7d42ff1f39635482e15f9cdb53184deebd5815fd";
+      };
+    }
+    {
+      name = "minizlib___minizlib_2.1.0.tgz";
+      path = fetchurl {
+        name = "minizlib___minizlib_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.0.tgz";
+        sha1 = "fd52c645301ef09a63a2c209697c294c6ce02cf3";
+      };
+    }
+    {
+      name = "mississippi___mississippi_3.0.0.tgz";
+      path = fetchurl {
+        name = "mississippi___mississippi_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz";
+        sha1 = "ea0a3291f97e0b5e8776b363d5f0a12d94c67022";
+      };
+    }
+    {
+      name = "mixin_deep___mixin_deep_1.3.2.tgz";
+      path = fetchurl {
+        name = "mixin_deep___mixin_deep_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz";
+        sha1 = "1120b43dc359a785dce65b55b82e257ccf479566";
+      };
+    }
+    {
+      name = "mkdirp___mkdirp_0.5.5.tgz";
+      path = fetchurl {
+        name = "mkdirp___mkdirp_0.5.5.tgz";
+        url  = "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz";
+        sha1 = "d91cefd62d1436ca0f41620e251288d420099def";
+      };
+    }
+    {
+      name = "mkdirp___mkdirp_1.0.4.tgz";
+      path = fetchurl {
+        name = "mkdirp___mkdirp_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz";
+        sha1 = "3eb5ed62622756d79a5f0e2a221dfebad75c2f7e";
+      };
+    }
+    {
+      name = "mobx_react_lite___mobx_react_lite_3.2.0.tgz";
+      path = fetchurl {
+        name = "mobx_react_lite___mobx_react_lite_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/mobx-react-lite/-/mobx-react-lite-3.2.0.tgz";
+        sha1 = "331d7365a6b053378dfe9c087315b4e41c5df69f";
+      };
+    }
+    {
+      name = "mobx_react___mobx_react_7.1.0.tgz";
+      path = fetchurl {
+        name = "mobx_react___mobx_react_7.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/mobx-react/-/mobx-react-7.1.0.tgz";
+        sha1 = "d947cada3cfad294b4b6f692e969c242b9c16eaf";
+      };
+    }
+    {
+      name = "moment_locales_webpack_plugin___moment_locales_webpack_plugin_1.2.0.tgz";
+      path = fetchurl {
+        name = "moment_locales_webpack_plugin___moment_locales_webpack_plugin_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/moment-locales-webpack-plugin/-/moment-locales-webpack-plugin-1.2.0.tgz";
+        sha1 = "9af83876a44053706b868ceece5119584d10d7aa";
+      };
+    }
+    {
+      name = "moment_timezone___moment_timezone_0.4.1.tgz";
+      path = fetchurl {
+        name = "moment_timezone___moment_timezone_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.4.1.tgz";
+        sha1 = "81f598c3ad5e22cdad796b67ecd8d88d0f5baa06";
+      };
+    }
+    {
+      name = "moment_timezone___moment_timezone_0.5.28.tgz";
+      path = fetchurl {
+        name = "moment_timezone___moment_timezone_0.5.28.tgz";
+        url  = "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.28.tgz";
+        sha1 = "f093d789d091ed7b055d82aa81a82467f72e4338";
+      };
+    }
+    {
+      name = "moment___moment_2.24.0.tgz";
+      path = fetchurl {
+        name = "moment___moment_2.24.0.tgz";
+        url  = "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz";
+        sha1 = "0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b";
+      };
+    }
+    {
+      name = "move_concurrently___move_concurrently_1.0.1.tgz";
+      path = fetchurl {
+        name = "move_concurrently___move_concurrently_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz";
+        sha1 = "be2c005fda32e0b29af1f05d7c4b33214c701f92";
+      };
+    }
+    {
+      name = "ms___ms_2.0.0.tgz";
+      path = fetchurl {
+        name = "ms___ms_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz";
+        sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8";
+      };
+    }
+    {
+      name = "ms___ms_2.1.2.tgz";
+      path = fetchurl {
+        name = "ms___ms_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz";
+        sha1 = "d09d1f357b443f493382a8eb3ccd183872ae6009";
+      };
+    }
+    {
+      name = "ms___ms_2.1.3.tgz";
+      path = fetchurl {
+        name = "ms___ms_2.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz";
+        sha1 = "574c8138ce1d2b5861f0b44579dbadd60c6615b2";
+      };
+    }
+    {
+      name = "nan___nan_2.14.1.tgz";
+      path = fetchurl {
+        name = "nan___nan_2.14.1.tgz";
+        url  = "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz";
+        sha1 = "d7be34dfa3105b91494c3147089315eff8874b01";
+      };
+    }
+    {
+      name = "nanoid___nanoid_3.1.23.tgz";
+      path = fetchurl {
+        name = "nanoid___nanoid_3.1.23.tgz";
+        url  = "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.23.tgz";
+        sha1 = "f744086ce7c2bc47ee0a8472574d5c78e4183a81";
+      };
+    }
+    {
+      name = "nanomatch___nanomatch_1.2.13.tgz";
+      path = fetchurl {
+        name = "nanomatch___nanomatch_1.2.13.tgz";
+        url  = "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz";
+        sha1 = "b87a8aa4fc0de8fe6be88895b38983ff265bd119";
+      };
+    }
+    {
+      name = "natural_compare___natural_compare_1.4.0.tgz";
+      path = fetchurl {
+        name = "natural_compare___natural_compare_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz";
+        sha1 = "4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7";
+      };
+    }
+    {
+      name = "neo_async___neo_async_2.6.2.tgz";
+      path = fetchurl {
+        name = "neo_async___neo_async_2.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz";
+        sha1 = "b4aafb93e3aeb2d8174ca53cf163ab7d7308305f";
+      };
+    }
+    {
+      name = "nice_try___nice_try_1.0.5.tgz";
+      path = fetchurl {
+        name = "nice_try___nice_try_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz";
+        sha1 = "a3378a7696ce7d223e88fc9b764bd7ef1089e366";
+      };
+    }
+    {
+      name = "node_fetch_h2___node_fetch_h2_2.3.0.tgz";
+      path = fetchurl {
+        name = "node_fetch_h2___node_fetch_h2_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/node-fetch-h2/-/node-fetch-h2-2.3.0.tgz";
+        sha1 = "c6188325f9bd3d834020bf0f2d6dc17ced2241ac";
+      };
+    }
+    {
+      name = "node_libs_browser___node_libs_browser_2.2.1.tgz";
+      path = fetchurl {
+        name = "node_libs_browser___node_libs_browser_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz";
+        sha1 = "b64f513d18338625f90346d27b0d235e631f6425";
+      };
+    }
+    {
+      name = "node_readfiles___node_readfiles_0.2.0.tgz";
+      path = fetchurl {
+        name = "node_readfiles___node_readfiles_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/node-readfiles/-/node-readfiles-0.2.0.tgz";
+        sha1 = "dbbd4af12134e2e635c245ef93ffcf6f60673a5d";
+      };
+    }
+    {
+      name = "node_releases___node_releases_1.1.63.tgz";
+      path = fetchurl {
+        name = "node_releases___node_releases_1.1.63.tgz";
+        url  = "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.63.tgz";
+        sha1 = "db6dbb388544c31e888216304e8fd170efee3ff5";
+      };
+    }
+    {
+      name = "node_releases___node_releases_1.1.71.tgz";
+      path = fetchurl {
+        name = "node_releases___node_releases_1.1.71.tgz";
+        url  = "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.71.tgz";
+        sha1 = "cb1334b179896b1c89ecfdd4b725fb7bbdfc7dbb";
+      };
+    }
+    {
+      name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
+      path = fetchurl {
+        name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz";
+        sha1 = "e66db1838b200c1dfc233225d12cb36520e234a8";
+      };
+    }
+    {
+      name = "normalize_package_data___normalize_package_data_3.0.2.tgz";
+      path = fetchurl {
+        name = "normalize_package_data___normalize_package_data_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.2.tgz";
+        sha1 = "cae5c410ae2434f9a6c1baa65d5bc3b9366c8699";
+      };
+    }
+    {
+      name = "normalize_path___normalize_path_2.1.1.tgz";
+      path = fetchurl {
+        name = "normalize_path___normalize_path_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz";
+        sha1 = "1ab28b556e198363a8c1a6f7e6fa20137fe6aed9";
+      };
+    }
+    {
+      name = "normalize_path___normalize_path_3.0.0.tgz";
+      path = fetchurl {
+        name = "normalize_path___normalize_path_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz";
+        sha1 = "0dcd69ff23a1c9b11fd0978316644a0388216a65";
+      };
+    }
+    {
+      name = "normalize_range___normalize_range_0.1.2.tgz";
+      path = fetchurl {
+        name = "normalize_range___normalize_range_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz";
+        sha1 = "2d10c06bdfd312ea9777695a4d28439456b75942";
+      };
+    }
+    {
+      name = "normalize_selector___normalize_selector_0.2.0.tgz";
+      path = fetchurl {
+        name = "normalize_selector___normalize_selector_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-selector/-/normalize-selector-0.2.0.tgz";
+        sha1 = "d0b145eb691189c63a78d201dc4fdb1293ef0c03";
+      };
+    }
+    {
+      name = "normalize_url___normalize_url_6.0.1.tgz";
+      path = fetchurl {
+        name = "normalize_url___normalize_url_6.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.0.1.tgz";
+        sha1 = "a4f27f58cf8c7b287b440b8a8201f42d0b00d256";
+      };
+    }
+    {
+      name = "nth_check___nth_check_2.0.0.tgz";
+      path = fetchurl {
+        name = "nth_check___nth_check_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.0.tgz";
+        sha1 = "1bb4f6dac70072fc313e8c9cd1417b5074c0a125";
+      };
+    }
+    {
+      name = "num2fraction___num2fraction_1.2.2.tgz";
+      path = fetchurl {
+        name = "num2fraction___num2fraction_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz";
+        sha1 = "6f682b6a027a4e9ddfa4564cd2589d1d4e669ede";
+      };
+    }
+    {
+      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 = "nvd3___nvd3_1.8.6.tgz";
+      path = fetchurl {
+        name = "nvd3___nvd3_1.8.6.tgz";
+        url  = "https://registry.yarnpkg.com/nvd3/-/nvd3-1.8.6.tgz";
+        sha1 = "2d3eba74bf33363b5101ebf1d093c59a53ae73c4";
+      };
+    }
+    {
+      name = "oas_kit_common___oas_kit_common_1.0.8.tgz";
+      path = fetchurl {
+        name = "oas_kit_common___oas_kit_common_1.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/oas-kit-common/-/oas-kit-common-1.0.8.tgz";
+        sha1 = "6d8cacf6e9097967a4c7ea8bcbcbd77018e1f535";
+      };
+    }
+    {
+      name = "oas_linter___oas_linter_3.2.1.tgz";
+      path = fetchurl {
+        name = "oas_linter___oas_linter_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/oas-linter/-/oas-linter-3.2.1.tgz";
+        sha1 = "1a6d9117d146805b58e56df479861de0293b6e5b";
+      };
+    }
+    {
+      name = "oas_resolver___oas_resolver_2.5.4.tgz";
+      path = fetchurl {
+        name = "oas_resolver___oas_resolver_2.5.4.tgz";
+        url  = "https://registry.yarnpkg.com/oas-resolver/-/oas-resolver-2.5.4.tgz";
+        sha1 = "81fa1aaa7e2387ab2dba1045827e9d7b79822326";
+      };
+    }
+    {
+      name = "oas_schema_walker___oas_schema_walker_1.1.5.tgz";
+      path = fetchurl {
+        name = "oas_schema_walker___oas_schema_walker_1.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/oas-schema-walker/-/oas-schema-walker-1.1.5.tgz";
+        sha1 = "74c3cd47b70ff8e0b19adada14455b5d3ac38a22";
+      };
+    }
+    {
+      name = "oas_validator___oas_validator_4.0.8.tgz";
+      path = fetchurl {
+        name = "oas_validator___oas_validator_4.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/oas-validator/-/oas-validator-4.0.8.tgz";
+        sha1 = "4f1a4d6bd9e030ad07db03fd7a7bc3a91aabcc7d";
+      };
+    }
+    {
+      name = "object_assign___object_assign_4.1.1.tgz";
+      path = fetchurl {
+        name = "object_assign___object_assign_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz";
+        sha1 = "2109adc7965887cfc05cbbd442cac8bfbb360863";
+      };
+    }
+    {
+      name = "object_copy___object_copy_0.1.0.tgz";
+      path = fetchurl {
+        name = "object_copy___object_copy_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz";
+        sha1 = "7e7d858b781bd7c991a41ba975ed3812754e998c";
+      };
+    }
+    {
+      name = "object_inspect___object_inspect_1.7.0.tgz";
+      path = fetchurl {
+        name = "object_inspect___object_inspect_1.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz";
+        sha1 = "f4f6bd181ad77f006b5ece60bd0b6f398ff74a67";
+      };
+    }
+    {
+      name = "object_keys___object_keys_1.1.1.tgz";
+      path = fetchurl {
+        name = "object_keys___object_keys_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz";
+        sha1 = "1c47f272df277f3b1daf061677d9c82e2322c60e";
+      };
+    }
+    {
+      name = "object_visit___object_visit_1.0.1.tgz";
+      path = fetchurl {
+        name = "object_visit___object_visit_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz";
+        sha1 = "f79c4493af0c5377b59fe39d395e41042dd045bb";
+      };
+    }
+    {
+      name = "object.assign___object.assign_4.1.0.tgz";
+      path = fetchurl {
+        name = "object.assign___object.assign_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz";
+        sha1 = "968bf1100d7956bb3ca086f006f846b3bc4008da";
+      };
+    }
+    {
+      name = "object.entries___object.entries_1.1.1.tgz";
+      path = fetchurl {
+        name = "object.entries___object.entries_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.1.tgz";
+        sha1 = "ee1cf04153de02bb093fec33683900f57ce5399b";
+      };
+    }
+    {
+      name = "object.entries___object.entries_1.1.2.tgz";
+      path = fetchurl {
+        name = "object.entries___object.entries_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.2.tgz";
+        sha1 = "bc73f00acb6b6bb16c203434b10f9a7e797d3add";
+      };
+    }
+    {
+      name = "object.pick___object.pick_1.3.0.tgz";
+      path = fetchurl {
+        name = "object.pick___object.pick_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz";
+        sha1 = "87a10ac4c1694bd2e1cbf53591a66141fb5dd747";
+      };
+    }
+    {
+      name = "object.values___object.values_1.1.1.tgz";
+      path = fetchurl {
+        name = "object.values___object.values_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object.values/-/object.values-1.1.1.tgz";
+        sha1 = "68a99ecde356b7e9295a3c5e0ce31dc8c953de5e";
+      };
+    }
+    {
+      name = "once___once_1.4.0.tgz";
+      path = fetchurl {
+        name = "once___once_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz";
+        sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1";
+      };
+    }
+    {
+      name = "ono___ono_4.0.11.tgz";
+      path = fetchurl {
+        name = "ono___ono_4.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/ono/-/ono-4.0.11.tgz";
+        sha1 = "c7f4209b3e396e8a44ef43b9cedc7f5d791d221d";
+      };
+    }
+    {
+      name = "openapi_sampler___openapi_sampler_1.0.0_beta.18.tgz";
+      path = fetchurl {
+        name = "openapi_sampler___openapi_sampler_1.0.0_beta.18.tgz";
+        url  = "https://registry.yarnpkg.com/openapi-sampler/-/openapi-sampler-1.0.0-beta.18.tgz";
+        sha1 = "9e0845616a669e048860625ea5c10d0f554f1b53";
+      };
+    }
+    {
+      name = "optimize_css_assets_webpack_plugin___optimize_css_assets_webpack_plugin_6.0.0.tgz";
+      path = fetchurl {
+        name = "optimize_css_assets_webpack_plugin___optimize_css_assets_webpack_plugin_6.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-6.0.0.tgz";
+        sha1 = "00acd99d420715ad96ed3d8ad65a8a4df1be233b";
+      };
+    }
+    {
+      name = "optionator___optionator_0.9.1.tgz";
+      path = fetchurl {
+        name = "optionator___optionator_0.9.1.tgz";
+        url  = "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz";
+        sha1 = "4f236a6373dae0566a6d43e1326674f50c291499";
+      };
+    }
+    {
+      name = "os_browserify___os_browserify_0.3.0.tgz";
+      path = fetchurl {
+        name = "os_browserify___os_browserify_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz";
+        sha1 = "854373c7f5c2315914fc9bfc6bd8238fdda1ec27";
+      };
+    }
+    {
+      name = "os_homedir___os_homedir_1.0.2.tgz";
+      path = fetchurl {
+        name = "os_homedir___os_homedir_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz";
+        sha1 = "ffbc4988336e0e833de0c168c7ef152121aa7fb3";
+      };
+    }
+    {
+      name = "os_tmpdir___os_tmpdir_1.0.2.tgz";
+      path = fetchurl {
+        name = "os_tmpdir___os_tmpdir_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz";
+        sha1 = "bbe67406c79aa85c5cfec766fe5734555dfa1274";
+      };
+    }
+    {
+      name = "p_limit___p_limit_1.3.0.tgz";
+      path = fetchurl {
+        name = "p_limit___p_limit_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz";
+        sha1 = "b86bd5f0c25690911c7590fcbfc2010d54b3ccb8";
+      };
+    }
+    {
+      name = "p_limit___p_limit_2.3.0.tgz";
+      path = fetchurl {
+        name = "p_limit___p_limit_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz";
+        sha1 = "3dd33c647a214fdfffd835933eb086da0dc21db1";
+      };
+    }
+    {
+      name = "p_limit___p_limit_3.0.2.tgz";
+      path = fetchurl {
+        name = "p_limit___p_limit_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-3.0.2.tgz";
+        sha1 = "1664e010af3cadc681baafd3e2a437be7b0fb5fe";
+      };
+    }
+    {
+      name = "p_locate___p_locate_2.0.0.tgz";
+      path = fetchurl {
+        name = "p_locate___p_locate_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz";
+        sha1 = "20a0103b222a70c8fd39cc2e580680f3dde5ec43";
+      };
+    }
+    {
+      name = "p_locate___p_locate_3.0.0.tgz";
+      path = fetchurl {
+        name = "p_locate___p_locate_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz";
+        sha1 = "322d69a05c0264b25997d9f40cd8a891ab0064a4";
+      };
+    }
+    {
+      name = "p_locate___p_locate_4.1.0.tgz";
+      path = fetchurl {
+        name = "p_locate___p_locate_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz";
+        sha1 = "a3428bb7088b3a60292f66919278b7c297ad4f07";
+      };
+    }
+    {
+      name = "p_map___p_map_2.1.0.tgz";
+      path = fetchurl {
+        name = "p_map___p_map_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz";
+        sha1 = "310928feef9c9ecc65b68b17693018a665cea175";
+      };
+    }
+    {
+      name = "p_map___p_map_4.0.0.tgz";
+      path = fetchurl {
+        name = "p_map___p_map_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz";
+        sha1 = "bb2f95a5eda2ec168ec9274e06a747c3e2904d2b";
+      };
+    }
+    {
+      name = "p_try___p_try_1.0.0.tgz";
+      path = fetchurl {
+        name = "p_try___p_try_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz";
+        sha1 = "cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3";
+      };
+    }
+    {
+      name = "p_try___p_try_2.2.0.tgz";
+      path = fetchurl {
+        name = "p_try___p_try_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz";
+        sha1 = "cb2868540e313d61de58fafbe35ce9004d5540e6";
+      };
+    }
+    {
+      name = "pako___pako_1.0.11.tgz";
+      path = fetchurl {
+        name = "pako___pako_1.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz";
+        sha1 = "6c9599d340d54dfd3946380252a35705a6b992bf";
+      };
+    }
+    {
+      name = "parallel_transform___parallel_transform_1.2.0.tgz";
+      path = fetchurl {
+        name = "parallel_transform___parallel_transform_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz";
+        sha1 = "9049ca37d6cb2182c3b1d2c720be94d14a5814fc";
+      };
+    }
+    {
+      name = "parent_module___parent_module_1.0.1.tgz";
+      path = fetchurl {
+        name = "parent_module___parent_module_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz";
+        sha1 = "691d2709e78c79fae3a156622452d00762caaaa2";
+      };
+    }
+    {
+      name = "parse_asn1___parse_asn1_5.1.5.tgz";
+      path = fetchurl {
+        name = "parse_asn1___parse_asn1_5.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.5.tgz";
+        sha1 = "003271343da58dc94cace494faef3d2147ecea0e";
+      };
+    }
+    {
+      name = "parse_entities___parse_entities_2.0.0.tgz";
+      path = fetchurl {
+        name = "parse_entities___parse_entities_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-entities/-/parse-entities-2.0.0.tgz";
+        sha1 = "53c6eb5b9314a1f4ec99fa0fdf7ce01ecda0cbe8";
+      };
+    }
+    {
+      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_5.2.0.tgz";
+      path = fetchurl {
+        name = "parse_json___parse_json_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz";
+        sha1 = "c76fc66dee54231c962b22bcc8a72cf2f99753cd";
+      };
+    }
+    {
+      name = "parse_passwd___parse_passwd_1.0.0.tgz";
+      path = fetchurl {
+        name = "parse_passwd___parse_passwd_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz";
+        sha1 = "6d5b934a456993b23d37f40a382d6f1666a8e5c6";
+      };
+    }
+    {
+      name = "pascalcase___pascalcase_0.1.1.tgz";
+      path = fetchurl {
+        name = "pascalcase___pascalcase_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz";
+        sha1 = "b363e55e8006ca6fe21784d2db22bd15d7917f14";
+      };
+    }
+    {
+      name = "path_browserify___path_browserify_0.0.1.tgz";
+      path = fetchurl {
+        name = "path_browserify___path_browserify_0.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz";
+        sha1 = "e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a";
+      };
+    }
+    {
+      name = "path_dirname___path_dirname_1.0.2.tgz";
+      path = fetchurl {
+        name = "path_dirname___path_dirname_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz";
+        sha1 = "cc33d24d525e099a5388c0336c6e32b9160609e0";
+      };
+    }
+    {
+      name = "path_exists___path_exists_3.0.0.tgz";
+      path = fetchurl {
+        name = "path_exists___path_exists_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz";
+        sha1 = "ce0ebeaa5f78cb18925ea7d810d7b59b010fd515";
+      };
+    }
+    {
+      name = "path_exists___path_exists_4.0.0.tgz";
+      path = fetchurl {
+        name = "path_exists___path_exists_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz";
+        sha1 = "513bdbe2d3b95d7762e8c1137efa195c6c61b5b3";
+      };
+    }
+    {
+      name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
+      path = fetchurl {
+        name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
+        sha1 = "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f";
+      };
+    }
+    {
+      name = "path_is_inside___path_is_inside_1.0.2.tgz";
+      path = fetchurl {
+        name = "path_is_inside___path_is_inside_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz";
+        sha1 = "365417dede44430d1c11af61027facf074bdfc53";
+      };
+    }
+    {
+      name = "path_key___path_key_2.0.1.tgz";
+      path = fetchurl {
+        name = "path_key___path_key_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz";
+        sha1 = "411cadb574c5a140d3a4b1910d40d80cc9f40b40";
+      };
+    }
+    {
+      name = "path_key___path_key_3.1.1.tgz";
+      path = fetchurl {
+        name = "path_key___path_key_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz";
+        sha1 = "581f6ade658cbba65a0d3380de7753295054f375";
+      };
+    }
+    {
+      name = "path_parse___path_parse_1.0.6.tgz";
+      path = fetchurl {
+        name = "path_parse___path_parse_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz";
+        sha1 = "d62dbb5679405d72c4737ec58600e9ddcf06d24c";
+      };
+    }
+    {
+      name = "path_type___path_type_2.0.0.tgz";
+      path = fetchurl {
+        name = "path_type___path_type_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz";
+        sha1 = "f012ccb8415b7096fc2daa1054c3d72389594c73";
+      };
+    }
+    {
+      name = "path_type___path_type_4.0.0.tgz";
+      path = fetchurl {
+        name = "path_type___path_type_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz";
+        sha1 = "84ed01c0a7ba380afe09d90a8c180dcd9d03043b";
+      };
+    }
+    {
+      name = "pbkdf2___pbkdf2_3.1.1.tgz";
+      path = fetchurl {
+        name = "pbkdf2___pbkdf2_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.1.tgz";
+        sha1 = "cb8724b0fada984596856d1a6ebafd3584654b94";
+      };
+    }
+    {
+      name = "perfect_scrollbar___perfect_scrollbar_1.5.0.tgz";
+      path = fetchurl {
+        name = "perfect_scrollbar___perfect_scrollbar_1.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/perfect-scrollbar/-/perfect-scrollbar-1.5.0.tgz";
+        sha1 = "821d224ed8ff61990c23f26db63048cdc75b6b83";
+      };
+    }
+    {
+      name = "picomatch___picomatch_2.2.2.tgz";
+      path = fetchurl {
+        name = "picomatch___picomatch_2.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz";
+        sha1 = "21f333e9b6b8eaff02468f5146ea406d345f4dad";
+      };
+    }
+    {
+      name = "picomatch___picomatch_2.2.3.tgz";
+      path = fetchurl {
+        name = "picomatch___picomatch_2.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.3.tgz";
+        sha1 = "465547f359ccc206d3c48e46a1bcb89bf7ee619d";
+      };
+    }
+    {
+      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_4.0.1.tgz";
+      path = fetchurl {
+        name = "pify___pify_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz";
+        sha1 = "4b2cd25c50d598735c50292224fd8c6df41e3231";
+      };
+    }
+    {
+      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_2.0.0.tgz";
+      path = fetchurl {
+        name = "pkg_dir___pkg_dir_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz";
+        sha1 = "f6d5d1109e19d63edf428e0bd57e12777615334b";
+      };
+    }
+    {
+      name = "pkg_dir___pkg_dir_3.0.0.tgz";
+      path = fetchurl {
+        name = "pkg_dir___pkg_dir_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz";
+        sha1 = "2749020f239ed990881b1f71210d51eb6523bea3";
+      };
+    }
+    {
+      name = "pkg_dir___pkg_dir_4.2.0.tgz";
+      path = fetchurl {
+        name = "pkg_dir___pkg_dir_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz";
+        sha1 = "f099133df7ede422e81d1d8448270eeb3e4261f3";
+      };
+    }
+    {
+      name = "polished___polished_3.7.1.tgz";
+      path = fetchurl {
+        name = "polished___polished_3.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/polished/-/polished-3.7.1.tgz";
+        sha1 = "d1addc87ee16eb5b413c6165eda37600cccb9c11";
+      };
+    }
+    {
+      name = "posix_character_classes___posix_character_classes_0.1.1.tgz";
+      path = fetchurl {
+        name = "posix_character_classes___posix_character_classes_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz";
+        sha1 = "01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab";
+      };
+    }
+    {
+      name = "postcss_calc___postcss_calc_8.0.0.tgz";
+      path = fetchurl {
+        name = "postcss_calc___postcss_calc_8.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.0.0.tgz";
+        sha1 = "a05b87aacd132740a5db09462a3612453e5df90a";
+      };
+    }
+    {
+      name = "postcss_colormin___postcss_colormin_5.2.0.tgz";
+      path = fetchurl {
+        name = "postcss_colormin___postcss_colormin_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.2.0.tgz";
+        sha1 = "2b620b88c0ff19683f3349f4cf9e24ebdafb2c88";
+      };
+    }
+    {
+      name = "postcss_convert_values___postcss_convert_values_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_convert_values___postcss_convert_values_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.0.1.tgz";
+        sha1 = "4ec19d6016534e30e3102fdf414e753398645232";
+      };
+    }
+    {
+      name = "postcss_discard_comments___postcss_discard_comments_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_discard_comments___postcss_discard_comments_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-5.0.1.tgz";
+        sha1 = "9eae4b747cf760d31f2447c27f0619d5718901fe";
+      };
+    }
+    {
+      name = "postcss_discard_duplicates___postcss_discard_duplicates_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_discard_duplicates___postcss_discard_duplicates_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.0.1.tgz";
+        sha1 = "68f7cc6458fe6bab2e46c9f55ae52869f680e66d";
+      };
+    }
+    {
+      name = "postcss_discard_empty___postcss_discard_empty_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_discard_empty___postcss_discard_empty_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-5.0.1.tgz";
+        sha1 = "ee136c39e27d5d2ed4da0ee5ed02bc8a9f8bf6d8";
+      };
+    }
+    {
+      name = "postcss_discard_overridden___postcss_discard_overridden_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_discard_overridden___postcss_discard_overridden_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-5.0.1.tgz";
+        sha1 = "454b41f707300b98109a75005ca4ab0ff2743ac6";
+      };
+    }
+    {
+      name = "postcss_html___postcss_html_0.36.0.tgz";
+      path = fetchurl {
+        name = "postcss_html___postcss_html_0.36.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-html/-/postcss-html-0.36.0.tgz";
+        sha1 = "b40913f94eaacc2453fd30a1327ad6ee1f88b204";
+      };
+    }
+    {
+      name = "postcss_less___postcss_less_3.1.4.tgz";
+      path = fetchurl {
+        name = "postcss_less___postcss_less_3.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-less/-/postcss-less-3.1.4.tgz";
+        sha1 = "369f58642b5928ef898ffbc1a6e93c958304c5ad";
+      };
+    }
+    {
+      name = "postcss_media_query_parser___postcss_media_query_parser_0.2.3.tgz";
+      path = fetchurl {
+        name = "postcss_media_query_parser___postcss_media_query_parser_0.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz";
+        sha1 = "27b39c6f4d94f81b1a73b8f76351c609e5cef244";
+      };
+    }
+    {
+      name = "postcss_merge_longhand___postcss_merge_longhand_5.0.2.tgz";
+      path = fetchurl {
+        name = "postcss_merge_longhand___postcss_merge_longhand_5.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.0.2.tgz";
+        sha1 = "277ada51d9a7958e8ef8cf263103c9384b322a41";
+      };
+    }
+    {
+      name = "postcss_merge_rules___postcss_merge_rules_5.0.2.tgz";
+      path = fetchurl {
+        name = "postcss_merge_rules___postcss_merge_rules_5.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.0.2.tgz";
+        sha1 = "d6e4d65018badbdb7dcc789c4f39b941305d410a";
+      };
+    }
+    {
+      name = "postcss_minify_font_values___postcss_minify_font_values_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_minify_font_values___postcss_minify_font_values_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-5.0.1.tgz";
+        sha1 = "a90cefbfdaa075bd3dbaa1b33588bb4dc268addf";
+      };
+    }
+    {
+      name = "postcss_minify_gradients___postcss_minify_gradients_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_minify_gradients___postcss_minify_gradients_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-5.0.1.tgz";
+        sha1 = "2dc79fd1a1afcb72a9e727bc549ce860f93565d2";
+      };
+    }
+    {
+      name = "postcss_minify_params___postcss_minify_params_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_minify_params___postcss_minify_params_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.0.1.tgz";
+        sha1 = "371153ba164b9d8562842fdcd929c98abd9e5b6c";
+      };
+    }
+    {
+      name = "postcss_minify_selectors___postcss_minify_selectors_5.1.0.tgz";
+      path = fetchurl {
+        name = "postcss_minify_selectors___postcss_minify_selectors_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-5.1.0.tgz";
+        sha1 = "4385c845d3979ff160291774523ffa54eafd5a54";
+      };
+    }
+    {
+      name = "postcss_modules_extract_imports___postcss_modules_extract_imports_1.2.1.tgz";
+      path = fetchurl {
+        name = "postcss_modules_extract_imports___postcss_modules_extract_imports_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz";
+        sha1 = "dc87e34148ec7eab5f791f7cd5849833375b741a";
+      };
+    }
+    {
+      name = "postcss_modules_extract_imports___postcss_modules_extract_imports_2.0.0.tgz";
+      path = fetchurl {
+        name = "postcss_modules_extract_imports___postcss_modules_extract_imports_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz";
+        sha1 = "818719a1ae1da325f9832446b01136eeb493cd7e";
+      };
+    }
+    {
+      name = "postcss_modules_local_by_default___postcss_modules_local_by_default_1.2.0.tgz";
+      path = fetchurl {
+        name = "postcss_modules_local_by_default___postcss_modules_local_by_default_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz";
+        sha1 = "f7d80c398c5a393fa7964466bd19500a7d61c069";
+      };
+    }
+    {
+      name = "postcss_modules_local_by_default___postcss_modules_local_by_default_3.0.2.tgz";
+      path = fetchurl {
+        name = "postcss_modules_local_by_default___postcss_modules_local_by_default_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.2.tgz";
+        sha1 = "e8a6561be914aaf3c052876377524ca90dbb7915";
+      };
+    }
+    {
+      name = "postcss_modules_resolve_imports___postcss_modules_resolve_imports_1.3.0.tgz";
+      path = fetchurl {
+        name = "postcss_modules_resolve_imports___postcss_modules_resolve_imports_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-resolve-imports/-/postcss-modules-resolve-imports-1.3.0.tgz";
+        sha1 = "398d3000b95ae969420cdf4cd83fa8067f1c5eae";
+      };
+    }
+    {
+      name = "postcss_modules_scope___postcss_modules_scope_1.1.0.tgz";
+      path = fetchurl {
+        name = "postcss_modules_scope___postcss_modules_scope_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz";
+        sha1 = "d6ea64994c79f97b62a72b426fbe6056a194bb90";
+      };
+    }
+    {
+      name = "postcss_modules_scope___postcss_modules_scope_2.2.0.tgz";
+      path = fetchurl {
+        name = "postcss_modules_scope___postcss_modules_scope_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz";
+        sha1 = "385cae013cc7743f5a7d7602d1073a89eaae62ee";
+      };
+    }
+    {
+      name = "postcss_modules_values___postcss_modules_values_1.3.0.tgz";
+      path = fetchurl {
+        name = "postcss_modules_values___postcss_modules_values_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz";
+        sha1 = "ecffa9d7e192518389f42ad0e83f72aec456ea20";
+      };
+    }
+    {
+      name = "postcss_modules_values___postcss_modules_values_3.0.0.tgz";
+      path = fetchurl {
+        name = "postcss_modules_values___postcss_modules_values_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz";
+        sha1 = "5b5000d6ebae29b4255301b4a3a54574423e7f10";
+      };
+    }
+    {
+      name = "postcss_normalize_charset___postcss_normalize_charset_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_normalize_charset___postcss_normalize_charset_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-5.0.1.tgz";
+        sha1 = "121559d1bebc55ac8d24af37f67bd4da9efd91d0";
+      };
+    }
+    {
+      name = "postcss_normalize_display_values___postcss_normalize_display_values_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_normalize_display_values___postcss_normalize_display_values_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.0.1.tgz";
+        sha1 = "62650b965981a955dffee83363453db82f6ad1fd";
+      };
+    }
+    {
+      name = "postcss_normalize_positions___postcss_normalize_positions_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_normalize_positions___postcss_normalize_positions_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-5.0.1.tgz";
+        sha1 = "868f6af1795fdfa86fbbe960dceb47e5f9492fe5";
+      };
+    }
+    {
+      name = "postcss_normalize_repeat_style___postcss_normalize_repeat_style_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_normalize_repeat_style___postcss_normalize_repeat_style_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.0.1.tgz";
+        sha1 = "cbc0de1383b57f5bb61ddd6a84653b5e8665b2b5";
+      };
+    }
+    {
+      name = "postcss_normalize_string___postcss_normalize_string_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_normalize_string___postcss_normalize_string_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-5.0.1.tgz";
+        sha1 = "d9eafaa4df78c7a3b973ae346ef0e47c554985b0";
+      };
+    }
+    {
+      name = "postcss_normalize_timing_functions___postcss_normalize_timing_functions_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_normalize_timing_functions___postcss_normalize_timing_functions_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.0.1.tgz";
+        sha1 = "8ee41103b9130429c6cbba736932b75c5e2cb08c";
+      };
+    }
+    {
+      name = "postcss_normalize_unicode___postcss_normalize_unicode_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_normalize_unicode___postcss_normalize_unicode_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.0.1.tgz";
+        sha1 = "82d672d648a411814aa5bf3ae565379ccd9f5e37";
+      };
+    }
+    {
+      name = "postcss_normalize_url___postcss_normalize_url_5.0.2.tgz";
+      path = fetchurl {
+        name = "postcss_normalize_url___postcss_normalize_url_5.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-5.0.2.tgz";
+        sha1 = "ddcdfb7cede1270740cf3e4dfc6008bd96abc763";
+      };
+    }
+    {
+      name = "postcss_normalize_whitespace___postcss_normalize_whitespace_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_normalize_whitespace___postcss_normalize_whitespace_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.0.1.tgz";
+        sha1 = "b0b40b5bcac83585ff07ead2daf2dcfbeeef8e9a";
+      };
+    }
+    {
+      name = "postcss_ordered_values___postcss_ordered_values_5.0.2.tgz";
+      path = fetchurl {
+        name = "postcss_ordered_values___postcss_ordered_values_5.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-5.0.2.tgz";
+        sha1 = "1f351426977be00e0f765b3164ad753dac8ed044";
+      };
+    }
+    {
+      name = "postcss_reduce_initial___postcss_reduce_initial_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_reduce_initial___postcss_reduce_initial_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.0.1.tgz";
+        sha1 = "9d6369865b0f6f6f6b165a0ef5dc1a4856c7e946";
+      };
+    }
+    {
+      name = "postcss_reduce_transforms___postcss_reduce_transforms_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_reduce_transforms___postcss_reduce_transforms_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.0.1.tgz";
+        sha1 = "93c12f6a159474aa711d5269923e2383cedcf640";
+      };
+    }
+    {
+      name = "postcss_resolve_nested_selector___postcss_resolve_nested_selector_0.1.1.tgz";
+      path = fetchurl {
+        name = "postcss_resolve_nested_selector___postcss_resolve_nested_selector_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz";
+        sha1 = "29ccbc7c37dedfac304e9fff0bf1596b3f6a0e4e";
+      };
+    }
+    {
+      name = "postcss_safe_parser___postcss_safe_parser_4.0.2.tgz";
+      path = fetchurl {
+        name = "postcss_safe_parser___postcss_safe_parser_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-safe-parser/-/postcss-safe-parser-4.0.2.tgz";
+        sha1 = "a6d4e48f0f37d9f7c11b2a581bf00f8ba4870b96";
+      };
+    }
+    {
+      name = "postcss_sass___postcss_sass_0.4.4.tgz";
+      path = fetchurl {
+        name = "postcss_sass___postcss_sass_0.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-sass/-/postcss-sass-0.4.4.tgz";
+        sha1 = "91f0f3447b45ce373227a98b61f8d8f0785285a3";
+      };
+    }
+    {
+      name = "postcss_scss___postcss_scss_2.1.1.tgz";
+      path = fetchurl {
+        name = "postcss_scss___postcss_scss_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-2.1.1.tgz";
+        sha1 = "ec3a75fa29a55e016b90bf3269026c53c1d2b383";
+      };
+    }
+    {
+      name = "postcss_selector_parser___postcss_selector_parser_6.0.2.tgz";
+      path = fetchurl {
+        name = "postcss_selector_parser___postcss_selector_parser_6.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz";
+        sha1 = "934cf799d016c83411859e09dcecade01286ec5c";
+      };
+    }
+    {
+      name = "postcss_selector_parser___postcss_selector_parser_6.0.6.tgz";
+      path = fetchurl {
+        name = "postcss_selector_parser___postcss_selector_parser_6.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz";
+        sha1 = "2c5bba8174ac2f6981ab631a42ab0ee54af332ea";
+      };
+    }
+    {
+      name = "postcss_svgo___postcss_svgo_5.0.2.tgz";
+      path = fetchurl {
+        name = "postcss_svgo___postcss_svgo_5.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.0.2.tgz";
+        sha1 = "bc73c4ea4c5a80fbd4b45e29042c34ceffb9257f";
+      };
+    }
+    {
+      name = "postcss_syntax___postcss_syntax_0.36.2.tgz";
+      path = fetchurl {
+        name = "postcss_syntax___postcss_syntax_0.36.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-syntax/-/postcss-syntax-0.36.2.tgz";
+        sha1 = "f08578c7d95834574e5593a82dfbfa8afae3b51c";
+      };
+    }
+    {
+      name = "postcss_unique_selectors___postcss_unique_selectors_5.0.1.tgz";
+      path = fetchurl {
+        name = "postcss_unique_selectors___postcss_unique_selectors_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-5.0.1.tgz";
+        sha1 = "3be5c1d7363352eff838bd62b0b07a0abad43bfc";
+      };
+    }
+    {
+      name = "postcss_value_parser___postcss_value_parser_4.1.0.tgz";
+      path = fetchurl {
+        name = "postcss_value_parser___postcss_value_parser_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz";
+        sha1 = "443f6a20ced6481a2bda4fa8532a6e55d789a2cb";
+      };
+    }
+    {
+      name = "postcss___postcss_6.0.23.tgz";
+      path = fetchurl {
+        name = "postcss___postcss_6.0.23.tgz";
+        url  = "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz";
+        sha1 = "61c82cc328ac60e677645f979054eb98bc0e3324";
+      };
+    }
+    {
+      name = "postcss___postcss_7.0.35.tgz";
+      path = fetchurl {
+        name = "postcss___postcss_7.0.35.tgz";
+        url  = "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz";
+        sha1 = "d2be00b998f7f211d8a276974079f2e92b970e24";
+      };
+    }
+    {
+      name = "postcss___postcss_7.0.32.tgz";
+      path = fetchurl {
+        name = "postcss___postcss_7.0.32.tgz";
+        url  = "https://registry.yarnpkg.com/postcss/-/postcss-7.0.32.tgz";
+        sha1 = "4310d6ee347053da3433db2be492883d62cec59d";
+      };
+    }
+    {
+      name = "postcss___postcss_8.3.1.tgz";
+      path = fetchurl {
+        name = "postcss___postcss_8.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss/-/postcss-8.3.1.tgz";
+        sha1 = "71f380151c227f83b898294a46481f689f86b70a";
+      };
+    }
+    {
+      name = "prelude_ls___prelude_ls_1.2.1.tgz";
+      path = fetchurl {
+        name = "prelude_ls___prelude_ls_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz";
+        sha1 = "debc6489d7a6e6b0e7611888cec880337d316396";
+      };
+    }
+    {
+      name = "prismjs___prismjs_1.23.0.tgz";
+      path = fetchurl {
+        name = "prismjs___prismjs_1.23.0.tgz";
+        url  = "https://registry.yarnpkg.com/prismjs/-/prismjs-1.23.0.tgz";
+        sha1 = "d3b3967f7d72440690497652a9d40ff046067f33";
+      };
+    }
+    {
+      name = "private___private_0.1.8.tgz";
+      path = fetchurl {
+        name = "private___private_0.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz";
+        sha1 = "2381edb3689f7a53d653190060fcf822d2f368ff";
+      };
+    }
+    {
+      name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
+      path = fetchurl {
+        name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
+        sha1 = "7820d9b16120cc55ca9ae7792680ae7dba6d7fe2";
+      };
+    }
+    {
+      name = "process___process_0.11.10.tgz";
+      path = fetchurl {
+        name = "process___process_0.11.10.tgz";
+        url  = "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz";
+        sha1 = "7332300e840161bda3e69a1d1d91a7d4bc16f182";
+      };
+    }
+    {
+      name = "progress___progress_2.0.3.tgz";
+      path = fetchurl {
+        name = "progress___progress_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz";
+        sha1 = "7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8";
+      };
+    }
+    {
+      name = "promise_inflight___promise_inflight_1.0.1.tgz";
+      path = fetchurl {
+        name = "promise_inflight___promise_inflight_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz";
+        sha1 = "98472870bf228132fcbdd868129bad12c3c029e3";
+      };
+    }
+    {
+      name = "prop_types___prop_types_15.7.2.tgz";
+      path = fetchurl {
+        name = "prop_types___prop_types_15.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz";
+        sha1 = "52c41e75b8c87e72b9d9360e0206b99dcbffa6c5";
+      };
+    }
+    {
+      name = "prr___prr_1.0.1.tgz";
+      path = fetchurl {
+        name = "prr___prr_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz";
+        sha1 = "d3fc114ba06995a45ec6893f484ceb1d78f5f476";
+      };
+    }
+    {
+      name = "public_encrypt___public_encrypt_4.0.3.tgz";
+      path = fetchurl {
+        name = "public_encrypt___public_encrypt_4.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz";
+        sha1 = "4fcc9d77a07e48ba7527e7cbe0de33d0701331e0";
+      };
+    }
+    {
+      name = "pump___pump_2.0.1.tgz";
+      path = fetchurl {
+        name = "pump___pump_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz";
+        sha1 = "12399add6e4cf7526d973cbc8b5ce2e2908b3909";
+      };
+    }
+    {
+      name = "pump___pump_3.0.0.tgz";
+      path = fetchurl {
+        name = "pump___pump_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz";
+        sha1 = "b4a2116815bde2f4e1ea602354e8c75565107a64";
+      };
+    }
+    {
+      name = "pumpify___pumpify_1.5.1.tgz";
+      path = fetchurl {
+        name = "pumpify___pumpify_1.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz";
+        sha1 = "36513be246ab27570b1a374a5ce278bfd74370ce";
+      };
+    }
+    {
+      name = "punycode___punycode_1.3.2.tgz";
+      path = fetchurl {
+        name = "punycode___punycode_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz";
+        sha1 = "9653a036fb7c1ee42342f2325cceefea3926c48d";
+      };
+    }
+    {
+      name = "punycode___punycode_1.4.1.tgz";
+      path = fetchurl {
+        name = "punycode___punycode_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz";
+        sha1 = "c0d5a63b2718800ad8e1eb0fa5269c84dd41845e";
+      };
+    }
+    {
+      name = "punycode___punycode_2.1.1.tgz";
+      path = fetchurl {
+        name = "punycode___punycode_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz";
+        sha1 = "b58b010ac40c22c5657616c8d2c2c02c7bf479ec";
+      };
+    }
+    {
+      name = "querystring_es3___querystring_es3_0.2.1.tgz";
+      path = fetchurl {
+        name = "querystring_es3___querystring_es3_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz";
+        sha1 = "9ec61f79049875707d69414596fd907a4d711e73";
+      };
+    }
+    {
+      name = "querystring___querystring_0.2.0.tgz";
+      path = fetchurl {
+        name = "querystring___querystring_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz";
+        sha1 = "b209849203bb25df820da756e747005878521620";
+      };
+    }
+    {
+      name = "queue_microtask___queue_microtask_1.2.3.tgz";
+      path = fetchurl {
+        name = "queue_microtask___queue_microtask_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz";
+        sha1 = "4929228bbc724dfac43e0efb058caf7b6cfb6243";
+      };
+    }
+    {
+      name = "quick_lru___quick_lru_4.0.1.tgz";
+      path = fetchurl {
+        name = "quick_lru___quick_lru_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz";
+        sha1 = "5b8878f113a58217848c6482026c73e1ba57727f";
+      };
+    }
+    {
+      name = "randombytes___randombytes_2.1.0.tgz";
+      path = fetchurl {
+        name = "randombytes___randombytes_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz";
+        sha1 = "df6f84372f0270dc65cdf6291349ab7a473d4f2a";
+      };
+    }
+    {
+      name = "randomfill___randomfill_1.0.4.tgz";
+      path = fetchurl {
+        name = "randomfill___randomfill_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz";
+        sha1 = "c92196fc86ab42be983f1bf31778224931d61458";
+      };
+    }
+    {
+      name = "react_is___react_is_16.13.1.tgz";
+      path = fetchurl {
+        name = "react_is___react_is_16.13.1.tgz";
+        url  = "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz";
+        sha1 = "789729a4dc36de2999dc156dd6c1d9c18cea56a4";
+      };
+    }
+    {
+      name = "react_tabs___react_tabs_3.2.0.tgz";
+      path = fetchurl {
+        name = "react_tabs___react_tabs_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/react-tabs/-/react-tabs-3.2.0.tgz";
+        sha1 = "0fd8d595ef26d3684da876c27a3cc90392dffb40";
+      };
+    }
+    {
+      name = "read_pkg_up___read_pkg_up_2.0.0.tgz";
+      path = fetchurl {
+        name = "read_pkg_up___read_pkg_up_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz";
+        sha1 = "6b72a8048984e0c41e79510fd5e9fa99b3b549be";
+      };
+    }
+    {
+      name = "read_pkg_up___read_pkg_up_7.0.1.tgz";
+      path = fetchurl {
+        name = "read_pkg_up___read_pkg_up_7.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz";
+        sha1 = "f3a6135758459733ae2b95638056e1854e7ef507";
+      };
+    }
+    {
+      name = "read_pkg___read_pkg_2.0.0.tgz";
+      path = fetchurl {
+        name = "read_pkg___read_pkg_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz";
+        sha1 = "8ef1c0623c6a6db0dc6713c4bfac46332b2368f8";
+      };
+    }
+    {
+      name = "read_pkg___read_pkg_5.2.0.tgz";
+      path = fetchurl {
+        name = "read_pkg___read_pkg_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz";
+        sha1 = "7bf295438ca5a33e56cd30e053b34ee7250c93cc";
+      };
+    }
+    {
+      name = "readable_stream___readable_stream_2.3.7.tgz";
+      path = fetchurl {
+        name = "readable_stream___readable_stream_2.3.7.tgz";
+        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz";
+        sha1 = "1eca1cf711aef814c04f62252a36a62f6cb23b57";
+      };
+    }
+    {
+      name = "readable_stream___readable_stream_1.1.13.tgz";
+      path = fetchurl {
+        name = "readable_stream___readable_stream_1.1.13.tgz";
+        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.13.tgz";
+        sha1 = "f6eef764f514c89e2b9e23146a75ba106756d23e";
+      };
+    }
+    {
+      name = "readable_stream___readable_stream_3.6.0.tgz";
+      path = fetchurl {
+        name = "readable_stream___readable_stream_3.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz";
+        sha1 = "337bbda3adc0706bd3e024426a286d4b4b2c9198";
+      };
+    }
+    {
+      name = "readdirp___readdirp_2.2.1.tgz";
+      path = fetchurl {
+        name = "readdirp___readdirp_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz";
+        sha1 = "0e87622a3325aa33e892285caf8b4e846529a525";
+      };
+    }
+    {
+      name = "readdirp___readdirp_3.4.0.tgz";
+      path = fetchurl {
+        name = "readdirp___readdirp_3.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/readdirp/-/readdirp-3.4.0.tgz";
+        sha1 = "9fdccdf9e9155805449221ac645e8303ab5b9ada";
+      };
+    }
+    {
+      name = "redent___redent_3.0.0.tgz";
+      path = fetchurl {
+        name = "redent___redent_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz";
+        sha1 = "e557b7998316bb53c9f1f56fa626352c6963059f";
+      };
+    }
+    {
+      name = "redoc___redoc_2.0.0_rc.48.tgz";
+      path = fetchurl {
+        name = "redoc___redoc_2.0.0_rc.48.tgz";
+        url  = "https://registry.yarnpkg.com/redoc/-/redoc-2.0.0-rc.48.tgz";
+        sha1 = "5303cff67af5cba8a2b48dc1347a9854d45be835";
+      };
+    }
+    {
+      name = "reftools___reftools_1.1.8.tgz";
+      path = fetchurl {
+        name = "reftools___reftools_1.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/reftools/-/reftools-1.1.8.tgz";
+        sha1 = "cc08fd67eb913d779fd330657d010cc080c7d643";
+      };
+    }
+    {
+      name = "regenerate___regenerate_1.4.0.tgz";
+      path = fetchurl {
+        name = "regenerate___regenerate_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz";
+        sha1 = "4a856ec4b56e4077c557589cae85e7a4c8869a11";
+      };
+    }
+    {
+      name = "regenerator_runtime___regenerator_runtime_0.10.5.tgz";
+      path = fetchurl {
+        name = "regenerator_runtime___regenerator_runtime_0.10.5.tgz";
+        url  = "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz";
+        sha1 = "336c3efc1220adcedda2c9fab67b5a7955a33658";
+      };
+    }
+    {
+      name = "regenerator_runtime___regenerator_runtime_0.11.1.tgz";
+      path = fetchurl {
+        name = "regenerator_runtime___regenerator_runtime_0.11.1.tgz";
+        url  = "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz";
+        sha1 = "be05ad7f9bf7d22e056f9726cee5017fbf19e2e9";
+      };
+    }
+    {
+      name = "regenerator_runtime___regenerator_runtime_0.13.7.tgz";
+      path = fetchurl {
+        name = "regenerator_runtime___regenerator_runtime_0.13.7.tgz";
+        url  = "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz";
+        sha1 = "cac2dacc8a1ea675feaabaeb8ae833898ae46f55";
+      };
+    }
+    {
+      name = "regex_not___regex_not_1.0.2.tgz";
+      path = fetchurl {
+        name = "regex_not___regex_not_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz";
+        sha1 = "1f4ece27e00b0b65e0247a6810e6a85d83a5752c";
+      };
+    }
+    {
+      name = "regexpp___regexpp_3.1.0.tgz";
+      path = fetchurl {
+        name = "regexpp___regexpp_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz";
+        sha1 = "206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2";
+      };
+    }
+    {
+      name = "regexpu_core___regexpu_core_1.0.0.tgz";
+      path = fetchurl {
+        name = "regexpu_core___regexpu_core_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz";
+        sha1 = "86a763f58ee4d7c2f6b102e4764050de7ed90c6b";
+      };
+    }
+    {
+      name = "regjsgen___regjsgen_0.2.0.tgz";
+      path = fetchurl {
+        name = "regjsgen___regjsgen_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz";
+        sha1 = "6c016adeac554f75823fe37ac05b92d5a4edb1f7";
+      };
+    }
+    {
+      name = "regjsparser___regjsparser_0.1.5.tgz";
+      path = fetchurl {
+        name = "regjsparser___regjsparser_0.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz";
+        sha1 = "7ee8f84dc6fa792d3fd0ae228d24bd949ead205c";
+      };
+    }
+    {
+      name = "remark_parse___remark_parse_9.0.0.tgz";
+      path = fetchurl {
+        name = "remark_parse___remark_parse_9.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/remark-parse/-/remark-parse-9.0.0.tgz";
+        sha1 = "4d20a299665880e4f4af5d90b7c7b8a935853640";
+      };
+    }
+    {
+      name = "remark_stringify___remark_stringify_9.0.1.tgz";
+      path = fetchurl {
+        name = "remark_stringify___remark_stringify_9.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-9.0.1.tgz";
+        sha1 = "576d06e910548b0a7191a71f27b33f1218862894";
+      };
+    }
+    {
+      name = "remark___remark_13.0.0.tgz";
+      path = fetchurl {
+        name = "remark___remark_13.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/remark/-/remark-13.0.0.tgz";
+        sha1 = "d15d9bf71a402f40287ebe36067b66d54868e425";
+      };
+    }
+    {
+      name = "remove_trailing_separator___remove_trailing_separator_1.1.0.tgz";
+      path = fetchurl {
+        name = "remove_trailing_separator___remove_trailing_separator_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz";
+        sha1 = "c24bce2a283adad5bc3f58e0d48249b92379d8ef";
+      };
+    }
+    {
+      name = "repeat_element___repeat_element_1.1.3.tgz";
+      path = fetchurl {
+        name = "repeat_element___repeat_element_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz";
+        sha1 = "782e0d825c0c5a3bb39731f84efee6b742e6b1ce";
+      };
+    }
+    {
+      name = "repeat_string___repeat_string_1.6.1.tgz";
+      path = fetchurl {
+        name = "repeat_string___repeat_string_1.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz";
+        sha1 = "8dcae470e1c88abc2d600fff4a776286da75e637";
+      };
+    }
+    {
+      name = "repeating___repeating_2.0.1.tgz";
+      path = fetchurl {
+        name = "repeating___repeating_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz";
+        sha1 = "5214c53a926d3552707527fbab415dbc08d06dda";
+      };
+    }
+    {
+      name = "require_directory___require_directory_2.1.1.tgz";
+      path = fetchurl {
+        name = "require_directory___require_directory_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz";
+        sha1 = "8c64ad5fd30dab1c976e2344ffe7f792a6a6df42";
+      };
+    }
+    {
+      name = "require_from_string___require_from_string_2.0.2.tgz";
+      path = fetchurl {
+        name = "require_from_string___require_from_string_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz";
+        sha1 = "89a7fdd938261267318eafe14f9c32e598c36909";
+      };
+    }
+    {
+      name = "require_main_filename___require_main_filename_2.0.0.tgz";
+      path = fetchurl {
+        name = "require_main_filename___require_main_filename_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz";
+        sha1 = "d0b329ecc7cc0f61649f62215be69af54aa8989b";
+      };
+    }
+    {
+      name = "resolve_cwd___resolve_cwd_2.0.0.tgz";
+      path = fetchurl {
+        name = "resolve_cwd___resolve_cwd_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz";
+        sha1 = "00a9f7387556e27038eae232caa372a6a59b665a";
+      };
+    }
+    {
+      name = "resolve_dir___resolve_dir_1.0.1.tgz";
+      path = fetchurl {
+        name = "resolve_dir___resolve_dir_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz";
+        sha1 = "79a40644c362be82f26effe739c9bb5382046f43";
+      };
+    }
+    {
+      name = "resolve_from___resolve_from_3.0.0.tgz";
+      path = fetchurl {
+        name = "resolve_from___resolve_from_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz";
+        sha1 = "b22c7af7d9d6881bc8b6e653335eebcb0a188748";
+      };
+    }
+    {
+      name = "resolve_from___resolve_from_4.0.0.tgz";
+      path = fetchurl {
+        name = "resolve_from___resolve_from_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz";
+        sha1 = "4abcd852ad32dd7baabfe9b40e00a36db5f392e6";
+      };
+    }
+    {
+      name = "resolve_from___resolve_from_5.0.0.tgz";
+      path = fetchurl {
+        name = "resolve_from___resolve_from_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz";
+        sha1 = "c35225843df8f776df21c57557bc087e9dfdfc69";
+      };
+    }
+    {
+      name = "resolve_url___resolve_url_0.2.1.tgz";
+      path = fetchurl {
+        name = "resolve_url___resolve_url_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz";
+        sha1 = "2c637fe77c893afd2a663fe21aa9080068e2052a";
+      };
+    }
+    {
+      name = "resolve___resolve_1.20.0.tgz";
+      path = fetchurl {
+        name = "resolve___resolve_1.20.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz";
+        sha1 = "629a013fb3f70755d6f0b7935cc1c2c5378b1975";
+      };
+    }
+    {
+      name = "resolve___resolve_1.17.0.tgz";
+      path = fetchurl {
+        name = "resolve___resolve_1.17.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz";
+        sha1 = "b25941b54968231cc2d1bb76a79cb7f2c0bf8444";
+      };
+    }
+    {
+      name = "resolve___resolve_1.14.0.tgz";
+      path = fetchurl {
+        name = "resolve___resolve_1.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.14.0.tgz";
+        sha1 = "6d14c6f9db9f8002071332b600039abf82053f64";
+      };
+    }
+    {
+      name = "ret___ret_0.1.15.tgz";
+      path = fetchurl {
+        name = "ret___ret_0.1.15.tgz";
+        url  = "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz";
+        sha1 = "b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc";
+      };
+    }
+    {
+      name = "reusify___reusify_1.0.4.tgz";
+      path = fetchurl {
+        name = "reusify___reusify_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz";
+        sha1 = "90da382b1e126efc02146e90845a88db12925d76";
+      };
+    }
+    {
+      name = "rgb_regex___rgb_regex_1.0.1.tgz";
+      path = fetchurl {
+        name = "rgb_regex___rgb_regex_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz";
+        sha1 = "c0e0d6882df0e23be254a475e8edd41915feaeb1";
+      };
+    }
+    {
+      name = "rgba_regex___rgba_regex_1.0.0.tgz";
+      path = fetchurl {
+        name = "rgba_regex___rgba_regex_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz";
+        sha1 = "43374e2e2ca0968b0ef1523460b7d730ff22eeb3";
+      };
+    }
+    {
+      name = "rimraf___rimraf_2.6.3.tgz";
+      path = fetchurl {
+        name = "rimraf___rimraf_2.6.3.tgz";
+        url  = "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz";
+        sha1 = "b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab";
+      };
+    }
+    {
+      name = "rimraf___rimraf_2.7.1.tgz";
+      path = fetchurl {
+        name = "rimraf___rimraf_2.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz";
+        sha1 = "35797f13a7fdadc566142c29d4f07ccad483e3ec";
+      };
+    }
+    {
+      name = "rimraf___rimraf_3.0.2.tgz";
+      path = fetchurl {
+        name = "rimraf___rimraf_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz";
+        sha1 = "f1a5402ba6220ad52cc1282bac1ae3aa49fd061a";
+      };
+    }
+    {
+      name = "ripemd160___ripemd160_2.0.2.tgz";
+      path = fetchurl {
+        name = "ripemd160___ripemd160_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz";
+        sha1 = "a1c1a6f624751577ba5d07914cbc92850585890c";
+      };
+    }
+    {
+      name = "run_parallel___run_parallel_1.2.0.tgz";
+      path = fetchurl {
+        name = "run_parallel___run_parallel_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz";
+        sha1 = "66d1368da7bdf921eb9d95bd1a9229e7f21a43ee";
+      };
+    }
+    {
+      name = "run_queue___run_queue_1.0.3.tgz";
+      path = fetchurl {
+        name = "run_queue___run_queue_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz";
+        sha1 = "e848396f057d223f24386924618e25694161ec47";
+      };
+    }
+    {
+      name = "rw___rw_1.3.3.tgz";
+      path = fetchurl {
+        name = "rw___rw_1.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/rw/-/rw-1.3.3.tgz";
+        sha1 = "3f862dfa91ab766b14885ef4d01124bfda074fb4";
+      };
+    }
+    {
+      name = "safe_buffer___safe_buffer_5.2.1.tgz";
+      path = fetchurl {
+        name = "safe_buffer___safe_buffer_5.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz";
+        sha1 = "1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6";
+      };
+    }
+    {
+      name = "safe_buffer___safe_buffer_5.1.2.tgz";
+      path = fetchurl {
+        name = "safe_buffer___safe_buffer_5.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz";
+        sha1 = "991ec69d296e0313747d59bdfd2b745c35f8828d";
+      };
+    }
+    {
+      name = "safe_regex___safe_regex_1.1.0.tgz";
+      path = fetchurl {
+        name = "safe_regex___safe_regex_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz";
+        sha1 = "40a3669f3b077d1e943d44629e157dd48023bf2e";
+      };
+    }
+    {
+      name = "safer_buffer___safer_buffer_2.1.2.tgz";
+      path = fetchurl {
+        name = "safer_buffer___safer_buffer_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz";
+        sha1 = "44fa161b0187b9549dd84bb91802f9bd8385cd6a";
+      };
+    }
+    {
+      name = "schema_utils___schema_utils_1.0.0.tgz";
+      path = fetchurl {
+        name = "schema_utils___schema_utils_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz";
+        sha1 = "0b79a93204d7b600d4b2850d1f66c2a34951c770";
+      };
+    }
+    {
+      name = "schema_utils___schema_utils_2.7.0.tgz";
+      path = fetchurl {
+        name = "schema_utils___schema_utils_2.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz";
+        sha1 = "17151f76d8eae67fbbf77960c33c676ad9f4efc7";
+      };
+    }
+    {
+      name = "schema_utils___schema_utils_3.0.0.tgz";
+      path = fetchurl {
+        name = "schema_utils___schema_utils_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz";
+        sha1 = "67502f6aa2b66a2d4032b4279a2944978a0913ef";
+      };
+    }
+    {
+      name = "seekout___seekout_1.0.2.tgz";
+      path = fetchurl {
+        name = "seekout___seekout_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/seekout/-/seekout-1.0.2.tgz";
+        sha1 = "09ba9f1bd5b46fbb134718eb19a68382cbb1b9c9";
+      };
+    }
+    {
+      name = "select___select_1.1.2.tgz";
+      path = fetchurl {
+        name = "select___select_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz";
+        sha1 = "0e7350acdec80b1108528786ec1d4418d11b396d";
+      };
+    }
+    {
+      name = "semver___semver_5.7.1.tgz";
+      path = fetchurl {
+        name = "semver___semver_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz";
+        sha1 = "a954f931aeba508d307bbf069eff0c01c96116f7";
+      };
+    }
+    {
+      name = "semver___semver_6.3.0.tgz";
+      path = fetchurl {
+        name = "semver___semver_6.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz";
+        sha1 = "ee0a64c8af5e8ceea67687b133761e1becbd1d3d";
+      };
+    }
+    {
+      name = "semver___semver_7.3.2.tgz";
+      path = fetchurl {
+        name = "semver___semver_7.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz";
+        sha1 = "604962b052b81ed0786aae84389ffba70ffd3938";
+      };
+    }
+    {
+      name = "semver___semver_7.3.5.tgz";
+      path = fetchurl {
+        name = "semver___semver_7.3.5.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz";
+        sha1 = "0b621c879348d8998e4b0e4be94b3f12e6018ef7";
+      };
+    }
+    {
+      name = "serialize_javascript___serialize_javascript_3.1.0.tgz";
+      path = fetchurl {
+        name = "serialize_javascript___serialize_javascript_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-3.1.0.tgz";
+        sha1 = "8bf3a9170712664ef2561b44b691eafe399214ea";
+      };
+    }
+    {
+      name = "serialize_javascript___serialize_javascript_4.0.0.tgz";
+      path = fetchurl {
+        name = "serialize_javascript___serialize_javascript_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz";
+        sha1 = "b525e1238489a5ecfc42afacc3fe99e666f4b1aa";
+      };
+    }
+    {
+      name = "set_blocking___set_blocking_2.0.0.tgz";
+      path = fetchurl {
+        name = "set_blocking___set_blocking_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz";
+        sha1 = "045f9782d011ae9a6803ddd382b24392b3d890f7";
+      };
+    }
+    {
+      name = "set_value___set_value_2.0.1.tgz";
+      path = fetchurl {
+        name = "set_value___set_value_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz";
+        sha1 = "a18d40530e6f07de4228c7defe4227af8cad005b";
+      };
+    }
+    {
+      name = "setimmediate___setimmediate_1.0.5.tgz";
+      path = fetchurl {
+        name = "setimmediate___setimmediate_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz";
+        sha1 = "290cbb232e306942d7d7ea9b83732ab7856f8285";
+      };
+    }
+    {
+      name = "sha.js___sha.js_2.4.11.tgz";
+      path = fetchurl {
+        name = "sha.js___sha.js_2.4.11.tgz";
+        url  = "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz";
+        sha1 = "37a5cf0b81ecbc6943de109ba2960d1b26584ae7";
+      };
+    }
+    {
+      name = "shebang_command___shebang_command_1.2.0.tgz";
+      path = fetchurl {
+        name = "shebang_command___shebang_command_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz";
+        sha1 = "44aac65b695b03398968c39f363fee5deafdf1ea";
+      };
+    }
+    {
+      name = "shebang_command___shebang_command_2.0.0.tgz";
+      path = fetchurl {
+        name = "shebang_command___shebang_command_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz";
+        sha1 = "ccd0af4f8835fbdc265b82461aaf0c36663f34ea";
+      };
+    }
+    {
+      name = "shebang_regex___shebang_regex_1.0.0.tgz";
+      path = fetchurl {
+        name = "shebang_regex___shebang_regex_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz";
+        sha1 = "da42f49740c0b42db2ca9728571cb190c98efea3";
+      };
+    }
+    {
+      name = "shebang_regex___shebang_regex_3.0.0.tgz";
+      path = fetchurl {
+        name = "shebang_regex___shebang_regex_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz";
+        sha1 = "ae16f1644d873ecad843b0307b143362d4c42172";
+      };
+    }
+    {
+      name = "shelljs___shelljs_0.3.0.tgz";
+      path = fetchurl {
+        name = "shelljs___shelljs_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/shelljs/-/shelljs-0.3.0.tgz";
+        sha1 = "3596e6307a781544f591f37da618360f31db57b1";
+      };
+    }
+    {
+      name = "should_equal___should_equal_2.0.0.tgz";
+      path = fetchurl {
+        name = "should_equal___should_equal_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/should-equal/-/should-equal-2.0.0.tgz";
+        sha1 = "6072cf83047360867e68e98b09d71143d04ee0c3";
+      };
+    }
+    {
+      name = "should_format___should_format_3.0.3.tgz";
+      path = fetchurl {
+        name = "should_format___should_format_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/should-format/-/should-format-3.0.3.tgz";
+        sha1 = "9bfc8f74fa39205c53d38c34d717303e277124f1";
+      };
+    }
+    {
+      name = "should_type_adaptors___should_type_adaptors_1.1.0.tgz";
+      path = fetchurl {
+        name = "should_type_adaptors___should_type_adaptors_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/should-type-adaptors/-/should-type-adaptors-1.1.0.tgz";
+        sha1 = "401e7f33b5533033944d5cd8bf2b65027792e27a";
+      };
+    }
+    {
+      name = "should_type___should_type_1.4.0.tgz";
+      path = fetchurl {
+        name = "should_type___should_type_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/should-type/-/should-type-1.4.0.tgz";
+        sha1 = "0756d8ce846dfd09843a6947719dfa0d4cff5cf3";
+      };
+    }
+    {
+      name = "should_util___should_util_1.0.1.tgz";
+      path = fetchurl {
+        name = "should_util___should_util_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/should-util/-/should-util-1.0.1.tgz";
+        sha1 = "fb0d71338f532a3a149213639e2d32cbea8bcb28";
+      };
+    }
+    {
+      name = "should___should_13.2.3.tgz";
+      path = fetchurl {
+        name = "should___should_13.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/should/-/should-13.2.3.tgz";
+        sha1 = "96d8e5acf3e97b49d89b51feaa5ae8d07ef58f10";
+      };
+    }
+    {
+      name = "signal_exit___signal_exit_3.0.3.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 = "slash___slash_1.0.0.tgz";
+      path = fetchurl {
+        name = "slash___slash_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz";
+        sha1 = "c41f2f6c39fc16d1cd17ad4b5d896114ae470d55";
+      };
+    }
+    {
+      name = "slash___slash_3.0.0.tgz";
+      path = fetchurl {
+        name = "slash___slash_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz";
+        sha1 = "6539be870c165adbd5240220dbe361f1bc4d4634";
+      };
+    }
+    {
+      name = "slice_ansi___slice_ansi_2.1.0.tgz";
+      path = fetchurl {
+        name = "slice_ansi___slice_ansi_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz";
+        sha1 = "cacd7693461a637a5788d92a7dd4fba068e81636";
+      };
+    }
+    {
+      name = "slice_ansi___slice_ansi_4.0.0.tgz";
+      path = fetchurl {
+        name = "slice_ansi___slice_ansi_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz";
+        sha1 = "500e8dd0fd55b05815086255b3195adf2a45fe6b";
+      };
+    }
+    {
+      name = "slugify___slugify_1.4.7.tgz";
+      path = fetchurl {
+        name = "slugify___slugify_1.4.7.tgz";
+        url  = "https://registry.yarnpkg.com/slugify/-/slugify-1.4.7.tgz";
+        sha1 = "e42359d505afd84a44513280868e31202a79a628";
+      };
+    }
+    {
+      name = "snapdragon_node___snapdragon_node_2.1.1.tgz";
+      path = fetchurl {
+        name = "snapdragon_node___snapdragon_node_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz";
+        sha1 = "6c175f86ff14bdb0724563e8f3c1b021a286853b";
+      };
+    }
+    {
+      name = "snapdragon_util___snapdragon_util_3.0.1.tgz";
+      path = fetchurl {
+        name = "snapdragon_util___snapdragon_util_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz";
+        sha1 = "f956479486f2acd79700693f6f7b805e45ab56e2";
+      };
+    }
+    {
+      name = "snapdragon___snapdragon_0.8.2.tgz";
+      path = fetchurl {
+        name = "snapdragon___snapdragon_0.8.2.tgz";
+        url  = "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz";
+        sha1 = "64922e7c565b0e14204ba1aa7d6964278d25182d";
+      };
+    }
+    {
+      name = "source_list_map___source_list_map_2.0.1.tgz";
+      path = fetchurl {
+        name = "source_list_map___source_list_map_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz";
+        sha1 = "3993bd873bfc48479cca9ea3a547835c7c154b34";
+      };
+    }
+    {
+      name = "source_map_js___source_map_js_0.6.2.tgz";
+      path = fetchurl {
+        name = "source_map_js___source_map_js_0.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-js/-/source-map-js-0.6.2.tgz";
+        sha1 = "0bb5de631b41cfbda6cfba8bd05a80efdfd2385e";
+      };
+    }
+    {
+      name = "source_map_resolve___source_map_resolve_0.5.3.tgz";
+      path = fetchurl {
+        name = "source_map_resolve___source_map_resolve_0.5.3.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz";
+        sha1 = "190866bece7553e1f8f267a2ee82c606b5509a1a";
+      };
+    }
+    {
+      name = "source_map_support___source_map_support_0.4.18.tgz";
+      path = fetchurl {
+        name = "source_map_support___source_map_support_0.4.18.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz";
+        sha1 = "0286a6de8be42641338594e97ccea75f0a2c585f";
+      };
+    }
+    {
+      name = "source_map_support___source_map_support_0.5.19.tgz";
+      path = fetchurl {
+        name = "source_map_support___source_map_support_0.5.19.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz";
+        sha1 = "a98b62f86dcaf4f67399648c085291ab9e8fed61";
+      };
+    }
+    {
+      name = "source_map_url___source_map_url_0.4.0.tgz";
+      path = fetchurl {
+        name = "source_map_url___source_map_url_0.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz";
+        sha1 = "3e935d7ddd73631b97659956d55128e87b5084a3";
+      };
+    }
+    {
+      name = "source_map___source_map_0.5.7.tgz";
+      path = fetchurl {
+        name = "source_map___source_map_0.5.7.tgz";
+        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz";
+        sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc";
+      };
+    }
+    {
+      name = "source_map___source_map_0.6.1.tgz";
+      path = fetchurl {
+        name = "source_map___source_map_0.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz";
+        sha1 = "74722af32e9614e9c287a8d0bbde48b5e2f1a263";
+      };
+    }
+    {
+      name = "source_map___source_map_0.7.3.tgz";
+      path = fetchurl {
+        name = "source_map___source_map_0.7.3.tgz";
+        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz";
+        sha1 = "5302f8169031735226544092e64981f751750383";
+      };
+    }
+    {
+      name = "spdx_correct___spdx_correct_3.1.1.tgz";
+      path = fetchurl {
+        name = "spdx_correct___spdx_correct_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz";
+        sha1 = "dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9";
+      };
+    }
+    {
+      name = "spdx_exceptions___spdx_exceptions_2.3.0.tgz";
+      path = fetchurl {
+        name = "spdx_exceptions___spdx_exceptions_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz";
+        sha1 = "3f28ce1a77a00372683eade4a433183527a2163d";
+      };
+    }
+    {
+      name = "spdx_expression_parse___spdx_expression_parse_3.0.1.tgz";
+      path = fetchurl {
+        name = "spdx_expression_parse___spdx_expression_parse_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz";
+        sha1 = "cf70f50482eefdc98e3ce0a6833e4a53ceeba679";
+      };
+    }
+    {
+      name = "spdx_license_ids___spdx_license_ids_3.0.7.tgz";
+      path = fetchurl {
+        name = "spdx_license_ids___spdx_license_ids_3.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz";
+        sha1 = "e9c18a410e5ed7e12442a549fbd8afa767038d65";
+      };
+    }
+    {
+      name = "specificity___specificity_0.4.1.tgz";
+      path = fetchurl {
+        name = "specificity___specificity_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/specificity/-/specificity-0.4.1.tgz";
+        sha1 = "aab5e645012db08ba182e151165738d00887b019";
+      };
+    }
+    {
+      name = "split_string___split_string_3.1.0.tgz";
+      path = fetchurl {
+        name = "split_string___split_string_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz";
+        sha1 = "7cb09dda3a86585705c64b39a6466038682e8fe2";
+      };
+    }
+    {
+      name = "sprintf_js___sprintf_js_1.0.3.tgz";
+      path = fetchurl {
+        name = "sprintf_js___sprintf_js_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz";
+        sha1 = "04e6926f662895354f3dd015203633b857297e2c";
+      };
+    }
+    {
+      name = "ssri___ssri_6.0.2.tgz";
+      path = fetchurl {
+        name = "ssri___ssri_6.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/ssri/-/ssri-6.0.2.tgz";
+        sha1 = "157939134f20464e7301ddba3e90ffa8f7728ac5";
+      };
+    }
+    {
+      name = "ssri___ssri_8.0.0.tgz";
+      path = fetchurl {
+        name = "ssri___ssri_8.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ssri/-/ssri-8.0.0.tgz";
+        sha1 = "79ca74e21f8ceaeddfcb4b90143c458b8d988808";
+      };
+    }
+    {
+      name = "stable___stable_0.1.8.tgz";
+      path = fetchurl {
+        name = "stable___stable_0.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz";
+        sha1 = "836eb3c8382fe2936feaf544631017ce7d47a3cf";
+      };
+    }
+    {
+      name = "static_extend___static_extend_0.1.2.tgz";
+      path = fetchurl {
+        name = "static_extend___static_extend_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz";
+        sha1 = "60809c39cbff55337226fd5e0b520f341f1fb5c6";
+      };
+    }
+    {
+      name = "stickyfill___stickyfill_1.1.1.tgz";
+      path = fetchurl {
+        name = "stickyfill___stickyfill_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/stickyfill/-/stickyfill-1.1.1.tgz";
+        sha1 = "39413fee9d025c74a7e59ceecb23784cc0f17f02";
+      };
+    }
+    {
+      name = "stream_browserify___stream_browserify_2.0.2.tgz";
+      path = fetchurl {
+        name = "stream_browserify___stream_browserify_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz";
+        sha1 = "87521d38a44aa7ee91ce1cd2a47df0cb49dd660b";
+      };
+    }
+    {
+      name = "stream_each___stream_each_1.2.3.tgz";
+      path = fetchurl {
+        name = "stream_each___stream_each_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz";
+        sha1 = "ebe27a0c389b04fbcc233642952e10731afa9bae";
+      };
+    }
+    {
+      name = "stream_http___stream_http_2.8.3.tgz";
+      path = fetchurl {
+        name = "stream_http___stream_http_2.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz";
+        sha1 = "b2d242469288a5a27ec4fe8933acf623de6514fc";
+      };
+    }
+    {
+      name = "stream_shift___stream_shift_1.0.1.tgz";
+      path = fetchurl {
+        name = "stream_shift___stream_shift_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz";
+        sha1 = "d7088281559ab2778424279b0877da3c392d5a3d";
+      };
+    }
+    {
+      name = "string_width___string_width_3.1.0.tgz";
+      path = fetchurl {
+        name = "string_width___string_width_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz";
+        sha1 = "22767be21b62af1081574306f69ac51b62203961";
+      };
+    }
+    {
+      name = "string_width___string_width_4.2.0.tgz";
+      path = fetchurl {
+        name = "string_width___string_width_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz";
+        sha1 = "952182c46cc7b2c313d1596e623992bd163b72b5";
+      };
+    }
+    {
+      name = "string_width___string_width_4.2.2.tgz";
+      path = fetchurl {
+        name = "string_width___string_width_4.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz";
+        sha1 = "dafd4f9559a7585cfba529c6a0a4f73488ebd4c5";
+      };
+    }
+    {
+      name = "string.prototype.trimend___string.prototype.trimend_1.0.1.tgz";
+      path = fetchurl {
+        name = "string.prototype.trimend___string.prototype.trimend_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz";
+        sha1 = "85812a6b847ac002270f5808146064c995fb6913";
+      };
+    }
+    {
+      name = "string.prototype.trimleft___string.prototype.trimleft_2.1.0.tgz";
+      path = fetchurl {
+        name = "string.prototype.trimleft___string.prototype.trimleft_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz";
+        sha1 = "6cc47f0d7eb8d62b0f3701611715a3954591d634";
+      };
+    }
+    {
+      name = "string.prototype.trimright___string.prototype.trimright_2.1.0.tgz";
+      path = fetchurl {
+        name = "string.prototype.trimright___string.prototype.trimright_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz";
+        sha1 = "669d164be9df9b6f7559fa8e89945b168a5a6c58";
+      };
+    }
+    {
+      name = "string.prototype.trimstart___string.prototype.trimstart_1.0.1.tgz";
+      path = fetchurl {
+        name = "string.prototype.trimstart___string.prototype.trimstart_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz";
+        sha1 = "14af6d9f34b053f7cfc89b72f8f2ee14b9039a54";
+      };
+    }
+    {
+      name = "string_decoder___string_decoder_1.3.0.tgz";
+      path = fetchurl {
+        name = "string_decoder___string_decoder_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz";
+        sha1 = "42f114594a46cf1a8e30b0a84f56c78c3edac21e";
+      };
+    }
+    {
+      name = "string_decoder___string_decoder_0.10.31.tgz";
+      path = fetchurl {
+        name = "string_decoder___string_decoder_0.10.31.tgz";
+        url  = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz";
+        sha1 = "62e203bc41766c6c28c9fc84301dab1c5310fa94";
+      };
+    }
+    {
+      name = "string_decoder___string_decoder_1.1.1.tgz";
+      path = fetchurl {
+        name = "string_decoder___string_decoder_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz";
+        sha1 = "9cf1611ba62685d7030ae9e4ba34149c3af03fc8";
+      };
+    }
+    {
+      name = "strip_ansi___strip_ansi_3.0.1.tgz";
+      path = fetchurl {
+        name = "strip_ansi___strip_ansi_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz";
+        sha1 = "6a385fb8853d952d5ff05d0e8aaf94278dc63dcf";
+      };
+    }
+    {
+      name = "strip_ansi___strip_ansi_5.2.0.tgz";
+      path = fetchurl {
+        name = "strip_ansi___strip_ansi_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz";
+        sha1 = "8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae";
+      };
+    }
+    {
+      name = "strip_ansi___strip_ansi_6.0.0.tgz";
+      path = fetchurl {
+        name = "strip_ansi___strip_ansi_6.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz";
+        sha1 = "0b1571dd7669ccd4f3e06e14ef1eed26225ae532";
+      };
+    }
+    {
+      name = "strip_bom___strip_bom_3.0.0.tgz";
+      path = fetchurl {
+        name = "strip_bom___strip_bom_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz";
+        sha1 = "2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3";
+      };
+    }
+    {
+      name = "strip_comments___strip_comments_2.0.1.tgz";
+      path = fetchurl {
+        name = "strip_comments___strip_comments_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/strip-comments/-/strip-comments-2.0.1.tgz";
+        sha1 = "4ad11c3fbcac177a67a40ac224ca339ca1c1ba9b";
+      };
+    }
+    {
+      name = "strip_indent___strip_indent_3.0.0.tgz";
+      path = fetchurl {
+        name = "strip_indent___strip_indent_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz";
+        sha1 = "c32e1cee940b6b3432c771bc2c54bcce73cd3001";
+      };
+    }
+    {
+      name = "strip_json_comments___strip_json_comments_1.0.4.tgz";
+      path = fetchurl {
+        name = "strip_json_comments___strip_json_comments_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz";
+        sha1 = "1e15fbcac97d3ee99bf2d73b4c656b082bbafb91";
+      };
+    }
+    {
+      name = "strip_json_comments___strip_json_comments_3.1.1.tgz";
+      path = fetchurl {
+        name = "strip_json_comments___strip_json_comments_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz";
+        sha1 = "31f1281b3832630434831c310c01cccda8cbe006";
+      };
+    }
+    {
+      name = "style_loader___style_loader_1.2.1.tgz";
+      path = fetchurl {
+        name = "style_loader___style_loader_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/style-loader/-/style-loader-1.2.1.tgz";
+        sha1 = "c5cbbfbf1170d076cfdd86e0109c5bba114baa1a";
+      };
+    }
+    {
+      name = "style_search___style_search_0.1.0.tgz";
+      path = fetchurl {
+        name = "style_search___style_search_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz";
+        sha1 = "7958c793e47e32e07d2b5cafe5c0bf8e12e77902";
+      };
+    }
+    {
+      name = "stylehacks___stylehacks_5.0.1.tgz";
+      path = fetchurl {
+        name = "stylehacks___stylehacks_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.0.1.tgz";
+        sha1 = "323ec554198520986806388c7fdaebc38d2c06fb";
+      };
+    }
+    {
+      name = "stylelint_config_recommended___stylelint_config_recommended_3.0.0.tgz";
+      path = fetchurl {
+        name = "stylelint_config_recommended___stylelint_config_recommended_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint-config-recommended/-/stylelint-config-recommended-3.0.0.tgz";
+        sha1 = "e0e547434016c5539fe2650afd58049a2fd1d657";
+      };
+    }
+    {
+      name = "stylelint_config_standard___stylelint_config_standard_20.0.0.tgz";
+      path = fetchurl {
+        name = "stylelint_config_standard___stylelint_config_standard_20.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint-config-standard/-/stylelint-config-standard-20.0.0.tgz";
+        sha1 = "06135090c9e064befee3d594289f50e295b5e20d";
+      };
+    }
+    {
+      name = "stylelint___stylelint_13.13.1.tgz";
+      path = fetchurl {
+        name = "stylelint___stylelint_13.13.1.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint/-/stylelint-13.13.1.tgz";
+        sha1 = "fca9c9f5de7990ab26a00f167b8978f083a18f3c";
+      };
+    }
+    {
+      name = "sugarss___sugarss_2.0.0.tgz";
+      path = fetchurl {
+        name = "sugarss___sugarss_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/sugarss/-/sugarss-2.0.0.tgz";
+        sha1 = "ddd76e0124b297d40bf3cca31c8b22ecb43bc61d";
+      };
+    }
+    {
+      name = "supports_color___supports_color_2.0.0.tgz";
+      path = fetchurl {
+        name = "supports_color___supports_color_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz";
+        sha1 = "535d045ce6b6363fa40117084629995e9df324c7";
+      };
+    }
+    {
+      name = "supports_color___supports_color_5.5.0.tgz";
+      path = fetchurl {
+        name = "supports_color___supports_color_5.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz";
+        sha1 = "e2e69a44ac8772f78a1ec0b35b689df6530efc8f";
+      };
+    }
+    {
+      name = "supports_color___supports_color_6.1.0.tgz";
+      path = fetchurl {
+        name = "supports_color___supports_color_6.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz";
+        sha1 = "0764abc69c63d5ac842dd4867e8d025e880df8f3";
+      };
+    }
+    {
+      name = "supports_color___supports_color_7.2.0.tgz";
+      path = fetchurl {
+        name = "supports_color___supports_color_7.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz";
+        sha1 = "1b7dcdcb32b8138801b3e478ba6a51caa89648da";
+      };
+    }
+    {
+      name = "svg_tags___svg_tags_1.0.0.tgz";
+      path = fetchurl {
+        name = "svg_tags___svg_tags_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz";
+        sha1 = "58f71cee3bd519b59d4b2a843b6c7de64ac04764";
+      };
+    }
+    {
+      name = "svgo___svgo_2.3.0.tgz";
+      path = fetchurl {
+        name = "svgo___svgo_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/svgo/-/svgo-2.3.0.tgz";
+        sha1 = "6b3af81d0cbd1e19c83f5f63cec2cb98c70b5373";
+      };
+    }
+    {
+      name = "swagger2openapi___swagger2openapi_6.2.3.tgz";
+      path = fetchurl {
+        name = "swagger2openapi___swagger2openapi_6.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/swagger2openapi/-/swagger2openapi-6.2.3.tgz";
+        sha1 = "4a8059f89d851aee4c9ab178f9b7190debd904e2";
+      };
+    }
+    {
+      name = "table___table_5.4.6.tgz";
+      path = fetchurl {
+        name = "table___table_5.4.6.tgz";
+        url  = "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz";
+        sha1 = "1292d19500ce3f86053b05f0e8e7e4a3bb21079e";
+      };
+    }
+    {
+      name = "table___table_6.7.0.tgz";
+      path = fetchurl {
+        name = "table___table_6.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/table/-/table-6.7.0.tgz";
+        sha1 = "26274751f0ee099c547f6cb91d3eff0d61d155b2";
+      };
+    }
+    {
+      name = "tapable___tapable_1.1.3.tgz";
+      path = fetchurl {
+        name = "tapable___tapable_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz";
+        sha1 = "a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2";
+      };
+    }
+    {
+      name = "tar___tar_6.0.2.tgz";
+      path = fetchurl {
+        name = "tar___tar_6.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/tar/-/tar-6.0.2.tgz";
+        sha1 = "5df17813468a6264ff14f766886c622b84ae2f39";
+      };
+    }
+    {
+      name = "terser_webpack_plugin___terser_webpack_plugin_1.4.4.tgz";
+      path = fetchurl {
+        name = "terser_webpack_plugin___terser_webpack_plugin_1.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz";
+        sha1 = "2c63544347324baafa9a56baaddf1634c8abfc2f";
+      };
+    }
+    {
+      name = "terser___terser_4.8.0.tgz";
+      path = fetchurl {
+        name = "terser___terser_4.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz";
+        sha1 = "63056343d7c70bb29f3af665865a46fe03a0df17";
+      };
+    }
+    {
+      name = "text_table___text_table_0.2.0.tgz";
+      path = fetchurl {
+        name = "text_table___text_table_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz";
+        sha1 = "7f5ee823ae805207c00af2df4a84ec3fcfa570b4";
+      };
+    }
+    {
+      name = "through2___through2_2.0.5.tgz";
+      path = fetchurl {
+        name = "through2___through2_2.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz";
+        sha1 = "01c1e39eb31d07cb7d03a96a70823260b23132cd";
+      };
+    }
+    {
+      name = "timers_browserify___timers_browserify_2.0.11.tgz";
+      path = fetchurl {
+        name = "timers_browserify___timers_browserify_2.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.11.tgz";
+        sha1 = "800b1f3eee272e5bc53ee465a04d0e804c31211f";
+      };
+    }
+    {
+      name = "timsort___timsort_0.3.0.tgz";
+      path = fetchurl {
+        name = "timsort___timsort_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz";
+        sha1 = "405411a8e7e6339fe64db9a234de11dc31e02bd4";
+      };
+    }
+    {
+      name = "tiny_emitter___tiny_emitter_2.1.0.tgz";
+      path = fetchurl {
+        name = "tiny_emitter___tiny_emitter_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz";
+        sha1 = "1d1a56edfc51c43e863cbb5382a72330e3555423";
+      };
+    }
+    {
+      name = "to_arraybuffer___to_arraybuffer_1.0.1.tgz";
+      path = fetchurl {
+        name = "to_arraybuffer___to_arraybuffer_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz";
+        sha1 = "7d229b1fcc637e466ca081180836a7aabff83f43";
+      };
+    }
+    {
+      name = "to_fast_properties___to_fast_properties_1.0.3.tgz";
+      path = fetchurl {
+        name = "to_fast_properties___to_fast_properties_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz";
+        sha1 = "b83571fa4d8c25b82e231b06e3a3055de4ca1a47";
+      };
+    }
+    {
+      name = "to_fast_properties___to_fast_properties_2.0.0.tgz";
+      path = fetchurl {
+        name = "to_fast_properties___to_fast_properties_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz";
+        sha1 = "dc5e698cbd079265bc73e0377681a4e4e83f616e";
+      };
+    }
+    {
+      name = "to_object_path___to_object_path_0.3.0.tgz";
+      path = fetchurl {
+        name = "to_object_path___to_object_path_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz";
+        sha1 = "297588b7b0e7e0ac08e04e672f85c1f4999e17af";
+      };
+    }
+    {
+      name = "to_regex_range___to_regex_range_2.1.1.tgz";
+      path = fetchurl {
+        name = "to_regex_range___to_regex_range_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz";
+        sha1 = "7c80c17b9dfebe599e27367e0d4dd5590141db38";
+      };
+    }
+    {
+      name = "to_regex_range___to_regex_range_5.0.1.tgz";
+      path = fetchurl {
+        name = "to_regex_range___to_regex_range_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz";
+        sha1 = "1648c44aae7c8d988a326018ed72f5b4dd0392e4";
+      };
+    }
+    {
+      name = "to_regex___to_regex_3.0.2.tgz";
+      path = fetchurl {
+        name = "to_regex___to_regex_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz";
+        sha1 = "13cfdd9b336552f30b51f33a8ae1b42a7a7599ce";
+      };
+    }
+    {
+      name = "trim_newlines___trim_newlines_3.0.0.tgz";
+      path = fetchurl {
+        name = "trim_newlines___trim_newlines_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.0.tgz";
+        sha1 = "79726304a6a898aa8373427298d54c2ee8b1cb30";
+      };
+    }
+    {
+      name = "trim_right___trim_right_1.0.1.tgz";
+      path = fetchurl {
+        name = "trim_right___trim_right_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz";
+        sha1 = "cb2e1203067e0c8de1f614094b9fe45704ea6003";
+      };
+    }
+    {
+      name = "trough___trough_1.0.5.tgz";
+      path = fetchurl {
+        name = "trough___trough_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/trough/-/trough-1.0.5.tgz";
+        sha1 = "b8b639cefad7d0bb2abd37d433ff8293efa5f406";
+      };
+    }
+    {
+      name = "tsconfig_paths___tsconfig_paths_3.9.0.tgz";
+      path = fetchurl {
+        name = "tsconfig_paths___tsconfig_paths_3.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz";
+        sha1 = "098547a6c4448807e8fcb8eae081064ee9a3c90b";
+      };
+    }
+    {
+      name = "tslib___tslib_1.13.0.tgz";
+      path = fetchurl {
+        name = "tslib___tslib_1.13.0.tgz";
+        url  = "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz";
+        sha1 = "c881e13cc7015894ed914862d276436fa9a47043";
+      };
+    }
+    {
+      name = "tslib___tslib_2.1.0.tgz";
+      path = fetchurl {
+        name = "tslib___tslib_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz";
+        sha1 = "da60860f1c2ecaa5703ab7d39bc05b6bf988b97a";
+      };
+    }
+    {
+      name = "tty_browserify___tty_browserify_0.0.0.tgz";
+      path = fetchurl {
+        name = "tty_browserify___tty_browserify_0.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz";
+        sha1 = "a157ba402da24e9bf957f9aa69d524eed42901a6";
+      };
+    }
+    {
+      name = "type_check___type_check_0.4.0.tgz";
+      path = fetchurl {
+        name = "type_check___type_check_0.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz";
+        sha1 = "07b8203bfa7056c0657050e3ccd2c37730bab8f1";
+      };
+    }
+    {
+      name = "type_fest___type_fest_0.18.1.tgz";
+      path = fetchurl {
+        name = "type_fest___type_fest_0.18.1.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz";
+        sha1 = "db4bc151a4a2cf4eebf9add5db75508db6cc841f";
+      };
+    }
+    {
+      name = "type_fest___type_fest_0.6.0.tgz";
+      path = fetchurl {
+        name = "type_fest___type_fest_0.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz";
+        sha1 = "8d2a2370d3df886eb5c90ada1c5bf6188acf838b";
+      };
+    }
+    {
+      name = "type_fest___type_fest_0.8.1.tgz";
+      path = fetchurl {
+        name = "type_fest___type_fest_0.8.1.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz";
+        sha1 = "09e249ebde851d3b1e48d27c105444667f17b83d";
+      };
+    }
+    {
+      name = "typedarray_to_buffer___typedarray_to_buffer_3.1.5.tgz";
+      path = fetchurl {
+        name = "typedarray_to_buffer___typedarray_to_buffer_3.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz";
+        sha1 = "a97ee7a9ff42691b9f783ff1bc5112fe3fca9080";
+      };
+    }
+    {
+      name = "typedarray___typedarray_0.0.6.tgz";
+      path = fetchurl {
+        name = "typedarray___typedarray_0.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz";
+        sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777";
+      };
+    }
+    {
+      name = "unified___unified_9.2.1.tgz";
+      path = fetchurl {
+        name = "unified___unified_9.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/unified/-/unified-9.2.1.tgz";
+        sha1 = "ae18d5674c114021bfdbdf73865ca60f410215a3";
+      };
+    }
+    {
+      name = "union_value___union_value_1.0.1.tgz";
+      path = fetchurl {
+        name = "union_value___union_value_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz";
+        sha1 = "0b6fe7b835aecda61c6ea4d4f02c14221e109847";
+      };
+    }
+    {
+      name = "uniq___uniq_1.0.1.tgz";
+      path = fetchurl {
+        name = "uniq___uniq_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz";
+        sha1 = "b31c5ae8254844a3a8281541ce2b04b865a734ff";
+      };
+    }
+    {
+      name = "uniqs___uniqs_2.0.0.tgz";
+      path = fetchurl {
+        name = "uniqs___uniqs_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz";
+        sha1 = "ffede4b36b25290696e6e165d4a59edb998e6b02";
+      };
+    }
+    {
+      name = "unique_filename___unique_filename_1.1.1.tgz";
+      path = fetchurl {
+        name = "unique_filename___unique_filename_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz";
+        sha1 = "1d69769369ada0583103a1e6ae87681b56573230";
+      };
+    }
+    {
+      name = "unique_slug___unique_slug_2.0.2.tgz";
+      path = fetchurl {
+        name = "unique_slug___unique_slug_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz";
+        sha1 = "baabce91083fc64e945b0f3ad613e264f7cd4e6c";
+      };
+    }
+    {
+      name = "unist_util_find_all_after___unist_util_find_all_after_3.0.2.tgz";
+      path = fetchurl {
+        name = "unist_util_find_all_after___unist_util_find_all_after_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/unist-util-find-all-after/-/unist-util-find-all-after-3.0.2.tgz";
+        sha1 = "fdfecd14c5b7aea5e9ef38d5e0d5f774eeb561f6";
+      };
+    }
+    {
+      name = "unist_util_is___unist_util_is_4.1.0.tgz";
+      path = fetchurl {
+        name = "unist_util_is___unist_util_is_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.1.0.tgz";
+        sha1 = "976e5f462a7a5de73d94b706bac1b90671b57797";
+      };
+    }
+    {
+      name = "unist_util_stringify_position___unist_util_stringify_position_2.0.3.tgz";
+      path = fetchurl {
+        name = "unist_util_stringify_position___unist_util_stringify_position_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz";
+        sha1 = "cce3bfa1cdf85ba7375d1d5b17bdc4cada9bd9da";
+      };
+    }
+    {
+      name = "universalify___universalify_0.1.2.tgz";
+      path = fetchurl {
+        name = "universalify___universalify_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz";
+        sha1 = "b646f69be3942dabcecc9d6639c80dc105efaa66";
+      };
+    }
+    {
+      name = "unset_value___unset_value_1.0.0.tgz";
+      path = fetchurl {
+        name = "unset_value___unset_value_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz";
+        sha1 = "8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559";
+      };
+    }
+    {
+      name = "upath___upath_1.2.0.tgz";
+      path = fetchurl {
+        name = "upath___upath_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz";
+        sha1 = "8f66dbcd55a883acdae4408af8b035a5044c1894";
+      };
+    }
+    {
+      name = "uri_js___uri_js_4.4.1.tgz";
+      path = fetchurl {
+        name = "uri_js___uri_js_4.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz";
+        sha1 = "9b1a52595225859e55f669d928f88c6c57f2a77e";
+      };
+    }
+    {
+      name = "urix___urix_0.1.0.tgz";
+      path = fetchurl {
+        name = "urix___urix_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz";
+        sha1 = "da937f7a62e21fec1fd18d49b35c2935067a6c72";
+      };
+    }
+    {
+      name = "url_loader___url_loader_4.1.0.tgz";
+      path = fetchurl {
+        name = "url_loader___url_loader_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.0.tgz";
+        sha1 = "c7d6b0d6b0fccd51ab3ffc58a78d32b8d89a7be2";
+      };
+    }
+    {
+      name = "url_search_params_polyfill___url_search_params_polyfill_8.1.0.tgz";
+      path = fetchurl {
+        name = "url_search_params_polyfill___url_search_params_polyfill_8.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/url-search-params-polyfill/-/url-search-params-polyfill-8.1.0.tgz";
+        sha1 = "5c15b69687165bfd4f6c7d8a161d70d85385885b";
+      };
+    }
+    {
+      name = "url_template___url_template_2.0.8.tgz";
+      path = fetchurl {
+        name = "url_template___url_template_2.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/url-template/-/url-template-2.0.8.tgz";
+        sha1 = "fc565a3cccbff7730c775f5641f9555791439f21";
+      };
+    }
+    {
+      name = "url___url_0.11.0.tgz";
+      path = fetchurl {
+        name = "url___url_0.11.0.tgz";
+        url  = "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz";
+        sha1 = "3838e97cfc60521eb73c525a8e55bfdd9e2e28f1";
+      };
+    }
+    {
+      name = "use___use_3.1.1.tgz";
+      path = fetchurl {
+        name = "use___use_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz";
+        sha1 = "d50c8cac79a19fbc20f2911f56eb973f4e10070f";
+      };
+    }
+    {
+      name = "util_deprecate___util_deprecate_1.0.2.tgz";
+      path = fetchurl {
+        name = "util_deprecate___util_deprecate_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz";
+        sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf";
+      };
+    }
+    {
+      name = "util___util_0.10.3.tgz";
+      path = fetchurl {
+        name = "util___util_0.10.3.tgz";
+        url  = "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz";
+        sha1 = "7afb1afe50805246489e3db7fe0ed379336ac0f9";
+      };
+    }
+    {
+      name = "util___util_0.11.1.tgz";
+      path = fetchurl {
+        name = "util___util_0.11.1.tgz";
+        url  = "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz";
+        sha1 = "3236733720ec64bb27f6e26f421aaa2e1b588d61";
+      };
+    }
+    {
+      name = "v8_compile_cache___v8_compile_cache_2.1.1.tgz";
+      path = fetchurl {
+        name = "v8_compile_cache___v8_compile_cache_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz";
+        sha1 = "54bc3cdd43317bca91e35dcaf305b1a7237de745";
+      };
+    }
+    {
+      name = "v8_compile_cache___v8_compile_cache_2.3.0.tgz";
+      path = fetchurl {
+        name = "v8_compile_cache___v8_compile_cache_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz";
+        sha1 = "2de19618c66dc247dcfb6f99338035d8245a2cee";
+      };
+    }
+    {
+      name = "validate_npm_package_license___validate_npm_package_license_3.0.4.tgz";
+      path = fetchurl {
+        name = "validate_npm_package_license___validate_npm_package_license_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz";
+        sha1 = "fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a";
+      };
+    }
+    {
+      name = "vendors___vendors_1.0.4.tgz";
+      path = fetchurl {
+        name = "vendors___vendors_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/vendors/-/vendors-1.0.4.tgz";
+        sha1 = "e2b800a53e7a29b93506c3cf41100d16c4c4ad8e";
+      };
+    }
+    {
+      name = "vfile_message___vfile_message_2.0.4.tgz";
+      path = fetchurl {
+        name = "vfile_message___vfile_message_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/vfile-message/-/vfile-message-2.0.4.tgz";
+        sha1 = "5b43b88171d409eae58477d13f23dd41d52c371a";
+      };
+    }
+    {
+      name = "vfile___vfile_4.2.1.tgz";
+      path = fetchurl {
+        name = "vfile___vfile_4.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/vfile/-/vfile-4.2.1.tgz";
+        sha1 = "03f1dce28fc625c625bc6514350fbdb00fa9e624";
+      };
+    }
+    {
+      name = "vm_browserify___vm_browserify_1.1.2.tgz";
+      path = fetchurl {
+        name = "vm_browserify___vm_browserify_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz";
+        sha1 = "78641c488b8e6ca91a75f511e7a3b32a86e5dda0";
+      };
+    }
+    {
+      name = "watchpack_chokidar2___watchpack_chokidar2_2.0.0.tgz";
+      path = fetchurl {
+        name = "watchpack_chokidar2___watchpack_chokidar2_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz";
+        sha1 = "9948a1866cbbd6cb824dea13a7ed691f6c8ddff0";
+      };
+    }
+    {
+      name = "watchpack___watchpack_1.7.2.tgz";
+      path = fetchurl {
+        name = "watchpack___watchpack_1.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.2.tgz";
+        sha1 = "c02e4d4d49913c3e7e122c3325365af9d331e9aa";
+      };
+    }
+    {
+      name = "webpack_cli___webpack_cli_3.3.12.tgz";
+      path = fetchurl {
+        name = "webpack_cli___webpack_cli_3.3.12.tgz";
+        url  = "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.12.tgz";
+        sha1 = "94e9ada081453cd0aa609c99e500012fd3ad2d4a";
+      };
+    }
+    {
+      name = "webpack_manifest_plugin___webpack_manifest_plugin_2.2.0.tgz";
+      path = fetchurl {
+        name = "webpack_manifest_plugin___webpack_manifest_plugin_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/webpack-manifest-plugin/-/webpack-manifest-plugin-2.2.0.tgz";
+        sha1 = "19ca69b435b0baec7e29fbe90fb4015de2de4f16";
+      };
+    }
+    {
+      name = "webpack_sources___webpack_sources_1.4.3.tgz";
+      path = fetchurl {
+        name = "webpack_sources___webpack_sources_1.4.3.tgz";
+        url  = "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz";
+        sha1 = "eedd8ec0b928fbf1cbfe994e22d2d890f330a933";
+      };
+    }
+    {
+      name = "webpack___webpack_4.43.0.tgz";
+      path = fetchurl {
+        name = "webpack___webpack_4.43.0.tgz";
+        url  = "https://registry.yarnpkg.com/webpack/-/webpack-4.43.0.tgz";
+        sha1 = "c48547b11d563224c561dad1172c8aa0b8a678e6";
+      };
+    }
+    {
+      name = "which_module___which_module_2.0.0.tgz";
+      path = fetchurl {
+        name = "which_module___which_module_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz";
+        sha1 = "d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a";
+      };
+    }
+    {
+      name = "which___which_1.3.1.tgz";
+      path = fetchurl {
+        name = "which___which_1.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz";
+        sha1 = "a45043d54f5805316da8d62f9f50918d3da70b0a";
+      };
+    }
+    {
+      name = "which___which_2.0.2.tgz";
+      path = fetchurl {
+        name = "which___which_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz";
+        sha1 = "7c6a8dd0a636a0327e10b59c9286eee93f3f51b1";
+      };
+    }
+    {
+      name = "word_wrap___word_wrap_1.2.3.tgz";
+      path = fetchurl {
+        name = "word_wrap___word_wrap_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz";
+        sha1 = "610636f6b1f703891bd34771ccb17fb93b47079c";
+      };
+    }
+    {
+      name = "worker_farm___worker_farm_1.7.0.tgz";
+      path = fetchurl {
+        name = "worker_farm___worker_farm_1.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz";
+        sha1 = "26a94c5391bbca926152002f69b84a4bf772e5a8";
+      };
+    }
+    {
+      name = "wrap_ansi___wrap_ansi_5.1.0.tgz";
+      path = fetchurl {
+        name = "wrap_ansi___wrap_ansi_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz";
+        sha1 = "1fd1f67235d5b6d0fee781056001bfb694c03b09";
+      };
+    }
+    {
+      name = "wrap_ansi___wrap_ansi_6.2.0.tgz";
+      path = fetchurl {
+        name = "wrap_ansi___wrap_ansi_6.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz";
+        sha1 = "e9393ba07102e6c91a3b221478f0257cd2856e53";
+      };
+    }
+    {
+      name = "wrap_ansi___wrap_ansi_7.0.0.tgz";
+      path = fetchurl {
+        name = "wrap_ansi___wrap_ansi_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz";
+        sha1 = "67e145cff510a6a6984bdf1152911d69d2eb9e43";
+      };
+    }
+    {
+      name = "wrappy___wrappy_1.0.2.tgz";
+      path = fetchurl {
+        name = "wrappy___wrappy_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz";
+        sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
+      };
+    }
+    {
+      name = "write_file_atomic___write_file_atomic_3.0.3.tgz";
+      path = fetchurl {
+        name = "write_file_atomic___write_file_atomic_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz";
+        sha1 = "56bd5c5a5c70481cd19c571bd39ab965a5de56e8";
+      };
+    }
+    {
+      name = "write___write_1.0.3.tgz";
+      path = fetchurl {
+        name = "write___write_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz";
+        sha1 = "0800e14523b923a387e415123c865616aae0f5c3";
+      };
+    }
+    {
+      name = "xtend___xtend_4.0.2.tgz";
+      path = fetchurl {
+        name = "xtend___xtend_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz";
+        sha1 = "bb72779f5fa465186b1f438f674fa347fdb5db54";
+      };
+    }
+    {
+      name = "y18n___y18n_4.0.0.tgz";
+      path = fetchurl {
+        name = "y18n___y18n_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz";
+        sha1 = "95ef94f85ecc81d007c264e190a120f0a3c8566b";
+      };
+    }
+    {
+      name = "y18n___y18n_5.0.5.tgz";
+      path = fetchurl {
+        name = "y18n___y18n_5.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz";
+        sha1 = "8769ec08d03b1ea2df2500acef561743bbb9ab18";
+      };
+    }
+    {
+      name = "yallist___yallist_3.1.1.tgz";
+      path = fetchurl {
+        name = "yallist___yallist_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz";
+        sha1 = "dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd";
+      };
+    }
+    {
+      name = "yallist___yallist_4.0.0.tgz";
+      path = fetchurl {
+        name = "yallist___yallist_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz";
+        sha1 = "9bb92790d9c0effec63be73519e11a35019a3a72";
+      };
+    }
+    {
+      name = "yaml___yaml_1.10.0.tgz";
+      path = fetchurl {
+        name = "yaml___yaml_1.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz";
+        sha1 = "3b593add944876077d4d683fee01081bd9fff31e";
+      };
+    }
+    {
+      name = "yargs_parser___yargs_parser_13.1.2.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_13.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz";
+        sha1 = "130f09702ebaeef2650d54ce6e3e5706f7a4fb38";
+      };
+    }
+    {
+      name = "yargs_parser___yargs_parser_18.1.3.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_18.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz";
+        sha1 = "be68c4975c6b2abf469236b0c870362fab09a7b0";
+      };
+    }
+    {
+      name = "yargs_parser___yargs_parser_20.2.6.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_20.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.6.tgz";
+        sha1 = "69f920addf61aafc0b8b89002f5d66e28f2d8b20";
+      };
+    }
+    {
+      name = "yargs_parser___yargs_parser_20.2.7.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_20.2.7.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz";
+        sha1 = "61df85c113edfb5a7a4e36eb8aa60ef423cbc90a";
+      };
+    }
+    {
+      name = "yargs___yargs_13.3.2.tgz";
+      path = fetchurl {
+        name = "yargs___yargs_13.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz";
+        sha1 = "ad7ffefec1aa59565ac915f82dccb38a9c31a2dd";
+      };
+    }
+    {
+      name = "yargs___yargs_15.4.1.tgz";
+      path = fetchurl {
+        name = "yargs___yargs_15.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz";
+        sha1 = "0d87a16de01aee9d8bec2bfbf74f67851730f4f8";
+      };
+    }
+    {
+      name = "yargs___yargs_16.2.0.tgz";
+      path = fetchurl {
+        name = "yargs___yargs_16.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz";
+        sha1 = "1c82bf0f6b6a66eafce7ef30e376f49a12477f66";
+      };
+    }
+    {
+      name = "zwitch___zwitch_1.0.5.tgz";
+      path = fetchurl {
+        name = "zwitch___zwitch_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/zwitch/-/zwitch-1.0.5.tgz";
+        sha1 = "d11d7381ffed16b742f6af7b3f223d5cd9fe9920";
+      };
+    }
+  ];
+}
diff --git a/nixpkgs/pkgs/development/python-modules/apprise/default.nix b/nixpkgs/pkgs/development/python-modules/apprise/default.nix
index 61cfed3dbb9e..04a3e11be3ef 100644
--- a/nixpkgs/pkgs/development/python-modules/apprise/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/apprise/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi, installShellFiles
 , Babel, requests, requests_oauthlib, six, click, markdown, pyyaml, cryptography
-, pytestrunner, coverage, flake8, mock, pytestCheckHook, pytestcov, tox, gntp, sleekxmpp
+, pytest-runner, coverage, flake8, mock, pytestCheckHook, pytest-cov, tox, gntp, sleekxmpp
 }:
 
 buildPythonPackage rec {
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    pytestrunner coverage flake8 mock pytestCheckHook pytestcov tox gntp sleekxmpp
+    pytest-runner coverage flake8 mock pytestCheckHook pytest-cov tox gntp sleekxmpp
   ];
 
   disabledTests = [ "test_apprise_cli_nux_env"  ];
diff --git a/nixpkgs/pkgs/development/python-modules/archinfo/default.nix b/nixpkgs/pkgs/development/python-modules/archinfo/default.nix
index 580b05b82ade..60c3e8905b59 100644
--- a/nixpkgs/pkgs/development/python-modules/archinfo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/archinfo/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "archinfo";
-  version = "9.0.8761";
+  version = "9.0.9031";
 
   src = fetchFromGitHub {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-mdry5JQIW1b2p9a+c6RfHE6HYs54WKFofPkzFCgpUXg=";
+    sha256 = "sha256-pzBMyw5FwQV1FyhvOxUq39s96p0KKSrkEvJzhJQdS4E=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/argcomplete/default.nix b/nixpkgs/pkgs/development/python-modules/argcomplete/default.nix
index 6c62fd104f21..cf2f92557206 100644
--- a/nixpkgs/pkgs/development/python-modules/argcomplete/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/argcomplete/default.nix
@@ -3,7 +3,7 @@
 , importlib-metadata
 , pexpect
 , prettytable
-, requests_toolbelt
+, requests-toolbelt
 }:
 buildPythonPackage rec {
   pname = "argcomplete";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     importlib-metadata
     pexpect
     prettytable
-    requests_toolbelt
+    requests-toolbelt
   ];
 
   pythonImportsCheck = [ "argcomplete" ];
diff --git a/nixpkgs/pkgs/development/python-modules/aria2p/default.nix b/nixpkgs/pkgs/development/python-modules/aria2p/default.nix
index 9ea4fdf64b5b..2a7e6cb0df95 100644
--- a/nixpkgs/pkgs/development/python-modules/aria2p/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aria2p/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchFromGitHub, pythonOlder
-, aria2, poetry, pytest, pytestcov, pytest_xdist, responses
+, aria2, poetry, pytest, pytest-cov, pytest-xdist, responses
 , asciimatics, loguru, requests, setuptools, websocket-client
 }:
 
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     export HOME=$TMPDIR
   '';
 
-  checkInputs = [ aria2 responses pytest pytestcov pytest_xdist ];
+  checkInputs = [ aria2 responses pytest pytest-cov pytest-xdist ];
 
   # Tests are not all stable/deterministic,
   # they rely on actually running an aria2c daemon and communicating with it,
diff --git a/nixpkgs/pkgs/development/python-modules/arpeggio/default.nix b/nixpkgs/pkgs/development/python-modules/arpeggio/default.nix
index 97718a300693..5ad433413ce7 100644
--- a/nixpkgs/pkgs/development/python-modules/arpeggio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/arpeggio/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , glibcLocales
-, pytestrunner
+, pytest-runner
 , pytestCheckHook
 }:
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   LC_ALL = "en_US.UTF-8";
   buildInputs = [ glibcLocales ];
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
 
   checkInputs = [ pytestCheckHook ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/arrow/2.nix b/nixpkgs/pkgs/development/python-modules/arrow/2.nix
index d87f1ede3ccd..88864ec78b77 100644
--- a/nixpkgs/pkgs/development/python-modules/arrow/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/arrow/2.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
 , nose, chai, simplejson, backports_functools_lru_cache
-, python-dateutil, pytz, pytest-mock, sphinx, dateparser, pytestcov
+, python-dateutil, pytz, pytest-mock, sphinx, dateparser, pytest-cov
 , pytestCheckHook
 }:
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   checkInputs = [
     dateparser
     pytestCheckHook
-    pytestcov
+    pytest-cov
     pytest-mock
     pytz
     simplejson
diff --git a/nixpkgs/pkgs/development/python-modules/asgi-csrf/default.nix b/nixpkgs/pkgs/development/python-modules/asgi-csrf/default.nix
index 4988a04e8e44..a11d1c703044 100644
--- a/nixpkgs/pkgs/development/python-modules/asgi-csrf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asgi-csrf/default.nix
@@ -11,7 +11,7 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.8";
+  version = "0.9";
   pname = "asgi-csrf";
   disabled = isPy27;
 
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "simonw";
     repo = pname;
     rev = version;
-    sha256 = "sha256-0I/p9SjVVZhJQeR7s1R3tooP9XMNLPlcxl0dBSzsVaw=";
+    sha256 = "sha256-mmOsN2mW6eGtapq3xLqHK8hhSD0Gjzp3DsY5AGUlI8g=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/asyncio_mqtt/default.nix b/nixpkgs/pkgs/development/python-modules/asyncio_mqtt/default.nix
index 522f406da423..d8a378b082fc 100644
--- a/nixpkgs/pkgs/development/python-modules/asyncio_mqtt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asyncio_mqtt/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "asyncio_mqtt";
-  version = "0.9.1";
+  version = "0.10.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0550229cecde6ff1751c49dd5ea26b02bf52b7e9bbe9bf763da765f35bb281de";
+    sha256 = "0s94dvgh1fazycppki5m6f9d60hc4ykhqfznlzpwl4dzknxplpsz";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/atpublic/default.nix b/nixpkgs/pkgs/development/python-modules/atpublic/default.nix
index 5f00955eef92..4d96bcbe26b5 100644
--- a/nixpkgs/pkgs/development/python-modules/atpublic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/atpublic/default.nix
@@ -1,6 +1,6 @@
 { lib, isPy3k, pythonOlder, fetchPypi, buildPythonPackage
 , pytest
-, pytestcov
+, pytest-cov
 , sybil
 , typing-extensions
 }:
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    pytest pytestcov sybil
+    pytest pytest-cov sybil
   ];
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/awkward/default.nix b/nixpkgs/pkgs/development/python-modules/awkward/default.nix
index b39a72903876..53cd4671d2ca 100644
--- a/nixpkgs/pkgs/development/python-modules/awkward/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/awkward/default.nix
@@ -5,20 +5,21 @@
 , numba
 , numpy
 , pytestCheckHook
+, pyyaml
 , rapidjson
 }:
 
 buildPythonPackage rec {
   pname = "awkward";
-  version = "1.3.0";
+  version = "1.4.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "b6021694adec9813842bad1987b837e439dabaf5b0dff9041201d238fca71fb4";
+    sha256 = "25ae6114d5962c717cb87e3bc30a2f6eaa232b252cf8c51ba805b8f04664ae0d";
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ rapidjson ];
+  buildInputs = [ pyyaml rapidjson ];
   propagatedBuildInputs = [ numpy ];
 
   dontUseCmakeConfigure = true;
diff --git a/nixpkgs/pkgs/development/python-modules/awkward0/default.nix b/nixpkgs/pkgs/development/python-modules/awkward0/default.nix
index 3783f9776cd1..ce9f1eabc77a 100644
--- a/nixpkgs/pkgs/development/python-modules/awkward0/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/awkward0/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , numpy
-, pytestrunner
+, pytest-runner
 , pytestCheckHook
 }:
 
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "039pxzgll2yz8xpr6bw788ymvgvqgna5kgl9m6d9mzi4yhbjsjpx";
   };
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
 
   propagatedBuildInputs = [ numpy ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/aws-sam-translator/default.nix b/nixpkgs/pkgs/development/python-modules/aws-sam-translator/default.nix
index 166ba0b72498..bad8ee9bd2de 100644
--- a/nixpkgs/pkgs/development/python-modules/aws-sam-translator/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aws-sam-translator/default.nix
@@ -10,11 +10,11 @@
 
 buildPythonPackage rec {
   pname = "aws-sam-translator";
-  version = "1.36.0";
+  version = "1.37.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "fa1b990d9329d19052e7b91cf0b19371ed9d31a529054b616005884cd662b584";
+    sha256 = "0p2qd8gwxsfq17nmrlkpf31aqbfzjrwjk3n4p8vhci8mm11dk138";
   };
 
   # Tests are not included in the PyPI package
diff --git a/nixpkgs/pkgs/development/python-modules/azure-appconfiguration/default.nix b/nixpkgs/pkgs/development/python-modules/azure-appconfiguration/default.nix
index 5626b33462b5..3dcff8076bc5 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-appconfiguration/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-appconfiguration/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "azure-appconfiguration";
-  version = "1.1.1";
+  version = "1.2.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "b83cd2cb63d93225de84e27abbfc059212f8de27766f4c58dd3abb839dff0be4";
+    sha256 = "85c9c25612f160897ae212532ec7c19c94b0f4463f4830d0ee08cb2d296df407";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-eventhub/default.nix b/nixpkgs/pkgs/development/python-modules/azure-eventhub/default.nix
index 21b711c8ab0e..bf0a27bf1d2c 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-eventhub/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-eventhub/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "azure-eventhub";
-  version = "5.5.0";
+  version = "5.6.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "7b757b4910ac74902564b38089b9861c1bc51ff15bd49ff056888f939f7c4c49";
+    sha256 = "aa6d9e3e9b8b1a5ad211a828de867b85910720722577a4d51cd5aa6889d1d9e9";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-compute/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-compute/default.nix
index 171c45220d17..949de6d073c9 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-compute/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-compute/default.nix
@@ -6,13 +6,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "21.0.0";
+  version = "22.0.0";
   pname = "azure-mgmt-compute";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "9227c3755a70bc377d70e35e1fc6f1fab109dd88974fd2c7129867ccaa10f813";
+    sha256 = "7d582f3a4331f681f6bc358b796d9c33d7c0d55aa95c2874fc8dbe692e6bfa6d";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-extendedlocation/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-extendedlocation/default.nix
new file mode 100644
index 000000000000..a63810af11cc
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-extendedlocation/default.nix
@@ -0,0 +1,31 @@
+{ lib, buildPythonPackage, fetchPypi
+, azure-common
+, azure-mgmt-core
+, msrest
+}:
+
+buildPythonPackage rec {
+  pname = "azure-mgmt-extendedlocation";
+  version = "1.0.0b2";
+
+  src = fetchPypi {
+    inherit pname version;
+    extension = "zip";
+    sha256 = "sha256-mjfH35T81JQ97jVgElWmZ8P5MwXVxZQv/QJKNLS3T8A=";
+  };
+
+  propagatedBuildInputs = [
+    azure-common
+    azure-mgmt-core
+    msrest
+  ];
+
+  pythonImportsCheck = [ "azure.mgmt.extendedlocation" ];
+
+  meta = with lib; {
+    description = "Microsoft Azure Extendedlocation Management Client Library for Python";
+    homepage = "https://github.com/Azure/azure-sdk-for-python";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jonringer ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-signalr/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-signalr/default.nix
index 4a452cb919cb..d538549a9933 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-signalr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-signalr/default.nix
@@ -4,6 +4,7 @@
 , msrest
 , msrestazure
 , azure-common
+, azure-mgmt-core
 , azure-mgmt-nspkg
 }:
 
@@ -21,6 +22,7 @@ buildPythonPackage rec {
     msrest
     msrestazure
     azure-common
+    azure-mgmt-core
     azure-mgmt-nspkg
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/azure-servicebus/default.nix b/nixpkgs/pkgs/development/python-modules/azure-servicebus/default.nix
index 93f70108c359..bc88fece7710 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-servicebus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-servicebus/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-servicebus";
-  version = "7.3.0";
+  version = "7.3.1";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "sha256-NigQxqZjekZjlu6wSrziVwbEBclxfwSK4svd0eHPKr8=";
+    sha256 = "dc162fc572087cdf53065a2ea9517b002a6702cf382f998d69903d68c16c731e";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix b/nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix
index 586176300b7d..cb5665363f9c 100644
--- a/nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix
@@ -6,7 +6,7 @@
 , pytest
 , pytest-black
 , pytest-flake8
-, pytestcov
+, pytest-cov
 }:
 
 buildPythonPackage rec {
@@ -20,7 +20,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [ setuptools-scm ];
 
-  checkInputs = [ pytest pytest-flake8 pytest-black pytestcov ];
+  checkInputs = [ pytest pytest-flake8 pytest-black pytest-cov ];
   # ironically, they fail a linting test, and pytest.ini forces that test suite
   checkPhase = ''
     rm backports/functools_lru_cache.py
diff --git a/nixpkgs/pkgs/development/python-modules/bacpypes/default.nix b/nixpkgs/pkgs/development/python-modules/bacpypes/default.nix
index e07b02a08e74..8a1e6771b114 100644
--- a/nixpkgs/pkgs/development/python-modules/bacpypes/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bacpypes/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, fetchFromGitHub
-, wheel, pytestCheckHook, pytestrunner, pythonAtLeast }:
+, wheel, pytestCheckHook, pytest-runner, pythonAtLeast }:
 
 buildPythonPackage rec {
   version = "0.18.4";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ wheel ];
 
   # Using pytes instead of setuptools check hook allows disabling specific tests
-  checkInputs = [ pytestCheckHook pytestrunner ];
+  checkInputs = [ pytestCheckHook pytest-runner ];
   dontUseSetuptoolsCheck = true;
   disabledTests = [
     # Test fails with a an error: AssertionError: assert 30 == 31
diff --git a/nixpkgs/pkgs/development/python-modules/bellows/default.nix b/nixpkgs/pkgs/development/python-modules/bellows/default.nix
index 7df23d1a25aa..7d8e6ff5bee3 100644
--- a/nixpkgs/pkgs/development/python-modules/bellows/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bellows/default.nix
@@ -14,13 +14,13 @@
 
 buildPythonPackage rec {
   pname = "bellows";
-  version = "0.24.0";
+  version = "0.25.0";
 
   src = fetchFromGitHub {
     owner = "zigpy";
     repo = "bellows";
     rev = version;
-    sha256 = "00sa4x1qzv861z9d83lk4lp1g2pqiv9hpawj92w4qn1wnqxbz6rw";
+    sha256 = "1836wm8whbryp31zdaj3b6w40sx1wjsxgpjdb1x9rgmwff4d1hc0";
   };
 
   prePatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/beniget/default.nix b/nixpkgs/pkgs/development/python-modules/beniget/default.nix
index c5508fb33032..f8733eeed626 100644
--- a/nixpkgs/pkgs/development/python-modules/beniget/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/beniget/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "beniget";
-  version = "0.3.0";
+  version = "0.4.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "062c893be9cdf87c3144fb15041cce4d81c67107c1591952cd45fdce789a0ff1";
+    sha256 = "72bbd47b1ae93690f5fb2ad3902ce1ae61dcd868ce6cfbf33e9bad71f9ed8749";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/betamax-matchers/default.nix b/nixpkgs/pkgs/development/python-modules/betamax-matchers/default.nix
index 459d3c51d7ed..087329d103e7 100644
--- a/nixpkgs/pkgs/development/python-modules/betamax-matchers/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/betamax-matchers/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, betamax, requests_toolbelt }:
+, betamax, requests-toolbelt }:
 
 buildPythonPackage rec {
   pname = "betamax-matchers";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     sha256 = "07qpwjyq2i2aqhz5iwghnj4pqr2ys5n45v1vmpcfx9r5mhwrsq43";
   };
 
-  buildInputs = [ betamax requests_toolbelt ];
+  buildInputs = [ betamax requests-toolbelt ];
 
   meta = with lib; {
     homepage = "https://github.com/sigmavirus24/betamax_matchers";
diff --git a/nixpkgs/pkgs/development/python-modules/bleach/default.nix b/nixpkgs/pkgs/development/python-modules/bleach/default.nix
index 53319466d3a5..d68318355d88 100644
--- a/nixpkgs/pkgs/development/python-modules/bleach/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bleach/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , pytest
-, pytestrunner
+, pytest-runner
 , six
 , html5lib
 , setuptools
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     sha256 = "sha256-mLMXBznl6D3Z3BljPwdHJ62EjL7bYCZwjIrC07aXpDM=";
   };
 
-  checkInputs = [ pytest pytestrunner ];
+  checkInputs = [ pytest pytest-runner ];
   propagatedBuildInputs = [ packaging six html5lib setuptools ];
 
   # Disable network tests
diff --git a/nixpkgs/pkgs/development/python-modules/bleak/default.nix b/nixpkgs/pkgs/development/python-modules/bleak/default.nix
index aecc904af503..d035e4133518 100644
--- a/nixpkgs/pkgs/development/python-modules/bleak/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bleak/default.nix
@@ -4,13 +4,13 @@
 
 buildPythonPackage rec {
   pname = "bleak";
-  version = "0.12.0";
+  version = "0.12.1";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-pNHz24YjB6FB9ZLC3LoXS+2qzhforflNXzG6OWFqCvk=";
+    sha256 = "1va9138igcgbpsnzgr90qwprmhr9h8lryqslc22jxra4r56a502a";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/blocksat-cli/default.nix b/nixpkgs/pkgs/development/python-modules/blocksat-cli/default.nix
new file mode 100644
index 000000000000..1445c2046fb0
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/blocksat-cli/default.nix
@@ -0,0 +1,49 @@
+{ buildPythonPackage
+, fetchPypi
+, lib
+, distro
+, pysnmp
+, python-gnupg
+, qrcode
+, requests
+, sseclient-py
+, zfec
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "blocksat-cli";
+  version = "0.3.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "06ky5kahh8dm1d7ckid3fdwizvkh3g4aycm39r00kwxdlfca7bgf";
+  };
+
+  propagatedBuildInputs = [
+    distro
+    pysnmp
+    python-gnupg
+    qrcode
+    requests
+    sseclient-py
+    zfec
+  ];
+
+  checkInputs = [ pytestCheckHook ];
+
+  pytestFlagsArray = [
+    # disable tests which require being connected to the satellite
+    "--ignore=blocksatcli/test_satip.py"
+    "--ignore=blocksatcli/api/test_net.py"
+    # disable tests which require being online
+    "--ignore=blocksatcli/api/test_order.py"
+  ];
+
+  meta = with lib; {
+    description = "Blockstream Satellite CLI";
+    homepage = "https://github.com/Blockstream/satellite";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ prusnak ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/breezy/default.nix b/nixpkgs/pkgs/development/python-modules/breezy/default.nix
index dcd6caaffa21..3c24d5f31924 100644
--- a/nixpkgs/pkgs/development/python-modules/breezy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/breezy/default.nix
@@ -12,11 +12,11 @@
 
 buildPythonPackage rec {
   pname = "breezy";
-  version = "3.2.0";
+  version = "3.2.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-lwKPk+UxKAhfIgUb1xPLJ/za53VdHenmBrr85RTpEps=";
+    sha256 = "sha256-4LJo6xoooq8EUoDDfQIa4y1/8XX0ybmfM6rX2wsp2Fw=";
   };
 
   propagatedBuildInputs = [ configobj patiencediff six fastimport dulwich launchpadlib ];
diff --git a/nixpkgs/pkgs/development/python-modules/btrees/default.nix b/nixpkgs/pkgs/development/python-modules/btrees/default.nix
index 1fadf927a448..49acee691cfa 100644
--- a/nixpkgs/pkgs/development/python-modules/btrees/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/btrees/default.nix
@@ -5,30 +5,45 @@
 , zope_interface
 , transaction
 , zope_testrunner
+, python
 }:
 
 buildPythonPackage rec {
   pname = "BTrees";
   version = "4.9.2";
 
-  buildInputs = [ transaction ];
-  propagatedBuildInputs = [ persistent zope_interface ];
-  checkInputs = [ zope_testrunner ];
-
-  # disable a failing test that looks broken
-  postPatch = ''
-    substituteInPlace BTrees/tests/common.py \
-      --replace "testShortRepr" "no_testShortRepr"
-  '';
-
   src = fetchPypi {
     inherit pname version;
     sha256 = "d33323655924192c4ac998d9ee3002e787915d19c1e17a6baf47c9a63d9556e3";
   };
 
+  propagatedBuildInputs = [
+    persistent
+    zope_interface
+  ];
+
+  checkInputs = [
+    transaction
+    zope_testrunner
+  ];
+
+  checkPhase = ''
+    runHook preCheck
+    ${python.interpreter} -m zope.testrunner --test-path=src --auto-color --auto-progress
+    runHook postCheck
+  '';
+
+  pythonImportsCheck = [
+    "BTrees.OOBTree"
+    "BTrees.IOBTree"
+    "BTrees.IIBTree"
+    "BTrees.IFBTree"
+  ];
+
   meta = with lib; {
     description = "Scalable persistent components";
     homepage = "http://packages.python.org/BTrees";
     license = licenses.zpl21;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/build/default.nix b/nixpkgs/pkgs/development/python-modules/build/default.nix
index 639dc53babf2..9b02160dc4e0 100644
--- a/nixpkgs/pkgs/development/python-modules/build/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/build/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , filelock
 , flit-core
 , importlib-metadata
@@ -8,6 +8,7 @@
 , packaging
 , pep517
 , pytest-mock
+, pytest-rerunfailures
 , pytest-xdist
 , pytestCheckHook
 , pythonOlder
@@ -17,13 +18,14 @@
 
 buildPythonPackage rec {
   pname = "build";
-  version = "0.3.0";
-
+  version = "0.5.1";
   format = "pyproject";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "sha256-DrlbLI13DXxMm5LGjCJ8NQu/ZfPsg1UazpCXwYzBX90=";
+  src = fetchFromGitHub {
+    owner = "pypa";
+    repo = pname;
+    rev = version;
+    sha256 = "15hc9mbxsngfc9n805x8rk7yqbxnw12mpk6hfwcsldnfii1vg2ph";
   };
 
   nativeBuildInputs = [
@@ -42,20 +44,18 @@ buildPythonPackage rec {
 
   checkInputs = [
     filelock
-    pytestCheckHook
     pytest-mock
+    pytest-rerunfailures
     pytest-xdist
+    pytestCheckHook
   ];
 
   disabledTests = [
     "test_isolation"
     "test_isolated_environment_install"
     "test_default_pip_is_never_too_old"
-    "test_build_isolated - StopIteration"
-    "test_build_raises_build_exception"
-    "test_build_raises_build_backend_exception"
-    "test_projectbuilder.py"
-    "test_projectbuilder.py"
+    "test_build"
+    "test_init"
   ];
 
   pythonImportsCheck = [ "build" ];
diff --git a/nixpkgs/pkgs/development/python-modules/cachelib/default.nix b/nixpkgs/pkgs/development/python-modules/cachelib/default.nix
index 154c67bb379f..9521d3ee03b4 100644
--- a/nixpkgs/pkgs/development/python-modules/cachelib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cachelib/default.nix
@@ -1,14 +1,30 @@
-{ lib, buildPythonPackage, fetchPypi }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytest-xprocess
+, pytestCheckHook
+, pythonOlder
+}:
 
 buildPythonPackage rec {
   pname = "cachelib";
-  version = "0.1.1";
+  version = "0.2.0";
+  disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "47e95a67d68c729cbad63285a790a06f0e0d27d71624c6e44c1ec3456bb4476f";
+  src = fetchFromGitHub {
+    owner = "pallets";
+    repo = pname;
+    rev = version;
+    sha256 = "1jh1ghvrv1mnw6mdq19s6x6fblz9qi0vskc6mjp0cxjpnxxblaml";
   };
 
+  checkInputs = [
+    pytest-xprocess
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "cachelib" ];
+
   meta = with lib; {
     homepage = "https://github.com/pallets/cachelib";
     description = "Collection of cache libraries in the same API interface";
diff --git a/nixpkgs/pkgs/development/python-modules/cairocffi/0_9.nix b/nixpkgs/pkgs/development/python-modules/cairocffi/0_9.nix
index bd7bde42901e..84c1767bc29f 100644
--- a/nixpkgs/pkgs/development/python-modules/cairocffi/0_9.nix
+++ b/nixpkgs/pkgs/development/python-modules/cairocffi/0_9.nix
@@ -8,7 +8,7 @@
 , makeFontsConf
 , freefont_ttf
 , pytest
-, pytestrunner
+, pytest-runner
 , glibcLocales
 , cairo
 , cffi
diff --git a/nixpkgs/pkgs/development/python-modules/cairocffi/default.nix b/nixpkgs/pkgs/development/python-modules/cairocffi/default.nix
index 5c561af2f172..9b64dbeb66c1 100644
--- a/nixpkgs/pkgs/development/python-modules/cairocffi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cairocffi/default.nix
@@ -8,7 +8,7 @@
 , makeFontsConf
 , freefont_ttf
 , pytest
-, pytestrunner
+, pytest-runner
 , glibcLocales
 , cairo
 , cffi
diff --git a/nixpkgs/pkgs/development/python-modules/cairocffi/generic.nix b/nixpkgs/pkgs/development/python-modules/cairocffi/generic.nix
index 8b674f3baaa8..cdcdbad3395d 100644
--- a/nixpkgs/pkgs/development/python-modules/cairocffi/generic.nix
+++ b/nixpkgs/pkgs/development/python-modules/cairocffi/generic.nix
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     fontDirectories = [ freefont_ttf ];
   };
 
-  checkInputs = [ numpy pytest pytestrunner glibcLocales ];
+  checkInputs = [ numpy pytest pytest-runner glibcLocales ];
   propagatedBuildInputs = [ cairo cffi ] ++ lib.optional withXcffib xcffib;
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/capturer/default.nix b/nixpkgs/pkgs/development/python-modules/capturer/default.nix
index 0e8732f69a8f..2495040887fd 100644
--- a/nixpkgs/pkgs/development/python-modules/capturer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/capturer/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, buildPythonPackage, fetchFromGitHub, humanfriendly, pytestCheckHook, pytestcov }:
+{ stdenv, lib, buildPythonPackage, fetchFromGitHub, humanfriendly, pytestCheckHook }:
 
 buildPythonPackage rec {
   pname = "capturer";
diff --git a/nixpkgs/pkgs/development/python-modules/cattrs/default.nix b/nixpkgs/pkgs/development/python-modules/cattrs/default.nix
index 7f51c89e3e4e..409fc7b28de5 100644
--- a/nixpkgs/pkgs/development/python-modules/cattrs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cattrs/default.nix
@@ -1,6 +1,7 @@
 { lib
 , attrs
 , bson
+, pythonOlder
 , buildPythonPackage
 , fetchFromGitHub
 , hypothesis
@@ -18,6 +19,10 @@ buildPythonPackage rec {
   version = "1.7.0";
   format = "pyproject";
 
+  # https://cattrs.readthedocs.io/en/latest/history.html#id33:
+  # "Python 2, 3.5 and 3.6 support removal. If you need it, use a version below 1.1.0."
+  disabled = pythonOlder "3.7";
+
   src = fetchFromGitHub {
     owner = "Tinche";
     repo = pname;
diff --git a/nixpkgs/pkgs/development/python-modules/certbot/default.nix b/nixpkgs/pkgs/development/python-modules/certbot/default.nix
index 7c324e646a4d..61ec6c2125ff 100644
--- a/nixpkgs/pkgs/development/python-modules/certbot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/certbot/default.nix
@@ -2,9 +2,9 @@
 , buildPythonPackage
 , python, runCommand
 , fetchFromGitHub
-, ConfigArgParse, acme, configobj, cryptography, distro, josepy, parsedatetime, pyRFC3339, pyopenssl, pytz, requests, six, zope_component, zope_interface
+, configargparse, acme, configobj, cryptography, distro, josepy, parsedatetime, pyRFC3339, pyopenssl, pytz, requests, six, zope_component, zope_interface
 , dialog, gnureadline
-, pytest_xdist, pytestCheckHook, python-dateutil
+, pytest-xdist, pytestCheckHook, python-dateutil
 }:
 
 buildPythonPackage rec {
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   sourceRoot = "source/${pname}";
 
   propagatedBuildInputs = [
-    ConfigArgParse
+    configargparse
     acme
     configobj
     cryptography
@@ -42,7 +42,7 @@ buildPythonPackage rec {
   checkInputs = [
     python-dateutil
     pytestCheckHook
-    pytest_xdist
+    pytest-xdist
   ];
 
   pytestFlagsArray = [
diff --git a/nixpkgs/pkgs/development/python-modules/cfn-flip/default.nix b/nixpkgs/pkgs/development/python-modules/cfn-flip/default.nix
index da04ecf68897..bf3eab19d4fa 100644
--- a/nixpkgs/pkgs/development/python-modules/cfn-flip/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cfn-flip/default.nix
@@ -5,8 +5,8 @@
 # pythonPackages
 , click
 , pytest
-, pytestcov
-, pytestrunner
+, pytest-cov
+, pytest-runner
 , pyyaml
 , six
 }:
@@ -30,8 +30,8 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytestcov
-    pytestrunner
+    pytest-cov
+    pytest-runner
   ];
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/cftime/default.nix b/nixpkgs/pkgs/development/python-modules/cftime/default.nix
index bec5f03cd88b..46fad656cabe 100644
--- a/nixpkgs/pkgs/development/python-modules/cftime/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cftime/default.nix
@@ -2,7 +2,7 @@
 , fetchPypi
 , pytestCheckHook
 , coveralls
-, pytestcov
+, pytest-cov
 , cython
 , numpy
 , python
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   checkInputs = [
     pytestCheckHook
     coveralls
-    pytestcov
+    pytest-cov
   ];
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/chardet/2.nix b/nixpkgs/pkgs/development/python-modules/chardet/2.nix
index 65381d40268f..5f6fe0a672a7 100644
--- a/nixpkgs/pkgs/development/python-modules/chardet/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/chardet/2.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, fetchpatch
-, pytest, pytestrunner, hypothesis }:
+, pytest, pytest-runner, hypothesis }:
 
 buildPythonPackage rec {
   pname = "chardet";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     })
   ];
 
-  checkInputs = [ pytest pytestrunner hypothesis ];
+  checkInputs = [ pytest pytest-runner hypothesis ];
 
   meta = with lib; {
     homepage = "https://github.com/chardet/chardet";
diff --git a/nixpkgs/pkgs/development/python-modules/cheroot/default.nix b/nixpkgs/pkgs/development/python-modules/cheroot/default.nix
index 50f6d33791de..6e9256ffacfe 100644
--- a/nixpkgs/pkgs/development/python-modules/cheroot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cheroot/default.nix
@@ -9,7 +9,7 @@
 , portend
 , pyopenssl
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , pytest-mock
 , requests
 , requests-toolbelt
@@ -46,7 +46,7 @@ buildPythonPackage rec {
     portend
     pyopenssl
     pytestCheckHook
-    pytestcov
+    pytest-cov
     pytest-mock
     requests
     requests-toolbelt
diff --git a/nixpkgs/pkgs/development/python-modules/cherrypy/17.nix b/nixpkgs/pkgs/development/python-modules/cherrypy/17.nix
index df50219fb170..2ae180a8bae6 100644
--- a/nixpkgs/pkgs/development/python-modules/cherrypy/17.nix
+++ b/nixpkgs/pkgs/development/python-modules/cherrypy/17.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, buildPythonPackage, fetchPypi
 , setuptools-scm
 , cheroot, contextlib2, portend, routes, six, zc_lockfile
-, backports_unittest-mock, objgraph, pathpy, pytest, pytestcov, backports_functools_lru_cache, requests_toolbelt
+, backports_unittest-mock, objgraph, pathpy, pytest, pytest-cov, backports_functools_lru_cache, requests-toolbelt
 }:
 
 buildPythonPackage rec {
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   nativeBuildInputs = [ setuptools-scm ];
 
   checkInputs = [
-    backports_unittest-mock objgraph pathpy pytest pytestcov backports_functools_lru_cache requests_toolbelt
+    backports_unittest-mock objgraph pathpy pytest pytest-cov backports_functools_lru_cache requests-toolbelt
   ];
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/cherrypy/default.nix b/nixpkgs/pkgs/development/python-modules/cherrypy/default.nix
index 9eebff1b1e6f..0c6f83ea71db 100644
--- a/nixpkgs/pkgs/development/python-modules/cherrypy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cherrypy/default.nix
@@ -2,7 +2,7 @@
 , setuptools-scm
 , cheroot, portend, more-itertools, zc_lockfile, routes
 , jaraco_collections
-, objgraph, pytest, pytestcov, pathpy, requests_toolbelt, pytest-services
+, objgraph, pytest, pytest-cov, pathpy, requests-toolbelt, pytest-services
 , fetchpatch
 }:
 
@@ -47,7 +47,7 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    objgraph pytest pytestcov pathpy requests_toolbelt pytest-services
+    objgraph pytest pytest-cov pathpy requests-toolbelt pytest-services
   ];
 
   # Keyboard interrupt ends test suite run
@@ -60,7 +60,7 @@ buildPythonPackage rec {
       --deselect=cherrypy/test/test_static.py::StaticTest::test_null_bytes \
       --deselect=cherrypy/test/test_tools.py::ToolTests::testCombinedTools \
       ${lib.optionalString stdenv.isDarwin
-        "--deselect=cherrypy/test/test_bus.py::BusMethodTests::test_block"}
+        "--deselect=cherrypy/test/test_bus.py::BusMethodTests::test_block --deselect=cherrypy/test/test_config_server.py"}
   '';
 
   __darwinAllowLocalNetworking = true;
diff --git a/nixpkgs/pkgs/development/python-modules/chiapos/default.nix b/nixpkgs/pkgs/development/python-modules/chiapos/default.nix
index e0a86f499a2a..e9f4e3266543 100644
--- a/nixpkgs/pkgs/development/python-modules/chiapos/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/chiapos/default.nix
@@ -13,12 +13,12 @@
 
 buildPythonPackage rec {
   pname = "chiapos";
-  version = "1.0.2";
+  version = "1.0.3";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "09mwj9m9rcvcb3zn6v2xykgd4a9lpwl6c86nwl8d1iqr82gb5hb5";
+    sha256 = "sha256-2Ye0gaOsv/Hg1363E6+NmezsK9EcLEZVKKUHikM2hr0=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch b/nixpkgs/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch
index ca18fd292ca8..dc1cfddcc41d 100644
--- a/nixpkgs/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch
+++ b/nixpkgs/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch
@@ -23,7 +23,7 @@ index 9b4a2f5..86f849c 100644
  FetchContent_Declare(
    gulrak
 -  GIT_REPOSITORY https://github.com/gulrak/filesystem.git
--  GIT_TAG        v1.5.4
+-  GIT_TAG        v1.5.6
 +  SOURCE_DIR @ghc_filesystem@
  )
  FetchContent_MakeAvailable(gulrak)
diff --git a/nixpkgs/pkgs/development/python-modules/chiavdf/default.nix b/nixpkgs/pkgs/development/python-modules/chiavdf/default.nix
index deb7d21adc76..1b32a1d5f7cc 100644
--- a/nixpkgs/pkgs/development/python-modules/chiavdf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/chiavdf/default.nix
@@ -14,12 +14,12 @@
 
 buildPythonPackage rec {
   pname = "chiavdf";
-  version = "1.0.1";
+  version = "1.0.2";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-z0od/VrH580+9641lKNI7jbVMlJZKCWnoT+GljnFxmU=";
+    hash = "sha256-YSG4Aj9gd72NOgDSYU0kPn/nZz9Pza9FE9WoG/H4PWw=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/ci-py/default.nix b/nixpkgs/pkgs/development/python-modules/ci-py/default.nix
index 30220b48b72d..61e1760f3727 100644
--- a/nixpkgs/pkgs/development/python-modules/ci-py/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ci-py/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
-, pytest, pytestrunner, pytestCheckHook }:
+, pytest, pytest-runner, pytestCheckHook }:
 
 buildPythonPackage rec {
   version = "1.0.0";
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     sha256 = "12ax07n81vxbyayhwzi1q6x7gfmwmvrvwm1n4ii6qa6fqlp9pzj7";
   };
 
-  nativeBuildInputs = [ pytestrunner ];  # pytest-runner included in setup-requires
+  nativeBuildInputs = [ pytest-runner ];  # pytest-runner included in setup-requires
   checkInputs = [ pytest pytestCheckHook ];
 
   pythonImportsCheck = [ "ci" ];
diff --git a/nixpkgs/pkgs/development/python-modules/claripy/default.nix b/nixpkgs/pkgs/development/python-modules/claripy/default.nix
index d8257f446d15..2c25d258e579 100644
--- a/nixpkgs/pkgs/development/python-modules/claripy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/claripy/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "claripy";
-  version = "9.0.8761";
+  version = "9.0.9031";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-MEG6J7FBjufFqvmfV+LTtgDJb8eZuUrDq4am/mnYCZI=";
+    sha256 = "sha256-UCmt2Vm8OWyKa0fmPlGuvzaFddUWs6quavUgIZasoJg=";
   };
 
   # Use upstream z3 implementation
diff --git a/nixpkgs/pkgs/development/python-modules/cle/default.nix b/nixpkgs/pkgs/development/python-modules/cle/default.nix
index 87091509fb0d..d6731260937d 100644
--- a/nixpkgs/pkgs/development/python-modules/cle/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cle/default.nix
@@ -15,7 +15,7 @@
 
 let
   # The binaries are following the argr projects release cycle
-  version = "9.0.8761";
+  version = "9.0.9031";
 
   # 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-cJpwtAX2cck/SoTfm8G93Imyyqn1B2Izkxk9O7WtRrk=";
+    sha256 = "sha256-+9aW7J8FXuKtU20dpqnoj37McPxzbkjKuYZIO8QeFF0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/clickclick/default.nix b/nixpkgs/pkgs/development/python-modules/clickclick/default.nix
index d829f43dc0d1..8aeb73bb25b2 100644
--- a/nixpkgs/pkgs/development/python-modules/clickclick/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/clickclick/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, isPy36, flake8, click, pyyaml, six, pytestCheckHook, pytestcov }:
+{ lib, buildPythonPackage, fetchFromGitHub, isPy36, flake8, click, pyyaml, six, pytestCheckHook, pytest-cov }:
 
 buildPythonPackage rec {
   pname = "clickclick";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
     sha256 = "1rij9ws9nhsmagiy1vclzliiqfkxi006rf65qvrw1k3sm2s8p5g0";
   };
 
-  checkInputs = [ pytestCheckHook pytestcov ];
+  checkInputs = [ pytestCheckHook pytest-cov ];
   propagatedBuildInputs = [ flake8 click pyyaml six ];
 
   # test_cli asserts on exact quoting style of output
diff --git a/nixpkgs/pkgs/development/python-modules/convertdate/2.2.x.nix b/nixpkgs/pkgs/development/python-modules/convertdate/2.2.x.nix
index d67f4c5a3449..1145a61ca4f0 100644
--- a/nixpkgs/pkgs/development/python-modules/convertdate/2.2.x.nix
+++ b/nixpkgs/pkgs/development/python-modules/convertdate/2.2.x.nix
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     owner = "fitnr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1xgi7x9b9kxm0q51bqnmwdm5lp8vwhx5yk4d1b23r37spz9dbhw5";
+    sha256 = "07x1j6jgkmrzdpv2lhpp4n16621mpmlylvwdwsggdjivhzvc3x9q";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/cookiecutter/default.nix b/nixpkgs/pkgs/development/python-modules/cookiecutter/default.nix
index b2a13cdbb654..de42f7284112 100644
--- a/nixpkgs/pkgs/development/python-modules/cookiecutter/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cookiecutter/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, isPyPy
-, pytest, pytestcov, pytest-mock, freezegun
+, pytest, pytest-cov, pytest-mock, freezegun
 , jinja2, future, binaryornot, click, whichcraft, poyo, jinja2_time, requests
 , python-slugify }:
 
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "sha256-a5pNcoguJDvgd6c5fQ8fdv5mzz35HzEV27UzDiFPpFc=";
   };
 
-  checkInputs = [ pytest pytestcov pytest-mock freezegun ];
+  checkInputs = [ pytest pytest-cov pytest-mock freezegun ];
   propagatedBuildInputs = [
     jinja2 future binaryornot click whichcraft poyo jinja2_time requests python-slugify
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/coveralls/default.nix b/nixpkgs/pkgs/development/python-modules/coveralls/default.nix
index 5d5b07ffd05e..109667582188 100644
--- a/nixpkgs/pkgs/development/python-modules/coveralls/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/coveralls/default.nix
@@ -4,7 +4,7 @@
 , isPy27
 , mock
 , pytest
-, pytestrunner
+, pytest-runner
 , sh
 , coverage
 , docopt
@@ -33,7 +33,7 @@ buildPythonPackage rec {
   ];
 
   buildInputs = [
-    pytestrunner
+    pytest-runner
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/cramjam/Cargo.lock b/nixpkgs/pkgs/development/python-modules/cramjam/Cargo.lock
new file mode 100644
index 000000000000..0eb5882cc36b
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cramjam/Cargo.lock
@@ -0,0 +1,520 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+[[package]]
+name = "adler"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+[[package]]
+name = "autocfg"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
+
+[[package]]
+name = "bitflags"
+version = "1.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
+
+[[package]]
+name = "brotli-sys"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4445dea95f4c2b41cde57cc9fee236ae4dbae88d8fcbdb4750fc1bb5d86aaecd"
+dependencies = [
+ "cc",
+ "libc",
+]
+
+[[package]]
+name = "brotli2"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0cb036c3eade309815c15ddbacec5b22c4d1f3983a774ab2eac2e3e9ea85568e"
+dependencies = [
+ "brotli-sys",
+ "libc",
+]
+
+[[package]]
+name = "cc"
+version = "1.0.68"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4a72c244c1ff497a746a7e1fb3d14bd08420ecda70c8f25c7112f2781652d787"
+dependencies = [
+ "jobserver",
+]
+
+[[package]]
+name = "cfg-if"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "cramjam"
+version = "2.3.2"
+dependencies = [
+ "brotli2",
+ "flate2",
+ "lz4",
+ "mimalloc",
+ "numpy",
+ "pyo3",
+ "snap",
+ "zstd",
+]
+
+[[package]]
+name = "crc32fast"
+version = "1.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "81156fece84ab6a9f2afdb109ce3ae577e42b1228441eded99bd77f627953b1a"
+dependencies = [
+ "cfg-if 1.0.0",
+]
+
+[[package]]
+name = "ctor"
+version = "0.1.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5e98e2ad1a782e33928b96fc3948e7c355e5af34ba4de7670fe8bac2a3b2006d"
+dependencies = [
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "flate2"
+version = "1.0.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cd3aec53de10fe96d7d8c565eb17f2c687bb5518a2ec453b5b1252964526abe0"
+dependencies = [
+ "cfg-if 1.0.0",
+ "crc32fast",
+ "libc",
+ "miniz_oxide",
+]
+
+[[package]]
+name = "ghost"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a5bcf1bbeab73aa4cf2fde60a846858dc036163c7c33bec309f8d17de785479"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "indoc"
+version = "0.3.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "47741a8bc60fb26eb8d6e0238bbb26d8575ff623fdc97b1a2c00c050b9684ed8"
+dependencies = [
+ "indoc-impl",
+ "proc-macro-hack",
+]
+
+[[package]]
+name = "indoc-impl"
+version = "0.3.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ce046d161f000fffde5f432a0d034d0341dc152643b2598ed5bfce44c4f3a8f0"
+dependencies = [
+ "proc-macro-hack",
+ "proc-macro2",
+ "quote",
+ "syn",
+ "unindent",
+]
+
+[[package]]
+name = "instant"
+version = "0.1.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "61124eeebbd69b8190558df225adf7e4caafce0d743919e5d6b19652314ec5ec"
+dependencies = [
+ "cfg-if 1.0.0",
+]
+
+[[package]]
+name = "inventory"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0f0f7efb804ec95e33db9ad49e4252f049e37e8b0a4652e3cd61f7999f2eff7f"
+dependencies = [
+ "ctor",
+ "ghost",
+ "inventory-impl",
+]
+
+[[package]]
+name = "inventory-impl"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "75c094e94816723ab936484666968f5b58060492e880f3c8d00489a1e244fa51"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "jobserver"
+version = "0.1.22"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "972f5ae5d1cb9c6ae417789196c803205313edde988685da5e3aae0827b9e7fd"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "libc"
+version = "0.2.95"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "789da6d93f1b866ffe175afc5322a4d76c038605a1c3319bb57b06967ca98a36"
+
+[[package]]
+name = "libmimalloc-sys"
+version = "0.1.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2396cf99d2f58611cd69f0efeee4af3d2e2c7b61bed433515029163aa567e65c"
+dependencies = [
+ "cc",
+]
+
+[[package]]
+name = "lock_api"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0382880606dff6d15c9476c416d18690b72742aa7b605bb6dd6ec9030fbf07eb"
+dependencies = [
+ "scopeguard",
+]
+
+[[package]]
+name = "lz4"
+version = "1.23.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aac20ed6991e01bf6a2e68cc73df2b389707403662a8ba89f68511fb340f724c"
+dependencies = [
+ "libc",
+ "lz4-sys",
+]
+
+[[package]]
+name = "lz4-sys"
+version = "1.9.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dca79aa95d8b3226213ad454d328369853be3a1382d89532a854f4d69640acae"
+dependencies = [
+ "cc",
+ "libc",
+]
+
+[[package]]
+name = "matrixmultiply"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "916806ba0031cd542105d916a97c8572e1fa6dd79c9c51e7eb43a09ec2dd84c1"
+dependencies = [
+ "rawpointer",
+]
+
+[[package]]
+name = "mimalloc"
+version = "0.1.25"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e7c6b11afd1e5e689ac96b6d18b1fc763398fe3d7eed99e8773426bc2033dfb"
+dependencies = [
+ "libmimalloc-sys",
+]
+
+[[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 = "ndarray"
+version = "0.14.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c0d5c9540a691d153064dc47a4db2504587a75eae07bf1d73f7a596ebc73c04"
+dependencies = [
+ "matrixmultiply",
+ "num-complex",
+ "num-integer",
+ "num-traits",
+ "rawpointer",
+]
+
+[[package]]
+name = "num-complex"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "747d632c0c558b87dbabbe6a82f3b4ae03720d0646ac5b7b4dae89394be5f2c5"
+dependencies = [
+ "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-traits"
+version = "0.2.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "numpy"
+version = "0.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a7073fae1e0b82409533a29c6f804b79783d7b2d3c07728fdc4d884eda8cd4f0"
+dependencies = [
+ "cfg-if 0.1.10",
+ "libc",
+ "ndarray",
+ "num-complex",
+ "num-traits",
+ "pyo3",
+]
+
+[[package]]
+name = "parking_lot"
+version = "0.11.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb"
+dependencies = [
+ "instant",
+ "lock_api",
+ "parking_lot_core",
+]
+
+[[package]]
+name = "parking_lot_core"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fa7a782938e745763fe6907fc6ba86946d72f49fe7e21de074e08128a99fb018"
+dependencies = [
+ "cfg-if 1.0.0",
+ "instant",
+ "libc",
+ "redox_syscall",
+ "smallvec",
+ "winapi",
+]
+
+[[package]]
+name = "paste"
+version = "0.1.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "45ca20c77d80be666aef2b45486da86238fabe33e38306bd3118fe4af33fa880"
+dependencies = [
+ "paste-impl",
+ "proc-macro-hack",
+]
+
+[[package]]
+name = "paste-impl"
+version = "0.1.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d95a7db200b97ef370c8e6de0088252f7e0dfff7d047a28528e47456c0fc98b6"
+dependencies = [
+ "proc-macro-hack",
+]
+
+[[package]]
+name = "proc-macro-hack"
+version = "0.5.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5"
+
+[[package]]
+name = "proc-macro2"
+version = "1.0.27"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038"
+dependencies = [
+ "unicode-xid",
+]
+
+[[package]]
+name = "pyo3"
+version = "0.13.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4837b8e8e18a102c23f79d1e9a110b597ea3b684c95e874eb1ad88f8683109c3"
+dependencies = [
+ "cfg-if 1.0.0",
+ "ctor",
+ "indoc",
+ "inventory",
+ "libc",
+ "parking_lot",
+ "paste",
+ "pyo3-macros",
+ "unindent",
+]
+
+[[package]]
+name = "pyo3-macros"
+version = "0.13.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a47f2c300ceec3e58064fd5f8f5b61230f2ffd64bde4970c81fdd0563a2db1bb"
+dependencies = [
+ "pyo3-macros-backend",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "pyo3-macros-backend"
+version = "0.13.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87b097e5d84fcbe3e167f400fbedd657820a375b034c78bd852050749a575d66"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "quote"
+version = "1.0.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7"
+dependencies = [
+ "proc-macro2",
+]
+
+[[package]]
+name = "rawpointer"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
+
+[[package]]
+name = "redox_syscall"
+version = "0.2.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "742739e41cd49414de871ea5e549afb7e2a3ac77b589bcbebe8c82fab37147fc"
+dependencies = [
+ "bitflags",
+]
+
+[[package]]
+name = "scopeguard"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
+
+[[package]]
+name = "smallvec"
+version = "1.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e"
+
+[[package]]
+name = "snap"
+version = "1.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "45456094d1983e2ee2a18fdfebce3189fa451699d0502cb8e3b49dba5ba41451"
+
+[[package]]
+name = "syn"
+version = "1.0.72"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1e8cdbefb79a9a5a65e0db8b47b723ee907b7c7f8496c76a1770b5c310bab82"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-xid",
+]
+
+[[package]]
+name = "unicode-xid"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
+
+[[package]]
+name = "unindent"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f14ee04d9415b52b3aeab06258a3f07093182b88ba0f9b8d203f211a7a7d41c7"
+
+[[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 = "zstd"
+version = "0.6.1+zstd.1.4.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5de55e77f798f205d8561b8fe2ef57abfb6e0ff2abe7fd3c089e119cdb5631a3"
+dependencies = [
+ "zstd-safe",
+]
+
+[[package]]
+name = "zstd-safe"
+version = "3.0.1+zstd.1.4.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1387cabcd938127b30ce78c4bf00b30387dddf704e3f0881dbc4ff62b5566f8c"
+dependencies = [
+ "libc",
+ "zstd-sys",
+]
+
+[[package]]
+name = "zstd-sys"
+version = "1.4.20+zstd.1.4.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ebd5b733d7cf2d9447e2c3e76a5589b4f5e5ae065c22a2bc0b023cbc331b6c8e"
+dependencies = [
+ "cc",
+ "libc",
+]
diff --git a/nixpkgs/pkgs/development/python-modules/cramjam/default.nix b/nixpkgs/pkgs/development/python-modules/cramjam/default.nix
new file mode 100644
index 000000000000..4d1227dcbc59
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cramjam/default.nix
@@ -0,0 +1,60 @@
+{ lib
+, stdenv
+, buildPythonPackage
+, fetchPypi
+, rustPlatform
+, libiconv
+, pytestCheckHook
+, brotli
+, lz4
+, memory_profiler
+, numpy
+, pytest-benchmark
+, python-snappy
+, zstd
+}:
+
+buildPythonPackage rec {
+  pname = "cramjam";
+  version = "2.3.2";
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "577955f1510d99df0e4d61379c3f05568f594f91e12bc6a7e147d0abfa643a3b";
+  };
+
+  postPatch = ''
+    cp ${./Cargo.lock} ./Cargo.lock
+  '';
+
+  cargoDeps = rustPlatform.importCargoLock {
+    lockFile = ./Cargo.lock;
+  };
+
+  nativeBuildInputs = with rustPlatform; [
+    cargoSetupHook
+    maturinBuildHook
+  ];
+  buildInputs = lib.optional stdenv.isDarwin libiconv;
+
+  checkInputs = [
+    pytestCheckHook
+    brotli
+    lz4
+    memory_profiler
+    numpy
+    pytest-benchmark
+    python-snappy
+    zstd
+  ];
+  pytestFlagsArray = [ "--benchmark-disable" ];
+  pythonImportsCheck = [ "cramjam" ];
+
+  meta = with lib; {
+    description = "Thin Python bindings to de/compression algorithms in Rust";
+    homepage = "https://crates.io/crates/cramjam";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ veprbl ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/crate/default.nix b/nixpkgs/pkgs/development/python-modules/crate/default.nix
index 07b9652e7753..c4a698c5250a 100644
--- a/nixpkgs/pkgs/development/python-modules/crate/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/crate/default.nix
@@ -39,5 +39,11 @@ buildPythonPackage rec {
     description = "A Python client library for CrateDB";
     license = licenses.asl20;
     maintainers = with maintainers; [ doronbehar ];
+    # 2021-07-12 (@layus): Please unbreak when an update fixes compatibility
+    # with the version of SQLAlchemy in nixpkgs
+    # And also re-enable tests in pythonPackages.agate-sql.
+    # The version string below is intentionally split, so nixpkgs-update does
+    # not change it. That would make this warning pretty useless.
+    broken = assert version == "0.2"+"6.0"; true;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/crytic-compile/default.nix b/nixpkgs/pkgs/development/python-modules/crytic-compile/default.nix
index a5ae90c57e37..127e6f929338 100644
--- a/nixpkgs/pkgs/development/python-modules/crytic-compile/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/crytic-compile/default.nix
@@ -2,19 +2,15 @@
 
 buildPythonPackage rec {
   pname = "crytic-compile";
-  version = "0.1.13";
+  version = "0.2.0";
 
   disabled = pythonOlder "3.6";
 
-  patchPhase = ''
-    substituteInPlace setup.py --replace 'version="0.1.11",' 'version="${version}",'
-  '';
-
   src = fetchFromGitHub {
     owner = "crytic";
     repo = "crytic-compile";
     rev = version;
-    sha256 = "sha256-KJRfkUyUI0M7HevY4XKOtCvU+SFlsJIl3kTIccWfNmw=";
+    sha256 = "sha256-Kuc7g5+4TIcQTWYjG4uPN0Rxfom/A/xpek5K5ErlbdU=";
   };
 
   propagatedBuildInputs = [ pysha3 setuptools ];
diff --git a/nixpkgs/pkgs/development/python-modules/cssselect2/default.nix b/nixpkgs/pkgs/development/python-modules/cssselect2/default.nix
index eadc3eb32b1f..25bb35eab2d8 100644
--- a/nixpkgs/pkgs/development/python-modules/cssselect2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cssselect2/default.nix
@@ -4,8 +4,8 @@
 , fetchPypi
 , tinycss2
 , pytest
-, pytestrunner
-, pytestcov
+, pytest-runner
+, pytest-cov
 , pytest-flake8
 , pytest-isort
 }:
@@ -22,7 +22,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ tinycss2 ];
 
-  checkInputs = [ pytest pytestrunner pytestcov pytest-flake8 pytest-isort ];
+  checkInputs = [ pytest pytest-runner pytest-cov pytest-flake8 pytest-isort ];
 
   meta = with lib; {
     description = "CSS selectors for Python ElementTree";
diff --git a/nixpkgs/pkgs/development/python-modules/dacite/default.nix b/nixpkgs/pkgs/development/python-modules/dacite/default.nix
new file mode 100644
index 000000000000..67b1722be51f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/dacite/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, pythonOlder
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "dacite";
+  version = "1.6.0";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "konradhalas";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0nv2bnj3bq2v08ac4p583cnpjq2d6bv5isycgji5i5wg1y082a3d";
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "dacite" ];
+
+  meta = with lib; {
+    description = "Python helper to create data classes from dictionaries";
+    homepage = "https://github.com/konradhalas/dacite";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/daphne/default.nix b/nixpkgs/pkgs/development/python-modules/daphne/default.nix
index f6d7fcac62a5..90b108e3bc74 100644
--- a/nixpkgs/pkgs/development/python-modules/daphne/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/daphne/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, buildPythonPackage, isPy3k, fetchFromGitHub
-, asgiref, autobahn, twisted, pytestrunner
+, asgiref, autobahn, twisted, pytest-runner
 , hypothesis, pytest, pytest-asyncio, service-identity, pyopenssl
 }:
 buildPythonPackage rec {
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "sha256-KWkMV4L7bA2Eo/u4GGif6lmDNrZAzvYyDiyzyWt9LeI=";
   };
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
 
   propagatedBuildInputs = [ asgiref autobahn twisted service-identity pyopenssl ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/datasette/default.nix b/nixpkgs/pkgs/development/python-modules/datasette/default.nix
index 58920b406466..5a611c989f4d 100644
--- a/nixpkgs/pkgs/development/python-modules/datasette/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/datasette/default.nix
@@ -31,14 +31,14 @@
 
 buildPythonPackage rec {
   pname = "datasette";
-  version = "0.57.1";
+  version = "0.58.1";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "simonw";
     repo = pname;
     rev = version;
-    sha256 = "sha256-BHsf3GOganPhsDiZlRxvAsRZH/Sq+Jr+CZcc2ubce+8=";
+    sha256 = "sha256-dtKqp7LV1fRjwOMAlmmAnC19j8hLA1oixGextATW6z0=";
   };
 
   nativeBuildInputs = [ pytest-runner ];
diff --git a/nixpkgs/pkgs/development/python-modules/dbus-next/default.nix b/nixpkgs/pkgs/development/python-modules/dbus-next/default.nix
index d7cf79f9d07c..ba27b633fefd 100644
--- a/nixpkgs/pkgs/development/python-modules/dbus-next/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dbus-next/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , python
-, dbus, dbus-python, pytest, pytestcov, pytest-asyncio, pytest-timeout
+, dbus, dbus-python, pytest, pytest-cov, pytest-asyncio, pytest-timeout
 }:
 
 buildPythonPackage rec {
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     dbus
     dbus-python
     pytest
-    pytestcov
+    pytest-cov
     pytest-asyncio
     pytest-timeout
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/debugpy/default.nix b/nixpkgs/pkgs/development/python-modules/debugpy/default.nix
index da1f25ad2c3e..283682708840 100644
--- a/nixpkgs/pkgs/development/python-modules/debugpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/debugpy/default.nix
@@ -8,7 +8,7 @@
 , flask
 , psutil
 , pytest-timeout
-, pytest_xdist
+, pytest-xdist
 , pytestCheckHook
 , requests
 , isPy27
@@ -75,7 +75,7 @@ buildPythonPackage rec {
     flask
     psutil
     pytest-timeout
-    pytest_xdist
+    pytest-xdist
     pytestCheckHook
     requests
   ] ++ lib.optionals (!isPy27) [
diff --git a/nixpkgs/pkgs/development/python-modules/defcon/default.nix b/nixpkgs/pkgs/development/python-modules/defcon/default.nix
index 100c7ee6fc1f..30853aa41a64 100644
--- a/nixpkgs/pkgs/development/python-modules/defcon/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/defcon/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi, pythonOlder
 , fonttools, setuptools-scm
-, pytest, pytestrunner, lxml, fs, unicodedata2, fontpens
+, pytest, pytest-runner, lxml, fs, unicodedata2, fontpens
 }:
 
 buildPythonPackage rec {
@@ -25,7 +25,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytestrunner
+    pytest-runner
     lxml
     fs
     unicodedata2
diff --git a/nixpkgs/pkgs/development/python-modules/devtools/default.nix b/nixpkgs/pkgs/development/python-modules/devtools/default.nix
new file mode 100644
index 000000000000..32050acfdf27
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/devtools/default.nix
@@ -0,0 +1,28 @@
+{ buildPythonPackage, pythonOlder, fetchFromGitHub, lib, pygments
+, pytestCheckHook, pytest-mock }:
+
+buildPythonPackage rec {
+  pname = "devtools";
+  version = "0.6.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "samuelcolvin";
+    repo = "python-${pname}";
+    rev = "v${version}";
+    sha256 = "0s1d2jwijini7y1a3318yhb98mh1mw4pzlfx2zck3a8nqw984ki3";
+  };
+
+  propagatedBuildInputs = [ pygments ];
+
+  checkInputs = [ pytestCheckHook pytest-mock ];
+
+  pythonImportsCheck = [ "devtools" ];
+
+  meta = with lib; {
+    description = "Python's missing debug print command and other development tools";
+    homepage = "https://python-devtools.helpmanual.io/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jdahm ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/diceware/default.nix b/nixpkgs/pkgs/development/python-modules/diceware/default.nix
index 8e35eabfb0d7..d519aa76c8b1 100644
--- a/nixpkgs/pkgs/development/python-modules/diceware/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/diceware/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, pytestrunner
+, pytest-runner
 , setuptools
 , coverage, pytest
 }:
@@ -13,7 +13,7 @@ buildPythonPackage rec {
     sha256 = "0klb0ysybzlh2wihvir82hgq62v0jjmlcqklwajyms7c0p529yby";
   };
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
 
   propagatedBuildInputs = [ setuptools ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/dill/default.nix b/nixpkgs/pkgs/development/python-modules/dill/default.nix
index 0983805780fa..ac5741742781 100644
--- a/nixpkgs/pkgs/development/python-modules/dill/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dill/default.nix
@@ -1,37 +1,47 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , isPy27
-, nose
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "dill";
-  version = "0.3.1.1";
+  version = "0.3.4";
+  doCheck = !isPy27;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "42d8ef819367516592a825746a18073ced42ca169ab1f5f4044134703e7a049c";
+  src = fetchFromGitHub {
+    owner = "uqfoundation";
+    repo = pname;
+    rev = "${pname}-${version}";
+    sha256 = "0x702gh50wb3n820p2p9w49cn4a354y207pllwc7snfxprv6hypm";
   };
 
-  # python2 can't import a test fixture
-  doCheck = !isPy27;
-  checkInputs = [ nose ];
-  checkPhase = ''
-    PYTHONPATH=$PWD/tests:$PYTHONPATH
-    nosetests \
-      --ignore-files="test_classdef" \
-      --ignore-files="test_objects" \
-      --ignore-files="test_selected" \
-      --exclude="test_the_rest" \
-      --exclude="test_importable"
-  '';
+  checkInputs = [
+    pytestCheckHook
+  ];
+
   # Tests seem to fail because of import pathing and referencing items/classes in modules.
   # Seems to be a Nix/pathing related issue, not the codebase, so disabling failing tests.
+  disabledTestPaths = [
+    "tests/test_diff.py"
+    "tests/test_module.py"
+    "tests/test_objects.py"
+  ];
+
+  disabledTests = [
+    "test_class_objects"
+    "test_method_decorator"
+    "test_importable"
+    "test_the_rest"
+  ];
+
+  pythonImportsCheck = [ "dill" ];
 
-  meta = {
+  meta = with lib; {
     description = "Serialize all of python (almost)";
     homepage = "https://github.com/uqfoundation/dill/";
-    license = lib.licenses.bsd3;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/diskcache/default.nix b/nixpkgs/pkgs/development/python-modules/diskcache/default.nix
index ed6007f87ed2..0264c0ff10c5 100644
--- a/nixpkgs/pkgs/development/python-modules/diskcache/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/diskcache/default.nix
@@ -3,8 +3,8 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pytestCheckHook
-, pytestcov
-, pytest_xdist
+, pytest-cov
+, pytest-xdist
 , pytest-django
 , mock
 }:
@@ -22,8 +22,8 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytestCheckHook
-    pytestcov
-    pytest_xdist
+    pytest-cov
+    pytest-xdist
     pytest-django
     mock
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/distutils_extra/default.nix b/nixpkgs/pkgs/development/python-modules/distutils_extra/default.nix
index c2fbcdfe46c9..ffa49fec14df 100644
--- a/nixpkgs/pkgs/development/python-modules/distutils_extra/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/distutils_extra/default.nix
@@ -5,17 +5,22 @@
 
 buildPythonPackage rec {
   pname = "distutils-extra";
-  version = "2.39";
+  version = "2.45";
 
   src = fetchurl {
-    url = "https://launchpad.net/python-distutils-extra/trunk/${version}/+download/python-${pname}-${version}.tar.gz";
-    sha256 = "1bv3h2p9ffbzyddhi5sccsfwrm3i6yxzn0m06fdxkj2zsvs28gvj";
+    url = "https://salsa.debian.org/python-team/modules/python-distutils-extra/-/archive/${version}/python-${pname}-${version}.tar.bz2";
+    sha256 = "1aifizd4nkvdnkwdna7i6xgjcqi1cf228bg8kmnwz67f5rflk3z8";
   };
 
+  # Tests are out-dated as the last upstream release is from 2016
+  doCheck = false;
+
+  pythonImportsCheck = [ "DistUtilsExtra" ];
+
   meta = with lib; {
-    homepage = "https://launchpad.net/python-distutils-extra";
     description = "Enhancements to Python's distutils";
-    license = licenses.gpl2;
+    homepage = "https://launchpad.net/python-distutils-extra";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ fab ];
   };
-
 }
diff --git a/nixpkgs/pkgs/development/python-modules/django-extensions/default.nix b/nixpkgs/pkgs/development/python-modules/django-extensions/default.nix
index 8ee903bedc2a..cbe5dfbaa70b 100644
--- a/nixpkgs/pkgs/development/python-modules/django-extensions/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/django-extensions/default.nix
@@ -5,7 +5,7 @@
 , mock
 , pygments
 , pytest
-, pytestcov
+, pytest-cov
 , pytest-django
 , python-dateutil
 , shortuuid
@@ -40,7 +40,7 @@ buildPythonPackage rec {
     mock
     pygments # not explicitly declared in setup.py, but some tests require it
     pytest
-    pytestcov
+    pytest-cov
     pytest-django
     python-dateutil
     shortuuid
diff --git a/nixpkgs/pkgs/development/python-modules/django_guardian/default.nix b/nixpkgs/pkgs/development/python-modules/django_guardian/default.nix
index 0e3eaff6cb57..9685e55bb1c3 100644
--- a/nixpkgs/pkgs/development/python-modules/django_guardian/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/django_guardian/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi
 , django_environ, mock, django
-, pytest, pytestrunner, pytest-django
+, pytest, pytest-runner, pytest-django
 }:
 buildPythonPackage rec {
   pname = "django-guardian";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
     sha256 = "c58a68ae76922d33e6bdc0e69af1892097838de56e93e78a8361090bcd9f89a0";
   };
 
-  checkInputs = [ pytest pytestrunner pytest-django django_environ mock ];
+  checkInputs = [ pytest pytest-runner pytest-django django_environ mock ];
   propagatedBuildInputs = [ django ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/docker/default.nix b/nixpkgs/pkgs/development/python-modules/docker/default.nix
index 5e5071e93086..3c41ccd17324 100644
--- a/nixpkgs/pkgs/development/python-modules/docker/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/docker/default.nix
@@ -14,11 +14,11 @@
 
 buildPythonPackage rec {
   pname = "docker";
-  version = "4.4.4";
+  version = "5.0.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "d3393c878f575d3a9ca3b94471a3c89a6d960b35feb92f033c0de36cc9d934db";
+    sha256 = "sha256-PovEdTTgypMx1ywy8ogbsTuT3tC83qs8gz+3z2HAqaU=";
   };
 
   nativeBuildInputs = lib.optional isPy27 mock;
diff --git a/nixpkgs/pkgs/development/python-modules/dockerfile-parse/default.nix b/nixpkgs/pkgs/development/python-modules/dockerfile-parse/default.nix
index 7afe92b4337b..e9a31b461fd6 100644
--- a/nixpkgs/pkgs/development/python-modules/dockerfile-parse/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dockerfile-parse/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, six, pytestcov, pytest }:
+{ lib, buildPythonPackage, fetchPypi, six, pytest-cov, pytest }:
 
 buildPythonPackage rec {
   version = "1.2.0";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ six ];
 
-  checkInputs = [ pytestcov pytest ];
+  checkInputs = [ pytest-cov pytest ];
 
   meta = with lib; {
     description = "Python library for parsing Dockerfile files";
diff --git a/nixpkgs/pkgs/development/python-modules/dogpile.cache/default.nix b/nixpkgs/pkgs/development/python-modules/dogpile.cache/default.nix
index 6e14355c2934..05eb173c5599 100644
--- a/nixpkgs/pkgs/development/python-modules/dogpile.cache/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dogpile.cache/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , pythonOlder
 , pytest
-, pytestcov
+, pytest-cov
 , mock
 , Mako
 , decorator
@@ -33,7 +33,7 @@ buildPythonPackage rec {
     pytest
   '';
 
-  checkInputs = [ pytest pytestcov mock Mako ];
+  checkInputs = [ pytest pytest-cov mock Mako ];
 
   propagatedBuildInputs = [ decorator stevedore ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/dropbox/default.nix b/nixpkgs/pkgs/development/python-modules/dropbox/default.nix
index c6751eede2fe..f5a9274a0d18 100644
--- a/nixpkgs/pkgs/development/python-modules/dropbox/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dropbox/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, pytestrunner, requests, urllib3, mock, setuptools, stone }:
+, pytest-runner, requests, urllib3, mock, setuptools, stone }:
 
 buildPythonPackage rec {
   pname = "dropbox";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   # Set DROPBOX_TOKEN environment variable to a valid token.
   doCheck = false;
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
   propagatedBuildInputs = [ requests urllib3 mock setuptools stone ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/dulwich/default.nix b/nixpkgs/pkgs/development/python-modules/dulwich/default.nix
index a9af41c499d7..eacaa00f1526 100644
--- a/nixpkgs/pkgs/development/python-modules/dulwich/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dulwich/default.nix
@@ -15,12 +15,12 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.20.23";
+  version = "0.20.24";
   pname = "dulwich";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-QC5WtcB/BAR50RiOXC9AbiwAaqOUMIAVXUxtBeX8qGU=";
+    sha256 = "1wacchqxxwbhwnfnnhlb40s66f92lkvz6423j4c1w6wb585aqqbb";
   };
 
   LC_ALL = "en_US.UTF-8";
diff --git a/nixpkgs/pkgs/development/python-modules/dyn/default.nix b/nixpkgs/pkgs/development/python-modules/dyn/default.nix
index 7cddb324f3a1..8db7f6c9169d 100644
--- a/nixpkgs/pkgs/development/python-modules/dyn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dyn/default.nix
@@ -1,5 +1,5 @@
-{ lib, buildPythonPackage, fetchPypi, pytest, pytestcov, mock
-, pytest_xdist, covCore, glibcLocales }:
+{ lib, buildPythonPackage, fetchPypi, pytest, pytest-cov, mock
+, pytest-xdist, covCore, glibcLocales }:
 
 buildPythonPackage rec {
   pname = "dyn";
@@ -14,9 +14,9 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytestcov
+    pytest-cov
     mock
-    pytest_xdist
+    pytest-xdist
     covCore
   ];
   # Disable checks because they are not stateless and require internet access.
diff --git a/nixpkgs/pkgs/development/python-modules/easysnmp/default.nix b/nixpkgs/pkgs/development/python-modules/easysnmp/default.nix
index 11b13d8325a0..c55bf52a6643 100644
--- a/nixpkgs/pkgs/development/python-modules/easysnmp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/easysnmp/default.nix
@@ -5,7 +5,7 @@
 , net-snmp
 , openssl
 , pytest
-, pytestcov
+, pytest-cov
 , pytest-flake8
 , pytest-sugar
 , termcolor
@@ -27,7 +27,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytestcov
+    pytest-cov
     pytest-flake8
     pytest-sugar
     termcolor
diff --git a/nixpkgs/pkgs/development/python-modules/editables/default.nix b/nixpkgs/pkgs/development/python-modules/editables/default.nix
new file mode 100644
index 000000000000..ee902d772c99
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/editables/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "editables";
+  version = "0.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "6918f16225258f24ef9800c2327e14eded42ddac344e77982380749464024f35";
+  };
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  # Tests not included in archive.
+  doCheck = false;
+
+  pythonImportsCheck = [ "editables" ];
+
+  meta = with lib; {
+    description = "Editable installations";
+    maintainers = with maintainers; [ ];
+    homepage = "https://github.com/pfmoore/editables";
+    license = licenses.mit;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/enlighten/default.nix b/nixpkgs/pkgs/development/python-modules/enlighten/default.nix
new file mode 100644
index 000000000000..8f58720bd264
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/enlighten/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, stdenv
+, buildPythonPackage
+, fetchPypi
+, blessed
+, prefixed
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "enlighten";
+  version = "1.10.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "3391916586364aedced5d6926482b48745e4948f822de096d32258ba238ea984";
+  };
+
+  propagatedBuildInputs = [
+    blessed
+    prefixed
+  ];
+  checkInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "enlighten" ];
+  disabledTests =
+    # https://github.com/Rockhopper-Technologies/enlighten/issues/44
+    lib.optional stdenv.isDarwin "test_autorefresh"
+    ;
+
+  meta = with lib; {
+    description = "Enlighten Progress Bar for Python Console Apps";
+    homepage = "https://github.com/Rockhopper-Technologies/enlighten";
+    license = with licenses; [ mpl20 ];
+    maintainers = with maintainers; [ veprbl ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/env-canada/default.nix b/nixpkgs/pkgs/development/python-modules/env-canada/default.nix
index 3beb01e3b13e..22894ab9f2a6 100644
--- a/nixpkgs/pkgs/development/python-modules/env-canada/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/env-canada/default.nix
@@ -11,13 +11,13 @@
 
 buildPythonPackage rec {
   pname = "env-canada";
-  version = "0.4.0";
+  version = "0.4.1";
 
   src = fetchFromGitHub {
     owner = "michaeldavie";
     repo = "env_canada";
     rev = "v${version}";
-    sha256 = "0y4yjzmg6ns7a13j1cxqvrff4fd6k97cpc1xjwqrwp7gq49rzhy7";
+    sha256 = "0v1wmjvi05i6mjh6yxqigbf2spf7842198yp98f7h0nyfjmz96hn";
   };
 
   propagatedBuildInputs = [
@@ -42,6 +42,7 @@ buildPythonPackage rec {
     "test_get_latest_frame"
     "test_get_loop"
     "test_get_ec_sites"
+    "test_ecradar"
   ];
 
   pythonImportsCheck = [ "env_canada" ];
diff --git a/nixpkgs/pkgs/development/python-modules/ev3dev2/default.nix b/nixpkgs/pkgs/development/python-modules/ev3dev2/default.nix
new file mode 100644
index 000000000000..f6233db68dbc
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ev3dev2/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, python
+, pillow
+}:
+
+buildPythonPackage rec {
+  pname = "ev3dev2";
+  version = "2.1.0";
+
+  src = fetchFromGitHub {
+    owner = "ev3dev";
+    repo = "ev3dev-lang-python";
+    rev = version;
+    sha256 = "XxsiQs3k5xKb+3RewARbvBbxaztdvdq3w5ZMgTq+kRc=";
+    fetchSubmodules = true;
+  };
+
+  postPatch = ''
+    echo "${version}\n" > RELEASE-VERSION
+  '';
+
+  propagatedBuildInputs = [ pillow ];
+
+  checkPhase = ''
+    chmod -R g+rw ./tests/fake-sys/devices/**/*
+    ${python.interpreter} -W ignore::ResourceWarning tests/api_tests.py
+  '';
+
+  meta = with lib; {
+    description = "Python language bindings for ev3dev";
+    homepage = "https://github.com/ev3dev/ev3dev-lang-python";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ angustrau ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/faker/default.nix b/nixpkgs/pkgs/development/python-modules/faker/default.nix
index 196c7e47b399..ae47989141e9 100644
--- a/nixpkgs/pkgs/development/python-modules/faker/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/faker/default.nix
@@ -6,16 +6,18 @@
 , freezegun
 , pytestCheckHook
 , ukpostcodeparser
+, pillow
 , validators
 }:
 
 buildPythonPackage rec {
-  pname = "Faker";
-  version = "6.6.3";
+  pname = "faker";
+  version = "8.8.2";
 
   src = fetchPypi {
-    inherit pname version;
-    sha256 = "c2852cadc99a4ebdbf06934e4c15e30f2307d414ead21d15605759602645f152";
+    pname = "Faker";
+    inherit version;
+    sha256 = "sha256-IlNMOqbS7584QDojTcm3G1y4ePt2XHKZS+Xce06vCGU=";
   };
 
   propagatedBuildInputs = [
@@ -25,6 +27,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     freezegun
+    pillow
     pytestCheckHook
     ukpostcodeparser
     validators
diff --git a/nixpkgs/pkgs/development/python-modules/fastapi/default.nix b/nixpkgs/pkgs/development/python-modules/fastapi/default.nix
index b804d4943b28..3b14560eb9dd 100644
--- a/nixpkgs/pkgs/development/python-modules/fastapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fastapi/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "fastapi";
-  version = "0.65.2";
+  version = "0.67.0";
   format = "flit";
 
   src = fetchFromGitHub {
     owner = "tiangolo";
     repo = "fastapi";
     rev = version;
-    sha256 = "032srvbfdy02m1b664x67lkdcx6b2bd4c9a9cb176lscjk213240";
+    sha256 = "15zbalyib7ndcbxvf9prj0n9n6qb4bfzhmaacsjrvdmjzmqdjgw0";
   };
 
   postPatch = ''
@@ -51,7 +51,11 @@ buildPythonPackage rec {
   ];
 
   # disabled tests require orjson which requires rust nightly
-  pytestFlagsArray = [ "--ignore=tests/test_default_response_class.py" ];
+
+  # ignoring deprecation warnings to avoid test failure from
+  # tests/test_tutorial/test_testing/test_tutorial001.py
+
+  pytestFlagsArray = [ "--ignore=tests/test_default_response_class.py" "-W ignore::DeprecationWarning"];
   disabledTests = [ "test_get_custom_response" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/fastpair/default.nix b/nixpkgs/pkgs/development/python-modules/fastpair/default.nix
index eaf1a78520a2..45d9976896ec 100644
--- a/nixpkgs/pkgs/development/python-modules/fastpair/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fastpair/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pytestrunner, pytest, scipy, pytestCheckHook }:
+{ lib, buildPythonPackage, fetchFromGitHub, pytest-runner, pytest, scipy, pytestCheckHook }:
 
 buildPythonPackage {
   pname = "fastpair";
@@ -11,7 +11,7 @@ buildPythonPackage {
     sha256 = "1l8zgr8awg27lhlkpa2dsvghrb7b12jl1bkgpzg5q7pg8nizl9mx";
   };
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
 
   checkInputs = [ pytest pytestCheckHook ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/fastparquet/default.nix b/nixpkgs/pkgs/development/python-modules/fastparquet/default.nix
index dc25759afe39..155f3b6e8290 100644
--- a/nixpkgs/pkgs/development/python-modules/fastparquet/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fastparquet/default.nix
@@ -1,23 +1,43 @@
-{ lib, buildPythonPackage, fetchFromGitHub, numba, numpy, pandas, pytestrunner
-, thrift, pytestCheckHook, python-snappy, lz4, zstandard, zstd }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, python
+, numba
+, numpy
+, pandas
+, pytest-runner
+, cramjam
+, fsspec
+, thrift
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "fastparquet";
-  version = "0.5.0";
+  version = "0.6.3";
 
   src = fetchFromGitHub {
     owner = "dask";
     repo = pname;
     rev = version;
-    sha256 = "17i091kky34m2xivk29fqsyxxxa7v4352n79w01n7ni93za6wana";
+    hash = "sha256-wSJ6PqW7c8DJCsGuPhXaVGM2s/1dZhLjG4C0JWPcjhY=";
   };
 
-  nativeBuildInputs = [ pytestrunner ];
-  propagatedBuildInputs = [ numba numpy pandas thrift ];
-  checkInputs = [ pytestCheckHook python-snappy lz4 zstandard zstd ];
+  nativeBuildInputs = [ pytest-runner ];
+  propagatedBuildInputs = [ cramjam fsspec numba numpy pandas thrift ];
+  checkInputs = [ pytestCheckHook ];
+
+  # Workaround https://github.com/NixOS/nixpkgs/issues/123561
+  preCheck = ''
+    mv fastparquet/test .
+    rm -rf fastparquet
+    fastparquet_test="$out"/${python.sitePackages}/fastparquet/test
+    ln -s `pwd`/test "$fastparquet_test"
+  '';
+  postCheck = ''
+    rm "$fastparquet_test"
+  '';
 
-  # E   ModuleNotFoundError: No module named 'fastparquet.speedups'
-  doCheck = false;
   pythonImportsCheck = [ "fastparquet" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/favicon/default.nix b/nixpkgs/pkgs/development/python-modules/favicon/default.nix
index 5af3be420b02..1a3917fbdb7a 100644
--- a/nixpkgs/pkgs/development/python-modules/favicon/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/favicon/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, requests, beautifulsoup4, pytest, requests-mock,
-  pytestrunner }:
+  pytest-runner }:
 
 buildPythonPackage rec {
   pname = "favicon";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     sha256 = "6d6b5a78de2a0d0084589f687f384b2ecd6a6527093fec564403b1a30605d7a8";
   };
 
-  buildInputs = [ pytestrunner ];
+  buildInputs = [ pytest-runner ];
   checkInputs = [ pytest requests-mock ];
   propagatedBuildInputs = [ requests beautifulsoup4 ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/ffmpeg-python/default.nix b/nixpkgs/pkgs/development/python-modules/ffmpeg-python/default.nix
index f845ca6a5d36..1f8c6983cbd8 100644
--- a/nixpkgs/pkgs/development/python-modules/ffmpeg-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ffmpeg-python/default.nix
@@ -5,7 +5,7 @@
 , pytestCheckHook
 , ffmpeg
 , future
-, pytestrunner
+, pytest-runner
 , pytest-mock
 }:
 
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     })
   ];
 
-  buildInputs = [ pytestrunner ];
+  buildInputs = [ pytest-runner ];
   propagatedBuildInputs = [ future ];
   checkInputs = [ pytestCheckHook pytest-mock ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/flake8-future-import/default.nix b/nixpkgs/pkgs/development/python-modules/flake8-future-import/default.nix
index 661b7c71c33d..41e9680937db 100644
--- a/nixpkgs/pkgs/development/python-modules/flake8-future-import/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flake8-future-import/default.nix
@@ -1,4 +1,12 @@
-{ lib, isPy27, isPy38, fetchFromGitHub, buildPythonPackage, pythonOlder, fetchpatch, flake8, importlib-metadata, six }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonAtLeast
+, isPy27
+, flake8
+, six
+, python
+}:
 
 buildPythonPackage rec {
   pname = "flake8-future-import";
@@ -12,16 +20,22 @@ buildPythonPackage rec {
     sha256 = "00q8n15xdnvqj454arn7xxksyrzh0dw996kjyy7g9rdk0rf8x82z";
   };
 
-  propagatedBuildInputs = [ flake8 six ]
-    ++ lib.optionals (pythonOlder "3.8") [
-      importlib-metadata
-    ];
+  patches = lib.optionals (pythonAtLeast "3.8") [
+    ./fix-annotations-version.patch
+  ] ++ lib.optionals isPy27 [
+    # Upstream disables this test case naturally on python 3, but it also fails
+    # inside NixPkgs for python 2. Since it's going to be deleted, we just skip it
+    # on py2 as well.
+    ./skip-test.patch
+  ];
 
-  # Upstream disables this test case naturally on python 3, but it also fails
-  # inside NixPkgs for python 2. Since it's going to be deleted, we just skip it
-  # on py2 as well.
-  patches = lib.optionals isPy38 [ ./fix-annotations-version.patch ]
-    ++ lib.optionals isPy27 [ ./skip-test.patch ];
+  propagatedBuildInputs = [ flake8 ];
+
+  checkInputs = [ six ];
+
+  checkPhase = ''
+    ${python.interpreter} -m test_flake8_future_import
+  '';
 
   meta = with lib; {
     description = "A flake8 extension to check for the imported __future__ modules to make it easier to have a consistent code base";
diff --git a/nixpkgs/pkgs/development/python-modules/flake8/default.nix b/nixpkgs/pkgs/development/python-modules/flake8/default.nix
index b6f287669c58..0110db18c4c3 100644
--- a/nixpkgs/pkgs/development/python-modules/flake8/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flake8/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, pythonOlder
-, mock, pytest, pytestrunner
+, mock, pytest, pytest-runner
 , configparser, enum34, mccabe, pycodestyle, pyflakes, functools32, typing ? null, importlib-metadata
 }:
 
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     sha256 = "07528381786f2a6237b061f6e96610a4167b226cb926e2aa2b6b1d78057c576b";
   };
 
-  checkInputs = [ pytest mock pytestrunner ];
+  checkInputs = [ pytest mock pytest-runner ];
   propagatedBuildInputs = [ pyflakes pycodestyle mccabe ]
     ++ lib.optionals (pythonOlder "3.2") [ configparser functools32 ]
     ++ lib.optionals (pythonOlder "3.4") [ enum34 ]
diff --git a/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix b/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix
index f39393ecff7a..9e6fb1cee78a 100644
--- a/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix
@@ -5,7 +5,6 @@
 , colorama
 , click
 , email_validator
-, fetchpatch
 , flask
 , flask-babel
 , flask_login
@@ -26,23 +25,18 @@
 
 buildPythonPackage rec {
   pname = "flask-appbuilder";
-  version = "3.3.0";
+  version = "3.3.1";
 
   src = fetchPypi {
     pname = "Flask-AppBuilder";
     inherit version;
-    sha256 = "00dsfv1apl6483wy20aj91f9h5ak2casbx5vcajv2nd3i7c7v8gx";
+    sha256 = "13rlpdf3ipm39zpc62sywn8qjn6gwfbgr43x7lqpxr28br2jcg3j";
   };
 
-  patches = [
-    # https://github.com/dpgaspar/Flask-AppBuilder/pull/1610
-    (fetchpatch {
-      name = "flask_jwt_extended-and-pyjwt-patch";
-      url = "https://github.com/dpgaspar/Flask-AppBuilder/commit/7097a7b133f27c78d2b54d2a46e4a4c24478a066.patch";
-      sha256 = "sha256-ZpY8+2Hoz3z01GVtw2OIbQcsmAwa7iwilFWzgcGhY1w=";
-      includes = [ "flask_appbuilder/security/manager.py" "setup.py" ];
-    })
-  ];
+  # See here: https://github.com/dpgaspar/Flask-AppBuilder/commit/7097a7b133f27c78d2b54d2a46e4a4c24478a066.patch
+  #           https://github.com/dpgaspar/Flask-AppBuilder/pull/1610
+  # The patch from the PR doesn't apply cleanly so I edited it manually.
+  patches = [ ./upgrade-to-flask_jwt_extended-4.patch ];
 
   propagatedBuildInputs = [
     apispec
@@ -70,9 +64,15 @@ buildPythonPackage rec {
   postPatch = ''
     substituteInPlace setup.py \
       --replace "apispec[yaml]>=3.3, <4" "apispec[yaml] >=3.3, <5" \
+      --replace "click>=6.7, <8" "click" \
+      --replace "Flask>=0.12, <2" "Flask" \
       --replace "Flask-Login>=0.3, <0.5" "Flask-Login >=0.3, <0.6" \
       --replace "Flask-Babel>=1, <2" "Flask-Babel >=1, <3" \
-      --replace "marshmallow-sqlalchemy>=0.22.0, <0.24.0" "marshmallow-sqlalchemy >=0.22.0, <0.25.0"
+      --replace "Flask-WTF>=0.14.2, <0.15.0" "Flask-WTF" \
+      --replace "marshmallow-sqlalchemy>=0.22.0, <0.24.0" "marshmallow-sqlalchemy" \
+      --replace "Flask-JWT-Extended>=3.18, <4" "Flask-JWT-Extended>=4.1.0" \
+      --replace "PyJWT>=1.7.1, <2.0.0" "PyJWT>=2.0.1" \
+      --replace "SQLAlchemy<1.4.0" "SQLAlchemy"
   '';
 
   # Majority of tests require network access or mongo
diff --git a/nixpkgs/pkgs/development/python-modules/flask-appbuilder/upgrade-to-flask_jwt_extended-4.patch b/nixpkgs/pkgs/development/python-modules/flask-appbuilder/upgrade-to-flask_jwt_extended-4.patch
new file mode 100644
index 000000000000..f2bf072b7f0a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/flask-appbuilder/upgrade-to-flask_jwt_extended-4.patch
@@ -0,0 +1,45 @@
+diff --git a/flask_appbuilder/security/api.py b/flask_appbuilder/security/api.py
+index 2e2dfd612..df1bd5a25 100644
+--- a/flask_appbuilder/security/api.py
++++ b/flask_appbuilder/security/api.py
+@@ -3,7 +3,7 @@
+     create_access_token,
+     create_refresh_token,
+     get_jwt_identity,
+-    jwt_refresh_token_required,
++    jwt_required,
+ )
+ 
+ from ..api import BaseApi, safe
+@@ -118,7 +118,7 @@ def login(self):
+         return self.response(200, **resp)
+ 
+     @expose("/refresh", methods=["POST"])
+-    @jwt_refresh_token_required
++    @jwt_required(refresh=True)
+     @safe
+     def refresh(self):
+         """
+diff --git a/flask_appbuilder/security/manager.py b/flask_appbuilder/security/manager.py
+index fe7697007..3b22ab255 100644
+--- a/flask_appbuilder/security/manager.py
++++ b/flask_appbuilder/security/manager.py
+@@ -297,7 +297,7 @@ def create_jwt_manager(self, app) -> JWTManager:
+         """
+         jwt_manager = JWTManager()
+         jwt_manager.init_app(app)
+-        jwt_manager.user_loader_callback_loader(self.load_user_jwt)
++        jwt_manager.user_lookup_loader(self.load_user_jwt)
+         return jwt_manager
+ 
+     def create_builtin_roles(self):
+@@ -1944,7 +1944,8 @@ def del_permission_role(self, role, perm_view):
+     def load_user(self, pk):
+         return self.get_user_by_id(int(pk))
+ 
+-    def load_user_jwt(self, pk):
++    def load_user_jwt(self, _jwt_header, jwt_data):
++        pk = jwt_data["sub"]
+         user = self.load_user(pk)
+         # Set flask g.user to JWT user, we can't do it on before request
+         g.user = user
diff --git a/nixpkgs/pkgs/development/python-modules/flask-caching/default.nix b/nixpkgs/pkgs/development/python-modules/flask-caching/default.nix
index 708c5c351ea0..9fd80ac6d677 100644
--- a/nixpkgs/pkgs/development/python-modules/flask-caching/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flask-caching/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, isPy27, flask, pytestCheckHook, pytestcov, pytest-xprocess, pytestcache }:
+{ lib, buildPythonPackage, fetchPypi, isPy27, flask, pytestCheckHook, pytest-cov, pytest-xprocess, pytestcache }:
 
 buildPythonPackage rec {
   pname = "Flask-Caching";
@@ -12,7 +12,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ flask ];
 
-  checkInputs = [ pytestCheckHook pytestcov pytest-xprocess pytestcache ];
+  checkInputs = [ pytestCheckHook pytest-cov pytest-xprocess pytestcache ];
 
   disabledTests = [
     # backend_cache relies on pytest-cache, which is a stale package from 2013
diff --git a/nixpkgs/pkgs/development/python-modules/flask-restx/default.nix b/nixpkgs/pkgs/development/python-modules/flask-restx/default.nix
index 4d0d89d0f146..556317ed41f3 100644
--- a/nixpkgs/pkgs/development/python-modules/flask-restx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flask-restx/default.nix
@@ -49,7 +49,7 @@ buildPythonPackage rec {
     "--deselect=tests/test_logging.py::LoggingTest::test_override_app_level"
   ];
 
-  pythonImportCheck = [ "flask_restx" ];
+  pythonImportsCheck = [ "flask_restx" ];
 
   meta = with lib; {
     homepage = "https://flask-restx.readthedocs.io/en/${version}/";
diff --git a/nixpkgs/pkgs/development/python-modules/flickrapi/default.nix b/nixpkgs/pkgs/development/python-modules/flickrapi/default.nix
index cfcc4d362997..d7d20f19ea7b 100644
--- a/nixpkgs/pkgs/development/python-modules/flickrapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flickrapi/default.nix
@@ -2,11 +2,11 @@
 , buildPythonPackage
 , fetchPypi
 , requests
-, requests_toolbelt
+, requests-toolbelt
 , requests_oauthlib
 , pytest
-, pytestrunner
-, pytestcov
+, pytest-runner
+, pytest-cov
 , responses
 }:
 
@@ -19,9 +19,9 @@ buildPythonPackage rec {
     sha256 = "03g2z21k6nhxgwysjrgnxj9m1yg25mnnkr10gpyfhfkd9w77pcpz";
   };
 
-  propagatedBuildInputs = [ requests requests_toolbelt requests_oauthlib ];
+  propagatedBuildInputs = [ requests requests-toolbelt requests_oauthlib ];
 
-  checkInputs = [ pytest pytestrunner pytestcov responses ];
+  checkInputs = [ pytest pytest-runner pytest-cov responses ];
   doCheck = false; # Otherwise:
   # ========================= no tests ran in 0.01 seconds =========================
   # builder for '/nix/store/c8a58v6aa18zci08q2l53s12ywn8jqhq-python3.6-flickrapi-2.4.0.drv' failed with exit code 5
diff --git a/nixpkgs/pkgs/development/python-modules/flufl/lock.nix b/nixpkgs/pkgs/development/python-modules/flufl/lock.nix
index ce2ead246f95..40ce524c6675 100644
--- a/nixpkgs/pkgs/development/python-modules/flufl/lock.nix
+++ b/nixpkgs/pkgs/development/python-modules/flufl/lock.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, pytestCheckHook
-, atpublic, psutil, pytestcov, sybil
+, atpublic, psutil, pytest-cov, sybil
 }:
 
 buildPythonPackage rec {
@@ -12,7 +12,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [ atpublic psutil ];
-  checkInputs = [ pytestCheckHook pytestcov sybil ];
+  checkInputs = [ pytestCheckHook pytest-cov sybil ];
 
   # disable code coverage checks for all OS. Upstream does not enforce these
   # checks on Darwin, and code coverage cannot be improved downstream nor is it
diff --git a/nixpkgs/pkgs/development/python-modules/fontmath/default.nix b/nixpkgs/pkgs/development/python-modules/fontmath/default.nix
index 7a23abdd0374..d9516ceb88b4 100644
--- a/nixpkgs/pkgs/development/python-modules/fontmath/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fontmath/default.nix
@@ -1,20 +1,23 @@
-{ lib, buildPythonPackage, fetchPypi
-, fonttools
-, pytest, pytestrunner
+{ lib, buildPythonPackage, fetchPypi, isPy27
+, fonttools, setuptools-scm
+, pytest, pytest-runner
 }:
 
 buildPythonPackage rec {
   pname = "fontMath";
-  version = "0.6.0";
+  version = "0.8.1";
+  disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "09xdqdjyjlx5k9ymi36d7hkgvn55zzjzd65l2yqidkfazlmh14ss";
+    sha256 = "0m2z2wwbxwljfcrg8hx4xq538adzcjpc352yqbfw0czbgs5ixmrr";
     extension = "zip";
   };
 
+  nativeBuildInputs = [ setuptools-scm ];
+
   propagatedBuildInputs = [ fonttools ];
-  checkInputs = [ pytest pytestrunner ];
+  checkInputs = [ pytest pytest-runner ];
 
   meta = with lib; {
     description = "A collection of objects that implement fast font, glyph, etc. math";
diff --git a/nixpkgs/pkgs/development/python-modules/fritzprofiles/default.nix b/nixpkgs/pkgs/development/python-modules/fritzprofiles/default.nix
new file mode 100644
index 000000000000..17716e5fc950
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/fritzprofiles/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, lxml
+, requests
+}:
+
+buildPythonPackage rec {
+  pname = "fritzprofiles";
+  version = "0.6.1";
+  format = "setuptools";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1bd4sa3i1ldkg6lnsvg004csgqklvi5xk71y971qyjvsbdbwgbn3";
+  };
+
+  propagatedBuildInputs = [
+    lxml
+    requests
+  ];
+
+  pythonImportsCheck = [
+    "fritzprofiles"
+  ];
+
+  # no tests
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Tool to switch the online time of profiles in the AVM Fritz!Box";
+    homepage = "https://github.com/AaronDavidSchneider/fritzprofiles";
+    license = licenses.mit;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/furl/default.nix b/nixpkgs/pkgs/development/python-modules/furl/default.nix
index da52bfb8fbcd..c3c45e48d663 100644
--- a/nixpkgs/pkgs/development/python-modules/furl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/furl/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, fetchpatch
 , flake8
 , orderedmultidict
 , pytestCheckHook
@@ -10,21 +9,13 @@
 
 buildPythonPackage rec {
   pname = "furl";
-  version = "2.1.0";
+  version = "2.1.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "08dnw3bs1mk0f1ccn466a5a7fi1ivwrp0jspav9arqpf3wd27q60";
+    sha256 = "sha256-99ujPq++59vIOWNTSyXnL4FsztSKxTGR7mC/zGKTORg=";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "tests_overcome_bpo42967.patch";
-      url = "https://github.com/gruns/furl/files/6030371/tests_overcome_bpo42967.patch.txt";
-      sha256 = "1l0lxmcp9x73kxy0ky2bh7zxa4n1cf1qxyyax97n90d1s3dc7k2q";
-    })
-  ];
-
   propagatedBuildInputs = [
     orderedmultidict
     six
@@ -35,11 +26,6 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  disabledTests = [
-     # see https://github.com/gruns/furl/issues/121
-    "join"
-  ];
-
   pythonImportsCheck = [ "furl" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/garminconnect-ha/default.nix b/nixpkgs/pkgs/development/python-modules/garminconnect-ha/default.nix
index e3d4cd5b48e9..c88af9b230e1 100644
--- a/nixpkgs/pkgs/development/python-modules/garminconnect-ha/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/garminconnect-ha/default.nix
@@ -1,21 +1,23 @@
 { lib
 , buildPythonPackage
+, cloudscraper
 , fetchFromGitHub
 , requests
 }:
 
 buildPythonPackage rec {
   pname = "garminconnect-ha";
-  version = "0.1.6";
+  version = "0.1.13";
 
   src = fetchFromGitHub {
     owner = "cyberjunky";
     repo = "python-garminconnect-ha";
     rev = version;
-    sha256 = "0ngas6zikhpja1cdkq64m9pjm4b0z3qaj9g3x88mggy60jsxm1d7";
+    sha256 = "sha256-1O1EcG5FvpwUvI8rwcdlQLzEEStyFAwvmkaL97u6hZ4=";
   };
 
   propagatedBuildInputs = [
+    cloudscraper
     requests
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/gast/default.nix b/nixpkgs/pkgs/development/python-modules/gast/default.nix
index 38334d5cc6b4..7e8d9f8d4ac5 100644
--- a/nixpkgs/pkgs/development/python-modules/gast/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gast/default.nix
@@ -2,10 +2,10 @@
 
 buildPythonPackage rec {
   pname = "gast";
-  version =  "0.4.0";
+  version =  "0.5.0";
   src = fetchPypi {
     inherit pname version;
-    sha256 = "40feb7b8b8434785585ab224d1568b857edb18297e5a3047f1ba012bc83b42c1";
+    sha256 = "8109cbe7aa0f7bf7e4348379da05b8137ea1f059f073332c3c1cedd57db8541f";
   };
   checkInputs = [ astunparse ] ;
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/genanki/default.nix b/nixpkgs/pkgs/development/python-modules/genanki/default.nix
index f755bb8cf8f5..2c54bc4910b5 100644
--- a/nixpkgs/pkgs/development/python-modules/genanki/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/genanki/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, isPy3k
-, cached-property, frozendict, pystache, pyyaml, pytest, pytestrunner
+, cached-property, frozendict, pystache, pyyaml, pytest, pytest-runner
 }:
 
 buildPythonPackage rec {
@@ -12,7 +12,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [
-    pytestrunner
+    pytest-runner
     cached-property
     frozendict
     pystache
diff --git a/nixpkgs/pkgs/development/python-modules/geographiclib/default.nix b/nixpkgs/pkgs/development/python-modules/geographiclib/default.nix
index 5167b9866049..0526a584a41b 100644
--- a/nixpkgs/pkgs/development/python-modules/geographiclib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/geographiclib/default.nix
@@ -1,22 +1,27 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "geographiclib";
-  version = "1.50";
+  version = "1.52";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0cn6ap5fkh3mkfa57l5b44z3gvz7j6lpmc9rl4g2jny2gvp4dg8j";
+    sha256 = "sha256-rEANZyuJVLAwa8qJCwiLuLoqdX3IEzzKC4ePNLM7J0A=";
   };
 
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "geographiclib" ];
+
   meta = with lib; {
     homepage = "https://geographiclib.sourceforge.io";
     description = "Algorithms for geodesics (Karney, 2013) for solving the direct and inverse problems for an ellipsoid of revolution";
     license = licenses.mit;
-    maintainers = with maintainers; [ va1entin ];
   };
-
 }
diff --git a/nixpkgs/pkgs/development/python-modules/geopy/default.nix b/nixpkgs/pkgs/development/python-modules/geopy/default.nix
index 693a4221ee09..6b05bb722837 100644
--- a/nixpkgs/pkgs/development/python-modules/geopy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/geopy/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "geopy";
-  version = "2.1.0";
+  version = "2.2.0";
   disabled = !isPy3k; # only Python 3
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "0239a4achk49ngagb6aqy6cgzfwgbxir07vwi13ysbpx78y0l4g9";
+    sha256 = "sha256-zFz0T/M/CABKkChuiKsFkWj2pphZuFeE5gz0HxZYaz8=";
   };
 
   propagatedBuildInputs = [ geographiclib ];
diff --git a/nixpkgs/pkgs/development/python-modules/gidgethub/default.nix b/nixpkgs/pkgs/development/python-modules/gidgethub/default.nix
index a65de61b6dbe..691af2eda849 100644
--- a/nixpkgs/pkgs/development/python-modules/gidgethub/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gidgethub/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , pythonOlder
 , setuptools
-, pytestrunner
+, pytest-runner
 , pytest
 , pytest-asyncio
 , twisted
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     sha256 = "3efbd6998600254ec7a2869318bd3ffde38edc3a0d37be0c14bc46b45947b682";
   };
 
-  nativeBuildInputs = [ setuptools pytestrunner ];
+  nativeBuildInputs = [ setuptools pytest-runner ];
   checkInputs = [ pytest pytest-asyncio twisted treq tornado aiohttp ];
   propagatedBuildInputs = [
     uritemplate
diff --git a/nixpkgs/pkgs/development/python-modules/gios/default.nix b/nixpkgs/pkgs/development/python-modules/gios/default.nix
index 71aae7b66ad9..3c5de1295c26 100644
--- a/nixpkgs/pkgs/development/python-modules/gios/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gios/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "gios";
-  version = "1.0.1";
+  version = "1.0.2";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "bieniu";
     repo = pname;
     rev = version;
-    sha256 = "031z5j1j961pcw8s4ajj5z2xn2jxb2hyfn3x3bxbaagwl9a5qkvn";
+    sha256 = "sha256-7+np1lUbBFSTJNAD6OT5k89MM+kzEj90JlulXGm36k8=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/google-i18n-address/default.nix b/nixpkgs/pkgs/development/python-modules/google-i18n-address/default.nix
index 53ce654e41bb..e2724ac123c8 100644
--- a/nixpkgs/pkgs/development/python-modules/google-i18n-address/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-i18n-address/default.nix
@@ -1,18 +1,26 @@
-{ buildPythonPackage, fetchPypi, pythonAtLeast, lib, requests, pytestCheckHook, mock }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, requests
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "google-i18n-address";
-  version = "2.4.0";
-  disabled = pythonAtLeast "3.9";
+  version = "2.5.0";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "8454a58f254a29988b8d1ca9ab663fd28a1f392a3d29b844d8824807db6333d7";
+  src = fetchFromGitHub {
+    owner = "mirumee";
+    repo = "google-i18n-address";
+    rev = version;
+    sha256 = "0fn5sph6fq68zrjssgvnnvrkavs8arshjwgxng5dr5fsn6qii3mq";
   };
 
   propagatedBuildInputs = [ requests ];
 
-  checkInputs = [ pytestCheckHook mock ];
+  checkInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "i18naddress" ];
 
   meta = with lib; {
     description = "Google's i18n address data packaged for Python";
diff --git a/nixpkgs/pkgs/development/python-modules/gprof2dot/default.nix b/nixpkgs/pkgs/development/python-modules/gprof2dot/default.nix
index 28609919098f..3170d199cf55 100644
--- a/nixpkgs/pkgs/development/python-modules/gprof2dot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gprof2dot/default.nix
@@ -1,12 +1,13 @@
 { lib, fetchFromGitHub, buildPythonApplication, python, graphviz }:
 
-buildPythonApplication {
-  name = "gprof2dot-2019-11-30";
+buildPythonApplication rec {
+  pname = "gprof2dot";
+  version = "2019.11.30";
 
   src = fetchFromGitHub {
     owner = "jrfonseca";
     repo = "gprof2dot";
-    rev = "2019.11.30";
+    rev = version;
     sha256 = "1nw4cfwimd0djarw4wc756q095xir78js8flmycg6g7sl3l6p27s";
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/gradient/default.nix b/nixpkgs/pkgs/development/python-modules/gradient/default.nix
index 92ddbbd73f7b..57b58699ec38 100644
--- a/nixpkgs/pkgs/development/python-modules/gradient/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gradient/default.nix
@@ -15,7 +15,7 @@
 , pyopenssl
 , pyyaml
 , requests
-, requests_toolbelt
+, requests-toolbelt
 , terminaltables
 , websocket-client
 }:
@@ -53,7 +53,7 @@ buildPythonPackage rec {
     pyopenssl
     pyyaml
     requests
-    requests_toolbelt
+    requests-toolbelt
     terminaltables
     websocket-client
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/grandalf/default.nix b/nixpkgs/pkgs/development/python-modules/grandalf/default.nix
index 2d2658e00f84..6056d215d227 100644
--- a/nixpkgs/pkgs/development/python-modules/grandalf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/grandalf/default.nix
@@ -4,7 +4,7 @@
 , pyparsing
 , future
 , pytest
-, pytestrunner
+, pytest-runner
 }:
 
 buildPythonPackage rec {
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     future
   ];
 
-  checkInputs = [ pytest pytestrunner ];
+  checkInputs = [ pytest pytest-runner ];
 
   patches = [ ./no-setup-requires-pytestrunner.patch ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/graphene/default.nix b/nixpkgs/pkgs/development/python-modules/graphene/default.nix
index c2776e20e2bb..30947c143030 100644
--- a/nixpkgs/pkgs/development/python-modules/graphene/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/graphene/default.nix
@@ -50,7 +50,8 @@ buildPythonPackage rec {
   pytestFlagsArray = [ "--benchmark-disable" ];
 
   disabledTests = [
-    # TypeError: Failed: DID NOT RAISE <class...
+    # Expects different Exeception classes, but receives none of them
+    # https://github.com/graphql-python/graphene/issues/1346
     "test_unexpected_error"
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/graphtage/default.nix b/nixpkgs/pkgs/development/python-modules/graphtage/default.nix
index c222ea521bb8..500d157427d1 100644
--- a/nixpkgs/pkgs/development/python-modules/graphtage/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/graphtage/default.nix
@@ -37,6 +37,11 @@ buildPythonPackage rec {
 
   checkInputs = [ pytestCheckHook ];
 
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "json5==0.9.5" "json5>=0.9.5"
+  '';
+
   pythonImportsCheck = [ "graphtage" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/graspologic/default.nix b/nixpkgs/pkgs/development/python-modules/graspologic/default.nix
index 758f988a2395..37ff849a3cb9 100644
--- a/nixpkgs/pkgs/development/python-modules/graspologic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/graspologic/default.nix
@@ -3,7 +3,7 @@
 , isPy27
 , fetchFromGitHub
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , hyppo
 , matplotlib
 , networkx
@@ -36,7 +36,7 @@ buildPythonPackage rec {
     seaborn
   ];
 
-  checkInputs = [ pytestCheckHook pytestcov ];
+  checkInputs = [ pytestCheckHook pytest-cov ];
   pytestFlagsArray = [ "tests" "--ignore=docs" "--ignore=tests/test_sklearn.py" ];
   disabledTests = [ "gridplot_outputs" ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/greenlet/default.nix b/nixpkgs/pkgs/development/python-modules/greenlet/default.nix
index 8762d62e59b9..4d829f3d6473 100644
--- a/nixpkgs/pkgs/development/python-modules/greenlet/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/greenlet/default.nix
@@ -3,6 +3,7 @@
 , fetchPypi
 , six
 , isPyPy
+, python
 }:
 
 
@@ -16,11 +17,18 @@ buildPythonPackage rec {
     sha256 = "c87df8ae3f01ffb4483c796fe1b15232ce2b219f0b18126948616224d3f658ee";
   };
 
-  propagatedBuildInputs = [ six ];
+  checkPhase = ''
+    runHook preCheck
+    ${python.interpreter} -m unittest discover -v greenlet.tests
+    runHook postCheck
+  '';
 
-  meta = {
-    homepage = "https://pypi.python.org/pypi/greenlet";
+  meta = with lib; {
+    homepage = "https://github.com/python-greenlet/greenlet";
     description = "Module for lightweight in-process concurrent programming";
-    license = lib.licenses.lgpl2;
+    license = with licenses; [
+      psfl  # src/greenlet/slp_platformselect.h & files in src/greenlet/platform/ directory
+      mit
+    ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/grpcio-tools/default.nix b/nixpkgs/pkgs/development/python-modules/grpcio-tools/default.nix
index 7236f7c22e3d..0e095126676d 100644
--- a/nixpkgs/pkgs/development/python-modules/grpcio-tools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/grpcio-tools/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "grpcio-tools";
-  version = "1.38.1";
+  version = "1.39.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "cd85f58038b92e1961f8127d79691e84e151390d35cae73c4c0cbe2042f76b77";
+    sha256 = "39dfe7415bc0d3860fdb8dd90607594b046b88b57dbe64284efa4820f951c805";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/development/python-modules/gruut-ipa/default.nix b/nixpkgs/pkgs/development/python-modules/gruut-ipa/default.nix
new file mode 100644
index 000000000000..50140ef8308d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/gruut-ipa/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pkgs
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "gruut-ipa";
+  version = "0.9.3";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "rhasspy";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-d/AbvgAD3GHXpwhqjT5Xt9q7Kix+eFMX4kW2BywZWX0=";
+  };
+
+  postPatch = ''
+    patchShebangs bin/speak-ipa
+    substituteInPlace bin/speak-ipa \
+      --replace '${"\${src_dir}:"}' "$out/lib/${python.libPrefix}/site-packages:" \
+      --replace "do espeak" "do ${pkgs.espeak}/bin/espeak"
+  '';
+
+  postInstall = ''
+    install -m0755 bin/speak-ipa $out/bin/speak-ipa
+  '';
+
+  checkPhase = ''
+    runHook preCheck
+    ${python.interpreter} -m unittest discover
+    runHook postCheck
+  '';
+
+  pythonImportsCheck = [
+    "gruut_ipa"
+  ];
+
+  meta = with lib; {
+    description = "Library for manipulating pronunciations using the International Phonetic Alphabet (IPA)";
+    homepage = "https://github.com/rhasspy/gruut-ipa";
+    license = licenses.mit;
+    maintainers = teams.tts.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/gruut/default.nix b/nixpkgs/pkgs/development/python-modules/gruut/default.nix
new file mode 100644
index 000000000000..75d0c365e610
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/gruut/default.nix
@@ -0,0 +1,74 @@
+{ lib
+, buildPythonPackage
+, callPackage
+, pythonOlder
+, fetchFromGitHub
+, Babel
+, gruut-ipa
+, jsonlines
+, num2words
+, python-crfsuite
+, dataclasses
+, python
+}:
+
+let
+  langPkgs = [
+    "cs"
+    "de"
+    "es"
+    "fr"
+    "it"
+    "nl"
+    "pt"
+    "ru"
+    "sv"
+    "sw"
+  ];
+in
+buildPythonPackage rec {
+  pname = "gruut";
+  version = "1.2.3";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "rhasspy";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-qY4xsoVk1hyY9dYmVXaqDRjcShUQmp8VZOzAQNiC6EM=";
+  };
+
+  postPatch = ''
+    substituteInPlace requirements.txt \
+      --replace "Babel~=2.8.0" "Babel"
+  '';
+
+  propagatedBuildInputs = [
+    Babel
+    gruut-ipa
+    jsonlines
+    num2words
+    python-crfsuite
+  ] ++ lib.optionals (pythonOlder "3.7") [
+    dataclasses
+  ] ++ (map (lang: callPackage ./language-pack.nix {
+    inherit lang version format src;
+  }) langPkgs);
+
+  checkPhase = ''
+    runHook preCheck
+    ${python.interpreter} -m unittest discover
+    runHook postCheck
+  '';
+
+  pythonImportsCheck = [
+    "gruut"
+  ];
+
+  meta = with lib; {
+    description = "A tokenizer, text cleaner, and phonemizer for many human languages";
+    homepage = "https://github.com/rhasspy/gruut";
+    license = licenses.mit;
+    maintainers = teams.tts.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/gruut/language-pack.nix b/nixpkgs/pkgs/development/python-modules/gruut/language-pack.nix
new file mode 100644
index 000000000000..2d3cfa9cc518
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/gruut/language-pack.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+
+, lang
+, version
+, format
+, src
+}:
+
+buildPythonPackage rec {
+  pname = "gruut-lang-${lang}";
+  inherit version format src;
+
+  prePatch = ''
+    cd "${pname}"
+  '';
+
+  pythonImportsCheck = [
+    "gruut_lang_${lang}"
+  ];
+
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Language files for gruut tokenizer/phonemizer";
+    homepage = "https://github.com/rhasspy/gruut";
+    license = licenses.mit;
+    maintainers = teams.tts.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/guessit/default.nix b/nixpkgs/pkgs/development/python-modules/guessit/default.nix
index adb131868c7c..0e8d07465989 100644
--- a/nixpkgs/pkgs/development/python-modules/guessit/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/guessit/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, pytestrunner
+, pytest-runner
 , python-dateutil
 , babelfish
 , rebulk
@@ -18,7 +18,7 @@ buildPythonPackage rec {
 
   # Tests require more packages.
   doCheck = false;
-  buildInputs = [ pytestrunner ];
+  buildInputs = [ pytest-runner ];
   propagatedBuildInputs = [
     python-dateutil babelfish rebulk
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/gunicorn/19.nix b/nixpkgs/pkgs/development/python-modules/gunicorn/19.nix
index 7d43ce95a7e3..a7a418afa18c 100644
--- a/nixpkgs/pkgs/development/python-modules/gunicorn/19.nix
+++ b/nixpkgs/pkgs/development/python-modules/gunicorn/19.nix
@@ -2,7 +2,7 @@
 , coverage
 , mock
 , pytest
-, pytestcov
+, pytest-cov
 , setuptools
 }:
 
@@ -17,7 +17,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ setuptools ];
 
-  checkInputs = [ pytest mock pytestcov coverage ];
+  checkInputs = [ pytest mock pytest-cov coverage ];
 
   prePatch = ''
     substituteInPlace requirements_test.txt --replace "==" ">=" \
diff --git a/nixpkgs/pkgs/development/python-modules/gunicorn/default.nix b/nixpkgs/pkgs/development/python-modules/gunicorn/default.nix
index c1f36c20566f..ba948a68915a 100644
--- a/nixpkgs/pkgs/development/python-modules/gunicorn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gunicorn/default.nix
@@ -2,7 +2,7 @@
 , coverage
 , mock
 , pytest
-, pytestcov
+, pytest-cov
 , setuptools
 }:
 
@@ -18,7 +18,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ setuptools ];
 
-  checkInputs = [ pytest mock pytestcov coverage ];
+  checkInputs = [ pytest mock pytest-cov coverage ];
 
   prePatch = ''
     substituteInPlace requirements_test.txt --replace "==" ">=" \
diff --git a/nixpkgs/pkgs/development/python-modules/gym/default.nix b/nixpkgs/pkgs/development/python-modules/gym/default.nix
index a1cd76cd38e4..888dbf45342e 100644
--- a/nixpkgs/pkgs/development/python-modules/gym/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gym/default.nix
@@ -11,13 +11,13 @@
 
 buildPythonPackage rec {
   pname = "gym";
-  version = "0.18.1";
+  version = "0.18.3";
 
   src = fetchFromGitHub {
     owner = "openai";
     repo = pname;
     rev = version;
-    sha256 = "0mv4af2y9d1y97bsda94f21nis2jm1zkzv7c806vmvzh5s4r8nfn";
+    sha256 = "sha256-10KHUG6WacYzqna97vEhSQWDmJDvDmD5QxLhPW5NQSs=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/h2/default.nix b/nixpkgs/pkgs/development/python-modules/h2/default.nix
index fccc16432168..fcd283621493 100644
--- a/nixpkgs/pkgs/development/python-modules/h2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/h2/default.nix
@@ -39,7 +39,7 @@ buildPythonPackage rec {
     hypothesis
   ];
 
-  pythonImportCheck = [
+  pythonImportsCheck = [
     "h2.connection"
     "h2.config"
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/hap-python/default.nix b/nixpkgs/pkgs/development/python-modules/hap-python/default.nix
index 946f0039a0af..cba02387be5d 100644
--- a/nixpkgs/pkgs/development/python-modules/hap-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hap-python/default.nix
@@ -17,15 +17,15 @@
 
 buildPythonPackage rec {
   pname = "hap-python";
-  version = "3.5.0";
-  disabled = pythonOlder "3.5";
+  version = "3.5.1";
+  disabled = pythonOlder "3.6";
 
   # pypi package does not include tests
   src = fetchFromGitHub {
     owner = "ikalchev";
     repo = "HAP-python";
     rev = "v${version}";
-    sha256 = "1vzlfx0gpidl0rzv4z94pziwm6rj4lrilly5pykgq984y708pcqf";
+    sha256 = "sha256-ZHTqlb7LIDp8MFNW8MFg6jX7QwaxT40cLi3H13ONLCI=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/hatasmota/default.nix b/nixpkgs/pkgs/development/python-modules/hatasmota/default.nix
index abfc4523965f..9a7ab056a311 100644
--- a/nixpkgs/pkgs/development/python-modules/hatasmota/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hatasmota/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "hatasmota";
-  version = "0.2.14";
+  version = "0.2.19";
 
   src = fetchFromGitHub {
     owner = "emontnemery";
     repo = pname;
     rev = version;
-    sha256 = "sha256-sCGUlEN1ejWhc2+9JRQ7UPqueq30u8gGSPRxbs4cnLE=";
+    sha256 = "sha256-h1idJJd2lPV3+tAE59gzITa7jmtBhcEpRuyflf76EAk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/hcloud/default.nix b/nixpkgs/pkgs/development/python-modules/hcloud/default.nix
index 1bae0d633e32..8f359d39e2d8 100644
--- a/nixpkgs/pkgs/development/python-modules/hcloud/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hcloud/default.nix
@@ -8,15 +8,17 @@
 , isort
 , mock
 , pytest
+, isPy27
 }:
 
 buildPythonPackage rec {
   pname = "hcloud";
-  version = "1.12.0";
+  version = "1.13.0";
+  disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1fka4m3kbz52pksrjw3v42k611x5kl06dxrc7p5rb64jg6gayjfl";
+    sha256 = "0f84nwr3ddzivlnswwmhvm3lgq9fy3n7nryy93xqpk5nxcd1ybpn";
   };
 
   propagatedBuildInputs = [ future requests python-dateutil ];
diff --git a/nixpkgs/pkgs/development/python-modules/hickle/default.nix b/nixpkgs/pkgs/development/python-modules/hickle/default.nix
index 1d6d6b39d043..21af8addaac0 100644
--- a/nixpkgs/pkgs/development/python-modules/hickle/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hickle/default.nix
@@ -9,8 +9,8 @@
 , pandas
 , codecov
 , pytest
-, pytestcov
-, pytestrunner
+, pytest-cov
+, pytest-runner
 , coveralls
 , twine
 , check-manifest
@@ -36,7 +36,7 @@ buildPythonPackage rec {
 
   doCheck = false; # incompatible with latest astropy
   checkInputs = [
-    pytest pytestcov pytestrunner coveralls scipy pandas astropy twine check-manifest codecov
+    pytest pytest-cov pytest-runner coveralls scipy pandas astropy twine check-manifest codecov
   ];
 
   pythonImportsCheck = [ "hickle" ];
diff --git a/nixpkgs/pkgs/development/python-modules/homepluscontrol/default.nix b/nixpkgs/pkgs/development/python-modules/homepluscontrol/default.nix
index 680c4a5a7266..7870247e2fdf 100644
--- a/nixpkgs/pkgs/development/python-modules/homepluscontrol/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/homepluscontrol/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "homepluscontrol";
-  version = "0.0.5";
+  version = "0.0.61";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "chemaaa";
     repo = pname;
     rev = version;
-    sha256 = "1nd3a7nhh1xb70cdh2h2bimwbffvpc3457smyzr9fqkjwfbcrr93";
+    sha256 = "1g61xj417dz1nz5g5ic8rs34fp424zvbgsymry1zldg3gskaqgvk";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/httpcore/default.nix b/nixpkgs/pkgs/development/python-modules/httpcore/default.nix
index de2f9b00f538..c6c7b3372140 100644
--- a/nixpkgs/pkgs/development/python-modules/httpcore/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/httpcore/default.nix
@@ -8,7 +8,7 @@
 , pproxy
 , pytest-asyncio
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , sniffio
 , trio
 , trustme
@@ -38,7 +38,7 @@ buildPythonPackage rec {
     pproxy
     pytest-asyncio
     pytestCheckHook
-    pytestcov
+    pytest-cov
     trio
     trustme
     uvicorn
diff --git a/nixpkgs/pkgs/development/python-modules/httplib2/default.nix b/nixpkgs/pkgs/development/python-modules/httplib2/default.nix
index 40bfe4d3e884..756d3e4ddcc4 100644
--- a/nixpkgs/pkgs/development/python-modules/httplib2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/httplib2/default.nix
@@ -2,6 +2,7 @@
 , stdenv
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , isPy27
 , mock
 , pyparsing
@@ -24,6 +25,14 @@ buildPythonPackage rec {
     sha256 = "sha256-e0Mq9AVJEWQ9GEtYFXk2fMIs7GtAUsyJN6XheqAnD3I=";
   };
 
+  patches = [
+    # fix test_inject_space
+    (fetchpatch {
+      url = "https://github.com/httplib2/httplib2/commit/08d6993b69256fbc6c0b1c615c24910803c4d610.patch";
+      sha256 = "0kbd1skn58m20kfkh4qzd66g9bvj31xlkbhsg435dkk4qz6l3yn3";
+    })
+  ];
+
   postPatch = ''
     sed -i "/--cov/d" setup.cfg
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/httpx/default.nix b/nixpkgs/pkgs/development/python-modules/httpx/default.nix
index b45c3e85f502..e5db065defcd 100644
--- a/nixpkgs/pkgs/development/python-modules/httpx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/httpx/default.nix
@@ -11,7 +11,7 @@
 , pytestCheckHook
 , pytest-asyncio
 , pytest-trio
-, pytestcov
+, pytest-cov
 , trustme
 , uvicorn
 }:
@@ -41,7 +41,7 @@ buildPythonPackage rec {
     pytestCheckHook
     pytest-asyncio
     pytest-trio
-    pytestcov
+    pytest-cov
     trustme
     uvicorn
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/hypercorn/default.nix b/nixpkgs/pkgs/development/python-modules/hypercorn/default.nix
new file mode 100644
index 000000000000..5f3842835364
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/hypercorn/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitLab
+, pythonOlder
+, typing-extensions
+, wsproto
+, toml
+, h2
+, priority
+, mock
+, pytest-asyncio
+, pytest-cov
+, pytest-sugar
+, pytest-trio
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "Hypercorn";
+  version = "0.11.2";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitLab {
+    owner = "pgjones";
+    repo = pname;
+    rev = version;
+    sha256 = "0v80v6l2xqac5mgrmh2im7y23wpvz4yc2v4h9ryhvl88c2jk9mvh";
+  };
+
+  propagatedBuildInputs = [ wsproto toml h2 priority ]
+    ++ lib.optionals (pythonOlder "3.8") [ typing-extensions ];
+
+  checkInputs = [
+    pytest-asyncio
+    pytest-cov
+    pytest-sugar
+    pytest-trio
+    pytestCheckHook
+  ] ++ lib.optionals (pythonOlder "3.8") [ mock ];
+
+  pythonImportsCheck = [ "hypercorn" ];
+
+  meta = with lib; {
+    homepage = "https://pgjones.gitlab.io/hypercorn/";
+    description = "The ASGI web server inspired by Gunicorn";
+    license = licenses.mit;
+    maintainers = with maintainers; [ dgliwka ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/hypothesis/2.nix b/nixpkgs/pkgs/development/python-modules/hypothesis/2.nix
index 5b086d5f1a7f..47bc8860bc54 100644
--- a/nixpkgs/pkgs/development/python-modules/hypothesis/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/hypothesis/2.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchFromGitHub
 , isPy3k, attrs, coverage, enum34, pexpect
-, doCheck ? true, pytest, pytest_xdist, flaky, mock
+, doCheck ? true, pytest, pytest-xdist, flaky, mock
 , sortedcontainers
 }:
 buildPythonPackage rec {
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     sortedcontainers
   ] ++ lib.optional (!isPy3k) enum34;
 
-  checkInputs = [ pytest pytest_xdist flaky mock pexpect ];
+  checkInputs = [ pytest pytest-xdist flaky mock pexpect ];
   inherit doCheck;
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/hyppo/default.nix b/nixpkgs/pkgs/development/python-modules/hyppo/default.nix
index 9fdeca082b2f..8dcca1983ba3 100644
--- a/nixpkgs/pkgs/development/python-modules/hyppo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hyppo/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , isPy27
 , fetchFromGitHub
-, pytestCheckHook , pytestcov , numba
+, pytestCheckHook , pytest-cov , numba
 , numpy
 , scikit-learn
 , scipy
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     scipy
   ];
 
-  checkInputs = [ pytestCheckHook pytestcov matplotlib seaborn ];
+  checkInputs = [ pytestCheckHook pytest-cov matplotlib seaborn ];
   disabledTestPaths = [
     "docs"
     "benchmarks"
diff --git a/nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix b/nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
index a63617ba2a2a..8e7f4832c254 100644
--- a/nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
@@ -5,7 +5,7 @@
 , pyjwt
 , pylint
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , python-dateutil
 , requests
 , responses
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     codecov
     pylint
     pytestCheckHook
-    pytestcov
+    pytest-cov
     responses
     tox
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix b/nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix
index 3698d8b2e368..49e4541143e9 100644
--- a/nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix
@@ -14,13 +14,13 @@
 
 buildPythonPackage rec {
   pname = "ibm-watson";
-  version = "5.2.1";
+  version = "5.2.2";
 
   src = fetchFromGitHub {
     owner = "watson-developer-cloud";
     repo = "python-sdk";
     rev = "v${version}";
-    sha256 = "sha256-0F4BZf0D0dqGm0OkJaSgmH5RxEA8KCzOlbnhIQVsgzQ=";
+    sha256 = "sha256-bK6lcTKAVwAJDb5LqKRWR/4wcOKx7bRwWYC+WB5qJE4=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/identify/default.nix b/nixpkgs/pkgs/development/python-modules/identify/default.nix
index 15850707b187..7e753e2e0594 100644
--- a/nixpkgs/pkgs/development/python-modules/identify/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/identify/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "identify";
-  version = "2.2.10";
+  version = "2.2.11";
 
 
   src = fetchFromGitHub {
     owner = "pre-commit";
     repo = pname;
     rev = "v${version}";
-    sha256 = "017xcwm8m42a1v3v0fs8v3m2sga97rx9a7vk0cb2g14777f4w4si";
+    sha256 = "sha256-E95tUg1gglDXfeCTead2c1e0JOynKu+TBd4LKklrtAE=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ignite/default.nix b/nixpkgs/pkgs/development/python-modules/ignite/default.nix
index b82fe568e2a9..432767b9f984 100644
--- a/nixpkgs/pkgs/development/python-modules/ignite/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ignite/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pytestCheckHook
-, pytest_xdist
+, pytest-xdist
 , pythonOlder
 , matplotlib
 , mock
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     sha256 = "057v8v5p2picmgiidr9lzjbh7nj54pv95m6lyya3y7dw4vzaamij";
   };
 
-  checkInputs = [ pytestCheckHook matplotlib mock pytest_xdist ];
+  checkInputs = [ pytestCheckHook matplotlib mock pytest-xdist ];
   propagatedBuildInputs = [ pytorch scikit-learn tqdm pynvml ];
 
   # runs succesfully in 3.9, however, async isn't correctly closed so it will fail after test suite.
diff --git a/nixpkgs/pkgs/development/python-modules/image-match/default.nix b/nixpkgs/pkgs/development/python-modules/image-match/default.nix
index ed5179d6db5f..a59f7e08b988 100644
--- a/nixpkgs/pkgs/development/python-modules/image-match/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/image-match/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pytestrunner, scikitimage }:
+{ lib, buildPythonPackage, fetchFromGitHub, pytest-runner, scikitimage }:
 
 buildPythonPackage {
   pname = "image-match";
@@ -11,7 +11,7 @@ buildPythonPackage {
     sha256 = "0vlmpidmhkpgdzw2k03x5layhijcrjpmyfd93yv2ls77ihz00ix5";
   };
 
-  buildInputs = [ pytestrunner ];
+  buildInputs = [ pytest-runner ];
 
   propagatedBuildInputs = [
     scikitimage
diff --git a/nixpkgs/pkgs/development/python-modules/inform/default.nix b/nixpkgs/pkgs/development/python-modules/inform/default.nix
index 86bad819a6f7..9f78d86a2be6 100644
--- a/nixpkgs/pkgs/development/python-modules/inform/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/inform/default.nix
@@ -3,7 +3,7 @@
 , six
 , hypothesis
 , pytest
-, pytestrunner
+, pytest-runner
 , pytestCheckHook
 }:
 
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     sha256 = "114cyff00j9r7qm2ld4w1a4kklr5gx570vk67p56gpr2553dkmly";
   };
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
   propagatedBuildInputs = [ arrow six ];
 
   checkInputs = [ pytest hypothesis ];
diff --git a/nixpkgs/pkgs/development/python-modules/inquirer/default.nix b/nixpkgs/pkgs/development/python-modules/inquirer/default.nix
index e55fd8f39d55..84e381f0b8c8 100644
--- a/nixpkgs/pkgs/development/python-modules/inquirer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/inquirer/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, python-editor, readchar, blessed, pytest, pytestcov, pexpect, pytest-mock }:
+{ lib, buildPythonPackage, fetchFromGitHub, python-editor, readchar, blessed, pytest, pytest-cov, pexpect, pytest-mock }:
 
 buildPythonPackage rec {
   pname = "inquirer";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
      --replace "readchar==2.0.1" "readchar>=2.0.0"
   '';
 
-  checkInputs = [ pytest pytestcov pexpect pytest-mock ];
+  checkInputs = [ pytest pytest-cov pexpect pytest-mock ];
 
   checkPhase = ''
     pytest --cov-report=term-missing  --cov inquirer --no-cov-on-fail tests/unit tests/integration
diff --git a/nixpkgs/pkgs/development/python-modules/iocapture/default.nix b/nixpkgs/pkgs/development/python-modules/iocapture/default.nix
index 0f0466c8b3eb..cc56f8d0bdea 100644
--- a/nixpkgs/pkgs/development/python-modules/iocapture/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/iocapture/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , flexmock
 , pytest
-, pytestcov
+, pytest-cov
 , six
 }:
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   checkInputs = [
     flexmock
     pytest
-    pytestcov
+    pytest-cov
     six
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/ipydatawidgets/default.nix b/nixpkgs/pkgs/development/python-modules/ipydatawidgets/default.nix
index a0efa9b575db..3f8811f4f3b4 100644
--- a/nixpkgs/pkgs/development/python-modules/ipydatawidgets/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ipydatawidgets/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , isPy27
 , pytest
-, pytestcov
+, pytest-cov
 , nbval
 , ipywidgets
 , numpy
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     traittypes
   ];
 
-  checkInputs = [ pytest pytestcov nbval ];
+  checkInputs = [ pytest pytest-cov nbval ];
 
   checkPhase = "pytest ipydatawidgets/tests";
 
diff --git a/nixpkgs/pkgs/development/python-modules/iso3166/default.nix b/nixpkgs/pkgs/development/python-modules/iso3166/default.nix
index 61ec91075b5a..1fc5f695831c 100644
--- a/nixpkgs/pkgs/development/python-modules/iso3166/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/iso3166/default.nix
@@ -1,22 +1,25 @@
-{ lib, fetchFromGitHub, buildPythonPackage, pytest }:
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, pytestCheckHook
+}:
 
-buildPythonPackage {
+buildPythonPackage rec {
   pname = "iso3166";
-  version = "0.8";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "deactivated";
     repo = "python-iso3166";
-    # repo has no version tags
-    rev = "f04e499447bbff10af701cf3dd81f6bcdf02f7d7";
+    rev = "v${version}";
     sha256 = "0zs9za9dr2nl5srxir08yibmp6nffcapmzala0fgh8ny7y6rafrx";
   };
 
-  checkInputs = [ pytest ];
+  checkInputs = [
+    pytestCheckHook
+  ];
 
-  checkPhase = ''
-    py.test
-  '';
+  pythonImportsCheck = [ "iso3166" ];
 
   meta = with lib; {
     homepage = "https://github.com/deactivated/python-iso3166";
diff --git a/nixpkgs/pkgs/development/python-modules/jedi/default.nix b/nixpkgs/pkgs/development/python-modules/jedi/default.nix
index 305b9f6c6b6b..0dba5e8f192c 100644
--- a/nixpkgs/pkgs/development/python-modules/jedi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jedi/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, fetchPypi, pytest, glibcLocales, tox, pytestcov, parso }:
+{ lib, buildPythonPackage, fetchFromGitHub, fetchPypi, pytest, glibcLocales, tox, pytest-cov, parso }:
 
 buildPythonPackage rec {
   pname = "jedi";
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     fetchSubmodules = true;
   };
 
-  checkInputs = [ pytest glibcLocales tox pytestcov ];
+  checkInputs = [ pytest glibcLocales tox pytest-cov ];
 
   propagatedBuildInputs = [ parso ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/jira/default.nix b/nixpkgs/pkgs/development/python-modules/jira/default.nix
index 78aaadf690e2..a3f790abfc51 100644
--- a/nixpkgs/pkgs/development/python-modules/jira/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jira/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi, isPy3k
-, pytest, pytestrunner, pbr, glibcLocales , pytestcov
-, requests, requests_oauthlib, requests_toolbelt, defusedxml
+, pytest, pytest-runner, pbr, glibcLocales , pytest-cov
+, requests, requests_oauthlib, requests-toolbelt, defusedxml
 , ipython
 }:
 
@@ -15,8 +15,8 @@ buildPythonPackage rec {
     sha256 = "e2a94adff98e45b29ded030adc76103eab34fa7d4d57303f211f572bedba0e93";
   };
 
-  buildInputs = [ glibcLocales pytest pytestcov pytestrunner pbr ];
-  propagatedBuildInputs = [ requests requests_oauthlib requests_toolbelt defusedxml pbr ipython ];
+  buildInputs = [ glibcLocales pytest pytest-cov pytest-runner pbr ];
+  propagatedBuildInputs = [ requests requests_oauthlib requests-toolbelt defusedxml pbr ipython ];
 
   # impure tests because of connectivity attempts to jira servers
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/json5/default.nix b/nixpkgs/pkgs/development/python-modules/json5/default.nix
index cecce31e0ecc..7f42902583d6 100644
--- a/nixpkgs/pkgs/development/python-modules/json5/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/json5/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "json5";
-  version = "0.9.5";
+  version = "0.9.6";
 
   src = fetchFromGitHub {
     owner = "dpranke";
     repo = "pyjson5";
     rev = "v${version}";
-    sha256 = "sha256-VkJnZG1BuC49/jJuwObbqAF48CtbWU9rDEYW4Dg0w4U=";
+    sha256 = "sha256-RJj5KvLKq43tRuTwxq/mB+sU35xTQwZqg/jpdYcMP6A=";
   };
 
   checkInputs = [
@@ -21,6 +21,8 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  pythonImportsCheck = [ "json5" ];
+
   meta = with lib; {
     homepage = "https://github.com/dpranke/pyjson5";
     description = "A Python implementation of the JSON5 data format";
diff --git a/nixpkgs/pkgs/development/python-modules/jsonlines/default.nix b/nixpkgs/pkgs/development/python-modules/jsonlines/default.nix
index 82ddb3bf23a7..d16fa89a97c4 100644
--- a/nixpkgs/pkgs/development/python-modules/jsonlines/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jsonlines/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitHub, buildPythonPackage, six
-, flake8, pep8-naming, pytest, pytestcov }:
+, flake8, pep8-naming, pytest, pytest-cov }:
 
 buildPythonPackage rec {
   pname = "jsonlines";
@@ -14,7 +14,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ six ];
 
-  checkInputs = [ flake8 pep8-naming pytest pytestcov ];
+  checkInputs = [ flake8 pep8-naming pytest pytest-cov ];
   checkPhase = ''
     pytest
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/jupyterlab_server/default.nix b/nixpkgs/pkgs/development/python-modules/jupyterlab_server/default.nix
index 7f1a729b5b1a..2c60d7b3b273 100644
--- a/nixpkgs/pkgs/development/python-modules/jupyterlab_server/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jupyterlab_server/default.nix
@@ -10,7 +10,6 @@
 , jupyter_server
 , openapi-core
 , pytest-tornasync
-, pytestcov
 , ruamel-yaml
 , strict-rfc3339
 }:
diff --git a/nixpkgs/pkgs/development/python-modules/keras/default.nix b/nixpkgs/pkgs/development/python-modules/keras/default.nix
index e90dd1a806aa..28b09222b472 100644
--- a/nixpkgs/pkgs/development/python-modules/keras/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/keras/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, pytest, pytestcov, pytest_xdist
+, pytest, pytest-cov, pytest-xdist
 , six, numpy, scipy, pyyaml, h5py
 , keras-applications, keras-preprocessing
 }:
@@ -15,8 +15,8 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytestcov
-    pytest_xdist
+    pytest-cov
+    pytest-xdist
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/keyutils/default.nix b/nixpkgs/pkgs/development/python-modules/keyutils/default.nix
index 4134c47084a2..3d1575d8c37f 100644
--- a/nixpkgs/pkgs/development/python-modules/keyutils/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/keyutils/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, keyutils, pytestrunner, pytest }:
+{ lib, buildPythonPackage, fetchFromGitHub, keyutils, pytest-runner, pytest }:
 
 buildPythonPackage rec {
   pname = "keyutils";
@@ -13,7 +13,7 @@ buildPythonPackage rec {
   };
 
   buildInputs = [ keyutils ];
-  checkInputs = [ pytest pytestrunner ];
+  checkInputs = [ pytest pytest-runner ];
 
   meta = {
     description = "A set of python bindings for keyutils";
diff --git a/nixpkgs/pkgs/development/python-modules/langdetect/default.nix b/nixpkgs/pkgs/development/python-modules/langdetect/default.nix
index 57fee2664cdf..2b9f87fdd81a 100644
--- a/nixpkgs/pkgs/development/python-modules/langdetect/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/langdetect/default.nix
@@ -1,16 +1,28 @@
-{ lib, buildPythonPackage, fetchPypi, six }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+, six
+}:
 
 buildPythonPackage rec {
   pname = "langdetect";
-  version = "1.0.7";
+  version = "1.0.9";
 
   src = fetchPypi {
     inherit pname version;
-    extension = "zip";
-    sha256 = "0c5zm6c7xzsigbb9c7v4r33fcpz911zscfwvh3dq1qxdy3ap18ci";
+    sha256 = "1805svvb7xjm4sf1j7b6nc3409x37pd1xmabfwwjf1ldkzwgxhfb";
   };
 
-  propagatedBuildInputs = [ six ];
+  propagatedBuildInputs = [
+    six
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "langdetect" ];
 
   meta = with lib; {
     description = "Python port of Google's language-detection library";
diff --git a/nixpkgs/pkgs/development/python-modules/lazy_import/default.nix b/nixpkgs/pkgs/development/python-modules/lazy_import/default.nix
index 60eba0577b03..fe35126ea26c 100644
--- a/nixpkgs/pkgs/development/python-modules/lazy_import/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/lazy_import/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi
 , pytest
-, pytest_xdist
+, pytest-xdist
 , six }:
 
 buildPythonPackage rec {
@@ -14,7 +14,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytest_xdist
+    pytest-xdist
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/libagent/default.nix b/nixpkgs/pkgs/development/python-modules/libagent/default.nix
index 5334513e23c8..24d8ada58902 100644
--- a/nixpkgs/pkgs/development/python-modules/libagent/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/libagent/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitHub, buildPythonPackage, ed25519, ecdsa , semver, mnemonic,
-  unidecode, mock, pytest , backports-shutil-which, ConfigArgParse,
+  unidecode, mock, pytest , backports-shutil-which, configargparse,
   python-daemon, pymsgbox }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
     sha256 = "16y1y9ahcv3wj7f0v4mfiwzkmn2hz1iv7y13cgr57sxa3ymyqx6c";
   };
 
-  propagatedBuildInputs = [ unidecode backports-shutil-which ConfigArgParse
+  propagatedBuildInputs = [ unidecode backports-shutil-which configargparse
     python-daemon pymsgbox ecdsa ed25519 mnemonic semver ];
 
   checkInputs = [ mock pytest ];
diff --git a/nixpkgs/pkgs/development/python-modules/libais/default.nix b/nixpkgs/pkgs/development/python-modules/libais/default.nix
index 33710c6682dc..8985e8fbcf51 100644
--- a/nixpkgs/pkgs/development/python-modules/libais/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/libais/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi,
-  six, pytest, pytestrunner, pytestcov, coverage
+  six, pytest, pytest-runner, pytest-cov, coverage
 }:
 buildPythonPackage rec {
   pname = "libais";
@@ -13,7 +13,7 @@ buildPythonPackage rec {
   # data files missing
   doCheck = false;
 
-  checkInputs = [ pytest pytestrunner pytestcov coverage ];
+  checkInputs = [ pytest pytest-runner pytest-cov coverage ];
   propagatedBuildInputs = [ six ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/libcloud/2.nix b/nixpkgs/pkgs/development/python-modules/libcloud/2.nix
index 52c1cf9a9d7f..c59e026fe4f3 100644
--- a/nixpkgs/pkgs/development/python-modules/libcloud/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/libcloud/2.nix
@@ -5,7 +5,7 @@
 , mock
 , pycrypto
 , requests
-, pytestrunner
+, pytest-runner
 , pytest
 , requests-mock
 , typing
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     sha256 = "70096690b24a7832cc5abdfda1954b49fddc1c09a348a1e6caa781ac867ed4c6";
   };
 
-  checkInputs = [ mock pytest pytestrunner requests-mock ];
+  checkInputs = [ mock pytest pytest-runner requests-mock ];
   propagatedBuildInputs = [ pycrypto requests ]
     ++ lib.optionals isPy27 [ typing backports_ssl_match_hostname ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/libcloud/default.nix b/nixpkgs/pkgs/development/python-modules/libcloud/default.nix
index 0449f6099581..78afad13dd20 100644
--- a/nixpkgs/pkgs/development/python-modules/libcloud/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/libcloud/default.nix
@@ -5,7 +5,7 @@
 , mock
 , pycrypto
 , requests
-, pytestrunner
+, pytest-runner
 , pytest
 , requests-mock
 , typing
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     sha256 = "d7450453eaf5904eb4fb4f74cf9f37dc83721a719bce34f5abb336b1a1ab974d";
   };
 
-  checkInputs = [ mock pytest pytestrunner requests-mock ];
+  checkInputs = [ mock pytest pytest-runner requests-mock ];
   propagatedBuildInputs = [ pycrypto requests ] ++ lib.optionals isPy27 [ typing ];
 
   preConfigure = "cp libcloud/test/secrets.py-dist libcloud/test/secrets.py";
diff --git a/nixpkgs/pkgs/development/python-modules/libsass/default.nix b/nixpkgs/pkgs/development/python-modules/libsass/default.nix
index 9feb5b1d2425..5cc36906610b 100644
--- a/nixpkgs/pkgs/development/python-modules/libsass/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/libsass/default.nix
@@ -1,14 +1,21 @@
-{ lib, buildPythonPackage, fetchFromGitHub, libsass, six, pytest, werkzeug }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, libsass
+, six
+, pytestCheckHook
+, werkzeug
+}:
 
 buildPythonPackage rec {
   pname = "libsass";
-  version = "0.20.1";
+  version = "0.21.0";
 
   src = fetchFromGitHub {
     owner = "sass";
     repo = "libsass-python";
     rev = version;
-    sha256 = "1r0kgl7i6nnhgjl44sjw57k08gh2qr7l8slqih550dyxbf1akbxh";
+    sha256 = "sha256-4doz3kkRlyfVfeUarYw2tcybeDVeE2jpgmHxFJsPiVc=";
   };
 
   buildInputs = [ libsass ];
@@ -20,16 +27,16 @@ buildPythonPackage rec {
   '';
 
   checkInputs = [
-    pytest
+    pytestCheckHook
     werkzeug
   ];
 
-  checkPhase = ''
-    pytest sasstests.py
-  '';
+  pytestFlagsArray = [ "sasstests.py" ];
+
+  pythonImportsCheck = [ "sass" ];
 
   meta = with lib; {
-    description = "A straightforward binding of libsass for Python. Compile Sass/SCSS in Python with no Ruby stack at all!";
+    description = "Python binding for libsass to compile Sass/SCSS";
     homepage = "https://sass.github.io/libsass-python/";
     license = licenses.mit;
     maintainers = with maintainers; [ SuperSandro2000 ];
diff --git a/nixpkgs/pkgs/development/python-modules/liquidctl/default.nix b/nixpkgs/pkgs/development/python-modules/liquidctl/default.nix
index b543002bc07b..c62e4c74576b 100644
--- a/nixpkgs/pkgs/development/python-modules/liquidctl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/liquidctl/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "liquidctl";
-  version = "1.7.0";
+  version = "1.7.1";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner  = pname;
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "sha256-tpk8wCKyrj3dOkBxj9UWcyrAb31uKtl2fRwwh7dAQGE=";
+    sha256 = "sha256-TNDQV1BOVVdvr0XAyWGcwgMbe4mV7J05hQeKVUqVT9s=";
   };
 
   nativeBuildInputs = [ installShellFiles ];
diff --git a/nixpkgs/pkgs/development/python-modules/loguru/default.nix b/nixpkgs/pkgs/development/python-modules/loguru/default.nix
index 8146f8b183e1..3134d956af78 100644
--- a/nixpkgs/pkgs/development/python-modules/loguru/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/loguru/default.nix
@@ -6,15 +6,14 @@
 , isPy27
 , colorama
 , pytestCheckHook
-, pythonAtLeast
 }:
 
 buildPythonPackage rec {
   pname = "loguru";
   version = "0.5.3";
 
-  # python3.9 compatibility should be in the next release after 0.5.3
-  disabled = isPy27 || pythonAtLeast "3.9";
+  disabled = isPy27;
+
   src = fetchPypi {
     inherit pname version;
     sha256 = "b28e72ac7a98be3d28ad28570299a393dfcd32e5e3f6a353dec94675767b6319";
@@ -26,6 +25,11 @@ buildPythonPackage rec {
       url = "https://github.com/Delgan/loguru/commit/31cf758ee9d22dbfa125f38153782fe20ac9dce5.patch";
       sha256 = "1lzbs8akg1s7s6xjl3samf4c4bpssqvwg5fn3mwlm4ysr7jd5y67";
     })
+    # fix tests with Python 3.9
+    (fetchpatch {
+      url = "https://github.com/Delgan/loguru/commit/19f518c5f1f355703ffc4ee62f0e1e397605863e.patch";
+      sha256 = "0yn6smik58wdffr4svqsy2n212fwdlcfcwpgqhl9hq2zlivmsdc6";
+    })
   ];
 
   checkInputs = [ pytestCheckHook colorama ];
diff --git a/nixpkgs/pkgs/development/python-modules/lomond/default.nix b/nixpkgs/pkgs/development/python-modules/lomond/default.nix
index 669f16e5f928..3efe41e00797 100644
--- a/nixpkgs/pkgs/development/python-modules/lomond/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/lomond/default.nix
@@ -1,5 +1,5 @@
 { buildPythonPackage, freezegun, fetchFromGitHub, lib, pytestCheckHook
-, pytest-mock, pytestrunner, six, tornado_4 }:
+, pytest-mock, pytest-runner, six, tornado_4 }:
 
 buildPythonPackage rec {
   pname = "lomond";
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     sha256 = "0lydq0imala08wxdyg2iwhqa6gcdrn24ah14h91h2zcxjhjk4gv8";
   };
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
   propagatedBuildInputs = [ six ];
   checkInputs = [ pytestCheckHook freezegun pytest-mock tornado_4 ];
   # Makes HTTP requests
diff --git a/nixpkgs/pkgs/development/python-modules/lyricwikia/default.nix b/nixpkgs/pkgs/development/python-modules/lyricwikia/default.nix
index a5ea55c39cf5..19bb14419a4f 100644
--- a/nixpkgs/pkgs/development/python-modules/lyricwikia/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/lyricwikia/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchPypi, buildPythonPackage, pytestrunner, six, beautifulsoup4, requests, }:
+{ lib, fetchPypi, buildPythonPackage, pytest-runner, six, beautifulsoup4, requests, }:
 buildPythonPackage rec {
   pname = "lyricwikia";
   version = "0.1.11";
@@ -8,7 +8,7 @@ buildPythonPackage rec {
     sha256 = "0l5lkvr3299x79i7skdiggp67rzgax3s00psd1zqkxfysq27jvc8";
   };
 
-  buildInputs = [ pytestrunner ];
+  buildInputs = [ pytest-runner ];
   propagatedBuildInputs = [ six beautifulsoup4 requests ];
   # upstream has no code tests
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/m3u8/default.nix b/nixpkgs/pkgs/development/python-modules/m3u8/default.nix
index 01ff1458c0fa..decad482bef1 100644
--- a/nixpkgs/pkgs/development/python-modules/m3u8/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/m3u8/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, python, fetchFromGitHub, requests, iso8601, bottle, pytest, pytestcov }:
+{ lib, buildPythonPackage, python, fetchFromGitHub, requests, iso8601, bottle, pytest, pytest-cov }:
 
 buildPythonPackage rec {
   pname = "m3u8";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
     sha256 = "0cmg993icpsa1b19kljxvjwhs167bsqrs0ad4wnwsi8qq6na5d4p";
   };
 
-  checkInputs = [ bottle pytest pytestcov ];
+  checkInputs = [ bottle pytest pytest-cov ];
 
   checkPhase = ''
     pytest tests/test_{parser,model,variant_m3u8}.py
diff --git a/nixpkgs/pkgs/development/python-modules/marisa-trie/default.nix b/nixpkgs/pkgs/development/python-modules/marisa-trie/default.nix
index 69f272c409d8..ade031409b41 100644
--- a/nixpkgs/pkgs/development/python-modules/marisa-trie/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/marisa-trie/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , cython
-, pytestrunner
+, pytest-runner
 , pytestCheckHook
 , hypothesis
 }:
@@ -23,7 +23,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     cython
-    pytestrunner
+    pytest-runner
   ];
 
   preBuild = ''
diff --git a/nixpkgs/pkgs/development/python-modules/markdownsuperscript/default.nix b/nixpkgs/pkgs/development/python-modules/markdownsuperscript/default.nix
index 94cfb637a15e..04e59287a86a 100644
--- a/nixpkgs/pkgs/development/python-modules/markdownsuperscript/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/markdownsuperscript/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, markdown,
-  pytest, pytestrunner, pytestcov, coverage }:
+  pytest, pytest-runner, pytest-cov, coverage }:
 
 buildPythonPackage rec {
   pname = "MarkdownSuperscript";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     sed 's/=.*//' -i requirements/*.txt
   '';
 
-  checkInputs = [ pytest pytestrunner pytestcov coverage ];
+  checkInputs = [ pytest pytest-runner pytest-cov coverage ];
 
   meta = with lib; {
     description = "An extension to the Python Markdown package enabling superscript text";
diff --git a/nixpkgs/pkgs/development/python-modules/markupsafe/default.nix b/nixpkgs/pkgs/development/python-modules/markupsafe/default.nix
index d48359af0fc3..12845da7e37a 100644
--- a/nixpkgs/pkgs/development/python-modules/markupsafe/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/markupsafe/default.nix
@@ -6,12 +6,13 @@
 }:
 
 buildPythonPackage rec {
-  pname = "MarkupSafe";
+  pname = "markupsafe";
   version = "2.0.1";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
-    inherit pname version;
+    pname = "MarkupSafe";
+    inherit version;
     sha256 = "02k2ynmqvvd0z0gakkf8s4idyb606r7zgga41jrkhqmigy06fk2r";
   };
 
@@ -19,11 +20,12 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  pythonImportsCheck = [ "markupsafe" ];
+
   meta = with lib; {
     description = "Implements a XML/HTML/XHTML Markup safe string";
-    homepage = "http://dev.pocoo.org";
+    homepage = "https://palletsprojects.com/p/markupsafe/";
     license = licenses.bsd3;
     maintainers = with maintainers; [ domenkozar ];
   };
-
 }
diff --git a/nixpkgs/pkgs/development/python-modules/marshmallow-oneofschema/default.nix b/nixpkgs/pkgs/development/python-modules/marshmallow-oneofschema/default.nix
new file mode 100644
index 000000000000..343c5952a434
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/marshmallow-oneofschema/default.nix
@@ -0,0 +1,22 @@
+{ lib, buildPythonPackage, fetchPypi, marshmallow, setuptools }:
+
+buildPythonPackage rec {
+  pname = "marshmallow-oneofschema";
+  version = "2.1.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0s0yr7nv06sfgxglghl2vq74g3m49j60k1hi2qzfsv4bj8hvs35k";
+  };
+
+  propagatedBuildInputs = [ marshmallow setuptools ];
+
+  pythonImportsCheck = [ "marshmallow_oneofschema" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/marshmallow-code/marshmallow-oneofschema";
+    description = "Marshmallow library extension that allows schema (de)multiplexing";
+    license = licenses.mit;
+    maintainers = [ maintainers.ivan-tkatchev ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/marshmallow-polyfield/default.nix b/nixpkgs/pkgs/development/python-modules/marshmallow-polyfield/default.nix
index e3b629b3034e..aa2784cd1dbb 100644
--- a/nixpkgs/pkgs/development/python-modules/marshmallow-polyfield/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/marshmallow-polyfield/default.nix
@@ -4,7 +4,7 @@
 , marshmallow
   # Check Inputs
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 }:
 
 buildPythonPackage rec {
@@ -23,7 +23,7 @@ buildPythonPackage rec {
   ];
 
   # setuptools check can run, but won't find tests
-  checkInputs = [ pytestCheckHook pytestcov ];
+  checkInputs = [ pytestCheckHook pytest-cov ];
 
   meta = with lib; {
     description = "An unofficial extension to Marshmallow to allow for polymorphic fields";
diff --git a/nixpkgs/pkgs/development/python-modules/mat2/default.nix b/nixpkgs/pkgs/development/python-modules/mat2/default.nix
index 6c1ba9a40c63..99d94d3d1a80 100644
--- a/nixpkgs/pkgs/development/python-modules/mat2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mat2/default.nix
@@ -56,6 +56,12 @@ buildPythonPackage rec {
       url = "https://0xacab.org/jvoisin/mat2/-/commit/c9be50f968212b01f8d8ad85e59e19c3e67d8578.patch";
       sha256 = "0895dkv6575ps3drdfnli15cggx27n9irjx0axigrm4ql4ma0648";
     })
+    # fix white space error in the tests for exiftool, remove for next release
+    (fetchpatch {
+      name = "fix-tests-exiftool.patch";
+      url = "https://0xacab.org/jvoisin/mat2/-/commit/6df615281b2a649b85ff7670f6d87d3beed0b977.patch";
+      sha256 = "1gix63n0mzavnqjq5ll0v210z4vdz4f93aq03bfzlgifxcd9vl1x";
+    })
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/matchpy/default.nix b/nixpkgs/pkgs/development/python-modules/matchpy/default.nix
index 794b2c8f4add..8ee3d60f8010 100644
--- a/nixpkgs/pkgs/development/python-modules/matchpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/matchpy/default.nix
@@ -5,7 +5,7 @@
 , hopcroftkarp
 , multiset
 , pytest
-, pytestrunner
+, pytest-runner
 , hypothesis
 , setuptools-scm
 , isPy27
@@ -36,7 +36,7 @@ buildPythonPackage rec {
        --replace "pytest>=3.0,<4.0" "pytest"
   '';
 
-  buildInputs = [ setuptools-scm pytestrunner ];
+  buildInputs = [ setuptools-scm pytest-runner ];
   checkInputs = [ pytest hypothesis ];
   propagatedBuildInputs = [ hopcroftkarp multiset ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/matrix-client/default.nix b/nixpkgs/pkgs/development/python-modules/matrix-client/default.nix
index b8439a0c23d4..354eace5047d 100644
--- a/nixpkgs/pkgs/development/python-modules/matrix-client/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/matrix-client/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , requests
-, pytest, pytestrunner, responses
+, pytest, pytest-runner, responses
 }:
 
 buildPythonPackage rec {
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     sha256 = "1mgjd0ymf9mvqjkvgx3xjhxap7rzdmpa21wfy0cxbw2xcswcrqyw";
   };
 
-  checkInputs = [ pytest pytestrunner responses ];
+  checkInputs = [ pytest pytest-runner responses ];
 
   propagatedBuildInputs = [ requests ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/mautrix/default.nix b/nixpkgs/pkgs/development/python-modules/mautrix/default.nix
index f61ace8960da..9ab850ed0104 100644
--- a/nixpkgs/pkgs/development/python-modules/mautrix/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mautrix/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "mautrix";
-  version = "0.9.6";
+  version = "0.9.8";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1810deb7f780700e7e0734e1844c1b4b2525ee990b8665f7b98e3f335a31bbcf";
+    sha256 = "1yx9ybpw9ppym8k2ky5pxh3f2icpmk887i8ipwixrcrnml3q136p";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/mccabe/default.nix b/nixpkgs/pkgs/development/python-modules/mccabe/default.nix
index 03343aec16e8..f20cb18b4885 100644
--- a/nixpkgs/pkgs/development/python-modules/mccabe/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mccabe/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, pytest, pytestrunner }:
+{ lib, buildPythonPackage, fetchPypi, pytest, pytest-runner }:
 
 buildPythonPackage rec {
   pname = "mccabe";
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     sha256 = "07w3p1qm44hgxf3vvwz84kswpsx6s7kvaibzrsx5dzm0hli1i3fx";
   };
 
-  buildInputs = [ pytest pytestrunner ];
+  buildInputs = [ pytest pytest-runner ];
 
   meta = with lib; {
     description = "McCabe checker, plugin for flake8";
diff --git a/nixpkgs/pkgs/development/python-modules/mcstatus/default.nix b/nixpkgs/pkgs/development/python-modules/mcstatus/default.nix
index 165885c02252..31ce83512af2 100644
--- a/nixpkgs/pkgs/development/python-modules/mcstatus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mcstatus/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "mcstatus";
-  version = "6.2.0";
+  version = "6.4.0";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "Dinnerbone";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-o5JVj4Tt5+VOjDC0TDlVuVbDUQPvZGX5Zeoz0vVxPJ8=";
+    sha256 = "sha256-pJ5TY9tbdhVW+kou+n5fMgCdHVBK6brBrlGIuO+VIK0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/measurement/default.nix b/nixpkgs/pkgs/development/python-modules/measurement/default.nix
index c3ce875b4f57..30969501213c 100644
--- a/nixpkgs/pkgs/development/python-modules/measurement/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/measurement/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitHub, buildPythonPackage, isPy3k
-, sympy, pytest, pytestrunner, sphinx, setuptools-scm }:
+, sympy, pytest, pytest-runner, sphinx, setuptools-scm }:
 
 buildPythonPackage rec {
   pname = "measurement";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     sed -i 's|use_scm_version=True|version="${version}"|' setup.py
   '';
 
-  checkInputs = [ pytest pytestrunner ];
+  checkInputs = [ pytest pytest-runner ];
   nativeBuildInputs = [ sphinx setuptools-scm ];
   propagatedBuildInputs = [ sympy ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/mesonpep517/default.nix b/nixpkgs/pkgs/development/python-modules/mesonpep517/default.nix
index fd44f3e4480e..8805c2039034 100644
--- a/nixpkgs/pkgs/development/python-modules/mesonpep517/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mesonpep517/default.nix
@@ -4,7 +4,7 @@
 , meson
 , ninja
 , intreehooks
-, pytoml
+, toml
 , pythonOlder
 }:
 
@@ -12,17 +12,15 @@
 
 buildPythonPackage rec {
   pname = "mesonpep517";
-  version = "0.1.9999994";
+  version = "0.2";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "b5bcca61024164c4a51d29e6921ea1f756d54197c8f052e4c66a2b8399aa9349";
+    sha256 = "sha256-Fyo7JfLqHJqbahEjVDt/0xJxOfVLqLn3xNJ4lSB7KIw=";
   };
 
-  nativeBuildInputs = [ intreehooks  ];
-
-  propagatedBuildInputs = [ pytoml ];
+  propagatedBuildInputs = [ toml ];
 
   # postPatch = ''
   #   # Meson tries to detect ninja as well, so we should patch meson as well.
diff --git a/nixpkgs/pkgs/development/python-modules/minidb/default.nix b/nixpkgs/pkgs/development/python-modules/minidb/default.nix
index dbe9597ea0cc..599b1d70d42e 100644
--- a/nixpkgs/pkgs/development/python-modules/minidb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/minidb/default.nix
@@ -5,14 +5,14 @@
 
 buildPythonPackage rec {
   pname = "minidb";
-  version = "2.0.4";
+  version = "2.0.5";
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "thp";
     repo = "minidb";
     rev = version;
-    sha256 = "0i607rkfx0rkyllcx4vf3w2z0wxzs1gqigfw87q90pjrbbh2q4sb";
+    sha256 = "sha256-aUXsp0E89OxCgTaz7MpKmqTHZfnjDcyHa8Ckzof9rfg=";
   };
 
   # module imports are incompatible with python2
diff --git a/nixpkgs/pkgs/development/python-modules/minio/default.nix b/nixpkgs/pkgs/development/python-modules/minio/default.nix
index eb543a63133a..7b1085e78fec 100644
--- a/nixpkgs/pkgs/development/python-modules/minio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/minio/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "minio";
-  version = "7.0.4";
+  version = "7.1.0";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "minio-py";
     rev = version;
-    sha256 = "sha256-4O6WhBoMNpqv1OEewkbA5a8hYH56liF7GrfxkooQ6Fo=";
+    sha256 = "sha256-0N9hPjGGYHFyGzEWWDnW7KsPQtv0y/j/lCBLNC9IlpA=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/mne-python/default.nix b/nixpkgs/pkgs/development/python-modules/mne-python/default.nix
index 77e6f9c24685..2dfe06d51770 100644
--- a/nixpkgs/pkgs/development/python-modules/mne-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mne-python/default.nix
@@ -5,7 +5,7 @@
 , numpy
 , scipy
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , pytest-timeout
 , h5py
 , matplotlib
@@ -34,7 +34,7 @@ buildPythonPackage rec {
   doCheck = false;
   checkInputs = [
     pytestCheckHook
-    pytestcov
+    pytest-cov
     pytest-timeout
     h5py
     matplotlib
diff --git a/nixpkgs/pkgs/development/python-modules/multidict/default.nix b/nixpkgs/pkgs/development/python-modules/multidict/default.nix
index 555011a314d9..ec19843ab9dc 100644
--- a/nixpkgs/pkgs/development/python-modules/multidict/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/multidict/default.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchPypi
 , buildPythonPackage
-, pytestCheckHook, pytestrunner, pytestcov
+, pytestCheckHook, pytest-runner, pytest-cov
 , isPy3k
 }:
 
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     sha256 = "25b4e5f22d3a37ddf3effc0710ba692cfc792c2b9edfb9c05aefe823256e84d5";
   };
 
-  checkInputs = [ pytestCheckHook pytestrunner pytestcov ];
+  checkInputs = [ pytestCheckHook pytest-runner pytest-cov ];
 
   disabled = !isPy3k;
 
diff --git a/nixpkgs/pkgs/development/python-modules/multiset/default.nix b/nixpkgs/pkgs/development/python-modules/multiset/default.nix
index e183031b8d95..fa2fa87d0e89 100644
--- a/nixpkgs/pkgs/development/python-modules/multiset/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/multiset/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , setuptools-scm
-, pytestrunner
+, pytest-runner
 , pytest
 }:
 
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "4801569c08bfcecfe7b0927b17f079c90f8607aca8fecaf42ded92b737162bc7";
   };
 
-  buildInputs = [ setuptools-scm pytestrunner ];
+  buildInputs = [ setuptools-scm pytest-runner ];
   checkInputs = [ pytest ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/mwclient/default.nix b/nixpkgs/pkgs/development/python-modules/mwclient/default.nix
index 2eed1eefeec8..bffc4247632d 100644
--- a/nixpkgs/pkgs/development/python-modules/mwclient/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mwclient/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchFromGitHub
 , requests, requests_oauthlib, six
-, pytest, pytestcache, pytestcov, responses, mock
+, pytest, pytestcache, pytest-cov, responses, mock
 }:
 
 buildPythonPackage rec {
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     sha256 = "120snnsh9n5svfwkyj1w9jrxf99jnqm0jk282yypd3lpyca1l9hj";
   };
 
-  checkInputs = [ pytest pytestcache pytestcov responses mock ];
+  checkInputs = [ pytest pytestcache pytest-cov responses mock ];
 
   propagatedBuildInputs = [ requests requests_oauthlib six ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/mwparserfromhell/default.nix b/nixpkgs/pkgs/development/python-modules/mwparserfromhell/default.nix
index 8c29971afe79..c1e57be4ded0 100644
--- a/nixpkgs/pkgs/development/python-modules/mwparserfromhell/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mwparserfromhell/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , pytestCheckHook
-, pytestrunner
+, pytest-runner
 }:
 
 buildPythonPackage rec {
@@ -16,7 +16,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytestCheckHook
-    pytestrunner
+    pytest-runner
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/nampa/default.nix b/nixpkgs/pkgs/development/python-modules/nampa/default.nix
new file mode 100644
index 000000000000..9f572d141c70
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/nampa/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, future
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "nampa";
+  version = "1.0";
+
+  src = fetchFromGitHub {
+    owner = "thebabush";
+    repo = pname;
+    rev = version;
+    sha256 = "14b6xjm497wrfw4kv24zhsvz2l6zknvx36w8i754hfwz3s3fsl6a";
+  };
+
+  propagatedBuildInputs = [
+    future
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    # https://github.com/thebabush/nampa/pull/13
+    substituteInPlace setup.py \
+      --replace "0.1.1" "${version}"
+  '';
+
+  pythonImportsCheck = [ "nampa" ];
+
+  meta = with lib; {
+    description = "Python implementation of the FLIRT technology";
+    homepage = "https://github.com/thebabush/nampa";
+    license = licenses.lgpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/natsort/default.nix b/nixpkgs/pkgs/development/python-modules/natsort/default.nix
index d475f21fcb51..e7a2a6808a8a 100644
--- a/nixpkgs/pkgs/development/python-modules/natsort/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/natsort/default.nix
@@ -3,7 +3,7 @@
 , pythonOlder
 , fetchPypi
 , pytest
-, pytestcov
+, pytest-cov
 , pytest-mock
 , hypothesis
 , glibcLocales
@@ -17,7 +17,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytestcov
+    pytest-cov
     pytest-mock
     hypothesis
     glibcLocales
diff --git a/nixpkgs/pkgs/development/python-modules/nbdime/default.nix b/nixpkgs/pkgs/development/python-modules/nbdime/default.nix
index 221915efca03..96fc94d43e85 100644
--- a/nixpkgs/pkgs/development/python-modules/nbdime/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nbdime/default.nix
@@ -5,7 +5,7 @@
 , attrs
 , py
 , setuptools
-, pytestcov
+, pytest-cov
 , pytest-timeout
 , pytest-tornado
 , mock
@@ -34,7 +34,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     hypothesis
-    pytestcov
+    pytest-cov
     pytest-timeout
     pytest-tornado
     jsonschema
diff --git a/nixpkgs/pkgs/development/python-modules/nbval/default.nix b/nixpkgs/pkgs/development/python-modules/nbval/default.nix
index b9a336f7fbe9..176986492555 100644
--- a/nixpkgs/pkgs/development/python-modules/nbval/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nbval/default.nix
@@ -11,7 +11,7 @@
 , glibcLocales
 , matplotlib
 , sympy
-, pytestcov
+, pytest-cov
 }:
 
 buildPythonPackage rec {
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     pytestCheckHook
     matplotlib
     sympy
-    pytestcov
+    pytest-cov
   ];
 
   buildInputs = [ glibcLocales ];
diff --git a/nixpkgs/pkgs/development/python-modules/ndjson/default.nix b/nixpkgs/pkgs/development/python-modules/ndjson/default.nix
index b69e8401eb51..cd70025d6106 100644
--- a/nixpkgs/pkgs/development/python-modules/ndjson/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ndjson/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, watchdog, flake8
-, pytest, pytestrunner, coverage, sphinx, twine }:
+, pytest, pytest-runner, coverage, sphinx, twine }:
 
 buildPythonPackage rec {
   pname = "ndjson";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     sha256 = "v5dGy2uxy1PRcs2n8VTAfHhtZl/yg0Hk5om3lrIp5dY=";
   };
 
-  checkInputs = [ pytest pytestrunner flake8 twine sphinx coverage watchdog ];
+  checkInputs = [ pytest pytest-runner flake8 twine sphinx coverage watchdog ];
 
   meta = with lib; {
     homepage = "https://github.com/rhgrant10/ndjson";
diff --git a/nixpkgs/pkgs/development/python-modules/nengo/default.nix b/nixpkgs/pkgs/development/python-modules/nengo/default.nix
new file mode 100644
index 000000000000..566540a4c972
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/nengo/default.nix
@@ -0,0 +1,36 @@
+{ lib, fetchFromGitHub, buildPythonPackage
+, numpy
+, scipySupport ? false, scipy
+, scikitSupport ? false, scikit-learn
+}:
+
+buildPythonPackage rec {
+  pname = "nengo";
+  version = "3.1.0";
+
+  src = fetchFromGitHub {
+    owner = "nengo";
+    repo = "nengo";
+    rev = "v${version}";
+    sha256 = "1wkayimf2jqkbr6piikh5zd6yw8gf2qv4v4bfrprs4laa6wzh2qh";
+  };
+
+  propagatedBuildInputs = [ numpy ]
+    ++ lib.optionals scipySupport [ scipy ]
+    ++ lib.optionals scikitSupport [ scikit-learn ];
+
+  # checks req missing:
+  #   pytest-allclose
+  #   pytest-plt
+  #   pytest-rng
+  doCheck = false;
+
+  pythonImportsCheck = [ "nengo" ];
+
+  meta = with lib; {
+    description = "A Python library for creating and simulating large-scale brain models";
+    homepage    = "https://nengo.ai/";
+    license     = licenses.unfreeRedistributable;
+    maintainers = with maintainers; [ arjix ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/nettigo-air-monitor/default.nix b/nixpkgs/pkgs/development/python-modules/nettigo-air-monitor/default.nix
index 9cf8618bb301..4787d9d6f768 100644
--- a/nixpkgs/pkgs/development/python-modules/nettigo-air-monitor/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nettigo-air-monitor/default.nix
@@ -2,6 +2,7 @@
 , aiohttp
 , aioresponses
 , buildPythonPackage
+, dacite
 , fetchFromGitHub
 , pytest-asyncio
 , pytest-error-for-skips
@@ -11,18 +12,19 @@
 
 buildPythonPackage rec {
   pname = "nettigo-air-monitor";
-  version = "0.2.6";
+  version = "1.0.0";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "bieniu";
     repo = pname;
     rev = version;
-    sha256 = "0zs14g02m1ahyrhl2ihk74fp390g4672r1jjiaawmkxrvib07dvp";
+    sha256 = "sha256-VTKIUo3rR/HyEW/d/Nm0fm7wbgSdLGf02i8R3om1oCE=";
   };
 
   propagatedBuildInputs = [
     aiohttp
+    dacite
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/nexia/default.nix b/nixpkgs/pkgs/development/python-modules/nexia/default.nix
index 14b888428aac..5e07d6331ac1 100644
--- a/nixpkgs/pkgs/development/python-modules/nexia/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nexia/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "nexia";
-  version = "0.9.7";
+  version = "0.9.9";
   disabled = pythonOlder "3.5";
 
   src = fetchFromGitHub {
     owner = "bdraco";
     repo = pname;
     rev = version;
-    sha256 = "sha256-1oBrDr8QAUe6LLBliR/sNwDlLuisxOWPeI9sxuJtGxU=";
+    sha256 = "sha256-OamQ6p8o23lVeOB/KyNQI7G8xZaAaVNYacoRfbNKJtk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/nipype/default.nix b/nixpkgs/pkgs/development/python-modules/nipype/default.nix
index 078c455a6373..8d0c597a1af0 100644
--- a/nixpkgs/pkgs/development/python-modules/nipype/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nipype/default.nix
@@ -19,14 +19,14 @@
 , pybids
 , pydot
 , pytest
-, pytest_xdist
+, pytest-xdist
 , pytest-forked
 , rdflib
 , scipy
 , simplejson
 , traits
 , xvfbwrapper
-, pytestcov
+, pytest-cov
 , codecov
 , sphinx
 # other dependencies
@@ -93,8 +93,8 @@ buildPythonPackage rec {
     mock
     pytest
     pytest-forked
-    pytest_xdist
-    pytestcov
+    pytest-xdist
+    pytest-cov
     which
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/nix-prefetch-github/default.nix b/nixpkgs/pkgs/development/python-modules/nix-prefetch-github/default.nix
index d4817480e57c..0821e0b763d0 100644
--- a/nixpkgs/pkgs/development/python-modules/nix-prefetch-github/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nix-prefetch-github/default.nix
@@ -6,13 +6,13 @@
 , effect
 , git
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "nix-prefetch-github";
-  version = "4.0.3";
+  version = "4.0.4";
 
   disabled = pythonOlder "3.7";
 
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "seppeljordan";
     repo = "nix-prefetch-github";
     rev = "v${version}";
-    sha256 = "CLcmwobPrL6NiI/nw+/Dwho/r15owV16Jmt5OcfFqvo=";
+    sha256 = "g5G818Gq5EGyRIyg/ZW7guxMS0IyJ4nYaRjG/CtGhuc=";
   };
 
   propagatedBuildInputs = [
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     effect
   ];
 
-  checkInputs = [ pytestCheckHook pytestcov git ];
+  checkInputs = [ pytestCheckHook pytest-cov git ];
 
   # ignore tests which are impure
   disabledTests = [ "network" "requires_nix_build" ];
diff --git a/nixpkgs/pkgs/development/python-modules/nplusone/default.nix b/nixpkgs/pkgs/development/python-modules/nplusone/default.nix
index c2f484cb3a92..7d29428d93e6 100644
--- a/nixpkgs/pkgs/development/python-modules/nplusone/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nplusone/default.nix
@@ -1,5 +1,5 @@
 { blinker, buildPythonPackage, fetchFromGitHub, lib, isPy27, six, mock, pytest
-, webtest, pytestcov, pytest-django, pytest-pythonpath, flake8, sqlalchemy
+, webtest, pytest-cov, pytest-django, pytest-pythonpath, flake8, sqlalchemy
 , flask_sqlalchemy, peewee }:
 
 buildPythonPackage rec {
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     mock
     pytest
     webtest
-    pytestcov
+    pytest-cov
     pytest-django
     pytest-pythonpath
     flake8
diff --git a/nixpkgs/pkgs/development/python-modules/numba/default.nix b/nixpkgs/pkgs/development/python-modules/numba/default.nix
index e4af2ddadb57..74f7d4003dcd 100644
--- a/nixpkgs/pkgs/development/python-modules/numba/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/numba/default.nix
@@ -14,8 +14,7 @@
 buildPythonPackage rec {
   version = "0.53.1";
   pname = "numba";
-  # uses f-strings, python 3.9 is not yet supported
-  disabled = pythonOlder "3.6" || pythonAtLeast "3.9";
+  disabled = pythonOlder "3.6" || pythonAtLeast "3.10";
 
   src = fetchPypi {
     inherit pname version;
diff --git a/nixpkgs/pkgs/development/python-modules/numpy-stl/default.nix b/nixpkgs/pkgs/development/python-modules/numpy-stl/default.nix
index 53577567bf6e..f9c27b4c79a3 100644
--- a/nixpkgs/pkgs/development/python-modules/numpy-stl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/numpy-stl/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, cython, numpy, nine, pytest, pytestrunner, python-utils, enum34 }:
+{ lib, buildPythonPackage, fetchPypi, cython, numpy, nine, pytest, pytest-runner, python-utils, enum34 }:
 
 buildPythonPackage rec {
   pname = "numpy-stl";
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     sha256 = "411c633d2a03c295d98fb26023a6e7f574ceead04015d06e80cdab20b630a742";
   };
 
-  checkInputs = [ pytest pytestrunner ];
+  checkInputs = [ pytest pytest-runner ];
 
   checkPhase = "py.test";
 
diff --git a/nixpkgs/pkgs/development/python-modules/omegaconf/default.nix b/nixpkgs/pkgs/development/python-modules/omegaconf/default.nix
index ad9da46243b0..42249e933789 100644
--- a/nixpkgs/pkgs/development/python-modules/omegaconf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/omegaconf/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchFromGitHub, pythonOlder
-, pytest, pytestrunner, pyyaml, six, pathlib2, isPy27 }:
+, pytest, pytest-runner, pyyaml, six, pathlib2, isPy27 }:
 
 buildPythonPackage rec {
   pname = "omegaconf";
@@ -13,7 +13,7 @@ buildPythonPackage rec {
   };
 
   checkInputs = [ pytest ];
-  buildInputs = [ pytestrunner ];
+  buildInputs = [ pytest-runner ];
   propagatedBuildInputs = [ pyyaml six ] ++ lib.optional isPy27 pathlib2;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/openapi-schema-validator/default.nix b/nixpkgs/pkgs/development/python-modules/openapi-schema-validator/default.nix
index f09a42ddd69b..18e357c1f2d2 100644
--- a/nixpkgs/pkgs/development/python-modules/openapi-schema-validator/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/openapi-schema-validator/default.nix
@@ -5,7 +5,7 @@
 , isodate
 , jsonschema
 , pytest-flake8
-, pytestcov
+, pytest-cov
 , rfc3339-validator
 , six
 , strict-rfc3339
@@ -22,7 +22,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ isodate jsonschema six strict-rfc3339 rfc3339-validator ];
 
-  checkInputs = [ pytestCheckHook pytestcov pytest-flake8 ];
+  checkInputs = [ pytestCheckHook pytest-cov pytest-flake8 ];
   pythonImportsCheck = [ "openapi_schema_validator" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/openapi-spec-validator/default.nix b/nixpkgs/pkgs/development/python-modules/openapi-spec-validator/default.nix
index b431ef507525..4e61a86a5013 100644
--- a/nixpkgs/pkgs/development/python-modules/openapi-spec-validator/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/openapi-spec-validator/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, isPy27, fetchPypi
 , jsonschema, openapi-schema-validator, pyyaml, six, pathlib
-, mock, pytest, pytestcov, pytest-flake8, tox, setuptools }:
+, mock, pytest, pytest-cov, pytest-flake8, tox, setuptools }:
 
 buildPythonPackage rec {
   pname = "openapi-spec-validator";
@@ -14,7 +14,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ jsonschema openapi-schema-validator pyyaml six setuptools ]
     ++ (lib.optionals (isPy27) [ pathlib ]);
 
-  checkInputs = [ mock pytest pytestcov pytest-flake8 tox ];
+  checkInputs = [ mock pytest pytest-cov pytest-flake8 tox ];
 
   meta = with lib; {
     homepage = "https://github.com/p1c2u/openapi-spec-validator";
diff --git a/nixpkgs/pkgs/development/python-modules/opensimplex/default.nix b/nixpkgs/pkgs/development/python-modules/opensimplex/default.nix
new file mode 100644
index 000000000000..d95aa846965d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/opensimplex/default.nix
@@ -0,0 +1,38 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, autopep8
+, nose
+, pycodestyle
+, twine
+}:
+
+buildPythonPackage rec {
+  pname = "opensimplex";
+  version = "0.3";
+
+  src = fetchFromGitHub {
+    owner = "lmas";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "idF5JQGnAye6z3c3YU9rsHaebB3rlHJfA8vSpjDnFeM=";
+  };
+
+  checkInputs = [ autopep8 nose pycodestyle twine ];
+  checkPhase = ''
+    nosetests tests/
+  '';
+
+  meta = with lib; {
+    description = "OpenSimplex Noise functions for 2D, 3D and 4D";
+    longDescription = ''
+      OpenSimplex noise is an n-dimensional gradient noise function that was
+      developed in order to overcome the patent-related issues surrounding
+      Simplex noise, while continuing to also avoid the visually-significant
+      directional artifacts characteristic of Perlin noise.
+    '';
+    homepage = "https://github.com/lmas/opensimplex";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ angustrau ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/orm/default.nix b/nixpkgs/pkgs/development/python-modules/orm/default.nix
index 872a54076125..f2dd196be942 100644
--- a/nixpkgs/pkgs/development/python-modules/orm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/orm/default.nix
@@ -5,7 +5,7 @@
 , typesystem
 , aiosqlite
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , typing-extensions
 }:
 
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   checkInputs = [
     aiosqlite
     pytestCheckHook
-    pytestcov
+    pytest-cov
     typing-extensions
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/packet-python/default.nix b/nixpkgs/pkgs/development/python-modules/packet-python/default.nix
index 1bbb713f40bd..c63c6df86f9f 100644
--- a/nixpkgs/pkgs/development/python-modules/packet-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/packet-python/default.nix
@@ -6,7 +6,7 @@
 
 # For tests/setup.py
 , pytest
-, pytestrunner
+, pytest-runner
 , requests-mock
 }:
 
@@ -17,11 +17,11 @@ buildPythonPackage rec {
     inherit pname version;
     sha256 = "4af12f2fbcc9713878ab4ed571e9fda028bc68add34cde0e7226af4d833a4d38";
   };
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
   propagatedBuildInputs = [ requests ];
   checkInputs = [
     pytest
-    pytestrunner
+    pytest-runner
     requests-mock
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/paho-mqtt/default.nix b/nixpkgs/pkgs/development/python-modules/paho-mqtt/default.nix
index 92f8f5d90f10..e8344e88f110 100644
--- a/nixpkgs/pkgs/development/python-modules/paho-mqtt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/paho-mqtt/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchFromGitHub, isPy3k
-, stdenv, pytestrunner, pytest, mock }:
+, stdenv, pytest-runner, pytest, mock }:
 
 buildPythonPackage rec {
   pname = "paho-mqtt";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     substituteInPlace setup.cfg --replace "--pylama" ""
   '';
 
-  checkInputs = [ pytestrunner pytest ] ++ lib.optional (!isPy3k) mock;
+  checkInputs = [ pytest-runner pytest ] ++ lib.optional (!isPy3k) mock;
 
   doCheck = !stdenv.isDarwin;
 
diff --git a/nixpkgs/pkgs/development/python-modules/papermill/default.nix b/nixpkgs/pkgs/development/python-modules/papermill/default.nix
index 9af09d569466..5b9a6d8e968b 100644
--- a/nixpkgs/pkgs/development/python-modules/papermill/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/papermill/default.nix
@@ -19,7 +19,7 @@
 , backports_tempfile
 , isPy27
 , pytest
-, pytestcov
+, pytest-cov
 , pytest-mock
 }:
 
@@ -54,7 +54,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytestcov
+    pytest-cov
     pytest-mock
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/papis/default.nix b/nixpkgs/pkgs/development/python-modules/papis/default.nix
index 3e7c6ae00116..72eb9a185d7a 100644
--- a/nixpkgs/pkgs/development/python-modules/papis/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/papis/default.nix
@@ -3,7 +3,7 @@
 , pyyaml, chardet, beautifulsoup4, colorama, bibtexparser
 , click, python-slugify, habanero, isbnlib, typing-extensions
 , prompt_toolkit, pygments, stevedore, tqdm, lxml
-, python-doi, isPy3k, pytestcov
+, python-doi, isPy3k, pytest-cov
 #, optional, dependencies
 , whoosh, pytest
 , stdenv
@@ -43,7 +43,7 @@ buildPythonPackage rec {
   doCheck = !stdenv.isDarwin;
 
   checkInputs = ([
-    pytest pytestcov
+    pytest pytest-cov
   ]) ++ [
     xdg-utils
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/parameterizedtestcase/default.nix b/nixpkgs/pkgs/development/python-modules/parameterizedtestcase/default.nix
new file mode 100644
index 000000000000..20e662cd66d6
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/parameterizedtestcase/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, python
+, isPy27
+}:
+
+buildPythonPackage rec {
+  pname = "parameterizedtestcase";
+  version = "0.1.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "4ccc1d15d7e7ef153619a6a9cd45b170268cf82c67fdd336794c75139aae127e";
+  };
+
+  checkPhase = ''
+    runHook preCheck
+    ${python.interpreter} -m parameterizedtestcase.tests
+    runHook postCheck
+  '';
+
+  doCheck = isPy27;
+
+  meta = with lib; {
+    description = "Parameterized tests for Python's unittest module";
+    homepage = "https://github.com/msabramo/python_unittest_parameterized_test_case";
+    license = licenses.mit;
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/parse-type/default.nix b/nixpkgs/pkgs/development/python-modules/parse-type/default.nix
index decb15ff5e6c..709b257e3375 100644
--- a/nixpkgs/pkgs/development/python-modules/parse-type/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/parse-type/default.nix
@@ -1,6 +1,6 @@
 { lib, fetchPypi
 , buildPythonPackage, pythonOlder
-, pytest, pytestrunner
+, pytest, pytest-runner
 , parse, six, enum34
 }:
 
@@ -13,7 +13,7 @@ buildPythonPackage rec {
     sha256 = "02wclgiqky06y36b3q07b7ngpks5j0gmgl6n71ac2j2hscc0nsbz";
   };
 
-  checkInputs = [ pytest pytestrunner ];
+  checkInputs = [ pytest pytest-runner ];
   propagatedBuildInputs = [ parse six ] ++ lib.optional (pythonOlder "3.4") enum34;
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/parsedatetime/default.nix b/nixpkgs/pkgs/development/python-modules/parsedatetime/default.nix
index 77196a7c0e99..ba3662a44b03 100644
--- a/nixpkgs/pkgs/development/python-modules/parsedatetime/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/parsedatetime/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , isPy27
 , pytest
-, pytestrunner
+, pytest-runner
 , future
 }:
 
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "4cb368fbb18a0b7231f4d76119165451c8d2e35951455dfee97c62a87b04d455";
   };
 
-  buildInputs = [ pytest pytestrunner ];
+  buildInputs = [ pytest pytest-runner ];
   propagatedBuildInputs = [ future ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/paste/default.nix b/nixpkgs/pkgs/development/python-modules/paste/default.nix
index 533a4dc3a308..71b670b707cc 100644
--- a/nixpkgs/pkgs/development/python-modules/paste/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/paste/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , six
-, pytestrunner
+, pytest-runner
 , pytest
 }:
 
@@ -18,7 +18,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ six ];
 
-  checkInputs = [ pytestrunner pytest ];
+  checkInputs = [ pytest-runner pytest ];
 
   # Certain tests require network
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pastedeploy/default.nix b/nixpkgs/pkgs/development/python-modules/pastedeploy/default.nix
index 672708b0fd9d..b5d429de081a 100644
--- a/nixpkgs/pkgs/development/python-modules/pastedeploy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pastedeploy/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, pytestrunner
+, pytest-runner
 , pytest
 }:
 
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     sha256 = "6dead6ab9823a85d585ef27f878bc647f787edb9ca8da0716aa9f1261b464817";
   };
 
-  buildInputs = [ pytestrunner ];
+  buildInputs = [ pytest-runner ];
 
   checkInputs = [ pytest ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/periodictable/default.nix b/nixpkgs/pkgs/development/python-modules/periodictable/default.nix
index 783d85b6c08c..7c08468c03f4 100644
--- a/nixpkgs/pkgs/development/python-modules/periodictable/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/periodictable/default.nix
@@ -1,4 +1,4 @@
-{lib, fetchPypi, buildPythonPackage, numpy, pyparsing, pytestcov, pytestCheckHook }:
+{lib, fetchPypi, buildPythonPackage, numpy, pyparsing, pytest-cov, pytestCheckHook }:
 
 buildPythonPackage rec {
   pname = "periodictable";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
     sha256 = "52e925220005c20e97601e7b04ad6cebc271680947ab9adcbb1a796ddbaa0f23";
   };
 
-  checkInputs = [ pytestcov pytestCheckHook ];
+  checkInputs = [ pytest-cov pytestCheckHook ];
 
   meta = {
     homepage = "https://www.reflectometry.org/danse/software.html";
diff --git a/nixpkgs/pkgs/development/python-modules/pglast/default.nix b/nixpkgs/pkgs/development/python-modules/pglast/default.nix
index 6a0f8940788c..8184c6d0d18a 100644
--- a/nixpkgs/pkgs/development/python-modules/pglast/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pglast/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , isPy3k
 , setuptools
-, pytestcov
+, pytest-cov
 , pytest
 }:
 
@@ -24,7 +24,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ setuptools ];
 
-  checkInputs = [ pytest pytestcov ];
+  checkInputs = [ pytest pytest-cov ];
 
   pythonImportsCheck = [ "pglast" ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/phonemizer/default.nix b/nixpkgs/pkgs/development/python-modules/phonemizer/default.nix
index 8eab09046dc2..54a816643818 100644
--- a/nixpkgs/pkgs/development/python-modules/phonemizer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/phonemizer/default.nix
@@ -7,7 +7,7 @@
 , attrs
 , espeak-ng
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 }:
 
 buildPythonApplication rec {
@@ -45,7 +45,7 @@ buildPythonApplication rec {
 
   checkInputs = [
     pytestCheckHook
-    pytestcov
+    pytest-cov
   ];
 
   # We tried to package festvial, but were unable to get the backend running,
diff --git a/nixpkgs/pkgs/development/python-modules/phonenumbers/default.nix b/nixpkgs/pkgs/development/python-modules/phonenumbers/default.nix
index a7ab39c7c1c9..fa869c5d75d9 100644
--- a/nixpkgs/pkgs/development/python-modules/phonenumbers/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/phonenumbers/default.nix
@@ -1,18 +1,30 @@
-{ lib, buildPythonPackage, fetchPypi }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "phonenumbers";
-  version = "8.12.25";
+  version = "8.12.26";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "de4db4e2582f989a9cbae54364a647b24a72a7b0126be50d8356cf02217dc6c9";
+    sha256 = "sha256-Zbq269vg7FGWx0YmlJdI21M30jiVqrwe+PXXKEeHmYo=";
   };
 
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [ "tests/*.py" ];
+
+  pythonImportsCheck = [ "phonenumbers" ];
+
   meta = with lib; {
-    description = "Python version of Google's common library for parsing, formatting, storing and validating international phone numbers";
-    homepage    = "https://github.com/daviddrysdale/python-phonenumbers";
-    license     = licenses.asl20;
+    description = "Python module for handling international phone numbers";
+    homepage = "https://github.com/daviddrysdale/python-phonenumbers";
+    license = licenses.asl20;
     maintainers = with maintainers; [ fadenb ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/phonopy/default.nix b/nixpkgs/pkgs/development/python-modules/phonopy/default.nix
index 2ca29ffd8e3d..af728d414c1b 100644
--- a/nixpkgs/pkgs/development/python-modules/phonopy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/phonopy/default.nix
@@ -5,6 +5,7 @@
 , pyyaml
 , matplotlib
 , h5py
+, scipy
 , spglib
 , pytestCheckHook
 }:
@@ -18,9 +19,18 @@ buildPythonPackage rec {
     sha256 = "58485042ab7d88fc8b83744d18b2aefd677adb071c8a717ac3710458192743d7";
   };
 
-  propagatedBuildInputs = [ numpy pyyaml matplotlib h5py spglib ];
+  propagatedBuildInputs = [
+    h5py
+    matplotlib
+    numpy
+    pyyaml
+    scipy
+    spglib
+  ];
 
-  checkInputs = [ pytestCheckHook ];
+  checkInputs = [
+    pytestCheckHook
+  ];
 
   # prevent pytest from importing local directory
   preCheck = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pillow/default.nix b/nixpkgs/pkgs/development/python-modules/pillow/default.nix
index 0f747a8d73e0..af6c3d80deaf 100644
--- a/nixpkgs/pkgs/development/python-modules/pillow/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pillow/default.nix
@@ -1,17 +1,17 @@
 { lib, stdenv, buildPythonPackage, fetchPypi, isPyPy, isPy3k
-, olefile, freetype, libjpeg, zlib, libtiff, libwebp, tcl, lcms2, tk, libX11
+, defusedxml, olefile, freetype, libjpeg, zlib, libtiff, libwebp, tcl, lcms2, tk, libX11
 , libxcb, openjpeg, libimagequant, pyroma, numpy, pytestCheckHook
 }@args:
 
 import ./generic.nix (rec {
   pname = "Pillow";
-  version = "8.2.0";
+  version = "8.3.1";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1qf3bz1sfz58ff6hclg8phgqyy210x3aqdk5yzjr8m5vsw8ap1x7";
+    sha256 = "2cac53839bfc5cece8fdbe7f084d5e3ee61e1303cccc86511d351adcb9e2c792";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pillow/generic.nix b/nixpkgs/pkgs/development/python-modules/pillow/generic.nix
index 64ae91895593..3e33f1a8aa0f 100644
--- a/nixpkgs/pkgs/development/python-modules/pillow/generic.nix
+++ b/nixpkgs/pkgs/development/python-modules/pillow/generic.nix
@@ -31,7 +31,8 @@ buildPythonPackage rec {
     "test_custom_metadata"
   ];
 
-  propagatedBuildInputs = [ olefile ];
+  propagatedBuildInputs = [ olefile ]
+    ++ lib.optionals (lib.versionAtLeast version "8.2.0") [ defusedxml ];
 
   checkInputs = [ pytestCheckHook pyroma numpy ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/plaster-pastedeploy/default.nix b/nixpkgs/pkgs/development/python-modules/plaster-pastedeploy/default.nix
index 262bdceb5db7..75bc033807f6 100644
--- a/nixpkgs/pkgs/development/python-modules/plaster-pastedeploy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/plaster-pastedeploy/default.nix
@@ -1,6 +1,6 @@
 { buildPythonPackage, fetchPypi, fetchpatch
 , plaster, PasteDeploy
-, pytest, pytestcov
+, pytest, pytest-cov
 }:
 
 buildPythonPackage rec {
@@ -26,5 +26,5 @@ buildPythonPackage rec {
   '';
 
   propagatedBuildInputs = [ plaster PasteDeploy ];
-  checkInputs = [ pytest pytestcov ];
+  checkInputs = [ pytest pytest-cov ];
 }
diff --git a/nixpkgs/pkgs/development/python-modules/plaster/default.nix b/nixpkgs/pkgs/development/python-modules/plaster/default.nix
index 82aaebb10039..749ffdb7f321 100644
--- a/nixpkgs/pkgs/development/python-modules/plaster/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/plaster/default.nix
@@ -1,5 +1,5 @@
 { buildPythonPackage, fetchPypi
-, pytest, pytestcov
+, pytest, pytest-cov
 }:
 
 buildPythonPackage rec {
@@ -15,5 +15,5 @@ buildPythonPackage rec {
     py.test
   '';
 
-  checkInputs = [ pytest pytestcov ];
+  checkInputs = [ pytest pytest-cov ];
 }
diff --git a/nixpkgs/pkgs/development/python-modules/plexapi/default.nix b/nixpkgs/pkgs/development/python-modules/plexapi/default.nix
index 5c41c3308bed..d2e04586e382 100644
--- a/nixpkgs/pkgs/development/python-modules/plexapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/plexapi/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "PlexAPI";
-  version = "4.5.2";
+  version = "4.6.1";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "pkkid";
     repo = "python-plexapi";
     rev = version;
-    sha256 = "sha256-9rdpisEuLUO7oO7+7SQb4fXqRG30rf4R7bSFY+QpMhM=";
+    sha256 = "sha256-WL5UBsvAdtfOCkVX9NI0Z2fJ2CAO+NwD8wvkvkJ2uww=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/plugwise/default.nix b/nixpkgs/pkgs/development/python-modules/plugwise/default.nix
index 299e2af2f958..c629e2d94515 100644
--- a/nixpkgs/pkgs/development/python-modules/plugwise/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/plugwise/default.nix
@@ -19,13 +19,13 @@
 
 buildPythonPackage rec {
   pname = "plugwise";
-  version = "0.10.0";
+  version = "0.11.1";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = "python-plugwise";
     rev = version;
-    sha256 = "sha256-M0Zwao8I8PRxxF9xvtzFeCFK9+eMlXYcWJarfHSGAlw=";
+    sha256 = "sha256-b00jfPZTVRI7BRpUHI2NjcydkykC/1HjmVzDaIech8c=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/poetry/default.nix b/nixpkgs/pkgs/development/python-modules/poetry/default.nix
index ad043e9f59e0..7287797ef331 100644
--- a/nixpkgs/pkgs/development/python-modules/poetry/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/poetry/default.nix
@@ -13,7 +13,7 @@
 , pkginfo
 , poetry-core
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , pytest-mock
 , requests
 , requests-toolbelt
@@ -24,7 +24,7 @@
 
 buildPythonPackage rec {
   pname = "poetry";
-  version = "1.1.6";
+  version = "1.1.7";
   format = "pyproject";
   disabled = isPy27;
 
@@ -32,7 +32,7 @@ buildPythonPackage rec {
     owner = "python-poetry";
     repo = pname;
     rev = version;
-    sha256 = "sha256-3Nx9xuQMIho+oRjqskHL9eQGKDAWntEGZcWe7evnmNU=";
+    sha256 = "03cbzjw0sb8rs85iq191ndk9523d6qpymh2nhw5bvcxfvsf9042d";
   };
 
   postPatch = ''
@@ -71,7 +71,7 @@ buildPythonPackage rec {
     "$out/bin/poetry" completions fish > "$out/share/fish/vendor_completions.d/poetry.fish"
   '';
 
-  checkInputs = [ pytestCheckHook httpretty pytest-mock pytestcov ];
+  checkInputs = [ pytestCheckHook httpretty pytest-mock pytest-cov ];
   preCheck = "export HOME=$TMPDIR";
   disabledTests = [
     # touches network
diff --git a/nixpkgs/pkgs/development/python-modules/portalocker/default.nix b/nixpkgs/pkgs/development/python-modules/portalocker/default.nix
index 7b4fc177bc11..eee4a1047fdd 100644
--- a/nixpkgs/pkgs/development/python-modules/portalocker/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/portalocker/default.nix
@@ -1,7 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
 , pytestCheckHook
-, pytestcov
-, pytest-flake8
 , pytest-mypy
 , redis
 }:
diff --git a/nixpkgs/pkgs/development/python-modules/portend/default.nix b/nixpkgs/pkgs/development/python-modules/portend/default.nix
index da27dd3cd922..d48f387400e4 100644
--- a/nixpkgs/pkgs/development/python-modules/portend/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/portend/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, pytest, setuptools-scm, tempora, pytest-black, pytestcov }:
+, pytest, setuptools-scm, tempora, pytest-black, pytest-cov }:
 
 buildPythonPackage rec {
   pname = "portend";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ tempora ];
 
-  checkInputs = [ pytest pytest-black pytestcov ];
+  checkInputs = [ pytest pytest-black pytest-cov ];
 
   checkPhase = ''
     py.test --deselect=test_portend.py::TestChecker::test_check_port_listening
diff --git a/nixpkgs/pkgs/development/python-modules/prance/default.nix b/nixpkgs/pkgs/development/python-modules/prance/default.nix
index b13808f1a9db..0f18a6ad2072 100644
--- a/nixpkgs/pkgs/development/python-modules/prance/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/prance/default.nix
@@ -7,8 +7,8 @@
 , six
 , semver
 , pytestCheckHook
-, pytestcov
-, pytestrunner
+, pytest-cov
+, pytest-runner
 , openapi-spec-validator
 }:
 
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   };
 
   buildInputs = [
-    pytestrunner
+    pytest-runner
   ];
 
   propagatedBuildInputs = [
@@ -35,7 +35,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytestCheckHook
-    pytestcov
+    pytest-cov
     openapi-spec-validator
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/praw/6.3.nix b/nixpkgs/pkgs/development/python-modules/praw/6.3.nix
index 242300949ecb..13ecab806c45 100644
--- a/nixpkgs/pkgs/development/python-modules/praw/6.3.nix
+++ b/nixpkgs/pkgs/development/python-modules/praw/6.3.nix
@@ -4,7 +4,7 @@
 , betamax-matchers
 , mock
 , six
-, pytestrunner
+, pytest-runner
 , prawcore
 , pytest
 , requests-toolbelt
@@ -24,7 +24,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    pytestrunner
+    pytest-runner
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/prawcore/default.nix b/nixpkgs/pkgs/development/python-modules/prawcore/default.nix
index 686487c0256d..cb72e69af77d 100644
--- a/nixpkgs/pkgs/development/python-modules/prawcore/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/prawcore/default.nix
@@ -4,7 +4,7 @@
 , requests
 , testfixtures
 , mock
-, requests_toolbelt
+, requests-toolbelt
 , betamax
 , betamax-serializers
 , betamax-matchers
@@ -32,7 +32,7 @@ buildPythonPackage rec {
     betamax
     betamax-serializers
     betamax-matchers
-    requests_toolbelt
+    requests-toolbelt
     pytestCheckHook
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pre-commit-hooks/default.nix b/nixpkgs/pkgs/development/python-modules/pre-commit-hooks/default.nix
index f664d9c6d25e..212fdf6a721a 100644
--- a/nixpkgs/pkgs/development/python-modules/pre-commit-hooks/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pre-commit-hooks/default.nix
@@ -1,9 +1,8 @@
-{ buildPythonPackage
+{ lib
+, buildPythonPackage
 , fetchFromGitHub
-, fetchPypi
 , git
-, isPy27
-, lib
+, pythonOlder
 , pytestCheckHook
 , ruamel_yaml
 , toml
@@ -11,19 +10,25 @@
 
 buildPythonPackage rec {
   pname = "pre-commit-hooks";
-  version = "3.4.0";
-  disabled = isPy27;
+  version = "4.0.1";
+  disabled = pythonOlder "3.6";
 
-  # fetchPypi does not provide tests
   src = fetchFromGitHub {
     owner = "pre-commit";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1aqkmprdc2lhds9c59pkkf2js65j63197flanaggk7cm8k0kz7zs";
+    sha256 = "sha256-Rg2I79r0Pp3AUgT6mD+kEdm+5CEGgdmFn6G3xcU6fnk=";
   };
 
-  propagatedBuildInputs = [ toml ruamel_yaml ];
-  checkInputs = [ git pytestCheckHook ];
+  propagatedBuildInputs = [
+    ruamel_yaml
+    toml
+  ];
+
+  checkInputs = [
+    git
+    pytestCheckHook
+  ];
 
   # the tests require a functional git installation which requires a valid HOME
   # directory.
@@ -34,6 +39,8 @@ buildPythonPackage rec {
     git config --global user.email "nix-builder@nixos.org"
   '';
 
+  pythonImportsCheck = [ "pre_commit_hooks" ];
+
   meta = with lib; {
     description = "Some out-of-the-box hooks for pre-commit";
     homepage = "https://github.com/pre-commit/pre-commit-hooks";
diff --git a/nixpkgs/pkgs/development/python-modules/prefixed/default.nix b/nixpkgs/pkgs/development/python-modules/prefixed/default.nix
new file mode 100644
index 000000000000..d5837fd90a1c
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/prefixed/default.nix
@@ -0,0 +1,26 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "prefixed";
+  version = "0.3.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "ca48277ba5fa8346dd4b760847da930c7b84416387c39e93affef086add2c029";
+  };
+
+  checkInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "prefixed" ];
+
+  meta = with lib; {
+    description = "Prefixed alternative numeric library";
+    homepage = "https://github.com/Rockhopper-Technologies/prefixed";
+    license = with licenses; [ mpl20 ];
+    maintainers = with maintainers; [ veprbl ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/property-manager/default.nix b/nixpkgs/pkgs/development/python-modules/property-manager/default.nix
index ad47163e4842..f50f9625fd96 100644
--- a/nixpkgs/pkgs/development/python-modules/property-manager/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/property-manager/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, humanfriendly, verboselogs, coloredlogs, pytest, pytestcov }:
+{ lib, buildPythonPackage, fetchFromGitHub, humanfriendly, verboselogs, coloredlogs, pytest, pytest-cov }:
 
 buildPythonPackage rec {
   pname = "property-manager";
@@ -12,7 +12,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [ coloredlogs humanfriendly verboselogs ];
-  checkInputs = [ pytest pytestcov ];
+  checkInputs = [ pytest pytest-cov ];
 
   meta = with lib; {
     description = "Useful property variants for Python programming";
diff --git a/nixpkgs/pkgs/development/python-modules/psautohint/default.nix b/nixpkgs/pkgs/development/python-modules/psautohint/default.nix
index 01b249e1c77f..ff312cbff891 100644
--- a/nixpkgs/pkgs/development/python-modules/psautohint/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/psautohint/default.nix
@@ -2,7 +2,7 @@
 , fonttools
 , lxml, fs # for fonttools extras
 , setuptools-scm
-, pytestCheckHook, pytestcov, pytest_xdist
+, pytestCheckHook, pytest-cov, pytest-xdist
 }:
 
 buildPythonPackage rec {
@@ -31,8 +31,8 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytestCheckHook
-    pytestcov
-    pytest_xdist
+    pytest-cov
+    pytest-xdist
   ];
   disabledTests = [
     # Test that fails on pytest >= v6
diff --git a/nixpkgs/pkgs/development/python-modules/pure-eval/default.nix b/nixpkgs/pkgs/development/python-modules/pure-eval/default.nix
index c8fde03d79dc..866b2bdcadf6 100644
--- a/nixpkgs/pkgs/development/python-modules/pure-eval/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pure-eval/default.nix
@@ -1,8 +1,15 @@
-{ buildPythonPackage, isPy3k, lib, fetchFromGitHub, setuptools-scm, toml, pytest }:
+{ lib
+, buildPythonPackage
+, isPy3k
+, fetchFromGitHub
+, setuptools-scm
+, toml
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "pure_eval";
-  version = "0.1.0";
+  version = "0.2.1";
 
   disabled = !isPy3k;
 
@@ -10,15 +17,24 @@ buildPythonPackage rec {
     owner = "alexmojaki";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1d3gpc9mrmwdk6l87x7ll23vwv6l8l2iqvi63r86j7bj5s8m2ci8";
+    sha256 = "sha256-+Vucu16NFPtQ23AbBH/cQU+klxp6DMicSScbnKegLZI=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
 
-  buildInputs = [ setuptools-scm ];
-  propagatedBuildInputs = [ toml ];
+  buildInputs = [
+    setuptools-scm
+  ];
 
-  checkInputs = [ pytest ];
+  propagatedBuildInputs = [
+    toml
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "pure_eval" ];
 
   meta = with lib; {
     description = "Safely evaluate AST nodes without side effects";
diff --git a/nixpkgs/pkgs/development/python-modules/pure-python-adb-homeassistant/default.nix b/nixpkgs/pkgs/development/python-modules/pure-python-adb-homeassistant/default.nix
index acb9b73403b3..919ab61c60c1 100644
--- a/nixpkgs/pkgs/development/python-modules/pure-python-adb-homeassistant/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pure-python-adb-homeassistant/default.nix
@@ -4,19 +4,21 @@
 }:
 buildPythonPackage rec {
   pname = "pure-python-adb-homeassistant";
-  version = "0.1.6.dev0";
+  version = "0.1.7.dev0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "fe6d90220a6880649f6d6df4e707ce5034676710ee6146145ef995f7b769a482";
+    sha256 = "sha256-xXXEp8oYGcJLTfoBDUSZrIHSgDvB2EHbVMHoG4Hk+t8=";
   };
 
   # Disable tests as they require docker, docker-compose and a dedicated
   # android emulator
   doCheck = false;
 
+  pythonImportsCheck = [ "adb_messenger" ];
+
   meta = with lib; {
-    description = "Pure python implementation of the adb client";
+    description = "Python implementation of the ADB client";
     homepage = "https://github.com/JeffLIrion/pure-python-adb";
     license = licenses.mit;
     maintainers = [ maintainers.makefu ];
diff --git a/nixpkgs/pkgs/development/python-modules/push-receiver/default.nix b/nixpkgs/pkgs/development/python-modules/push-receiver/default.nix
new file mode 100644
index 000000000000..fe0582f0962e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/push-receiver/default.nix
@@ -0,0 +1,35 @@
+{ buildPythonPackage
+, fetchPypi
+, lib
+, appdirs
+, http-ece
+, oscrypto
+, protobuf
+}:
+
+buildPythonPackage rec {
+  pname = "push-receiver";
+  version = "0.1.1";
+
+  src = fetchPypi {
+    inherit version;
+    pname = "push_receiver";
+    sha256 = "sha256-Tknmra39QfA+OgrRxzKDLbkPucW8zgdHqz5FGQnzYOw=";
+  };
+
+  propagatedBuildInputs = [
+    appdirs # required for running the bundled example
+    http-ece # required for listening for new message
+    oscrypto
+    protobuf
+  ];
+
+  pythonImportsCheck = [ "push_receiver" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/Francesco149/push_receiver";
+    description = "Subscribe to GCM/FCM and receive notifications";
+    license = licenses.unlicense;
+    maintainers = with maintainers; [ veehaitch ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pwntools/default.nix b/nixpkgs/pkgs/development/python-modules/pwntools/default.nix
index e3422aff024e..d0ea1b198490 100644
--- a/nixpkgs/pkgs/development/python-modules/pwntools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pwntools/default.nix
@@ -27,12 +27,12 @@ let
   debuggerName = lib.strings.getName debugger;
 in
 buildPythonPackage rec {
-  version = "4.5.1";
+  version = "4.6.0";
   pname = "pwntools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "97f945aed7ffa9d3e87f8759df83a5eac6dc2112907f35d0aee66a9bf62fd8eb";
+    sha256 = "sha256-FWnmE+XgbtRztgo/xxN2xK1bz1YhbqdywlrQIANHAww=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix b/nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix
index 2f494dcb7002..869aea01a29a 100644
--- a/nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix
@@ -1,5 +1,5 @@
 { buildPythonPackage, fetchPypi, flask, isPy27, lib, nixosTests
-, prometheus_client, py-air-control, pytestCheckHook, pytestcov, pytestrunner
+, prometheus_client, py-air-control, pytestCheckHook, pytest-cov, pytest-runner
 , setuptools-scm }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [ setuptools-scm ];
-  checkInputs = [ pytestCheckHook pytestcov pytestrunner ];
+  checkInputs = [ pytestCheckHook pytest-cov pytest-runner ];
   propagatedBuildInputs = [ flask prometheus_client py-air-control ];
 
   passthru.tests = { inherit (nixosTests.prometheus-exporters) py-air-control; };
diff --git a/nixpkgs/pkgs/development/python-modules/py-multibase/default.nix b/nixpkgs/pkgs/development/python-modules/py-multibase/default.nix
index b229361917f6..87cfd6b8e427 100644
--- a/nixpkgs/pkgs/development/python-modules/py-multibase/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/py-multibase/default.nix
@@ -4,7 +4,7 @@
 , lib
 , morphys
 , pytest
-, pytestrunner
+, pytest-runner
 , python-baseconv
 , six
 }:
@@ -24,7 +24,7 @@ buildPythonPackage rec {
   '';
 
   nativeBuildInputs = [
-    pytestrunner
+    pytest-runner
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/py17track/default.nix b/nixpkgs/pkgs/development/python-modules/py17track/default.nix
new file mode 100644
index 000000000000..2c7dc8e52eaf
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/py17track/default.nix
@@ -0,0 +1,61 @@
+{ lib
+, aiohttp
+, aresponses
+, async-timeout
+, attrs
+, buildPythonPackage
+, fetchFromGitHub
+, poetry-core
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, pytz
+}:
+
+buildPythonPackage rec {
+  pname = "py17track";
+  version = "3.3.0";
+  format = "pyproject";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "bachya";
+    repo = pname;
+    rev = version;
+    sha256 = "1rnq9ybzj2l3699mjyplc29mxla8fayh52x52cnsz21ixlfd9fky";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    aiohttp
+    async-timeout
+    attrs
+    pytz
+  ];
+
+  checkInputs = [
+    aresponses
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace ">=19.3,<21.0" ">=19.3,<22.0"
+  '';
+
+  # Ignore the examples directory as the files are prefixed with test_
+  disabledTestPaths = [ "examples/" ];
+
+  pythonImportsCheck = [ "py17track" ];
+
+  meta = with lib; {
+    description = "Python library to track package info from 17track.com";
+    homepage = "https://github.com/bachya/py17track";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyavm/default.nix b/nixpkgs/pkgs/development/python-modules/pyavm/default.nix
index 4535767a69c9..c5127be1a877 100644
--- a/nixpkgs/pkgs/development/python-modules/pyavm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyavm/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, pytest
+, pytestCheckHook
 , astropy
 , astropy-helpers
 , pillow
@@ -9,29 +9,35 @@
 
 buildPythonPackage rec {
   pname = "pyavm";
-  version = "0.9.4";
+  version = "0.9.5";
 
   src = fetchPypi {
     pname = "PyAVM";
     inherit version;
-    sha256 = "f298b864e5bc101ecbb0e46252e95e18a180ac28ba6ec362e63c12a7e914e386";
+    sha256 = "sha256-gV78ypvYwohHmdjP3lN5F97PfmxuV91tvw5gsYeZ7i8=";
   };
 
-  propagatedBuildInputs = [ astropy-helpers ];
+  propagatedBuildInputs = [
+    astropy-helpers
+  ];
 
-  checkInputs = [ pytest astropy pillow ];
-
-  checkPhase = "pytest";
+  checkInputs = [
+    astropy
+    pillow
+    pytestCheckHook
+  ];
 
   # Disable automatic update of the astropy-helper module
   postPatch = ''
     substituteInPlace setup.cfg --replace "auto_use = True" "auto_use = False"
   '';
 
+  pythonImportsCheck = [ "pyavm" ];
+
   meta = with lib; {
     description = "Simple pure-python AVM meta-data handling";
-    homepage = "http://astrofrog.github.io/pyavm/";
+    homepage = "https://astrofrog.github.io/pyavm/";
     license = licenses.mit;
-    maintainers = [ maintainers.smaret ];
+    maintainers = with maintainers; [ smaret ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pybtex/default.nix b/nixpkgs/pkgs/development/python-modules/pybtex/default.nix
index 0ce28e574924..2e178163c105 100644
--- a/nixpkgs/pkgs/development/python-modules/pybtex/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pybtex/default.nix
@@ -1,11 +1,23 @@
-{ lib, buildPythonPackage, fetchPypi, latexcodec, pyyaml }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, latexcodec
+, pyyaml
+, setuptools
+}:
 
 buildPythonPackage rec {
   version = "0.24.0";
   pname = "pybtex";
 
   doCheck = false;
-  propagatedBuildInputs = [ latexcodec pyyaml ];
+  pythonImportsCheck = [ "pybtex" ];
+
+  propagatedBuildInputs = [
+    latexcodec
+    pyyaml
+    setuptools
+  ];
 
   src = fetchPypi {
     inherit version pname;
diff --git a/nixpkgs/pkgs/development/python-modules/pycategories/default.nix b/nixpkgs/pkgs/development/python-modules/pycategories/default.nix
index 55f30f9e55a9..ec902e0b385d 100644
--- a/nixpkgs/pkgs/development/python-modules/pycategories/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pycategories/default.nix
@@ -1,11 +1,11 @@
 { buildPythonPackage
 , callPackage
-, pytestcov
+, pytest-cov
 , fetchPypi
 , lib
 , pytest
 , pythonOlder
-, pytestrunner
+, pytest-runner
 }:
 
 buildPythonPackage rec {
@@ -18,13 +18,13 @@ buildPythonPackage rec {
     sha256 = "bd70ecb5e94e7659e564ea153f0c7673291dc37c526c246800fc08d6c5378099";
   };
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
 
   # Is private because the author states it's unmaintained
   # and shouldn't be used in production code
   propagatedBuildInputs = [ (callPackage ./infix.nix { }) ];
 
-  checkInputs = [ pytest pytestcov ];
+  checkInputs = [ pytest pytest-cov ];
 
   meta = with lib; {
     homepage = "https://gitlab.com/danielhones/pycategories";
diff --git a/nixpkgs/pkgs/development/python-modules/pydeconz/default.nix b/nixpkgs/pkgs/development/python-modules/pydeconz/default.nix
index c202e5df19b5..c6029d216d6f 100644
--- a/nixpkgs/pkgs/development/python-modules/pydeconz/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pydeconz/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "pydeconz";
-  version = "79";
+  version = "80";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "Kane610";
     repo = "deconz";
     rev = "v${version}";
-    sha256 = "sha256-I29UIyHjsIymZxcE084hQoyaEMTXIIQPFcB8lsxY+UI=";
+    sha256 = "sha256-om1Nhqu2CU+W2k2PGP1+6jLRJihacSQDayOfTzblZKo=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pydicom/default.nix b/nixpkgs/pkgs/development/python-modules/pydicom/default.nix
index a0924fa7f633..539fb9b929d7 100644
--- a/nixpkgs/pkgs/development/python-modules/pydicom/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pydicom/default.nix
@@ -3,7 +3,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , isPy27
-, pytestrunner
+, pytest-runner
 , pytestCheckHook
 , numpy
 , pillow
@@ -36,7 +36,7 @@ buildPythonPackage {
 
   propagatedBuildInputs = [ numpy pillow ];
 
-  checkInputs = [ pytestrunner pytestCheckHook ];
+  checkInputs = [ pytest-runner pytestCheckHook ];
 
   # Setting $HOME to prevent pytest to try to create a folder inside
   # /homeless-shelter which is read-only.
diff --git a/nixpkgs/pkgs/development/python-modules/pyee/default.nix b/nixpkgs/pkgs/development/python-modules/pyee/default.nix
index 833b83b39136..f4afd49bbc28 100644
--- a/nixpkgs/pkgs/development/python-modules/pyee/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyee/default.nix
@@ -2,7 +2,7 @@
 , fetchPypi
 , lib
 , vcversioner
-, pytestrunner
+, pytest-runner
 , mock
 , pytest
 , pytest-asyncio
@@ -35,7 +35,7 @@ buildPythonPackage rec {
     pytest
     pytest-asyncio
     pytest-trio
-    pytestrunner
+    pytest-runner
     twisted
   ] ++ lib.optional isPy27 [
     attrs
diff --git a/nixpkgs/pkgs/development/python-modules/pyeight/default.nix b/nixpkgs/pkgs/development/python-modules/pyeight/default.nix
index a714bbfaba95..dc390120f600 100644
--- a/nixpkgs/pkgs/development/python-modules/pyeight/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyeight/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "pyeight";
-  version = "0.1.7";
+  version = "0.1.9";
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "mezz64";
     repo = "pyEight";
     rev = version;
-    sha256 = "sha256-kTxd6nRsPvCjrXApjKcoghOISIMho5x9/kK7OvHjKQM=";
+    sha256 = "1ybhs09wyzzaryghd6ijxhajp3677x63c4qzqsgln1mmxhj8wm5k";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyfronius/default.nix b/nixpkgs/pkgs/development/python-modules/pyfronius/default.nix
new file mode 100644
index 000000000000..5b5016649a65
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyfronius/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, aiohttp
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "pyfronius";
+  version = "0.5.3";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "nielstron";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-AtCpraIYNrEkTygtLMivrXfKCKVKIIUCDo3GYFpg8fk=";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "pyfronius" ];
+
+  meta = with lib; {
+    description = "Python module to communicate with Fronius Symo";
+    homepage = "https://github.com/nielstron/pyfronius";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyftdi/default.nix b/nixpkgs/pkgs/development/python-modules/pyftdi/default.nix
index eb7d9a623d4f..aee3ede4fccf 100644
--- a/nixpkgs/pkgs/development/python-modules/pyftdi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyftdi/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "pyftdi";
-  version = "0.53.1";
+  version = "0.53.2";
   disabled = pythonOlder "3.5";
 
   src = fetchFromGitHub {
     owner = "eblot";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-lpNe+8DhyfVuClGcjWIA6pnfh+NwdlBGffjRH62K4uw=";
+    sha256 = "sha256-6cTQlYG/z8ZulMZLggGQ+PhuOOclWM0/+cfy0SF6dls=";
   };
 
   propagatedBuildInputs = [ pyusb pyserial ];
diff --git a/nixpkgs/pkgs/development/python-modules/pygal/default.nix b/nixpkgs/pkgs/development/python-modules/pygal/default.nix
index ec4cff2de615..eb6734649b5d 100644
--- a/nixpkgs/pkgs/development/python-modules/pygal/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pygal/default.nix
@@ -6,7 +6,7 @@
 , flask
 , pyquery
 , pytest
-, pytestrunner
+, pytest-runner
 , cairosvg
 , tinycss
 , cssselect
@@ -38,7 +38,7 @@ buildPythonPackage rec {
 
     # Should be a check input, but upstream lists it under "setup_requires".
     # https://github.com/Kozea/pygal/issues/430
-    pytestrunner
+    pytest-runner
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pygame-gui/default.nix b/nixpkgs/pkgs/development/python-modules/pygame-gui/default.nix
new file mode 100644
index 000000000000..58f65b6d0f41
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pygame-gui/default.nix
@@ -0,0 +1,53 @@
+{ lib
+, pkgs
+, buildPythonPackage
+, fetchFromGitHub
+, pygame
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "pygame-gui";
+  version = "0.5.7";
+
+  src = fetchFromGitHub {
+    owner = "MyreMylar";
+    repo = "pygame_gui";
+    rev = "v_${lib.replaceStrings ["."] [""] version}";
+    sha256 = "4P2PT8/7oA5Q7H4+pm7BOET7w05pQYQltXVV3+YVrVE=";
+  };
+
+  propagatedBuildInputs = [ pygame ];
+
+  postPatch = ''
+    substituteInPlace pygame_gui/core/utility.py \
+      --replace "xsel" "${pkgs.xsel}/bin/xsel"
+  '';
+
+  checkInputs = [ pytestCheckHook ];
+
+  preCheck = ''
+    export HOME=$TMPDIR
+    export SDL_VIDEODRIVER=dummy
+  '';
+
+  disabledTests = [
+    # Clipboard doesn't exist in test environment
+    "test_process_event_text_ctrl_c"
+    "test_process_event_text_ctrl_v"
+    "test_process_event_text_ctrl_v_nothing"
+    "test_process_event_ctrl_v_over_limit"
+    "test_process_event_ctrl_v_at_limit"
+    "test_process_event_ctrl_v_over_limit_select_range"
+    "test_process_event_text_ctrl_v_select_range"
+    "test_process_event_text_ctrl_a"
+    "test_process_event_text_ctrl_x"
+  ];
+
+  meta = with lib; {
+    description = "A GUI system for pygame";
+    homepage = "https://github.com/MyreMylar/pygame_gui";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ angustrau ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pygame/default.nix b/nixpkgs/pkgs/development/python-modules/pygame/default.nix
index 333312d6aa0b..bcdce070c633 100644
--- a/nixpkgs/pkgs/development/python-modules/pygame/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pygame/default.nix
@@ -1,5 +1,6 @@
 { lib, fetchPypi, buildPythonPackage, python, pkg-config, libX11
 , SDL2, SDL2_image, SDL2_mixer, SDL2_ttf, libpng, libjpeg, portmidi, freetype
+, fontconfig
 }:
 
 buildPythonPackage rec {
@@ -20,9 +21,6 @@ buildPythonPackage rec {
     portmidi libX11 freetype
   ];
 
-  # Tests fail because of no audio device and display.
-  doCheck = false;
-
   preConfigure = ''
     sed \
       -e "s/origincdirs = .*/origincdirs = []/" \
@@ -39,9 +37,18 @@ buildPythonPackage rec {
     LOCALBASE=/ ${python.interpreter} buildconfig/config.py
   '';
 
+  checkInputs = [ fontconfig ];
+
+  preCheck = ''
+    # No audio or video device in test environment
+    export SDL_VIDEODRIVER=dummy
+    export SDL_AUDIODRIVER=disk
+    export SDL_DISKAUDIOFILE=/dev/null
+  '';
+
   meta = with lib; {
     description = "Python library for games";
-    homepage = "http://www.pygame.org/";
+    homepage = "https://www.pygame.org/";
     license = licenses.lgpl21Plus;
     platforms = platforms.linux;
   };
diff --git a/nixpkgs/pkgs/development/python-modules/pyhocon/default.nix b/nixpkgs/pkgs/development/python-modules/pyhocon/default.nix
index 487f7ca66f31..f69a21115f27 100644
--- a/nixpkgs/pkgs/development/python-modules/pyhocon/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyhocon/default.nix
@@ -1,38 +1,39 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-# Runtime inputs:
-, pyparsing
-# Check inputs:
-, pytest
 , mock
+, pyparsing
+, pytestCheckHook
+, python-dateutil
 }:
 
 buildPythonPackage rec {
   pname = "pyhocon";
-  version = "0.3.53";
+  version = "0.3.58";
 
   src = fetchFromGitHub {
     owner = "chimpler";
     repo = "pyhocon";
     rev = version;
-    sha256 = "1lr56piiasnq1aiwli8ldw2wc3xjfck8az991mr5rdbqqsrh9vkv";
+    sha256 = "sha256-ddspVDKy9++cISWH6R95r+gJrzNGqMTybI04OgVtIUU=";
   };
 
-  propagatedBuildInputs = [ pyparsing ];
+  propagatedBuildInputs = [
+    pyparsing
+    python-dateutil
+  ];
 
-  checkInputs = [ pytest mock ];
+  checkInputs = [
+    mock
+    pytestCheckHook
+  ];
 
-  # Tests fail because necessary data files aren't packaged for PyPi yet.
-  # See https://github.com/chimpler/pyhocon/pull/203
-  doCheck = false;
+  pythonImportsCheck = [ "pyhocon" ];
 
   meta = with lib; {
     homepage = "https://github.com/chimpler/pyhocon/";
     description = "HOCON parser for Python";
-    # Long description copied from
-    # https://github.com/chimpler/pyhocon/blob/55a9ea3ebeeac5764bdebebfbeacbf099f64db26/setup.py
-    # (the tip of master as of 2019-03-24).
+    # taken from https://pypi.org/project/pyhocon/
     longDescription = ''
       A HOCON parser for Python. It additionally provides a tool
       (pyhocon) to convert any HOCON content into json, yaml and properties
diff --git a/nixpkgs/pkgs/development/python-modules/pylint/1.9.nix b/nixpkgs/pkgs/development/python-modules/pylint/1.9.nix
index 64573a1a5282..5dbb3d6750f8 100644
--- a/nixpkgs/pkgs/development/python-modules/pylint/1.9.nix
+++ b/nixpkgs/pkgs/development/python-modules/pylint/1.9.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, buildPythonPackage, fetchPypi, astroid, six, isort,
   mccabe, configparser, backports_functools_lru_cache, singledispatch,
-  pytest, pytestrunner, setuptools }:
+  pytest, pytest-runner, setuptools }:
 
 buildPythonPackage rec {
   pname = "pylint";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
     sha256 = "004kfapkqxqy2s85pmddqv0fabxdxywxrlbi549p0v237pr2v94p";
   };
 
-  checkInputs = [ pytest pytestrunner ];
+  checkInputs = [ pytest pytest-runner ];
 
   propagatedBuildInputs = [ astroid six isort mccabe configparser backports_functools_lru_cache singledispatch setuptools ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pyls-flake8/default.nix b/nixpkgs/pkgs/development/python-modules/pyls-flake8/default.nix
new file mode 100644
index 000000000000..495c54d58593
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyls-flake8/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, flake8
+, python-lsp-server
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "pyls-flake8";
+  version = "0.4.0";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "emanspeaks";
+    repo = "pyls-flake8";
+    rev = "3df8606ad821100e64743f457c77c20170bde722";
+    sha256 = "14wkmwh8mqr826vdzxhvhdwrnx2akzmnbv3ar391qs4imwqfjx3l";
+  };
+
+  propagatedBuildInputs = [ flake8 python-lsp-server ];
+
+  meta = with lib; {
+    homepage = "https://github.com/emanspeaks/pyls-flake8";
+    description = "A Flake8 plugin for the Python LSP Server.";
+    license = licenses.mit;
+    maintainers = with maintainers; [ cpcloud ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyls-isort/default.nix b/nixpkgs/pkgs/development/python-modules/pyls-isort/default.nix
index 35b43969e529..a11acce3c8ba 100644
--- a/nixpkgs/pkgs/development/python-modules/pyls-isort/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyls-isort/default.nix
@@ -1,29 +1,29 @@
 { lib, buildPythonPackage, fetchFromGitHub
-, python-language-server, isort
+, python-lsp-server, isort
 }:
 
 buildPythonPackage rec {
   pname = "pyls-isort";
-  version = "0.1.1";
+  version = "0.2.2";
 
   src = fetchFromGitHub {
     owner = "paradoxxxzero";
     repo = "pyls-isort";
-    rev = version;
-    sha256 = "0mf8c6dw5lsj9np20p0vrhr1yfycq2awjk2pil28l579xj9nr0dc";
+    rev = "v${version}";
+    sha256 = "0xba0aiyjfdi9swjzxk26l94dwlwvn17kkfjfscxl8gvspzsn057";
   };
 
   # no tests
   doCheck = false;
 
   propagatedBuildInputs = [
-    isort python-language-server
+    isort python-lsp-server
   ];
 
   meta = with lib; {
     homepage = "https://github.com/paradoxxxzero/pyls-isort";
-    description = "Isort plugin for python-language-server";
+    description = "Isort plugin for python-lsp-server";
     license = licenses.mit;
-    maintainers = [ ];
+    maintainers = with maintainers; [ cpcloud ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pyls-mypy/default.nix b/nixpkgs/pkgs/development/python-modules/pyls-mypy/default.nix
index f919ac21cb7b..acce4469eed4 100644
--- a/nixpkgs/pkgs/development/python-modules/pyls-mypy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyls-mypy/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchFromGitHub, isPy27
 , future, python-language-server, mypy, configparser
-, pytestCheckHook, mock, pytestcov, coverage
+, pytestCheckHook, mock, pytest-cov, coverage
 , fetchpatch
 }:
 
@@ -34,7 +34,7 @@ buildPythonPackage rec {
     })
   ];
 
-  checkInputs = [ mock pytestcov coverage pytestCheckHook ];
+  checkInputs = [ mock pytest-cov coverage pytestCheckHook ];
 
   propagatedBuildInputs = [
     mypy python-language-server configparser
diff --git a/nixpkgs/pkgs/development/python-modules/pylsp-mypy/default.nix b/nixpkgs/pkgs/development/python-modules/pylsp-mypy/default.nix
new file mode 100644
index 000000000000..a7d13bb32a2f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pylsp-mypy/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, mock
+, mypy
+, pytestCheckHook
+, python-lsp-server
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "pylsp-mypy";
+  version = "0.5.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "Richardk2n";
+    repo = "pylsp-mypy";
+    rev = version;
+    sha256 = "1d119csj1k5m9j0f7wdvpvnd02h548css6ybxqah92nk2v0rjscr";
+  };
+
+  checkInputs = [ pytestCheckHook mock ];
+
+  propagatedBuildInputs = [ mypy python-lsp-server ];
+
+  meta = with lib; {
+    homepage = "https://github.com/Richardk2n/pylsp-mypy";
+    description = "Mypy plugin for the Python LSP Server";
+    license = licenses.mit;
+    maintainers = with maintainers; [ cpcloud ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pylti/default.nix b/nixpkgs/pkgs/development/python-modules/pylti/default.nix
index a6778a4aa7e8..80fa5bff3200 100644
--- a/nixpkgs/pkgs/development/python-modules/pylti/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pylti/default.nix
@@ -11,7 +11,7 @@
 , pyflakes
 , pytest
 , pytestcache
-, pytestcov
+, pytest-cov
 , covCore
 , pytest-flakes
 , sphinx
@@ -33,7 +33,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ httplib2 oauth oauth2 semantic-version ];
   checkInputs = [
-    flask httpretty oauthlib pyflakes pytest pytestcache pytestcov covCore
+    flask httpretty oauthlib pyflakes pytest pytestcache pytest-cov covCore
     pytest-flakes sphinx mock chalice
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pylutron/default.nix b/nixpkgs/pkgs/development/python-modules/pylutron/default.nix
index b9ed3cc20e26..4f1180ebee4a 100644
--- a/nixpkgs/pkgs/development/python-modules/pylutron/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pylutron/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "pylutron";
-  version = "0.2.7";
+  version = "0.2.8";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-wwVTDpoRT/TIJhoRap0T01a8gmYt+vfKc+ATRs6phB4=";
+    sha256 = "sha256-Jg2waoIxvBvX+hoAgt/yoM87XdShCHQOZXbsHG3b4cw=";
   };
 
   # Project has no tests
diff --git a/nixpkgs/pkgs/development/python-modules/pymatgen-lammps/default.nix b/nixpkgs/pkgs/development/python-modules/pymatgen-lammps/default.nix
index 72f362f85c45..87d46a35fa84 100644
--- a/nixpkgs/pkgs/development/python-modules/pymatgen-lammps/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymatgen-lammps/default.nix
@@ -2,7 +2,7 @@
 , fetchurl
 , buildPythonPackage
 , pymatgen
-, pytestrunner
+, pytest-runner
 , pytestCheckHook
 , isPy3k
 }:
@@ -17,7 +17,7 @@ buildPythonPackage rec {
      sha256 = "0shldl8is3195jmji7dr3zsh1bzxlahaqrmpr28niks7nnfj80fx";
   };
 
-  buildInputs = [ pytestrunner ];
+  buildInputs = [ pytest-runner ];
   checkInputs = [ pytestCheckHook ];
   propagatedBuildInputs = [ pymatgen ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pymunk/default.nix b/nixpkgs/pkgs/development/python-modules/pymunk/default.nix
new file mode 100644
index 000000000000..92918efa8ed8
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pymunk/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, python
+, cffi
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "pymunk";
+  version = "6.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    extension = "zip";
+    sha256 = "04jqqd2y0wzzkqppbl08vyzgbcpl5qj946w8da2ilypqdx7j2akp";
+  };
+
+  propagatedBuildInputs = [ cffi ];
+
+  preBuild = ''
+    ${python.interpreter} setup.py build_ext --inplace
+  '';
+
+  checkInputs = [ pytestCheckHook ];
+  pytestFlagsArray = [
+    "pymunk/tests"
+  ];
+
+  meta = with lib; {
+    description = "2d physics library";
+    homepage = "https://www.pymunk.org";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ angustrau ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pynacl/default.nix b/nixpkgs/pkgs/development/python-modules/pynacl/default.nix
index ebd6aeb0fee3..f8696dd54ac0 100644
--- a/nixpkgs/pkgs/development/python-modules/pynacl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pynacl/default.nix
@@ -37,7 +37,6 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "nacl" ];
 
   meta = with lib; {
-    maintainers = with maintainers; [ va1entin ];
     description = "Python binding to the Networking and Cryptography (NaCl) library";
     homepage = "https://github.com/pyca/pynacl/";
     license = licenses.asl20;
diff --git a/nixpkgs/pkgs/development/python-modules/pync/default.nix b/nixpkgs/pkgs/development/python-modules/pync/default.nix
index 0eb13c732d7e..f01bfa33186c 100644
--- a/nixpkgs/pkgs/development/python-modules/pync/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pync/default.nix
@@ -1,22 +1,23 @@
 { lib, stdenv
 , buildPythonPackage
 , fetchPypi
-, isPy27
 , python-dateutil
 , pkgs
+, coreutils
+, which
 }:
 
 buildPythonPackage rec {
   version  = "2.0.3";
   pname = "pync";
-  disabled = ! isPy27;
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "38b9e61735a3161f9211a5773c5f5ea698f36af4ff7f77fa03e8d1ff0caa117f";
   };
 
-  buildInputs = [ pkgs.coreutils ];
+  nativeBuildInputs = [ coreutils ];
+  checkInputs = [ which ];
   propagatedBuildInputs = [ python-dateutil ];
 
   preInstall = lib.optionalString stdenv.isDarwin ''
@@ -25,7 +26,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python Wrapper for Mac OS 10.8 Notification Center";
-    homepage    = "https://pypi.python.org/pypi/pync/1.4";
+    homepage    = "https://pypi.python.org/pypi/pync";
     license     = licenses.mit;
     platforms   = platforms.darwin;
     maintainers = with maintainers; [ lovek323 ];
diff --git a/nixpkgs/pkgs/development/python-modules/pynvim/default.nix b/nixpkgs/pkgs/development/python-modules/pynvim/default.nix
index 244b366081c0..67079a8c1d26 100644
--- a/nixpkgs/pkgs/development/python-modules/pynvim/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pynvim/default.nix
@@ -6,7 +6,7 @@
 , greenlet
 , pythonOlder
 , isPyPy
-, pytestrunner
+, pytest-runner
 }:
 
 buildPythonPackage rec {
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    pytestrunner
+    pytest-runner
   ];
 
   # Tests require pkgs.neovim,
diff --git a/nixpkgs/pkgs/development/python-modules/pyosf/default.nix b/nixpkgs/pkgs/development/python-modules/pyosf/default.nix
index c25b1b114355..07c657bf226e 100644
--- a/nixpkgs/pkgs/development/python-modules/pyosf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyosf/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , isPy27
-, pytestrunner
+, pytest-runner
 , requests
 }:
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   };
 
   preBuild = "export HOME=$TMP";
-  buildInputs = [ pytestrunner ];  # required via `setup_requires`
+  buildInputs = [ pytest-runner ];  # required via `setup_requires`
   propagatedBuildInputs = [ requests ];
 
   doCheck = false;  # requires network access
diff --git a/nixpkgs/pkgs/development/python-modules/pypandoc/default.nix b/nixpkgs/pkgs/development/python-modules/pypandoc/default.nix
index b5acf6c05438..3d3af7f4669b 100644
--- a/nixpkgs/pkgs/development/python-modules/pypandoc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pypandoc/default.nix
@@ -4,22 +4,22 @@
 
 buildPythonPackage rec {
   pname = "pypandoc";
-  version = "1.5";
+  version = "1.6.3";
 
   src = fetchFromGitHub {
-    owner = "bebraw";
+    owner = "NicklasTegner";
     repo = pname;
     rev = version;
-    sha256 = "1lpslfns6zxx7b0xr13bzg921lwrj5am8za0b2dviywk6iiib0ld";
+    sha256 = "163wkcm06klr68dadr9mb8gblj0ls26w097bjrg4f5j0533ysdpp";
   };
 
   patches = [
     (substituteAll {
       src = ./static-pandoc-path.patch;
       pandoc = "${lib.getBin pandoc}/bin/pandoc";
+      pandocVersion = pandoc.version;
     })
     ./skip-tests.patch
-    ./new-pandoc-headings.patch
   ];
 
   checkInputs = [
@@ -28,7 +28,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Thin wrapper for pandoc";
-    homepage = "https://github.com/bebraw/pypandoc";
+    homepage = "https://github.com/NicklasTegner/pypandoc";
     license = licenses.mit;
     maintainers = with maintainers; [ sternenseemann bennofs ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/pypandoc/new-pandoc-headings.patch b/nixpkgs/pkgs/development/python-modules/pypandoc/new-pandoc-headings.patch
deleted file mode 100644
index 6716bf57d1bb..000000000000
--- a/nixpkgs/pkgs/development/python-modules/pypandoc/new-pandoc-headings.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/tests.py b/tests.py
-index aede281..c400888 100755
---- a/tests.py
-+++ b/tests.py
-@@ -295,7 +295,7 @@ class TestPypandoc(unittest.TestCase):
- 
-     def test_unicode_input(self):
-         # make sure that pandoc always returns unicode and does not mishandle it
--        expected = u'üäöîôû{0}======{0}{0}'.format(os.linesep)
-+        expected = u'# üäöîôû'.format(os.linesep)
-         written = pypandoc.convert_text(u'<h1>üäöîôû</h1>', 'md', format='html')
-         self.assertTrue(isinstance(written, unicode_type))
-         self.assertEqualExceptForNewlineEnd(expected, written)
-@@ -305,7 +305,7 @@ class TestPypandoc(unittest.TestCase):
-         self.assertTrue(isinstance(written, unicode_type))
- 
-         # Only use german umlauts in th next test, as iso-8859-15 covers that
--        expected = u'üäö€{0}===={0}{0}'.format(os.linesep)
-+        expected = u'# üäö€'.format(os.linesep)
-         bytes = u'<h1>üäö€</h1>'.encode("iso-8859-15")
- 
-         # Without encoding, this fails as we expect utf-8 per default
diff --git a/nixpkgs/pkgs/development/python-modules/pypandoc/skip-tests.patch b/nixpkgs/pkgs/development/python-modules/pypandoc/skip-tests.patch
index d8f7f9721777..201c5105c53b 100644
--- a/nixpkgs/pkgs/development/python-modules/pypandoc/skip-tests.patch
+++ b/nixpkgs/pkgs/development/python-modules/pypandoc/skip-tests.patch
@@ -10,11 +10,3 @@ index deb50e0..aede281 100755
      def test_basic_conversion_from_http_url(self):
          url = 'https://raw.githubusercontent.com/bebraw/pypandoc/master/README.md'
          received = pypandoc.convert_file(url, 'html')
-@@ -247,6 +248,7 @@ class TestPypandoc(unittest.TestCase):
- 
-         self.assertRaises(RuntimeError, f)
- 
-+    @unittest.skip("pandoc-citeproc has been deprecated")
-     def test_conversion_with_citeproc_filter(self):
-         # we just want to get a temp file name, where we can write to
-         filters = ['pandoc-citeproc']
diff --git a/nixpkgs/pkgs/development/python-modules/pypandoc/static-pandoc-path.patch b/nixpkgs/pkgs/development/python-modules/pypandoc/static-pandoc-path.patch
index bb495e78bea6..8f992185d610 100644
--- a/nixpkgs/pkgs/development/python-modules/pypandoc/static-pandoc-path.patch
+++ b/nixpkgs/pkgs/development/python-modules/pypandoc/static-pandoc-path.patch
@@ -5,6 +5,7 @@ index 6d5b79b..65437aa 100644
 @@ -582,4 +582,4 @@ def clean_pandocpath_cache():
  
  
- __version = None
+-__version = None
++__version = "@pandocVersion@"
 -__pandoc_path = None
 +__pandoc_path = "@pandoc@"
diff --git a/nixpkgs/pkgs/development/python-modules/pypck/default.nix b/nixpkgs/pkgs/development/python-modules/pypck/default.nix
index 3d39b3516b69..b0ea3fdcb24a 100644
--- a/nixpkgs/pkgs/development/python-modules/pypck/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pypck/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "pypck";
-  version = "0.7.9";
+  version = "0.7.10";
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "alengwenus";
     repo = pname;
     rev = version;
-    sha256 = "0clpi6bplzw7qg2m0hgwqr71zwxrh901gwprhd1yjykn30njp5bw";
+    sha256 = "sha256-B2imewEONewj1Y+Q316reIBZB/b9WQAu67x9cLMkRTU=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyqtgraph/default.nix b/nixpkgs/pkgs/development/python-modules/pyqtgraph/default.nix
index fd2b9d461859..54a136d5dcd4 100644
--- a/nixpkgs/pkgs/development/python-modules/pyqtgraph/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyqtgraph/default.nix
@@ -1,26 +1,57 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
+, scipy
 , numpy
-, pyopengl
 , pyqt5
-, scipy
+, pyopengl
+, qt5
+, python
+, pytestCheckHook
+, freefont_ttf
+, makeFontsConf
+, fetchpatch
 }:
 
+let
+  fontsConf = makeFontsConf {
+    fontDirectories = [ freefont_ttf ];
+  };
+in
 buildPythonPackage rec {
   pname = "pyqtgraph";
-  version = "0.12.1";
+  version = "0.12.2";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "d2ef3b5289184fb48dfe5f44ccb58d9d64ffb5452fc524a2bd7a640a36b3874d";
+  src = fetchFromGitHub {
+    owner = "pyqtgraph";
+    repo = "pyqtgraph";
+    rev = "pyqtgraph-${version}";
+    sha256 = "093kkxwj75nb508vz7px4x7lxrwpaff10pl15m4h74hjwyvbsg3d";
   };
 
-  propagatedBuildInputs = [ numpy pyopengl pyqt5 scipy ];
+  # TODO: remove when updating to 0.12.3
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/pyqtgraph/pyqtgraph/commit/2de5cd78da92b48e48255be2f41ae332cf8bb675.patch";
+      sha256 = "1hy86psqyl6ipvbg23zvackkd6f7ajs6qll0mbs0x2zmrj92hk00";
+    })
+  ];
+
+  propagatedBuildInputs = [
+    numpy
+    pyqt5
+    scipy
+    pyopengl
+  ];
 
-  doCheck = false;  # tries to create windows (QApps) on collection, which fails (probably due to no display)
+  checkInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [ "pyqtgraph" ];
+  preCheck = ''
+    export QT_PLUGIN_PATH="${qt5.qtbase.bin}/${qt5.qtbase.qtPluginPrefix}"
+    export QT_QPA_PLATFORM=offscreen
+    export DYLD_FRAMEWORK_PATH=/System/Library/Frameworks
+    export FONTCONFIG_FILE=${fontsConf}
+  '';
 
   meta = with lib; {
     description = "Scientific Graphics and GUI Library for Python";
diff --git a/nixpkgs/pkgs/development/python-modules/pysma/default.nix b/nixpkgs/pkgs/development/python-modules/pysma/default.nix
index 8a6452fb6682..15d40bce9fa8 100644
--- a/nixpkgs/pkgs/development/python-modules/pysma/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysma/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "pysma";
-  version = "0.6.0";
+  version = "0.6.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "8e997cf28c3ae7ccc90caa84aa3a3ed9245fac3e9cf76efb1467e4f4800143dc";
+    sha256 = "sha256-nKnOWVPRFmylwUeb0yApMHdW8vGvPCLlOGkZGNYC128=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pysrim/default.nix b/nixpkgs/pkgs/development/python-modules/pysrim/default.nix
index b8570427d303..4f295dfc7c27 100644
--- a/nixpkgs/pkgs/development/python-modules/pysrim/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysrim/default.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchPypi
 , buildPythonPackage
-, pytestrunner
+, pytest-runner
 , numpy
 , pyyaml
 }:
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "ada088f73f7e1a3bf085206e81e0f83ed89c1d0b23a789ecd0ba0a250724aee8";
   };
 
-  buildInputs = [ pytestrunner ];
+  buildInputs = [ pytest-runner ];
   propagatedBuildInputs = [ numpy pyyaml ];
 
   # Tests require git lfs download of repository
diff --git a/nixpkgs/pkgs/development/python-modules/pyswitchbot/default.nix b/nixpkgs/pkgs/development/python-modules/pyswitchbot/default.nix
index 69bf01141824..e850349b7a56 100644
--- a/nixpkgs/pkgs/development/python-modules/pyswitchbot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyswitchbot/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "pyswitchbot";
-  version = "0.9.1";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = "Danielhiversen";
     repo = "pySwitchbot";
     rev = version;
-    sha256 = "16p11fmyms4q93m3rna76nkp2la9m8lmfmaflbvga666vljwfw6v";
+    sha256 = "sha256-YqXR6zL8rM2p6YqK8BX82F9HZHgfpfEU4qBiVSud0hw=";
   };
 
   propagatedBuildInputs = [ bluepy ];
diff --git a/nixpkgs/pkgs/development/python-modules/pytenable/default.nix b/nixpkgs/pkgs/development/python-modules/pytenable/default.nix
index 5b0dfb29be2b..b547d030cedd 100644
--- a/nixpkgs/pkgs/development/python-modules/pytenable/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytenable/default.nix
@@ -1,4 +1,5 @@
 { lib
+, appdirs
 , buildPythonPackage
 , defusedxml
 , fetchFromGitHub
@@ -17,13 +18,13 @@
 
 buildPythonPackage rec {
   pname = "pytenable";
-  version = "1.3.1";
+  version = "1.3.2";
 
   src = fetchFromGitHub {
     owner = "tenable";
     repo = "pyTenable";
     rev = version;
-    sha256 = "sha256-9qkNQ3+yDplPHIXDwlghpJP1f+UoDYObWpPhl6UVtHU=";
+    sha256 = "sha256-S39rl8bJsxYAmTcaZk9+s9G45lOvREjlGVBk1m30tJo=";
   };
 
   propagatedBuildInputs = [
@@ -31,6 +32,7 @@ buildPythonPackage rec {
   ];
 
   buildInputs = [
+    appdirs
     defusedxml
     marshmallow
     python-box
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-astropy-header/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-astropy-header/default.nix
index 963e621986cf..acc555035822 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-astropy-header/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-astropy-header/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , fetchpatch
 , pytest
-, pytestcov
+, pytest-cov
 , pytestCheckHook
 , numpy
 , astropy
@@ -37,7 +37,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytestCheckHook
-    pytestcov
+    pytest-cov
     numpy
     scipy
     h5py
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-astropy/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-astropy/default.nix
index 3df836ee562b..981860c7a643 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-astropy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-astropy/default.nix
@@ -38,7 +38,7 @@ buildPythonPackage rec {
   ];
 
   # pytest-astropy is a meta package and has no tests
-  checkPhase = ":";
+  doCheck = false;
 
   meta = with lib; {
     description = "Meta-package containing dependencies for testing";
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix
index 9bee3808c5a7..592a13506936 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "pytest-cases";
-  version = "3.6.2";
+  version = "3.6.3";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1hipm73s97dx37la57aif1x7myidirfslr1k6apvwyc2929y2lsk";
+    sha256 = "sha256-ExNiaSQGFbx5BB+K+PyW4OPghdpy3SKxhiVFH9okQ7g=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-django/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-django/default.nix
index 0253ed5a5138..47cc882f548e 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-django/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-django/default.nix
@@ -5,7 +5,7 @@
 , django
 , setuptools-scm
 , django-configurations
-, pytest_xdist
+, pytest-xdist
 , six
 }:
 buildPythonPackage rec {
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [ pytest setuptools-scm ];
-  checkInputs = [ pytest django-configurations pytest_xdist six ];
+  checkInputs = [ pytest django-configurations pytest-xdist six ];
   propagatedBuildInputs = [ django ];
 
   # Complicated. Requires Django setup.
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-factoryboy/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-factoryboy/default.nix
index 39d6bc127e6b..eea6c61a7274 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-factoryboy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-factoryboy/default.nix
@@ -7,7 +7,7 @@
 , pytest
 , pytestcache
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 }:
 
 buildPythonPackage rec {
@@ -32,7 +32,7 @@ buildPythonPackage rec {
     mock
     pytestCheckHook
     pytestcache
-    pytestcov
+    pytest-cov
   ];
 
   pytestFlagsArray = [ "--ignore=docs" ];
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-filter-subpackage/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-filter-subpackage/default.nix
index 148b2c7185fb..df152eaa5eca 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-filter-subpackage/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-filter-subpackage/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , pytest
-, pytestcov
+, pytest-cov
 , pytest-doctestplus
 , pytestCheckHook
 , setuptools-scm
@@ -25,7 +25,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     pytest-doctestplus
-    pytestcov
+    pytest-cov
     pytestCheckHook
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-httpserver/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-httpserver/default.nix
index f790629a29cf..aaca4174a2f2 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-httpserver/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-httpserver/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "pytest-httpserver";
-  version = "0.3.7";
+  version = "1.0.0";
 
   src = fetchPypi {
     pname = "pytest_httpserver";
     inherit version;
-    sha256 = "sha256-YgTcrUlwh2jz0tJdMUgjm8RcqrtpJ/oUQm3SnxUc5Z4=";
+    sha256 = "sha256-rjCV0TTUBgLpVyEUDiIhOdpKV5lWEjmQr4WCUyTQdG0=";
   };
 
   propagatedBuildInputs = [ werkzeug ];
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-pylint/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-pylint/default.nix
index 16a1fb92dd6f..e03e0fbe626c 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-pylint/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-pylint/default.nix
@@ -5,7 +5,7 @@
 , pytest
 , pylint
 , six
-, pytestrunner
+, pytest-runner
 , toml
 }:
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     sha256 = "790c7a8019fab08e59bd3812db1657a01995a975af8b1c6ce95b9aa39d61da27";
   };
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
 
   buildInputs = [ pytest ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-randomly/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-randomly/default.nix
index f8e240ca57e4..0020a4bf433f 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-randomly/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-randomly/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchFromGitHub, pythonOlder
 , factory_boy, faker, numpy, backports-entry-points-selectable
-, pytestCheckHook, pytest_xdist
+, pytestCheckHook, pytest-xdist
 }:
 
 buildPythonPackage rec {
@@ -23,7 +23,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytestCheckHook
-    pytest_xdist
+    pytest-xdist
     numpy
     factory_boy
     faker
diff --git a/nixpkgs/pkgs/development/python-modules/pytestrunner/2.nix b/nixpkgs/pkgs/development/python-modules/pytest-runner/2.nix
index bea83146c37d..bea83146c37d 100644
--- a/nixpkgs/pkgs/development/python-modules/pytestrunner/2.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-runner/2.nix
diff --git a/nixpkgs/pkgs/development/python-modules/pytestrunner/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-runner/default.nix
index d99f72299dd7..d99f72299dd7 100644
--- a/nixpkgs/pkgs/development/python-modules/pytestrunner/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-runner/default.nix
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-shutil/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-shutil/default.nix
index 0483063c53bc..e43a837d6aa4 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-shutil/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-shutil/default.nix
@@ -1,5 +1,5 @@
 { lib, isPyPy, buildPythonPackage, fetchPypi
-, pytest, cmdline, pytestcov, coverage, setuptools-git, mock, pathpy, execnet
+, pytest, cmdline, pytest-cov, coverage, setuptools-git, mock, pathpy, execnet
 , contextlib2, termcolor }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
 
   buildInputs = [ pytest ];
   checkInputs = [ cmdline pytest ];
-  propagatedBuildInputs = [ pytestcov coverage setuptools-git mock pathpy execnet contextlib2 termcolor ];
+  propagatedBuildInputs = [ pytest-cov coverage setuptools-git mock pathpy execnet contextlib2 termcolor ];
 
   checkPhase = ''
     py.test ${lib.optionalString isPyPy "-k'not (test_run or test_run_integration)'"}
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-timeout/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-timeout/default.nix
index 8c59b6ee2c9c..40f67eb0b0ba 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-timeout/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-timeout/default.nix
@@ -4,7 +4,7 @@
 , pytest
 , pytestCheckHook
 , pexpect
-, pytestcov
+, pytest-cov
 }:
 
 buildPythonPackage rec {
@@ -18,7 +18,7 @@ buildPythonPackage rec {
 
   buildInputs = [ pytest ];
 
-  checkInputs = [ pytestCheckHook pexpect pytestcov ];
+  checkInputs = [ pytestCheckHook pexpect pytest-cov ];
 
   disabledTests = [
     "test_suppresses_timeout_when_pdb_is_entered"
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-virtualenv/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-virtualenv/default.nix
index 8ea981ba2e7a..c4a66cc48e5d 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-virtualenv/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-virtualenv/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, pytest, pytestcov, mock, cmdline, pytest-fixture-config, pytest-shutil, virtualenv }:
+, pytest, pytest-cov, mock, cmdline, pytest-fixture-config, pytest-shutil, virtualenv }:
 
 buildPythonPackage rec {
   pname = "pytest-virtualenv";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     sha256 = "03w2zz3crblj1p6i8nq17946hbn3zqp9z7cfnifw47hi4a4fww12";
   };
 
-  checkInputs = [ pytest pytestcov mock cmdline ];
+  checkInputs = [ pytest pytest-cov mock cmdline ];
   propagatedBuildInputs = [ pytest-fixture-config pytest-shutil virtualenv ];
   checkPhase = "py.test tests/unit ";
 
diff --git a/nixpkgs/pkgs/development/python-modules/python-crfsuite/default.nix b/nixpkgs/pkgs/development/python-modules/python-crfsuite/default.nix
new file mode 100644
index 000000000000..cd2adc48c6fa
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/python-crfsuite/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "python-crfsuite";
+  version = "0.9.7";
+  format = "setuptools";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1ryfcdfpqbrf8rcd2rlay2gfiba3px3q508543jf81shrv93hi9v";
+  };
+
+  preCheck = ''
+    # make sure import the built version, not the source one
+    rm -r pycrfsuite
+  '';
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "pycrfsuite"
+  ];
+
+  meta = with lib; {
+    description = "Python binding for CRFsuite";
+    homepage = "https://github.com/scrapinghub/python-crfsuite";
+    license = licenses.mit;
+    maintainers = teams.tts.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/python-hosts/default.nix b/nixpkgs/pkgs/development/python-modules/python-hosts/default.nix
index c8f1179bc66b..861addf81eef 100644
--- a/nixpkgs/pkgs/development/python-modules/python-hosts/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-hosts/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, pyyaml, pytest, pytestcov }:
+{ lib, buildPythonPackage, fetchPypi, pyyaml, pytest, pytest-cov }:
 
 buildPythonPackage rec {
   pname = "python-hosts";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     substituteInPlace python_hosts/utils.py --replace "import win_inet_pton" ""
   '';
 
-  checkInputs = [ pyyaml pytest pytestcov ];
+  checkInputs = [ pyyaml pytest pytest-cov ];
 
   # Removing 1 test file (it requires internet connection) and keeping the other two
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/python-jsonrpc-server/default.nix b/nixpkgs/pkgs/development/python-modules/python-jsonrpc-server/default.nix
index e641a943f865..a6d0bf800ea6 100644
--- a/nixpkgs/pkgs/development/python-modules/python-jsonrpc-server/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-jsonrpc-server/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchFromGitHub, pythonOlder
-, pytestCheckHook, mock, pytestcov, coverage
+, pytestCheckHook, mock, pytest-cov, coverage
 , future, futures ? null, ujson, isPy38
 }:
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   '';
 
   checkInputs = [
-    pytestCheckHook mock pytestcov coverage
+    pytestCheckHook mock pytest-cov coverage
   ];
 
   propagatedBuildInputs = [ future ujson ]
diff --git a/nixpkgs/pkgs/development/python-modules/python-language-server/default.nix b/nixpkgs/pkgs/development/python-modules/python-language-server/default.nix
index 3ed9b75ef91f..f022eba58571 100644
--- a/nixpkgs/pkgs/development/python-modules/python-language-server/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-language-server/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchFromGitHub, pythonAtLeast, pythonOlder, isPy27
 , backports_functools_lru_cache ? null, configparser ? null, futures ? null, future, jedi, pluggy, python-jsonrpc-server, flake8
-, pytestCheckHook, mock, pytestcov, coverage, setuptools, ujson, flaky
+, pytestCheckHook, mock, pytest-cov, coverage, setuptools, ujson, flaky
 , # Allow building a limited set of providers, e.g. ["pycodestyle"].
   providers ? ["*"]
   # The following packages are optional and
@@ -55,7 +55,7 @@ buildPythonPackage rec {
   doCheck = providers == ["*"];
 
   checkInputs = [
-    pytestCheckHook mock pytestcov coverage flaky
+    pytestCheckHook mock pytest-cov coverage flaky
     # Do not propagate flake8 or it will enable pyflakes implicitly
     flake8
     # rope is technically a dependency, but we don't add it by default since we
diff --git a/nixpkgs/pkgs/development/python-modules/python-lsp-black/default.nix b/nixpkgs/pkgs/development/python-modules/python-lsp-black/default.nix
new file mode 100644
index 000000000000..3c18d291e37f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/python-lsp-black/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, black
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, python-lsp-server
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "python-lsp-black";
+  version = "1.0.0";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "python-lsp";
+    repo = "python-lsp-black";
+    rev = "v${version}";
+    sha256 = "1blxhj70jxb9xfbd4dxqikd262n6dn9dw5qhyml5yvdwxbv0bybc";
+  };
+
+  checkInputs = [ pytestCheckHook ];
+
+  propagatedBuildInputs = [ black python-lsp-server ];
+
+  meta = with lib; {
+    homepage = "https://github.com/python-lsp/python-lsp-black";
+    description = "Black plugin for the Python LSP Server";
+    license = licenses.mit;
+    maintainers = with maintainers; [ cpcloud ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/python-lsp-server/default.nix b/nixpkgs/pkgs/development/python-modules/python-lsp-server/default.nix
index 6a2c396ecf89..90ab506d651f 100644
--- a/nixpkgs/pkgs/development/python-modules/python-lsp-server/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-lsp-server/default.nix
@@ -19,6 +19,7 @@
 , python-lsp-jsonrpc
 , pythonOlder
 , rope
+, setuptools
 , ujson
 , yapf
 }:
@@ -47,6 +48,7 @@ buildPythonPackage rec {
     pylint
     python-lsp-jsonrpc
     rope
+    setuptools
     ujson
     yapf
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/python-lz4/default.nix b/nixpkgs/pkgs/development/python-modules/python-lz4/default.nix
index 95208c7b94b6..180264f102d0 100644
--- a/nixpkgs/pkgs/development/python-modules/python-lz4/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-lz4/default.nix
@@ -6,8 +6,8 @@
 , pkgconfig
 , psutil
 , pytest
-, pytestcov
-, pytestrunner
+, pytest-cov
+, pytest-runner
 , setuptools-scm
 }:
 
@@ -23,8 +23,8 @@ buildPythonPackage rec {
     sha256 = "009c4rbyj4cjb8fznccfpr5wrzdmi56wq990yjh22n0z2qqylmkf";
   };
 
-  nativeBuildInputs = [ setuptools-scm pkgconfig pytestrunner ];
-  checkInputs = [ pytest pytestcov psutil ];
+  nativeBuildInputs = [ setuptools-scm pkgconfig pytest-runner ];
+  checkInputs = [ pytest pytest-cov psutil ];
   propagatedBuildInputs = lib.optionals (!isPy3k) [ future ];
 
   # give a hint to setuptools-scm on package version
diff --git a/nixpkgs/pkgs/development/python-modules/python-multipart/default.nix b/nixpkgs/pkgs/development/python-modules/python-multipart/default.nix
index c27923424872..ccac3e8b3cb2 100644
--- a/nixpkgs/pkgs/development/python-modules/python-multipart/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-multipart/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , pytest
-, pytestcov
+, pytest-cov
 , mock
 , pyyaml
 , six
@@ -19,7 +19,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytestcov
+    pytest-cov
     mock
     pyyaml
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/python-nvd3/default.nix b/nixpkgs/pkgs/development/python-modules/python-nvd3/default.nix
new file mode 100644
index 000000000000..d4ecba5a4d95
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/python-nvd3/default.nix
@@ -0,0 +1,27 @@
+{ lib, buildPythonPackage, fetchFromGitHub, python-slugify, jinja2, setuptools, coverage }:
+
+buildPythonPackage rec {
+  pname = "python-nvd3";
+  version = "0.15.0";
+
+  src = fetchFromGitHub {
+    owner = "areski";
+    repo = "python-nvd3";
+    rev = "dc8e772597ed72f413b229856fc9a3318e57fcfc";
+    sha256 = "1vjnicszcc9j0rgb58104fk9sry5xad1xli64jana9bkx42c6x1v";
+  };
+
+  propagatedBuildInputs = [ python-slugify jinja2 setuptools ];
+  checkInputs = [ coverage ];
+
+  checkPhase = ''
+    coverage run --source=nvd3 setup.py test
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/areski/python-nvd3";
+    description = "Python Wrapper for NVD3 - It's time for beautiful charts";
+    license = licenses.mit;
+    maintainers = [ maintainers.ivan-tkatchev ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/python-registry/default.nix b/nixpkgs/pkgs/development/python-modules/python-registry/default.nix
index 44795da8ddf7..fbf8df7f322d 100644
--- a/nixpkgs/pkgs/development/python-modules/python-registry/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-registry/default.nix
@@ -1,16 +1,20 @@
 { lib
 , buildPythonPackage
-, fetchPypi
 , enum-compat
+, fetchFromGitHub
+, pytestCheckHook
 , unicodecsv
 }:
+
 buildPythonPackage rec {
   pname = "python-registry";
-  version = "1.3.1";
+  version = "1.4";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "99185f67d5601be3e7843e55902d5769aea1740869b0882f34ff1bd4b43b1eb2";
+  src = fetchFromGitHub {
+    owner = "williballenthin";
+    repo = pname;
+    rev = version;
+    sha256 = "0gwx5jcribgmmbz0ikhz8iphz7yj2d2nmk24nkdrjd3y5irly11s";
   };
 
   propagatedBuildInputs = [
@@ -18,8 +22,13 @@ buildPythonPackage rec {
     unicodecsv
   ];
 
-  # no tests
-  doCheck = false;
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    "samples"
+  ];
 
   pythonImportsCheck = [
     "Registry"
diff --git a/nixpkgs/pkgs/development/python-modules/python-slugify/default.nix b/nixpkgs/pkgs/development/python-modules/python-slugify/default.nix
index fd488f4be9d3..14d15df16f68 100644
--- a/nixpkgs/pkgs/development/python-modules/python-slugify/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-slugify/default.nix
@@ -1,25 +1,40 @@
-{ lib, fetchPypi, buildPythonPackage, python, text-unidecode }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+, python
+, pythonOlder
+, text-unidecode
+, unidecode
+}:
 
 buildPythonPackage rec {
-    pname = "python-slugify";
-    version = "4.0.1";
+  pname = "python-slugify";
+  version = "5.0.2";
+  disabled = pythonOlder "3.6";
 
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "69a517766e00c1268e5bbfc0d010a0a8508de0b18d30ad5a1ff357f8ae724270";
-    };
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-8TODoLn8vmSaGJK5yOtPjqsdbYS4S7emJDF6+pgVnKs=";
+  };
 
-    propagatedBuildInputs = [ text-unidecode ];
+  propagatedBuildInputs = [
+    text-unidecode
+    unidecode
+  ];
 
-    checkPhase = ''
-      ${python.interpreter} test.py
-    '';
+  checkInputs = [
+    pytestCheckHook
+  ];
 
-    meta = with lib; {
-      homepage = "https://github.com/un33k/python-slugify";
-      description = "A Python Slugify application that handles Unicode";
-      license = licenses.mit;
-      platforms = platforms.all;
-      maintainers = with maintainers; [ vrthra ];
-    };
+  pytestFlagsArray = [ "test.py" ];
+
+  pythonImportsCheck = [ "slugify" ];
+
+  meta = with lib; {
+    description = "Python Slugify application that handles Unicode";
+    homepage = "https://github.com/un33k/python-slugify";
+    license = licenses.mit;
+    maintainers = with maintainers; [ vrthra ];
+  };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/python-twitter/default.nix b/nixpkgs/pkgs/development/python-modules/python-twitter/default.nix
index c368d97633f4..f6814a8d0fda 100644
--- a/nixpkgs/pkgs/development/python-modules/python-twitter/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-twitter/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , fetchpatch
-, pytestrunner
+, pytest-runner
 , future
 , requests
 , responses
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     })
   ];
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
   propagatedBuildInputs = [ future requests requests_oauthlib ];
   checkInputs = [ pytest responses hypothesis ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/python-wifi/default.nix b/nixpkgs/pkgs/development/python-modules/python-wifi/default.nix
index 7f6eee4906cb..a679100d3760 100644
--- a/nixpkgs/pkgs/development/python-modules/python-wifi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-wifi/default.nix
@@ -16,7 +16,6 @@ buildPythonPackage rec {
   };
 
   meta = with lib; {
-    inherit version;
     description = "Read & write wireless card capabilities using the Linux Wireless Extensions";
     homepage = "http://pythonwifi.tuxfamily.org/";
     # From the README: "pythonwifi is licensed under LGPLv2+, however, the
diff --git a/nixpkgs/pkgs/development/python-modules/pythran/0001-hardcode-path-to-libgomp.patch b/nixpkgs/pkgs/development/python-modules/pythran/0001-hardcode-path-to-libgomp.patch
new file mode 100644
index 000000000000..14d2c2fbfd29
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pythran/0001-hardcode-path-to-libgomp.patch
@@ -0,0 +1,64 @@
+From 208fe98f10c580a5a2fb6a8cfdd56de109073925 Mon Sep 17 00:00:00 2001
+From: Frederik Rietdijk <fridh@fridh.nl>
+Date: Sat, 17 Jul 2021 18:36:27 +0200
+Subject: [PATCH] hardcode path to libgomp
+
+---
+ omp/__init__.py | 40 ++++------------------------------------
+ 1 file changed, 4 insertions(+), 36 deletions(-)
+
+diff --git a/omp/__init__.py b/omp/__init__.py
+index bddae3063..9ba3678d8 100644
+--- a/omp/__init__.py
++++ b/omp/__init__.py
+@@ -69,43 +69,11 @@ class OpenMP(object):
+ 
+     def init_not_msvc(self):
+         """ Find OpenMP library and try to load if using ctype interface. """
+-        # find_library() does not search automatically LD_LIBRARY_PATH
+-        paths = os.environ.get('LD_LIBRARY_PATH', '').split(':')
++        libgomp_path = "@gomp@"
+ 
+-        for libomp_name in self.get_libomp_names():
+-            if cxx is None or sys.platform == 'win32':
+-                # Note: Clang supports -print-file-name, but not yet for
+-                # clang-cl as of v12.0.0 (April '21)
+-                continue
+-
+-            cmd = [cxx, '-print-file-name=' + libomp_name]
+-            # the subprocess can fail in various ways in that case just give up
+-            try:
+-                path = os.path.dirname(check_output(cmd).decode().strip())
+-                if path:
+-                    paths.append(path)
+-            except (OSError, CalledProcessError):
+-                pass
+-
+-        # Try to load find libgomp shared library using loader search dirs
+-        libgomp_path = find_library("gomp")
+-
+-        # Try to use custom paths if lookup failed
+-        for path in paths:
+-            if libgomp_path:
+-                break
+-            path = path.strip()
+-            if os.path.isdir(path):
+-                libgomp_path = find_library(os.path.join(str(path), "libgomp"))
+-
+-        if not libgomp_path:
+-            raise ImportError("I can't find a shared library for libgomp,"
+-                              " you may need to install it or adjust the "
+-                              "LD_LIBRARY_PATH environment variable.")
+-        else:
+-            # Load the library (shouldn't fail with an absolute path right?)
+-            self.libomp = ctypes.CDLL(libgomp_path)
+-            self.version = 45
++        # Load the library (shouldn't fail with an absolute path right?)
++        self.libomp = ctypes.CDLL(libgomp_path)
++        self.version = 45
+ 
+     def __getattr__(self, name):
+         """
+-- 
+2.32.0
+
diff --git a/nixpkgs/pkgs/development/python-modules/pythran/default.nix b/nixpkgs/pkgs/development/python-modules/pythran/default.nix
index 864234a37e27..cb25b09dad72 100644
--- a/nixpkgs/pkgs/development/python-modules/pythran/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pythran/default.nix
@@ -1,7 +1,8 @@
 { lib
+, python
 , buildPythonPackage
 , fetchFromGitHub
-, pytestrunner
+, pytest-runner
 , ply
 , networkx
 , decorator
@@ -12,21 +13,33 @@
 , pytestCheckHook
 , scipy
 , isPy3k
+, substituteAll
 }:
 
-buildPythonPackage rec {
+let
+  inherit (python) stdenv;
+
+in buildPythonPackage rec {
   pname = "pythran";
-  version = "0.9.8post3";
+  version = "0.9.12";
 
   src = fetchFromGitHub {
     owner = "serge-sans-paille";
     repo = "pythran";
     rev = version;
-    sha256 = "sha256-GCWjJlf7zpFzELR6wTF8FoJzJ3F/WdT1hHjY5A5h/+4=";
+    sha256 = "sha256-lQbVq4K/Q8RzlFhE+l3HPCmUGmauXawcKe31kfbUHsI=";
   };
 
+  patches = [
+    # Hardcode path to mp library
+    (substituteAll {
+      src = ./0001-hardcode-path-to-libgomp.patch;
+      gomp = "${stdenv.cc.cc.lib}/lib/libgomp${stdenv.hostPlatform.extensions.sharedLibrary}";
+    })
+  ];
+
   nativeBuildInputs = [
-    pytestrunner
+    pytest-runner
   ];
 
   propagatedBuildInputs = [
@@ -62,7 +75,7 @@ buildPythonPackage rec {
 
   meta = {
     description = "Ahead of Time compiler for numeric kernels";
-    homepage = https://github.com/serge-sans-paille/pythran;
+    homepage = "https://github.com/serge-sans-paille/pythran";
     license = lib.licenses.bsd3;
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/pyupgrade/default.nix b/nixpkgs/pkgs/development/python-modules/pyupgrade/default.nix
index 412b032db7f6..07f21881c50b 100644
--- a/nixpkgs/pkgs/development/python-modules/pyupgrade/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyupgrade/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "pyupgrade";
-  version = "2.19.1";
+  version = "2.21.0";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "asottile";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-zDT8VskHEX4uldMvxnb9A+FKMuvZbtEcmdVl5mghTs4=";
+    sha256 = "sha256-W0zaziTkXReEuLhcd6jEHH/dS1YSZNiWDro+tTH7Ftg=";
   };
 
   checkInputs = [ pytestCheckHook ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyutil/default.nix b/nixpkgs/pkgs/development/python-modules/pyutil/default.nix
index dd1c7b2da5b0..f559afb6a4d4 100644
--- a/nixpkgs/pkgs/development/python-modules/pyutil/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyutil/default.nix
@@ -1,9 +1,8 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptoolsDarcs
-, setuptoolsTrial
 , simplejson
+, mock
 , twisted
 , isPyPy
 }:
@@ -17,12 +16,9 @@ buildPythonPackage rec {
     sha256 = "8c4d4bf668c559186389bb9bce99e4b1b871c09ba252a756ccaacd2b8f401848";
   };
 
-  buildInputs = [ setuptoolsDarcs setuptoolsTrial ] ++ (if doCheck then [ simplejson ] else []);
-  propagatedBuildInputs = [ twisted ];
+  propagatedBuildInputs = [ simplejson ];
 
-  # Tests fail because they try to write new code into the twisted
-  # package, apparently some kind of plugin.
-  doCheck = false;
+  checkInputs = [ mock twisted ];
 
   prePatch = lib.optionalString isPyPy ''
     grep -rl 'utf-8-with-signature-unix' ./ | xargs sed -i -e "s|utf-8-with-signature-unix|utf-8|g"
@@ -41,8 +37,9 @@ buildPythonPackage rec {
       we're not alone in wanting tools like these.
     '';
 
-    homepage = "http://allmydata.org/trac/pyutil";
+    homepage = "https://github.com/tpltnt/pyutil";
     license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ prusnak ];
   };
 
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pyvex/default.nix b/nixpkgs/pkgs/development/python-modules/pyvex/default.nix
index b2f43db50cf9..d021b6b06d3c 100644
--- a/nixpkgs/pkgs/development/python-modules/pyvex/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyvex/default.nix
@@ -11,11 +11,11 @@
 
 buildPythonPackage rec {
   pname = "pyvex";
-  version = "9.0.8761";
+  version = "9.0.9031";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-3aLpMiOJfgELfnpqTyXAL6Uofbm4UW4VRRsYzTTAofg=";
+    sha256 = "sha256-bl6bWv4c+tlaWcxrYCiljC9C+wAZZVyk+1O0rlb4kxA=";
   };
 
   postPatch = lib.optionalString stdenv.isDarwin ''
diff --git a/nixpkgs/pkgs/development/python-modules/pyvicare/default.nix b/nixpkgs/pkgs/development/python-modules/pyvicare/default.nix
index 7c87431d80b3..274cb0379c29 100644
--- a/nixpkgs/pkgs/development/python-modules/pyvicare/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyvicare/default.nix
@@ -1,29 +1,43 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , pythonOlder
 , requests_oauthlib
 , simplejson
+, pkce
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "pyvicare";
-  version = "0.2.5";
+  version = "1.0.0";
   disabled = pythonOlder "3.7";
 
-  src = fetchPypi {
-    pname = "PyViCare";
-    inherit version;
-    sha256 = "16wqqjs238ad6znlz2gjadqj8891226bd02a1106xyz6vbbk2gdk";
+  src = fetchFromGitHub {
+    owner = "somm15";
+    repo = "PyViCare";
+    rev = version;
+    sha256 = "05dlasx18fkmh4z1w8550yrb26fmsb5bc73wr9whmkasm32gpfl1";
   };
 
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
   propagatedBuildInputs = [
     requests_oauthlib
     simplejson
+    pkce
+  ];
+
+  checkInputs = [
+    pytestCheckHook
   ];
 
-  # The published tarball on PyPI is incomplete and there are GitHub releases
-  doCheck = false;
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "version_config=True," 'version="${version}",' \
+      --replace "'setuptools-git-versioning'" " "
+  '';
+
   pythonImportsCheck = [ "PyViCare" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/pyvips/default.nix b/nixpkgs/pkgs/development/python-modules/pyvips/default.nix
index 1a01eda244b0..ea40fc573b63 100644
--- a/nixpkgs/pkgs/development/python-modules/pyvips/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyvips/default.nix
@@ -1,4 +1,4 @@
-{ buildPythonPackage, fetchPypi, pytestrunner, pytestCheckHook, glib, vips, cffi
+{ buildPythonPackage, fetchPypi, pytest-runner, pytestCheckHook, glib, vips, cffi
 , pkg-config, pkgconfig, lib }:
 
 buildPythonPackage rec {
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     sha256 = "244e79c625be65237677c79424d4476de6c406805910015d4adbd0186c64a6a2";
   };
 
-  nativeBuildInputs = [ pytestrunner pkgconfig pkg-config ];
+  nativeBuildInputs = [ pytest-runner pkgconfig pkg-config ];
 
   buildInputs = [ glib vips ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pyyaml/default.nix b/nixpkgs/pkgs/development/python-modules/pyyaml/default.nix
index 93cfad78d50e..10073176aeb4 100644
--- a/nixpkgs/pkgs/development/python-modules/pyyaml/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyyaml/default.nix
@@ -1,18 +1,37 @@
-{ lib, buildPythonPackage, fetchPypi, cython, libyaml, buildPackages }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, cython
+, libyaml
+, isPy27
+, python
+}:
 
 buildPythonPackage rec {
   pname = "PyYAML";
-  version = "5.4.1";
+  version = "5.4.1.1";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "607774cbba28732bfa802b54baa7484215f530991055bb562efbed5b2f20a45e";
+  src = fetchFromGitHub {
+    owner = "yaml";
+    repo = "pyyaml";
+    rev = version;
+    sha256 = "1v386gzdvsjg0mgix6v03rd0cgs9dl81qvn3m547849jm8r41dx8";
   };
 
-  nativeBuildInputs = [ cython buildPackages.stdenv.cc ];
+  nativeBuildInputs = [ cython ];
 
   buildInputs = [ libyaml ];
 
+  checkPhase = let
+    testdir = if isPy27 then "tests/lib" else "tests/lib3";
+  in ''
+    runHook preCheck
+    PYTHONPATH="${testdir}:$PYTHONPATH" ${python.interpreter} -m test_all
+    runHook postCheck
+  '';
+
+  pythonImportsCheck = [ "yaml" ];
+
   meta = with lib; {
     description = "The next generation YAML parser and emitter for Python";
     homepage = "https://github.com/yaml/pyyaml";
diff --git a/nixpkgs/pkgs/development/python-modules/qcelemental/default.nix b/nixpkgs/pkgs/development/python-modules/qcelemental/default.nix
index 3a3e9bced050..b6e0684a2d48 100644
--- a/nixpkgs/pkgs/development/python-modules/qcelemental/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qcelemental/default.nix
@@ -1,12 +1,12 @@
 { buildPythonPackage, lib, fetchPypi, numpy
-, pydantic, pint,  networkx, pytestrunner, pytestcov, pytest
+, pydantic, pint,  networkx, pytest-runner, pytest-cov, pytest
 } :
 
 buildPythonPackage rec {
   pname = "qcelemental";
   version = "0.21.0";
 
-  checkInputs = [ pytestrunner pytestcov pytest ];
+  checkInputs = [ pytest-runner pytest-cov pytest ];
   propagatedBuildInputs = [ numpy pydantic pint networkx ];
 
   src = fetchPypi {
diff --git a/nixpkgs/pkgs/development/python-modules/qcengine/default.nix b/nixpkgs/pkgs/development/python-modules/qcengine/default.nix
index 847eeb23c9a1..0dd24112bd0b 100644
--- a/nixpkgs/pkgs/development/python-modules/qcengine/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qcengine/default.nix
@@ -1,5 +1,5 @@
 { buildPythonPackage, lib, fetchPypi, pyyaml, qcelemental, pydantic
-, py-cpuinfo, psutil, pytestrunner, pytest, pytestcov
+, py-cpuinfo, psutil, pytest-runner, pytest, pytest-cov
 } :
 
 buildPythonPackage rec {
@@ -7,8 +7,8 @@ buildPythonPackage rec {
   version = "0.19.0";
 
   checkInputs = [
-    pytestrunner
-    pytestcov
+    pytest-runner
+    pytest-cov
     pytest
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/questionary/default.nix b/nixpkgs/pkgs/development/python-modules/questionary/default.nix
index ecb33f6adb15..d7f93b3a47e5 100644
--- a/nixpkgs/pkgs/development/python-modules/questionary/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/questionary/default.nix
@@ -9,19 +9,23 @@
 
 buildPythonPackage rec {
   pname = "questionary";
-  version = "1.9.0";
+  version = "1.10.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "tmbo";
     repo = pname;
     rev = version;
-    sha256 = "1x748bz7l2r48031dj6vr6jvvac28pv6vx1bina4lz60h1qac1kf";
+    sha256 = "14k24fq2nmk90iv0k7pnmmdhmk8z261397wg52sfcsccyhpdw3i7";
   };
 
-  nativeBuildInputs = [ poetry ];
+  nativeBuildInputs = [
+    poetry
+  ];
 
-  propagatedBuildInputs = [ prompt_toolkit ];
+  propagatedBuildInputs = [
+    prompt_toolkit
+  ];
 
   checkInputs = [
     pytest-cov
@@ -32,7 +36,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python library to build command line user prompts";
-    homepage = "https://github.com/bachya/regenmaschine";
+    homepage = "https://github.com/tmbo/questionary";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/rasterio/default.nix b/nixpkgs/pkgs/development/python-modules/rasterio/default.nix
index 85d5d5d0b7d8..1ec6448d74c1 100644
--- a/nixpkgs/pkgs/development/python-modules/rasterio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/rasterio/default.nix
@@ -1,7 +1,7 @@
 { buildPythonPackage, lib, fetchFromGitHub, isPy3k
 , cython, setuptools
 , numpy, affine, attrs, cligj, click-plugins, snuggs, gdal
-, pytest, pytestcov, packaging, hypothesis, boto3, mock
+, pytest, pytest-cov, packaging, hypothesis, boto3, mock
 , certifi, shapely
 }:
 
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "sha256-rf2qdUhbS4Z2+mvlN1RzZvlgTgjqiBoQzry4z5QLSUc=";
   };
 
-  checkInputs = [ boto3 pytest pytestcov packaging hypothesis shapely ] ++ lib.optional (!isPy3k) mock;
+  checkInputs = [ boto3 pytest pytest-cov packaging hypothesis shapely ] ++ lib.optional (!isPy3k) mock;
   nativeBuildInputs = [ cython gdal ];
   propagatedBuildInputs = [ certifi gdal numpy attrs affine cligj click-plugins snuggs setuptools ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/ratelim/default.nix b/nixpkgs/pkgs/development/python-modules/ratelim/default.nix
new file mode 100644
index 000000000000..8fc3323ce1b5
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ratelim/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, decorator
+}:
+
+buildPythonPackage rec {
+  pname = "ratelim";
+  version = "0.1.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "07dirdd8y23706110nb0lfz5pzbrcvd9y74h64la3y8igqbk4vc2";
+  };
+
+  propagatedBuildInputs = [
+    decorator
+  ];
+
+  pythonImportsCheck = [ "ratelim" ];
+
+  # package has no tests
+  doCheck = false;
+
+  meta = with lib; {
+    homepage = "https://github.com/themiurgo/ratelim";
+    description = "Simple Python library that limits the number of times a function can be called during a time interval";
+    license = licenses.mit;
+    maintainers = with maintainers; [ dgliwka ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/readchar/default.nix b/nixpkgs/pkgs/development/python-modules/readchar/default.nix
index ea13c7083fe7..c83a2bba1cd6 100644
--- a/nixpkgs/pkgs/development/python-modules/readchar/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/readchar/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, flake8, pytest, pytestcov, pexpect }:
+{ lib, buildPythonPackage, fetchFromGitHub, flake8, pytest, pytest-cov, pexpect }:
 
 buildPythonPackage rec {
   pname = "readchar";
@@ -13,7 +13,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [ flake8 ];
-  checkInputs = [ pytest pytestcov pexpect ];
+  checkInputs = [ pytest pytest-cov pexpect ];
 
   meta = with lib; {
     homepage = "https://github.com/magmax/python-readchar";
diff --git a/nixpkgs/pkgs/development/python-modules/rebulk/default.nix b/nixpkgs/pkgs/development/python-modules/rebulk/default.nix
index fae0bf08e54b..f422934f02fb 100644
--- a/nixpkgs/pkgs/development/python-modules/rebulk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/rebulk/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, pytest, pytestrunner, six, regex}:
+{ lib, buildPythonPackage, fetchPypi, pytest, pytest-runner, six, regex}:
 
 buildPythonPackage rec {
   pname = "rebulk";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
 
   # Some kind of trickery with imports that doesn't work.
   doCheck = false;
-  buildInputs = [ pytest pytestrunner ];
+  buildInputs = [ pytest pytest-runner ];
   propagatedBuildInputs = [ six regex ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/reflink/default.nix b/nixpkgs/pkgs/development/python-modules/reflink/default.nix
index e9b8beadd16d..9f5024daf7e8 100644
--- a/nixpkgs/pkgs/development/python-modules/reflink/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/reflink/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , lib
 , pytestCheckHook
-, pytestrunner
+, pytest-runner
 }:
 
 buildPythonPackage rec {
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "sha256-ySU1gtskQTv9cDq/wbKkneePMbSQcjnyhumhkpoebjo=";
   };
 
-  propagatedBuildInputs = [ cffi pytestrunner ];
+  propagatedBuildInputs = [ cffi pytest-runner ];
 
   checkInputs = [ pytestCheckHook ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/reikna/default.nix b/nixpkgs/pkgs/development/python-modules/reikna/default.nix
index 896bc8e02f09..873a39244fe3 100644
--- a/nixpkgs/pkgs/development/python-modules/reikna/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/reikna/default.nix
@@ -2,7 +2,7 @@
 , fetchPypi
 , buildPythonPackage
 , sphinx
-, pytestcov
+, pytest-cov
 , pytest
 , Mako
 , numpy
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     sha256 = "d01f4264c8379ef2962a93aacb002d491b92ef9b5b22b45f77e7821dfa87bef7";
   };
 
-  checkInputs = [ sphinx pytestcov pytest ];
+  checkInputs = [ sphinx pytest-cov pytest ];
 
   propagatedBuildInputs = [ Mako numpy funcsigs ]
     ++ lib.optional withCuda pycuda
diff --git a/nixpkgs/pkgs/development/python-modules/requests-cache/default.nix b/nixpkgs/pkgs/development/python-modules/requests-cache/default.nix
index 35cf74ca8426..ce1dfc366f45 100644
--- a/nixpkgs/pkgs/development/python-modules/requests-cache/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/requests-cache/default.nix
@@ -1,52 +1,57 @@
 { lib
+, attrs
 , buildPythonPackage
-, pythonOlder
+, cattrs
 , fetchFromGitHub
-, attrs
 , itsdangerous
-, requests
-, url-normalize
+, poetry-core
 , pytestCheckHook
+, pythonOlder
+, pyyaml
+, requests
 , requests-mock
+, rich
 , timeout-decorator
+, ujson
+, url-normalize
 }:
 
 buildPythonPackage rec {
   pname = "requests-cache";
-  version = "0.6.4";
-
+  version = "0.7.2";
   disabled = pythonOlder "3.6";
-
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "reclosedev";
     repo = "requests-cache";
     rev = "v${version}";
-    sha256 = "10rvs611j16kakqx38kpqpc1v0dfb9rmbz2whpskswb1lsksv3j9";
+    sha256 = "055dfyjm8dqwr62v86lyvq4r04692gmvlgp86218vwvzgm7p3p2c";
   };
 
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
   propagatedBuildInputs = [
     attrs
+    cattrs
     itsdangerous
+    pyyaml
     requests
+    ujson
     url-normalize
   ];
 
   checkInputs = [
     pytestCheckHook
     requests-mock
+    rich
     timeout-decorator
   ];
 
-  disabledTestPaths = [
-    # connect to database on localhost
-    "tests/integration/test_cache.py"
-    "tests/integration/test_dynamodb.py"
-    "tests/integration/test_gridfs.py"
-    "tests/integration/test_mongodb.py"
-    "tests/integration/test_redis.py"
-  ];
+  # Integration tests require local DBs
+  pytestFlagsArray = [ "tests/unit" ];
 
   pythonImportsCheck = [ "requests_cache" ];
 
@@ -54,5 +59,6 @@ buildPythonPackage rec {
     description = "Persistent cache for requests library";
     homepage = "https://github.com/reclosedev/requests-cache";
     license = licenses.bsd3;
+    maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/requests-futures/default.nix b/nixpkgs/pkgs/development/python-modules/requests-futures/default.nix
new file mode 100644
index 000000000000..cc6eb312431e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/requests-futures/default.nix
@@ -0,0 +1,25 @@
+{ buildPythonPackage, fetchPypi, requests, lib }:
+
+buildPythonPackage rec {
+  pname = "requests-futures";
+  version = "1.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "35547502bf1958044716a03a2f47092a89efe8f9789ab0c4c528d9c9c30bc148";
+  };
+
+  propagatedBuildInputs = [ requests ];
+
+  # tests are disabled because they require being online
+  doCheck = false;
+
+  pythonImportsCheck = [ "requests_futures" ];
+
+  meta = with lib; {
+    description = "Asynchronous Python HTTP Requests for Humans using Futures";
+    homepage = "https://github.com/ross/requests-futures";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ applePrincess ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/resampy/default.nix b/nixpkgs/pkgs/development/python-modules/resampy/default.nix
index 551c7f5b93e6..e7e7ed5a7381 100644
--- a/nixpkgs/pkgs/development/python-modules/resampy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/resampy/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pytest
-, pytestcov
+, pytest-cov
 , numpy
 , scipy
 , cython
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     sha256 = "0qmkxl5sbgh0j73n667vyi7ywzh09iaync91yp1j5rrcmwsn0qfs";
   };
 
-  checkInputs = [ pytest pytestcov ];
+  checkInputs = [ pytest pytest-cov ];
   propagatedBuildInputs = [ numpy scipy cython numba six ];
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/rising/default.nix b/nixpkgs/pkgs/development/python-modules/rising/default.nix
index eb9afc8353c7..03aed296aa63 100644
--- a/nixpkgs/pkgs/development/python-modules/rising/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/rising/default.nix
@@ -3,7 +3,7 @@
 , isPy27
 , fetchFromGitHub
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , dill
 , numpy
 , pytorch
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [ numpy pytorch threadpoolctl tqdm ];
-  checkInputs = [ dill pytestcov pytestCheckHook ];
+  checkInputs = [ dill pytest-cov pytestCheckHook ];
 
   disabledTests = [ "test_affine" ];  # deprecated division operator '/'
 
diff --git a/nixpkgs/pkgs/development/python-modules/rtoml/default.nix b/nixpkgs/pkgs/development/python-modules/rtoml/default.nix
index f50ad558176e..e5043ca941a0 100644
--- a/nixpkgs/pkgs/development/python-modules/rtoml/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/rtoml/default.nix
@@ -9,20 +9,20 @@
 
 buildPythonPackage rec {
   pname = "rtoml";
-  version = "0.6.1";
+  version = "0.7";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "samuelcolvin";
     repo = pname;
     rev = "v${version}";
-    sha256 = "07bf30if1wmbqjp5n4ib43n6frx8ybyxc9fndxncq7aylkrhd7hy";
+    sha256 = "sha256-h4vY63pDkrMHt2X244FssLxHsphsfjNd6gnVFUeZZTY=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    sha256 = "1q082sdac5vm4l3b45rfjp4vppp9y9qhagdjqqfdz8gdhm1k8yyy";
+    sha256 = "05fwcs6w023ihw3gyihzbnfwjaqy40d6h0z2yas4kqkkvz9x4f8j";
   };
 
   nativeBuildInputs = with rustPlatform; [
diff --git a/nixpkgs/pkgs/development/python-modules/runway-python/default.nix b/nixpkgs/pkgs/development/python-modules/runway-python/default.nix
index c47054632c6f..4e062d9928ec 100644
--- a/nixpkgs/pkgs/development/python-modules/runway-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/runway-python/default.nix
@@ -20,7 +20,7 @@
 , wget
 , deepdiff
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , websocket-client
 }:
 
@@ -61,7 +61,7 @@ buildPythonPackage rec {
   checkInputs = [
     deepdiff
     pytestCheckHook
-    pytestcov
+    pytest-cov
     websocket-client
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/rxv/default.nix b/nixpkgs/pkgs/development/python-modules/rxv/default.nix
index 7f3e6527d060..5f0653236acf 100644
--- a/nixpkgs/pkgs/development/python-modules/rxv/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/rxv/default.nix
@@ -6,7 +6,7 @@
 , pytest
 , requests-mock
 , mock
-, pytestcov
+, pytest-cov
 , pytest-timeout
 , testtools
 }:
@@ -25,7 +25,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ defusedxml requests ];
 
-  checkInputs = [ pytest requests-mock mock pytestcov pytest-timeout testtools ];
+  checkInputs = [ pytest requests-mock mock pytest-cov pytest-timeout testtools ];
   checkPhase = ''
     pytest
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/scikit-build/default.nix b/nixpkgs/pkgs/development/python-modules/scikit-build/default.nix
index 6694c3abe4df..42f10aedf393 100644
--- a/nixpkgs/pkgs/development/python-modules/scikit-build/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scikit-build/default.nix
@@ -15,9 +15,9 @@
 , ninja
 , pathpy
 , pytest
-, pytestcov
+, pytest-cov
 , pytest-mock
-, pytestrunner
+, pytest-runner
 , pytest-virtualenv
 , requests
 , six
@@ -48,9 +48,9 @@ buildPythonPackage rec {
     ninja
     pathpy
     pytest
-    pytestcov
+    pytest-cov
     pytest-mock
-    pytestrunner
+    pytest-runner
     pytest-virtualenv
     requests
     six
diff --git a/nixpkgs/pkgs/development/python-modules/scp/default.nix b/nixpkgs/pkgs/development/python-modules/scp/default.nix
index 7bd426706886..a177d22f5d4f 100644
--- a/nixpkgs/pkgs/development/python-modules/scp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scp/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "scp";
-  version = "0.13.5";
+  version = "0.13.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-CrLukXi4vlPcXJ/i8zdh4BokNQh/XJ+1tUUZhzxlDWA=";
+    sha256 = "sha256-CnL514LpaLCbEU1WB/lrHxb+mUKFevs1U5nt1VNy/PE=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/scrapy-fake-useragent/default.nix b/nixpkgs/pkgs/development/python-modules/scrapy-fake-useragent/default.nix
index f9f896a563b7..643afd6dc8bf 100644
--- a/nixpkgs/pkgs/development/python-modules/scrapy-fake-useragent/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scrapy-fake-useragent/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, buildPythonPackage, pytestCheckHook, pytestcov, pytest-mock, fake-useragent, faker, scrapy }:
+{ lib, fetchFromGitHub, buildPythonPackage, pytestCheckHook, pytest-cov, pytest-mock, fake-useragent, faker, scrapy }:
 
 buildPythonPackage rec {
   pname = "scrapy-fake-useragent";
@@ -14,7 +14,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ fake-useragent faker ];
 
-  checkInputs = [ pytestCheckHook scrapy pytestcov pytest-mock ];
+  checkInputs = [ pytestCheckHook scrapy pytest-cov pytest-mock ];
 
   meta = with lib; {
     description = "Random User-Agent middleware based on fake-useragent";
diff --git a/nixpkgs/pkgs/development/python-modules/secp256k1/default.nix b/nixpkgs/pkgs/development/python-modules/secp256k1/default.nix
index bb5cc138a749..58fa81b444f3 100644
--- a/nixpkgs/pkgs/development/python-modules/secp256k1/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/secp256k1/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , pkg-config
 , pytest
-, pytestrunner
+, pytest-runner
 , cffi
 , secp256k1
 }:
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [ pkg-config ];
-  checkInputs = [ pytest pytestrunner ];
+  checkInputs = [ pytest pytest-runner ];
   propagatedBuildInputs = [ cffi secp256k1 ];
 
   # Tests are not included in archive
diff --git a/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix b/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix
index 9526c27eb175..9b3875822527 100644
--- a/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix
@@ -29,11 +29,11 @@
 
 buildPythonPackage rec {
   pname = "sentry-sdk";
-  version = "1.1.0";
+  version = "1.3.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-wSJ9ONyjFbo1GCNz8SnD4nIujtmZ5SWE5qyn0oeHBzk=";
+    sha256 = "sha256-UhCnEt1X2I0iXB/D/jo2Jv7kk2N7zVTiBIJs8EuNdpw=";
   };
 
   checkInputs = [ blinker botocore chalice django flask tornado bottle rq falcon sqlalchemy werkzeug trytond
diff --git a/nixpkgs/pkgs/development/python-modules/setuptoolstrial/default.nix b/nixpkgs/pkgs/development/python-modules/setuptoolstrial/default.nix
index 26b8d732be1d..f959458d2653 100644
--- a/nixpkgs/pkgs/development/python-modules/setuptoolstrial/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/setuptoolstrial/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , pytest
 , virtualenv
-, pytestrunner
+, pytest-runner
 , pytest-virtualenv
 , twisted
 , pathlib2
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     sha256 = "14220f8f761c48ba1e2526f087195077cf54fad7098b382ce220422f0ff59b12";
   };
 
-  buildInputs = [ pytest virtualenv pytestrunner pytest-virtualenv ];
+  buildInputs = [ pytest virtualenv pytest-runner pytest-virtualenv ];
   propagatedBuildInputs = [ twisted pathlib2 ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/sfepy/default.nix b/nixpkgs/pkgs/development/python-modules/sfepy/default.nix
index dacd589b1212..bf73e7561a13 100644
--- a/nixpkgs/pkgs/development/python-modules/sfepy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sfepy/default.nix
@@ -18,12 +18,12 @@
 
 buildPythonPackage rec {
   name = "sfepy";
-  version = "2020.4";
+  version = "2021.2";
   disabled = pythonOlder "3.8";
 
   src = fetchurl {
     url="https://github.com/sfepy/sfepy/archive/release_${version}.tar.gz";
-    sha256 = "1wb0ik6kjg3mksxin0abr88bhsly67fpg36qjdzabhj0xn7j1yaz";
+    sha256 = "1vnynxzbspj900wjyy6020l71jdv2l1wkyax7nhi6w5wvav4kfwz";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/shellingham/default.nix b/nixpkgs/pkgs/development/python-modules/shellingham/default.nix
index 300368b31f13..1d1a1fc46bdd 100644
--- a/nixpkgs/pkgs/development/python-modules/shellingham/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/shellingham/default.nix
@@ -1,18 +1,33 @@
-{ lib, buildPythonPackage, fetchPypi
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytest-mock
+, pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "shellingham";
-  version = "1.3.2";
+  version = "1.4.0";
   format = "pyproject";
+  disabled = pythonOlder "3.4";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "576c1982bea0ba82fb46c36feb951319d7f42214a82634233f58b40d858a751e";
+  src = fetchFromGitHub {
+    owner = "sarugaku";
+    repo = pname;
+    rev = version;
+    sha256 = "0f686ym3ywjffis5jfqkhsshjgii64060hajysczflhffrjn9jcp";
   };
 
+  checkInputs = [
+    pytest-mock
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "shellingham" ];
+
   meta = with lib; {
-    description = "Tool to Detect Surrounding Shell";
+    description = "Tool to detect the surrounding shell";
     homepage = "https://github.com/sarugaku/shellingham";
     license = licenses.isc;
     maintainers = with maintainers; [ mbode ];
diff --git a/nixpkgs/pkgs/development/python-modules/simanneal/default.nix b/nixpkgs/pkgs/development/python-modules/simanneal/default.nix
index 2d29797b28f9..c712edf5ca8b 100644
--- a/nixpkgs/pkgs/development/python-modules/simanneal/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/simanneal/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "simanneal";
-  version = "0.4.2";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "perrygeo";
     repo = "simanneal";
     rev = version;
-    sha256 = "0p75da4nbk6iy16aahl0ilqg605jrr6aa1pzfyd9hc7ak2vs6840";
+    sha256 = "sha256-yKZHkrf6fM0WsHczIEK5Kxusz5dSBgydK3fLu1nDyvk=";
   };
 
   checkInputs = [ pytest ];
diff --git a/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix b/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix
index 3e2a90b496b6..7bcd6340acfc 100644
--- a/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "simplisafe-python";
-  version = "10.0.0";
+  version = "11.0.1";
   format = "pyproject";
   disabled = pythonOlder "3.7";
 
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = version;
-    sha256 = "sha256-VF8R+dty54GuWvYs/OqWhfGtOVieuxtfndQUxHhu5lc=";
+    sha256 = "04fn65iwzgvxi44kgvgvxjr3nzi2f4hwlqrjxfvc5yda96qp347c";
   };
 
   nativeBuildInputs = [ poetry-core ];
diff --git a/nixpkgs/pkgs/development/python-modules/skorch/default.nix b/nixpkgs/pkgs/development/python-modules/skorch/default.nix
index db3b8ed4312c..3bbf28d2884e 100644
--- a/nixpkgs/pkgs/development/python-modules/skorch/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/skorch/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , pytestCheckHook
 , pytest
-, pytestcov
+, pytest-cov
 , flaky
 , numpy
 , pandas
@@ -24,7 +24,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [ numpy pytorch scikit-learn scipy tabulate tqdm ];
-  checkInputs = [ pytest pytestcov flaky pandas pytestCheckHook ];
+  checkInputs = [ pytest pytest-cov flaky pandas pytestCheckHook ];
 
   disabledTests = [
     # on CPU, these expect artifacts from previous GPU run
diff --git a/nixpkgs/pkgs/development/python-modules/skytemple-dtef/default.nix b/nixpkgs/pkgs/development/python-modules/skytemple-dtef/default.nix
index c1a950dc2ae6..24812deb1f9e 100644
--- a/nixpkgs/pkgs/development/python-modules/skytemple-dtef/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/skytemple-dtef/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "skytemple-dtef";
-  version = "1.1.3";
+  version = "1.1.4";
 
   src = fetchFromGitHub {
     owner = "SkyTemple";
     repo = pname;
     rev = version;
-    sha256 = "0hisg7gq6ph0as9vvx2p1h104bn6x2kx8y477p9zcqc71f3yrx82";
+    sha256 = "0l2b66z5ngyas3ijbzwz2wizw46kz47f8jr729pzbg4wbqbqjihr";
   };
 
   propagatedBuildInputs = [ skytemple-files ];
diff --git a/nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix b/nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix
index 0df6419b526a..90fae07c475d 100644
--- a/nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "skytemple-files";
-  version = "1.2.3";
+  version = "1.2.4";
 
   src = fetchFromGitHub {
     owner = "SkyTemple";
     repo = pname;
     rev = version;
-    sha256 = "sha256-/S0otBujwO/IMiLKgA2o8wlD6xk1/DpwOAfemojV9NU=";
+    sha256 = "1i3045bqg9h7kcx83nlrm1pmikfpi817n0gb8da29m3mqzk7lwws";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix b/nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix
index d22d61099587..d98d23fada6d 100644
--- a/nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, rustPlatform, setuptools-rust }:
+{ lib, stdenv, buildPythonPackage, fetchFromGitHub, libiconv, rustPlatform, setuptools-rust }:
 
 buildPythonPackage rec {
   pname = "skytemple-rust";
@@ -17,6 +17,7 @@ buildPythonPackage rec {
     sha256 = "1ypcsf9gbq1bz29kfn7g4kg8741mxg1lfcbb14a0vfhjq4d6pnx9";
   };
 
+  buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
   nativeBuildInputs = [ setuptools-rust ] ++ (with rustPlatform; [ cargoSetupHook rust.cargo rust.rustc ]);
 
   doCheck = false; # there are no tests
diff --git a/nixpkgs/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix b/nixpkgs/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix
index 88ae80f7242a..745e2775985d 100644
--- a/nixpkgs/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix
@@ -5,13 +5,13 @@
 
 buildPythonPackage rec {
   pname = "skytemple-ssb-debugger";
-  version = "1.2.4";
+  version = "1.2.5";
 
   src = fetchFromGitHub {
     owner = "SkyTemple";
     repo = pname;
     rev = version;
-    sha256 = "0jmsli3wg386y0lxwddpwp1xqxsn2bsy4d1f7dyh0jjz8lqiz03i";
+    sha256 = "0jkx75z8j03jfr9kzd40ip0fy24sfc7f2x430mf48xin272mc87q";
   };
 
   buildInputs = [ gobject-introspection gtk3 gtksourceview3 ];
diff --git a/nixpkgs/pkgs/development/python-modules/slack-sdk/default.nix b/nixpkgs/pkgs/development/python-modules/slack-sdk/default.nix
index 862789ce569b..a52d3144aadf 100644
--- a/nixpkgs/pkgs/development/python-modules/slack-sdk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/slack-sdk/default.nix
@@ -11,9 +11,7 @@
 , isPy3k
 , psutil
 , pytest-asyncio
-, pytest-cov
 , pytestCheckHook
-, pytestrunner
 , sqlalchemy
 , websocket-client
 , websockets
@@ -21,14 +19,14 @@
 
 buildPythonPackage rec {
   pname = "slack-sdk";
-  version = "3.7.0";
+  version = "3.8.0";
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "slackapi";
     repo = "python-slack-sdk";
     rev = "v${version}";
-    sha256 = "0bc52v5n8r3b2fy1c90w253r1abl752kaqdk6bgzkwsvbhgcxf2s";
+    sha256 = "sha256-r3GgcU4K2jj+4aIytpY2HiVqHzChynn2BCn1VNTL2t0=";
   };
 
   propagatedBuildInputs = [
@@ -47,20 +45,23 @@ buildPythonPackage rec {
     flask-sockets
     psutil
     pytest-asyncio
-    pytest-cov
     pytestCheckHook
-    pytestrunner
   ];
 
   preCheck = ''
     export HOME=$(mktemp -d)
   '';
 
-  # Exclude tests that requires network features
-  pytestFlagsArray = [ "--ignore=integration_tests" ];
+  disabledTestPaths = [
+    # Exclude tests that requires network features
+    "integration_tests"
+  ];
+
   disabledTests = [
+    # Requires network features
     "test_start_raises_an_error_if_rtm_ws_url_is_not_returned"
     "test_org_installation"
+    "test_interactions"
   ];
 
   pythonImportsCheck = [ "slack_sdk" ];
diff --git a/nixpkgs/pkgs/development/python-modules/slackclient/default.nix b/nixpkgs/pkgs/development/python-modules/slackclient/default.nix
index e96161228a52..c82eba66acae 100644
--- a/nixpkgs/pkgs/development/python-modules/slackclient/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/slackclient/default.nix
@@ -10,7 +10,7 @@
 , pytest-cov
 , pytest-mock
 , pytestCheckHook
-, pytestrunner
+, pytest-runner
 , requests
 , responses
 , six
@@ -45,7 +45,7 @@ buildPythonPackage rec {
     pytest-cov
     pytest-mock
     pytestCheckHook
-    pytestrunner
+    pytest-runner
     responses
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/slowapi/default.nix b/nixpkgs/pkgs/development/python-modules/slowapi/default.nix
new file mode 100644
index 000000000000..921a191d5fa1
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/slowapi/default.nix
@@ -0,0 +1,63 @@
+{ lib
+, buildPythonPackage
+, fastapi
+, fetchFromGitHub
+, fetchpatch
+, limits
+, mock
+, hiro
+, poetry-core
+, pytestCheckHook
+, pythonOlder
+, redis
+, starlette
+}:
+
+buildPythonPackage rec {
+  pname = "slowapi";
+  version = "0.1.4";
+  format = "pyproject";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "laurentS";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0bnnzgv2wy145sdab54hljwv1b5029ndrr0y9rc2q0mraz8lf8lm";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    limits
+    redis
+  ];
+
+  checkInputs = [
+    fastapi
+    hiro
+    mock
+    pytestCheckHook
+    starlette
+  ];
+
+  patches = [
+    # Switch to poetry-core, https://github.com/laurentS/slowapi/pull/54
+    (fetchpatch {
+      name = "switch-to-poetry-core.patch";
+      url = "https://github.com/laurentS/slowapi/commit/fe165f2d479f4f8e4b7dd9cd88ec0ae847b490c5.patch";
+      sha256 = "16vjxdjjiyg8zjrgfyg9q2ym2lmnms2zy5d2cg3ccg51cfl715fi";
+    })
+  ];
+
+  pythonImportsCheck = [ "slowapi" ];
+
+  meta = with lib; {
+    description = "Python library for API rate limiting";
+    homepage = "https://github.com/laurentS/slowapi";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/smart-open/default.nix b/nixpkgs/pkgs/development/python-modules/smart-open/default.nix
index 051d6c97397d..d4ad901fb9b7 100644
--- a/nixpkgs/pkgs/development/python-modules/smart-open/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/smart-open/default.nix
@@ -1,39 +1,75 @@
 { lib
 , buildPythonPackage
-, fetchPypi
 , pythonOlder
-, boto
+, fetchFromGitHub
+, azure-common
+, azure-core
+, azure-storage-blob
 , boto3
-, bz2file
-, mock
-, moto
+, google-cloud-storage
 , requests
-, responses
+, moto
+, parameterizedtestcase
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "smart-open";
-  version = "4.2.0";
+  version = "5.1.0";
+
   disabled = pythonOlder "3.5";
 
-  src = fetchPypi {
-    pname = "smart_open";
-    inherit version;
-    sha256 = "d9f5a0f173ccb9bbae528db5a3804f57145815774f77ef755b9b0f3b4b2a9dcb";
+  src = fetchFromGitHub {
+    owner = "RaRe-Technologies";
+    repo = "smart_open";
+    rev = "v${version}";
+    sha256 = "0gv3vxpglnhh6d80wsqigxi7psn6s7ylz20kx5ahblcx5rqyhjmi";
   };
 
-  # moto>=1.0.0 is backwards-incompatible and some tests fail with it,
-  # so disable tests for now
-  doCheck = false;
+  propagatedBuildInputs = [
+    azure-common
+    azure-core
+    azure-storage-blob
+    boto3
+    google-cloud-storage
+    requests
+  ];
+
+  checkInputs = [
+    moto
+    parameterizedtestcase
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [ "smart_open" ];
+
+  disabledTestPaths = [
+    "smart_open/tests/test_http.py"
+    "smart_open/tests/test_s3.py"
+    "smart_open/tests/test_s3_version.py"
+    "smart_open/tests/test_sanity.py"
+  ];
 
-  checkInputs = [ mock moto responses ];
+  disabledTests = [
+    "test_compression_invalid"
+    "test_gs_uri_contains_question_mark"
+    "test_gzip_compress_sanity"
+    "test_http"
+    "test_ignore_ext"
+    "test_initialize_write"
+    "test_read_explicit"
+    "test_s3_handles_querystring"
+    "test_s3_uri_contains_question_mark"
+    "test_webhdfs"
+    "test_write"
+  ];
 
-  # upstream code requires both boto and boto3
-  propagatedBuildInputs = [ boto boto3 bz2file requests ];
+  pythonImportsCheck = [ "smart_open" ];
 
-  meta = {
-    license = lib.licenses.mit;
+  meta = with lib; {
     description = "Library for efficient streaming of very large file";
-    maintainers = with lib.maintainers; [ jyp ];
+    homepage = "https://github.com/RaRe-Technologies/smart_open";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jyp ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/soco/default.nix b/nixpkgs/pkgs/development/python-modules/soco/default.nix
index edadde8995ec..af2226741301 100644
--- a/nixpkgs/pkgs/development/python-modules/soco/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/soco/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "soco";
-  version = "0.22.6";
+  version = "0.23.1";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "SoCo";
     repo = "SoCo";
     rev = "v${version}";
-    sha256 = "06qar4syi6g3x84klnk0mg6w5ryl50c5k3s1hag4rimbkap3x6ks";
+    sha256 = "15q82fq10d162xanypn1k51y15r38l7sj0417jzbjx40zz6c93f7";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/softlayer/default.nix b/nixpkgs/pkgs/development/python-modules/softlayer/default.nix
index 3c2a5e2a356d..78ecb3face30 100644
--- a/nixpkgs/pkgs/development/python-modules/softlayer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/softlayer/default.nix
@@ -9,7 +9,7 @@
 , pygments
 , urllib3
 , pytest
-, pytestcov
+, pytest-cov
 , mock
 , sphinx
 , testtools
@@ -22,7 +22,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ ptable click requests prompt_toolkit pygments urllib3 ];
 
-  checkInputs = [ pytest pytestcov mock sphinx testtools ptable click requests prompt_toolkit pygments urllib3 ];
+  checkInputs = [ pytest pytest-cov mock sphinx testtools ptable click requests prompt_toolkit pygments urllib3 ];
 
   checkPhase = ''
     pytest
diff --git a/nixpkgs/pkgs/development/python-modules/sphinx-copybutton/default.nix b/nixpkgs/pkgs/development/python-modules/sphinx-copybutton/default.nix
new file mode 100644
index 000000000000..8d408d300c71
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/sphinx-copybutton/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, sphinx
+}:
+
+buildPythonPackage rec {
+  pname = "sphinx-copybutton";
+  version = "0.4.0";
+
+  src = fetchFromGitHub {
+    owner = "executablebooks";
+    repo = "sphinx-copybutton";
+    rev = "v${version}";
+    sha256 = "sha256-vrEIvQeP7AMXSme1PBp0ox5k8Q1rz+1cbHIO+o17Jqc=";
+    fetchSubmodules = true;
+  };
+
+  propagatedBuildInputs = [
+    sphinx
+  ];
+
+  doCheck = false; # no tests
+
+  pythonImportsCheck = [ "sphinx_copybutton" ];
+
+  meta = with lib; {
+    description = "A small sphinx extension to add a \"copy\" button to code blocks";
+    homepage = "https://github.com/executablebooks/sphinx-copybutton";
+    license = licenses.mit;
+    maintainers = with maintainers; [ Luflosi ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/sqlalchemy-jsonfield/default.nix b/nixpkgs/pkgs/development/python-modules/sqlalchemy-jsonfield/default.nix
new file mode 100644
index 000000000000..54962387967d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/sqlalchemy-jsonfield/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, sqlalchemy
+, setuptools-scm
+, setuptools
+, tox
+, sphinx
+, pytest
+, pytest-cov
+, pytest-html
+, pytest-sugar
+, coverage
+, pymysql
+, psycopg2 }:
+
+buildPythonPackage rec {
+  pname = "sqlalchemy-jsonfield";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "penguinolog";
+    repo = "sqlalchemy_jsonfield";
+    rev = version;
+    sha256 = "015pl4z84spfw8389hk1szlm37jgw2basvbmzmkacdqi0685zx24";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = "v${version}";
+
+  nativeBuildInputs = [ setuptools-scm ];
+  propagatedBuildInputs = [ sqlalchemy setuptools ];
+  checkInputs = [ tox sphinx pytest pytest-cov pytest-html pytest-sugar coverage pymysql psycopg2 ];
+
+  checkPhase = ''
+    TOX_TESTENV_PASSENV="PYTHONPATH SETUPTOOLS_SCM_PRETEND_VERSION" tox -e functional
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/penguinolog/sqlalchemy_jsonfield";
+    description = "SQLALchemy JSONField implementation for storing dicts at SQL independently from JSON type support";
+    license = licenses.asl20;
+    maintainers = [ maintainers.ivan-tkatchev ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/sqlalchemy/default.nix b/nixpkgs/pkgs/development/python-modules/sqlalchemy/default.nix
index 605334adf0c5..3aaff20a9eaa 100644
--- a/nixpkgs/pkgs/development/python-modules/sqlalchemy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sqlalchemy/default.nix
@@ -9,16 +9,15 @@
 , mock
 , pysqlite ? null
 , pytestCheckHook
-, pytest_xdist
 }:
 
 buildPythonPackage rec {
   pname = "SQLAlchemy";
-  version = "1.4.18";
+  version = "1.4.20";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0k3yfarfa0hcc0bza6nccy685gnmq6gikynqayrvddx6y7si0lnj";
+    sha256 = "1l5miq1nzvg51yqw3pnaq17dgibhgx2m0il2ha79gwpyd8k3mviq";
   };
 
   propagatedBuildInputs = [
@@ -36,8 +35,6 @@ buildPythonPackage rec {
     sed -e 's:--max-worker-restart=5::g' -i setup.cfg
   '';
 
-  dontUseSetuptoolsCheck = true;
-
   # disable mem-usage tests on mac, has trouble serializing pickle files
   disabledTests = lib.optionals stdenv.isDarwin [
     "MemUsageWBackendTest"
diff --git a/nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix b/nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix
index 67a6dba1a8ed..35f7d7c07c98 100644
--- a/nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix
@@ -7,7 +7,7 @@
 , sqlite-fts4
 , tabulate
 , pytestCheckHook
-, pytestrunner
+, pytest-runner
 , black
 , hypothesis
 , sqlite
@@ -32,7 +32,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytestCheckHook
-    pytestrunner
+    pytest-runner
     black
     hypothesis
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/srptools/default.nix b/nixpkgs/pkgs/development/python-modules/srptools/default.nix
index 68ca009d9dc2..5339529f3d75 100644
--- a/nixpkgs/pkgs/development/python-modules/srptools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/srptools/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, six, pytest, pytestrunner }:
+{ lib, buildPythonPackage, fetchPypi, six, pytest, pytest-runner }:
 
 buildPythonPackage rec {
   pname = "srptools";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ six ];
 
-  checkInputs = [ pytest pytestrunner ];
+  checkInputs = [ pytest pytest-runner ];
 
   meta = with lib; {
     description = "Python-Tools to implement Secure Remote Password (SRP) authentication";
diff --git a/nixpkgs/pkgs/development/python-modules/ssdeep/default.nix b/nixpkgs/pkgs/development/python-modules/ssdeep/default.nix
index 904595865b8c..510bbbac9518 100644
--- a/nixpkgs/pkgs/development/python-modules/ssdeep/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ssdeep/default.nix
@@ -5,7 +5,7 @@
 , cffi
 , six
 , pytest
-, pytestrunner
+, pytest-runner
 }:
 
 buildPythonPackage rec {
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "0px8k4fjbkjb717bg2v7rjhm4iclrxzq7sh0hfqs55f4ddqi0m8v";
   };
 
-  buildInputs = [ pkgs.ssdeep pytestrunner ];
+  buildInputs = [ pkgs.ssdeep pytest-runner ];
   checkInputs = [ pytest ];
   propagatedBuildInputs = [ cffi six ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/sseclient/default.nix b/nixpkgs/pkgs/development/python-modules/sseclient/default.nix
index 6bbeb23ed1f5..a9fdfe2050e2 100644
--- a/nixpkgs/pkgs/development/python-modules/sseclient/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sseclient/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
 , requests, six
-, backports_unittest-mock, pytestCheckHook, pytestrunner }:
+, backports_unittest-mock, pytestCheckHook, pytest-runner }:
 
 buildPythonPackage rec {
   pname = "sseclient";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
 
   # some tests use python3 strings
   doCheck = !isPy27;
-  checkInputs = [ backports_unittest-mock pytestCheckHook pytestrunner ];
+  checkInputs = [ backports_unittest-mock pytestCheckHook pytest-runner ];
 
   # tries to open connection to wikipedia
   disabledTests = [ "event_stream" ];
diff --git a/nixpkgs/pkgs/development/python-modules/stack-data/default.nix b/nixpkgs/pkgs/development/python-modules/stack-data/default.nix
index f529a8a00b00..cbbd3a878d7e 100644
--- a/nixpkgs/pkgs/development/python-modules/stack-data/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stack-data/default.nix
@@ -14,14 +14,14 @@
 }:
 
 buildPythonPackage rec {
-  pname = "stack_data";
-  version = "0.0.7";
+  pname = "stack-data";
+  version = "0.1.0";
 
   src = fetchFromGitHub {
     owner = "alexmojaki";
-    repo = pname;
+    repo = "stack_data";
     rev = "v${version}";
-    sha256 = "148lhxihak8jm5dvryhsiykmn3s4mrlba8ki4dy1nbd8jnz06a4w";
+    sha256 = "sha256-dRIRDMq0tc1QuBHvppPwJA5PVGHyVRhoBlX5BsdDzec=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
@@ -45,6 +45,14 @@ buildPythonPackage rec {
     typeguard
   ];
 
+  disabledTests = [
+    # AssertionError
+    "test_variables"
+    "test_example"
+  ];
+
+  pythonImportsCheck = [ "stack_data" ];
+
   meta = with lib; {
     description = "Extract data from stack frames and tracebacks";
     homepage = "https://github.com/alexmojaki/stack_data/";
diff --git a/nixpkgs/pkgs/development/python-modules/stone/default.nix b/nixpkgs/pkgs/development/python-modules/stone/default.nix
index 21c92fcee7e9..8ea42d1f2795 100644
--- a/nixpkgs/pkgs/development/python-modules/stone/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stone/default.nix
@@ -2,7 +2,7 @@
 , coverage
 , mock
 , ply
-, pytestrunner
+, pytest-runner
 , pytestCheckHook
 , six
 }:
@@ -24,7 +24,7 @@ buildPythonPackage rec {
       --replace "coverage==5.3" "coverage"
   '';
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
 
   propagatedBuildInputs = [ ply six ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/stripe/default.nix b/nixpkgs/pkgs/development/python-modules/stripe/default.nix
index cfdc173995c3..7aa955e99e25 100644
--- a/nixpkgs/pkgs/development/python-modules/stripe/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stripe/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, requests, pytest, pytestcov, pytest-mock, pytest_xdist }:
+{ lib, buildPythonPackage, fetchPypi, requests, pytest, pytest-cov, pytest-mock, pytest-xdist }:
 
 buildPythonPackage rec {
   pname = "stripe";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ requests ];
 
-  checkInputs = [ pytest pytestcov pytest-mock pytest_xdist ];
+  checkInputs = [ pytest pytest-cov pytest-mock pytest-xdist ];
 
   meta = with lib; {
     description = "Stripe Python bindings";
diff --git a/nixpkgs/pkgs/development/python-modules/stups-cli-support/default.nix b/nixpkgs/pkgs/development/python-modules/stups-cli-support/default.nix
index 35aaf45ed1a2..97a7d6ebbdda 100644
--- a/nixpkgs/pkgs/development/python-modules/stups-cli-support/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stups-cli-support/default.nix
@@ -5,7 +5,7 @@
 , dnspython
 , requests
 , pytest
-, pytestcov
+, pytest-cov
 , isPy3k
 }:
 
@@ -31,7 +31,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytestcov
+    pytest-cov
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/stups-fullstop/default.nix b/nixpkgs/pkgs/development/python-modules/stups-fullstop/default.nix
index 5f51112324aa..8628c83334ba 100644
--- a/nixpkgs/pkgs/development/python-modules/stups-fullstop/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stups-fullstop/default.nix
@@ -5,7 +5,7 @@
 , stups-cli-support
 , stups-zign
 , pytest
-, pytestcov
+, pytest-cov
 , isPy3k
 }:
 
@@ -33,7 +33,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytestcov
+    pytest-cov
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/stups-pierone/default.nix b/nixpkgs/pkgs/development/python-modules/stups-pierone/default.nix
index aaa049916411..92cd344edb6d 100644
--- a/nixpkgs/pkgs/development/python-modules/stups-pierone/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stups-pierone/default.nix
@@ -5,7 +5,7 @@
 , stups-cli-support
 , stups-zign
 , pytest
-, pytestcov
+, pytest-cov
 , hypothesis
 , isPy3k
 }:
@@ -34,7 +34,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytestcov
+    pytest-cov
     hypothesis
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/stups-tokens/default.nix b/nixpkgs/pkgs/development/python-modules/stups-tokens/default.nix
index 3e785d8febbe..62dec6f348e8 100644
--- a/nixpkgs/pkgs/development/python-modules/stups-tokens/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stups-tokens/default.nix
@@ -4,7 +4,7 @@
 , requests
 , mock
 , pytest
-, pytestcov
+, pytest-cov
 , isPy3k
 }:
 
@@ -27,7 +27,7 @@ buildPythonPackage rec {
   checkInputs = [
     mock
     pytest
-    pytestcov
+    pytest-cov
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/stups-zign/default.nix b/nixpkgs/pkgs/development/python-modules/stups-zign/default.nix
index 6b80f55636a9..e7f6c2805de5 100644
--- a/nixpkgs/pkgs/development/python-modules/stups-zign/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stups-zign/default.nix
@@ -5,7 +5,7 @@
 , stups-tokens
 , stups-cli-support
 , pytest
-, pytestcov
+, pytest-cov
 , isPy3k
 }:
 
@@ -40,7 +40,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest
-    pytestcov
+    pytest-cov
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/subarulink/default.nix b/nixpkgs/pkgs/development/python-modules/subarulink/default.nix
index 6ed265f65615..56dbc588c780 100644
--- a/nixpkgs/pkgs/development/python-modules/subarulink/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/subarulink/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "subarulink";
-  version = "0.3.13";
+  version = "0.3.14";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "G-Two";
     repo = pname;
-    rev = "subaru-v${version}";
-    sha256 = "0dqbb1iiil1vn97zxnpphn63bl8z0ibgyca90ynx958cy78kys0g";
+    rev = "v${version}";
+    sha256 = "0xwiw50xc0k8r00k33crsl5wb01n2dz5rzhy96y7vr3zj4kfypsp";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/subliminal/default.nix b/nixpkgs/pkgs/development/python-modules/subliminal/default.nix
index cedbb7bcf786..e334608bd4dc 100644
--- a/nixpkgs/pkgs/development/python-modules/subliminal/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/subliminal/default.nix
@@ -19,8 +19,8 @@
 , vcrpy
 , pytest
 , pytest-flakes
-, pytestcov
-, pytestrunner
+, pytest-cov
+, pytest-runner
 }:
 
 buildPythonPackage rec {
@@ -40,7 +40,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     sympy vcrpy pytest pytest-flakes
-    pytestcov pytestrunner
+    pytest-cov pytest-runner
   ];
 
   # https://github.com/Diaoul/subliminal/pull/963
diff --git a/nixpkgs/pkgs/development/python-modules/sunpy/default.nix b/nixpkgs/pkgs/development/python-modules/sunpy/default.nix
index c8fd82043a81..0079b44cfd35 100644
--- a/nixpkgs/pkgs/development/python-modules/sunpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sunpy/default.nix
@@ -19,7 +19,7 @@
 , parfive
 , pytest-astropy
 , pytest-mock
-, pytestcov
+, pytest-cov
 , python-dateutil
 , scikitimage
 , scipy
@@ -68,7 +68,7 @@ buildPythonPackage rec {
   checkInputs = [
     hypothesis
     pytest-astropy
-    pytestcov
+    pytest-cov
     pytest-mock
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/surepy/default.nix b/nixpkgs/pkgs/development/python-modules/surepy/default.nix
index 39be204a3d31..e983dfc0e7fd 100644
--- a/nixpkgs/pkgs/development/python-modules/surepy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/surepy/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "surepy";
-  version = "0.6.0";
+  version = "0.7.0";
   format = "pyproject";
   disabled = pythonOlder "3.8";
 
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "benleb";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-XoYiZPBc9SybyKocui1HqSA+YPiPpbupJWMCfmQT5RU=";
+    sha256 = "04ywkbgs1lnnlhxakbr96crwc8hl97px8w7yigps2ki69md0xf60";
   };
 
   postPatch = ''
@@ -35,7 +35,9 @@ buildPythonPackage rec {
       --replace 'attrs = "^20.3.0"' 'attrs = "*"'
   '';
 
-  nativeBuildInputs = [ poetry-core ];
+  nativeBuildInputs = [
+    poetry-core
+  ];
 
   propagatedBuildInputs = [
     aiodns
@@ -53,6 +55,7 @@ buildPythonPackage rec {
 
   # Project has no tests
   doCheck = false;
+
   pythonImportsCheck = [ "surepy" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/tablib/default.nix b/nixpkgs/pkgs/development/python-modules/tablib/default.nix
index b6754e15ad5d..404edac7e59b 100644
--- a/nixpkgs/pkgs/development/python-modules/tablib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tablib/default.nix
@@ -4,7 +4,7 @@
 , pandas
 , setuptools-scm
 , pytest
-, pytestcov
+, pytest-cov
 , pyyaml
 , unicodecsv
 , xlrd
@@ -23,7 +23,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [ setuptools-scm ];
   propagatedBuildInputs = [ xlwt openpyxl pyyaml xlrd odfpy ];
-  checkInputs = [ pytest pytestcov unicodecsv pandas ];
+  checkInputs = [ pytest pytest-cov unicodecsv pandas ];
 
   # test_tablib needs MarkupPy, which isn't packaged yet
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/tatsu/default.nix b/nixpkgs/pkgs/development/python-modules/tatsu/default.nix
index d5dfda53c08c..83f6d9ac0637 100644
--- a/nixpkgs/pkgs/development/python-modules/tatsu/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tatsu/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchFromGitHub, pythonOlder
 , colorama, regex
-, pytestrunner, pytestCheckHook, pytest-mypy
+, pytest-runner, pytestCheckHook, pytest-mypy
 }:
 
 buildPythonPackage rec {
@@ -16,7 +16,7 @@ buildPythonPackage rec {
 
   disabled = pythonOlder "3.8";
 
-  nativeBuildInputs = [ pytestrunner ];
+  nativeBuildInputs = [ pytest-runner ];
   propagatedBuildInputs = [ colorama regex ];
   checkInputs = [ pytestCheckHook pytest-mypy ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/teletype/default.nix b/nixpkgs/pkgs/development/python-modules/teletype/default.nix
new file mode 100644
index 000000000000..c3878bf3c877
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/teletype/default.nix
@@ -0,0 +1,22 @@
+{ buildPythonPackage, fetchPypi, lib }:
+
+buildPythonPackage rec {
+  pname = "teletype";
+  version = "1.1.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "02mg0qmdf7hljq6jw1hwaid3hvkf70dfxgrxmpqybaxrph5pfg1y";
+  };
+
+  # no tests
+  doCheck = false;
+  pythonImportsCheck = [ "teletype" ];
+
+  meta = with lib; {
+    description = "A high-level cross platform tty library";
+    homepage = "https://github.com/jkwill87/teletype";
+    license = licenses.mit;
+    maintainers = with maintainers; [ urlordjames ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/tempora/default.nix b/nixpkgs/pkgs/development/python-modules/tempora/default.nix
index b06a53cb333c..8da8d622a7b3 100644
--- a/nixpkgs/pkgs/development/python-modules/tempora/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tempora/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonPackage, fetchPypi
 , setuptools-scm, pytest, pytest-freezegun, freezegun, backports_unittest-mock
 , six, pytz, jaraco_functools, pythonOlder
-, pytest-flake8, pytestcov, pytest-black, pytest-mypy
+, pytest-flake8, pytest-cov, pytest-black, pytest-mypy
 }:
 
 buildPythonPackage rec {
@@ -21,7 +21,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytest-freezegun pytest freezegun backports_unittest-mock
-    pytest-flake8 pytestcov pytest-black pytest-mypy
+    pytest-flake8 pytest-cov pytest-black pytest-mypy
   ];
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/tesserocr/default.nix b/nixpkgs/pkgs/development/python-modules/tesserocr/default.nix
index df1b02283043..0b21e17f96b0 100644
--- a/nixpkgs/pkgs/development/python-modules/tesserocr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tesserocr/default.nix
@@ -13,11 +13,11 @@
 
 buildPythonPackage rec {
   pname = "tesserocr";
-  version = "2.5.1";
+  version = "2.5.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0cc7d4r11z26rhcwpmcc42fi9kr3f20nq5pk84jrczr18i0g99mh";
+    sha256 = "1bmj76gi8401lcqdaaznfmz9yf11myy1bzivqwwq08z3dwzxswck";
   };
 
   nativeBuildInputs = [ cython pkg-config ];
diff --git a/nixpkgs/pkgs/development/python-modules/textwrap3/default.nix b/nixpkgs/pkgs/development/python-modules/textwrap3/default.nix
index 791479b69e14..995a62230b22 100644
--- a/nixpkgs/pkgs/development/python-modules/textwrap3/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/textwrap3/default.nix
@@ -4,7 +4,7 @@
 , tox
 , pytest
 , coverage
-, pytestcov
+, pytest-cov
 }:
 
 buildPythonPackage rec {
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     tox
     pytest
     coverage
-    pytestcov
+    pytest-cov
   ];
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/threadpoolctl/default.nix b/nixpkgs/pkgs/development/python-modules/threadpoolctl/default.nix
index fb2c6094b37c..20fad7c18a0a 100644
--- a/nixpkgs/pkgs/development/python-modules/threadpoolctl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/threadpoolctl/default.nix
@@ -4,7 +4,7 @@
 , fetchFromGitHub
 , flit
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , numpy
 , scipy
 }:
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     sha256 = "0sl6mp3b2gb0dvqkhnkmrp2g3r5c7clyyyxzq44xih6sw1pgx9df";
   };
 
-  checkInputs = [ pytestCheckHook pytestcov numpy scipy ];
+  checkInputs = [ pytestCheckHook pytest-cov numpy scipy ];
 
   meta = with lib; {
     homepage = "https://github.com/joblib/threadpoolctl";
diff --git a/nixpkgs/pkgs/development/python-modules/timezonefinder/default.nix b/nixpkgs/pkgs/development/python-modules/timezonefinder/default.nix
index 48aff396aaad..1cd055588c28 100644
--- a/nixpkgs/pkgs/development/python-modules/timezonefinder/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/timezonefinder/default.nix
@@ -5,7 +5,7 @@
 , numba
 , numpy
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 }:
 
 buildPythonPackage rec {
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     numpy
   ];
 
-  checkInputs = [ numba pytestCheckHook pytestcov ];
+  checkInputs = [ numba pytestCheckHook pytest-cov ];
 
   meta = with lib; {
     description = "fast python package for finding the timezone of any point on earth (coordinates) offline";
diff --git a/nixpkgs/pkgs/development/python-modules/tinycss2/default.nix b/nixpkgs/pkgs/development/python-modules/tinycss2/default.nix
index 35c0f76b0843..05ca81772d81 100644
--- a/nixpkgs/pkgs/development/python-modules/tinycss2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tinycss2/default.nix
@@ -6,8 +6,8 @@
 , webencodings
 # Check inputs
 , pytest
-, pytestrunner
-, pytestcov
+, pytest-runner
+, pytest-cov
 , pytest-flake8
 , pytest-isort
 }:
@@ -34,7 +34,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ webencodings ];
 
-  checkInputs = [ pytest pytestrunner pytestcov pytest-flake8 pytest-isort ];
+  checkInputs = [ pytest pytest-runner pytest-cov pytest-flake8 pytest-isort ];
 
   # https://github.com/PyCQA/pycodestyle/issues/598
   preCheck = ''
diff --git a/nixpkgs/pkgs/development/python-modules/tinydb/default.nix b/nixpkgs/pkgs/development/python-modules/tinydb/default.nix
index db162ecc2ac9..ccbe26317027 100644
--- a/nixpkgs/pkgs/development/python-modules/tinydb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tinydb/default.nix
@@ -3,7 +3,6 @@
 , pythonOlder
 , fetchFromGitHub
 , poetry-core
-, fetchpatch
 , pytestCheckHook
 , pycodestyle
 , pyyaml
@@ -11,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "tinydb";
-  version = "4.4.0";
+  version = "4.5.0";
   disabled = pythonOlder "3.5";
   format = "pyproject";
 
@@ -19,22 +18,13 @@ buildPythonPackage rec {
     owner = "msiemens";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-3FbsnLU7G4VVhI5NYRqCEQgo51zDeAkEhH69H52zr/w=";
+    sha256 = "sha256-rJVJfsPhGTQpE6p0kzN6GDR0r9M71ADa67Oi5jLgeWY=";
   };
 
   nativeBuildInputs = [
     poetry-core
   ];
 
-  patches = [
-    # Switch to poetry-core, https://github.com/msiemens/tinydb/pull/391
-    (fetchpatch {
-      name = "switch-to-peotry-core.patch";
-      url = "https://github.com/msiemens/tinydb/commit/5b547c18e7ce9f5925d5943dfa47d408435a0da5.patch";
-      sha256 = "19ma9ib020b82sn1mcr7sfysqbj8h6nbb365bih1x1wn3ym8xlbc";
-    })
-  ];
-
   postPatch = ''
     substituteInPlace pytest.ini \
       --replace "--cov-append --cov-report term --cov tinydb" ""
diff --git a/nixpkgs/pkgs/development/python-modules/toggl-cli/default.nix b/nixpkgs/pkgs/development/python-modules/toggl-cli/default.nix
index d8225e7031ea..fb39831a0d18 100644
--- a/nixpkgs/pkgs/development/python-modules/toggl-cli/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/toggl-cli/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, fetchPypi, pythonAtLeast, pythonOlder, click
 , click-completion, factory_boy, faker, inquirer, notify-py, pbr, pendulum
-, ptable, pytestCheckHook, pytestcov, pytest-mock, requests, twine
+, ptable, pytestCheckHook, pytest-cov, pytest-mock, requests, twine
 , validate-email }:
 
 buildPythonPackage rec {
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   '';
 
   nativeBuildInputs = [ pbr twine ];
-  checkInputs = [ pbr pytestCheckHook pytestcov pytest-mock faker factory_boy ];
+  checkInputs = [ pbr pytestCheckHook pytest-cov pytest-mock faker factory_boy ];
 
   preCheck = ''
     export TOGGL_API_TOKEN=your_api_token
diff --git a/nixpkgs/pkgs/development/python-modules/token-bucket/default.nix b/nixpkgs/pkgs/development/python-modules/token-bucket/default.nix
index f1e90114ac6d..508e38da4500 100644
--- a/nixpkgs/pkgs/development/python-modules/token-bucket/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/token-bucket/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, pytestrunner
+, pytest-runner
 , pytestCheckHook
 }:
 
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    pytestrunner
+    pytest-runner
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/tomli/default.nix b/nixpkgs/pkgs/development/python-modules/tomli/default.nix
new file mode 100644
index 000000000000..4204be03b94e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/tomli/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, flit-core
+, pytestCheckHook
+, python-dateutil
+}:
+
+buildPythonPackage rec {
+  pname = "tomli";
+  version = "1.0.4";
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "hukkin";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-ld0PsYnxVH3RbLG/NpvLDj9UhAe+QgwCQVXgGgqh8kE=";
+  };
+
+  nativeBuildInputs = [ flit-core ];
+
+  checkInputs = [
+    pytestCheckHook
+    python-dateutil
+  ];
+
+  pythonImportsCheck = [ "tomli" ];
+
+  meta = with lib; {
+    description = "A Python library for parsing TOML, fully compatible with TOML v1.0.0";
+    homepage = "https://github.com/hukkin/tomli";
+    license = licenses.mit;
+    maintainers = with maintainers; [ veehaitch ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/torchgpipe/default.nix b/nixpkgs/pkgs/development/python-modules/torchgpipe/default.nix
index dbfad336d0f3..2c289f852699 100644
--- a/nixpkgs/pkgs/development/python-modules/torchgpipe/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/torchgpipe/default.nix
@@ -2,7 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , isPy27
-, pytestrunner
+, pytest-runner
 , pytestCheckHook
 , pytorch
 }:
@@ -22,7 +22,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ pytorch ];
 
-  checkInputs = [ pytestrunner pytestCheckHook ];
+  checkInputs = [ pytest-runner pytestCheckHook ];
   disabledTests = [
     "test_inplace_on_requires_grad"
     "test_input_requiring_grad"
diff --git a/nixpkgs/pkgs/development/python-modules/tvdb_api/default.nix b/nixpkgs/pkgs/development/python-modules/tvdb_api/default.nix
index 2af25abf3ed7..1264f07c1829 100644
--- a/nixpkgs/pkgs/development/python-modules/tvdb_api/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tvdb_api/default.nix
@@ -26,6 +26,7 @@ buildPythonPackage rec {
     homepage = "https://github.com/dbr/tvdb_api";
     license = licenses.unlicense;
     maintainers = with maintainers; [ peterhoeg ];
+    # https://github.com/dbr/tvdb_api/issues/94
+    broken = true;
   };
-
 }
diff --git a/nixpkgs/pkgs/development/python-modules/twine/default.nix b/nixpkgs/pkgs/development/python-modules/twine/default.nix
index b78f38c46cf8..da5c4a9c3f51 100644
--- a/nixpkgs/pkgs/development/python-modules/twine/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/twine/default.nix
@@ -5,7 +5,7 @@
 , pyblake2
 , readme_renderer
 , requests
-, requests_toolbelt
+, requests-toolbelt
 , setuptools-scm
 , tqdm
 , colorama
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     pyblake2
     readme_renderer
     requests
-    requests_toolbelt
+    requests-toolbelt
     tqdm
     colorama
     rfc3986
diff --git a/nixpkgs/pkgs/development/python-modules/twitterapi/default.nix b/nixpkgs/pkgs/development/python-modules/twitterapi/default.nix
index 166e42ced821..cf3ec977d0ea 100644
--- a/nixpkgs/pkgs/development/python-modules/twitterapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/twitterapi/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "twitterapi";
-  version = "2.7.4";
+  version = "2.7.5";
 
   src = fetchFromGitHub {
     owner = "geduldig";
     repo = "TwitterAPI";
     rev = "v${version}";
-    sha256 = "sha256-HDPRpM1LDTtUbldzfCrsdh/GpbzNCVVUVGwohyMe/YE=";
+    sha256 = "1s5q3gzd69syk8khlyy7ap8gpymvhgqrlv3vp6vdmwnaafjvvyy3";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/typer/default.nix b/nixpkgs/pkgs/development/python-modules/typer/default.nix
index 61adcf9254ff..5b7b17c8bb84 100644
--- a/nixpkgs/pkgs/development/python-modules/typer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/typer/default.nix
@@ -4,8 +4,8 @@
 , click
 , pytestCheckHook
 , shellingham
-, pytestcov
-, pytest_xdist
+, pytest-cov
+, pytest-xdist
 , pytest-sugar
 , coverage
 , mypy
@@ -26,8 +26,8 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytestCheckHook
-    pytestcov
-    pytest_xdist
+    pytest-cov
+    pytest-xdist
     pytest-sugar
     shellingham
     coverage
diff --git a/nixpkgs/pkgs/development/python-modules/typesentry/default.nix b/nixpkgs/pkgs/development/python-modules/typesentry/default.nix
index ef3b1c78c399..a4d8125b5d61 100644
--- a/nixpkgs/pkgs/development/python-modules/typesentry/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/typesentry/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , colorama
 , pytest
-, pytestcov
+, pytest-cov
 }:
 
 buildPythonPackage {
@@ -19,7 +19,7 @@ buildPythonPackage {
   };
 
   propagatedBuildInputs = [ colorama ];
-  checkInputs = [ pytest pytestcov ];
+  checkInputs = [ pytest pytest-cov ];
   checkPhase = ''
     pytest
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/typesystem/default.nix b/nixpkgs/pkgs/development/python-modules/typesystem/default.nix
index c278680404ba..f7dcf33ea7fd 100644
--- a/nixpkgs/pkgs/development/python-modules/typesystem/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/typesystem/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , isPy27
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 , jinja2
 , pyyaml
 }:
@@ -27,7 +27,7 @@ buildPythonPackage rec {
 
   checkInputs = [
     pytestCheckHook
-    pytestcov
+    pytest-cov
   ];
 
   disabledTests = [
diff --git a/nixpkgs/pkgs/development/python-modules/uamqp/default.nix b/nixpkgs/pkgs/development/python-modules/uamqp/default.nix
index 8e4abc5bd0e3..b038eb5316a5 100644
--- a/nixpkgs/pkgs/development/python-modules/uamqp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/uamqp/default.nix
@@ -16,11 +16,11 @@
 
 buildPythonPackage rec {
   pname = "uamqp";
-  version = "1.4.0";
+  version = "1.4.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-XzfiLzRK1/DCmnxPW/H+KqnBuCbpYPawS2JnTQq+Vbw=";
+    sha256 = "sha256-JNGlpu2HvwTGV77WnAQFyvJImHesE2R+ZwMAlhlyk2U=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/uarray/default.nix b/nixpkgs/pkgs/development/python-modules/uarray/default.nix
index 32a877582342..4d7fe6b034b4 100644
--- a/nixpkgs/pkgs/development/python-modules/uarray/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/uarray/default.nix
@@ -7,7 +7,7 @@
 , astunparse
 , typing-extensions
 , pytestCheckHook
-, pytestcov
+, pytest-cov
 }:
 
 buildPythonPackage rec {
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     }
   )];
 
-  checkInputs = [ pytestCheckHook pytestcov ];
+  checkInputs = [ pytestCheckHook pytest-cov ];
   propagatedBuildInputs = [ matchpy numpy astunparse typing-extensions ];
 
   # Tests must be run from outside the source directory
diff --git a/nixpkgs/pkgs/development/python-modules/uncertainties/default.nix b/nixpkgs/pkgs/development/python-modules/uncertainties/default.nix
index b43927c063ec..c132f50dbea0 100644
--- a/nixpkgs/pkgs/development/python-modules/uncertainties/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/uncertainties/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "uncertainties";
-  version = "3.1.5";
+  version = "3.1.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "00z9xl40czmqk0vmxjvmjvwb41r893l4dad7nj1nh6blw3kw28li";
+    sha256 = "0b9y0v73ih142bygi66dxqx17j2x4dfvl7xnhmafj9yjmymbakbw";
   };
 
   propagatedBuildInputs = [ future ];
diff --git a/nixpkgs/pkgs/development/python-modules/urllib3/default.nix b/nixpkgs/pkgs/development/python-modules/urllib3/default.nix
index 6d73357e3bc2..1c25612a16d9 100644
--- a/nixpkgs/pkgs/development/python-modules/urllib3/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/urllib3/default.nix
@@ -19,11 +19,11 @@
 
 buildPythonPackage rec {
   pname = "urllib3";
-  version = "1.26.5";
+  version = "1.26.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-p6zQl3ElMl9Ra9qXNfpxQrkJqNAeiy5MgQjQmE5uAJg=";
+    sha256 = "sha256-9XtMFsYvonYLfj2Xw1slVRL7a1miWXMPNroyzp+ONC8=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/variants/default.nix b/nixpkgs/pkgs/development/python-modules/variants/default.nix
index a9345b374a7e..2055a4813447 100644
--- a/nixpkgs/pkgs/development/python-modules/variants/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/variants/default.nix
@@ -1,7 +1,7 @@
 { buildPythonPackage
 , isPy27
 , fetchPypi
-, pytestrunner
+, pytest-runner
 , setuptools-scm
 , singledispatch ? null
 , pytest
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    pytestrunner
+    pytest-runner
     setuptools-scm
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/vdirsyncer/default.nix b/nixpkgs/pkgs/development/python-modules/vdirsyncer/default.nix
index 1dd80b52d19b..cdd8ff02b97e 100644
--- a/nixpkgs/pkgs/development/python-modules/vdirsyncer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/vdirsyncer/default.nix
@@ -6,7 +6,7 @@
 , click
 , click-log
 , click-threading
-, requests_toolbelt
+, requests-toolbelt
 , requests
 , requests_oauthlib # required for google oauth sync
 , atomicwrites
@@ -34,7 +34,7 @@ buildPythonPackage rec {
     click-threading
     requests
     requests_oauthlib # required for google oauth sync
-    requests_toolbelt
+    requests-toolbelt
   ];
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/venusian/default.nix b/nixpkgs/pkgs/development/python-modules/venusian/default.nix
index 82e291ae4623..f13bd4cbdc43 100644
--- a/nixpkgs/pkgs/development/python-modules/venusian/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/venusian/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , isPy27
 , pytest
-, pytestcov
+, pytest-cov
 }:
 
 buildPythonPackage rec {
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     sha256 = "f6842b7242b1039c0c28f6feef29016e7e7dd3caaeb476a193acf737db31ee38";
   };
 
-  checkInputs = [ pytest pytestcov ];
+  checkInputs = [ pytest pytest-cov ];
 
   checkPhase = ''
     pytest
diff --git a/nixpkgs/pkgs/development/python-modules/vultr/default.nix b/nixpkgs/pkgs/development/python-modules/vultr/default.nix
index 975e4098112a..b6f8a407b234 100644
--- a/nixpkgs/pkgs/development/python-modules/vultr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/vultr/default.nix
@@ -5,26 +5,29 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.1.2";
+  version = "1.0.1";
   pname = "vultr";
 
   src = fetchFromGitHub {
-      owner = "spry-group";
-      repo = "python-vultr";
-      rev = version;
-      sha256 = "1qjvvr2v9gfnwskdl0ayazpcmiyw9zlgnijnhgq9mcri5gq9jw5h";
+    owner = "spry-group";
+    repo = "python-vultr";
+    rev = "v${version}";
+    sha256 = "00lc5hdhchvm0472p03019bp9541d8y2773xkjy8vblq9qhys8q7";
   };
 
-  propagatedBuildInputs = [ requests ];
+  propagatedBuildInputs = [
+    requests
+  ];
 
   # Tests disabled. They fail because they try to access the network
   doCheck = false;
 
+  pythonImportsCheck = [ "vultr" ];
+
   meta = with lib; {
     description = "Vultr.com API Client";
     homepage = "https://github.com/spry-group/python-vultr";
     license = licenses.mit;
     maintainers = with maintainers; [ lihop ];
   };
-
 }
diff --git a/nixpkgs/pkgs/development/python-modules/warrant/default.nix b/nixpkgs/pkgs/development/python-modules/warrant/default.nix
index a4bbee43d012..8da1cf55b54a 100644
--- a/nixpkgs/pkgs/development/python-modules/warrant/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/warrant/default.nix
@@ -17,7 +17,7 @@ buildPythonPackage {
   patches = [
     (fetchpatch {
       name = "fix-pip10-compat.patch";
-      url = " https://github.com/capless/warrant/commit/ae17d17d9888b9218a8facf6f6ad0bf4adae9a12.patch";
+      url = "https://github.com/capless/warrant/commit/ae17d17d9888b9218a8facf6f6ad0bf4adae9a12.patch";
       sha256 = "1lvqi2qfa3kxdz05ab2lc7xnd3piyvvnz9kla2jl4pchi876z17c";
     })
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/watchdog/default.nix b/nixpkgs/pkgs/development/python-modules/watchdog/default.nix
index e5d742bef28d..921ed5af4aa1 100644
--- a/nixpkgs/pkgs/development/python-modules/watchdog/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/watchdog/default.nix
@@ -13,11 +13,11 @@
 
 buildPythonPackage rec {
   pname = "watchdog";
-  version = "2.1.2";
+  version = "2.1.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-AjfbTZAkhZvqJ9DvtZ/nXu8pCDP9mIuOrXqHmwMIwts=";
+    sha256 = "sha256-5SNqjoYCq220uHNmTC01bDZas8rJb73sSXCtYWQV3UU=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
diff --git a/nixpkgs/pkgs/development/python-modules/weasyprint/default.nix b/nixpkgs/pkgs/development/python-modules/weasyprint/default.nix
index 8f946c47786d..ecc13b1d6377 100644
--- a/nixpkgs/pkgs/development/python-modules/weasyprint/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/weasyprint/default.nix
@@ -13,10 +13,10 @@
   fontconfig,
   lib, stdenv,
   pytest,
-  pytestrunner,
+  pytest-runner,
   pytest-isort,
   pytest-flake8,
-  pytestcov,
+  pytest-cov,
   isPy3k,
   substituteAll
 }:
@@ -39,7 +39,7 @@ buildPythonPackage rec {
         --replace '[tool:pytest]' '[tool:pytest]\nflake8-ignore = E501'
   '';
 
-  checkInputs = [ pytest pytestrunner pytest-isort pytest-flake8 pytestcov ];
+  checkInputs = [ pytest pytest-runner pytest-isort pytest-flake8 pytest-cov ];
 
   FONTCONFIG_FILE = "${fontconfig.out}/etc/fonts/fonts.conf";
 
diff --git a/nixpkgs/pkgs/development/python-modules/webexteamssdk/default.nix b/nixpkgs/pkgs/development/python-modules/webexteamssdk/default.nix
index 21c9e352bf0d..e70cdfd96c86 100644
--- a/nixpkgs/pkgs/development/python-modules/webexteamssdk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/webexteamssdk/default.nix
@@ -4,7 +4,7 @@
 , future
 , pyjwt
 , requests
-, requests_toolbelt
+, requests-toolbelt
 }:
 
 buildPythonPackage rec {
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     future
     pyjwt
     requests
-    requests_toolbelt
+    requests-toolbelt
   ];
 
   # Tests require a Webex Teams test domain
diff --git a/nixpkgs/pkgs/development/python-modules/wled/default.nix b/nixpkgs/pkgs/development/python-modules/wled/default.nix
index 6f06c8dba90b..e38d43ef56b6 100644
--- a/nixpkgs/pkgs/development/python-modules/wled/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/wled/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "wled";
-  version = "0.6.0";
+  version = "0.7.1";
   disabled = pythonOlder "3.8";
   format = "pyproject";
 
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "frenck";
     repo = "python-wled";
     rev = "v${version}";
-    sha256 = "sha256-aFBcSGPCT49TbqzjUv/d8agdPOCC090rNxDnE9y91Pk=";
+    sha256 = "02xrml9mpq3akwyryg1m7xjmgnlgi5kjvx7vkq6110ai0f9hzpwi";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/word2vec/default.nix b/nixpkgs/pkgs/development/python-modules/word2vec/default.nix
index b078231c9429..1272916d41f7 100644
--- a/nixpkgs/pkgs/development/python-modules/word2vec/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/word2vec/default.nix
@@ -9,7 +9,7 @@
 , setuptools-scm
 , gcc
 , pytest
-, pytestcov
+, pytest-cov
 , isPy27
 }:
 let
@@ -32,7 +32,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ cython numpy scikit-learn six ];
 
-  checkInputs = [ pytest pytestcov ];
+  checkInputs = [ pytest pytest-cov ];
 
   # Checks require test data downloaded separately
   # See project source Makefile:test-data rule for reference
diff --git a/nixpkgs/pkgs/development/python-modules/wordcloud/default.nix b/nixpkgs/pkgs/development/python-modules/wordcloud/default.nix
index 80f22efbda85..e04f17c214df 100644
--- a/nixpkgs/pkgs/development/python-modules/wordcloud/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/wordcloud/default.nix
@@ -4,7 +4,7 @@
 , numpy
 , pillow
 , cython
-, pytestcov
+, pytest-cov
 , pytest
 , fetchpatch
 }:
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ matplotlib numpy pillow ];
 
   # Tests require extra dependencies
-  checkInputs = [ mock pytest pytestcov ];
+  checkInputs = [ mock pytest pytest-cov ];
 
   checkPhase = ''
     PATH=$out/bin:$PATH pytest test
diff --git a/nixpkgs/pkgs/development/python-modules/xdis/default.nix b/nixpkgs/pkgs/development/python-modules/xdis/default.nix
index 59cad86606fd..aec8b13a122c 100644
--- a/nixpkgs/pkgs/development/python-modules/xdis/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xdis/default.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "xdis";
-  version = "5.0.9";
+  version = "5.0.10";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "rocky";
     repo = "python-xdis";
     rev = version;
-    sha256 = "sha256-joKPTEq0UabXMyld0DHrhC1D/Om2B5st0qa2F9r0muA=";
+    sha256 = "sha256-/3qyMgliua7W4Va1HdRbHyiR/eBQzHK+GrZVAMvMhLA=";
   };
 
   checkInputs = [ pytest ];
diff --git a/nixpkgs/pkgs/development/python-modules/xml2rfc/default.nix b/nixpkgs/pkgs/development/python-modules/xml2rfc/default.nix
index 9837128a7fdc..c975218e5b1d 100644
--- a/nixpkgs/pkgs/development/python-modules/xml2rfc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xml2rfc/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchPypi, buildPythonPackage, pythonAtLeast, intervaltree, pyflakes, requests, lxml, google-i18n-address
-, pycountry, html5lib, six, kitchen, pypdf2, dict2xml, weasyprint, pyyaml, jinja2, ConfigArgParse, appdirs
+, pycountry, html5lib, six, kitchen, pypdf2, dict2xml, weasyprint, pyyaml, jinja2, configargparse, appdirs
 }:
 
 buildPythonPackage rec {
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     pypdf2
     dict2xml
     weasyprint
-    ConfigArgParse
+    configargparse
     appdirs
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/yalexs/default.nix b/nixpkgs/pkgs/development/python-modules/yalexs/default.nix
index e20536b30eb8..502eb5c4f68d 100644
--- a/nixpkgs/pkgs/development/python-modules/yalexs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/yalexs/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "yalexs";
-  version = "1.1.11";
+  version = "1.1.12";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "bdraco";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-fVUYrzIcW4jbxdhS/Bh8eu+aJPFOqj0LXjoQKw+FZdg=";
+    sha256 = "sha256-J7jh8FufGQzYbVhdOPbIpZCjfWZV6oOShy82QXL82b4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/yarl/default.nix b/nixpkgs/pkgs/development/python-modules/yarl/default.nix
index 0aeb85e6ca2d..66d219f9348e 100644
--- a/nixpkgs/pkgs/development/python-modules/yarl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/yarl/default.nix
@@ -3,7 +3,7 @@
 , buildPythonPackage
 , pythonOlder
 , multidict
-, pytestrunner
+, pytest-runner
 , pytest
 , typing-extensions
 , idna
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     sha256 = "8a9066529240171b68893d60dca86a763eae2139dd42f42106b03cf4b426bf10";
   };
 
-  checkInputs = [ pytest pytestrunner ];
+  checkInputs = [ pytest pytest-runner ];
   propagatedBuildInputs = [ multidict idna ]
     ++ lib.optionals (pythonOlder "3.8") [
       typing-extensions
diff --git a/nixpkgs/pkgs/development/python-modules/yfinance/default.nix b/nixpkgs/pkgs/development/python-modules/yfinance/default.nix
index 81250f98a64d..9a64572e3866 100644
--- a/nixpkgs/pkgs/development/python-modules/yfinance/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/yfinance/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "yfinance";
-  version = "0.1.59";
+  version = "0.1.61";
 
   # GitHub source releases aren't tagged
   src = fetchPypi {
     inherit pname version;
-    sha256 = "fe4dc46807eceadc6604bf51ece7297b752dc5402a38a87385094fbfc7565fa0";
+    sha256 = "sha256-+tc0rwweGFaBkrl7LBHdsff98PuupqovKh4nRP3hRJ0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/zeep/default.nix b/nixpkgs/pkgs/development/python-modules/zeep/default.nix
index 7c72d2500346..16fb27774631 100644
--- a/nixpkgs/pkgs/development/python-modules/zeep/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zeep/default.nix
@@ -19,7 +19,7 @@
 , pythonOlder
 , pytz
 , requests
-, requests_toolbelt
+, requests-toolbelt
 , requests-file
 , requests-mock
 , xmlsec
@@ -47,7 +47,7 @@ buildPythonPackage rec {
     lxml
     pytz
     requests
-    requests_toolbelt
+    requests-toolbelt
     requests-file
     xmlsec
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/zeroconf/default.nix b/nixpkgs/pkgs/development/python-modules/zeroconf/default.nix
index 313f121510e1..fc869efe087d 100644
--- a/nixpkgs/pkgs/development/python-modules/zeroconf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zeroconf/default.nix
@@ -1,32 +1,41 @@
 { stdenv
 , lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , ifaddr
+, pytest-asyncio
 , pythonOlder
 , pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "zeroconf";
-  version = "0.31.0";
+  version = "0.32.1";
+  format = "setuptools";
   disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "sha256-U6GAJIRxxvgb0f/8vOA+2T19jq8QkFyRIaweqZbRmEQ=";
+  # no tests in pypi sdist
+  src = fetchFromGitHub {
+    owner = "jstasiak";
+    repo = "python-zeroconf";
+    rev = version;
+    sha256 = "02fvh5ii73rf6pg9x93pc0sl1isx2ivg3d80l6s8h35w2f4g4azf";
   };
 
-  propagatedBuildInputs = [ ifaddr ];
-
-  checkInputs = [ pytestCheckHook ];
+  propagatedBuildInputs = [
+    ifaddr
+  ];
 
-  pytestFlagsArray = [ "zeroconf/test.py" ];
+  checkInputs = [
+    pytest-asyncio
+    pytestCheckHook
+  ];
 
   disabledTests = [
-    # disable tests that expect some sort of networking in the build container
+    # tests that require network interaction
     "test_close_multiple_times"
     "test_launch_and_close"
+    "test_launch_and_close_context_manager"
     "test_launch_and_close_v4_v6"
     "test_launch_and_close_v6_only"
     "test_integration_with_listener_ipv6"
@@ -36,7 +45,10 @@ buildPythonPackage rec {
 
   __darwinAllowLocalNetworking = true;
 
-  pythonImportsCheck = [ "zeroconf" ];
+  pythonImportsCheck = [
+    "zeroconf"
+    "zeroconf.asyncio"
+  ];
 
   meta = with lib; {
     description = "Python implementation of multicast DNS service discovery";
diff --git a/nixpkgs/pkgs/development/python-modules/zfec/default.nix b/nixpkgs/pkgs/development/python-modules/zfec/default.nix
index bcec7a092511..391e1656749a 100644
--- a/nixpkgs/pkgs/development/python-modules/zfec/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zfec/default.nix
@@ -1,8 +1,9 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, setuptoolsDarcs
 , pyutil
+, setuptoolsTrial
+, twisted
 }:
 
 buildPythonPackage rec {
@@ -14,16 +15,17 @@ buildPythonPackage rec {
     sha256 = "6033b2f3cc3edacf3f7eeed5f258c1ebf8a1d7e5e35b623db352512ce564e5ca";
   };
 
-  buildInputs = [ setuptoolsDarcs ];
   propagatedBuildInputs = [ pyutil ];
 
+  checkInputs = [ setuptoolsTrial twisted ];
+
   # argparse is in the stdlib but zfec doesn't know that.
   postPatch = ''
     sed -i -e '/argparse/d' setup.py
   '';
 
   meta = with lib; {
-    homepage = "http://allmydata.org/trac/zfec";
+    homepage = "https://github.com/tahoe-lafs/zfec";
     description = "Zfec, a fast erasure codec which can be used with the command-line, C, Python, or Haskell";
     longDescription = ''
       Fast, portable, programmable erasure coding a.k.a. "forward
@@ -34,6 +36,7 @@ buildPythonPackage rec {
       and Haskell API.
     '';
     license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ prusnak ];
   };
 
 }
diff --git a/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix b/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix
index 37fbc87f3f79..89db9de12b75 100644
--- a/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "zha-quirks";
-  version = "0.0.58";
+  version = "0.0.59";
 
   src = fetchFromGitHub {
     owner = "zigpy";
     repo = "zha-device-handlers";
     rev = version;
-    sha256 = "sha256-QU5ssbnT3/gioQ3vM9zvlbwxqSWyKIylsV9NuFkNe+Q=";
+    sha256 = "1x6s44apl393as847ghbqr26h0y0h4w3wp53bs0m2nfbzjwin3i7";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/zigpy-znp/default.nix b/nixpkgs/pkgs/development/python-modules/zigpy-znp/default.nix
index 894539a3e2e0..71f102f36671 100644
--- a/nixpkgs/pkgs/development/python-modules/zigpy-znp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zigpy-znp/default.nix
@@ -4,6 +4,7 @@
 , buildPythonPackage
 , coloredlogs
 , fetchFromGitHub
+, fetchpatch
 , jsonschema
 , pyserial
 , pyserial-asyncio
@@ -27,6 +28,14 @@ buildPythonPackage rec {
     sha256 = "152d803jfrvkj4namni41fnbbnq85wd7zsqjhmkwrrmn2gvqjiln";
   };
 
+  patches = [
+    (fetchpatch {
+      # Fixes tests/application/test_joining.py::test_new_device_join_and_bind_complex[FormedLaunchpadCC26X2R1]
+      url = "https://github.com/zigpy/zigpy-znp/commit/582cffb68fdf0c5bc14d55efca2a683222d7fed7.patch";
+      sha256 = "0qsfziqqjnnf21gdqv3wwk50vni46i0h1liw5ysq641yjfnas9az";
+    })
+  ];
+
   propagatedBuildInputs = [
     async-timeout
     coloredlogs
diff --git a/nixpkgs/pkgs/development/python-modules/zigpy/default.nix b/nixpkgs/pkgs/development/python-modules/zigpy/default.nix
index f03b9e96759e..2778581566fa 100644
--- a/nixpkgs/pkgs/development/python-modules/zigpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zigpy/default.nix
@@ -15,13 +15,13 @@
 
 buildPythonPackage rec {
   pname = "zigpy";
-  version = "0.33.0";
+  version = "0.35.1";
 
   src = fetchFromGitHub {
     owner = "zigpy";
     repo = "zigpy";
     rev = version;
-    sha256 = "sha256-oEf4GnvbQ6LY4NaNFWRmnNz1TK2tMpIVUxskhU38g4w=";
+    sha256 = "0y5sv8zzlkjwimknpld3fakl22cfkqv0cnw0immb7k4zb9xmls2v";
   };
 
   propagatedBuildInputs = [
@@ -40,6 +40,21 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  disabledTests = [
+    # RuntimeError: coroutine 'test_remigrate_forcibly_downgraded_v4' was never awaited
+    "test_remigrate_forcibly_downgraded_v4"
+    # RuntimeError: Event loop is closed
+    "test_startup"
+  ];
+
+  pythonImportsCheck = [
+    "zigpy.application"
+    "zigpy.config"
+    "zigpy.exceptions"
+    "zigpy.types"
+    "zigpy.zcl"
+  ];
+
   meta = with lib; {
     description = "Library implementing a ZigBee stack";
     homepage = "https://github.com/zigpy/zigpy";
diff --git a/nixpkgs/pkgs/development/ruby-modules/bundix/default.nix b/nixpkgs/pkgs/development/ruby-modules/bundix/default.nix
index 17f5d6553f68..d4cfe217b83f 100644
--- a/nixpkgs/pkgs/development/ruby-modules/bundix/default.nix
+++ b/nixpkgs/pkgs/development/ruby-modules/bundix/default.nix
@@ -28,7 +28,6 @@ buildRubyGem rec {
   '';
 
   meta = {
-    inherit version;
     description = "Creates Nix packages from Gemfiles";
     longDescription = ''
       This is a tool that converts Gemfile.lock files to nix expressions.
diff --git a/nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix b/nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix
index 5f054e6b9962..bc70f30f9596 100644
--- a/nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix
+++ b/nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix
@@ -25,7 +25,7 @@
 , cairo, re2, rake, gobject-introspection, gdk-pixbuf, zeromq, czmq, graphicsmagick, libcxx
 , file, libvirt, glib, vips, taglib, libopus, linux-pam, libidn, protobuf, fribidi, harfbuzz
 , bison, flex, pango, python3, patchelf, binutils, freetds, wrapGAppsHook, atk
-, bundler, libsass, libselinux, libsepol, shared-mime-info, libthai, libdatrie
+, bundler, libsass, libexif, libselinux, libsepol, shared-mime-info, libthai, libdatrie
 , CoreServices, DarwinTools, cctools
 }@args:
 
@@ -187,6 +187,11 @@ in
     buildInputs = [ openssl ];
   };
 
+  exif = attrs: {
+    buildFlags = [ "--with-exif-dir=${libexif}" ];
+    buildInputs = [ libexif ];
+  };
+
   ffi = attrs: {
     nativeBuildInputs = [ pkg-config ];
     buildInputs = [ libffi ];
diff --git a/nixpkgs/pkgs/development/ruby-modules/gem/default.nix b/nixpkgs/pkgs/development/ruby-modules/gem/default.nix
index c8dba5142082..7ba8c70a9805 100644
--- a/nixpkgs/pkgs/development/ruby-modules/gem/default.nix
+++ b/nixpkgs/pkgs/development/ruby-modules/gem/default.nix
@@ -242,7 +242,10 @@ stdenv.mkDerivation ((builtins.removeAttrs attrs ["source"]) // {
   propagatedUserEnvPkgs = gemPath ++ propagatedUserEnvPkgs;
 
   passthru = passthru // { isRubyGem = true; };
-  inherit meta;
+  meta = {
+    # default to Ruby's platforms
+    platforms = ruby.meta.platforms;
+  } // meta;
 })
 
 )
diff --git a/nixpkgs/pkgs/development/ruby-modules/solargraph/Gemfile b/nixpkgs/pkgs/development/ruby-modules/solargraph/Gemfile
deleted file mode 100644
index 388f96a59b20..000000000000
--- a/nixpkgs/pkgs/development/ruby-modules/solargraph/Gemfile
+++ /dev/null
@@ -1,2 +0,0 @@
-source 'https://rubygems.org'
-gem 'solargraph'
diff --git a/nixpkgs/pkgs/development/ruby-modules/solargraph/Gemfile.lock b/nixpkgs/pkgs/development/ruby-modules/solargraph/Gemfile.lock
deleted file mode 100644
index f5e0b5a0a9ea..000000000000
--- a/nixpkgs/pkgs/development/ruby-modules/solargraph/Gemfile.lock
+++ /dev/null
@@ -1,64 +0,0 @@
-GEM
-  remote: https://rubygems.org/
-  specs:
-    ast (2.4.1)
-    backport (1.1.2)
-    benchmark (0.1.1)
-    e2mmap (0.1.0)
-    jaro_winkler (1.5.4)
-    kramdown (2.3.0)
-      rexml
-    kramdown-parser-gfm (1.1.0)
-      kramdown (~> 2.0)
-    mini_portile2 (2.5.0)
-    nokogiri (1.11.1)
-      mini_portile2 (~> 2.5.0)
-      racc (~> 1.4)
-    parallel (1.20.1)
-    parser (2.7.2.0)
-      ast (~> 2.4.1)
-    racc (1.5.2)
-    rainbow (3.0.0)
-    regexp_parser (2.0.3)
-    reverse_markdown (2.0.0)
-      nokogiri
-    rexml (3.2.4)
-    rubocop (1.7.0)
-      parallel (~> 1.10)
-      parser (>= 2.7.1.5)
-      rainbow (>= 2.2.2, < 4.0)
-      regexp_parser (>= 1.8, < 3.0)
-      rexml
-      rubocop-ast (>= 1.2.0, < 2.0)
-      ruby-progressbar (~> 1.7)
-      unicode-display_width (>= 1.4.0, < 2.0)
-    rubocop-ast (1.4.0)
-      parser (>= 2.7.1.5)
-    ruby-progressbar (1.11.0)
-    solargraph (0.40.1)
-      backport (~> 1.1)
-      benchmark
-      bundler (>= 1.17.2)
-      e2mmap
-      jaro_winkler (~> 1.5)
-      kramdown (~> 2.3)
-      kramdown-parser-gfm (~> 1.1)
-      parser (~> 2.3)
-      reverse_markdown (>= 1.0.5, < 3)
-      rubocop (>= 0.52)
-      thor (~> 1.0)
-      tilt (~> 2.0)
-      yard (~> 0.9, >= 0.9.24)
-    thor (1.0.1)
-    tilt (2.0.10)
-    unicode-display_width (1.7.0)
-    yard (0.9.26)
-
-PLATFORMS
-  ruby
-
-DEPENDENCIES
-  solargraph
-
-BUNDLED WITH
-   2.1.4
diff --git a/nixpkgs/pkgs/development/ruby-modules/solargraph/default.nix b/nixpkgs/pkgs/development/ruby-modules/solargraph/default.nix
deleted file mode 100644
index 356224c02309..000000000000
--- a/nixpkgs/pkgs/development/ruby-modules/solargraph/default.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ lib, bundlerApp, bundlerUpdateScript }:
-
-bundlerApp {
-  pname = "solargraph";
-  exes = [ "solargraph" ];
-  gemdir = ./.;
-
-  passthru.updateScript = bundlerUpdateScript "solargraph";
-
-  meta = with lib; {
-    description = "A Ruby language server";
-    homepage = "https://solargraph.org/";
-    license = licenses.mit;
-    maintainers = with maintainers; [ nicknovitski angristan ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/ruby-modules/solargraph/gemset.nix b/nixpkgs/pkgs/development/ruby-modules/solargraph/gemset.nix
deleted file mode 100644
index cd9575f12830..000000000000
--- a/nixpkgs/pkgs/development/ruby-modules/solargraph/gemset.nix
+++ /dev/null
@@ -1,250 +0,0 @@
-{
-  ast = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1l3468czzjmxl93ap40hp7z94yxp4nbag0bxqs789bm30md90m2a";
-      type = "gem";
-    };
-    version = "2.4.1";
-  };
-  backport = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1xmjljpyx5ly078gi0lmmgkv4y0msxxa3hmv74bzxzp3l8qbn5vc";
-      type = "gem";
-    };
-    version = "1.1.2";
-  };
-  benchmark = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1jvrl7400fv7v2jjri1r7ilj3sri36hzipwwgpn5psib4c9c59c6";
-      type = "gem";
-    };
-    version = "0.1.1";
-  };
-  e2mmap = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0n8gxjb63dck3vrmsdcqqll7xs7f3wk78mw8w0gdk9wp5nx6pvj5";
-      type = "gem";
-    };
-    version = "0.1.0";
-  };
-  jaro_winkler = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1y8l6k34svmdyqxya3iahpwbpvmn3fswhwsvrz0nk1wyb8yfihsh";
-      type = "gem";
-    };
-    version = "1.5.4";
-  };
-  kramdown = {
-    dependencies = ["rexml"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1vmw752c26ny2jwl0npn0gbyqwgz4hdmlpxnsld9qi9xhk5b1qh7";
-      type = "gem";
-    };
-    version = "2.3.0";
-  };
-  kramdown-parser-gfm = {
-    dependencies = ["kramdown"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0a8pb3v951f4x7h968rqfsa19c8arz21zw1vaj42jza22rap8fgv";
-      type = "gem";
-    };
-    version = "1.1.0";
-  };
-  mini_portile2 = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1hdbpmamx8js53yk3h8cqy12kgv6ca06k0c9n3pxh6b6cjfs19x7";
-      type = "gem";
-    };
-    version = "2.5.0";
-  };
-  nokogiri = {
-    dependencies = ["mini_portile2" "racc"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1ajwkqr28hwqbyl1l3czx4a34c88acxywyqp8cjyy0zgsd6sbhj2";
-      type = "gem";
-    };
-    version = "1.11.1";
-  };
-  parallel = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0055br0mibnqz0j8wvy20zry548dhkakws681bhj3ycb972awkzd";
-      type = "gem";
-    };
-    version = "1.20.1";
-  };
-  parser = {
-    dependencies = ["ast"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1f7gmm60yla325wlnd3qkxs59qm2y0aan8ljpg6k18rwzrrfil6z";
-      type = "gem";
-    };
-    version = "2.7.2.0";
-  };
-  racc = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "178k7r0xn689spviqzhvazzvxfq6fyjldxb3ywjbgipbfi4s8j1g";
-      type = "gem";
-    };
-    version = "1.5.2";
-  };
-  rainbow = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
-      type = "gem";
-    };
-    version = "3.0.0";
-  };
-  regexp_parser = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0zm86k9q8m5jkcnpb1f93wsvc57saldfj8czxkx1aw031i95inip";
-      type = "gem";
-    };
-    version = "2.0.3";
-  };
-  reverse_markdown = {
-    dependencies = ["nokogiri"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0w6fv779542vdliq2kmikfhymjv55z8mgzblkfjdy2agl07da9c6";
-      type = "gem";
-    };
-    version = "2.0.0";
-  };
-  rexml = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1mkvkcw9fhpaizrhca0pdgjcrbns48rlz4g6lavl5gjjq3rk2sq3";
-      type = "gem";
-    };
-    version = "3.2.4";
-  };
-  rubocop = {
-    dependencies = ["parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "12kkyzyzh30mi9xs52lc1pjki1al4x9acdaikj40wslhpwp1ng1l";
-      type = "gem";
-    };
-    version = "1.7.0";
-  };
-  rubocop-ast = {
-    dependencies = ["parser"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1qvfp567aprjgcwj757p55ynj0dx2b3c3hd76za9z3c43sphprcj";
-      type = "gem";
-    };
-    version = "1.4.0";
-  };
-  ruby-progressbar = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "02nmaw7yx9kl7rbaan5pl8x5nn0y4j5954mzrkzi9i3dhsrps4nc";
-      type = "gem";
-    };
-    version = "1.11.0";
-  };
-  solargraph = {
-    dependencies = ["backport" "benchmark" "e2mmap" "jaro_winkler" "kramdown" "kramdown-parser-gfm" "parser" "reverse_markdown" "rubocop" "thor" "tilt" "yard"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0q0dh4da4qygn92vjwqz0w6m4pdhs2zdmrx3zlmxmghizh32ghk7";
-      type = "gem";
-    };
-    version = "0.40.1";
-  };
-  thor = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1xbhkmyhlxwzshaqa7swy2bx6vd64mm0wrr8g3jywvxy7hg0cwkm";
-      type = "gem";
-    };
-    version = "1.0.1";
-  };
-  tilt = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0rn8z8hda4h41a64l0zhkiwz2vxw9b1nb70gl37h1dg2k874yrlv";
-      type = "gem";
-    };
-    version = "2.0.10";
-  };
-  unicode-display_width = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "06i3id27s60141x6fdnjn5rar1cywdwy64ilc59cz937303q3mna";
-      type = "gem";
-    };
-    version = "1.7.0";
-  };
-  yard = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0qzr5j1a1cafv81ib3i51qyl8jnmwdxlqi3kbiraldzpbjh4ln9h";
-      type = "gem";
-    };
-    version = "0.9.26";
-  };
-}
diff --git a/nixpkgs/pkgs/development/ruby-modules/with-packages/Gemfile b/nixpkgs/pkgs/development/ruby-modules/with-packages/Gemfile
index bfb52fe72e7a..b3ddb5b13106 100644
--- a/nixpkgs/pkgs/development/ruby-modules/with-packages/Gemfile
+++ b/nixpkgs/pkgs/development/ruby-modules/with-packages/Gemfile
@@ -126,6 +126,7 @@ source 'https://rubygems.org' do
   gem 'semian'
   gem 'sequel'
   gem 'sequel_pg'
+  gem 'solargraph'
   gem 'simplecov'
   gem 'sinatra'
   gem 'slop'
diff --git a/nixpkgs/pkgs/development/ruby-modules/with-packages/default.nix b/nixpkgs/pkgs/development/ruby-modules/with-packages/default.nix
index 7d49b0e0134d..5be820b60e30 100644
--- a/nixpkgs/pkgs/development/ruby-modules/with-packages/default.nix
+++ b/nixpkgs/pkgs/development/ruby-modules/with-packages/default.nix
@@ -57,7 +57,7 @@ let
       nativeBuildInputs = [ makeWrapper ];
       buildInputs = [ selected ruby ];
 
-      unpackPhase = ":";
+      dontUnpack = true;
 
       installPhase = ''
         for i in ${ruby}/bin/* ${gemEnv}/bin/*; do
diff --git a/nixpkgs/pkgs/development/tools/analysis/cpplint/default.nix b/nixpkgs/pkgs/development/tools/analysis/cpplint/default.nix
index 61aee215031a..f880d8fa7b7f 100644
--- a/nixpkgs/pkgs/development/tools/analysis/cpplint/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/cpplint/default.nix
@@ -16,7 +16,7 @@ python3Packages.buildPythonApplication rec {
     patchShebangs cpplint_unittest.py
   '';
 
-  checkInputs = with python3Packages; [ pytest pytestrunner ];
+  checkInputs = with python3Packages; [ pytest pytest-runner ];
   checkPhase = ''
     ./cpplint_unittest.py
   '';
diff --git a/nixpkgs/pkgs/development/tools/analysis/emma/default.nix b/nixpkgs/pkgs/development/tools/analysis/emma/default.nix
index a1e88d8ebfb8..43970497bb48 100644
--- a/nixpkgs/pkgs/development/tools/analysis/emma/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/emma/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl, unzip}:
 
-stdenv.mkDerivation {
-  name = "emma-2.0.5312";
+stdenv.mkDerivation rec {
+  pname = "emma";
+  version = "2.0.5312";
 
   src = fetchurl {
-    url = "mirror://sourceforge/emma/emma-2.0.5312.zip";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.zip";
     sha256 = "0xxy39s2lvgs56vicjzpcz936l1vjaplliwa0dm7v3iyvw6jn7vj";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/analysis/findbugs/default.nix b/nixpkgs/pkgs/development/tools/analysis/findbugs/default.nix
index 265f62904530..e07d98998efe 100644
--- a/nixpkgs/pkgs/development/tools/analysis/findbugs/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/findbugs/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "findbugs-3.0.1";
+  pname = "findbugs";
+  version = "3.0.1";
 
   src = fetchurl {
-    url = "mirror://sourceforge/findbugs/${name}.tar.gz";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
     sha256 = "06b46fz4nid7qvm36r66zw01fr87y4jyz21ixw27b8hkqah0s3p8";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/analysis/flow/default.nix b/nixpkgs/pkgs/development/tools/analysis/flow/default.nix
index 599908b49316..f602f1b1813b 100644
--- a/nixpkgs/pkgs/development/tools/analysis/flow/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/flow/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flow";
-  version = "0.154.0";
+  version = "0.155.1";
 
   src = fetchFromGitHub {
     owner  = "facebook";
     repo   = "flow";
     rev    = "refs/tags/v${version}";
-    sha256 = "sha256-QqTHhcEgMfq4+1G3aSAvcyU26kNKiFc3vOTyFRo8l40=";
+    sha256 = "sha256-tlnABN/mcUsR8tgqgrQT+t6joo6wJMeGKtcbjyiVbbE=";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/development/tools/analysis/frama-c/default.nix b/nixpkgs/pkgs/development/tools/analysis/frama-c/default.nix
index ab82aed8e5e6..9d87cb30520a 100644
--- a/nixpkgs/pkgs/development/tools/analysis/frama-c/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/frama-c/default.nix
@@ -31,12 +31,12 @@ in
 
 stdenv.mkDerivation rec {
   pname = "frama-c";
-  version = "23.0-rc1";
+  version = "23.0";
   slang   = "Vanadium";
 
   src = fetchurl {
-    url    = "http://frama-c.com/download/frama-c-${version}-${slang}.tar.gz";
-    sha256 = "1z9f9a217bav3vfc99kq57d5rza6j7hr91ndviwkgcaib6wc5hcv";
+    url    = "https://frama-c.com/download/frama-c-${version}-${slang}.tar.gz";
+    sha256 = "0pdm3y2nfyjhpnicv1pg9j48llq86dmb591d2imnafp4xfqani0s";
   };
 
   preConfigure = lib.optionalString stdenv.cc.isClang "configureFlagsArray=(\"--with-cpp=clang -E -C\")";
diff --git a/nixpkgs/pkgs/development/tools/analysis/garcosim/tracefilegen/default.nix b/nixpkgs/pkgs/development/tools/analysis/garcosim/tracefilegen/default.nix
index 8984a395818b..f7f5e84c012b 100644
--- a/nixpkgs/pkgs/development/tools/analysis/garcosim/tracefilegen/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/garcosim/tracefilegen/default.nix
@@ -2,7 +2,8 @@
 
 stdenv.mkDerivation rec {
 
-  name = "tracefilegen-2017-05-13";
+  pname = "tracefilegen";
+  version = "unstable-2017-05-13";
 
   src = fetchFromGitHub {
     owner = "GarCoSim";
@@ -17,8 +18,8 @@ stdenv.mkDerivation rec {
 
   installPhase = ''
     install -Dm755 TraceFileGen $out/bin/TraceFileGen
-    mkdir -p $out/share/doc/${name}/
-    cp -ar $src/Documentation/html $out/share/doc/${name}/.
+    mkdir -p $out/share/doc/${pname}-${version}/
+    cp -ar $src/Documentation/html $out/share/doc/${pname}-${version}/.
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/analysis/garcosim/tracefilesim/default.nix b/nixpkgs/pkgs/development/tools/analysis/garcosim/tracefilesim/default.nix
index 3f97485cbfa4..a76b6b9239e1 100644
--- a/nixpkgs/pkgs/development/tools/analysis/garcosim/tracefilesim/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/garcosim/tracefilesim/default.nix
@@ -1,11 +1,13 @@
-{ lib, stdenv, fetchgit }:
+{ lib, stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation {
 
-  name = "tracefilesim-2015-11-07";
+  pname = "tracefilesim";
+  version = "unstable-2015-11-07";
 
-  src = fetchgit {
-    url = "https://github.com/GarCoSim/TraceFileSim.git";
+  src = fetchFromGitHub {
+    owner = "GarCoSim";
+    repo = "TraceFileSim";
     rev = "368aa6b1d6560e7ecbd16fca47000c8f528f3da2";
     sha256 = "156m92k38ap4bzidbr8dzl065rni8lrib71ih88myk9z5y1x5nxm";
   };
diff --git a/nixpkgs/pkgs/development/tools/analysis/makefile2graph/default.nix b/nixpkgs/pkgs/development/tools/analysis/makefile2graph/default.nix
index 1f9e2ba3c562..5c286e629547 100644
--- a/nixpkgs/pkgs/development/tools/analysis/makefile2graph/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/makefile2graph/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub, makeWrapper, bash, gnumake }:
 
-stdenv.mkDerivation {
-  name = "makefile2graph-2018-01-03";
+stdenv.mkDerivation rec {
+  pname = "makefile2graph";
+  version = "unstable-2018-01-03";
 
   src = fetchFromGitHub {
     owner = "lindenb";
diff --git a/nixpkgs/pkgs/development/tools/analysis/radare2/default.nix b/nixpkgs/pkgs/development/tools/analysis/radare2/default.nix
index a8e7c10ce44f..5c239cfc63e1 100644
--- a/nixpkgs/pkgs/development/tools/analysis/radare2/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/radare2/default.nix
@@ -86,6 +86,5 @@ stdenv.mkDerivation rec {
     license = lib.licenses.gpl2Plus;
     maintainers = with lib.maintainers; [ raskin makefu mic92 ];
     platforms = with lib.platforms; linux;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/analysis/rizin/default.nix b/nixpkgs/pkgs/development/tools/analysis/rizin/default.nix
index 4e9543ef371d..ff7717312f87 100644
--- a/nixpkgs/pkgs/development/tools/analysis/rizin/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/rizin/default.nix
@@ -77,6 +77,5 @@ stdenv.mkDerivation rec {
     license = lib.licenses.gpl3Plus;
     maintainers = with lib.maintainers; [ raskin makefu mic92 ];
     platforms = with lib.platforms; linux;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/analysis/smatch/default.nix b/nixpkgs/pkgs/development/tools/analysis/smatch/default.nix
index 2780c8552fc0..82a32504d73a 100644
--- a/nixpkgs/pkgs/development/tools/analysis/smatch/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/smatch/default.nix
@@ -4,12 +4,12 @@
 , llvm, libxml2
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "smatch";
   version = "20120924";
 
   src = fetchgit {
-    url = "git://repo.or.cz/smatch.git";
+    url = "git://repo.or.cz/${pname}.git";
     rev = "23656e3e578b700cbf96d043f039e6341a3ba5b9";
     sha256 = "0r43qi6vryqg450fj73yjwbb7gzcgx64rhrhb3r1m6a252srijiy";
   };
diff --git a/nixpkgs/pkgs/development/tools/analysis/sparse/default.nix b/nixpkgs/pkgs/development/tools/analysis/sparse/default.nix
index e0d9840472b4..66b457f9902a 100644
--- a/nixpkgs/pkgs/development/tools/analysis/sparse/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/sparse/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, pkg-config, libxml2, llvm }:
 
 stdenv.mkDerivation rec {
-  name = "sparse-0.5.0";
+  pname = "sparse";
+  version = "0.5.0";
 
   src = fetchurl {
-    url = "mirror://kernel/software/devel/sparse/dist/${name}.tar.xz";
+    url = "mirror://kernel/software/devel/sparse/dist/${pname}-${version}.tar.xz";
     sha256 = "1mc86jc5xdrdmv17nqj2cam2yqygnj6ar1iqkwsx2y37ij8wy7wj";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/analysis/splint/default.nix b/nixpkgs/pkgs/development/tools/analysis/splint/default.nix
index 581ff56bb614..954342550eac 100644
--- a/nixpkgs/pkgs/development/tools/analysis/splint/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/splint/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, flex }:
 
 stdenv.mkDerivation rec {
-  name = "splint-3.1.2";
+  pname = "splint";
+  version = "3.1.2";
 
   src = fetchurl {
-    url = "http://www.splint.org/downloads/${name}.src.tgz";
+    url = "https://www.splint.org/downloads/${pname}-${version}.src.tgz";
     sha256 = "02pv8kscsrkrzip9r08pfs9xs98q74c52mlxzbii6cv6vx1vd3f7";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/analysis/swarm/default.nix b/nixpkgs/pkgs/development/tools/analysis/swarm/default.nix
index e4ebb85f27f4..cc67ce8123c8 100644
--- a/nixpkgs/pkgs/development/tools/analysis/swarm/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/swarm/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub }:
 
-stdenv.mkDerivation {
-  name = "swarm-2019-03-11";
+stdenv.mkDerivation rec {
+  pname = "swarm";
+  version = "unstable-2019-03-11";
 
   src = fetchFromGitHub {
     owner = "nimble-code";
diff --git a/nixpkgs/pkgs/development/tools/analysis/tfsec/default.nix b/nixpkgs/pkgs/development/tools/analysis/tfsec/default.nix
index da0e0554bf70..7800f4c1eda6 100644
--- a/nixpkgs/pkgs/development/tools/analysis/tfsec/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/tfsec/default.nix
@@ -1,17 +1,20 @@
-{ lib, buildGoPackage, fetchFromGitHub }:
+{ lib
+, buildGoPackage
+, fetchFromGitHub
+}:
 
 buildGoPackage rec {
   pname = "tfsec";
-  version = "0.41.0";
+  version = "0.50.7";
 
   src = fetchFromGitHub {
-    owner = "tfsec";
+    owner = "aquasecurity";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-MK5cWRPGty7S4pkRZJRZF5qitoPM3im8JJW2J3yQqFo=";
+    sha256 = "0rklv9wj8gf95ar345k3ghpg9hxjpbsi693239wdfarzbsjrlcla";
   };
 
-  goPackagePath = "github.com/tfsec/tfsec";
+  goPackagePath = "github.com/aquasecurity/tfsec";
 
   ldflags = [
     "-w"
@@ -20,9 +23,9 @@ buildGoPackage rec {
   ];
 
   meta = with lib; {
-    homepage = "https://github.com/tfsec/tfsec";
-    description = "Static analysis powered security scanner for your terraform code";
+    description = "Static analysis powered security scanner for terraform code";
+    homepage = "https://github.com/aquasecurity/tfsec";
     license = licenses.mit;
-    maintainers = with maintainers; [ marsam ];
+    maintainers = with maintainers; [ fab marsam ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/analysis/valgrind/default.nix b/nixpkgs/pkgs/development/tools/analysis/valgrind/default.nix
index d99bbe1cae4b..5a787d9c3f85 100644
--- a/nixpkgs/pkgs/development/tools/analysis/valgrind/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/valgrind/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, perl, gdb, cctools, xnu, bootstrap_cmds }:
 
 stdenv.mkDerivation rec {
-  name = "valgrind-3.16.1";
+  pname = "valgrind";
+  version = "3.16.1";
 
   src = fetchurl {
-    url = "https://sourceware.org/pub/valgrind/${name}.tar.bz2";
+    url = "https://sourceware.org/pub/${pname}/${pname}-${version}.tar.bz2";
     sha256 = "1jik19rcd34ip8a5c9nv5wfj8k8maqb8cyclr4xhznq2gcpkl7y9";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/analysis/valkyrie/default.nix b/nixpkgs/pkgs/development/tools/analysis/valkyrie/default.nix
index 10b9f7291a22..fd24362bab17 100644
--- a/nixpkgs/pkgs/development/tools/analysis/valkyrie/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/valkyrie/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, qt4, qmake4Hook }:
 
 stdenv.mkDerivation rec {
-  name = "valkyrie-2.0.0";
+  pname = "valkyrie";
+  version = "2.0.0";
 
   src = fetchurl {
-    url = "http://valgrind.org/downloads/${name}.tar.bz2";
+    url = "https://valgrind.org/downloads/${pname}-${version}.tar.bz2";
     sha256 = "0hwvsncf62mdkahwj9c8hpmm94c1wr5jn89370k6rj894kxry2x7";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/apksigcopier/default.nix b/nixpkgs/pkgs/development/tools/apksigcopier/default.nix
index 972de479ee78..16cfbad52a07 100644
--- a/nixpkgs/pkgs/development/tools/apksigcopier/default.nix
+++ b/nixpkgs/pkgs/development/tools/apksigcopier/default.nix
@@ -10,13 +10,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "apksigcopier";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "obfusk";
     repo = "apksigcopier";
     rev = "v${version}";
-    sha256 = "1la1ml91jvqc1zakbqfpayjbs67pi3i18bsgz3mf11rxgphd3fpk";
+    sha256 = "07ldq3q1x2lpb15q5s5i1pbg89sn6ah45amskm9pndqlh16z9k2x";
   };
 
   nativeBuildInputs = [ installShellFiles pandoc ];
@@ -42,12 +42,11 @@ python3.pkgs.buildPythonApplication rec {
   '';
 
   meta = with lib; {
-    description = "Copy/extract/patch apk signatures & compare apks";
+    description = "Copy/extract/patch android apk signatures & compare apks";
     longDescription = ''
-      apksigcopier is a tool for copying APK signatures from a signed APK
-      to an unsigned one (in order to verify reproducible builds).  It can
-      also be used to compare two APKs with different signatures.  Its
-      command-line tool offers four operations:
+      apksigcopier is a tool for copying android APK signatures from a signed APK to an unsigned one (in order to verify reproducible builds).
+      It can also be used to compare two APKs with different signatures.
+      Its command-line tool offers four operations:
 
       * copy signatures directly from a signed to an unsigned APK
       * extract signatures from a signed APK to a directory
diff --git a/nixpkgs/pkgs/development/tools/asn2quickder/default.nix b/nixpkgs/pkgs/development/tools/asn2quickder/default.nix
index 9ffcbb172d48..1341017df056 100644
--- a/nixpkgs/pkgs/development/tools/asn2quickder/default.nix
+++ b/nixpkgs/pkgs/development/tools/asn2quickder/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonApplication, fetchFromGitHub, makeWrapper, cmake
-, pytestrunner, pytest, six, pyparsing, asn1ate }:
+, pytest-runner, pytest, six, pyparsing, asn1ate }:
 
 buildPythonApplication rec {
   pname = "asn2quickder";
@@ -19,7 +19,7 @@ buildPythonApplication rec {
   dontUseCmakeConfigure = true;
 
   nativeBuildInputs = [ makeWrapper cmake ];
-  checkInputs = [ pytestrunner pytest ];
+  checkInputs = [ pytest-runner pytest ];
 
   propagatedBuildInputs = [ pyparsing asn1ate six ];
 
diff --git a/nixpkgs/pkgs/development/tools/async-profiler/default.nix b/nixpkgs/pkgs/development/tools/async-profiler/default.nix
index 66177d3a34f3..3f31b921831a 100644
--- a/nixpkgs/pkgs/development/tools/async-profiler/default.nix
+++ b/nixpkgs/pkgs/development/tools/async-profiler/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "async-profiler";
-  version = "1.8.5";
+  version = "1.8.6";
 
   src = fetchFromGitHub {
     owner = "jvm-profiling-tools";
     repo = "async-profiler";
     rev = "v${version}";
-    sha256 = "sha256-vSBueRNraMgLcaprPsBUriX3WZ7N0UrllnSVLL2F738=";
+    sha256 = "sha256-MtRO0tbo4kDHcQmir8ulv0q1Qh+KnKIshb1NDtu1SKg=";
   };
 
   buildInputs = [ jdk8 ];
diff --git a/nixpkgs/pkgs/development/tools/aws-sam-cli/default.nix b/nixpkgs/pkgs/development/tools/aws-sam-cli/default.nix
index 3837e2e37076..f07bcdd5fd5b 100644
--- a/nixpkgs/pkgs/development/tools/aws-sam-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/aws-sam-cli/default.nix
@@ -5,11 +5,11 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "aws-sam-cli";
-  version = "1.23.0";
+  version = "1.26.0";
 
   src = python3.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "0j0q6p08c3l9z0yc2cggw797k47cjh6ljpchiqgg0fh6mk32215f";
+    sha256 = "11aqdwhs7wa6cp9zijqi4in3zvwirfnlcy45rrnsq0jdsh3i9hbh";
   };
 
   # Tests are not included in the PyPI package
@@ -40,6 +40,8 @@ python3.pkgs.buildPythonApplication rec {
   # fix over-restrictive version bounds
   postPatch = ''
     substituteInPlace requirements/base.txt \
+      --replace "click~=7.1" "click~=8.0" \
+      --replace "Flask~=1.1.2" "Flask~=2.0" \
       --replace "dateparser~=0.7" "dateparser>=0.7" \
       --replace "docker~=4.2.0" "docker>=4.2.0" \
       --replace "requests==2.23.0" "requests~=2.24" \
diff --git a/nixpkgs/pkgs/development/tools/azure-functions-core-tools/default.nix b/nixpkgs/pkgs/development/tools/azure-functions-core-tools/default.nix
new file mode 100644
index 000000000000..9396821f8c6d
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/azure-functions-core-tools/default.nix
@@ -0,0 +1,74 @@
+{ stdenv
+, lib
+, config
+, fetchurl
+, unzip
+, makeWrapper
+, icu
+, libunwind
+, curl
+, zlib
+, libuuid
+, dotnetbuildhelpers
+, dotnetCorePackages
+, coreclr
+, openssl
+}:
+
+stdenv.mkDerivation rec {
+  pname = "azure-functions-core-tools";
+  version = "3.0.3568";
+
+  src = fetchurl {
+    url = "https://github.com/Azure/${pname}/releases/download/${version}/Azure.Functions.Cli.linux-x64.${version}.zip";
+    sha256 = "0yxdqc5d1xsixjj2dlvs32d6fz4vh58ih2l00lc456fg15mfw3lg";
+  };
+
+  buildInputs = [
+    unzip
+    makeWrapper
+    dotnetbuildhelpers
+  ];
+
+  nativeBuildInputs = [
+    icu
+    libunwind
+    curl
+    zlib
+    dotnetCorePackages.sdk_3_1
+  ];
+
+  libPath = lib.makeLibraryPath [
+    libunwind
+    libuuid
+    stdenv.cc.cc
+    curl
+    zlib
+    icu
+    openssl
+  ];
+
+  unpackPhase = ''
+    unzip $src
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp -prd * $out/bin
+    patchelf \
+      --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+      --set-rpath "${libPath}" "$out/bin/func"
+    chmod +x $out/bin/func $out/bin/gozip
+    find $out/bin -type f -name "*.so" -exec patchelf --set-rpath "${libPath}" {} \;
+    wrapProgram "$out/bin/func" --prefix LD_LIBRARY_PATH : ${libPath}
+  '';
+  dontStrip = true; # Causes rpath patching to break if not set
+
+  meta = with lib; {
+    homepage = "https://github.com/Azure/azure-functions-core-tools";
+    description = "Command line tools for Azure Functions";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jshcmpbll ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/bazelisk/default.nix b/nixpkgs/pkgs/development/tools/bazelisk/default.nix
index 5bfe83def088..d2de1bcc063b 100644
--- a/nixpkgs/pkgs/development/tools/bazelisk/default.nix
+++ b/nixpkgs/pkgs/development/tools/bazelisk/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "bazelisk";
-  version = "1.9.0";
+  version = "1.10.1";
 
   src = fetchFromGitHub {
     owner = "bazelbuild";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-APHRNCJNQ4cheY+wBB8q4fcOOL6SFeg5SflvnrxjYhI=";
+    sha256 = "sha256-MpAYJSDAbyh4aGW+hRrny5+bXZ96cNcUhqJkgY8bdD8=";
   };
 
-  vendorSha256 = "sha256-+B+5GQTEiCwLCoGB5uIIJEWJRjylgt9txcsJCXcOAQs=";
+  vendorSha256 = "sha256-5qpeAD4VFsR8iJlRiNTncOdq39lq3MU6gSLu3G/BcPU=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/buf/default.nix b/nixpkgs/pkgs/development/tools/buf/default.nix
index c1060744f449..fc87f5b781a9 100644
--- a/nixpkgs/pkgs/development/tools/buf/default.nix
+++ b/nixpkgs/pkgs/development/tools/buf/default.nix
@@ -7,18 +7,19 @@
 
 buildGoModule rec {
   pname = "buf";
-  version = "0.43.2";
+  version = "0.44.0";
 
   src = fetchFromGitHub {
     owner = "bufbuild";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Go0wLcJrxMgB67WlAI7TwX2UU2sQ/yfmC0h2igOkjc4=";
+    sha256 = "sha256-ZcZvsFw/l/7N8Yb4HG6w96ce9c4g4iiG/TcDoj8RYmA=";
     leaveDotGit = true; # Required by TestWorkspaceGit
   };
-  vendorSha256 = "sha256-HT0dsGniBoQW2Y7MhahDeFvE0nCASoPdzHETju0JuRY=";
+  vendorSha256 = "sha256-g0wrHPeHFOL6KB0SUgBy2WK54Kttiks4cuYg8jf3N9g=";
 
   patches = [
+    # Skip a test that requires networking to be available to work.
     ./skip_test_requiring_network.patch
   ];
 
diff --git a/nixpkgs/pkgs/development/tools/build-managers/apache-ant/1.9.nix b/nixpkgs/pkgs/development/tools/build-managers/apache-ant/1.9.nix
index 93644caa5a4e..80f8f1f886c2 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/apache-ant/1.9.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/apache-ant/1.9.nix
@@ -1,16 +1,14 @@
 { fetchurl, lib, stdenv, coreutils, makeWrapper }:
 
-let version = "1.9.15"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "ant";
-  inherit version;
+  version = "1.9.16";
 
   nativeBuildInputs = [ makeWrapper ];
 
   src = fetchurl {
     url = "mirror://apache/ant/binaries/apache-ant-${version}-bin.tar.bz2";
-    sha256 = "0yfx5qsvrg12lar4908ndbnlpppy7g7qk8ay41y4sz9g873v07mr";
+    sha256 = "0rif9kj6njajy951w3aapk27y1mbaxb08whs126v533h96rb1kjp";
   };
 
   contrib = fetchurl {
diff --git a/nixpkgs/pkgs/development/tools/build-managers/apache-ant/default.nix b/nixpkgs/pkgs/development/tools/build-managers/apache-ant/default.nix
index d2ef8361ec0e..7c05fcf60a37 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/apache-ant/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/apache-ant/default.nix
@@ -1,16 +1,14 @@
 { fetchurl, lib, stdenv, coreutils, makeWrapper }:
 
-let version = "1.10.9"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "ant";
-  inherit version;
+  version = "1.10.11";
 
   nativeBuildInputs = [ makeWrapper ];
 
   src = fetchurl {
     url = "mirror://apache/ant/binaries/apache-ant-${version}-bin.tar.bz2";
-    sha256 = "1ab8ybczvk12501dnj450a3d4v43ca0pjhk33s175hax46s58z47";
+    sha256 = "19m8xb7h6xm4jykzb79kakbx1pa4awaglw6z31pbfg8m5pmwkipz";
   };
 
   contrib = fetchurl {
diff --git a/nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix b/nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix
index 702652db878b..2de586f97cbf 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/cmake/default.nix
@@ -7,11 +7,11 @@
 , useSharedLibraries ? (!isBootstrap && !stdenv.isCygwin)
 , useOpenSSL ? !isBootstrap, openssl
 , useNcurses ? false, ncurses
-, withQt5 ? false, qtbase
+, withQt5 ? false, qtbase, wrapQtAppsHook
 , buildDocs ? (!isBootstrap && (useNcurses || withQt5)), sphinx, texinfo
 }:
 
-stdenv.mkDerivation (rec {
+stdenv.mkDerivation rec {
   pname = "cmake"
           + lib.optionalString isBootstrap "-boot"
           + lib.optionalString useNcurses "-cursesUI"
@@ -19,7 +19,7 @@ stdenv.mkDerivation (rec {
   version = "3.19.7";
 
   src = fetchurl {
-    url = "${meta.homepage}files/v${lib.versions.majorMinor version}/cmake-${version}.tar.gz";
+    url = "https://cmake.org/files/v${lib.versions.majorMinor version}/cmake-${version}.tar.gz";
     # compare with https://cmake.org/files/v${lib.versions.majorMinor version}/cmake-${version}-SHA-256.txt
     sha256 = "sha256-WKFfDVagr8zDzFNxI0/Oc/zGyPnb13XYmOUQuDF1WI4=";
   };
@@ -45,7 +45,8 @@ stdenv.mkDerivation (rec {
   depsBuildBuild = [ buildPackages.stdenv.cc ];
 
   nativeBuildInputs = [ setupHook pkg-config ]
-    ++ lib.optionals buildDocs [ texinfo ];
+    ++ lib.optionals buildDocs [ texinfo ]
+    ++ lib.optionals withQt5 [ wrapQtAppsHook ];
 
   buildInputs = []
     ++ lib.optionals useSharedLibraries [ bzip2 curlMinimal expat libarchive xz zlib libuv rhash ]
@@ -130,5 +131,4 @@ stdenv.mkDerivation (rec {
     maintainers = with maintainers; [ ttuegel lnl7 ];
     license = licenses.bsd3;
   };
-} // (if withQt5 then { dontWrapQtApps = true; } else {})
-)
+}
diff --git a/nixpkgs/pkgs/development/tools/build-managers/gnumake/0001-No-impure-bin-sh.patch b/nixpkgs/pkgs/development/tools/build-managers/gnumake/0001-No-impure-bin-sh.patch
new file mode 100644
index 000000000000..58ee2d6fe09b
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/build-managers/gnumake/0001-No-impure-bin-sh.patch
@@ -0,0 +1,35 @@
+From e00a5257a6ca5fedbf68b09eee7df3502971a057 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io>
+Date: Sat, 24 Apr 2021 10:11:40 +0200
+Subject: [PATCH 1/2] No impure bin sh
+
+default_shell is used to populuate default shell used to execute jobs.
+Unless SHELL is set to a different value this would be /bin/sh.
+Our stdenv provides sh in form of bash anyway. Having this value not
+hard-coded has some advantages:
+
+- It would ensure that on all systems it uses sh from its PATH rather
+  than /bin/sh, which helps as different systems might have different
+  shells there (bash vs. dash)
+- In the past I had issues with LD_PRELOAD with BEAR, where /bin/sh
+  used a different glibc than BEAR which came from my development shell.
+---
+ src/job.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/job.c b/src/job.c
+index ae1f18b..6b4ddb3 100644
+--- a/src/job.c
++++ b/src/job.c
+@@ -77,7 +77,7 @@ char * vms_strsignal (int status);
+ 
+ #else
+ 
+-const char *default_shell = "/bin/sh";
++const char *default_shell = "sh";
+ int batch_mode_shell = 0;
+ 
+ #endif
+-- 
+2.31.1
+
diff --git a/nixpkgs/pkgs/development/tools/build-managers/gnumake/0002-remove-impure-dirs.patch b/nixpkgs/pkgs/development/tools/build-managers/gnumake/0002-remove-impure-dirs.patch
new file mode 100644
index 000000000000..e62aee7d9993
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/build-managers/gnumake/0002-remove-impure-dirs.patch
@@ -0,0 +1,40 @@
+From 795d63d3c8b5c0dbb7e544954f75507b371b7228 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io>
+Date: Sat, 24 Apr 2021 10:20:16 +0200
+Subject: [PATCH 2/2] remove impure dirs
+
+---
+ src/read.c   | 3 ---
+ src/remake.c | 2 --
+ 2 files changed, 5 deletions(-)
+
+diff --git a/src/read.c b/src/read.c
+index fa197fb..defacfb 100644
+--- a/src/read.c
++++ b/src/read.c
+@@ -109,9 +109,6 @@ static const char *default_include_directories[] =
+ #endif
+     INCLUDEDIR,
+ #ifndef _AMIGA
+-    "/usr/gnu/include",
+-    "/usr/local/include",
+-    "/usr/include",
+ #endif
+     0
+   };
+diff --git a/src/remake.c b/src/remake.c
+index fb237c5..94bff7d 100644
+--- a/src/remake.c
++++ b/src/remake.c
+@@ -1601,8 +1601,6 @@ library_search (const char *lib, FILE_TIMESTAMP *mtime_ptr)
+   static const char *dirs[] =
+     {
+ #ifndef _AMIGA
+-      "/lib",
+-      "/usr/lib",
+ #endif
+ #if defined(WINDOWS32) && !defined(LIBDIR)
+ /*
+-- 
+2.31.1
+
diff --git a/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/default.nix b/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/default.nix
index 387650e85ab7..7d56e55ebdb3 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/default.nix
@@ -2,12 +2,9 @@
 
 assert guileSupport -> ( pkg-config != null && guile != null );
 
-let
-  version = "4.2.1";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "gnumake";
-  inherit version;
+  version = "4.2.1";
 
   src = fetchurl {
     url = "mirror://gnu/make/make-${version}.tar.bz2";
@@ -23,6 +20,7 @@ stdenv.mkDerivation {
     ./pselect.patch
     # Fix support for glibc 2.27's glob, inspired by http://www.linuxfromscratch.org/lfs/view/8.2/chapter05/make.html
     ./glibc-2.27-glob.patch
+    ./glibc-2.33-glob.patch
   ];
 
   nativeBuildInputs = lib.optionals guileSupport [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/glibc-2.33-glob.patch b/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/glibc-2.33-glob.patch
new file mode 100644
index 000000000000..d3e424d1c499
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/build-managers/gnumake/4.2/glibc-2.33-glob.patch
@@ -0,0 +1,17 @@
+diff --git glob/glob.c glob/glob.c
+index 924f2b3..d4ef0c5 100644
+--- glob/glob.c
++++ glob/glob.c
+@@ -212,8 +212,8 @@ my_realloc (p, n)
+ # define __alloca	alloca
+ 
+ 
+-#ifndef __GNU_LIBRARY__
+ # define __stat stat
++#ifndef __GNU_LIBRARY__
+ # ifdef STAT_MACROS_BROKEN
+ #  undef S_ISDIR
+ # endif
+-- 
+2.31.1
+
diff --git a/nixpkgs/pkgs/development/tools/build-managers/gnumake/default.nix b/nixpkgs/pkgs/development/tools/build-managers/gnumake/default.nix
index fb9dab54049a..3b9f0add8796 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/gnumake/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/gnumake/default.nix
@@ -1,24 +1,22 @@
-{ lib, stdenv, fetchurl, guileSupport ? false, pkg-config ? null , guile ? null }:
+{ lib, stdenv, fetchurl, guileSupport ? false, pkg-config, guile }:
 
-assert guileSupport -> ( pkg-config != null && guile != null );
-
-let
-  version = "4.3";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "gnumake";
-  inherit version;
+  version = "4.3";
 
   src = fetchurl {
     url = "mirror://gnu/make/make-${version}.tar.gz";
     sha256 = "06cfqzpqsvdnsxbysl5p2fgdgxgl9y4p7scpnrfa8z2zgkjdspz0";
   };
 
+  # to update apply these patches with `git am *.patch` to https://git.savannah.gnu.org/git/make.git
   patches = [
+    # Replaces /bin/sh with sh, see patch file for reasoning
+    ./0001-No-impure-bin-sh.patch
     # Purity: don't look for library dependencies (of the form `-lfoo') in /lib
     # and /usr/lib. It's a stupid feature anyway. Likewise, when searching for
     # included Makefiles, don't look in /usr/include and friends.
-    ./impure-dirs.patch
+    ./0002-remove-impure-dirs.patch
   ];
 
   nativeBuildInputs = lib.optionals guileSupport [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/tools/build-managers/gnumake/impure-dirs.patch b/nixpkgs/pkgs/development/tools/build-managers/gnumake/impure-dirs.patch
deleted file mode 100644
index 6c7d9d2463c3..000000000000
--- a/nixpkgs/pkgs/development/tools/build-managers/gnumake/impure-dirs.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff -Naur a/src/read.c b/src/read.c
---- a/src/read.c
-+++ b/src/read.c
-@@ -109,9 +109,6 @@
- #endif
-     INCLUDEDIR,
- #ifndef _AMIGA
--    "/usr/gnu/include",
--    "/usr/local/include",
--    "/usr/include",
- #endif
-     0
-   };
-diff -Naur a/src/remake.c b/src/remake.c
---- a/src/remake.c
-+++ b/src/remake.c
-@@ -1601,8 +1601,6 @@
-   static const char *dirs[] =
-     {
- #ifndef _AMIGA
--      "/lib",
--      "/usr/lib",
- #endif
- #if defined(WINDOWS32) && !defined(LIBDIR)
- /*
diff --git a/nixpkgs/pkgs/development/tools/build-managers/jam/default.nix b/nixpkgs/pkgs/development/tools/build-managers/jam/default.nix
index 859497345ff6..8db882711fc2 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/jam/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/jam/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, bison }:
 
 stdenv.mkDerivation rec {
-  name = "jam-2.6.1";
+  pname = "jam";
+  version = "2.6.1";
 
   src = fetchurl {
-    url = "https://swarm.workshop.perforce.com/projects/perforce_software-jam/download/main/${name}.tar";
+    url = "https://swarm.workshop.perforce.com/projects/perforce_software-jam/download/main/${pname}-${version}.tar";
     sha256 = "19xkvkpycxfsncxvin6yqrql3x3z9ypc1j8kzls5k659q4kv5rmc";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix b/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix
index 4682fab41db1..27a21619c1d7 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mill";
-  version = "0.9.8";
+  version = "0.9.9";
 
   src = fetchurl {
-    url = "https://github.com/com-lihaoyi/mill/releases/download/${version}/${version}";
-    sha256 = "sha256-vWCzjit7MPrKqEYgJfQHAkam9J9NgMObOQ/A+OQr24o=";
+    url = "https://github.com/com-lihaoyi/mill/releases/download/${version}/${version}-assembly";
+    sha256 = "sha256-HIT7bxMEz7jpSsYvohN9+zYuyCf/ARE7hd48YMTo9/4=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -15,6 +15,9 @@ stdenv.mkDerivation rec {
   dontConfigure = true;
   dontBuild = true;
 
+  # this is mostly downloading a pre-built artifact
+  preferLocal = true;
+
   installPhase = ''
     runHook preInstall
     install -Dm555 "$src" "$out/bin/.mill-wrapped"
@@ -25,6 +28,13 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
+  doInstallCheck = true;
+  # The default release is a script which will do an impure download
+  # just ensure that the application can run without network
+  installCheckPhase = ''
+    $out/bin/mill --help > /dev/null
+  '';
+
   meta = with lib; {
     homepage = "https://www.lihaoyi.com/mill";
     license = licenses.mit;
diff --git a/nixpkgs/pkgs/development/tools/build-managers/mk/default.nix b/nixpkgs/pkgs/development/tools/build-managers/mk/default.nix
index 1eaa51a5de0b..afc0b6f1ec01 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/mk/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/mk/default.nix
@@ -1,9 +1,10 @@
 {lib, stdenv, fetchurl}:
 
-stdenv.mkDerivation {
-  name = "mk-2006-01-31";
+stdenv.mkDerivation rec {
+  pname = "mk";
+  version = "unstable-2006-01-31";
   src = fetchurl {
-    url = "http://tarballs.nixos.org/mk-20060131.tar.gz";
+    url = "http://tarballs.nixos.org/${pname}-20060131.tar.gz";
     sha256 = "0za8dp1211bdp4584xb59liqpww7w1ql0cmlv34p9y928nibcxsr";
   };
   builder = ./builder.sh;
diff --git a/nixpkgs/pkgs/development/tools/build-managers/rebar/default.nix b/nixpkgs/pkgs/development/tools/build-managers/rebar/default.nix
index 30c55dbca373..c6e74a8ebb2c 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/rebar/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/rebar/default.nix
@@ -1,12 +1,8 @@
 { lib, stdenv, fetchurl, erlang }:
 
-
-let
-  version = "2.6.4";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "rebar";
-  inherit version;
+  version = "2.6.4";
 
   src = fetchurl {
     url = "https://github.com/rebar/rebar/archive/${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix b/nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix
index 9be3d232fb89..3b775eeaef1c 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/rebar3/default.nix
@@ -39,6 +39,14 @@ let
       HOME=. escript bootstrap
     '';
 
+
+    patches = []
+      # Skips test that can write outside the designated tmp directory, potentially resulting in build failures
+      # due to file ownership issues if ran without sandbox (eg. Mac M1 default). This patch can be Removed when
+      # rebar3 releases with the following commit:
+      # https://github.com/erlang/rebar3/commit/11055384dbd5bf7d181bca83a33b0e100275ff21
+      ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ ./tmp-tests-skip.patch ];
+
     checkPhase = ''
       HOME=. escript ./rebar3 ct
     '';
diff --git a/nixpkgs/pkgs/development/tools/build-managers/rebar3/tmp-tests-skip.patch b/nixpkgs/pkgs/development/tools/build-managers/rebar3/tmp-tests-skip.patch
new file mode 100644
index 000000000000..b90e0f9d2bb6
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/build-managers/rebar3/tmp-tests-skip.patch
@@ -0,0 +1,17 @@
+diff --git a/test/rebar_file_utils_SUITE.erl b/test/rebar_file_utils_SUITE.erl
+index d771a82..05cfbf7 100644
+--- a/test/rebar_file_utils_SUITE.erl
++++ b/test/rebar_file_utils_SUITE.erl
+@@ -34,13 +34,11 @@
+
+ all() ->
+     [{group, tmpdir},
+-     {group, reset_dir},
+      {group, mv},
+      path_from_ancestor,
+      canonical_path,
+      absolute_path,
+      normalized_path,
+-     resolve_link,
+      split_dirname,
+      mv_warning_is_ignored].
diff --git a/nixpkgs/pkgs/development/tools/build-managers/redo/default.nix b/nixpkgs/pkgs/development/tools/build-managers/redo/default.nix
index 48fbffc39406..f16e91d3bfb1 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/redo/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/redo/default.nix
@@ -1,9 +1,10 @@
 {lib, stdenv, fetchurl, perl }:
 
 stdenv.mkDerivation rec {
-  name = "redo-1.4";
+  pname = "redo";
+  version = "1.4";
   src = fetchurl {
-    url = "https://jdebp.eu./Repository/freebsd/${name}.tar.gz";
+    url = "https://jdebp.eu./Repository/freebsd/${pname}-${version}.tar.gz";
     sha256 = "1c8gr5h77v4fw78zkhbm9z9adqs3kd7xvxwnmci2zvlf4bqqk4jv";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/buildah/default.nix b/nixpkgs/pkgs/development/tools/buildah/default.nix
index ba6f0bf652e3..13ae74db9774 100644
--- a/nixpkgs/pkgs/development/tools/buildah/default.nix
+++ b/nixpkgs/pkgs/development/tools/buildah/default.nix
@@ -14,13 +14,13 @@
 
 buildGoModule rec {
   pname = "buildah";
-  version = "1.21.2";
+  version = "1.21.3";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "buildah";
     rev = "v${version}";
-    sha256 = "sha256-9AYFC10AYbt/qHj5hfuLRxUwibizKk4n9rgtd5RBEQg=";
+    sha256 = "sha256-f39UXQXUje6j8bRWVaX9ELCwO1vaeNuGnlmPhyyVoV8=";
   };
 
   outputs = [ "out" "man" ];
diff --git a/nixpkgs/pkgs/development/tools/butane/default.nix b/nixpkgs/pkgs/development/tools/butane/default.nix
index f417dc420350..f5eafd4a90f8 100644
--- a/nixpkgs/pkgs/development/tools/butane/default.nix
+++ b/nixpkgs/pkgs/development/tools/butane/default.nix
@@ -4,13 +4,13 @@ with lib;
 
 buildGoModule rec {
   pname = "butane";
-  version = "0.12.1";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     owner = "coreos";
     repo = "butane";
     rev = "v${version}";
-    sha256 = "1bgh7h3hwrgjkw72233qzqpkshzbizhdapa0lalzj1xnclq3rqlp";
+    sha256 = "0z1cq43dnj73k0idjhc310h00a1mryk2297w3yy6k1sa95swlz9m";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/development/tools/cask/default.nix b/nixpkgs/pkgs/development/tools/cask/default.nix
index 1c5f316cea9d..f9e7d215f320 100644
--- a/nixpkgs/pkgs/development/tools/cask/default.nix
+++ b/nixpkgs/pkgs/development/tools/cask/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, python3, emacs }:
+{ lib, stdenv, python3, emacs, bash }:
 
 stdenv.mkDerivation rec {
   pname = "cask";
@@ -13,15 +13,19 @@ stdenv.mkDerivation rec {
     noflet ert-async shell-split-string git package-build
   ] ++ [
     python3
+    bash
   ];
 
   strictDeps = true;
 
   buildPhase = ''
+    runHook preBuild
     emacs --batch -L . -f batch-byte-compile cask.el cask-cli.el
+    runHook postBuild
   '';
 
   installPhase = ''
+    runHook preInstall
     mkdir -p $out/bin
     mkdir -p $out/templates
     mkdir -p $out/share/emacs/site-lisp/cask/bin
@@ -30,6 +34,7 @@ stdenv.mkDerivation rec {
     install -Dm644 templates/* $out/templates/
     touch $out/.no-upgrade
     ln -s $out/share/emacs/site-lisp/cask/bin/cask $out/bin/cask
+    runHook postInstall
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/cdecl/default.nix b/nixpkgs/pkgs/development/tools/cdecl/default.nix
index bc44741cffee..7eefc4fc92d0 100644
--- a/nixpkgs/pkgs/development/tools/cdecl/default.nix
+++ b/nixpkgs/pkgs/development/tools/cdecl/default.nix
@@ -1,9 +1,10 @@
 {lib, stdenv, fetchurl, bison, flex, readline, ncurses, gnused}:
 
-stdenv.mkDerivation {
-  name = "cdecl-2.5";
+stdenv.mkDerivation rec {
+  pname = "cdecl";
+  version = "2.5";
   src = fetchurl {
-    url = "https://www.cdecl.org/files/cdecl-blocks-2.5.tar.gz";
+    url = "https://www.cdecl.org/files/${pname}-blocks-${version}.tar.gz";
     sha256 = "1b7k0ra30hh8mg8fqv0f0yzkaac6lfg6n376drgbpxg4wwml1rly";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/chefdk/default.nix b/nixpkgs/pkgs/development/tools/chefdk/default.nix
index 6a1470e10749..9e0e40b69f4b 100644
--- a/nixpkgs/pkgs/development/tools/chefdk/default.nix
+++ b/nixpkgs/pkgs/development/tools/chefdk/default.nix
@@ -1,7 +1,8 @@
 { lib, bundlerEnv, bundlerUpdateScript, ruby, perl, autoconf }:
 
 bundlerEnv {
-  name = "chef-dk-4.13.3";
+  pname = "chef-dk";
+  version = "4.13.3";
 
   inherit ruby;
   gemdir = ./.;
diff --git a/nixpkgs/pkgs/development/tools/cloudsmith-cli/default.nix b/nixpkgs/pkgs/development/tools/cloudsmith-cli/default.nix
index 8de2bc1aeed2..8d36c8990828 100644
--- a/nixpkgs/pkgs/development/tools/cloudsmith-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/cloudsmith-cli/default.nix
@@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication rec {
     colorama
     future
     requests
-    requests_toolbelt
+    requests-toolbelt
     semver
     simplejson
     six
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
index a8d35a44bb96..b32eed9a1662 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
@@ -3,13 +3,13 @@
   nixosTests }:
 buildGoModule rec {
   name = "buildkite-agent-${version}";
-  version = "3.30.0";
+  version = "3.31.0";
 
   src = fetchFromGitHub {
     owner = "buildkite";
     repo = "agent";
     rev = "v${version}";
-    sha256 = "sha256-U2UnT41IpICy08jPQkr25wjAL1kBxiQCD4lysYnLAPk=";
+    sha256 = "sha256-Rot5A2zSEleTifadHEvAlydchzCdDo/VPZELostDfng=";
   };
 
   vendorSha256 = "sha256-n3XRxpEKjHf7L7fcGscWTVKBtot9waZbLoS9cG0kHfI=";
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/drone-cli/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/drone-cli/default.nix
index 245aeeb4351b..4534298d395e 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/drone-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/drone-cli/default.nix
@@ -1,8 +1,7 @@
 { lib, fetchFromGitHub, buildGoModule }:
 
-let version = "1.3.0";
-in buildGoModule rec {
-  inherit version;
+buildGoModule rec {
+  version = "1.3.0";
   pname = "drone-cli";
   revision = "v${version}";
 
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/drone/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/drone/default.nix
index c6d1e47389a6..46ee41d37dff 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/drone/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/drone/default.nix
@@ -3,9 +3,9 @@
 
 buildGoModule rec {
   pname = "drone.io${lib.optionalString (!enableUnfree) "-oss"}";
-  version = "2.0.0";
+  version = "2.0.3";
 
-  vendorSha256 = "sha256-cnbZSnHU+ORm7/dV+U9NfM18Zrzi24vf7qITPJsusU8=";
+  vendorSha256 = "sha256-3qTH/p0l6Ke1F9SUcvK2diqZooOMnlXYO1PHLdJJ8PM=";
 
   doCheck = false;
 
@@ -13,7 +13,7 @@ buildGoModule rec {
     owner = "drone";
     repo = "drone";
     rev = "v${version}";
-    sha256 = "sha256-BxwCJf3uY34rqegZJ6H/zb63orELhq41trOgzGXQe80=";
+    sha256 = "sha256-MKV5kor+Wm9cuIFFcjSNyCgVKtY+/B9sgBOXMMRvMPI=";
   };
 
   preBuild = ''
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/github-runner/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/github-runner/default.nix
index b03dcc89d447..e2d40630905c 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/github-runner/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/github-runner/default.nix
@@ -20,7 +20,7 @@
 }:
 let
   pname = "github-actions-runner";
-  version = "2.278.0";
+  version = "2.279.0";
 
   deps = (import ./deps.nix { inherit fetchurl; });
   nugetPackages = map
@@ -41,6 +41,10 @@ let
     # Online tests
     (x: "FullyQualifiedName!=GitHub.Runner.Common.Tests.Worker.ActionManagerL0.PrepareActions_${x}")
     [
+      "CompositeActionWithActionfile_CompositeContainerNested"
+      "CompositeActionWithActionfile_CompositePrestepNested"
+      "CompositeActionWithActionfile_MaxLimit"
+      "CompositeActionWithActionfile_Node"
       "DownloadActionFromGraph"
       "DownloadActionFromGraph_Legacy"
       "NotPullOrBuildImagesMultipleTimes"
@@ -80,8 +84,8 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "actions";
     repo = "runner";
-    rev = "62d926efce35d3ea16d7624a25aaa5b300737def"; # v${version}
-    sha256 = "sha256-KAb14739DYnuNIf7ZNZk5CShye6XFGn8aLu8BAcuT/c=";
+    rev = "6b75179ec79e2041b3b5b4e9206b73db2d206aac"; # v${version}
+    sha256 = "sha256-d7LAHL8Ff7R++d1HuLxWjtiBZRogySe7xHY/xJAcFms=";
   };
 
   nativeBuildInputs = [
@@ -123,6 +127,11 @@ stdenv.mkDerivation rec {
       --replace 'dotnet test Test/Test.csproj' \
                 "dotnet test Test/Test.csproj --filter '${testFilterXml}'"
 
+    # We don't use a Git checkout
+    substituteInPlace src/dir.proj \
+      --replace 'git update-index --assume-unchanged ./Runner.Sdk/BuildConstants.cs' \
+                'echo Patched out.'
+
     # Fix FHS path
     substituteInPlace src/Test/L0/Util/IOUtilL0.cs \
       --replace '/bin/ln' '${coreutils}/bin/ln'
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
index e89c784df747..ff5799df4acc 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
@@ -1,16 +1,16 @@
 { lib, buildGoPackage, fetchFromGitLab, fetchurl }:
 
 let
-  version = "14.0.1";
+  version = "14.1.0";
   # Gitlab runner embeds some docker images these are prebuilt for arm and x86_64
   docker_x86_64 = fetchurl {
     url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/binaries/gitlab-runner-helper/gitlab-runner-helper.x86_64";
-    sha256 = "1i1fddsz7cr0kg4bxqisx29cwyd07zqfbpmh5mhvi5zqy0gfmcn8";
+    sha256 = "09p0biig07plf9qiwpsdllh6midi8kzpzk2s71rmms491g4634k2";
   };
 
   docker_arm = fetchurl {
     url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/binaries/gitlab-runner-helper/gitlab-runner-helper.arm";
-    sha256 = "1d2ywc3cikffiwpql2kp5zg21vjinz51f76c6wdn0v35wl705fz4";
+    sha256 = "0z5q5y9lsznwglpg7sd5af51v9640m85v4x4dcj5j37w24bi4wq0";
   };
 in
 buildGoPackage rec {
@@ -30,7 +30,7 @@ buildGoPackage rec {
     owner = "gitlab-org";
     repo = "gitlab-runner";
     rev = "v${version}";
-    sha256 = "1prvmppq5w897bd9ch5z0h6h8mndy6myv8al24cr0bjc27c6wyn7";
+    sha256 = "1v2yxs92awwn4m6hq6wc53whfmk6fr4l6j87amcbdzcm4ikzxcvk";
   };
 
   patches = [ ./fix-shell-path.patch ];
diff --git a/nixpkgs/pkgs/development/tools/database/liquibase/default.nix b/nixpkgs/pkgs/development/tools/database/liquibase/default.nix
index 4bf0ab7b5672..2dc5c4e77c85 100644
--- a/nixpkgs/pkgs/development/tools/database/liquibase/default.nix
+++ b/nixpkgs/pkgs/development/tools/database/liquibase/default.nix
@@ -10,11 +10,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "liquibase";
-  version = "4.4.0";
+  version = "4.4.1";
 
   src = fetchurl {
     url = "https://github.com/liquibase/liquibase/releases/download/v${version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-iqWQAZV1H3p9Ud+6U2RwIpfFlsu+7SE96Abh3u8CCVs=";
+    sha256 = "sha256-2Y/eRIkskuk+7GC/br178XzWTnP4iXSFfa5ybLjvqDA=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/tools/database/sqldeveloper/default.nix b/nixpkgs/pkgs/development/tools/database/sqldeveloper/default.nix
index 2e361076ae48..ef95263185c9 100644
--- a/nixpkgs/pkgs/development/tools/database/sqldeveloper/default.nix
+++ b/nixpkgs/pkgs/development/tools/database/sqldeveloper/default.nix
@@ -79,6 +79,6 @@ in
     homepage = "http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/";
     license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
-    maintainers = with maintainers; [ ardumont ma27 ];
+    maintainers = with maintainers; [ ardumont ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/database/sqlfluff/default.nix b/nixpkgs/pkgs/development/tools/database/sqlfluff/default.nix
index 12e5c8c14abd..6578bf8bf712 100644
--- a/nixpkgs/pkgs/development/tools/database/sqlfluff/default.nix
+++ b/nixpkgs/pkgs/development/tools/database/sqlfluff/default.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "sqlfluff";
-  version = "0.6.0";
+  version = "0.6.1";
   disabled = python3.pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "sha256-RW3+NpKZns3Jo1b3GfTymUE74pVoJi9f0zi4j4mUGiY=";
+    sha256 = "0p5vjpfmy52hbq6mz8svvxrg9757cvgj0cbvaa0340309953ilvj";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/nixpkgs/pkgs/development/tools/database/squirrel-sql/default.nix b/nixpkgs/pkgs/development/tools/database/squirrel-sql/default.nix
index 5aca6d55bc81..4363ec430957 100644
--- a/nixpkgs/pkgs/development/tools/database/squirrel-sql/default.nix
+++ b/nixpkgs/pkgs/development/tools/database/squirrel-sql/default.nix
@@ -4,11 +4,9 @@
 , jre
 , drivers ? []
 }:
-let
-  version = "4.1.0";
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "squirrel-sql";
-  inherit version;
+  version = "4.1.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/squirrel-sql/1-stable/${version}-plainzip/squirrelsql-${version}-standard.zip";
diff --git a/nixpkgs/pkgs/development/tools/delve/default.nix b/nixpkgs/pkgs/development/tools/delve/default.nix
index 9a0d19840e46..57f30ec3ae48 100644
--- a/nixpkgs/pkgs/development/tools/delve/default.nix
+++ b/nixpkgs/pkgs/development/tools/delve/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "delve";
-  version = "1.6.1";
+  version = "1.7.0";
 
   goPackagePath = "github.com/go-delve/delve";
   excludedPackages = "\\(_fixtures\\|scripts\\|service/test\\)";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     owner = "go-delve";
     repo = "delve";
     rev = "v${version}";
-    sha256 = "sha256-bTVCasemE8Vyjcs8wZBiiXEsW3UBndjpPQ5bi+4vQkw=";
+    sha256 = "sha256-RfBDeBuI/Yk24Q2jX/Re7fvx1bhYWJjqLhRkNHCaM9k=";
   };
 
   subPackages = [ "cmd/dlv" ];
diff --git a/nixpkgs/pkgs/development/tools/doctl/default.nix b/nixpkgs/pkgs/development/tools/doctl/default.nix
index 9ebc04ca63a0..aa7c7c8ca059 100644
--- a/nixpkgs/pkgs/development/tools/doctl/default.nix
+++ b/nixpkgs/pkgs/development/tools/doctl/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "doctl";
-  version = "1.61.0";
+  version = "1.62.0";
 
   vendorSha256 = null;
 
@@ -32,7 +32,7 @@ buildGoModule rec {
     owner = "digitalocean";
     repo = "doctl";
     rev = "v${version}";
-    sha256 = "sha256-Z6G80Xg2DSoUj8vhxkDr3W/wh3fecRwxm0oly2GYDdg=";
+    sha256 = "sha256-5YqGNuC1mmsIsEtnbgumaLuZGy3k6L9jZNbVwZln8WY=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/earthly/default.nix b/nixpkgs/pkgs/development/tools/earthly/default.nix
index b46a97df20a3..e806b502de86 100644
--- a/nixpkgs/pkgs/development/tools/earthly/default.nix
+++ b/nixpkgs/pkgs/development/tools/earthly/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "earthly";
-  version = "0.5.17";
+  version = "0.5.18";
 
   src = fetchFromGitHub {
     owner = "earthly";
     repo = "earthly";
     rev = "v${version}";
-    sha256 = "sha256-SuHHeO2KFjB3HbLv1ODBGaXzNaDi/FNPOGg/lX8JLJE=";
+    sha256 = "sha256-YY4scGRMuvyEpeEgvoJJsTtROl11hMyGr7vYBYvJY/w=";
   };
 
-  vendorSha256 = "sha256-D62fG+T3G1W7xteSGlTtEkXbQfGAmBTYJeATH2CVtwY=";
+  vendorSha256 = "sha256-aDkaOycQ/wPybSH5fnJIGtCOh+KV0wEF+qinRQQIdm4=";
 
   buildFlagsArray = ''
     -ldflags=
diff --git a/nixpkgs/pkgs/development/tools/efm-langserver/default.nix b/nixpkgs/pkgs/development/tools/efm-langserver/default.nix
index f42ae929af18..2984de4c5e17 100644
--- a/nixpkgs/pkgs/development/tools/efm-langserver/default.nix
+++ b/nixpkgs/pkgs/development/tools/efm-langserver/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "efm-langserver";
-  version = "0.0.31";
+  version = "0.0.32";
 
   src = fetchFromGitHub {
     owner = "mattn";
     repo = "efm-langserver";
     rev = "v${version}";
-    sha256 = "sha256-4NdD+WwvlqfJdPqXTz9LUyriJyLPppi8jH6dxYupe6A=";
+    sha256 = "sha256-zjjzdHlWEDDmPaDPuyk1ZoXwEFBogf51KjOmRmhFAdc=";
   };
 
   vendorSha256 = "sha256-tca+1SRrFyvU8ttHmfMFiGXd1A8rQSEWm1Mc2qp0EfI=";
diff --git a/nixpkgs/pkgs/development/tools/electron/default.nix b/nixpkgs/pkgs/development/tools/electron/default.nix
index ebcfcf1c55d9..07a094dd0e83 100644
--- a/nixpkgs/pkgs/development/tools/electron/default.nix
+++ b/nixpkgs/pkgs/development/tools/electron/default.nix
@@ -95,33 +95,33 @@ rec {
     headers = "01x6a0r2jawjpl09ixgzap3g0z6znj34hsnnhzanavkbds0ri4k6";
   };
 
-  electron_11 = mkElectron "11.4.9" {
-    x86_64-linux = "c18ed2e16e60ca1eddd01ab2e4fff2bbfd9f197ab17b7577155f05687297d7be";
-    x86_64-darwin = "ec34759ae768e55449c23244283c8af3dc5d5ab533d64cea0231be0a0878ebdd";
-    i686-linux = "ef9125268e03f2f1d13c2b2505ba2529af88a8397cad640bd35116caae7ab296";
-    armv7l-linux = "b43c00f4a0b4cf8affa09cedff93066d23d57a6148af383a8fc9f6d25b63d449";
-    aarch64-linux = "3df038538056fc4a918afe07138052b1f53648c411add47c3a18abe8a30e6f71";
-    aarch64-darwin = "acf880cfaea9ca382831df165fa7ef7e0b442c663d5a586cdfe0baa1aea4e17c";
-    headers = "1wfhc22g680pvv85rq8d8lw4vphpr700fmzs3nwxixxnzhp1sb79";
+  electron_11 = mkElectron "11.4.10" {
+    x86_64-linux = "bad6af91183bcb27428a258fba3fab24ef3e8435402d6cb2d500fe215b8c920c";
+    x86_64-darwin = "aaa11e61697ec2eec99950082a68eef32bc1231e51ac77cde6d96a12837f5b73";
+    i686-linux = "8e956bad6a6c5f85fe5a53304ffe878191c670ffbc13176fbe01911ba7d6da0f";
+    armv7l-linux = "c9e3873316416426151fbff9a190526e40a3e311d0f348ee6965a8c7948cb9c1";
+    aarch64-linux = "4ee0dab2af08f0d8f0d141a165744c949b068a8a6537ef5ff7973b63266c2abf";
+    aarch64-darwin = "53f96ba6099617c219ca75bde1682abb9e961927e5a3645b38dee11b95517659";
+    headers = "0c7qms8vbirblg6z86s19p5l472p3h8lw1rj7ckgnwna4b68vn33";
   };
 
-  electron_12 = mkElectron "12.0.12" {
-    x86_64-linux = "98e7cc5dd3f161c37cbbd9aef90d55c51531a4bad8221a9d1f92e78014758054";
-    x86_64-darwin = "3a39933c1c83406e4ddbce2af193e9a6b7b77f418c4f1d5e7b8f9edc348acd15";
-    i686-linux = "2a06936fa13929342ebb7521d2e3e8b4a7a08ac1d757c0521a047b4cf0a979fc";
-    armv7l-linux = "c0a2c13d99a1152aa6252fd8237207a6f395b70d0890eba5b7209a03beb9a6ec";
-    aarch64-linux = "a92e2eaebab75b93eda0bc523ba9262a32db95c7546c095fee93d39a304521a0";
-    aarch64-darwin = "810a1f36574a2db8d7d4022a042a65cceec3443644487868c5609b16b5dfe29f";
-    headers = "1qis2k8yc7g1klvhiysjrgl5gclx4idxdz60kh8ldrji5a0lgha1";
+  electron_12 = mkElectron "12.0.14" {
+    x86_64-linux = "a75886b5aad27c64232ec0ec47d8c3c1d696ab968007cd8bfa5db87b33e8a5e7";
+    x86_64-darwin = "03b30610f23be9ef835a78e9d4babc52ff32e29ff33c51218b1b8970c3bd6062";
+    i686-linux = "0bb86208173da28250f261b162657c3614b859fb561df54cbd25b566d619c75c";
+    armv7l-linux = "bd743c6eec434aedb80e7e5eef58dfe9f133bc48015d263dc12a119dd1276e32";
+    aarch64-linux = "1f287496cc61c67db25339f8f79d09ace952edeaca47ea664766425ceaebc2a3";
+    aarch64-darwin = "50171b32c927ab5b658da5b4459eca5ddb5df89cc655ae753cc6d02b4ed9b30d";
+    headers = "1znhnily1gl2f58f0ny1fa3yilmm4xn5fcdvqkjh4czv5c12rrbg";
   };
 
-  electron_13 = mkElectron "13.1.4" {
-    x86_64-linux = "096909396be9fac888ca35093d16bdb50a965e3200823f2384574c359f15cd4f";
-    x86_64-darwin = "3d9980f8062766be3cfcfd54b9fd9f469993df06d538a2324c4879eae1284c84";
-    i686-linux = "73c8b1fc01a89a5f9b12de38ed70bd01686e50a55d817f0cdf5914e953bdc868";
-    armv7l-linux = "db2fe2f499865ea697cacef992fc0042ac0f75da4c016d64e5c41deae7f5eb72";
-    aarch64-linux = "4acdd4eae499e1ed42871ed8b744fdef9f608f5613742090cc20e4f6b5314ae8";
-    aarch64-darwin = "e961b7d361c378e4adab7903211ac7200684cb91044c3b300acde04ca24d0468";
-    headers = "1h1sr5nk37asbj1fadgjzksgr876wxdmq3b017bb9k5kcgajcmqr";
+  electron_13 = mkElectron "13.1.6" {
+    x86_64-linux = "6f28af0a3ccb20b0d2e4f26ea4698d5b89b81e860cbd40a446c2a8223fdf0101";
+    x86_64-darwin = "e2bde9b3b2ee092b80d18439780c4ecb4620da1ead9fcae00cc603f3a56fda3e";
+    i686-linux = "7c266148fba83c3eb912c5ccd7cd7c24829bc93b380378cba0480b02c38f5d42";
+    armv7l-linux = "8d54ec6babc06b118038d2d4f49cab84ec6d5617c645266b88dd829c02354e77";
+    aarch64-linux = "d24ba0e3f8624ec611fb2e9165c08b227ba799196b0f2787cad8c60f1cc23b5b";
+    aarch64-darwin = "0fa29c1ba89ab906c5ba20216c505b6d8d3fbccdc58cd397146783bddeff1dd4";
+    headers = "122ppxayj1fijzfdpnh3wqyi636dq53j8imyf46ik8fkvgmrw2mz";
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/esbuild/default.nix b/nixpkgs/pkgs/development/tools/esbuild/default.nix
index 8b37899ef675..d3833d3b1473 100644
--- a/nixpkgs/pkgs/development/tools/esbuild/default.nix
+++ b/nixpkgs/pkgs/development/tools/esbuild/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "esbuild";
-  version = "0.12.14";
+  version = "0.12.15";
 
   src = fetchFromGitHub {
     owner = "evanw";
     repo = "esbuild";
     rev = "v${version}";
-    sha256 = "sha256-+qFR5XGV1LSCY8AR7gd269UcOwlL5hkvKiQEhdsqIJc=";
+    sha256 = "sha256-Ikt8kBkwI9AQrWp9j4Zaf+BqGVcyhyagBDjTGZm/dzQ=";
   };
 
   vendorSha256 = "sha256-2ABWPqhK2Cf4ipQH7XvRrd+ZscJhYPc3SV2cGT0apdg=";
diff --git a/nixpkgs/pkgs/development/tools/fdroidserver/default.nix b/nixpkgs/pkgs/development/tools/fdroidserver/default.nix
index 2cc5e6b7ca5c..af851e252110 100644
--- a/nixpkgs/pkgs/development/tools/fdroidserver/default.nix
+++ b/nixpkgs/pkgs/development/tools/fdroidserver/default.nix
@@ -4,19 +4,19 @@
 , lib }:
 
 python.pkgs.buildPythonApplication rec {
-  version = "1.1.9";
+  version = "2.0.3";
   pname = "fdroidserver";
 
   src = fetchFromGitLab {
     owner = "fdroid";
     repo = "fdroidserver";
     rev = version;
-    sha256 = "098dcg8jdi4q1prfjmd2lbhcyzb8fmmfhbxhid4kqx8vcv7r0iql";
+    sha256 = "sha256-/tX45t/DsWd0/R9VJJsqNjoOkgGIvqvq05YaVp0pLf0=";
   };
 
-  patchPhase = ''
+  postPatch = ''
     substituteInPlace fdroidserver/common.py --replace "FDROID_PATH = os.path.realpath(os.path.join(os.path.dirname(__file__), '..'))" "FDROID_PATH = '$out/bin'"
-    substituteInPlace setup.py --replace "pyasn1-modules == 0.2.1" "pyasn1-modules"
+    substituteInPlace setup.py --replace "pyasn1-modules >= 0.2.1, < 0.3" "pyasn1-modules"
   '';
 
   preConfigure = ''
@@ -47,11 +47,14 @@ python.pkgs.buildPythonApplication rec {
     qrcode
     requests
     ruamel_yaml
+    yamllint
   ];
 
   # no tests
   doCheck = false;
 
+  pythonImportsCheck = [ "fdroidserver" ];
+
   meta = with lib; {
     homepage = "https://f-droid.org";
     description = "Server and tools for F-Droid, the Free Software repository system for Android";
diff --git a/nixpkgs/pkgs/development/tools/flyway/default.nix b/nixpkgs/pkgs/development/tools/flyway/default.nix
index f581806433f6..4679c6aa0523 100644
--- a/nixpkgs/pkgs/development/tools/flyway/default.nix
+++ b/nixpkgs/pkgs/development/tools/flyway/default.nix
@@ -1,39 +1,36 @@
 { lib, stdenv, fetchurl, jre_headless, makeWrapper }:
-  let
-    version = "7.5.4";
-  in
-    stdenv.mkDerivation {
-      pname = "flyway";
-      inherit version;
-      src = fetchurl {
-        url = "https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/${version}/flyway-commandline-${version}.tar.gz";
-        sha256 = "sha256-WU8j1NSf2KfA/HJWFtMLOZ3t5nxW4sU713e6qEEhZ0I=";
-      };
-      nativeBuildInputs = [ makeWrapper ];
-      dontBuild = true;
-      dontStrip = true;
-      installPhase = ''
-        mkdir -p $out/bin $out/share/flyway
-        cp -r sql jars drivers conf $out/share/flyway
-        install -Dt $out/share/flyway/lib lib/community/*.jar lib/*.jar
-        makeWrapper "${jre_headless}/bin/java" $out/bin/flyway \
-          --add-flags "-Djava.security.egd=file:/dev/../dev/urandom" \
-          --add-flags "-classpath '$out/share/flyway/lib/*:$out/share/flyway/drivers/*'" \
-          --add-flags "org.flywaydb.commandline.Main" \
-          --add-flags "-jarDirs='$out/share/flyway/jars'"
-      '';
-      meta = with lib; {
-        description = "Evolve your Database Schema easily and reliably across all your instances";
-        longDescription = ''
-          The Flyway command-line tool is a standalone Flyway distribution.
-          It is primarily meant for users who wish to migrate their database from the command-line
-          without having to integrate Flyway into their applications nor having to install a build tool.
+stdenv.mkDerivation rec{
+  pname = "flyway";
+  version = "7.5.4";
+  src = fetchurl {
+    url = "https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/${version}/flyway-commandline-${version}.tar.gz";
+    sha256 = "sha256-WU8j1NSf2KfA/HJWFtMLOZ3t5nxW4sU713e6qEEhZ0I=";
+  };
+  nativeBuildInputs = [ makeWrapper ];
+  dontBuild = true;
+  dontStrip = true;
+  installPhase = ''
+    mkdir -p $out/bin $out/share/flyway
+    cp -r sql jars drivers conf $out/share/flyway
+    install -Dt $out/share/flyway/lib lib/community/*.jar lib/*.jar
+    makeWrapper "${jre_headless}/bin/java" $out/bin/flyway \
+      --add-flags "-Djava.security.egd=file:/dev/../dev/urandom" \
+      --add-flags "-classpath '$out/share/flyway/lib/*:$out/share/flyway/drivers/*'" \
+      --add-flags "org.flywaydb.commandline.Main" \
+      --add-flags "-jarDirs='$out/share/flyway/jars'"
+  '';
+  meta = with lib; {
+    description = "Evolve your Database Schema easily and reliably across all your instances";
+    longDescription = ''
+      The Flyway command-line tool is a standalone Flyway distribution.
+      It is primarily meant for users who wish to migrate their database from the command-line
+      without having to integrate Flyway into their applications nor having to install a build tool.
 
-          This package is only the Community Edition of the Flyway command-line tool.
-        '';
-        homepage = "https://flywaydb.org/";
-        license = licenses.asl20;
-        platforms = platforms.unix;
-        maintainers = [ maintainers.cmcdragonkai ];
-      };
-    }
+      This package is only the Community Edition of the Flyway command-line tool.
+    '';
+    homepage = "https://flywaydb.org/";
+    license = licenses.asl20;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.cmcdragonkai ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/frugal/default.nix b/nixpkgs/pkgs/development/tools/frugal/default.nix
index 0b1e8d16b65a..c20993fbea9f 100644
--- a/nixpkgs/pkgs/development/tools/frugal/default.nix
+++ b/nixpkgs/pkgs/development/tools/frugal/default.nix
@@ -2,18 +2,18 @@
 
 buildGoModule rec {
   pname = "frugal";
-  version = "3.14.5";
+  version = "3.14.6";
 
   src = fetchFromGitHub {
     owner = "Workiva";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Er9V6mSe4Pt/RzFAPa3ci3J7FQh5GLbh9CjYHx/HnYM=";
+    sha256 = "sha256-MtQz/9+e2l4FQ1E299KtRzFpX67FynHdsvcMA4CqKUo=";
   };
 
   subPackages = [ "." ];
 
-  vendorSha256 = "sha256-9M6SSxMQ8JMJ7ZNl8cjQuid/B0xc28/BuPozxftthe0=";
+  vendorSha256 = "sha256-Y7lh+U4FKiht2PgACWSXwGTx+y8aJi22KEhqxHPooCw=";
 
   meta = with lib; {
     description = "Thrift improved";
diff --git a/nixpkgs/pkgs/development/tools/gnulib/default.nix b/nixpkgs/pkgs/development/tools/gnulib/default.nix
index 7441d4018a85..708cdb511a84 100644
--- a/nixpkgs/pkgs/development/tools/gnulib/default.nix
+++ b/nixpkgs/pkgs/development/tools/gnulib/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation {
   pname = "gnulib";
-  version = "20200223";
+  version = "20210702";
 
   src = fetchgit {
     url = "https://git.savannah.gnu.org/r/gnulib.git";
-    rev = "292fd5d6ff5ecce81ec3c648f353732a9ece83c0";
-    sha256 = "0hkg3nql8nsll0vrqk4ifda0v4kpi67xz42r8daqsql6c4rciqnw";
+    rev = "901694b904cd861adc2529b2e05a3fb33f9b534f";
+    sha256 = "1f5znlv2wjziglw9vlygdgm4jfbsz34h2dz6w4h90bl4hm0ycb1w";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/tools/go-task/default.nix b/nixpkgs/pkgs/development/tools/go-task/default.nix
index 280e0c1e986b..d9b32c2c5248 100644
--- a/nixpkgs/pkgs/development/tools/go-task/default.nix
+++ b/nixpkgs/pkgs/development/tools/go-task/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "go-task";
-  version = "3.5.0";
+  version = "3.6.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = "task";
     rev = "v${version}";
-    sha256 = "sha256-oXr98guqEvE/rpRJF5NMjQYZtzbrh1F/neXYbLaCGUg=";
+    sha256 = "sha256-3DTjxcMxgaTMunctHaCgOX5/P85lJDRin6RpMuv9Rfg=";
   };
 
   vendorSha256 = "sha256-bsVzV2M31BA7X6aq8na7v56uGYgne4OwR5kz/utmQHI=";
diff --git a/nixpkgs/pkgs/development/tools/gopls/default.nix b/nixpkgs/pkgs/development/tools/gopls/default.nix
index cfe69886d4bb..ba549d5aaa5b 100644
--- a/nixpkgs/pkgs/development/tools/gopls/default.nix
+++ b/nixpkgs/pkgs/development/tools/gopls/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gopls";
-  version = "0.6.10";
+  version = "0.7.0";
 
   src = fetchgit {
     rev = "gopls/v${version}";
     url = "https://go.googlesource.com/tools";
-    sha256 = "13mv6rvqlmgn1shx0hnlqxgqiiiz1ij37j30jz1jkr9kcrbxpacr";
+    sha256 = "0vylrsmpszij23yngk7mfysp8rjbf29nyskbrwwysf63r9xbrwbi";
   };
 
   modRoot = "gopls";
-  vendorSha256 = "01apsvkds8f3m88inb37z4lgalrbjp12xr2jikwx7n10hjddgbqi";
+  vendorSha256 = "1mnc84nvl7zhl4pzf90cd0gvid9g1jph6hcxk6lrlnfk2j2m75mj";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/java/fastjar/default.nix b/nixpkgs/pkgs/development/tools/java/fastjar/default.nix
index 52211e302dd9..c81df42edb11 100644
--- a/nixpkgs/pkgs/development/tools/java/fastjar/default.nix
+++ b/nixpkgs/pkgs/development/tools/java/fastjar/default.nix
@@ -1,32 +1,31 @@
 { fetchurl, lib, stdenv, zlib }:
 
-let version = "0.98"; in
-  stdenv.mkDerivation {
-    pname = "fastjar";
-    inherit version;
+stdenv.mkDerivation rec {
+  pname = "fastjar";
+  version = "0.98";
 
-    src = fetchurl {
-      url = "https://download.savannah.gnu.org/releases/fastjar/fastjar-${version}.tar.gz";
-      sha256 = "0iginbz2m15hcsa3x4y7v3mhk54gr1r7m3ghx0pg4n46vv2snmpi";
-    };
+  src = fetchurl {
+    url = "https://download.savannah.gnu.org/releases/fastjar/fastjar-${version}.tar.gz";
+    sha256 = "0iginbz2m15hcsa3x4y7v3mhk54gr1r7m3ghx0pg4n46vv2snmpi";
+  };
 
-    buildInputs = [ zlib ];
+  buildInputs = [ zlib ];
 
-    doCheck = true;
+  doCheck = true;
 
-    meta = {
-      description = "Fast Java archiver written in C";
+  meta = {
+    description = "Fast Java archiver written in C";
 
-      longDescription = ''
-        Fastjar is a version of Sun's `jar' utility, written entirely in C, and
-        therefore quite a bit faster.  Fastjar can be up to 100x faster than
-        the stock `jar' program running without a JIT.
-      '';
+    longDescription = ''
+      Fastjar is a version of Sun's `jar' utility, written entirely in C, and
+      therefore quite a bit faster.  Fastjar can be up to 100x faster than
+      the stock `jar' program running without a JIT.
+    '';
 
-      homepage = "https://savannah.nongnu.org/projects/fastjar/";
+    homepage = "https://savannah.nongnu.org/projects/fastjar/";
 
-      license = lib.licenses.gpl2Plus;
-      platforms = lib.platforms.linux;
-      maintainers = [ ];
-    };
-  }
+    license = lib.licenses.gpl2Plus;
+    platforms = lib.platforms.linux;
+    maintainers = [ ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/jq/default.nix b/nixpkgs/pkgs/development/tools/jq/default.nix
index 39819db47def..feeb22e1d441 100644
--- a/nixpkgs/pkgs/development/tools/jq/default.nix
+++ b/nixpkgs/pkgs/development/tools/jq/default.nix
@@ -66,6 +66,5 @@ stdenv.mkDerivation rec {
     platforms = with platforms; linux ++ darwin;
     downloadPage = "http://stedolan.github.io/jq/download/";
     updateWalker = true;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/ko/default.nix b/nixpkgs/pkgs/development/tools/ko/default.nix
new file mode 100644
index 000000000000..4754a32db825
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/ko/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, git
+}:
+
+buildGoModule rec {
+  pname = "ko";
+  version = "0.8.3";
+
+  src = fetchFromGitHub {
+    owner = "google";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-LoOXZY4uF7GSS3Dh/ozCsLJTxgmPmZZuEisJ4ShjCBc=";
+  };
+
+  vendorSha256 = null;
+  excludedPackages = "test";
+  checkInputs = [ git ];
+  preCheck = ''
+    git init
+  '';
+
+  meta = with lib; {
+    description = "A simple, fast container image builder for Go applications.";
+    homepage = "https://github.com/google/ko";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ nickcao ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/kubectx/default.nix b/nixpkgs/pkgs/development/tools/kubectx/default.nix
index f9d109f33879..8ddd7685dcfb 100644
--- a/nixpkgs/pkgs/development/tools/kubectx/default.nix
+++ b/nixpkgs/pkgs/development/tools/kubectx/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "kubectx";
-  version = "0.9.3";
+  version = "0.9.4";
 
   src = fetchFromGitHub {
     owner = "ahmetb";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-anTogloat0YJN6LR6mww5IPwokHYoDY6L7i2pMzI8/M=";
+    sha256 = "sha256-WY0zFt76mvdzk/s2Rzqys8n+DVw6qg7V6Y8JncOUVCM=";
   };
 
   vendorSha256 = "sha256-4sQaqC0BOsDfWH3cHy2EMQNMq6qiAcbV+RwxCdcSxsg=";
diff --git a/nixpkgs/pkgs/development/tools/kubie/default.nix b/nixpkgs/pkgs/development/tools/kubie/default.nix
index c563d9bef096..5c86b9a24060 100644
--- a/nixpkgs/pkgs/development/tools/kubie/default.nix
+++ b/nixpkgs/pkgs/development/tools/kubie/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "kubie";
-  version = "0.15.0";
+  version = "0.15.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "sbstp";
     repo = "kubie";
-    sha256 = "sha256-uNlKxcU1iCR4JzNfBatEeKMMdu9ZqvOqna0sGrcwK30=";
+    sha256 = "sha256-jv5IhTxusB74pnpoopl+fKnXDJI/65D8PSuhGVgbDyo=";
   };
 
-  cargoSha256 = "sha256-4Xo17HlYvJLf90R0gS9EFJSJKmNHClXqAJTx9mY29KA=";
+  cargoSha256 = "sha256-6SaW3wqhn251GaH3GRNaSqRLnbQimDBRSt+RPgJG1M8=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/development/tools/lattice-diamond/default.nix b/nixpkgs/pkgs/development/tools/lattice-diamond/default.nix
index 4c94ff1e6e27..ce3525420613 100644
--- a/nixpkgs/pkgs/development/tools/lattice-diamond/default.nix
+++ b/nixpkgs/pkgs/development/tools/lattice-diamond/default.nix
@@ -1,8 +1,9 @@
-{ lib, stdenv, rpmextract, patchelf, makeWrapper, file, requireFile, glib, zlib, 
+{ lib, stdenv, rpmextract, patchelf, makeWrapper, file, requireFile, glib, zlib,
     freetype, fontconfig, xorg, libusb-compat-0_1 }:
 
 stdenv.mkDerivation {
-  name = "diamond-3.10";
+  pname = "diamond";
+  version = "3.10";
 
   nativeBuildInputs = [ rpmextract patchelf makeWrapper file ];
 
@@ -15,17 +16,17 @@ stdenv.mkDerivation {
   buildCommand = ''
     origprefix=usr/local/diamond/3.10_x64
     prefix=diamond
-    
+
     echo "Unpacking $src..."
     rpmextract $src
-    
+
     # Move $pwd/usr/local/diamond/VERS to $out/diamond, cd.
     mkdir -p $out/$prefix
     rmdir $out/$prefix
     mv $origprefix $out/$prefix
-    
+
     cd $out
-    
+
     # Extract all tarballs.
     for tb in \
         cae_library/cae_library.tar.gz \
@@ -36,13 +37,13 @@ stdenv.mkDerivation {
         bin/bin.tar.gz \
         examples/examples.tar.gz \
         data/data.tar.gz ; do
-    
+
         echo "Extracting tarball $prefix/$tb"
         cd $out/$prefix/$(dirname $tb)
         tar xf $(basename $tb)
         rm $(basename $tb)
     done
-    
+
     # Patch shebangs in start scripts .
     cd $out/$prefix/bin/lin64
     for tool in \
@@ -60,11 +61,11 @@ stdenv.mkDerivation {
         ipexpress \
         fileutility \
         diamond ; do
-        
+
         echo "Patching script $prefix/bin/lin64/$tool..."
         patchShebangs $tool
     done
-    
+
     # Patch executable ELFs.
     for path in bin/lin64 ispfpga/bin/lin64; do
         cd $out/$prefix/$path
@@ -82,10 +83,10 @@ stdenv.mkDerivation {
                 $f
         done
     done
-    
+
     # Remove 32-bit libz.
     rm $out/$prefix/bin/lin64/libz.{so,so.1}
-    
+
     # Make wrappers (should these target more than the 'diamond' tool?).
     # The purpose of these is just to call the target program using its
     # absolute path - otherwise, it will crash.
diff --git a/nixpkgs/pkgs/development/tools/libsigrokdecode/default.nix b/nixpkgs/pkgs/development/tools/libsigrokdecode/default.nix
index cb3b30405962..7c8ad17c5a08 100644
--- a/nixpkgs/pkgs/development/tools/libsigrokdecode/default.nix
+++ b/nixpkgs/pkgs/development/tools/libsigrokdecode/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, glib, python3, libsigrok, check }:
 
 stdenv.mkDerivation rec {
-  name = "libsigrokdecode-0.5.3";
+  pname = "libsigrokdecode";
+  version = "0.5.3";
 
   src = fetchurl {
-    url = "https://sigrok.org/download/source/libsigrokdecode/${name}.tar.gz";
+    url = "https://sigrok.org/download/source/${pname}/${pname}-${version}.tar.gz";
     sha256 = "1h1zi1kpsgf6j2z8j8hjpv1q7n49i3fhqjn8i178rka3cym18265";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/mdk/default.nix b/nixpkgs/pkgs/development/tools/mdk/default.nix
index 6db4395a14f5..df55c44f5649 100644
--- a/nixpkgs/pkgs/development/tools/mdk/default.nix
+++ b/nixpkgs/pkgs/development/tools/mdk/default.nix
@@ -1,9 +1,10 @@
 { lib, stdenv, fetchurl, intltool, pkg-config, glib }:
 
-stdenv.mkDerivation {
-  name = "gnu-mdk-1.3.0";
+stdenv.mkDerivation rec {
+  pname = "gnu-mdk";
+  version = "1.3.0";
   src = fetchurl {
-    url = "https://ftp.gnu.org/gnu/mdk/v1.3.0/mdk-1.3.0.tar.gz";
+    url = "mirror://ftp.gnu.org/gnu/mdk/v${version}/mdk-${version}.tar.gz";
     sha256 = "0bhk3c82kyp8167h71vdpbcr852h5blpnwggcswqqwvvykbms7lb";
   };
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/tools/minizinc/default.nix b/nixpkgs/pkgs/development/tools/minizinc/default.nix
index c1e0a356df35..06a6bd3dfd54 100644
--- a/nixpkgs/pkgs/development/tools/minizinc/default.nix
+++ b/nixpkgs/pkgs/development/tools/minizinc/default.nix
@@ -1,10 +1,7 @@
 { lib, stdenv, fetchFromGitHub, cmake, flex, bison }:
-let
-  version = "2.5.5";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "minizinc";
-  inherit version;
+  version = "2.5.5";
 
   nativeBuildInputs = [ cmake flex bison ];
 
diff --git a/nixpkgs/pkgs/development/tools/minizinc/ide.nix b/nixpkgs/pkgs/development/tools/minizinc/ide.nix
index a1ce9d0a6960..ef7dcb353215 100644
--- a/nixpkgs/pkgs/development/tools/minizinc/ide.nix
+++ b/nixpkgs/pkgs/development/tools/minizinc/ide.nix
@@ -1,10 +1,7 @@
 { lib, mkDerivation, fetchFromGitHub, qtbase, qtwebengine, qtwebkit, qmake, minizinc }:
-let
-  version = "2.5.3";
-in
-mkDerivation {
+mkDerivation rec {
   pname = "minizinc-ide";
-  inherit version;
+  version = "2.5.3";
 
   nativeBuildInputs = [ qmake ];
   buildInputs = [ qtbase qtwebengine qtwebkit ];
diff --git a/nixpkgs/pkgs/development/tools/misc/autobuild/default.nix b/nixpkgs/pkgs/development/tools/misc/autobuild/default.nix
index 186608cde3f1..b6970beb8734 100644
--- a/nixpkgs/pkgs/development/tools/misc/autobuild/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/autobuild/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, makeWrapper, perl, openssh, rsync }:
 
 stdenv.mkDerivation rec {
-  name = "autobuild-5.3";
+  pname = "autobuild";
+  version = "5.3";
 
   src = fetchurl {
-    url = "http://savannah.spinellicreations.com/autobuild/${name}.tar.gz";
+    url = "mirror://savannah/${pname}/${pname}-${version}.tar.gz";
     sha256 = "0gv7g61ja9q9zg1m30k4snqwwy1kq7b4df6sb7d2qra7kbdq8af1";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/avrdude/default.nix b/nixpkgs/pkgs/development/tools/misc/avrdude/default.nix
index 9cfd93800103..db2ffce50cec 100644
--- a/nixpkgs/pkgs/development/tools/misc/avrdude/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/avrdude/default.nix
@@ -6,10 +6,11 @@
 assert docSupport -> texLive != null && texinfo != null && texi2html != null;
 
 stdenv.mkDerivation rec {
-  name = "avrdude-6.3";
+  pname = "avrdude";
+  version = "6.3";
 
   src = fetchurl {
-    url = "mirror://savannah/avrdude/${name}.tar.gz";
+    url = "mirror://savannah/${pname}/${pname}-${version}.tar.gz";
     sha256 = "15m1w1qad3dj7r8n5ng1qqcaiyx1gyd6hnc3p2apgjllccdp77qg";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/babeltrace/default.nix b/nixpkgs/pkgs/development/tools/misc/babeltrace/default.nix
index 26c484017d2b..3dc424f106bf 100644
--- a/nixpkgs/pkgs/development/tools/misc/babeltrace/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/babeltrace/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, glib, libuuid, popt, elfutils }:
 
 stdenv.mkDerivation rec {
-  name = "babeltrace-1.5.8";
+  pname = "babeltrace";
+  version = "1.5.8";
 
   src = fetchurl {
-    url = "https://www.efficios.com/files/babeltrace/${name}.tar.bz2";
+    url = "https://www.efficios.com/files/babeltrace/${pname}-${version}.tar.bz2";
     sha256 = "1hkg3phnamxfrhwzmiiirbhdgckzfkqwhajl0lmr1wfps7j47wcz";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/bossa/default.nix b/nixpkgs/pkgs/development/tools/misc/bossa/default.nix
index 74073722857f..4e35ff35f660 100644
--- a/nixpkgs/pkgs/development/tools/misc/bossa/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/bossa/default.nix
@@ -14,7 +14,8 @@ let
 
 in
 stdenv.mkDerivation {
-  name = "bossa-1.8";
+  pname = "bossa";
+  version = "1.8";
 
   src = fetchgit {
     url = "https://github.com/shumatech/BOSSA";
diff --git a/nixpkgs/pkgs/development/tools/misc/cbrowser/default.nix b/nixpkgs/pkgs/development/tools/misc/cbrowser/default.nix
index 62aa0ab5decf..a8f6e32f1e08 100644
--- a/nixpkgs/pkgs/development/tools/misc/cbrowser/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/cbrowser/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, tk, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "cbrowser-0.8";
+  pname = "cbrowser";
+  version = "0.8";
 
   src = fetchurl {
-    url = "mirror://sourceforge/cbrowser/cbrowser-0.8.tar.gz";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
     sha256 = "1050mirjab23qsnq3lp3a9vwcbavmh9kznzjm7dr5vkx8b7ffcji";
   };
 
@@ -14,10 +15,10 @@ stdenv.mkDerivation rec {
   buildInputs = [ tk ];
 
   installPhase = ''
-    mkdir -p $out/bin $out/share/${name}
-    cp -R * $out/share/${name}/
+    mkdir -p $out/bin $out/share/${pname}-${version}
+    cp -R * $out/share/${pname}-${version}/
 
-    makeWrapper $out/share/${name}/cbrowser $out/bin/cbrowser \
+    makeWrapper $out/share/${pname}-${version}/cbrowser $out/bin/cbrowser \
       --prefix PATH : ${tk}/bin
   '';
 
diff --git a/nixpkgs/pkgs/development/tools/misc/cflow/default.nix b/nixpkgs/pkgs/development/tools/misc/cflow/default.nix
index b9e75d7cb2a3..92a812d5a212 100644
--- a/nixpkgs/pkgs/development/tools/misc/cflow/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/cflow/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, gettext, emacs }:
 
 stdenv.mkDerivation rec {
-  name = "cflow-1.6";
+  pname = "cflow";
+  version = "1.6";
 
   src = fetchurl {
-    url = "mirror://gnu/cflow/${name}.tar.bz2";
+    url = "mirror://gnu/${pname}/${pname}-${version}.tar.bz2";
     sha256 = "1mzd3yf0dfv8h2av5vsxxlhpk21nw064h91b2kgfrdz92r0pnj1l";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/chrpath/default.nix b/nixpkgs/pkgs/development/tools/misc/chrpath/default.nix
index ff804f897d1e..97da80cc7339 100644
--- a/nixpkgs/pkgs/development/tools/misc/chrpath/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/chrpath/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
-stdenv.mkDerivation {
-  name = "chrpath-0.16";
+stdenv.mkDerivation rec {
+  pname = "chrpath";
+  version = "0.16";
 
   src = fetchurl {
-    url = "https://alioth-archive.debian.org/releases/chrpath/chrpath/0.16/chrpath-0.16.tar.gz";
+    url = "https://alioth-archive.debian.org/releases/${pname}/${pname}/${version}/${pname}-${version}.tar.gz";
     sha256 = "0yvfq891mcdkf8g18gjjkn2m5rvs8z4z4cl1vwdhx6f2p9a4q3dv";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix b/nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix
index 8783d217c1fa..b99e8a734579 100644
--- a/nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix
@@ -1,28 +1,26 @@
-{ lib, stdenv, graalvm11-ce, babashka, fetchurl, fetchFromGitHub }:
+{ lib, stdenv, graalvm11-ce, babashka, fetchurl, fetchFromGitHub, clojure }:
 
 stdenv.mkDerivation rec {
   pname = "clojure-lsp";
-  version = "2021.06.01-16.19.44";
+  version = "2021.07.12-12.30.59";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "sha256-dACvjm+uEVWotoeYhA4gCenKeprpF2dI0PGNRAVALao=";
+    sha256 = "0iky3yh548xn28285x8gnjzc00f3i2b415wb2dhd9p9y2bgzhkld";
   };
 
   jar = fetchurl {
     url = "https://github.com/clojure-lsp/clojure-lsp/releases/download/${version}/clojure-lsp.jar";
-    sha256 = "sha256-V12rSYv/Yu12ZpLSROd+4pyGiEGRfJ7lmRqCeikcQ5Q=";
+    sha256 = "02k1k0slh1lm7k43d52jvgl0fdyp9gcr8csbr6yi71qbhy0axrmp";
   };
 
   GRAALVM_HOME = graalvm11-ce;
   CLOJURE_LSP_JAR = jar;
   CLOJURE_LSP_XMX = "-J-Xmx4g";
 
-  patches = lib.optionals stdenv.isDarwin [ ./disable-check-toolchain.patch ];
-
-  buildInputs = [ graalvm11-ce ];
+  buildInputs = [ graalvm11-ce clojure ];
 
   buildPhase = with lib; ''
     runHook preBuild
diff --git a/nixpkgs/pkgs/development/tools/misc/clojure-lsp/disable-check-toolchain.patch b/nixpkgs/pkgs/development/tools/misc/clojure-lsp/disable-check-toolchain.patch
deleted file mode 100644
index 402189627c25..000000000000
--- a/nixpkgs/pkgs/development/tools/misc/clojure-lsp/disable-check-toolchain.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/graalvm/native-unix-compile.sh b/graalvm/native-unix-compile.sh
-index ec0e49f..e19a120 100755
---- a/graalvm/native-unix-compile.sh
-+++ b/graalvm/native-unix-compile.sh
-@@ -17,6 +17,7 @@ CLOJURE_LSP_XMX=${CLOJURE_LSP_XMX:-"-J-Xmx4g"}
- 
- args=("-jar" "$CLOJURE_LSP_JAR"
-       "-H:+ReportExceptionStackTraces"
-+      "-H:-CheckToolchain"
-       "--verbose"
-       "--no-fallback"
-       "--native-image-info"
diff --git a/nixpkgs/pkgs/development/tools/misc/cppi/default.nix b/nixpkgs/pkgs/development/tools/misc/cppi/default.nix
index 9fe5ed966724..b0dcfc6aa5ca 100644
--- a/nixpkgs/pkgs/development/tools/misc/cppi/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/cppi/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv }:
 
 stdenv.mkDerivation rec {
-  name = "cppi-1.18";
+  pname = "cppi";
+  version = "1.18";
 
   src = fetchurl {
-    url = "mirror://gnu/cppi/${name}.tar.xz";
+    url = "mirror://gnu/${pname}/${pname}-${version}.tar.xz";
     sha256 = "1jk42cjaggk71rimjnx3qpmb6hivps0917vl3z7wbxk3i2whb98j";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/cscope/default.nix b/nixpkgs/pkgs/development/tools/misc/cscope/default.nix
index 7eb38e385e8f..c79a2d252012 100644
--- a/nixpkgs/pkgs/development/tools/misc/cscope/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/cscope/default.nix
@@ -3,10 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "cscope-15.9";
+  pname = "cscope";
+  version = "15.9";
 
   src = fetchurl {
-    url = "mirror://sourceforge/cscope/${name}.tar.gz";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
     sha256 = "0ngiv4aj3rr35k3q3wjx0y19gh7i1ydqa0cqip6sjwd8fph5ll65";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/dbench/default.nix b/nixpkgs/pkgs/development/tools/misc/dbench/default.nix
index 9565eaa36262..78b743ef9f1b 100644
--- a/nixpkgs/pkgs/development/tools/misc/dbench/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/dbench/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchgit, autoconf, popt, zlib, rpcsvc-proto, libtirpc }:
 
-stdenv.mkDerivation {
-  name = "dbench-2013-01-01";
+stdenv.mkDerivation rec {
+  pname = "dbench";
+  version = "2013-01-01";
 
   src = fetchgit {
-    url = "git://git.samba.org/sahlberg/dbench.git";
+    url = "git://git.samba.org/sahlberg/${pname}.git";
     rev = "65b19870ed8d25bff14cafa1c30beb33f1fb6597";
     sha256 = "16lcbwmmx8z5i73k3dnf54yffrpx7ql3y9k3cpkss9dcyxb1p83i";
   };
diff --git a/nixpkgs/pkgs/development/tools/misc/ddd/default.nix b/nixpkgs/pkgs/development/tools/misc/ddd/default.nix
index 74eb9fcb2936..ca50deb504d3 100644
--- a/nixpkgs/pkgs/development/tools/misc/ddd/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/ddd/default.nix
@@ -1,9 +1,10 @@
 {lib, stdenv, fetchurl, motif, ncurses, libX11, libXt}:
 
 stdenv.mkDerivation rec {
-  name = "ddd-3.3.12";
+  pname = "ddd";
+  version = "3.3.12";
   src = fetchurl {
-    url = "mirror://gnu/ddd/${name}.tar.gz";
+    url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
     sha256 = "0p5nx387857w3v2jbgvps2p6mlm0chajcdw5sfrddcglsxkwvmis";
   };
   buildInputs = [motif ncurses libX11 libXt];
diff --git a/nixpkgs/pkgs/development/tools/misc/debugedit/default.nix b/nixpkgs/pkgs/development/tools/misc/debugedit/default.nix
new file mode 100644
index 000000000000..0328d1f597b2
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/debugedit/default.nix
@@ -0,0 +1,30 @@
+#TODO@deliciouslytyped The tool seems to unnecessarily force mutable access for the debugedit `-l` feature
+{fetchgit, lib, stdenv, autoreconfHook, pkg-config, elfutils, help2man, util-linux}:
+stdenv.mkDerivation {
+  name = "debugedit";
+  version = "unstable-2021-07-05";
+
+  nativeBuildInputs = [ autoreconfHook pkg-config help2man ];
+  buildInputs = [ elfutils ];
+  checkInputs = [ util-linux ]; # Tests use `rev`
+
+  src = fetchgit {
+    url = "git://sourceware.org/git/debugedit.git";
+    rev = "e04296ddf34cbc43303d7af32ab3a73ac20af51a";
+    sha256 = "19cjkpzhdn2z6fl7xw8556m6kyrb7nxwbz2rmiv2rynyp74yg44z";
+  };
+
+  preBuild = ''
+    patchShebangs scripts/find-debuginfo.in
+  '';
+
+  doCheck = true;
+
+  meta = with lib; {
+    description = "Provides programs and scripts for creating debuginfo and source file distributions, collect build-ids and rewrite source paths in DWARF data for debugging, tracing and profiling";
+    homepage = "https://sourceware.org/debugedit/";
+    license = licenses.gpl3Plus;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ deliciouslytyped ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/misc/dejagnu/default.nix b/nixpkgs/pkgs/development/tools/misc/dejagnu/default.nix
index 612514345785..d335916bfe6a 100644
--- a/nixpkgs/pkgs/development/tools/misc/dejagnu/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/dejagnu/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, expect, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "dejagnu-1.6.2";
+  pname = "dejagnu";
+  version = "1.6.2";
 
   src = fetchurl {
-    url = "mirror://gnu/dejagnu/${name}.tar.gz";
+    url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
     sha256 = "0qfj2wd4qk1yn9yzam6g8nmyxfazcc0knjyyibycb2ainkhp21hd";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/dfu-programmer/default.nix b/nixpkgs/pkgs/development/tools/misc/dfu-programmer/default.nix
index f0a3a9b76006..062f68c83438 100644
--- a/nixpkgs/pkgs/development/tools/misc/dfu-programmer/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/dfu-programmer/default.nix
@@ -1,10 +1,7 @@
 { lib, stdenv, fetchurl, libusb-compat-0_1 }:
-let
-  version = "0.7.2";
-in
 stdenv.mkDerivation rec {
   pname = "dfu-programmer";
-  inherit version;
+  version = "0.7.2";
 
   buildInputs = [ libusb-compat-0_1 ];
 
diff --git a/nixpkgs/pkgs/development/tools/misc/doclifter/default.nix b/nixpkgs/pkgs/development/tools/misc/doclifter/default.nix
index 0692d84b4544..22de87b95c37 100644
--- a/nixpkgs/pkgs/development/tools/misc/doclifter/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/doclifter/default.nix
@@ -1,9 +1,10 @@
 {lib, stdenv, fetchurl, python3}:
 
-stdenv.mkDerivation {
-  name = "doclifter-2.19";
+stdenv.mkDerivation rec {
+  pname = "doclifter";
+  version = "2.19";
   src = fetchurl {
-    url = "http://www.catb.org/~esr/doclifter/doclifter-2.19.tar.gz";
+    url = "http://www.catb.org/~esr/${pname}/${pname}-${version}.tar.gz";
     sha256 = "1as6z7mdjrrkw2kism41q5ybvyzvwcmj9qzla2fz98v9f4jbj2s2";
   };
   buildInputs = [ python3 ];
diff --git a/nixpkgs/pkgs/development/tools/misc/drush/default.nix b/nixpkgs/pkgs/development/tools/misc/drush/default.nix
index 70e7f42c5c22..9a521bfd2743 100644
--- a/nixpkgs/pkgs/development/tools/misc/drush/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/drush/default.nix
@@ -1,7 +1,8 @@
-{ lib, stdenv, fetchurl, php, which, makeWrapper, bash, coreutils, ncurses }:
+{ lib, stdenv, fetchurl, fetchFromGitHub, php, which, makeWrapper, bash, coreutils, ncurses }:
 
 stdenv.mkDerivation rec {
-  name = "drush-6.1.0";
+  pname = "drush";
+  version = "6.1.0";
 
   meta = with lib; {
     description = "Command-line shell and Unix scripting interface for Drupal";
@@ -11,8 +12,10 @@ stdenv.mkDerivation rec {
     platforms   = platforms.all;
   };
 
-  src = fetchurl {
-    url    = "https://github.com/drush-ops/drush/archive/6.1.0.tar.gz";
+  src = fetchFromGitHub {
+    owner = "drush-ops";
+    repo  = pname;
+    rev = version;
     sha256 = "1jgnc4jjyapyn04iczvcz92ic0vq8d1w8xi55ismqyy5cxhqj6bp";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/eggdbus/default.nix b/nixpkgs/pkgs/development/tools/misc/eggdbus/default.nix
index 5a5267510d7d..c5ede8488511 100644
--- a/nixpkgs/pkgs/development/tools/misc/eggdbus/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/eggdbus/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, glib, dbus, dbus-glib }:
 
 stdenv.mkDerivation rec {
-  name = "eggdbus-0.6";
+  pname = "eggdbus";
+  version = "0.6";
 
   src = fetchurl {
-    url = "https://hal.freedesktop.org/releases/${name}.tar.gz";
+    url = "https://hal.freedesktop.org/releases/${pname}-${version}.tar.gz";
     sha256 = "118hj63ac65zlg71kydv4607qcg1qpdlql4kvhnwnnhar421jnq4";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/elfkickers/default.nix b/nixpkgs/pkgs/development/tools/misc/elfkickers/default.nix
index 775ad6937dc4..7220ca31443a 100644
--- a/nixpkgs/pkgs/development/tools/misc/elfkickers/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/elfkickers/default.nix
@@ -2,22 +2,22 @@
 
 stdenv.mkDerivation rec {
   pname = "elfkickers";
-  version = "3.1a";
+  version = "3.2";
 
   src = fetchurl {
-    url = "http://www.muppetlabs.com/~breadbox/pub/software/ELFkickers-${version}.tar.gz";
-    sha256 = "02354yn1lh1dxny35ky2d0b44iq302krsqpwk5grr4glma00hhq6";
+    url = "https://www.muppetlabs.com/~breadbox/pub/software/ELFkickers-${version}.tar.gz";
+    sha256 = "sha256-m4HmxT4MlPwZjZiC63NxVvNtVlFS3DIRiJfHewaiaHw=";
   };
 
-  makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc prefix=$(out)" ];
+  makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" "prefix:=${placeholder "out"}" ];
 
   enableParallelBuilding = true;
 
   meta = with lib; {
-    homepage = "http://www.muppetlabs.com/~breadbox/software/elfkickers.html";
+    homepage = "https://www.muppetlabs.com/~breadbox/software/elfkickers.html";
     description = "A collection of programs that access and manipulate ELF files";
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.dtzWill ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/misc/gede/default.nix b/nixpkgs/pkgs/development/tools/misc/gede/default.nix
index 00ce9958b1f9..7b5e8552f82c 100644
--- a/nixpkgs/pkgs/development/tools/misc/gede/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/gede/default.nix
@@ -17,7 +17,7 @@ mkDerivation rec {
 
   dontUseQmakeConfigure = true;
 
-  buildPhase = ":";
+  dontBuild = true;
 
   installPhase = ''
     python build.py install --verbose --prefix="$out"
diff --git a/nixpkgs/pkgs/development/tools/misc/gnum4/default.nix b/nixpkgs/pkgs/development/tools/misc/gnum4/default.nix
index 512989a14462..d0b5911b71d9 100644
--- a/nixpkgs/pkgs/development/tools/misc/gnum4/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/gnum4/default.nix
@@ -5,11 +5,12 @@
 # cgit) that are needed here should be included directly in Nixpkgs as
 # files.
 
-stdenv.mkDerivation {
-  name = "gnum4-1.4.18";
+stdenv.mkDerivation rec {
+  pname = "gnum4";
+  version = "1.4.18";
 
   src = fetchurl {
-    url = "mirror://gnu/m4/m4-1.4.18.tar.bz2";
+    url = "mirror://gnu/m4/m4-${version}.tar.bz2";
     sha256 = "1xkwwq0sgv05cla0g0a01yzhk0wpsn9y40w9kh9miiiv0imxfh36";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/go-md2man/default.nix b/nixpkgs/pkgs/development/tools/misc/go-md2man/default.nix
index fe43da91b54b..8c43fe7f5947 100644
--- a/nixpkgs/pkgs/development/tools/misc/go-md2man/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/go-md2man/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "go-md2man";
-  version = "2.0.0";
+  version = "2.0.1";
 
   vendorSha256 = null;
 
@@ -10,7 +10,7 @@ buildGoModule rec {
     rev = "v${version}";
     owner = "cpuguy83";
     repo = "go-md2man";
-    sha256 = "0r1f7v475dxxgzqci1mxfliwadcrk86ippflx9n411325l4g3ghv";
+    sha256 = "sha256-DnXWnHWtczNnLaQg9Wnp9U/K4h/FbhqGgba44P6VNBQ=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/misc/gperf/default.nix b/nixpkgs/pkgs/development/tools/misc/gperf/default.nix
index e998f09683ae..71b0bbd0b0d6 100644
--- a/nixpkgs/pkgs/development/tools/misc/gperf/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/gperf/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "gperf-3.1";
+  pname = "gperf";
+  version = "3.1";
 
   src = fetchurl {
-    url = "mirror://gnu/gperf/${name}.tar.gz";
+    url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
     sha256 = "1qispg6i508rq8pkajh26cznwimbnj06wq9sd85vg95v8nwld1aq";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/gtkdialog/default.nix b/nixpkgs/pkgs/development/tools/misc/gtkdialog/default.nix
index 6651bbb03845..9e6d846e80a4 100644
--- a/nixpkgs/pkgs/development/tools/misc/gtkdialog/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/gtkdialog/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl, gtk2, pkg-config }:
 
-stdenv.mkDerivation {
-  name = "gtkdialog-0.8.3";
+stdenv.mkDerivation rec {
+  pname = "gtkdialog";
+  version = "0.8.3";
 
   src = fetchurl {
-    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/gtkdialog/gtkdialog-0.8.3.tar.gz";
+    url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/${pname}/${pname}-${version}.tar.gz";
     sha256 = "ff89d2d7f1e6488e5df5f895716ac1d4198c2467a2a5dc1f51ab408a2faec38e";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/gtkperf/default.nix b/nixpkgs/pkgs/development/tools/misc/gtkperf/default.nix
index 4b7f7985a673..ff5fe7bcba40 100644
--- a/nixpkgs/pkgs/development/tools/misc/gtkperf/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/gtkperf/default.nix
@@ -1,9 +1,10 @@
 { lib, stdenv, fetchurl, gtk2, pkg-config, libintl }:
 
-stdenv.mkDerivation {
-  name = "gtkperf-0.40.0";
+stdenv.mkDerivation rec {
+  pname = "gtkperf";
+  version = "0.40.0";
   src = fetchurl {
-    url = "mirror://sourceforge//gtkperf/gtkperf_0.40.tar.gz";
+    url = "mirror://sourceforge/${pname}/${pname}_${lib.versions.majorMinor version}.tar.gz";
     sha256 = "0yxj3ap3yfi76vqg6xjvgc16nfi9arm9kp87s35ywf10fd73814p";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/help2man/default.nix b/nixpkgs/pkgs/development/tools/misc/help2man/default.nix
index 4a205268c269..d4d6dc41657d 100644
--- a/nixpkgs/pkgs/development/tools/misc/help2man/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/help2man/default.nix
@@ -6,10 +6,11 @@
 # files.
 
 stdenv.mkDerivation rec {
-  name = "help2man-1.48.1";
+  pname = "help2man";
+  version = "1.48.1";
 
   src = fetchurl {
-    url = "mirror://gnu/help2man/${name}.tar.xz";
+    url = "mirror://gnu/${pname}/${pname}-${version}.tar.xz";
     sha256 = "sha256-3op0dAvQWGRlZ7kqtOzeudqfGgfMfE9gejwU3TjRB5k=";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/icon-naming-utils/default.nix b/nixpkgs/pkgs/development/tools/misc/icon-naming-utils/default.nix
index 478c0a61f865..930327a880db 100644
--- a/nixpkgs/pkgs/development/tools/misc/icon-naming-utils/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/icon-naming-utils/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl, perl, librsvg}:
 
 stdenv.mkDerivation rec {
-  name = "icon-naming-utils-0.8.90";
+  pname = "icon-naming-utils";
+  version = "0.8.90";
 
   src = fetchurl {
-    url = "http://tango.freedesktop.org/releases/${name}.tar.gz";
+    url = "http://tango.freedesktop.org/releases/${pname}-${version}.tar.gz";
     sha256 = "071fj2jm5kydlz02ic5sylhmw6h2p3cgrm3gwdfabinqkqcv4jh4";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/indent/default.nix b/nixpkgs/pkgs/development/tools/misc/indent/default.nix
index 8c5ec6af1c7f..1f5236456dbc 100644
--- a/nixpkgs/pkgs/development/tools/misc/indent/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/indent/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, texinfo }:
 
 stdenv.mkDerivation rec {
-  name = "indent-2.2.12";
+  pname = "indent";
+  version = "2.2.12";
 
   src = fetchurl {
-    url = "mirror://gnu/indent/${name}.tar.gz";
+    url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
     sha256 = "12xvcd16cwilzglv9h7sgh4h1qqjd1h8s48ji2dla58m4706hzg7";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/itstool/default.nix b/nixpkgs/pkgs/development/tools/misc/itstool/default.nix
index 55e62a2dcaee..01a0fab369e2 100644
--- a/nixpkgs/pkgs/development/tools/misc/itstool/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/itstool/default.nix
@@ -1,10 +1,11 @@
 { stdenv, lib, fetchurl, python3 }:
 
 stdenv.mkDerivation rec {
-  name = "itstool-2.0.6";
+  pname = "itstool";
+  version = "2.0.6";
 
   src = fetchurl {
-    url = "http://files.itstool.org/itstool/${name}.tar.bz2";
+    url = "http://files.itstool.org/${pname}/${pname}-${version}.tar.bz2";
     sha256 = "1acjgf8zlyk7qckdk19iqaca4jcmywd7vxjbcs1mm6kaf8icqcv2";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/jscoverage/default.nix b/nixpkgs/pkgs/development/tools/misc/jscoverage/default.nix
index dbcb8d52f1b7..83dbfb93c86d 100644
--- a/nixpkgs/pkgs/development/tools/misc/jscoverage/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/jscoverage/default.nix
@@ -1,10 +1,11 @@
 { autoconf, fetchurl, makedepend, perl, python3, lib, stdenv, zip }:
 
 stdenv.mkDerivation rec {
-  name = "jscoverage-0.5.1";
+  pname = "jscoverage";
+  version = "0.5.1";
 
   src = fetchurl {
-    url = "https://siliconforks.com/jscoverage/download/${name}.tar.bz2";
+    url = "https://siliconforks.com/${pname}/download/${pname}-${version}.tar.bz2";
     sha256 = "c45f051cec18c10352f15f9844f47e37e8d121d5fd16680e2dd0f3b4420eb7f4";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/libtool/default.nix b/nixpkgs/pkgs/development/tools/misc/libtool/default.nix
index 2b0089e89f64..1cd195a3132d 100644
--- a/nixpkgs/pkgs/development/tools/misc/libtool/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/libtool/default.nix
@@ -6,10 +6,11 @@
 # files.
 
 stdenv.mkDerivation rec {
-  name = "libtool-1.5.26";
+  pname = "libtool";
+  version = "1.5.26";
 
   src = fetchurl {
-    url = "mirror://gnu/libtool/${name}.tar.gz";
+    url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
     sha256 = "029ggq5kri1gjn6nfqmgw4w920gyfzscjjxbsxxidal5zqsawd8w";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/ltrace/default.nix b/nixpkgs/pkgs/development/tools/misc/ltrace/default.nix
index e1d9ae6b5513..ce176aac4a65 100644
--- a/nixpkgs/pkgs/development/tools/misc/ltrace/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/ltrace/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, elfutils, libunwind }:
 
-stdenv.mkDerivation {
-  name = "ltrace-0.7.3";
+stdenv.mkDerivation rec {
+  pname = "ltrace";
+  version = "0.7.3";
 
   src = fetchurl {
-    url = "mirror://debian/pool/main/l/ltrace/ltrace_0.7.3.orig.tar.bz2";
+    url = "mirror://debian/pool/main/l/${pname}/${pname}_${version}.orig.tar.bz2";
     sha256 = "00wmbdghqbz6x95m1mcdd3wd46l6hgcr4wggdp049dbifh3qqvqf";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/lttv/default.nix b/nixpkgs/pkgs/development/tools/misc/lttv/default.nix
index a196c5f45288..1e89be8a0c22 100644
--- a/nixpkgs/pkgs/development/tools/misc/lttv/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/lttv/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, glib, gtk2, popt, babeltrace }:
 
 stdenv.mkDerivation rec {
-  name = "lttv-1.5";
+  pname = "lttv";
+  version = "1.5";
 
   src = fetchurl {
-    url = "https://lttng.org/files/packages/${name}.tar.bz2";
+    url = "https://lttng.org/files/packages/${pname}-${version}.tar.bz2";
     sha256 = "1faldxnh9dld5k0vxckwpqw241ya1r2zv286l6rpgqr500zqw7r1";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/luarocks/default.nix b/nixpkgs/pkgs/development/tools/misc/luarocks/default.nix
index d4f2ec4ded98..f3ec4b4d7a43 100644
--- a/nixpkgs/pkgs/development/tools/misc/luarocks/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/luarocks/default.nix
@@ -68,7 +68,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    inherit version;
     description = "A package manager for Lua";
     license = licenses.mit ;
     maintainers = with maintainers; [raskin teto];
diff --git a/nixpkgs/pkgs/development/tools/misc/nixbang/default.nix b/nixpkgs/pkgs/development/tools/misc/nixbang/default.nix
index 468623241bfd..bcddf4479eb0 100644
--- a/nixpkgs/pkgs/development/tools/misc/nixbang/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/nixbang/default.nix
@@ -1,9 +1,8 @@
 { lib, pythonPackages, fetchFromGitHub }:
 
-let version = "0.1.2"; in
-pythonPackages.buildPythonApplication {
+pythonPackages.buildPythonApplication rec {
   pname = "nixbang";
-  inherit version;
+  version = "0.1.2";
   namePrefix = "";
 
   src = fetchFromGitHub {
diff --git a/nixpkgs/pkgs/development/tools/misc/prelink/default.nix b/nixpkgs/pkgs/development/tools/misc/prelink/default.nix
index 63fc7c8e64a5..2fbee4ca5f52 100644
--- a/nixpkgs/pkgs/development/tools/misc/prelink/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/prelink/default.nix
@@ -1,11 +1,8 @@
 { lib, stdenv, fetchurl, libelf }:
 
-let
-  version = "20130503";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "prelink";
-  inherit version;
+  version = "20130503";
 
   buildInputs = [
     libelf stdenv.cc.libc (lib.getOutput "static" stdenv.cc.libc)
diff --git a/nixpkgs/pkgs/development/tools/misc/reviewdog/default.nix b/nixpkgs/pkgs/development/tools/misc/reviewdog/default.nix
index fccee0ede2b6..24e2e0fea6b2 100644
--- a/nixpkgs/pkgs/development/tools/misc/reviewdog/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/reviewdog/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "reviewdog";
-  version = "0.11.0";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "0n7hk3va25ym8sb900i1s1hjszgwrfl7gfsjbj1m330fidh3q6jc";
+    sha256 = "18fk4xzl6ys3azyw9ap14zgf3av5fdsrdn4mxx9calimvzbl4nfp";
   };
 
-  vendorSha256 = "0xscirzi0gqww33ngwh29jiylarj0w5snn9kvv43wfrphb6c79s5";
+  vendorSha256 = "1qcp8v426500cpfrchazsh5rw4nr0c31vmrhbfgb9js4vxrn8acr";
 
   doCheck = false;
 
@@ -22,7 +22,7 @@ buildGoModule rec {
   meta = with lib; {
     description = "Automated code review tool integrated with any code analysis tools regardless of programming language";
     homepage = "https://github.com/reviewdog/reviewdog";
-    changelog = "https://github.com/reviewdog/reviewdog/releases/tag/v${version}";
+    changelog = "https://github.com/reviewdog/reviewdog/raw/v${version}/CHANGELOG.md";
     maintainers = [ maintainers.marsam ];
     license = licenses.mit;
   };
diff --git a/nixpkgs/pkgs/development/tools/misc/rman/default.nix b/nixpkgs/pkgs/development/tools/misc/rman/default.nix
index bf71b619e5aa..99f3d8c13e74 100644
--- a/nixpkgs/pkgs/development/tools/misc/rman/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/rman/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl}:
 
-stdenv.mkDerivation {
-  name = "rman-3.2";
+stdenv.mkDerivation rec {
+  pname = "rman";
+  version = "3.2";
 
   src = fetchurl {
-    url = "mirror://sourceforge/polyglotman/3.2/rman-3.2.tar.gz";
+    url = "mirror://sourceforge/polyglotman/${version}/${pname}-${version}.tar.gz";
     sha256 = "0prdld6nbkdlkcgc2r1zp13h2fh8r0mlwxx423dnc695ddlk18b8";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/sloccount/default.nix b/nixpkgs/pkgs/development/tools/misc/sloccount/default.nix
index 2fd984902875..fc619612a48b 100644
--- a/nixpkgs/pkgs/development/tools/misc/sloccount/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/sloccount/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, perl, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "sloccount-2.26";
+  pname = "sloccount";
+  version = "2.26";
 
   src = fetchurl {
-    url = "https://www.dwheeler.com/sloccount/${name}.tar.gz";
+    url = "https://www.dwheeler.com/${pname}/${pname}-${version}.tar.gz";
     sha256 = "0ayiwfjdh1946asah861ah9269s5xkc8p5fv1wnxs9znyaxs4zzs";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/srecord/default.nix b/nixpkgs/pkgs/development/tools/misc/srecord/default.nix
index a18dcd85255a..d986ef052433 100644
--- a/nixpkgs/pkgs/development/tools/misc/srecord/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/srecord/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, boost, libtool, groff, ghostscript, libgcrypt ? null }:
 
 stdenv.mkDerivation rec {
-  name = "srecord-1.64";
+  pname = "srecord";
+  version = "1.64";
 
   src = fetchurl {
-    url = "mirror://sourceforge/srecord/${name}.tar.gz";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
     sha256 = "1qk75q0k5vzmm3932q9hqz2gp8n9rrdfjacsswxc02656f3l3929";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/stm32flash/default.nix b/nixpkgs/pkgs/development/tools/misc/stm32flash/default.nix
index 8b9646713e88..bc33d417f885 100644
--- a/nixpkgs/pkgs/development/tools/misc/stm32flash/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/stm32flash/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "stm32flash-0.5";
+  pname = "stm32flash";
+  version = "0.5";
 
   src = fetchurl {
-    url = "mirror://sourceforge/stm32flash/${name}.tar.gz";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
     sha256 = "01p396daqw3zh6nijffbfbwyqza33bi2k4q3m5yjzs02xwi99alp";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/misc/strace/default.nix b/nixpkgs/pkgs/development/tools/misc/strace/default.nix
index 4da1a2cba09b..b3722965fdcd 100644
--- a/nixpkgs/pkgs/development/tools/misc/strace/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/strace/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "strace";
-  version = "5.12";
+  version = "5.13";
 
   src = fetchurl {
     url = "https://strace.io/files/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-KRce350lL4nJiKTDQN/exmL0WMuMY9hUMdZLq1kR58Q=";
+    sha256 = "sha256-Wsw0iIudUQrWrJFdSo3wj1HPGukg6iRkn2pLuYTQtlY=";
   };
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
diff --git a/nixpkgs/pkgs/development/tools/misc/terracognita/default.nix b/nixpkgs/pkgs/development/tools/misc/terracognita/default.nix
index 6f02e934394a..cc5f6f72a4cf 100644
--- a/nixpkgs/pkgs/development/tools/misc/terracognita/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/terracognita/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "terracognita";
-  version = "0.6.3";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     owner = "cycloidio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-rRSBPnvv4941IUGN/6+8/hzgYDqgPErNkd7tFrslPiQ=";
+    sha256 = "119rbjg3lsm73mdw6ymvslyj4y4ghj3a3dvxnvkrm55v9g0s03l9";
   };
 
-  vendorSha256 = "sha256-sN9GTcG5cZxvMaLqNjY2jfLkf8a3lugM2aV3bBdT5Ww=";
+  vendorSha256 = "1fvp53d694a4aj8l4hj7q2lvyadn9y9c52q4bzl6yrfjq6708y8d";
 
   doCheck = false;
 
@@ -22,7 +22,7 @@ buildGoModule rec {
   meta = with lib; {
     description = "Reads from existing Cloud Providers (reverse Terraform) and generates your infrastructure as code on Terraform configuration";
     homepage = "https://github.com/cycloidio/terracognita";
-    changelog = "https://github.com/cycloidio/terracognita/blob/v${version}/CHANGELOG.md";
+    changelog = "https://github.com/cycloidio/terracognita/raw/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = [ maintainers.marsam ];
   };
diff --git a/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix b/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix
index 030200e47a8c..86afbcc9421a 100644
--- a/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "terraform-ls";
-  version = "0.18.2";
+  version = "0.19.1";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-d/dn77pV9qxzAm6NVOM5KhFxYi2/xEK02zMl2TTB5rA=";
+    sha256 = "sha256-ag8Dq3lhLoKE4rgrnWLHtKRHEnw/ytyXI+pRt5CgZJI=";
   };
-  vendorSha256 = "sha256-0PcMxotUEys+jGDFEEz6owbtTGAac+RwoBWEHP5ifKQ=";
+  vendorSha256 = "sha256-/lpjlThr6HPkuJ6om9ifBsdsh0x4kVXM6PAonk7GJCY=";
 
   ldflags = [ "-s" "-w" "-X main.version=v${version}" "-X main.prerelease=" ];
 
diff --git a/nixpkgs/pkgs/development/tools/misc/uisp/default.nix b/nixpkgs/pkgs/development/tools/misc/uisp/default.nix
index 1fb255073ed8..986a560ff6e8 100644
--- a/nixpkgs/pkgs/development/tools/misc/uisp/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/uisp/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
-stdenv.mkDerivation {
-  name = "uisp-20050207";
+stdenv.mkDerivation rec {
+  pname = "uisp";
+  version = "20050207";
 
   src = fetchurl {
-    url = "http://mirror.switch.ch/mirror/gentoo/distfiles/uisp-20050207.tar.gz";
+    url = "https://savannah.nongnu.org/download/uisp/uisp-${version}.tar.gz";
     sha256 = "1bncxp5yxh9r1yrp04vvhfiva8livi1pwic7v8xj99q09zrwahvw";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/mold/default.nix b/nixpkgs/pkgs/development/tools/mold/default.nix
new file mode 100644
index 000000000000..ee661e622022
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/mold/default.nix
@@ -0,0 +1,39 @@
+{ stdenv
+, fetchFromGitHub
+, lib
+, autoPatchelfHook
+, cmake
+, tbb
+, llvmPackages_latest
+, xxHash
+, zlib
+, openssl
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mold";
+  version = "0.9.2";
+
+  src = fetchFromGitHub {
+    owner = "rui314";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-2LXOPirhjAifKYPgngUJwEdGrKMYsRySr5TL2x2p8J0=";
+  };
+
+  buildInputs = [ tbb zlib openssl ];
+  nativeBuildInputs = [ autoPatchelfHook cmake xxHash ];
+
+  dontUseCmakeConfigure = true;
+  EXTRA_LDFLAGS = "-fuse-ld=${llvmPackages_latest.lld}/bin/ld.lld";
+  LTO = 1;
+  makeFlags = [ "PREFIX=${placeholder "out"}" ];
+
+  meta = with lib; {
+    description = "A high performance drop-in replacement for existing unix linkers";
+    homepage = "https://github.com/rui314/mold";
+    license = lib.licenses.agpl3Plus;
+    maintainers = with maintainers; [ nitsky ];
+    broken = stdenv.isAarch64;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/neoload/default.nix b/nixpkgs/pkgs/development/tools/neoload/default.nix
index 63452728b91e..0fcb121e4603 100644
--- a/nixpkgs/pkgs/development/tools/neoload/default.nix
+++ b/nixpkgs/pkgs/development/tools/neoload/default.nix
@@ -30,15 +30,16 @@ let dotInstall4j = path: writeTextFile { name = "dot-install4j"; text = ''
       sys.symlinkDir=INSTALLDIR/bin
     ''; };
 
-in stdenv.mkDerivation {
-  name = "neoload-4.1.4";
+in stdenv.mkDerivation rec {
+  pname = "neoload";
+  version = "4.1.4";
 
   src = fetchurl (
     if stdenv.hostPlatform.system == "x86_64-linux" then
-      { url = "http://neoload.installers.neotys.com/documents/download/neoload/v4.1/neoload_4_1_4_linux_x64.sh";
+      { url = "http://neoload.installers.neotys.com/documents/download/${pname}/v${lib.versions.majorMinor version}/${pname}_${lib.replaceStrings ["."] ["_"] version}_linux_x64.sh";
         sha256 = "199jcf5a0nwfm8wfld2rcjgq64g91vvz2bkmki8dxfzf1yasifcd"; }
     else
-      { url = "http://neoload.installers.neotys.com/documents/download/neoload/v4.1/neoload_4_1_4_linux_x86.sh";
+      { url = "http://neoload.installers.neotys.com/documents/download/${pname}/v${lib.versions.majorMinor version}/${pname}_${lib.replaceStrings ["."] ["_"] version}_linux_x86.sh";
         sha256 = "1z66jiwcxixsqqwa0f4q8m2p5kna4knq6lic8y8l74dgv25mw912"; } );
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/tools/ocaml/camlp5/default.nix b/nixpkgs/pkgs/development/tools/ocaml/camlp5/default.nix
index fc79cafdc42a..e94e98d8f723 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/camlp5/default.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/camlp5/default.nix
@@ -1,15 +1,18 @@
-{ lib, stdenv, fetchzip, ocaml, perl }:
+{ lib, stdenv, fetchFromGitHub, ocaml, perl }:
 
 if lib.versionOlder ocaml.version "4.02"
 then throw "camlp5 is not available for OCaml ${ocaml.version}"
 else
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
 
-  name = "camlp5-7.14";
+  pname = "camlp5";
+  version = "7.14";
 
-  src = fetchzip {
-    url = "https://github.com/camlp5/camlp5/archive/rel714.tar.gz";
+  src = fetchFromGitHub {
+    owner = "camlp5";
+    repo = "camlp5";
+    rev = "rel${builtins.replaceStrings [ "." ] [ "" ] version}";
     sha256 = "1dd68bisbpqn5lq2pslm582hxglcxnbkgfkwhdz67z4w9d5nvr7w";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/ocaml/obuild/default.nix b/nixpkgs/pkgs/development/tools/ocaml/obuild/default.nix
index e31334000da0..a380dbff81f1 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/obuild/default.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/obuild/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchzip, ocaml }:
 
-let version = "0.1.10"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "obuild";
-  inherit version;
+  version = "0.1.10";
 
   src = fetchzip {
     url = "https://github.com/ocaml-obuild/obuild/archive/obuild-v${version}.tar.gz";
diff --git a/nixpkgs/pkgs/development/tools/ocaml/ocamlbuild/default.nix b/nixpkgs/pkgs/development/tools/ocaml/ocamlbuild/default.nix
index c74794b35c95..926838ede545 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/ocamlbuild/default.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/ocamlbuild/default.nix
@@ -1,10 +1,7 @@
 { lib, stdenv, fetchFromGitHub, ocaml, findlib }:
-let
-  version = "0.14.0";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   name = "ocamlbuild-${version}";
-  inherit version;
+  version = "0.14.0";
 
   src = fetchFromGitHub {
     owner = "ocaml";
diff --git a/nixpkgs/pkgs/development/tools/ocaml/ocamlify/default.nix b/nixpkgs/pkgs/development/tools/ocaml/ocamlify/default.nix
index a43903c34d38..b40c8b42546b 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/ocamlify/default.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/ocamlify/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild }:
 
-stdenv.mkDerivation {
-  name = "ocamlify-0.0.2";
+stdenv.mkDerivation rec {
+  pname = "ocamlify";
+  version = "0.0.2";
 
   src = fetchurl {
-    url = "http://forge.ocamlcore.org/frs/download.php/1209/ocamlify-0.0.2.tar.gz";
+    url = "https://forge.ocamlcore.org/frs/download.php/1209/${pname}-${version}.tar.gz";
     sha256 = "1f0fghvlbfryf5h3j4as7vcqrgfjb4c8abl5y0y5h069vs4kp5ii";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/ocaml/ocamlscript/default.nix b/nixpkgs/pkgs/development/tools/ocaml/ocamlscript/default.nix
index 4518e7a22e41..82a495b733b5 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/ocamlscript/default.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/ocamlscript/default.nix
@@ -1,8 +1,9 @@
 {lib, stdenv, fetchurl, ocaml, findlib, camlp4}:
-stdenv.mkDerivation {
-  name = "ocamlscript-2.0.3";
+stdenv.mkDerivation rec {
+  pname = "ocamlscript";
+  version = "2.0.3";
   src = fetchurl {
-    url = "http://mjambon.com/releases/ocamlscript/ocamlscript-2.0.3.tar.gz";
+    url = "https://mjambon.com/releases/${pname}/${pname}-${version}.tar.gz";
     sha256 = "1v1i24gijxwris8w4hi95r9swld6dm7jbry0zp72767a3g5ivlrd";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/omnisharp-roslyn/create-deps.sh b/nixpkgs/pkgs/development/tools/omnisharp-roslyn/create-deps.sh
new file mode 100755
index 000000000000..402d64c9b612
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/omnisharp-roslyn/create-deps.sh
@@ -0,0 +1,66 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p msbuild -p jq -p xmlstarlet -p curl
+set -euo pipefail
+
+cat << EOL
+{ fetchurl }: [
+EOL
+
+tmpdir="$(mktemp -d -p "$(pwd)")" # must be under source root
+trap 'rm -rf "$tmpdir"' EXIT
+
+mapfile -t repos < <(
+    xmlstarlet sel -t -v 'configuration/packageSources/add/@value' -n NuGet.Config |
+        while IFS= read index
+        do
+            curl --compressed -fsL "$index" | \
+                jq -r '.resources[] | select(."@type" == "PackageBaseAddress/3.0.0")."@id"'
+        done
+    )
+
+msbuild -t:restore -p:Configuration=Release -p:RestorePackagesPath="$tmpdir" \
+        -p:RestoreNoCache=true -p:RestoreForce=true \
+        src/OmniSharp.Stdio.Driver/OmniSharp.Stdio.Driver.csproj >&2
+
+cd "$tmpdir"
+for package in *
+do
+    cd "$package"
+    for version in *
+    do
+        found=false
+        for repo in "${repos[@]}"
+        do
+            url="$repo$package/$version/$package.$version.nupkg"
+            if curl -fsL "$url" -o /dev/null
+            then
+                found=true
+                break
+            fi
+        done
+
+        if ! $found
+        then
+            echo "couldn't find $package $version" >&2
+            exit 1
+        fi
+
+        sha256=$(nix-prefetch-url "$url" 2>/dev/null)
+        cat << EOL
+  {
+    name = "$package";
+    version = "$version";
+    src = fetchurl {
+      url = "$url";
+      sha256 = "$sha256";
+    };
+  }
+EOL
+    done
+    cd ..
+done
+cd ..
+
+cat << EOL
+]
+EOL
diff --git a/nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix b/nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix
index e0710079b62a..7cf36fd1f89c 100644
--- a/nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix
+++ b/nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix
@@ -1,42 +1,104 @@
 { lib, stdenv
+, fetchFromGitHub
 , fetchurl
-, mono
+, mono6
 , msbuild
 , dotnet-sdk
 , makeWrapper
-, dotnetPackages
+, unzip
+, writeText
 }:
 
-stdenv.mkDerivation rec {
+let
+
+  deps = map (package: stdenv.mkDerivation (with package; {
+    pname = name;
+    inherit version src;
+
+    buildInputs = [ unzip ];
+    unpackPhase = ''
+      unzip $src
+      chmod -R u+r .
+      function traverseRename () {
+        for e in *
+        do
+          t="$(echo "$e" | sed -e "s/%20/\ /g" -e "s/%2B/+/g")"
+          [ "$t" != "$e" ] && mv -vn "$e" "$t"
+          if [ -d "$t" ]
+          then
+            cd "$t"
+            traverseRename
+            cd ..
+          fi
+        done
+      }
+
+      traverseRename
+    '';
+
+    installPhase = ''
+      runHook preInstall
+
+      package=$out/lib/dotnet/${name}/${version}
+      mkdir -p $package
+      cp -r . $package
+      echo "{}" > $package/.nupkg.metadata
+
+      runHook postInstall
+    '';
+
+    dontFixup = true;
+  }))
+    (import ./deps.nix { inherit fetchurl; });
+
+  nuget-config = writeText "NuGet.Config" ''
+    <?xml version="1.0" encoding="utf-8"?>
+    <configuration>
+      <packageSources>
+        <clear />
+      </packageSources>
+      <fallbackPackageFolders>
+        ${lib.concatStringsSep "\n" (map (package: "<add key=\"${package}\" value=\"${package}/lib/dotnet\"/>") deps)}
+      </fallbackPackageFolders>
+    </configuration>
+  '';
+
+in stdenv.mkDerivation rec {
 
   pname = "omnisharp-roslyn";
-  version = "1.37.8";
+  version = "1.37.12";
 
-  src = fetchurl {
-    url = "https://github.com/OmniSharp/omnisharp-roslyn/releases/download/v${version}/omnisharp-mono.tar.gz";
-    sha256 = "0kgv4l15rli9a7grmcsbv72csmxi7vqa7lrrr8bd4cq9ighh54q3";
+  src = fetchFromGitHub {
+    owner = "OmniSharp";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0gyy49v3pslr0l0q6h8hzah4s0iwkhkyckyrj3g2cg08w20b10gw";
   };
 
-  nativeBuildInputs = [ makeWrapper dotnet-sdk dotnetPackages.Nuget ];
+  nativeBuildInputs = [ makeWrapper msbuild ];
 
-  preUnpack = ''
-    mkdir src
-    cd src
-    sourceRoot=.
+  buildPhase = ''
+    runHook preBuild
+
+    HOME=$(pwd)/fake-home msbuild -r -p:Configuration=Release -p:RestoreConfigFile=${nuget-config} src/OmniSharp.Stdio.Driver/OmniSharp.Stdio.Driver.csproj
+
+    runHook postBuild
   '';
 
   installPhase = ''
     mkdir -p $out/bin
-    cd ..
-    cp -r src $out/
-    rm -r $out/src/.msbuild
-    cp -r ${msbuild}/lib/mono/msbuild $out/src/.msbuild
-
-    chmod -R u+w $out/src
-    mv $out/src/.msbuild/Current/{bin,Bin}
+    cp -r bin/Release/OmniSharp.Stdio.Driver/net472 $out/src
+    cp bin/Release/OmniSharp.Host/net472/SQLitePCLRaw* $out/src
+    mkdir $out/src/.msbuild
+    ln -s ${msbuild}/lib/mono/xbuild/* $out/src/.msbuild/
+    rm $out/src/.msbuild/Current
+    mkdir $out/src/.msbuild/Current
+    ln -s ${msbuild}/lib/mono/xbuild/Current/* $out/src/.msbuild/Current/
+    ln -s ${msbuild}/lib/mono/msbuild/Current/bin $out/src/.msbuild/Current/Bin
 
-    makeWrapper ${mono}/bin/mono $out/bin/omnisharp \
-    --add-flags "$out/src/OmniSharp.exe"
+    makeWrapper ${mono6}/bin/mono $out/bin/omnisharp \
+      --prefix PATH : ${dotnet-sdk}/bin \
+      --add-flags "$out/src/OmniSharp.exe"
   '';
 
   meta = with lib; {
@@ -44,7 +106,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/OmniSharp/omnisharp-roslyn";
     platforms = platforms.linux;
     license = licenses.mit;
-    maintainers = with maintainers; [ tesq0 ericdallo ];
+    maintainers = with maintainers; [ tesq0 ericdallo corngood ];
   };
 
 }
diff --git a/nixpkgs/pkgs/development/tools/omnisharp-roslyn/deps.nix b/nixpkgs/pkgs/development/tools/omnisharp-roslyn/deps.nix
new file mode 100644
index 000000000000..b64d5894da81
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/omnisharp-roslyn/deps.nix
@@ -0,0 +1,2210 @@
+{ fetchurl }: [
+  {
+    name = "cake.scripting.abstractions";
+    version = "0.6.4";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/cake.scripting.abstractions/0.6.4/cake.scripting.abstractions.0.6.4.nupkg";
+      sha256 = "14fcixlj2xazf6cb46gw8jgbsz89c6s8fnhvppxs8q12pygmkx0l";
+    };
+  }
+  {
+    name = "cake.scripting.transport";
+    version = "0.6.4";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/cake.scripting.transport/0.6.4/cake.scripting.transport.0.6.4.nupkg";
+      sha256 = "08cwj572mvmlagj5jry11j2l2fqc6yl4sw0szvql4ard9cx7j51n";
+    };
+  }
+  {
+    name = "dotnet.script.dependencymodel";
+    version = "1.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/dotnet.script.dependencymodel/1.1.0/dotnet.script.dependencymodel.1.1.0.nupkg";
+      sha256 = "0ly1jwvzndrhgvrwy7kagabyca40j8w9p5jvvfj4wlpffvxq44xl";
+    };
+  }
+  {
+    name = "dotnet.script.dependencymodel.nuget";
+    version = "1.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/dotnet.script.dependencymodel.nuget/1.1.0/dotnet.script.dependencymodel.nuget.1.1.0.nupkg";
+      sha256 = "1kvjrm28jlfmcsy5fna8hy814chbcsc39ka12h8mgpdvjkr93njr";
+    };
+  }
+  {
+    name = "humanizer.core";
+    version = "2.2.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/humanizer.core/2.2.0/humanizer.core.2.2.0.nupkg";
+      sha256 = "08mzg65y9d3zvq16rsmpapcdan71ggq2mpks6k777h3wlm2sh3p5";
+    };
+  }
+  {
+    name = "icsharpcode.decompiler";
+    version = "7.1.0.6543";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/icsharpcode.decompiler/7.1.0.6543/icsharpcode.decompiler.7.1.0.6543.nupkg";
+      sha256 = "1xrajs5dcd7aqsg9ibhdcy39yrd8737kknkmqf907n7fqs2jxr46";
+    };
+  }
+  {
+    name = "mcmaster.extensions.commandlineutils";
+    version = "2.2.4";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/mcmaster.extensions.commandlineutils/2.2.4/mcmaster.extensions.commandlineutils.2.2.4.nupkg";
+      sha256 = "0hy45iacm9zlrj6p2j2i2gkbs4k52mncnlnjvwgh6b6523p9msfy";
+    };
+  }
+  {
+    name = "mediatr";
+    version = "8.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/mediatr/8.1.0/mediatr.8.1.0.nupkg";
+      sha256 = "0cqx7yfh998xhsfk5pr6229lcjcs1jxxyqz7dwskc9jddl6a2akp";
+    };
+  }
+  {
+    name = "messagepack";
+    version = "2.1.152";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/messagepack/2.1.152/messagepack.2.1.152.nupkg";
+      sha256 = "1ks1w6pn96zm8nhz3ff6qdrmf0abppglwaa6vw83kj3d2qw74sw1";
+    };
+  }
+  {
+    name = "messagepackanalyzer";
+    version = "2.1.152";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/messagepackanalyzer/2.1.152/messagepackanalyzer.2.1.152.nupkg";
+      sha256 = "18iacmw5v3dp8lma9c0rh5jh8g1hkxnkq78kx7n00wkwxa58badx";
+    };
+  }
+  {
+    name = "messagepack.annotations";
+    version = "2.1.152";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/messagepack.annotations/2.1.152/messagepack.annotations.2.1.152.nupkg";
+      sha256 = "196swfxaz7l26hiyfv1mix0y80amhlq48krc4g5p9894wx1az3c3";
+    };
+  }
+  {
+    name = "microsoft.bcl.asyncinterfaces";
+    version = "1.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.bcl.asyncinterfaces/1.1.0/microsoft.bcl.asyncinterfaces.1.1.0.nupkg";
+      sha256 = "1dq5yw7cy6s42193yl4iqscfw5vzkjkgv0zyy32scr4jza6ni1a1";
+    };
+  }
+  {
+    name = "microsoft.bcl.asyncinterfaces";
+    version = "1.1.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.bcl.asyncinterfaces/1.1.1/microsoft.bcl.asyncinterfaces.1.1.1.nupkg";
+      sha256 = "0a1ahssqds2ympr7s4xcxv5y8jgxs7ahd6ah6fbgglj4rki1f1vw";
+    };
+  }
+  {
+    name = "microsoft.bcl.asyncinterfaces";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.bcl.asyncinterfaces/5.0.0/microsoft.bcl.asyncinterfaces.5.0.0.nupkg";
+      sha256 = "0cp5jbax2mf6xr3dqiljzlwi05fv6n9a35z337s92jcljiq674kf";
+    };
+  }
+  {
+    name = "microsoft.build";
+    version = "16.10.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.build/16.10.0/microsoft.build.16.10.0.nupkg";
+      sha256 = "1ran3fp016wvj8d2ahv0cmwhm6hjjh64w82s7cy52s7qffrgjk46";
+    };
+  }
+  {
+    name = "microsoft.build.framework";
+    version = "16.10.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.build.framework/16.10.0/microsoft.build.framework.16.10.0.nupkg";
+      sha256 = "17a8qxgq0jzxpjannhxkcg0941b64yb7z0yq75gz6hsq9ln3agja";
+    };
+  }
+  {
+    name = "microsoft.build.locator";
+    version = "1.4.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.build.locator/1.4.1/microsoft.build.locator.1.4.1.nupkg";
+      sha256 = "0j119rri7a401rca67cxdyrn3rprzdl1b2wrblqc23xsff1xvlrx";
+    };
+  }
+  {
+    name = "microsoft.build.tasks.core";
+    version = "16.10.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.build.tasks.core/16.10.0/microsoft.build.tasks.core.16.10.0.nupkg";
+      sha256 = "0yc3p4bksxmbq1n8wfqgn6b6x9ccyzq229f0mn08z4jfima3cnxg";
+    };
+  }
+  {
+    name = "microsoft.build.tasks.git";
+    version = "1.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.build.tasks.git/1.0.0/microsoft.build.tasks.git.1.0.0.nupkg";
+      sha256 = "0avwja8vk56f2kr2pmrqx3h60bnwbs7ds062lhvhcxv87m5yfqnj";
+    };
+  }
+  {
+    name = "microsoft.build.utilities.core";
+    version = "16.10.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.build.utilities.core/16.10.0/microsoft.build.utilities.core.16.10.0.nupkg";
+      sha256 = "1rh3gzrz8mmzilvs33cxngv0a805nb47s615rvj4xk5igm384w14";
+    };
+  }
+  {
+    name = "microsoft.codeanalysis.analyzers";
+    version = "3.3.2";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.codeanalysis.analyzers/3.3.2/microsoft.codeanalysis.analyzers.3.3.2.nupkg";
+      sha256 = "162vb5894zxps0cf5n9gc08an7gwybzz87allx3lsszvllr9ldx4";
+    };
+  }
+  {
+    name = "microsoft.codeanalysis.analyzerutilities";
+    version = "3.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.codeanalysis.analyzerutilities/3.3.0/microsoft.codeanalysis.analyzerutilities.3.3.0.nupkg";
+      sha256 = "0b2xy6m3l1y6j2xc97cg5llia169jv4nszrrrqclh505gpw6qccz";
+    };
+  }
+  {
+    name = "microsoft.codeanalysis.common";
+    version = "4.0.0-2.21322.50";
+    src = fetchurl {
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.common/4.0.0-2.21322.50/microsoft.codeanalysis.common.4.0.0-2.21322.50.nupkg";
+      sha256 = "1j9yl7m0lr03fjklzjyiac1lrgs8541frqmi4xlldn8a2sx3h97x";
+    };
+  }
+  {
+    name = "microsoft.codeanalysis.csharp";
+    version = "4.0.0-2.21322.50";
+    src = fetchurl {
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.csharp/4.0.0-2.21322.50/microsoft.codeanalysis.csharp.4.0.0-2.21322.50.nupkg";
+      sha256 = "1mmcl4rj3n1q7zh1n9b9ph3lvm8i51sdm87q3sgiczv2pxrihzs6";
+    };
+  }
+  {
+    name = "microsoft.codeanalysis.csharp.features";
+    version = "4.0.0-2.21322.50";
+    src = fetchurl {
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.csharp.features/4.0.0-2.21322.50/microsoft.codeanalysis.csharp.features.4.0.0-2.21322.50.nupkg";
+      sha256 = "11pzbswlznz71m248c1p4fi4i3zzvpc4a71px9j2lhnm57zy2lvy";
+    };
+  }
+  {
+    name = "microsoft.codeanalysis.csharp.scripting";
+    version = "4.0.0-2.21322.50";
+    src = fetchurl {
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.csharp.scripting/4.0.0-2.21322.50/microsoft.codeanalysis.csharp.scripting.4.0.0-2.21322.50.nupkg";
+      sha256 = "0piiyg1l27cy6s4ii80phrdsyhl8zvwbj9aljqkg53gki520x19p";
+    };
+  }
+  {
+    name = "microsoft.codeanalysis.csharp.workspaces";
+    version = "4.0.0-2.21322.50";
+    src = fetchurl {
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.csharp.workspaces/4.0.0-2.21322.50/microsoft.codeanalysis.csharp.workspaces.4.0.0-2.21322.50.nupkg";
+      sha256 = "0q6jkgjh1dylmjx8a79ighgbai1jr2fhls9m7khi87anzc3wdcl2";
+    };
+  }
+  {
+    name = "microsoft.codeanalysis.externalaccess.omnisharp";
+    version = "4.0.0-2.21322.50";
+    src = fetchurl {
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.externalaccess.omnisharp/4.0.0-2.21322.50/microsoft.codeanalysis.externalaccess.omnisharp.4.0.0-2.21322.50.nupkg";
+      sha256 = "1rv5qsj8lsfqxdzd6zazrzwzaxwmj6szd9hv2ckbb4lypkn8ifs8";
+    };
+  }
+  {
+    name = "microsoft.codeanalysis.externalaccess.omnisharp.csharp";
+    version = "4.0.0-2.21322.50";
+    src = fetchurl {
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.externalaccess.omnisharp.csharp/4.0.0-2.21322.50/microsoft.codeanalysis.externalaccess.omnisharp.csharp.4.0.0-2.21322.50.nupkg";
+      sha256 = "0ygp7hnm6mn9khh6z573avhvbcx5459fmyz4z657dx9p2v1f0fs0";
+    };
+  }
+  {
+    name = "microsoft.codeanalysis.features";
+    version = "4.0.0-2.21322.50";
+    src = fetchurl {
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.features/4.0.0-2.21322.50/microsoft.codeanalysis.features.4.0.0-2.21322.50.nupkg";
+      sha256 = "1grkql2wcqsqlmqnfchw6wxynwpz4x9wgqd00zpc1g04z9lqimq6";
+    };
+  }
+  {
+    name = "microsoft.codeanalysis.scripting.common";
+    version = "4.0.0-2.21322.50";
+    src = fetchurl {
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.scripting.common/4.0.0-2.21322.50/microsoft.codeanalysis.scripting.common.4.0.0-2.21322.50.nupkg";
+      sha256 = "1c14bg99ywxdvlp5zc08ijc030rxmpb3171kz2z6f5kr02vf296x";
+    };
+  }
+  {
+    name = "microsoft.codeanalysis.workspaces.common";
+    version = "4.0.0-2.21322.50";
+    src = fetchurl {
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.workspaces.common/4.0.0-2.21322.50/microsoft.codeanalysis.workspaces.common.4.0.0-2.21322.50.nupkg";
+      sha256 = "1c0m5pg156x8zh50x7rp25p8cn09gbv50wpbz2p1nc5ff5dyavf5";
+    };
+  }
+  {
+    name = "microsoft.csharp";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.csharp/4.3.0/microsoft.csharp.4.3.0.nupkg";
+      sha256 = "0gw297dgkh0al1zxvgvncqs0j15lsna9l1wpqas4rflmys440xvb";
+    };
+  }
+  {
+    name = "microsoft.diasymreader";
+    version = "1.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.diasymreader/1.3.0/microsoft.diasymreader.1.3.0.nupkg";
+      sha256 = "1nswah83z3pfibaqmjd8y96fgnkrak8005qqinc8nqs5mpkf5pfb";
+    };
+  }
+  {
+    name = "microsoft.dotnet.platformabstractions";
+    version = "3.1.6";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.dotnet.platformabstractions/3.1.6/microsoft.dotnet.platformabstractions.3.1.6.nupkg";
+      sha256 = "0b9myd7gqbpaw9pkd2bx45jhik9mwj0f1ss57sk2cxmag2lkdws5";
+    };
+  }
+  {
+    name = "microsoft.extensions.caching.abstractions";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.caching.abstractions/5.0.0/microsoft.extensions.caching.abstractions.5.0.0.nupkg";
+      sha256 = "0j83zapqhgqb4v5f6kn891km095pfhvsqha357a86ccclmv2czvb";
+    };
+  }
+  {
+    name = "microsoft.extensions.caching.memory";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.caching.memory/5.0.0/microsoft.extensions.caching.memory.5.0.0.nupkg";
+      sha256 = "0l8spndl3kvccjlay202msm31iy5iig0i9ddbsdy92wbcjr97lca";
+    };
+  }
+  {
+    name = "microsoft.extensions.configuration";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.configuration/2.0.0/microsoft.extensions.configuration.2.0.0.nupkg";
+      sha256 = "0yssxq9di5h6xw2cayp5hj3l9b2p0jw9wcjz73rwk4586spac9s9";
+    };
+  }
+  {
+    name = "microsoft.extensions.configuration";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.configuration/5.0.0/microsoft.extensions.configuration.5.0.0.nupkg";
+      sha256 = "01m9vzlq0vg0lhckj2dimwq42niwny8g3lm13c9a401hlyg90z1p";
+    };
+  }
+  {
+    name = "microsoft.extensions.configuration.abstractions";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.configuration.abstractions/2.0.0/microsoft.extensions.configuration.abstractions.2.0.0.nupkg";
+      sha256 = "1ilz2yrgg9rbjyhn6a5zh9pr51nmh11z7sixb4p7vivgydj9gxwf";
+    };
+  }
+  {
+    name = "microsoft.extensions.configuration.abstractions";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.configuration.abstractions/5.0.0/microsoft.extensions.configuration.abstractions.5.0.0.nupkg";
+      sha256 = "0fqxkc9pjxkqylsdf26s9q21ciyk56h1w33pz3v1v4wcv8yv1v6k";
+    };
+  }
+  {
+    name = "microsoft.extensions.configuration.binder";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.configuration.binder/2.0.0/microsoft.extensions.configuration.binder.2.0.0.nupkg";
+      sha256 = "1prvdbma6r18n5agbhhabv6g357p1j70gq4m9g0vs859kf44nrgc";
+    };
+  }
+  {
+    name = "microsoft.extensions.configuration.binder";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.configuration.binder/5.0.0/microsoft.extensions.configuration.binder.5.0.0.nupkg";
+      sha256 = "0sld0bh2k5kss32i3nf8mwqkjagmw0d1cdfmxm87ckiicwm413a0";
+    };
+  }
+  {
+    name = "microsoft.extensions.configuration.commandline";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.configuration.commandline/5.0.0/microsoft.extensions.configuration.commandline.5.0.0.nupkg";
+      sha256 = "084hnz5l0vr15ay23rksqipslqnz3pp30w9hsirpx1iqdm5688mc";
+    };
+  }
+  {
+    name = "microsoft.extensions.configuration.environmentvariables";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.configuration.environmentvariables/5.0.0/microsoft.extensions.configuration.environmentvariables.5.0.0.nupkg";
+      sha256 = "03gvckj10ljk1mir9g8cf3cajsnihhvmh8z8341gkr9h5653qkv0";
+    };
+  }
+  {
+    name = "microsoft.extensions.configuration.fileextensions";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.configuration.fileextensions/5.0.0/microsoft.extensions.configuration.fileextensions.5.0.0.nupkg";
+      sha256 = "1wq229r3xcmm9wh9sqdpvmfv4qpbp2zms9x6xk7g7sbb8h32hnz3";
+    };
+  }
+  {
+    name = "microsoft.extensions.configuration.json";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.configuration.json/5.0.0/microsoft.extensions.configuration.json.5.0.0.nupkg";
+      sha256 = "0hq5i483bjbvprp1la9l3si82x1ydxbvkpfc7r3s7zgxg957fyp9";
+    };
+  }
+  {
+    name = "microsoft.extensions.dependencyinjection";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.dependencyinjection/2.0.0/microsoft.extensions.dependencyinjection.2.0.0.nupkg";
+      sha256 = "018izzgykaqcliwarijapgki9kp2c560qv8qsxdjywr7byws5apq";
+    };
+  }
+  {
+    name = "microsoft.extensions.dependencyinjection";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.dependencyinjection/5.0.0/microsoft.extensions.dependencyinjection.5.0.0.nupkg";
+      sha256 = "15sdwcyzz0qlybwbdq854bn3jk6kx7awx28gs864c4shhbqkppj4";
+    };
+  }
+  {
+    name = "microsoft.extensions.dependencyinjection.abstractions";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.dependencyinjection.abstractions/2.0.0/microsoft.extensions.dependencyinjection.abstractions.2.0.0.nupkg";
+      sha256 = "1pwrfh9b72k9rq6mb2jab5qhhi225d5rjalzkapiayggmygc8nhz";
+    };
+  }
+  {
+    name = "microsoft.extensions.dependencyinjection.abstractions";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.dependencyinjection.abstractions/5.0.0/microsoft.extensions.dependencyinjection.abstractions.5.0.0.nupkg";
+      sha256 = "17cz6s80va0ch0a6nqa1wbbbp3p8sqxb96lj4qcw67ivkp2yxiyj";
+    };
+  }
+  {
+    name = "microsoft.extensions.dependencymodel";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.dependencymodel/5.0.0/microsoft.extensions.dependencymodel.5.0.0.nupkg";
+      sha256 = "1mma1zxi0b40972cwfvkj9y0w9r7vjbi74784jzcb22pric00k5x";
+    };
+  }
+  {
+    name = "microsoft.extensions.fileproviders.abstractions";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.fileproviders.abstractions/5.0.0/microsoft.extensions.fileproviders.abstractions.5.0.0.nupkg";
+      sha256 = "01ahgd0b2z2zycrr2lcsq2cl59fn04bh51hdwdp9dcsdkpvnasj1";
+    };
+  }
+  {
+    name = "microsoft.extensions.fileproviders.physical";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.fileproviders.physical/5.0.0/microsoft.extensions.fileproviders.physical.5.0.0.nupkg";
+      sha256 = "00vii8148a6pk12l9jl0rhjp7apil5q5qcy7v1smnv17lj4p8szd";
+    };
+  }
+  {
+    name = "microsoft.extensions.filesystemglobbing";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.filesystemglobbing/5.0.0/microsoft.extensions.filesystemglobbing.5.0.0.nupkg";
+      sha256 = "0lm6n9vbyjh0l17qcc2y9qwn1cns3dyjmkvbxjp0g9sll32kjpmb";
+    };
+  }
+  {
+    name = "microsoft.extensions.logging";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.logging/2.0.0/microsoft.extensions.logging.2.0.0.nupkg";
+      sha256 = "1jkwjcq1ld9znz1haazk8ili2g4pzfdp6i7r7rki4hg3jcadn386";
+    };
+  }
+  {
+    name = "microsoft.extensions.logging";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.logging/5.0.0/microsoft.extensions.logging.5.0.0.nupkg";
+      sha256 = "1qa1l18q2jh9azya8gv1p8anzcdirjzd9dxxisb4911i9m1648i3";
+    };
+  }
+  {
+    name = "microsoft.extensions.logging.abstractions";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.logging.abstractions/2.0.0/microsoft.extensions.logging.abstractions.2.0.0.nupkg";
+      sha256 = "1x5isi71z02khikzvm7vaschb006pqqrsv86ky1x08a4hir4s43h";
+    };
+  }
+  {
+    name = "microsoft.extensions.logging.abstractions";
+    version = "2.1.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.logging.abstractions/2.1.1/microsoft.extensions.logging.abstractions.2.1.1.nupkg";
+      sha256 = "1sgpwj0sa0ac7m5fnkb482mnch8fsv8hfbvk53c6lyh47s1xhdjg";
+    };
+  }
+  {
+    name = "microsoft.extensions.logging.abstractions";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.logging.abstractions/5.0.0/microsoft.extensions.logging.abstractions.5.0.0.nupkg";
+      sha256 = "1yza38675dbv1qqnnhqm23alv2bbaqxp0pb7zinjmw8j2mr5r6wc";
+    };
+  }
+  {
+    name = "microsoft.extensions.logging.configuration";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.logging.configuration/5.0.0/microsoft.extensions.logging.configuration.5.0.0.nupkg";
+      sha256 = "1kmjax24w0ph362jr64rr6f8pyn6ayq39k502q9yrgr7zgrv65pa";
+    };
+  }
+  {
+    name = "microsoft.extensions.logging.console";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.logging.console/5.0.0/microsoft.extensions.logging.console.5.0.0.nupkg";
+      sha256 = "162akclrhk5r62fza8yr30p5824inwmrpq2s510c3a64v76v9cqz";
+    };
+  }
+  {
+    name = "microsoft.extensions.options";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.options/2.0.0/microsoft.extensions.options.2.0.0.nupkg";
+      sha256 = "0g4zadlg73f507krilhaaa7h0jdga216syrzjlyf5fdk25gxmjqh";
+    };
+  }
+  {
+    name = "microsoft.extensions.options";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.options/5.0.0/microsoft.extensions.options.5.0.0.nupkg";
+      sha256 = "1rdmgpg770x8qwaaa6ryc27zh93p697fcyvn5vkxp0wimlhqkbay";
+    };
+  }
+  {
+    name = "microsoft.extensions.options.configurationextensions";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.options.configurationextensions/2.0.0/microsoft.extensions.options.configurationextensions.2.0.0.nupkg";
+      sha256 = "1isc3rjbzz60f7wbmgcwslx5d10hm5hisnk7v54vfi2bz7132gll";
+    };
+  }
+  {
+    name = "microsoft.extensions.options.configurationextensions";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.options.configurationextensions/5.0.0/microsoft.extensions.options.configurationextensions.5.0.0.nupkg";
+      sha256 = "1085yrfgc70am43v8i5rxh14kal3bhdd5q85vgny5qp7y1rw0xyw";
+    };
+  }
+  {
+    name = "microsoft.extensions.primitives";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.primitives/2.0.0/microsoft.extensions.primitives.2.0.0.nupkg";
+      sha256 = "1xppr5jbny04slyjgngxjdm0maxdh47vq481ps944d7jrfs0p3mb";
+    };
+  }
+  {
+    name = "microsoft.extensions.primitives";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.primitives/5.0.0/microsoft.extensions.primitives.5.0.0.nupkg";
+      sha256 = "0swqcknyh87ns82w539z1mvy804pfwhgzs97cr3nwqk6g5s42gd6";
+    };
+  }
+  {
+    name = "microsoft.netcore.app";
+    version = "2.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app/2.1.0/microsoft.netcore.app.2.1.0.nupkg";
+      sha256 = "1qgw6njwz30l5cwkvgf2fbsjqkc9vy0w3939c24iabmvjnzjr6a4";
+    };
+  }
+  {
+    name = "microsoft.netcore.dotnetapphost";
+    version = "2.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.dotnetapphost/2.1.0/microsoft.netcore.dotnetapphost.2.1.0.nupkg";
+      sha256 = "10hnhkix2av0c7djp2q88pw407m8gk3im4r06x762a3cs6f2jprd";
+    };
+  }
+  {
+    name = "microsoft.netcore.dotnethostpolicy";
+    version = "2.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.dotnethostpolicy/2.1.0/microsoft.netcore.dotnethostpolicy.2.1.0.nupkg";
+      sha256 = "1xh8ij7zyfkrk20rgpwqs00mxdy2qiwr7qar2xk397zk2bh2d90n";
+    };
+  }
+  {
+    name = "microsoft.netcore.dotnethostresolver";
+    version = "2.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.dotnethostresolver/2.1.0/microsoft.netcore.dotnethostresolver.2.1.0.nupkg";
+      sha256 = "1384k3cg4sjcn3hyalcm43fhmlfj5pnywpzd9zpgc4jsr2c16x76";
+    };
+  }
+  {
+    name = "microsoft.netcore.platforms";
+    version = "1.0.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.platforms/1.0.1/microsoft.netcore.platforms.1.0.1.nupkg";
+      sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr";
+    };
+  }
+  {
+    name = "microsoft.netcore.platforms";
+    version = "1.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.platforms/1.1.0/microsoft.netcore.platforms.1.1.0.nupkg";
+      sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm";
+    };
+  }
+  {
+    name = "microsoft.netcore.platforms";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.platforms/2.0.0/microsoft.netcore.platforms.2.0.0.nupkg";
+      sha256 = "1fk2fk2639i7nzy58m9dvpdnzql4vb8yl8vr19r2fp8lmj9w2jr0";
+    };
+  }
+  {
+    name = "microsoft.netcore.platforms";
+    version = "2.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.platforms/2.1.0/microsoft.netcore.platforms.2.1.0.nupkg";
+      sha256 = "0nmdnkmwyxj8cp746hs9an57zspqlmqdm55b00i7yk8a22s6akxz";
+    };
+  }
+  {
+    name = "microsoft.netcore.platforms";
+    version = "2.1.2";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.platforms/2.1.2/microsoft.netcore.platforms.2.1.2.nupkg";
+      sha256 = "1507hnpr9my3z4w1r6xk5n0s1j3y6a2c2cnynj76za7cphxi1141";
+    };
+  }
+  {
+    name = "microsoft.netcore.platforms";
+    version = "3.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.platforms/3.1.0/microsoft.netcore.platforms.3.1.0.nupkg";
+      sha256 = "1gc1x8f95wk8yhgznkwsg80adk1lc65v9n5rx4yaa4bc5dva0z3j";
+    };
+  }
+  {
+    name = "microsoft.netcore.targets";
+    version = "1.0.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.targets/1.0.1/microsoft.netcore.targets.1.0.1.nupkg";
+      sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p";
+    };
+  }
+  {
+    name = "microsoft.netcore.targets";
+    version = "1.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.targets/1.1.0/microsoft.netcore.targets.1.1.0.nupkg";
+      sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh";
+    };
+  }
+  {
+    name = "microsoft.netcore.targets";
+    version = "2.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.targets/2.1.0/microsoft.netcore.targets.2.1.0.nupkg";
+      sha256 = "1dav8x5551nwdqfigxf9zfsml5l9lakg86x38s9dvps81xs5d9zq";
+    };
+  }
+  {
+    name = "microsoft.netframework.referenceassemblies";
+    version = "1.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netframework.referenceassemblies/1.0.0/microsoft.netframework.referenceassemblies.1.0.0.nupkg";
+      sha256 = "0na724xhvqm63vq9y18fl9jw9q2v99bdwr353378s5fsi11qzxp9";
+    };
+  }
+  {
+    name = "microsoft.netframework.referenceassemblies.net472";
+    version = "1.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netframework.referenceassemblies.net472/1.0.0/microsoft.netframework.referenceassemblies.net472.1.0.0.nupkg";
+      sha256 = "1bqinq2nxnpqxziypg1sqy3ly0nymxxjpn8fwkn3rl4vl6gdg3rc";
+    };
+  }
+  {
+    name = "microsoft.net.stringtools";
+    version = "1.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.net.stringtools/1.0.0/microsoft.net.stringtools.1.0.0.nupkg";
+      sha256 = "06yakiyzgss399giivfx6xdrnfxqfsvy5fzm90scjanvandv0sdj";
+    };
+  }
+  {
+    name = "microsoft.sourcelink.common";
+    version = "1.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.sourcelink.common/1.0.0/microsoft.sourcelink.common.1.0.0.nupkg";
+      sha256 = "1zxkpx01zdv17c39iiy8fx25ran89n14qwddh1f140v1s4dn8z9c";
+    };
+  }
+  {
+    name = "microsoft.sourcelink.github";
+    version = "1.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.sourcelink.github/1.0.0/microsoft.sourcelink.github.1.0.0.nupkg";
+      sha256 = "029ixyaqn48cjza87m5qf0g1ynyhlm6irgbx1n09src9g666yhpd";
+    };
+  }
+  {
+    name = "microsoft.testplatform.objectmodel";
+    version = "16.9.4";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.testplatform.objectmodel/16.9.4/microsoft.testplatform.objectmodel.16.9.4.nupkg";
+      sha256 = "1jizkbrnm4pv60zch29ki7gj8m7j5whk141x9cwx4kwsd6cfzwi6";
+    };
+  }
+  {
+    name = "microsoft.testplatform.translationlayer";
+    version = "16.9.4";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.testplatform.translationlayer/16.9.4/microsoft.testplatform.translationlayer.16.9.4.nupkg";
+      sha256 = "0y5w2zflvq06jim2i6d49qi45ix0b8vlyf024w29n5g1lb570qf0";
+    };
+  }
+  {
+    name = "microsoft.visualstudio.debugger.contracts";
+    version = "17.2.0-beta.21262.1";
+    src = fetchurl {
+      url = "https://pkgs.dev.azure.com/azure-public/3ccf6661-f8ce-4e8a-bb2e-eff943ddd3c7/_packaging/78665e4c-b767-412b-9804-2b1ef7a48b8a/nuget/v3/flat2/microsoft.visualstudio.debugger.contracts/17.2.0-beta.21262.1/microsoft.visualstudio.debugger.contracts.17.2.0-beta.21262.1.nupkg";
+      sha256 = "10fi1jdxnxvww1qzfhqi53fn0a411gvpvcsb0pvwvj7qk0lzs7c9";
+    };
+  }
+  {
+    name = "microsoft.visualstudio.sdk.embedinteroptypes";
+    version = "15.0.12";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.visualstudio.sdk.embedinteroptypes/15.0.12/microsoft.visualstudio.sdk.embedinteroptypes.15.0.12.nupkg";
+      sha256 = "083pva0a0xxvqqrjv75if25wr3rq034wgjhbax74zhzdb665nzsw";
+    };
+  }
+  {
+    name = "microsoft.visualstudio.setup.configuration.interop";
+    version = "1.14.114";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.visualstudio.setup.configuration.interop/1.14.114/microsoft.visualstudio.setup.configuration.interop.1.14.114.nupkg";
+      sha256 = "062mqkmjf4k6zm3wi9ih0lzypfsnv82lgh88r35fj66akihn86gv";
+    };
+  }
+  {
+    name = "microsoft.visualstudio.setup.configuration.interop";
+    version = "1.16.30";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.visualstudio.setup.configuration.interop/1.16.30/microsoft.visualstudio.setup.configuration.interop.1.16.30.nupkg";
+      sha256 = "14022lx03vdcqlvbbdmbsxg5pqfx1rfq2jywxlyaz9v68cvsb0g4";
+    };
+  }
+  {
+    name = "microsoft.visualstudio.threading";
+    version = "16.7.56";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.visualstudio.threading/16.7.56/microsoft.visualstudio.threading.16.7.56.nupkg";
+      sha256 = "13x0xrsjxd86clf9cjjwmpzlyp8pkrf13riya7igs8zy93zw2qap";
+    };
+  }
+  {
+    name = "microsoft.visualstudio.threading.analyzers";
+    version = "16.7.56";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.visualstudio.threading.analyzers/16.7.56/microsoft.visualstudio.threading.analyzers.16.7.56.nupkg";
+      sha256 = "04v9df0k7bsc0rzgkw4mnvi43pdrh42vk6xdcwn9m6im33m0nnz2";
+    };
+  }
+  {
+    name = "microsoft.visualstudio.validation";
+    version = "15.5.31";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.visualstudio.validation/15.5.31/microsoft.visualstudio.validation.15.5.31.nupkg";
+      sha256 = "1ah99rn922qa0sd2k3h64m324f2r32pw8cn4cfihgvwx4qdrpmgw";
+    };
+  }
+  {
+    name = "microsoft.win32.primitives";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.win32.primitives/4.3.0/microsoft.win32.primitives.4.3.0.nupkg";
+      sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq";
+    };
+  }
+  {
+    name = "microsoft.win32.registry";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.win32.registry/4.3.0/microsoft.win32.registry.4.3.0.nupkg";
+      sha256 = "1gxyzxam8163vk1kb6xzxjj4iwspjsz9zhgn1w9rjzciphaz0ig7";
+    };
+  }
+  {
+    name = "microsoft.win32.registry";
+    version = "4.6.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.win32.registry/4.6.0/microsoft.win32.registry.4.6.0.nupkg";
+      sha256 = "0i4y782yrqqyx85pg597m20gm0v126w0j9ddk5z7xb3crx4z9f2s";
+    };
+  }
+  {
+    name = "nerdbank.streams";
+    version = "2.6.81";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/nerdbank.streams/2.6.81/nerdbank.streams.2.6.81.nupkg";
+      sha256 = "06wihcaga8537ibh0mkj28m720m6vzkqk562zkynhca85nd236yi";
+    };
+  }
+  {
+    name = "netstandard.library";
+    version = "1.6.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/netstandard.library/1.6.1/netstandard.library.1.6.1.nupkg";
+      sha256 = "1z70wvsx2d847a2cjfii7b83pjfs34q05gb037fdjikv5kbagml8";
+    };
+  }
+  {
+    name = "netstandard.library";
+    version = "2.0.3";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/netstandard.library/2.0.3/netstandard.library.2.0.3.nupkg";
+      sha256 = "1fn9fxppfcg4jgypp2pmrpr6awl3qz1xmnri0cygpkwvyx27df1y";
+    };
+  }
+  {
+    name = "newtonsoft.json";
+    version = "11.0.2";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/newtonsoft.json/11.0.2/newtonsoft.json.11.0.2.nupkg";
+      sha256 = "1784xi44f4k8v1fr696hsccmwpy94bz7kixxqlri98zhcxn406b2";
+    };
+  }
+  {
+    name = "newtonsoft.json";
+    version = "12.0.3";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/newtonsoft.json/12.0.3/newtonsoft.json.12.0.3.nupkg";
+      sha256 = "17dzl305d835mzign8r15vkmav2hq8l6g7942dfjpnzr17wwl89x";
+    };
+  }
+  {
+    name = "newtonsoft.json";
+    version = "9.0.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/newtonsoft.json/9.0.1/newtonsoft.json.9.0.1.nupkg";
+      sha256 = "0mcy0i7pnfpqm4pcaiyzzji4g0c8i3a5gjz28rrr28110np8304r";
+    };
+  }
+  {
+    name = "nuget.common";
+    version = "5.2.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/nuget.common/5.2.0/nuget.common.5.2.0.nupkg";
+      sha256 = "14y7axpmdl9fg8jfc42gxpcq9wj8k3vzc07npmgjnzqlp5xjyyac";
+    };
+  }
+  {
+    name = "nuget.configuration";
+    version = "5.2.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/nuget.configuration/5.2.0/nuget.configuration.5.2.0.nupkg";
+      sha256 = "0b4dkym3vnj7qldnqqq6h6ry0gkql5c2ps5wy72b8s4fc3dmnvf1";
+    };
+  }
+  {
+    name = "nuget.dependencyresolver.core";
+    version = "5.2.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/nuget.dependencyresolver.core/5.2.0/nuget.dependencyresolver.core.5.2.0.nupkg";
+      sha256 = "156yjfsk9pzqviiwy69lxfqf61yyj4hn4vdgfcbqvw4d567i150r";
+    };
+  }
+  {
+    name = "nuget.frameworks";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/nuget.frameworks/5.0.0/nuget.frameworks.5.0.0.nupkg";
+      sha256 = "18ijvmj13cwjdrrm52c8fpq021531zaz4mj4b4zapxaqzzxf2qjr";
+    };
+  }
+  {
+    name = "nuget.frameworks";
+    version = "5.2.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/nuget.frameworks/5.2.0/nuget.frameworks.5.2.0.nupkg";
+      sha256 = "1fh4rp26m77jq5dyln68wz9qm217la9vv21amis2qvcy6gknk2wp";
+    };
+  }
+  {
+    name = "nuget.librarymodel";
+    version = "5.2.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/nuget.librarymodel/5.2.0/nuget.librarymodel.5.2.0.nupkg";
+      sha256 = "0vxd0y7rzzxvmxji9bzp95p2rx48303r3nqrlhmhhfc4z5fxjlqk";
+    };
+  }
+  {
+    name = "nuget.packaging";
+    version = "5.2.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/nuget.packaging/5.2.0/nuget.packaging.5.2.0.nupkg";
+      sha256 = "14frrbdkka9jd6g52bv4lbqnpckw09yynr08f9kfgbc3j8pklqqb";
+    };
+  }
+  {
+    name = "nuget.packaging.core";
+    version = "5.2.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/nuget.packaging.core/5.2.0/nuget.packaging.core.5.2.0.nupkg";
+      sha256 = "16sm2amzvbpmisb6x6dz1pvj1h3xm67vd2byl1wl13vrda0az3xb";
+    };
+  }
+  {
+    name = "nuget.projectmodel";
+    version = "5.2.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/nuget.projectmodel/5.2.0/nuget.projectmodel.5.2.0.nupkg";
+      sha256 = "1j23jk2zql52v2nqgi0k6d7z63pjjzrvw8y1s38zpf0sn7lzdr0h";
+    };
+  }
+  {
+    name = "nuget.protocol";
+    version = "5.2.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/nuget.protocol/5.2.0/nuget.protocol.5.2.0.nupkg";
+      sha256 = "1vlrrlcy7p2sf23wqax8mfhplnzppd73xqlr2g83ya056w0yf2rd";
+    };
+  }
+  {
+    name = "nuget.versioning";
+    version = "5.2.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/nuget.versioning/5.2.0/nuget.versioning.5.2.0.nupkg";
+      sha256 = "08ay8bhddj9yiq6h9lk814l65fpx5gh1iprkl7pcp78g57a6k45k";
+    };
+  }
+  {
+    name = "omnisharp.extensions.jsonrpc";
+    version = "0.19.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/omnisharp.extensions.jsonrpc/0.19.0/omnisharp.extensions.jsonrpc.0.19.0.nupkg";
+      sha256 = "0m9lw21iz90ayl35f24ir3vbiydf4sjqw590qqgwknykpzsi1ai2";
+    };
+  }
+  {
+    name = "omnisharp.extensions.jsonrpc.generators";
+    version = "0.19.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/omnisharp.extensions.jsonrpc.generators/0.19.0/omnisharp.extensions.jsonrpc.generators.0.19.0.nupkg";
+      sha256 = "17akjdh9dnyxr01lnlsa41ca52psqnny8j3wxz904zs15pz932ln";
+    };
+  }
+  {
+    name = "omnisharp.extensions.languageprotocol";
+    version = "0.19.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/omnisharp.extensions.languageprotocol/0.19.0/omnisharp.extensions.languageprotocol.0.19.0.nupkg";
+      sha256 = "06d4wakdaj42c9qnlhdyqrjnm97azp4hrvfg70f96ldl765y9vrf";
+    };
+  }
+  {
+    name = "omnisharp.extensions.languageserver";
+    version = "0.19.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/omnisharp.extensions.languageserver/0.19.0/omnisharp.extensions.languageserver.0.19.0.nupkg";
+      sha256 = "0k1z3zchl1d82fj0ha63i54g5j046iaz8vb3cyxpjb6kp7zah28v";
+    };
+  }
+  {
+    name = "omnisharp.extensions.languageserver.shared";
+    version = "0.19.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/omnisharp.extensions.languageserver.shared/0.19.0/omnisharp.extensions.languageserver.shared.0.19.0.nupkg";
+      sha256 = "0s3h9v5p043ip27g9jcvd0np9q3hn2pfv6gn539m45yb5d74a6i5";
+    };
+  }
+  {
+    name = "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg";
+      sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d";
+    };
+  }
+  {
+    name = "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg";
+      sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59";
+    };
+  }
+  {
+    name = "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg";
+      sha256 = "0c2p354hjx58xhhz7wv6div8xpi90sc6ibdm40qin21bvi7ymcaa";
+    };
+  }
+  {
+    name = "runtime.native.system";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.native.system/4.3.0/runtime.native.system.4.3.0.nupkg";
+      sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4";
+    };
+  }
+  {
+    name = "runtime.native.system.io.compression";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.native.system.io.compression/4.3.0/runtime.native.system.io.compression.4.3.0.nupkg";
+      sha256 = "1vvivbqsk6y4hzcid27pqpm5bsi6sc50hvqwbcx8aap5ifrxfs8d";
+    };
+  }
+  {
+    name = "runtime.native.system.net.http";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.native.system.net.http/4.3.0/runtime.native.system.net.http.4.3.0.nupkg";
+      sha256 = "1n6rgz5132lcibbch1qlf0g9jk60r0kqv087hxc0lisy50zpm7kk";
+    };
+  }
+  {
+    name = "runtime.native.system.security.cryptography.apple";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.native.system.security.cryptography.apple/4.3.0/runtime.native.system.security.cryptography.apple.4.3.0.nupkg";
+      sha256 = "1b61p6gw1m02cc1ry996fl49liiwky6181dzr873g9ds92zl326q";
+    };
+  }
+  {
+    name = "runtime.native.system.security.cryptography.openssl";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.native.system.security.cryptography.openssl/4.3.0/runtime.native.system.security.cryptography.openssl.4.3.0.nupkg";
+      sha256 = "18pzfdlwsg2nb1jjjjzyb5qlgy6xjxzmhnfaijq5s2jw3cm3ab97";
+    };
+  }
+  {
+    name = "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg";
+      sha256 = "0qyynf9nz5i7pc26cwhgi8j62ps27sqmf78ijcfgzab50z9g8ay3";
+    };
+  }
+  {
+    name = "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg";
+      sha256 = "1klrs545awhayryma6l7g2pvnp9xy4z0r1i40r80zb45q3i9nbyf";
+    };
+  }
+  {
+    name = "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple/4.3.0/runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg";
+      sha256 = "10yc8jdrwgcl44b4g93f1ds76b176bajd3zqi2faf5rvh1vy9smi";
+    };
+  }
+  {
+    name = "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg";
+      sha256 = "0zcxjv5pckplvkg0r6mw3asggm7aqzbdjimhvsasb0cgm59x09l3";
+    };
+  }
+  {
+    name = "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg";
+      sha256 = "0vhynn79ih7hw7cwjazn87rm9z9fj0rvxgzlab36jybgcpcgphsn";
+    };
+  }
+  {
+    name = "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg";
+      sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3";
+    };
+  }
+  {
+    name = "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg";
+      sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy";
+    };
+  }
+  {
+    name = "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0/runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg";
+      sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5";
+    };
+  }
+  {
+    name = "sqlitepclraw.bundle_green";
+    version = "2.0.4";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/sqlitepclraw.bundle_green/2.0.4/sqlitepclraw.bundle_green.2.0.4.nupkg";
+      sha256 = "1197ynpm4fl6il9vi0mi1s1pmw3rk3j0a05kwrxpqlfgp7iwhc22";
+    };
+  }
+  {
+    name = "sqlitepclraw.core";
+    version = "2.0.4";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/sqlitepclraw.core/2.0.4/sqlitepclraw.core.2.0.4.nupkg";
+      sha256 = "0lb5vwfl1hd24xzzdaj2p4k2hv2k0i3mgdri6fjj0ssb37mcyir1";
+    };
+  }
+  {
+    name = "sqlitepclraw.lib.e_sqlite3";
+    version = "2.0.4";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/sqlitepclraw.lib.e_sqlite3/2.0.4/sqlitepclraw.lib.e_sqlite3.2.0.4.nupkg";
+      sha256 = "0kmx1w5qllmwxldr8338qxwmpfzc6g2lmyrah7wfaxd3mvfzky5c";
+    };
+  }
+  {
+    name = "sqlitepclraw.provider.dynamic_cdecl";
+    version = "2.0.4";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/sqlitepclraw.provider.dynamic_cdecl/2.0.4/sqlitepclraw.provider.dynamic_cdecl.2.0.4.nupkg";
+      sha256 = "084r98kilpm0q1aw41idq8slncpd7cz65g0m1wr0p8d12x8z5g6j";
+    };
+  }
+  {
+    name = "sqlitepclraw.provider.e_sqlite3";
+    version = "2.0.4";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/sqlitepclraw.provider.e_sqlite3/2.0.4/sqlitepclraw.provider.e_sqlite3.2.0.4.nupkg";
+      sha256 = "1vm8w8xvqi11sihdz5s6y4w7ghq4pp5f2ksixdhlbycvs6m4h7i7";
+    };
+  }
+  {
+    name = "system.appcontext";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.appcontext/4.3.0/system.appcontext.4.3.0.nupkg";
+      sha256 = "1649qvy3dar900z3g817h17nl8jp4ka5vcfmsr05kh0fshn7j3ya";
+    };
+  }
+  {
+    name = "system.buffers";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.buffers/4.3.0/system.buffers.4.3.0.nupkg";
+      sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy";
+    };
+  }
+  {
+    name = "system.buffers";
+    version = "4.4.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.buffers/4.4.0/system.buffers.4.4.0.nupkg";
+      sha256 = "183f8063w8zqn99pv0ni0nnwh7fgx46qzxamwnans55hhs2l0g19";
+    };
+  }
+  {
+    name = "system.buffers";
+    version = "4.5.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.buffers/4.5.0/system.buffers.4.5.0.nupkg";
+      sha256 = "1ywfqn4md6g3iilpxjn5dsr0f5lx6z0yvhqp4pgjcamygg73cz2c";
+    };
+  }
+  {
+    name = "system.buffers";
+    version = "4.5.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.buffers/4.5.1/system.buffers.4.5.1.nupkg";
+      sha256 = "04kb1mdrlcixj9zh1xdi5as0k0qi8byr5mi3p3jcxx72qz93s2y3";
+    };
+  }
+  {
+    name = "system.codedom";
+    version = "4.4.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.codedom/4.4.0/system.codedom.4.4.0.nupkg";
+      sha256 = "1zgbafm5p380r50ap5iddp11kzhr9khrf2pnai6k593wjar74p1g";
+    };
+  }
+  {
+    name = "system.collections";
+    version = "4.0.11";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.collections/4.0.11/system.collections.4.0.11.nupkg";
+      sha256 = "1ga40f5lrwldiyw6vy67d0sg7jd7ww6kgwbksm19wrvq9hr0bsm6";
+    };
+  }
+  {
+    name = "system.collections";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.collections/4.3.0/system.collections.4.3.0.nupkg";
+      sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9";
+    };
+  }
+  {
+    name = "system.collections.concurrent";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.collections.concurrent/4.3.0/system.collections.concurrent.4.3.0.nupkg";
+      sha256 = "0wi10md9aq33jrkh2c24wr2n9hrpyamsdhsxdcnf43b7y86kkii8";
+    };
+  }
+  {
+    name = "system.collections.immutable";
+    version = "1.5.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.collections.immutable/1.5.0/system.collections.immutable.1.5.0.nupkg";
+      sha256 = "1d5gjn5afnrf461jlxzawcvihz195gayqpcfbv6dd7pxa9ialn06";
+    };
+  }
+  {
+    name = "system.collections.immutable";
+    version = "1.7.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.collections.immutable/1.7.1/system.collections.immutable.1.7.1.nupkg";
+      sha256 = "1nh4nlxfc7lbnbl86wwk1a3jwl6myz5j6hvgh5sp4krim9901hsq";
+    };
+  }
+  {
+    name = "system.collections.immutable";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.collections.immutable/5.0.0/system.collections.immutable.5.0.0.nupkg";
+      sha256 = "1kvcllagxz2q92g81zkz81djkn2lid25ayjfgjalncyc68i15p0r";
+    };
+  }
+  {
+    name = "system.componentmodel.composition";
+    version = "4.5.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.componentmodel.composition/4.5.0/system.componentmodel.composition.4.5.0.nupkg";
+      sha256 = "196ihd17in5idnxq5l5xvpa1fhqamnihjg3mcmv1k4n8bjrrj5y7";
+    };
+  }
+  {
+    name = "system.composition";
+    version = "1.0.31";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.composition/1.0.31/system.composition.1.0.31.nupkg";
+      sha256 = "0aa27jz73qb0xm6dyxv22qhfrmyyqjyn2dvvsd9asi82lcdh9i61";
+    };
+  }
+  {
+    name = "system.composition.attributedmodel";
+    version = "1.0.31";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.composition.attributedmodel/1.0.31/system.composition.attributedmodel.1.0.31.nupkg";
+      sha256 = "1ipyb86hvw754kmk47vjmzyilvj5hymg9nqabz70sbgsz1fygrdv";
+    };
+  }
+  {
+    name = "system.composition.convention";
+    version = "1.0.31";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.composition.convention/1.0.31/system.composition.convention.1.0.31.nupkg";
+      sha256 = "00gqcdrql7vhynxh4xq0s9j5nw27kghmn2n773v7lhzjh3ash18r";
+    };
+  }
+  {
+    name = "system.composition.hosting";
+    version = "1.0.31";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.composition.hosting/1.0.31/system.composition.hosting.1.0.31.nupkg";
+      sha256 = "1f1bnk3j7ndx9r7zpzibmrhw78clys1pspl20j2dhnmkiwhl23vy";
+    };
+  }
+  {
+    name = "system.composition.runtime";
+    version = "1.0.31";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.composition.runtime/1.0.31/system.composition.runtime.1.0.31.nupkg";
+      sha256 = "1shfybfzsn4g6aim4pggb5ha31g0fz2kkk0519c4vj6m166g39ws";
+    };
+  }
+  {
+    name = "system.composition.typedparts";
+    version = "1.0.31";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.composition.typedparts/1.0.31/system.composition.typedparts.1.0.31.nupkg";
+      sha256 = "1m4j19zx50lbbdx1xxbgpsd1dai2r3kzkyapw47kdvkb89qjkl63";
+    };
+  }
+  {
+    name = "system.configuration.configurationmanager";
+    version = "4.7.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.configuration.configurationmanager/4.7.0/system.configuration.configurationmanager.4.7.0.nupkg";
+      sha256 = "0pav0n21ghf2ax6fiwjbng29f27wkb4a2ddma0cqx04s97yyk25d";
+    };
+  }
+  {
+    name = "system.console";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.console/4.3.0/system.console.4.3.0.nupkg";
+      sha256 = "1flr7a9x920mr5cjsqmsy9wgnv3lvd0h1g521pdr1lkb2qycy7ay";
+    };
+  }
+  {
+    name = "system.diagnostics.debug";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.diagnostics.debug/4.3.0/system.diagnostics.debug.4.3.0.nupkg";
+      sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y";
+    };
+  }
+  {
+    name = "system.diagnostics.diagnosticsource";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.diagnostics.diagnosticsource/4.3.0/system.diagnostics.diagnosticsource.4.3.0.nupkg";
+      sha256 = "0z6m3pbiy0qw6rn3n209rrzf9x1k4002zh90vwcrsym09ipm2liq";
+    };
+  }
+  {
+    name = "system.diagnostics.diagnosticsource";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.diagnostics.diagnosticsource/5.0.0/system.diagnostics.diagnosticsource.5.0.0.nupkg";
+      sha256 = "0phd2qizshjvglhzws1jd0cq4m54gscz4ychzr3x6wbgl4vvfrga";
+    };
+  }
+  {
+    name = "system.diagnostics.process";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.diagnostics.process/4.3.0/system.diagnostics.process.4.3.0.nupkg";
+      sha256 = "0g4prsbkygq8m21naqmcp70f24a1ksyix3dihb1r1f71lpi3cfj7";
+    };
+  }
+  {
+    name = "system.diagnostics.tools";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.diagnostics.tools/4.3.0/system.diagnostics.tools.4.3.0.nupkg";
+      sha256 = "0in3pic3s2ddyibi8cvgl102zmvp9r9mchh82ns9f0ms4basylw1";
+    };
+  }
+  {
+    name = "system.diagnostics.tracing";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.diagnostics.tracing/4.3.0/system.diagnostics.tracing.4.3.0.nupkg";
+      sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4";
+    };
+  }
+  {
+    name = "system.dynamic.runtime";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.dynamic.runtime/4.3.0/system.dynamic.runtime.4.3.0.nupkg";
+      sha256 = "1d951hrvrpndk7insiag80qxjbf2y0y39y8h5hnq9612ws661glk";
+    };
+  }
+  {
+    name = "system.globalization";
+    version = "4.0.11";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.globalization/4.0.11/system.globalization.4.0.11.nupkg";
+      sha256 = "070c5jbas2v7smm660zaf1gh0489xanjqymkvafcs4f8cdrs1d5d";
+    };
+  }
+  {
+    name = "system.globalization";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.globalization/4.3.0/system.globalization.4.3.0.nupkg";
+      sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki";
+    };
+  }
+  {
+    name = "system.globalization.calendars";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.globalization.calendars/4.3.0/system.globalization.calendars.4.3.0.nupkg";
+      sha256 = "1xwl230bkakzzkrggy1l1lxmm3xlhk4bq2pkv790j5lm8g887lxq";
+    };
+  }
+  {
+    name = "system.globalization.extensions";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.globalization.extensions/4.3.0/system.globalization.extensions.4.3.0.nupkg";
+      sha256 = "02a5zfxavhv3jd437bsncbhd2fp1zv4gxzakp1an9l6kdq1mcqls";
+    };
+  }
+  {
+    name = "system.io";
+    version = "4.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.io/4.1.0/system.io.4.1.0.nupkg";
+      sha256 = "1g0yb8p11vfd0kbkyzlfsbsp5z44lwsvyc0h3dpw6vqnbi035ajp";
+    };
+  }
+  {
+    name = "system.io";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.io/4.3.0/system.io.4.3.0.nupkg";
+      sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f";
+    };
+  }
+  {
+    name = "system.io.compression";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.io.compression/4.3.0/system.io.compression.4.3.0.nupkg";
+      sha256 = "084zc82yi6yllgda0zkgl2ys48sypiswbiwrv7irb3r0ai1fp4vz";
+    };
+  }
+  {
+    name = "system.io.compression.zipfile";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.io.compression.zipfile/4.3.0/system.io.compression.zipfile.4.3.0.nupkg";
+      sha256 = "1yxy5pq4dnsm9hlkg9ysh5f6bf3fahqqb6p8668ndy5c0lk7w2ar";
+    };
+  }
+  {
+    name = "system.io.filesystem";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.io.filesystem/4.3.0/system.io.filesystem.4.3.0.nupkg";
+      sha256 = "0z2dfrbra9i6y16mm9v1v6k47f0fm617vlb7s5iybjjsz6g1ilmw";
+    };
+  }
+  {
+    name = "system.io.filesystem.primitives";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.io.filesystem.primitives/4.3.0/system.io.filesystem.primitives.4.3.0.nupkg";
+      sha256 = "0j6ndgglcf4brg2lz4wzsh1av1gh8xrzdsn9f0yznskhqn1xzj9c";
+    };
+  }
+  {
+    name = "system.io.pipelines";
+    version = "4.7.3";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.io.pipelines/4.7.3/system.io.pipelines.4.7.3.nupkg";
+      sha256 = "0djp59x56klidi04xx8p5jc1nchv5zvd1d59diphqxwvgny3aawy";
+    };
+  }
+  {
+    name = "system.io.pipelines";
+    version = "5.0.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.io.pipelines/5.0.1/system.io.pipelines.5.0.1.nupkg";
+      sha256 = "1zvfcd2l1d5qxifsqd0cjyv57nr61a9ac2ca5jinyqmj32wgjd6v";
+    };
+  }
+  {
+    name = "system.linq";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.linq/4.3.0/system.linq.4.3.0.nupkg";
+      sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7";
+    };
+  }
+  {
+    name = "system.linq.expressions";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.linq.expressions/4.3.0/system.linq.expressions.4.3.0.nupkg";
+      sha256 = "0ky2nrcvh70rqq88m9a5yqabsl4fyd17bpr63iy2mbivjs2nyypv";
+    };
+  }
+  {
+    name = "system.memory";
+    version = "4.5.3";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.memory/4.5.3/system.memory.4.5.3.nupkg";
+      sha256 = "0naqahm3wljxb5a911d37mwjqjdxv9l0b49p5dmfyijvni2ppy8a";
+    };
+  }
+  {
+    name = "system.memory";
+    version = "4.5.4";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.memory/4.5.4/system.memory.4.5.4.nupkg";
+      sha256 = "14gbbs22mcxwggn0fcfs1b062521azb9fbb7c113x0mq6dzq9h6y";
+    };
+  }
+  {
+    name = "system.net.http";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.net.http/4.3.0/system.net.http.4.3.0.nupkg";
+      sha256 = "1i4gc757xqrzflbk7kc5ksn20kwwfjhw9w7pgdkn19y3cgnl302j";
+    };
+  }
+  {
+    name = "system.net.primitives";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.net.primitives/4.3.0/system.net.primitives.4.3.0.nupkg";
+      sha256 = "0c87k50rmdgmxx7df2khd9qj7q35j9rzdmm2572cc55dygmdk3ii";
+    };
+  }
+  {
+    name = "system.net.sockets";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.net.sockets/4.3.0/system.net.sockets.4.3.0.nupkg";
+      sha256 = "1ssa65k6chcgi6mfmzrznvqaxk8jp0gvl77xhf1hbzakjnpxspla";
+    };
+  }
+  {
+    name = "system.net.websockets";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.net.websockets/4.3.0/system.net.websockets.4.3.0.nupkg";
+      sha256 = "1gfj800078kggcgl0xyl00a6y5k4wwh2k2qm69rjy22wbmq7fy4p";
+    };
+  }
+  {
+    name = "system.numerics.vectors";
+    version = "4.4.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.numerics.vectors/4.4.0/system.numerics.vectors.4.4.0.nupkg";
+      sha256 = "0rdvma399070b0i46c4qq1h2yvjj3k013sqzkilz4bz5cwmx1rba";
+    };
+  }
+  {
+    name = "system.numerics.vectors";
+    version = "4.5.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.numerics.vectors/4.5.0/system.numerics.vectors.4.5.0.nupkg";
+      sha256 = "1kzrj37yzawf1b19jq0253rcs8hsq1l2q8g69d7ipnhzb0h97m59";
+    };
+  }
+  {
+    name = "system.objectmodel";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.objectmodel/4.3.0/system.objectmodel.4.3.0.nupkg";
+      sha256 = "191p63zy5rpqx7dnrb3h7prvgixmk168fhvvkkvhlazncf8r3nc2";
+    };
+  }
+  {
+    name = "system.reactive";
+    version = "4.4.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reactive/4.4.1/system.reactive.4.4.1.nupkg";
+      sha256 = "0gx8jh3hny2y5kijz5k9pxiqw481d013787c04zlhps21ygklw4a";
+    };
+  }
+  {
+    name = "system.reflection";
+    version = "4.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection/4.1.0/system.reflection.4.1.0.nupkg";
+      sha256 = "1js89429pfw79mxvbzp8p3q93il6rdff332hddhzi5wqglc4gml9";
+    };
+  }
+  {
+    name = "system.reflection";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection/4.3.0/system.reflection.4.3.0.nupkg";
+      sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m";
+    };
+  }
+  {
+    name = "system.reflection.dispatchproxy";
+    version = "4.5.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.dispatchproxy/4.5.1/system.reflection.dispatchproxy.4.5.1.nupkg";
+      sha256 = "0cdnl4i9mfk7kx2ylglayqwqw7kl5k1xr8siaxch45hfyc2cpds8";
+    };
+  }
+  {
+    name = "system.reflection.emit";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.emit/4.3.0/system.reflection.emit.4.3.0.nupkg";
+      sha256 = "11f8y3qfysfcrscjpjym9msk7lsfxkk4fmz9qq95kn3jd0769f74";
+    };
+  }
+  {
+    name = "system.reflection.emit";
+    version = "4.6.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.emit/4.6.0/system.reflection.emit.4.6.0.nupkg";
+      sha256 = "18h375q5bn9h7swxnk4krrxym1dxmi9bm26p89xps9ygrj4q6zqw";
+    };
+  }
+  {
+    name = "system.reflection.emit.ilgeneration";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.emit.ilgeneration/4.3.0/system.reflection.emit.ilgeneration.4.3.0.nupkg";
+      sha256 = "0w1n67glpv8241vnpz1kl14sy7zlnw414aqwj4hcx5nd86f6994q";
+    };
+  }
+  {
+    name = "system.reflection.emit.ilgeneration";
+    version = "4.6.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.emit.ilgeneration/4.6.0/system.reflection.emit.ilgeneration.4.6.0.nupkg";
+      sha256 = "0jxc26k5q0rwrldi30bfbrfw4jh3kvribzwc8ryzr24kmhr3vv96";
+    };
+  }
+  {
+    name = "system.reflection.emit.lightweight";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.emit.lightweight/4.3.0/system.reflection.emit.lightweight.4.3.0.nupkg";
+      sha256 = "0ql7lcakycrvzgi9kxz1b3lljd990az1x6c4jsiwcacrvimpib5c";
+    };
+  }
+  {
+    name = "system.reflection.emit.lightweight";
+    version = "4.6.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.emit.lightweight/4.6.0/system.reflection.emit.lightweight.4.6.0.nupkg";
+      sha256 = "0hry2k6b7kicg4zxnq0hhn0ys52711pxy7l9v5sp7gvp9cicwpgp";
+    };
+  }
+  {
+    name = "system.reflection.extensions";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.extensions/4.3.0/system.reflection.extensions.4.3.0.nupkg";
+      sha256 = "02bly8bdc98gs22lqsfx9xicblszr2yan7v2mmw3g7hy6miq5hwq";
+    };
+  }
+  {
+    name = "system.reflection.metadata";
+    version = "1.6.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.metadata/1.6.0/system.reflection.metadata.1.6.0.nupkg";
+      sha256 = "1wdbavrrkajy7qbdblpbpbalbdl48q3h34cchz24gvdgyrlf15r4";
+    };
+  }
+  {
+    name = "system.reflection.metadata";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.metadata/5.0.0/system.reflection.metadata.5.0.0.nupkg";
+      sha256 = "17qsl5nanlqk9iz0l5wijdn6ka632fs1m1fvx18dfgswm258r3ss";
+    };
+  }
+  {
+    name = "system.reflection.primitives";
+    version = "4.0.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.primitives/4.0.1/system.reflection.primitives.4.0.1.nupkg";
+      sha256 = "1bangaabhsl4k9fg8khn83wm6yial8ik1sza7401621jc6jrym28";
+    };
+  }
+  {
+    name = "system.reflection.primitives";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.primitives/4.3.0/system.reflection.primitives.4.3.0.nupkg";
+      sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276";
+    };
+  }
+  {
+    name = "system.reflection.typeextensions";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.reflection.typeextensions/4.3.0/system.reflection.typeextensions.4.3.0.nupkg";
+      sha256 = "0y2ssg08d817p0vdag98vn238gyrrynjdj4181hdg780sif3ykp1";
+    };
+  }
+  {
+    name = "system.resources.extensions";
+    version = "4.6.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.resources.extensions/4.6.0/system.resources.extensions.4.6.0.nupkg";
+      sha256 = "0inch9jgchgmsg3xjivbhh9mpin40mhdd8dgf4i1p3g42i0hzc0j";
+    };
+  }
+  {
+    name = "system.resources.resourcemanager";
+    version = "4.0.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.resources.resourcemanager/4.0.1/system.resources.resourcemanager.4.0.1.nupkg";
+      sha256 = "0b4i7mncaf8cnai85jv3wnw6hps140cxz8vylv2bik6wyzgvz7bi";
+    };
+  }
+  {
+    name = "system.resources.resourcemanager";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.resources.resourcemanager/4.3.0/system.resources.resourcemanager.4.3.0.nupkg";
+      sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49";
+    };
+  }
+  {
+    name = "system.runtime";
+    version = "4.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime/4.1.0/system.runtime.4.1.0.nupkg";
+      sha256 = "02hdkgk13rvsd6r9yafbwzss8kr55wnj8d5c7xjnp8gqrwc8sn0m";
+    };
+  }
+  {
+    name = "system.runtime";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime/4.3.0/system.runtime.4.3.0.nupkg";
+      sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7";
+    };
+  }
+  {
+    name = "system.runtime.compilerservices.unsafe";
+    version = "4.4.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.compilerservices.unsafe/4.4.0/system.runtime.compilerservices.unsafe.4.4.0.nupkg";
+      sha256 = "0a6ahgi5b148sl5qyfpyw383p3cb4yrkm802k29fsi4mxkiwir29";
+    };
+  }
+  {
+    name = "system.runtime.compilerservices.unsafe";
+    version = "4.5.2";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.compilerservices.unsafe/4.5.2/system.runtime.compilerservices.unsafe.4.5.2.nupkg";
+      sha256 = "1vz4275fjij8inf31np78hw50al8nqkngk04p3xv5n4fcmf1grgi";
+    };
+  }
+  {
+    name = "system.runtime.compilerservices.unsafe";
+    version = "4.5.3";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.compilerservices.unsafe/4.5.3/system.runtime.compilerservices.unsafe.4.5.3.nupkg";
+      sha256 = "1afi6s2r1mh1kygbjmfba6l4f87pi5sg13p4a48idqafli94qxln";
+    };
+  }
+  {
+    name = "system.runtime.compilerservices.unsafe";
+    version = "4.7.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.compilerservices.unsafe/4.7.0/system.runtime.compilerservices.unsafe.4.7.0.nupkg";
+      sha256 = "16r6sn4czfjk8qhnz7bnqlyiaaszr0ihinb7mq9zzr1wba257r54";
+    };
+  }
+  {
+    name = "system.runtime.compilerservices.unsafe";
+    version = "4.7.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.compilerservices.unsafe/4.7.1/system.runtime.compilerservices.unsafe.4.7.1.nupkg";
+      sha256 = "119br3pd85lq8zcgh4f60jzmv1g976q1kdgi3hvqdlhfbw6siz2j";
+    };
+  }
+  {
+    name = "system.runtime.compilerservices.unsafe";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.compilerservices.unsafe/5.0.0/system.runtime.compilerservices.unsafe.5.0.0.nupkg";
+      sha256 = "02k25ivn50dmqx5jn8hawwmz24yf0454fjd823qk6lygj9513q4x";
+    };
+  }
+  {
+    name = "system.runtime.extensions";
+    version = "4.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.extensions/4.1.0/system.runtime.extensions.4.1.0.nupkg";
+      sha256 = "0rw4rm4vsm3h3szxp9iijc3ksyviwsv6f63dng3vhqyg4vjdkc2z";
+    };
+  }
+  {
+    name = "system.runtime.extensions";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.extensions/4.3.0/system.runtime.extensions.4.3.0.nupkg";
+      sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60";
+    };
+  }
+  {
+    name = "system.runtime.handles";
+    version = "4.0.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.handles/4.0.1/system.runtime.handles.4.0.1.nupkg";
+      sha256 = "1g0zrdi5508v49pfm3iii2hn6nm00bgvfpjq1zxknfjrxxa20r4g";
+    };
+  }
+  {
+    name = "system.runtime.handles";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.handles/4.3.0/system.runtime.handles.4.3.0.nupkg";
+      sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8";
+    };
+  }
+  {
+    name = "system.runtime.interopservices";
+    version = "4.1.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.interopservices/4.1.0/system.runtime.interopservices.4.1.0.nupkg";
+      sha256 = "01kxqppx3dr3b6b286xafqilv4s2n0gqvfgzfd4z943ga9i81is1";
+    };
+  }
+  {
+    name = "system.runtime.interopservices";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.interopservices/4.3.0/system.runtime.interopservices.4.3.0.nupkg";
+      sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j";
+    };
+  }
+  {
+    name = "system.runtime.interopservices.runtimeinformation";
+    version = "4.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.interopservices.runtimeinformation/4.0.0/system.runtime.interopservices.runtimeinformation.4.0.0.nupkg";
+      sha256 = "0glmvarf3jz5xh22iy3w9v3wyragcm4hfdr17v90vs7vcrm7fgp6";
+    };
+  }
+  {
+    name = "system.runtime.interopservices.runtimeinformation";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.interopservices.runtimeinformation/4.3.0/system.runtime.interopservices.runtimeinformation.4.3.0.nupkg";
+      sha256 = "0q18r1sh4vn7bvqgd6dmqlw5v28flbpj349mkdish2vjyvmnb2ii";
+    };
+  }
+  {
+    name = "system.runtime.interopservices.windowsruntime";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.interopservices.windowsruntime/4.3.0/system.runtime.interopservices.windowsruntime.4.3.0.nupkg";
+      sha256 = "0bpsy91yqm2ryp5y9li8p6yh4yrxcvg9zvm569ifw25rpy67bgp9";
+    };
+  }
+  {
+    name = "system.runtime.numerics";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.runtime.numerics/4.3.0/system.runtime.numerics.4.3.0.nupkg";
+      sha256 = "19rav39sr5dky7afygh309qamqqmi9kcwvz3i0c5700v0c5cg61z";
+    };
+  }
+  {
+    name = "system.security.accesscontrol";
+    version = "4.5.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.accesscontrol/4.5.0/system.security.accesscontrol.4.5.0.nupkg";
+      sha256 = "1wvwanz33fzzbnd2jalar0p0z3x0ba53vzx1kazlskp7pwyhlnq0";
+    };
+  }
+  {
+    name = "system.security.accesscontrol";
+    version = "4.6.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.accesscontrol/4.6.0/system.security.accesscontrol.4.6.0.nupkg";
+      sha256 = "1wl1dyghi0qhpap1vgfhg2ybdyyhy9vc2a7dpm1xb30vfgmlkjmf";
+    };
+  }
+  {
+    name = "system.security.accesscontrol";
+    version = "4.7.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.accesscontrol/4.7.0/system.security.accesscontrol.4.7.0.nupkg";
+      sha256 = "0n0k0w44flkd8j0xw7g3g3vhw7dijfm51f75xkm1qxnbh4y45mpz";
+    };
+  }
+  {
+    name = "system.security.cryptography.algorithms";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.algorithms/4.3.0/system.security.cryptography.algorithms.4.3.0.nupkg";
+      sha256 = "03sq183pfl5kp7gkvq77myv7kbpdnq3y0xj7vi4q1kaw54sny0ml";
+    };
+  }
+  {
+    name = "system.security.cryptography.algorithms";
+    version = "4.3.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.algorithms/4.3.1/system.security.cryptography.algorithms.4.3.1.nupkg";
+      sha256 = "1m2wnzg3m3c0s11jg4lshcl2a47d78zri8khc21yrz34jjkbyls2";
+    };
+  }
+  {
+    name = "system.security.cryptography.cng";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.cng/4.3.0/system.security.cryptography.cng.4.3.0.nupkg";
+      sha256 = "1k468aswafdgf56ab6yrn7649kfqx2wm9aslywjam1hdmk5yypmv";
+    };
+  }
+  {
+    name = "system.security.cryptography.cng";
+    version = "4.7.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.cng/4.7.0/system.security.cryptography.cng.4.7.0.nupkg";
+      sha256 = "00797sqbba8lys486ifxblz9j52m29kidclvmqpk531820k55x9j";
+    };
+  }
+  {
+    name = "system.security.cryptography.csp";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.csp/4.3.0/system.security.cryptography.csp.4.3.0.nupkg";
+      sha256 = "1x5wcrddf2s3hb8j78cry7yalca4lb5vfnkrysagbn6r9x6xvrx1";
+    };
+  }
+  {
+    name = "system.security.cryptography.encoding";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.encoding/4.3.0/system.security.cryptography.encoding.4.3.0.nupkg";
+      sha256 = "1jr6w70igqn07k5zs1ph6xja97hxnb3mqbspdrff6cvssgrixs32";
+    };
+  }
+  {
+    name = "system.security.cryptography.openssl";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.openssl/4.3.0/system.security.cryptography.openssl.4.3.0.nupkg";
+      sha256 = "0givpvvj8yc7gv4lhb6s1prq6p2c4147204a0wib89inqzd87gqc";
+    };
+  }
+  {
+    name = "system.security.cryptography.pkcs";
+    version = "4.7.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.pkcs/4.7.0/system.security.cryptography.pkcs.4.7.0.nupkg";
+      sha256 = "1mwvzl5ask8kk0vdgchhqr90nl61kagg47warb7dxrb03cxjd4wm";
+    };
+  }
+  {
+    name = "system.security.cryptography.primitives";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.primitives/4.3.0/system.security.cryptography.primitives.4.3.0.nupkg";
+      sha256 = "0pyzncsv48zwly3lw4f2dayqswcfvdwq2nz0dgwmi7fj3pn64wby";
+    };
+  }
+  {
+    name = "system.security.cryptography.protecteddata";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.protecteddata/4.3.0/system.security.cryptography.protecteddata.4.3.0.nupkg";
+      sha256 = "1kg264xmqabyz8gfg8ymp6qp6aw43vawfp0znf0909d7b5jd3dq9";
+    };
+  }
+  {
+    name = "system.security.cryptography.protecteddata";
+    version = "4.7.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.protecteddata/4.7.0/system.security.cryptography.protecteddata.4.7.0.nupkg";
+      sha256 = "1s1sh8k10s0apa09c5m2lkavi3ys90y657whg2smb3y8mpkfr5vm";
+    };
+  }
+  {
+    name = "system.security.cryptography.x509certificates";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.x509certificates/4.3.0/system.security.cryptography.x509certificates.4.3.0.nupkg";
+      sha256 = "0valjcz5wksbvijylxijjxb1mp38mdhv03r533vnx1q3ikzdav9h";
+    };
+  }
+  {
+    name = "system.security.cryptography.xml";
+    version = "4.7.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.cryptography.xml/4.7.0/system.security.cryptography.xml.4.7.0.nupkg";
+      sha256 = "08c82yb1nhfqr15rrypc36c7pysp7jymkwnra84w72nd53h3dfgb";
+    };
+  }
+  {
+    name = "system.security.permissions";
+    version = "4.5.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.permissions/4.5.0/system.security.permissions.4.5.0.nupkg";
+      sha256 = "192ww5rm3c9mirxgl1nzyrwd18am3izqls0hzm0fvcdjl5grvbhm";
+    };
+  }
+  {
+    name = "system.security.permissions";
+    version = "4.7.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.permissions/4.7.0/system.security.permissions.4.7.0.nupkg";
+      sha256 = "13f366sj36jwbvld957gk2q64k2xbj48r8b0k9avrri2nlq1fs04";
+    };
+  }
+  {
+    name = "system.security.principal.windows";
+    version = "4.5.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.principal.windows/4.5.0/system.security.principal.windows.4.5.0.nupkg";
+      sha256 = "0rmj89wsl5yzwh0kqjgx45vzf694v9p92r4x4q6yxldk1cv1hi86";
+    };
+  }
+  {
+    name = "system.security.principal.windows";
+    version = "4.6.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.principal.windows/4.6.0/system.security.principal.windows.4.6.0.nupkg";
+      sha256 = "1jmfzfz1n8hp63s5lja5xxpzkinbp6g59l3km9h8avjiisdrg5wm";
+    };
+  }
+  {
+    name = "system.security.principal.windows";
+    version = "4.7.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.security.principal.windows/4.7.0/system.security.principal.windows.4.7.0.nupkg";
+      sha256 = "1a56ls5a9sr3ya0nr086sdpa9qv0abv31dd6fp27maqa9zclqq5d";
+    };
+  }
+  {
+    name = "system.text.encoding";
+    version = "4.0.11";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.text.encoding/4.0.11/system.text.encoding.4.0.11.nupkg";
+      sha256 = "1dyqv0hijg265dwxg6l7aiv74102d6xjiwplh2ar1ly6xfaa4iiw";
+    };
+  }
+  {
+    name = "system.text.encoding";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.text.encoding/4.3.0/system.text.encoding.4.3.0.nupkg";
+      sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr";
+    };
+  }
+  {
+    name = "system.text.encoding.codepages";
+    version = "4.0.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.text.encoding.codepages/4.0.1/system.text.encoding.codepages.4.0.1.nupkg";
+      sha256 = "00wpm3b9y0k996rm9whxprngm8l500ajmzgy2ip9pgwk0icp06y3";
+    };
+  }
+  {
+    name = "system.text.encoding.codepages";
+    version = "4.5.1";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.text.encoding.codepages/4.5.1/system.text.encoding.codepages.4.5.1.nupkg";
+      sha256 = "1z21qyfs6sg76rp68qdx0c9iy57naan89pg7p6i3qpj8kyzn921w";
+    };
+  }
+  {
+    name = "system.text.encoding.extensions";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.text.encoding.extensions/4.3.0/system.text.encoding.extensions.4.3.0.nupkg";
+      sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy";
+    };
+  }
+  {
+    name = "system.text.encodings.web";
+    version = "4.7.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.text.encodings.web/4.7.0/system.text.encodings.web.4.7.0.nupkg";
+      sha256 = "0sd3bihfar5rwm6nib4lhyys306nkm02qvk6p6sgzmnlfmma2wn3";
+    };
+  }
+  {
+    name = "system.text.encodings.web";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.text.encodings.web/5.0.0/system.text.encodings.web.5.0.0.nupkg";
+      sha256 = "144pgy65jc3bkar7d4fg1c0rq6qmkx68gj9k1ldk97558w22v1r1";
+    };
+  }
+  {
+    name = "system.text.json";
+    version = "4.7.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.text.json/4.7.0/system.text.json.4.7.0.nupkg";
+      sha256 = "0fp3xrysccm5dkaac4yb51d793vywxks978kkl5x4db9gw29rfdr";
+    };
+  }
+  {
+    name = "system.text.json";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.text.json/5.0.0/system.text.json.5.0.0.nupkg";
+      sha256 = "1gpgl18z6qrgmqrikgh99xkjwzb1didrjp77bch7nrlra21gr4ks";
+    };
+  }
+  {
+    name = "system.text.regularexpressions";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.text.regularexpressions/4.3.0/system.text.regularexpressions.4.3.0.nupkg";
+      sha256 = "1bgq51k7fwld0njylfn7qc5fmwrk2137gdq7djqdsw347paa9c2l";
+    };
+  }
+  {
+    name = "system.threading";
+    version = "4.0.11";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.threading/4.0.11/system.threading.4.0.11.nupkg";
+      sha256 = "19x946h926bzvbsgj28csn46gak2crv2skpwsx80hbgazmkgb1ls";
+    };
+  }
+  {
+    name = "system.threading";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.threading/4.3.0/system.threading.4.3.0.nupkg";
+      sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34";
+    };
+  }
+  {
+    name = "system.threading.tasks";
+    version = "4.0.11";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.threading.tasks/4.0.11/system.threading.tasks.4.0.11.nupkg";
+      sha256 = "0nr1r41rak82qfa5m0lhk9mp0k93bvfd7bbd9sdzwx9mb36g28p5";
+    };
+  }
+  {
+    name = "system.threading.tasks";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.threading.tasks/4.3.0/system.threading.tasks.4.3.0.nupkg";
+      sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7";
+    };
+  }
+  {
+    name = "system.threading.tasks.dataflow";
+    version = "5.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.threading.tasks.dataflow/5.0.0/system.threading.tasks.dataflow.5.0.0.nupkg";
+      sha256 = "028fimgwn5j9fv6m547c975a8b90d9qcnb89k5crjyspsnjcqbhy";
+    };
+  }
+  {
+    name = "system.threading.tasks.extensions";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.threading.tasks.extensions/4.3.0/system.threading.tasks.extensions.4.3.0.nupkg";
+      sha256 = "1xxcx2xh8jin360yjwm4x4cf5y3a2bwpn2ygkfkwkicz7zk50s2z";
+    };
+  }
+  {
+    name = "system.threading.tasks.extensions";
+    version = "4.5.2";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.threading.tasks.extensions/4.5.2/system.threading.tasks.extensions.4.5.2.nupkg";
+      sha256 = "1sh63dz0dymqcwmprp0nadm77b83vmm7lyllpv578c397bslb8hj";
+    };
+  }
+  {
+    name = "system.threading.tasks.extensions";
+    version = "4.5.3";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.threading.tasks.extensions/4.5.3/system.threading.tasks.extensions.4.5.3.nupkg";
+      sha256 = "0g7r6hm572ax8v28axrdxz1gnsblg6kszq17g51pj14a5rn2af7i";
+    };
+  }
+  {
+    name = "system.threading.tasks.extensions";
+    version = "4.5.4";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.threading.tasks.extensions/4.5.4/system.threading.tasks.extensions.4.5.4.nupkg";
+      sha256 = "0y6ncasgfcgnjrhynaf0lwpkpkmv4a07sswwkwbwb5h7riisj153";
+    };
+  }
+  {
+    name = "system.threading.thread";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.threading.thread/4.3.0/system.threading.thread.4.3.0.nupkg";
+      sha256 = "0y2xiwdfcph7znm2ysxanrhbqqss6a3shi1z3c779pj2s523mjx4";
+    };
+  }
+  {
+    name = "system.threading.threadpool";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.threading.threadpool/4.3.0/system.threading.threadpool.4.3.0.nupkg";
+      sha256 = "027s1f4sbx0y1xqw2irqn6x161lzj8qwvnh2gn78ciiczdv10vf1";
+    };
+  }
+  {
+    name = "system.threading.timer";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.threading.timer/4.3.0/system.threading.timer.4.3.0.nupkg";
+      sha256 = "1nx773nsx6z5whv8kaa1wjh037id2f1cxhb69pvgv12hd2b6qs56";
+    };
+  }
+  {
+    name = "system.valuetuple";
+    version = "4.4.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.valuetuple/4.4.0/system.valuetuple.4.4.0.nupkg";
+      sha256 = "1wydfgszs00yxga57sam66vzv9fshk2pw7gim57saplsnkfliaif";
+    };
+  }
+  {
+    name = "system.valuetuple";
+    version = "4.5.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.valuetuple/4.5.0/system.valuetuple.4.5.0.nupkg";
+      sha256 = "00k8ja51d0f9wrq4vv5z2jhq8hy31kac2rg0rv06prylcybzl8cy";
+    };
+  }
+  {
+    name = "system.xml.readerwriter";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.xml.readerwriter/4.3.0/system.xml.readerwriter.4.3.0.nupkg";
+      sha256 = "0c47yllxifzmh8gq6rq6l36zzvw4kjvlszkqa9wq3fr59n0hl3s1";
+    };
+  }
+  {
+    name = "system.xml.xdocument";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/system.xml.xdocument/4.3.0/system.xml.xdocument.4.3.0.nupkg";
+      sha256 = "08h8fm4l77n0nd4i4fk2386y809bfbwqb7ih9d7564ifcxr5ssxd";
+    };
+  }
+]
diff --git a/nixpkgs/pkgs/development/tools/open-policy-agent/default.nix b/nixpkgs/pkgs/development/tools/open-policy-agent/default.nix
index 6737f161754c..17dc0900fdb3 100644
--- a/nixpkgs/pkgs/development/tools/open-policy-agent/default.nix
+++ b/nixpkgs/pkgs/development/tools/open-policy-agent/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "open-policy-agent";
-  version = "0.30.0";
+  version = "0.30.2";
 
   src = fetchFromGitHub {
     owner = "open-policy-agent";
     repo = "opa";
     rev = "v${version}";
-    sha256 = "sha256-AjNr+t30ftF92+cEfvt8iHBDVD/SO52ojJRLAkYF9l4=";
+    sha256 = "sha256-pyqG8k2jHUhYZ1ftfAjxpJ4H1P1uWfqSdGcyR7pw1rE=";
   };
   vendorSha256 = null;
 
diff --git a/nixpkgs/pkgs/development/tools/packer/default.nix b/nixpkgs/pkgs/development/tools/packer/default.nix
index c4b0546ec368..c48cf727d208 100644
--- a/nixpkgs/pkgs/development/tools/packer/default.nix
+++ b/nixpkgs/pkgs/development/tools/packer/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "packer";
-  version = "1.7.3";
+  version = "1.7.4";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "packer";
     rev = "v${version}";
-    sha256 = "sha256-k5GCUFzjf0mipIQlnf7VCUS2j7cFwoGCeM7T6qgGnJA=";
+    sha256 = "sha256-VNOq9uhtzf1hdEn+bkAOYy4gZxP5ek0WaaS/71uJzrA=";
   };
 
-  vendorSha256 = "sha256-5Wb7WAUGXJ7VMWiQyboH3PXJazsqitD9N0Acd+WItaY=";
+  vendorSha256 = "sha256-WYA/wZJg93+X4IAX9hOMRHVRQRyA4N4aDaScDgkGUIE=";
 
   subPackages = [ "." ];
 
diff --git a/nixpkgs/pkgs/development/tools/pandoc/default.nix b/nixpkgs/pkgs/development/tools/pandoc/default.nix
index 4f65d5fa5db3..7c286218d8e2 100644
--- a/nixpkgs/pkgs/development/tools/pandoc/default.nix
+++ b/nixpkgs/pkgs/development/tools/pandoc/default.nix
@@ -8,6 +8,14 @@ in
     configureFlags = drv.configureFlags or [] ++ ["-fembed_data_files"];
     buildDepends = drv.buildDepends or [] ++ [haskellPackages.file-embed];
     buildTools = (drv.buildTools or []) ++ [ removeReferencesTo ];
+    patches = (drv.patches or []) ++ [
+      # Support citerefentry DocBook element.
+      # https://github.com/jgm/pandoc/pull/7437
+      (fetchpatch {
+        url = "https://github.com/jgm/pandoc/commit/06408d08e5ccf06a6a04c9b77470e6a67d98e52c.patch";
+        sha256 = "gOtrWVylzwgu0YLD4SztqlXxtaXXGOf8nTqLwUBS7qs=";
+      })
+    ];
   })).overrideAttrs (drv: {
 
     # These libraries are still referenced, because they generate
diff --git a/nixpkgs/pkgs/development/tools/parsing/bisonc++/default.nix b/nixpkgs/pkgs/development/tools/parsing/bisonc++/default.nix
index 5710500a18f7..5a38c6679eb2 100644
--- a/nixpkgs/pkgs/development/tools/parsing/bisonc++/default.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/bisonc++/default.nix
@@ -46,7 +46,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    inherit version;
     description = "A parser generator like bison, but it generates C++ code";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ raskin ];
diff --git a/nixpkgs/pkgs/development/tools/parsing/peg/default.nix b/nixpkgs/pkgs/development/tools/parsing/peg/default.nix
index a7ffeb697459..d53eec12e806 100644
--- a/nixpkgs/pkgs/development/tools/parsing/peg/default.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/peg/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "peg-0.1.18";
+  pname = "peg";
+  version = "0.1.18";
 
   src = fetchurl {
-    url = "${meta.homepage}/${name}.tar.gz";
+    url = "${meta.homepage}/${pname}-${version}.tar.gz";
     sha256 = "114h1y4k8fwcq9m0hfk33dsp7ah8zxzjjzlk71x4iirzczfkn690";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammar.nix b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammar.nix
index 93e1cb3804fb..d4782b37b6a3 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammar.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammar.nix
@@ -33,7 +33,8 @@ stdenv.mkDerivation {
   buildInputs = [ tree-sitter ];
 
   dontUnpack = true;
-  configurePhase = ":";
+  dontConfigure = true;
+
   buildPhase = ''
     runHook preBuild
     scanner_cc="$src/src/scanner.cc"
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
index e5eb3029c868..2671e4148b1d 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
@@ -16,6 +16,7 @@
   tree-sitter-jsdoc = (builtins.fromJSON (builtins.readFile ./tree-sitter-jsdoc.json));
   tree-sitter-json = (builtins.fromJSON (builtins.readFile ./tree-sitter-json.json));
   tree-sitter-julia = (builtins.fromJSON (builtins.readFile ./tree-sitter-julia.json));
+  tree-sitter-latex = (builtins.fromJSON (builtins.readFile ./tree-sitter-latex.json));
   tree-sitter-lua = (builtins.fromJSON (builtins.readFile ./tree-sitter-lua.json));
   tree-sitter-markdown = (builtins.fromJSON (builtins.readFile ./tree-sitter-markdown.json));
   tree-sitter-nix = (builtins.fromJSON (builtins.readFile ./tree-sitter-nix.json));
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json
new file mode 100644
index 000000000000..fdc910c4fd5c
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json
@@ -0,0 +1,10 @@
+{
+  "url": "https://github.com/latex-lsp/tree-sitter-latex",
+  "rev": "7f720661de5316c0f8fee956526d4002fa1086d8",
+  "date": "2021-05-11T16:35:53+02:00",
+  "path": "/nix/store/ssqxahrza89qmb97bxas6dvhbqd7w0dr-tree-sitter-latex",
+  "sha256": "14jfmbv3czs643bggcsi3pyxhf81jirpvg8hxcbcdx1f3fzhs16m",
+  "fetchSubmodules": false,
+  "deepClone": false,
+  "leaveDotGit": false
+}
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix
index ad064c556ad7..55237b298d2a 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix
@@ -74,6 +74,10 @@ let
       orga = "cstrahan";
       repo = "tree-sitter-nix";
     };
+    "tree-sitter-latex" = {
+      orga = "latex-lsp";
+      repo = "tree-sitter-latex";
+    };
     "tree-sitter-lua" = {
       orga = "nvim-treesitter";
       repo = "tree-sitter-lua";
diff --git a/nixpkgs/pkgs/development/tools/phantomjs/default.nix b/nixpkgs/pkgs/development/tools/phantomjs/default.nix
index 4cd49b884ce6..5b7e77ee0b5d 100644
--- a/nixpkgs/pkgs/development/tools/phantomjs/default.nix
+++ b/nixpkgs/pkgs/development/tools/phantomjs/default.nix
@@ -5,7 +5,8 @@ let
 in
 
 stdenv.mkDerivation rec {
-  name = "phantomjs-1.9.8";
+  pname = "phantomjs";
+  version = "1.9.8";
 
   # I chose to use the binary build for now.
   # The source version is quite nasty to compile
@@ -14,18 +15,18 @@ stdenv.mkDerivation rec {
 
   src = if stdenv.hostPlatform.system == "i686-linux" then
           fetchurl {
-            url = "https://bitbucket.org/ariya/phantomjs/downloads/${name}-linux-i686.tar.bz2";
+            url = "https://bitbucket.org/ariya/phantomjs/downloads/${pname}-${version}-linux-i686.tar.bz2";
             sha256 = "11fzmssz9pqf3arh4f36w06sl2nyz8l9h8iyxyd7w5aqnq5la0j1";
           }
         else
           if stdenv.hostPlatform.system == "x86_64-linux" then
             fetchurl {
-              url = "https://bitbucket.org/ariya/phantomjs/downloads/${name}-linux-x86_64.tar.bz2";
+              url = "https://bitbucket.org/ariya/phantomjs/downloads/${pname}-${version}-linux-x86_64.tar.bz2";
               sha256 = "0fhnqxxsxhy125fmif1lwgnlhfx908spy7fx9mng4w72320n5nd1";
             }
           else # x86_64-darwin
             fetchurl {
-              url = "https://bitbucket.org/ariya/phantomjs/downloads/${name}-macosx.zip";
+              url = "https://bitbucket.org/ariya/phantomjs/downloads/${pname}-${version}-macosx.zip";
               sha256 = "0j0aq8dgzmb210xdrh0v3d4nblskl3zsckl8bzf1a603wcx085cg";
             };
 
diff --git a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
index 787513855772..58a634ee86c9 100644
--- a/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
+++ b/nixpkgs/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
@@ -499,7 +499,7 @@ self: super:
     old: {
       inherit (pkgs.python3Packages.jira) patches;
       buildInputs = (old.buildInputs or [ ]) ++ [
-        self.pytestrunner
+        self.pytest-runner
         self.cryptography
         self.pyjwt
       ];
@@ -1269,8 +1269,6 @@ self: super:
     }
   );
 
-  pytest-runner = super.pytest-runner or super.pytestrunner;
-
   pytest-pylint = super.pytest-pylint.overridePythonAttrs (
     old: {
       buildInputs = [ self.pytest-runner ];
diff --git a/nixpkgs/pkgs/development/tools/postiats-utilities/default.nix b/nixpkgs/pkgs/development/tools/postiats-utilities/default.nix
index b9ca9ae57814..6d4db28f37e0 100644
--- a/nixpkgs/pkgs/development/tools/postiats-utilities/default.nix
+++ b/nixpkgs/pkgs/development/tools/postiats-utilities/default.nix
@@ -1,10 +1,13 @@
-{ lib, stdenv, fetchurl, python3, python3Packages }:
-
-stdenv.mkDerivation {
-  name = "postiats-utilities-2.0.1";
-  src = fetchurl {
-    url = "https://github.com/Hibou57/PostiATS-Utilities/archive/v2.0.1.tar.gz";
-    sha256 = "12jlzqigmaa9m37x0nq5v3gq8v61m73i5kzdnsm06chf0przpaix";
+{ lib, stdenv, fetchFromGitHub, python3, python3Packages }:
+
+stdenv.mkDerivation rec {
+  pname = "postiats-utilities";
+  version = "2.0.1";
+  src = fetchFromGitHub {
+    owner = "Hibou57";
+    repo = "PostiATS-Utilities";
+    rev = "v${version}";
+    sha256 = "1238zp6sh60rdqbzff0w5c36w2z1jr44qnv43qidmcp19zvr7jd5";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/profiling/malt/default.nix b/nixpkgs/pkgs/development/tools/profiling/malt/default.nix
new file mode 100644
index 000000000000..fa3810cab672
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/profiling/malt/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, lib
+, fetchFromGitHub
+, cmake, nodejs, libelf, libunwind
+}:
+
+stdenv.mkDerivation rec {
+  pname = "malt";
+  version = "1.2.1";
+
+  src = fetchFromGitHub {
+    owner = "memtt";
+    repo = "malt";
+    rev = "v${version}";
+    sha256 = "1yh9gmf7cggf3mx15cwmm99dha34aibkzhnpd0ckl0fkc6w17xqg";
+  };
+
+  postPatch = ''
+    sed -i s,@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@,@CMAKE_INSTALL_LIBDIR@, \
+      src/integration/malt.sh.in
+    sed -i -e 's,^NODE=""$,NODE=${nodejs}/bin/node,' -e s,^detectNodeJS$,, \
+      src/integration/malt-{webview,passwd}.sh.in
+  '';
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ libelf libunwind ];
+
+  meta = with lib; {
+    description = "Memory tool to find where you allocate your memory";
+    homepage = "https://github.com/memtt/malt";
+    license = licenses.cecill-c;
+    maintainers = with maintainers; [ viric ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/profiling/oprofile/default.nix b/nixpkgs/pkgs/development/tools/profiling/oprofile/default.nix
index 6cd3ea800278..08f89d482ddd 100644
--- a/nixpkgs/pkgs/development/tools/profiling/oprofile/default.nix
+++ b/nixpkgs/pkgs/development/tools/profiling/oprofile/default.nix
@@ -8,10 +8,11 @@
 assert withGUI -> qt4 != null;
 
 stdenv.mkDerivation rec {
-  name = "oprofile-1.4.0";
+  pname = "oprofile";
+  version = "1.4.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/oprofile/${name}.tar.gz";
+    url = "mirror://sourceforge/oprofile/${pname}-${version}.tar.gz";
     sha256 = "04m46ni0ryk4sqmzd6mahwzp7iwhwqzfbmfi42fki261sycnz83v";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/pscale/default.nix b/nixpkgs/pkgs/development/tools/pscale/default.nix
index 701c22471ee4..483a85db02a1 100644
--- a/nixpkgs/pkgs/development/tools/pscale/default.nix
+++ b/nixpkgs/pkgs/development/tools/pscale/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "pscale";
-  version = "0.51.0";
+  version = "0.60.0";
 
   src = fetchFromGitHub {
     owner = "planetscale";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-ykHwDVwL30uXeCEP4EcM8TPYqZmCDDAUUpfinpYipHE=";
+    sha256 = "sha256-hrWSieWeVAg28f3Fh9mElr+mDh4v4T5JI1c3+Hrm7c0=";
   };
 
-  vendorSha256 = "sha256-3VP2fluQLZs4nWT3O6NmCFxrqKw0/j3ASNxtbXHlZEA=";
+  vendorSha256 = "sha256-h4YUQWmFYouEvHup8Pu6OqfHf1EoPszVFzklU9SbJZQ=";
 
   meta = with lib; {
     homepage = "https://www.planetscale.com/";
diff --git a/nixpkgs/pkgs/development/tools/pydb/default.nix b/nixpkgs/pkgs/development/tools/pydb/default.nix
index eaaa057dc0a2..5380bb686085 100644
--- a/nixpkgs/pkgs/development/tools/pydb/default.nix
+++ b/nixpkgs/pkgs/development/tools/pydb/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, python2, emacs }:
 
-stdenv.mkDerivation {
-  name = "pydb-1.26";
+stdenv.mkDerivation rec {
+  pname = "pydb";
+  version = "1.26";
 
   src = fetchurl {
-    url =  "mirror://sourceforge/sourceforge/bashdb/pydb-1.26.tar.bz2";
+    url =  "mirror://sourceforge/sourceforge/bashdb/${pname}-${version}.tar.bz2";
     sha256 = "1wlkz1hd5d4gkzhkjkzcm650c1lchj28hj36jx96mklglm41h4q1";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/quilt/default.nix b/nixpkgs/pkgs/development/tools/quilt/default.nix
index 94b5e5a6dcc2..8dafe88005de 100644
--- a/nixpkgs/pkgs/development/tools/quilt/default.nix
+++ b/nixpkgs/pkgs/development/tools/quilt/default.nix
@@ -2,10 +2,11 @@
 
 stdenv.mkDerivation rec {
 
-  name = "quilt-0.66";
+  pname = "quilt";
+  version = "0.66";
 
   src = fetchurl {
-    url = "mirror://savannah/quilt/${name}.tar.gz";
+    url = "mirror://savannah/${pname}/${pname}-${version}.tar.gz";
     sha256 = "01vfvk4pqigahx82fhaaffg921ivd3k7rylz1yfvy4zbdyd32jri";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/rq/default.nix b/nixpkgs/pkgs/development/tools/rq/default.nix
index 7d222e03bc97..68669e88516b 100644
--- a/nixpkgs/pkgs/development/tools/rq/default.nix
+++ b/nixpkgs/pkgs/development/tools/rq/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, rustPlatform, libiconv, llvmPackages, v8 }:
+{ stdenv, lib, fetchFromGitHub, rustPlatform }:
 
 rustPlatform.buildRustPackage rec {
   pname = "rq";
@@ -13,9 +13,6 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "0071q08f75qrxdkbx1b9phqpbj15r79jbh391y32acifi7hr35hj";
 
-  buildInputs = [ llvmPackages.libclang v8 ]
-  ++ lib.optionals stdenv.isDarwin [ libiconv ];
-
   postPatch = ''
     # Remove #[deny(warnings)] which is equivalent to -Werror in C.
     # Prevents build failures when upgrading rustc, which may give more warnings.
@@ -23,11 +20,6 @@ rustPlatform.buildRustPackage rec {
       --replace "#![deny(warnings)]" ""
   '';
 
-  configurePhase = ''
-    export LIBCLANG_PATH="${llvmPackages.libclang.lib}/lib"
-    export V8_SOURCE="${v8}"
-  '';
-
   meta = with lib; {
     description = "A tool for doing record analysis and transformation";
     homepage = "https://github.com/dflemstr/rq";
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-make/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-make/default.nix
index d5fd7ee4a839..01173474db6f 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-make/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-make/default.nix
@@ -13,11 +13,11 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-make";
-  version = "0.34.0";
+  version = "0.35.0";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-/9v9nedLoXwuFuqw3W4RjTwvNIlisbiPCcVF/0oH4fw=";
+    sha256 = "sha256-pC3iX5jAPBArxs+YECDyUW5+MP+/f2HMLZNjo+BoKOE=";
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -25,7 +25,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ]
     ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration libiconv ];
 
-  cargoSha256 = "sha256-clav4lGDuWvwzq78Kw+vtz+boNcZnNH+NHH7ZaZYSC4=";
+  cargoSha256 = "sha256-Zp2LoeCnpYupi/QY3Ft1VQ+O/y3I96UaouEFs9QpbLg=";
 
   # Some tests fail because they need network access.
   # However, Travis ensures a proper build.
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-watch/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-watch/default.nix
index 017fb7d484d4..c7cdf92dcd83 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-watch/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-watch/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-watch";
-  version = "7.8.0";
+  version = "7.8.1";
 
   src = fetchFromGitHub {
     owner = "passcod";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ZbVBwSg3roIMA+5LVP3omtTgbAJ7HAdJDXyAybWuRLw=";
+    sha256 = "sha256-g6k/7jo8pvTn5snU05uSGzprNMt8/x+bJsLb/y0jHRg=";
   };
 
-  cargoSha256 = "sha256-6aoi/CLla/yKa5RuVgn8RJ9AK1j1wtZeBn+6tpXrJvA=";
+  cargoSha256 = "sha256-pfjWTkDw4D7eMADkPX01vapka8I6o0ZvkNjQt5X2pUk=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices libiconv ];
 
diff --git a/nixpkgs/pkgs/development/tools/rust/racer/default.nix b/nixpkgs/pkgs/development/tools/rust/racer/default.nix
index c4d0d605cf65..cb9081f49e21 100644
--- a/nixpkgs/pkgs/development/tools/rust/racer/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/racer/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "racer";
-  version = "2.1.44";
+  version = "2.1.46";
 
   src = fetchFromGitHub {
     owner = "racer-rust";
     repo = "racer";
     rev = "v${version}";
-    sha256 = "sha256-EmxJg2QDpGZ5TbMy9y6P11LdMucBdvewkRewuUzccGM=";
+    sha256 = "sha256-7h1w5Yyt5VN6+pYuTTbdM1Nrd8aDEhPLusxuIsdS+mQ=";
   };
 
-  cargoSha256 = "sha256-kKQnpEashpIwrXubuZIpU+tzxFaUjr6jaVunYPqaHnM=";
+  cargoSha256 = "sha256-fllhB+so6H36b+joW0l+NBtz3PefOKdj6C8qKQPuJpk=";
 
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = lib.optional stdenv.isDarwin Security;
diff --git a/nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix b/nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix
index a6381576ead0..7daeaac14b1f 100644
--- a/nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix
@@ -7,14 +7,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rust-analyzer-unwrapped";
-  version = "2021-07-05";
-  cargoSha256 = "sha256-HmvvDHi33JAYXON98mbb+MfmJizOL4cdTbc3QDtPkZo=";
+  version = "2021-07-12";
+  cargoSha256 = "sha256-wlo3GlB9OhyVXys5pHAqWPKHWZHzNjcQ0hiaYnp2SUc=";
 
   src = fetchFromGitHub {
     owner = "rust-analyzer";
     repo = "rust-analyzer";
     rev = version;
-    sha256 = "sha256-7pH38U+HMNPuO1BFP5kPTJoxGWTewRUoLrc9NXDdK2M=";
+    sha256 = "sha256-nd8valnltycywxBObSVFbt4fySEYQknFsFf5ZnEbgOk=";
   };
 
   buildAndTestSubdir = "crates/rust-analyzer";
diff --git a/nixpkgs/pkgs/development/tools/shellcheck/default.nix b/nixpkgs/pkgs/development/tools/shellcheck/default.nix
index 568b9e1e1ddd..284ce6d817a9 100644
--- a/nixpkgs/pkgs/development/tools/shellcheck/default.nix
+++ b/nixpkgs/pkgs/development/tools/shellcheck/default.nix
@@ -27,8 +27,6 @@ let
 
     outputs = [ "bin" "man" "doc" "out" ];
 
-    phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];
-
     buildPhase = ''
       pandoc -s -f markdown-smart -t man shellcheck.1.md -o shellcheck.1
     '';
diff --git a/nixpkgs/pkgs/development/tools/sigrok-cli/default.nix b/nixpkgs/pkgs/development/tools/sigrok-cli/default.nix
index b4173c7aebb0..7935d10effcb 100644
--- a/nixpkgs/pkgs/development/tools/sigrok-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/sigrok-cli/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, glib, libsigrok, libsigrokdecode }:
 
 stdenv.mkDerivation rec {
-  name = "sigrok-cli-0.7.1";
+  pname = "sigrok-cli";
+  version = "0.7.1";
 
   src = fetchurl {
-    url = "https://sigrok.org/download/source/sigrok-cli/${name}.tar.gz";
+    url = "https://sigrok.org/download/source/${pname}/${pname}-${version}.tar.gz";
     sha256 = "15vpn1psriadcbl6v9swwgws7dva85ld03yv6g1mgm27kx11697m";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/sourcetrail/jedi.nix b/nixpkgs/pkgs/development/tools/sourcetrail/jedi.nix
index 2e1ca55dad3f..93650c9027a4 100644
--- a/nixpkgs/pkgs/development/tools/sourcetrail/jedi.nix
+++ b/nixpkgs/pkgs/development/tools/sourcetrail/jedi.nix
@@ -1,6 +1,6 @@
 # Taken from a past commit of nixpkgs
 
-{ lib, buildPythonPackage, fetchPypi, pytest, glibcLocales, tox, pytestcov, parso }:
+{ lib, buildPythonPackage, fetchPypi, pytest, glibcLocales, tox, pytest-cov, parso }:
 
 buildPythonPackage rec {
   pname = "jedi";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     sha256 = "86ed7d9b750603e4ba582ea8edc678657fb4007894a12bcf6f4bb97892f31d20";
   };
 
-  checkInputs = [ pytest glibcLocales tox pytestcov ];
+  checkInputs = [ pytest glibcLocales tox pytest-cov ];
 
   propagatedBuildInputs = [ parso ];
 
diff --git a/nixpkgs/pkgs/development/tools/spirv-tools/default.nix b/nixpkgs/pkgs/development/tools/spirv-tools/default.nix
index 57f04b00c0d2..2cf3a2c801b1 100644
--- a/nixpkgs/pkgs/development/tools/spirv-tools/default.nix
+++ b/nixpkgs/pkgs/development/tools/spirv-tools/default.nix
@@ -1,12 +1,9 @@
 { lib, stdenv, fetchFromGitHub, cmake, python3, spirv-headers }:
-let
-  # Update spirv-headers rev in lockstep according to DEPs file
-  version = "2020.2";
-in
 
 stdenv.mkDerivation rec {
   pname = "spirv-tools";
-  inherit version;
+  # Update spirv-headers rev in lockstep according to DEPs file
+  version = "2020.2";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
diff --git a/nixpkgs/pkgs/development/tools/sslmate/default.nix b/nixpkgs/pkgs/development/tools/sslmate/default.nix
index ef04725e562f..ede6364fa067 100644
--- a/nixpkgs/pkgs/development/tools/sslmate/default.nix
+++ b/nixpkgs/pkgs/development/tools/sslmate/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, perlPackages, makeWrapper, openssl }:
 
 stdenv.mkDerivation rec {
-  name = "sslmate-1.7.1";
+  pname = "sslmate";
+  version = "1.7.1";
 
   src = fetchurl {
-    url = "https://packages.sslmate.com/other/${name}.tar.gz";
+    url = "https://packages.sslmate.com/other/${pname}-${version}.tar.gz";
     sha256 = "1i56za41cfqlml9g787xqqs0r8jifd3y7ks9nf4k2dhhi4rijkj5";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/stylua/default.nix b/nixpkgs/pkgs/development/tools/stylua/default.nix
index 7394b402cfe3..86ab951bb9d9 100644
--- a/nixpkgs/pkgs/development/tools/stylua/default.nix
+++ b/nixpkgs/pkgs/development/tools/stylua/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "stylua";
-  version = "0.9.3";
+  version = "0.10.0";
 
   src = fetchFromGitHub {
     owner = "johnnymorganz";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1xpl3nxiln6hxxjd9nx99h4qijjym3afxm5nalw40p152h8zgig4";
+    sha256 = "03w976fghqs2kswab5bridpr2p6hgldjyfd3l4kz0p5h98f3wzvf";
   };
 
-  cargoSha256 = "012zv1myackwk0x73l6ri7zzrzwdkd970hh4p30b590bmsam6sb9";
+  cargoSha256 = "1311ly02r6c2rqx0ssd6hpbw3sp0ffrf37bzdm66chxnh8cr83sj";
 
   cargoBuildFlags = lib.optionals lua52Support [ "--features" "lua52" ]
     ++ lib.optionals luauSupport [ "--features" "luau" ];
diff --git a/nixpkgs/pkgs/development/tools/sunxi-tools/default.nix b/nixpkgs/pkgs/development/tools/sunxi-tools/default.nix
index ae9c7c833928..422969d2c66c 100644
--- a/nixpkgs/pkgs/development/tools/sunxi-tools/default.nix
+++ b/nixpkgs/pkgs/development/tools/sunxi-tools/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub, pkg-config, libusb1, zlib }:
 
-stdenv.mkDerivation {
-  name = "sunxi-tools-20181113";
+stdenv.mkDerivation rec {
+  pname = "sunxi-tools";
+  version = "unstable-2018-11-13";
 
   src = fetchFromGitHub {
     owner = "linux-sunxi";
diff --git a/nixpkgs/pkgs/development/tools/tabnine/default.nix b/nixpkgs/pkgs/development/tools/tabnine/default.nix
index 0f596a0327d6..5499a937b289 100644
--- a/nixpkgs/pkgs/development/tools/tabnine/default.nix
+++ b/nixpkgs/pkgs/development/tools/tabnine/default.nix
@@ -1,19 +1,19 @@
 { stdenv, lib, fetchurl, unzip }:
 
 let
-  version = "3.3.115";
+  version = "3.5.15";
   src =
     if stdenv.hostPlatform.system == "x86_64-darwin" then
       fetchurl
         {
           url = "https://update.tabnine.com/bundles/${version}/x86_64-apple-darwin/TabNine.zip";
-          sha256 = "104h3b9cvmz2m27a94cfc00xm8wa2p1pvrfs92hrz59hcs8vdldf";
+          sha256 = "sha256-JrDAF/3yPGJXwonWIvaKf0dw4GQf3U2wbf5iF4QUXco=";
         }
     else if stdenv.hostPlatform.system == "x86_64-linux" then
       fetchurl
         {
           url = "https://update.tabnine.com/bundles/${version}/x86_64-unknown-linux-musl/TabNine.zip";
-          sha256 = "0rs2vmdz8c9zs53pjbzy27ir0p5v752cpsnqfaqf0ilx7k6fpnnm";
+          sha256 = "sha256-fgVVJ+J4w+Z3Kmryixp844xlLFiRs5PSAcD/wrcXF1w=";
         }
     else throw "Not supported on ${stdenv.hostPlatform.system}";
 in
@@ -31,10 +31,12 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ unzip ];
 
   installPhase = ''
+    runHook preInstall
     install -Dm755 TabNine $out/bin/TabNine
     install -Dm755 TabNine-deep-cloud $out/bin/TabNine-deep-cloud
     install -Dm755 TabNine-deep-local $out/bin/TabNine-deep-local
     install -Dm755 WD-TabNine $out/bin/WD-TabNine
+    runHook postInstall
   '';
 
   meta = with lib; {
@@ -42,5 +44,6 @@ stdenv.mkDerivation rec {
     description = "Smart Compose for code that uses deep learning to help you write code faster";
     license = licenses.unfree;
     platforms = [ "x86_64-darwin" "x86_64-linux" ];
+    maintainers = with maintainers; [ lovesegfault ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/tradcpp/default.nix b/nixpkgs/pkgs/development/tools/tradcpp/default.nix
index dc7156febe98..c184cee91ca5 100644
--- a/nixpkgs/pkgs/development/tools/tradcpp/default.nix
+++ b/nixpkgs/pkgs/development/tools/tradcpp/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, autoconf }:
 
-stdenv.mkDerivation {
-  name = "tradcpp-0.5.2";
+stdenv.mkDerivation rec {
+  pname = "tradcpp";
+  version = "0.5.2";
 
   src = fetchurl {
-    url = "https://ftp.netbsd.org/pub/NetBSD/misc/dholland/tradcpp-0.5.2.tar.gz";
+    url = "https://ftp.netbsd.org/pub/NetBSD/misc/dholland/${pname}-${version}.tar.gz";
     sha256 = "1h2bwxwc13rz3g2236l89hm47f72hn3m4h7wjir3j532kq0m68bc";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/unityhub/default.nix b/nixpkgs/pkgs/development/tools/unityhub/default.nix
index 19cd15e7be41..27453ed5988a 100644
--- a/nixpkgs/pkgs/development/tools/unityhub/default.nix
+++ b/nixpkgs/pkgs/development/tools/unityhub/default.nix
@@ -5,7 +5,7 @@ let
 in appimageTools.wrapType2 rec {
   name = "unityhub";
 
-  extraPkgs = (pkgs: with pkgs; with xorg; [ gtk2 gdk_pixbuf glib libGL libGLU nss nspr
+  extraPkgs = (pkgs: with pkgs; with xorg; [ gtk2 gdk-pixbuf glib libGL libGLU nss nspr
     alsa-lib cups gnome2.GConf libcap fontconfig freetype pango
     cairo dbus dbus-glib libdbusmenu libdbusmenu-gtk2 expat zlib libpng12 udev tbb
     libpqxx gtk3 libsecret lsb-release openssl nodejs ncurses5
diff --git a/nixpkgs/pkgs/development/tools/vagrant/default.nix b/nixpkgs/pkgs/development/tools/vagrant/default.nix
index db807bda0a7d..688fd6eb849e 100644
--- a/nixpkgs/pkgs/development/tools/vagrant/default.nix
+++ b/nixpkgs/pkgs/development/tools/vagrant/default.nix
@@ -5,9 +5,9 @@
 let
   # NOTE: bumping the version and updating the hash is insufficient;
   # you must use bundix to generate a new gemset.nix in the Vagrant source.
-  version = "2.2.16";
+  version = "2.2.17";
   url = "https://github.com/hashicorp/vagrant/archive/v${version}.tar.gz";
-  sha256 = "sha256-qzxguxKy2pFv0HMZKEnytdPyJPlf6/NTghIkfEzeKNY=";
+  sha256 = "sha256-T48ui7jgq9ni3pC09Jd2WzkT9PBaJ+SUDfcXA5QMjM8=";
 
   deps = bundlerEnv rec {
     name = "${pname}-${version}";
diff --git a/nixpkgs/pkgs/development/tools/vagrant/gemset.nix b/nixpkgs/pkgs/development/tools/vagrant/gemset.nix
index 27ebf31c32cb..332fb265f878 100644
--- a/nixpkgs/pkgs/development/tools/vagrant/gemset.nix
+++ b/nixpkgs/pkgs/development/tools/vagrant/gemset.nix
@@ -24,20 +24,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08hd3d2lfi19cns4d6wkq51scasn17l83fgbzbjjk3dqccz4rg3j";
+      sha256 = "1lvcp8bsd35g57f7wz4jigcw2sryzzwrpcgjwwf3chmjrjcww5in";
       type = "gem";
     };
-    version = "4.0.0";
+    version = "4.1.0";
   };
   concurrent-ruby = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0mr23wq0szj52xnj0zcn1k0c7j4v79wlwbijkpfcscqww3l6jlg3";
+      sha256 = "0nwad3211p7yv9sda31jmbyw6sdafzmdi2i2niaz6f0wk5nq9h0f";
       type = "gem";
     };
-    version = "1.1.8";
+    version = "1.1.9";
   };
   ed25519 = {
     groups = ["default"];
@@ -64,20 +64,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "19g5nvkycnkzqq4mqn1zjznq9adrlv2jz0dr9w10cbn42hhqpiz7";
+      sha256 = "186sra2bww83wa245mhmm57ngdn4w2k2x39iqkmxasjhibg5jsbl";
       type = "gem";
     };
-    version = "0.81.0";
+    version = "0.84.0";
   };
   ffi = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0nq1fb3vbfylccwba64zblxy96qznxbys5900wd7gm9bpplmf432";
+      sha256 = "1wgvaclp4h9y8zkrgz8p2hqkrgr4j7kz0366mik0970w532cbmcq";
       type = "gem";
     };
-    version = "1.15.0";
+    version = "1.15.3";
   };
   gssapi = {
     dependencies = ["ffi"];
@@ -190,10 +190,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1phcq7z0zpipwd7y4fbqmlaqghv07fjjgrx99mwq3z3n0yvy7fmi";
+      sha256 = "0dlxwc75iy0dj23x824cxpvpa7c8aqcpskksrmb32j6m66h5mkcy";
       type = "gem";
     };
-    version = "3.2021.0225";
+    version = "3.2021.0704";
   };
   multi_json = {
     groups = ["default"];
@@ -211,10 +211,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0b0jqrcsp4bbi4n4mzyf70cp2ysyp6x07j8k8cqgxnvb4i3a134j";
+      sha256 = "0b4h3ip8d1gkrc0znnw54hbxillk73mdnaf5pz330lmrcl1wiilg";
       type = "gem";
     };
-    version = "1.2.1";
+    version = "3.0.0";
   };
   net-sftp = {
     dependencies = ["net-ssh"];
@@ -252,10 +252,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1k9bsj7ni0g2fd7scyyy1sk9dy2pg9akniahab0iznvjmhn54h87";
+      sha256 = "1qsx9c4jr11vr3a9s5j83avczx9qn9rjaf32gxpc2v451hvbc0is";
       type = "gem";
     };
-    version = "0.10.4";
+    version = "0.11.0";
   };
   rb-inotify = {
     dependencies = ["ffi"];
@@ -279,6 +279,16 @@
     };
     version = "0.2.6";
   };
+  rexml = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53";
+      type = "gem";
+    };
+    version = "3.2.5";
+  };
   rubyntlm = {
     groups = ["default"];
     platforms = [];
@@ -294,10 +304,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0590m2pr9i209pp5z4mx0nb1961ishdiqb28995hw1nln1d1b5ji";
+      sha256 = "0grps9197qyxakbpw02pda59v45lfgbgiyw48i0mq9f2bn9y6mrz";
       type = "gem";
     };
-    version = "2.3.0";
+    version = "2.3.2";
   };
   vagrant_cloud = {
     dependencies = ["excon" "log4r"];
diff --git a/nixpkgs/pkgs/development/tools/vim-vint/default.nix b/nixpkgs/pkgs/development/tools/vim-vint/default.nix
index fcab1f952f2b..a6d28b36bffd 100644
--- a/nixpkgs/pkgs/development/tools/vim-vint/default.nix
+++ b/nixpkgs/pkgs/development/tools/vim-vint/default.nix
@@ -14,7 +14,7 @@ buildPythonApplication rec {
   # For python 3.5 > version > 2.7 , a nested dependency (pythonPackages.hypothesis) fails.
   disabled = ! pythonAtLeast "3.5";
 
-  checkInputs = [ pytest pytestcov ];
+  checkInputs = [ pytest pytest-cov ];
   propagatedBuildInputs = [ ansicolor chardet pyyaml setuptools ];
 
   # Unpin test dependency versions. This is fixed in master but not yet released.
diff --git a/nixpkgs/pkgs/development/tools/vndr/default.nix b/nixpkgs/pkgs/development/tools/vndr/default.nix
index 82f0018ce699..d4e665adc414 100644
--- a/nixpkgs/pkgs/development/tools/vndr/default.nix
+++ b/nixpkgs/pkgs/development/tools/vndr/default.nix
@@ -2,8 +2,8 @@
 
 buildGoPackage rec {
   pname = "vndr-unstable";
-  version = "2018-06-23";
-  rev = "81cb8916aad3c8d06193f008dba3e16f82851f52";
+  version = "2020-07-28";
+  rev = "f12b881cb8f081a5058408a58f429b9014833fc6";
 
   goPackagePath = "github.com/LK4D4/vndr";
   excludedPackages = "test";
@@ -12,13 +12,13 @@ buildGoPackage rec {
     inherit rev;
     owner = "LK4D4";
     repo = "vndr";
-    sha256 = "0c0k0cic35d1141az72gbf8r0vm9zaq4xi8v1sqpxhlzf28m297l";
+    sha256 = "04za4x8p8qzwjlp4i0j0gsb4xx0x9f4yp3ab0b97r50pah1ac2g3";
   };
 
   meta = {
     description = "Stupid golang vendoring tool, inspired by docker vendor script";
     homepage = "https://github.com/LK4D4/vndr";
-    maintainers = with lib.maintainers; [ vdemeester ];
+    maintainers = with lib.maintainers; [ vdemeester rvolosatovs ];
     license = lib.licenses.asl20;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/wiggle/default.nix b/nixpkgs/pkgs/development/tools/wiggle/default.nix
index 6d1622c5b864..2da789fdc603 100644
--- a/nixpkgs/pkgs/development/tools/wiggle/default.nix
+++ b/nixpkgs/pkgs/development/tools/wiggle/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub, ncurses, groff }:
 
 stdenv.mkDerivation rec {
-  name = "wiggle";
+  pname = "wiggle";
   version = "1.3";
 
   src = fetchFromGitHub {
     owner = "neilbrown";
     repo = "wiggle";
     rev = "v${version}";
-    sha256 = "sha256-rlHhYzP81lfblZvtZ1lhiq4iQ6WRpBYukoGqpVP+NKI=";
+    sha256 = "18ilzr9sbal1j8p1d94ilm1j5blac5cngvcvjpdmgmpw6diy2ldf";
   };
 
   buildInputs = [ ncurses groff ];
diff --git a/nixpkgs/pkgs/development/tools/winpdb/default.nix b/nixpkgs/pkgs/development/tools/winpdb/default.nix
index b5e0701c136e..352dc83f9abd 100644
--- a/nixpkgs/pkgs/development/tools/winpdb/default.nix
+++ b/nixpkgs/pkgs/development/tools/winpdb/default.nix
@@ -1,11 +1,12 @@
 { lib, fetchurl, pythonPackages, makeDesktopItem }:
 
 pythonPackages.buildPythonApplication rec {
-  name = "winpdb-1.4.8";
+  pname = "winpdb";
+  version = "1.4.8";
   namePrefix = "";
 
   src = fetchurl {
-    url = "https://winpdb.googlecode.com/files/${name}.tar.gz";
+    url = "https://winpdb.googlecode.com/files/${pname}-${version}.tar.gz";
     sha256 = "0vkpd24r40j928vc04c721innv0168sbllg97v4zw10adm24d8fs";
   };
 
diff --git a/nixpkgs/pkgs/development/tools/xib2nib/default.nix b/nixpkgs/pkgs/development/tools/xib2nib/default.nix
index 67900dda1406..b579e3674334 100644
--- a/nixpkgs/pkgs/development/tools/xib2nib/default.nix
+++ b/nixpkgs/pkgs/development/tools/xib2nib/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub, pugixml, boost, PlistCpp }:
 
 stdenv.mkDerivation {
-  name = "xib2nib-730e177";
+  pname = "xib2nib";
+  version = "unstable-2017-04-12";
 
   src = fetchFromGitHub {
     owner = "matthewbauer";
diff --git a/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/README.md b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/README.md
new file mode 100644
index 000000000000..d5a6460ed9f7
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/README.md
@@ -0,0 +1,24 @@
+
+# `cypress-example-kitchensink`
+
+This directory 'packages' [cypress-example-kitchensink](https://github.com/cypress-io/cypress-example-kitchensink),
+which is used in `cypress.passthru.tests`.
+
+The app is not really intended for deployment, so I didn't bother with actual packaging, just testing.
+If your real-world app looks like `cypress-example-kitchensink`, you'll want to use Nix multiple outputs so you don't deploy your test videos along with your app.
+Alternatively, you can set it up so that one derivation builds your server exe and another derivation takes that server exe and runs it with the cypress e2e tests.
+
+## Peculiarities
+
+**cypress and Cypress** are distinct names.
+  - `cypress` is the npm module, containing the executable `cypress`
+  - whereas the executable `Cypress` comes from `pkgs.cypress`, a binary distribution (as of writing) by cypress.io.
+
+**updateScript** is not provided for this example project. This seems preferable,
+  because updates to it aren't particularly valuable and have a significant overhead.
+  The goal is to smoke test `cypress`; not run the latest test suite (which it isn't anyway).
+
+## Updating
+
+ - update the hash in `src.nix`
+ - run `regen-nix`
diff --git a/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/cypress-example-kitchensink.nix b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/cypress-example-kitchensink.nix
new file mode 100644
index 000000000000..653dbe4a257a
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/cypress-example-kitchensink.nix
@@ -0,0 +1,17 @@
+# This file has been generated by node2nix 1.9.0. Do not edit!
+
+{pkgs ? import <nixpkgs> {
+    inherit system;
+  }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-12_x"}:
+
+let
+  nodeEnv = import ./node-env.nix {
+    inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
+    inherit pkgs nodejs;
+    libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
+  };
+in
+import ./node-packages.nix {
+  inherit (pkgs) fetchurl nix-gitignore stdenv lib fetchgit callPackage;
+  inherit nodeEnv;
+}
diff --git a/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/default.nix b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/default.nix
new file mode 100644
index 000000000000..86fec8950002
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/default.nix
@@ -0,0 +1,59 @@
+{ callPackage
+, cypress
+, nodejs-12_x
+, # FIXME: duplicated from ./regen-nix. node2nix should expose this
+  nodePackages
+, xorg
+, pkgs
+, stdenv
+,
+}:
+
+let
+  fromNode2nix = import ./cypress-example-kitchensink.nix {
+    inherit pkgs;
+  };
+
+  nodeDependencies = fromNode2nix.shell.nodeDependencies.overrideAttrs (o: {
+    CYPRESS_INSTALL_BINARY = "0";
+    PUPPETEER_SKIP_DOWNLOAD = "1";
+  });
+
+  fontConfigEtc = (
+    pkgs.nixos { config.fonts.fontconfig.enable = true; }
+  ).config.environment.etc.fonts.source;
+
+in
+stdenv.mkDerivation {
+  name = "cypress-example-kitchensink";
+  src = callPackage ./src.nix { };
+  passthru.fc = fontConfigEtc;
+  nativeBuildInputs = [
+    cypress
+    nodejs-12_x
+    xorg.xorgserver
+    nodePackages.jsonplaceholder
+  ];
+  FONTCONFIG_PATH = fontConfigEtc;
+  postPatch = ''
+    # Use our own offline backend. 15011 means js0n ;)
+    sed -e 's^https://jsonplaceholder.cypress.io^http://localhost:15011^g' -i $(find . -type f)
+  '';
+  buildPhase = ''
+    ln -s ${nodeDependencies}/lib/node_modules ./node_modules
+    PATH="${nodeDependencies}/bin:$PATH"
+    runHook preBuild
+    PORT=15011 jsonplaceholder &
+    # assumption: jsonplaceholder start far quicker than cypress run
+
+    export CYPRESS_RUN_BINARY=${cypress}/bin/Cypress
+    export HOME=$PWD/home
+    mkdir $HOME
+    npm run test
+    runHook postBuild
+  '';
+  installPhase = ''
+    mkdir $out
+    cp -r cypress/videos $out/
+  '';
+}
diff --git a/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/node-env.nix b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/node-env.nix
new file mode 100644
index 000000000000..c2b723195b77
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/node-env.nix
@@ -0,0 +1,567 @@
+# This file originates from node2nix
+
+{lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile}:
+
+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
+  tarWrapper = runCommand "tarWrapper" {} ''
+    mkdir -p $out/bin
+
+    cat > $out/bin/tar <<EOF
+    #! ${stdenv.shell} -e
+    $(type -p tar) "\$@" --warning=no-unknown-keyword --delay-directory-restore
+    EOF
+
+    chmod +x $out/bin/tar
+  '';
+
+  # Function that generates a TGZ file from a NPM project
+  buildNodeSourceDist =
+    { name, version, src, ... }:
+
+    stdenv.mkDerivation {
+      name = "node-tarball-${name}-${version}";
+      inherit src;
+      buildInputs = [ nodejs ];
+      buildPhase = ''
+        export HOME=$TMPDIR
+        tgzFile=$(npm pack | tail -n 1) # Hooks to the pack command will add output (https://docs.npmjs.com/misc/scripts)
+      '';
+      installPhase = ''
+        mkdir -p $out/tarballs
+        mv $tgzFile $out/tarballs
+        mkdir -p $out/nix-support
+        echo "file source-dist $out/tarballs/$tgzFile" >> $out/nix-support/hydra-build-products
+      '';
+    };
+
+  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
+
+          cd ..
+        ''
+      ) dependencies);
+
+  # Recursively composes the dependencies of a package
+  composePackage = { name, packageName, src, dependencies ? [], ... }@args:
+    builtins.addErrorContext "while evaluating node package '${packageName}'" ''
+      DIR=$(pwd)
+      cd $TMPDIR
+
+      unpackFile ${src}
+
+      # Make the base dir in which the target dependency resides first
+      mkdir -p "$(dirname "$DIR/${packageName}")"
+
+      if [ -f "${src}" ]
+      then
+          # Figure out what directory has been unpacked
+          packageDir="$(find . -maxdepth 1 -type d | tail -1)"
+
+          # Restore write permissions to make building work
+          find "$packageDir" -type d -exec chmod u+x {} \;
+          chmod -R u+w "$packageDir"
+
+          # Move the extracted tarball into the output folder
+          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})"
+          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}"
+      fi
+
+      # Unset the stripped name to not confuse the next unpack step
+      unset strippedName
+
+      # Include the dependencies of the package
+      cd "$DIR/${packageName}"
+      ${includeDependencies { inherit dependencies; }}
+      cd ..
+      ${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
+    '';
+
+  pinpointDependencies = {dependencies, production}:
+    let
+      pinpointDependenciesFromPackageJSON = writeTextFile {
+        name = "pinpointDependencies.js";
+        text = ''
+          var fs = require('fs');
+          var path = require('path');
+
+          function resolveDependencyVersion(location, name) {
+              if(location == process.env['NIX_STORE']) {
+                  return null;
+              } else {
+                  var dependencyPackageJSON = path.join(location, "node_modules", name, "package.json");
+
+                  if(fs.existsSync(dependencyPackageJSON)) {
+                      var dependencyPackageObj = JSON.parse(fs.readFileSync(dependencyPackageJSON));
+
+                      if(dependencyPackageObj.name == name) {
+                          return dependencyPackageObj.version;
+                      }
+                  } else {
+                      return resolveDependencyVersion(path.resolve(location, ".."), name);
+                  }
+              }
+          }
+
+          function replaceDependencies(dependencies) {
+              if(typeof dependencies == "object" && dependencies !== null) {
+                  for(var dependency in dependencies) {
+                      var resolvedVersion = resolveDependencyVersion(process.cwd(), dependency);
+
+                      if(resolvedVersion === null) {
+                          process.stderr.write("WARNING: cannot pinpoint dependency: "+dependency+", context: "+process.cwd()+"\n");
+                      } else {
+                          dependencies[dependency] = resolvedVersion;
+                      }
+                  }
+              }
+          }
+
+          /* Read the package.json configuration */
+          var packageObj = JSON.parse(fs.readFileSync('./package.json'));
+
+          /* Pinpoint all dependencies */
+          replaceDependencies(packageObj.dependencies);
+          if(process.argv[2] == "development") {
+              replaceDependencies(packageObj.devDependencies);
+          }
+          replaceDependencies(packageObj.optionalDependencies);
+
+          /* Write the fixed package.json file */
+          fs.writeFileSync("package.json", JSON.stringify(packageObj, null, 2));
+        '';
+      };
+    in
+    ''
+      node ${pinpointDependenciesFromPackageJSON} ${if production then "production" else "development"}
+
+      ${lib.optionalString (dependencies != [])
+        ''
+          if [ -d node_modules ]
+          then
+              cd node_modules
+              ${lib.concatMapStrings (dependency: pinpointDependenciesOfPackage dependency) dependencies}
+              cd ..
+          fi
+        ''}
+    '';
+
+  # Recursively traverses all dependencies of a package and pinpoints all
+  # dependencies in the package.json file to the versions that are actually
+  # being used.
+
+  pinpointDependenciesOfPackage = { packageName, dependencies ? [], production ? true, ... }@args:
+    ''
+      if [ -d "${packageName}" ]
+      then
+          cd "${packageName}"
+          ${pinpointDependencies { inherit dependencies production; }}
+          cd ..
+          ${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
+      fi
+    '';
+
+  # Extract the Node.js source code which is used to compile packages with
+  # native bindings
+  nodeSources = runCommand "node-sources" {} ''
+    tar --no-same-owner --no-same-permissions -xf ${nodejs.src}
+    mv node-* $out
+  '';
+
+  # Script that adds _integrity fields to all package.json files to prevent NPM from consulting the cache (that is empty)
+  addIntegrityFieldsScript = writeTextFile {
+    name = "addintegrityfields.js";
+    text = ''
+      var fs = require('fs');
+      var path = require('path');
+
+      function augmentDependencies(baseDir, dependencies) {
+          for(var dependencyName in dependencies) {
+              var dependency = dependencies[dependencyName];
+
+              // Open package.json and augment metadata fields
+              var packageJSONDir = path.join(baseDir, "node_modules", dependencyName);
+              var packageJSONPath = path.join(packageJSONDir, "package.json");
+
+              if(fs.existsSync(packageJSONPath)) { // Only augment packages that exist. Sometimes we may have production installs in which development dependencies can be ignored
+                  console.log("Adding metadata fields to: "+packageJSONPath);
+                  var packageObj = JSON.parse(fs.readFileSync(packageJSONPath));
+
+                  if(dependency.integrity) {
+                      packageObj["_integrity"] = dependency.integrity;
+                  } else {
+                      packageObj["_integrity"] = "sha1-000000000000000000000000000="; // When no _integrity string has been provided (e.g. by Git dependencies), add a dummy one. It does not seem to harm and it bypasses downloads.
+                  }
+
+                  if(dependency.resolved) {
+                      packageObj["_resolved"] = dependency.resolved; // Adopt the resolved property if one has been provided
+                  } else {
+                      packageObj["_resolved"] = dependency.version; // Set the resolved version to the version identifier. This prevents NPM from cloning Git repositories.
+                  }
+
+                  if(dependency.from !== undefined) { // Adopt from property if one has been provided
+                      packageObj["_from"] = dependency.from;
+                  }
+
+                  fs.writeFileSync(packageJSONPath, JSON.stringify(packageObj, null, 2));
+              }
+
+              // Augment transitive dependencies
+              if(dependency.dependencies !== undefined) {
+                  augmentDependencies(packageJSONDir, dependency.dependencies);
+              }
+          }
+      }
+
+      if(fs.existsSync("./package-lock.json")) {
+          var packageLock = JSON.parse(fs.readFileSync("./package-lock.json"));
+
+          if(![1, 2].includes(packageLock.lockfileVersion)) {
+             process.stderr.write("Sorry, I only understand lock file versions 1 and 2!\n");
+             process.exit(1);
+          }
+
+          if(packageLock.dependencies !== undefined) {
+              augmentDependencies(".", packageLock.dependencies);
+          }
+      }
+    '';
+  };
+
+  # Reconstructs a package-lock file from the node_modules/ folder structure and package.json files with dummy sha1 hashes
+  reconstructPackageLock = writeTextFile {
+    name = "addintegrityfields.js";
+    text = ''
+      var fs = require('fs');
+      var path = require('path');
+
+      var packageObj = JSON.parse(fs.readFileSync("package.json"));
+
+      var lockObj = {
+          name: packageObj.name,
+          version: packageObj.version,
+          lockfileVersion: 1,
+          requires: true,
+          dependencies: {}
+      };
+
+      function augmentPackageJSON(filePath, dependencies) {
+          var packageJSON = path.join(filePath, "package.json");
+          if(fs.existsSync(packageJSON)) {
+              var packageObj = JSON.parse(fs.readFileSync(packageJSON));
+              dependencies[packageObj.name] = {
+                  version: packageObj.version,
+                  integrity: "sha1-000000000000000000000000000=",
+                  dependencies: {}
+              };
+              processDependencies(path.join(filePath, "node_modules"), dependencies[packageObj.name].dependencies);
+          }
+      }
+
+      function processDependencies(dir, dependencies) {
+          if(fs.existsSync(dir)) {
+              var files = fs.readdirSync(dir);
+
+              files.forEach(function(entry) {
+                  var filePath = path.join(dir, entry);
+                  var stats = fs.statSync(filePath);
+
+                  if(stats.isDirectory()) {
+                      if(entry.substr(0, 1) == "@") {
+                          // When we encounter a namespace folder, augment all packages belonging to the scope
+                          var pkgFiles = fs.readdirSync(filePath);
+
+                          pkgFiles.forEach(function(entry) {
+                              if(stats.isDirectory()) {
+                                  var pkgFilePath = path.join(filePath, entry);
+                                  augmentPackageJSON(pkgFilePath, dependencies);
+                              }
+                          });
+                      } else {
+                          augmentPackageJSON(filePath, dependencies);
+                      }
+                  }
+              });
+          }
+      }
+
+      processDependencies("node_modules", lockObj.dependencies);
+
+      fs.writeFileSync("package-lock.json", JSON.stringify(lockObj, null, 2));
+    '';
+  };
+
+  prepareAndInvokeNPM = {packageName, bypassCache, reconstructLock, npmFlags, production}:
+    let
+      forceOfflineFlag = if bypassCache then "--offline" else "--registry http://www.example.com";
+    in
+    ''
+        # Pinpoint the versions of all dependencies to the ones that are actually being used
+        echo "pinpointing versions of dependencies..."
+        source $pinpointDependenciesScriptPath
+
+        # Patch the shebangs of the bundled modules to prevent them from
+        # calling executables outside the Nix store as much as possible
+        patchShebangs .
+
+        # Deploy the Node.js package by running npm install. Since the
+        # dependencies have been provided already by ourselves, it should not
+        # attempt to install them again, which is good, because we want to make
+        # it Nix's responsibility. If it needs to install any dependencies
+        # anyway (e.g. because the dependency parameters are
+        # incomplete/incorrect), it fails.
+        #
+        # The other responsibilities of NPM are kept -- version checks, build
+        # steps, postprocessing etc.
+
+        export HOME=$TMPDIR
+        cd "${packageName}"
+        runHook preRebuild
+
+        ${lib.optionalString bypassCache ''
+          ${lib.optionalString reconstructLock ''
+            if [ -f package-lock.json ]
+            then
+                echo "WARNING: Reconstruct lock option enabled, but a lock file already exists!"
+                echo "This will most likely result in version mismatches! We will remove the lock file and regenerate it!"
+                rm package-lock.json
+            else
+                echo "No package-lock.json file found, reconstructing..."
+            fi
+
+            node ${reconstructPackageLock}
+          ''}
+
+          node ${addIntegrityFieldsScript}
+        ''}
+
+        npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${lib.optionalString production "--production"} rebuild
+
+        if [ "''${dontNpmInstall-}" != "1" ]
+        then
+            # NPM tries to download packages even when they already exist if npm-shrinkwrap is used.
+            rm -f npm-shrinkwrap.json
+
+            npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${lib.optionalString production "--production"} install
+        fi
+    '';
+
+  # Builds and composes an NPM package including all its dependencies
+  buildNodePackage =
+    { name
+    , packageName
+    , version
+    , dependencies ? []
+    , buildInputs ? []
+    , production ? true
+    , npmFlags ? ""
+    , dontNpmInstall ? false
+    , bypassCache ? false
+    , reconstructLock ? false
+    , preRebuild ? ""
+    , dontStrip ? true
+    , unpackPhase ? "true"
+    , buildPhase ? "true"
+    , ... }@args:
+
+    let
+      extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" ];
+    in
+    stdenv.mkDerivation ({
+      name = "node_${name}-${version}";
+      buildInputs = [ tarWrapper python nodejs ]
+        ++ lib.optional (stdenv.isLinux) utillinux
+        ++ lib.optional (stdenv.isDarwin) libtool
+        ++ buildInputs;
+
+      inherit nodejs;
+
+      inherit dontStrip; # Stripping may fail a build for some package deployments
+      inherit dontNpmInstall preRebuild unpackPhase buildPhase;
+
+      compositionScript = composePackage args;
+      pinpointDependenciesScript = pinpointDependenciesOfPackage args;
+
+      passAsFile = [ "compositionScript" "pinpointDependenciesScript" ];
+
+      installPhase = ''
+        # Create and enter a root node_modules/ folder
+        mkdir -p $out/lib/node_modules
+        cd $out/lib/node_modules
+
+        # Compose the package and all its dependencies
+        source $compositionScriptPath
+
+        ${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }}
+
+        # Create symlink to the deployed executable folder, if applicable
+        if [ -d "$out/lib/node_modules/.bin" ]
+        then
+            ln -s $out/lib/node_modules/.bin $out/bin
+        fi
+
+        # Create symlinks to the deployed manual page folders, if applicable
+        if [ -d "$out/lib/node_modules/${packageName}/man" ]
+        then
+            mkdir -p $out/share
+            for dir in "$out/lib/node_modules/${packageName}/man/"*
+            do
+                mkdir -p $out/share/man/$(basename "$dir")
+                for page in "$dir"/*
+                do
+                    ln -s $page $out/share/man/$(basename "$dir")
+                done
+            done
+        fi
+
+        # Run post install hook, if provided
+        runHook postInstall
+      '';
+    } // extraArgs);
+
+  # Builds a node environment (a node_modules folder and a set of binaries)
+  buildNodeDependencies =
+    { name
+    , packageName
+    , version
+    , src
+    , dependencies ? []
+    , buildInputs ? []
+    , production ? true
+    , npmFlags ? ""
+    , dontNpmInstall ? false
+    , bypassCache ? false
+    , reconstructLock ? false
+    , dontStrip ? true
+    , unpackPhase ? "true"
+    , buildPhase ? "true"
+    , ... }@args:
+
+    let
+      extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" ];
+    in
+      stdenv.mkDerivation ({
+        name = "node-dependencies-${name}-${version}";
+
+        buildInputs = [ tarWrapper python nodejs ]
+          ++ lib.optional (stdenv.isLinux) utillinux
+          ++ lib.optional (stdenv.isDarwin) libtool
+          ++ buildInputs;
+
+        inherit dontStrip; # Stripping may fail a build for some package deployments
+        inherit dontNpmInstall unpackPhase buildPhase;
+
+        includeScript = includeDependencies { inherit dependencies; };
+        pinpointDependenciesScript = pinpointDependenciesOfPackage args;
+
+        passAsFile = [ "includeScript" "pinpointDependenciesScript" ];
+
+        installPhase = ''
+          mkdir -p $out/${packageName}
+          cd $out/${packageName}
+
+          source $includeScriptPath
+
+          # Create fake package.json to make the npm commands work properly
+          cp ${src}/package.json .
+          chmod 644 package.json
+          ${lib.optionalString bypassCache ''
+            if [ -f ${src}/package-lock.json ]
+            then
+                cp ${src}/package-lock.json .
+            fi
+          ''}
+
+          # Go to the parent folder to make sure that all packages are pinpointed
+          cd ..
+          ${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
+
+          ${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }}
+
+          # Expose the executables that were installed
+          cd ..
+          ${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
+
+          mv ${packageName} lib
+          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) utillinux ++ buildInputs;
+      buildCommand = ''
+        mkdir -p $out/bin
+        cat > $out/bin/shell <<EOF
+        #! ${stdenv.shell} -e
+        $shellHook
+        exec ${stdenv.shell}
+        EOF
+        chmod +x $out/bin/shell
+      '';
+
+      # Provide the dependencies in a development shell through the NODE_PATH environment variable
+      inherit nodeDependencies;
+      shellHook = lib.optionalString (dependencies != []) ''
+        export NODE_PATH=${nodeDependencies}/lib/node_modules
+        export PATH="${nodeDependencies}/bin:$PATH"
+      '';
+    };
+in
+{
+  buildNodeSourceDist = lib.makeOverridable buildNodeSourceDist;
+  buildNodePackage = lib.makeOverridable buildNodePackage;
+  buildNodeDependencies = lib.makeOverridable buildNodeDependencies;
+  buildNodeShell = lib.makeOverridable buildNodeShell;
+}
diff --git a/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/node-packages.nix b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/node-packages.nix
new file mode 100644
index 000000000000..08a39661a346
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/node-packages.nix
@@ -0,0 +1,10290 @@
+# This file has been generated by node2nix 1.9.0. Do not edit!
+
+{nodeEnv, fetchurl, fetchgit, callPackage, nix-gitignore, stdenv, lib, globalBuildInputs ? []}:
+
+let
+  sources = {
+    "@babel/code-frame-7.8.3" = {
+      name = "_at_babel_slash_code-frame";
+      packageName = "@babel/code-frame";
+      version = "7.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz";
+        sha512 = "a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==";
+      };
+    };
+    "@babel/helper-validator-identifier-7.9.5" = {
+      name = "_at_babel_slash_helper-validator-identifier";
+      packageName = "@babel/helper-validator-identifier";
+      version = "7.9.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz";
+        sha512 = "/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==";
+      };
+    };
+    "@babel/highlight-7.9.0" = {
+      name = "_at_babel_slash_highlight";
+      packageName = "@babel/highlight";
+      version = "7.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz";
+        sha512 = "lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==";
+      };
+    };
+    "@babel/runtime-7.9.2" = {
+      name = "_at_babel_slash_runtime";
+      packageName = "@babel/runtime";
+      version = "7.9.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.2.tgz";
+        sha512 = "NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==";
+      };
+    };
+    "@bahmutov/print-env-1.2.0" = {
+      name = "_at_bahmutov_slash_print-env";
+      packageName = "@bahmutov/print-env";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@bahmutov/print-env/-/print-env-1.2.0.tgz";
+        sha512 = "Vf4AX+maJYV6f0RCUjmCsv6dcJPdPp33By8orMU1enb3t867xTGERhfn7aBdeisSKYJ3Dau5nwCiR2sGPSoS+w==";
+      };
+    };
+    "@cypress/eslint-plugin-dev-5.0.0" = {
+      name = "_at_cypress_slash_eslint-plugin-dev";
+      packageName = "@cypress/eslint-plugin-dev";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@cypress/eslint-plugin-dev/-/eslint-plugin-dev-5.0.0.tgz";
+        sha512 = "wAvXudTesd75WKnO8PWtCy7bRuoG1v2JctfedtXn8uNN7M862WvkdXZaluW8Ex/Ahj6VI6fh4hfhdFzxhlF83Q==";
+      };
+    };
+    "@cypress/listr-verbose-renderer-0.4.1" = {
+      name = "_at_cypress_slash_listr-verbose-renderer";
+      packageName = "@cypress/listr-verbose-renderer";
+      version = "0.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@cypress/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz";
+        sha1 = "a77492f4b11dcc7c446a34b3e28721afd33c642a";
+      };
+    };
+    "@cypress/request-2.88.5" = {
+      name = "_at_cypress_slash_request";
+      packageName = "@cypress/request";
+      version = "2.88.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@cypress/request/-/request-2.88.5.tgz";
+        sha512 = "TzEC1XMi1hJkywWpRfD2clreTa/Z+lOrXDCxxBTBPEcY5azdPi56A6Xw+O4tWJnaJH3iIE7G5aDXZC6JgRZLcA==";
+      };
+    };
+    "@cypress/xvfb-1.2.4" = {
+      name = "_at_cypress_slash_xvfb";
+      packageName = "@cypress/xvfb";
+      version = "1.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz";
+        sha512 = "skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==";
+      };
+    };
+    "@hapi/address-2.1.4" = {
+      name = "_at_hapi_slash_address";
+      packageName = "@hapi/address";
+      version = "2.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz";
+        sha512 = "QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==";
+      };
+    };
+    "@hapi/bourne-1.3.2" = {
+      name = "_at_hapi_slash_bourne";
+      packageName = "@hapi/bourne";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hapi/bourne/-/bourne-1.3.2.tgz";
+        sha1 = "0a7095adea067243ce3283e1b56b8a8f453b242a";
+      };
+    };
+    "@hapi/hoek-8.5.1" = {
+      name = "_at_hapi_slash_hoek";
+      packageName = "@hapi/hoek";
+      version = "8.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hapi/hoek/-/hoek-8.5.1.tgz";
+        sha512 = "yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow==";
+      };
+    };
+    "@hapi/joi-15.1.1" = {
+      name = "_at_hapi_slash_joi";
+      packageName = "@hapi/joi";
+      version = "15.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hapi/joi/-/joi-15.1.1.tgz";
+        sha1 = "c675b8a71296f02833f8d6d243b34c57b8ce19d7";
+      };
+    };
+    "@hapi/topo-3.1.6" = {
+      name = "_at_hapi_slash_topo";
+      packageName = "@hapi/topo";
+      version = "3.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hapi/topo/-/topo-3.1.6.tgz";
+        sha1 = "68d935fa3eae7fdd5ab0d7f953f3205d8b2bfc29";
+      };
+    };
+    "@koa/cors-3.1.0" = {
+      name = "_at_koa_slash_cors";
+      packageName = "@koa/cors";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@koa/cors/-/cors-3.1.0.tgz";
+        sha512 = "7ulRC1da/rBa6kj6P4g2aJfnET3z8Uf3SWu60cjbtxTA5g8lxRdX/Bd2P92EagGwwAhANeNw8T8if99rJliR6Q==";
+      };
+    };
+    "@mrmlnc/readdir-enhanced-2.2.1" = {
+      name = "_at_mrmlnc_slash_readdir-enhanced";
+      packageName = "@mrmlnc/readdir-enhanced";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz";
+        sha512 = "bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==";
+      };
+    };
+    "@nodelib/fs.scandir-2.1.3" = {
+      name = "_at_nodelib_slash_fs.scandir";
+      packageName = "@nodelib/fs.scandir";
+      version = "2.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz";
+        sha512 = "eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==";
+      };
+    };
+    "@nodelib/fs.stat-1.1.3" = {
+      name = "_at_nodelib_slash_fs.stat";
+      packageName = "@nodelib/fs.stat";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz";
+        sha512 = "shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==";
+      };
+    };
+    "@nodelib/fs.stat-2.0.3" = {
+      name = "_at_nodelib_slash_fs.stat";
+      packageName = "@nodelib/fs.stat";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz";
+        sha512 = "bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==";
+      };
+    };
+    "@nodelib/fs.walk-1.2.4" = {
+      name = "_at_nodelib_slash_fs.walk";
+      packageName = "@nodelib/fs.walk";
+      version = "1.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz";
+        sha512 = "1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==";
+      };
+    };
+    "@octokit/auth-token-2.4.0" = {
+      name = "_at_octokit_slash_auth-token";
+      packageName = "@octokit/auth-token";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.4.0.tgz";
+        sha512 = "eoOVMjILna7FVQf96iWc3+ZtE/ZT6y8ob8ZzcqKY1ibSQCnu4O/B7pJvzMx5cyZ/RjAff6DAdEb0O0Cjcxidkg==";
+      };
+    };
+    "@octokit/endpoint-6.0.1" = {
+      name = "_at_octokit_slash_endpoint";
+      packageName = "@octokit/endpoint";
+      version = "6.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.1.tgz";
+        sha512 = "pOPHaSz57SFT/m3R5P8MUu4wLPszokn5pXcB/pzavLTQf2jbU+6iayTvzaY6/BiotuRS0qyEUkx3QglT4U958A==";
+      };
+    };
+    "@octokit/plugin-paginate-rest-1.1.2" = {
+      name = "_at_octokit_slash_plugin-paginate-rest";
+      packageName = "@octokit/plugin-paginate-rest";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-1.1.2.tgz";
+        sha512 = "jbsSoi5Q1pj63sC16XIUboklNw+8tL9VOnJsWycWYR78TKss5PVpIPb1TUUcMQ+bBh7cY579cVAWmf5qG+dw+Q==";
+      };
+    };
+    "@octokit/plugin-request-log-1.0.0" = {
+      name = "_at_octokit_slash_plugin-request-log";
+      packageName = "@octokit/plugin-request-log";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.0.tgz";
+        sha512 = "ywoxP68aOT3zHCLgWZgwUJatiENeHE7xJzYjfz8WI0goynp96wETBF+d95b8g/uL4QmS6owPVlaxiz3wyMAzcw==";
+      };
+    };
+    "@octokit/plugin-rest-endpoint-methods-2.4.0" = {
+      name = "_at_octokit_slash_plugin-rest-endpoint-methods";
+      packageName = "@octokit/plugin-rest-endpoint-methods";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-2.4.0.tgz";
+        sha512 = "EZi/AWhtkdfAYi01obpX0DF7U6b1VRr30QNQ5xSFPITMdLSfhcBqjamE3F+sKcxPbD7eZuMHu3Qkk2V+JGxBDQ==";
+      };
+    };
+    "@octokit/request-5.4.2" = {
+      name = "_at_octokit_slash_request";
+      packageName = "@octokit/request";
+      version = "5.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@octokit/request/-/request-5.4.2.tgz";
+        sha512 = "zKdnGuQ2TQ2vFk9VU8awFT4+EYf92Z/v3OlzRaSh4RIP0H6cvW1BFPXq4XYvNez+TPQjqN+0uSkCYnMFFhcFrw==";
+      };
+    };
+    "@octokit/request-error-1.2.1" = {
+      name = "_at_octokit_slash_request-error";
+      packageName = "@octokit/request-error";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@octokit/request-error/-/request-error-1.2.1.tgz";
+        sha512 = "+6yDyk1EES6WK+l3viRDElw96MvwfJxCt45GvmjDUKWjYIb3PJZQkq3i46TwGwoPD4h8NmTrENmtyA1FwbmhRA==";
+      };
+    };
+    "@octokit/request-error-2.0.0" = {
+      name = "_at_octokit_slash_request-error";
+      packageName = "@octokit/request-error";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.0.0.tgz";
+        sha512 = "rtYicB4Absc60rUv74Rjpzek84UbVHGHJRu4fNVlZ1mCcyUPPuzFfG9Rn6sjHrd95DEsmjSt1Axlc699ZlbDkw==";
+      };
+    };
+    "@octokit/rest-16.43.1" = {
+      name = "_at_octokit_slash_rest";
+      packageName = "@octokit/rest";
+      version = "16.43.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@octokit/rest/-/rest-16.43.1.tgz";
+        sha512 = "gfFKwRT/wFxq5qlNjnW2dh+qh74XgTQ2B179UX5K1HYCluioWj8Ndbgqw2PVqa1NnVJkGHp2ovMpVn/DImlmkw==";
+      };
+    };
+    "@octokit/types-2.11.1" = {
+      name = "_at_octokit_slash_types";
+      packageName = "@octokit/types";
+      version = "2.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@octokit/types/-/types-2.11.1.tgz";
+        sha512 = "QaLoLkmFdfoNbk3eOzPv7vKrUY0nRJIYmZDoz/pTer4ICpqu80aSQTVHnnUxEFuURCiidig76CcxUOYC/bY3RQ==";
+      };
+    };
+    "@samverschueren/stream-to-observable-0.3.1" = {
+      name = "_at_samverschueren_slash_stream-to-observable";
+      packageName = "@samverschueren/stream-to-observable";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.1.tgz";
+        sha512 = "c/qwwcHyafOQuVQJj0IlBjf5yYgBI7YPJ77k4fOJYesb41jio65eaJODRUmfYKhTOFBrIZ66kgvGPlNbjuoRdQ==";
+      };
+    };
+    "@semantic-release/commit-analyzer-6.3.3" = {
+      name = "_at_semantic-release_slash_commit-analyzer";
+      packageName = "@semantic-release/commit-analyzer";
+      version = "6.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@semantic-release/commit-analyzer/-/commit-analyzer-6.3.3.tgz";
+        sha512 = "Pyv1ZL2u5AIOY4YbxFCAB5J1PEh5yON8ylbfiPiriDGGW6Uu1U3Y8lysMtWu+FUD5x7tSnyIzhqx0+fxPxqbgw==";
+      };
+    };
+    "@semantic-release/error-2.2.0" = {
+      name = "_at_semantic-release_slash_error";
+      packageName = "@semantic-release/error";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@semantic-release/error/-/error-2.2.0.tgz";
+        sha512 = "9Tj/qn+y2j+sjCI3Jd+qseGtHjOAeg7dU2/lVcqIQ9TV3QDaDXDYXcoOHU+7o2Hwh8L8ymL4gfuO7KxDs3q2zg==";
+      };
+    };
+    "@semantic-release/github-5.5.8" = {
+      name = "_at_semantic-release_slash_github";
+      packageName = "@semantic-release/github";
+      version = "5.5.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@semantic-release/github/-/github-5.5.8.tgz";
+        sha512 = "YxbBXbCThs/Xk3E4QU01AMIUM8eb0UTvjHJtclTDR3/DEW7kUpmXQqBMnSh3qCTuk4scRFIoaF0fGU/0xByZug==";
+      };
+    };
+    "@semantic-release/npm-5.3.5" = {
+      name = "_at_semantic-release_slash_npm";
+      packageName = "@semantic-release/npm";
+      version = "5.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@semantic-release/npm/-/npm-5.3.5.tgz";
+        sha512 = "AOREQ6rUT8OAiqXvWCp0kMNjcdnLLq1JdP0voZL4l5zf6Tgs/65YA7ctP+9shthW01Ps85Nu0pILW3p9GkaYuw==";
+      };
+    };
+    "@semantic-release/release-notes-generator-7.3.5" = {
+      name = "_at_semantic-release_slash_release-notes-generator";
+      packageName = "@semantic-release/release-notes-generator";
+      version = "7.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@semantic-release/release-notes-generator/-/release-notes-generator-7.3.5.tgz";
+        sha512 = "LGjgPBGjjmjap/76O0Md3wc04Y7IlLnzZceLsAkcYRwGQdRPTTFUJKqDQTuieWTs7zfHzQoZqsqPfFxEN+g2+Q==";
+      };
+    };
+    "@sindresorhus/is-2.1.1" = {
+      name = "_at_sindresorhus_slash_is";
+      packageName = "@sindresorhus/is";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@sindresorhus/is/-/is-2.1.1.tgz";
+        sha512 = "/aPsuoj/1Dw/kzhkgz+ES6TxG0zfTMGLwuK2ZG00k/iJzYHTLCE8mVU8EPqEOp/lmxPoq1C1C9RYToRKb2KEfg==";
+      };
+    };
+    "@szmarczak/http-timer-4.0.5" = {
+      name = "_at_szmarczak_slash_http-timer";
+      packageName = "@szmarczak/http-timer";
+      version = "4.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.5.tgz";
+        sha512 = "PyRA9sm1Yayuj5OIoJ1hGt2YISX45w9WcFbh6ddT0Z/0yaFxOtGLInr4jUfU1EAFVs0Yfyfev4RNwBlUaHdlDQ==";
+      };
+    };
+    "@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/cacheable-request-6.0.1" = {
+      name = "_at_types_slash_cacheable-request";
+      packageName = "@types/cacheable-request";
+      version = "6.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.1.tgz";
+        sha512 = "ykFq2zmBGOCbpIXtoVbz4SKY5QriWPh3AjyU4G74RYbtt5yOc5OfaY75ftjg7mikMOla1CTGpX3lLbuJh8DTrQ==";
+      };
+    };
+    "@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/events-3.0.0" = {
+      name = "_at_types_slash_events";
+      packageName = "@types/events";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz";
+        sha512 = "EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==";
+      };
+    };
+    "@types/glob-7.1.1" = {
+      name = "_at_types_slash_glob";
+      packageName = "@types/glob";
+      version = "7.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz";
+        sha512 = "1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==";
+      };
+    };
+    "@types/http-cache-semantics-4.0.0" = {
+      name = "_at_types_slash_http-cache-semantics";
+      packageName = "@types/http-cache-semantics";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.0.tgz";
+        sha512 = "c3Xy026kOF7QOTn00hbIllV1dLR9hG9NkSrLQgCVs8NF6sBU+VGWjD3wLPhmh1TYAc7ugCFsvHYMN4VcBN1U1A==";
+      };
+    };
+    "@types/keyv-3.1.1" = {
+      name = "_at_types_slash_keyv";
+      packageName = "@types/keyv";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.1.tgz";
+        sha512 = "MPtoySlAZQ37VoLaPcTHCu1RWJ4llDkULYZIzOYxlhxBqYPB0RsRlmMU0R6tahtFe27mIdkHV+551ZWV4PLmVw==";
+      };
+    };
+    "@types/minimatch-3.0.3" = {
+      name = "_at_types_slash_minimatch";
+      packageName = "@types/minimatch";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz";
+        sha512 = "tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==";
+      };
+    };
+    "@types/node-13.13.0" = {
+      name = "_at_types_slash_node";
+      packageName = "@types/node";
+      version = "13.13.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/node/-/node-13.13.0.tgz";
+        sha512 = "WE4IOAC6r/yBZss1oQGM5zs2D7RuKR6Q+w+X2SouPofnWn+LbCqClRyhO3ZE7Ix8nmFgo/oVuuE01cJT2XB13A==";
+      };
+    };
+    "@types/node-14.17.0" = {
+      name = "_at_types_slash_node";
+      packageName = "@types/node";
+      version = "14.17.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/node/-/node-14.17.0.tgz";
+        sha512 = "w8VZUN/f7SSbvVReb9SWp6cJFevxb4/nkG65yLAya//98WgocKm5PLDAtSs5CtJJJM+kHmJjO/6mmYW4MHShZA==";
+      };
+    };
+    "@types/normalize-package-data-2.4.0" = {
+      name = "_at_types_slash_normalize-package-data";
+      packageName = "@types/normalize-package-data";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz";
+        sha512 = "f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==";
+      };
+    };
+    "@types/parse-json-4.0.0" = {
+      name = "_at_types_slash_parse-json";
+      packageName = "@types/parse-json";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz";
+        sha512 = "//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==";
+      };
+    };
+    "@types/responselike-1.0.0" = {
+      name = "_at_types_slash_responselike";
+      packageName = "@types/responselike";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz";
+        sha512 = "85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==";
+      };
+    };
+    "@types/retry-0.12.0" = {
+      name = "_at_types_slash_retry";
+      packageName = "@types/retry";
+      version = "0.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz";
+        sha512 = "wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==";
+      };
+    };
+    "@types/sinonjs__fake-timers-6.0.2" = {
+      name = "_at_types_slash_sinonjs__fake-timers";
+      packageName = "@types/sinonjs__fake-timers";
+      version = "6.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-6.0.2.tgz";
+        sha512 = "dIPoZ3g5gcx9zZEszaxLSVTvMReD3xxyyDnQUjA6IYDG9Ba2AV0otMPs+77sG9ojB4Qr2N2Vk5RnKeuA0X/0bg==";
+      };
+    };
+    "@types/sizzle-2.3.3" = {
+      name = "_at_types_slash_sizzle";
+      packageName = "@types/sizzle";
+      version = "2.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz";
+        sha512 = "JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==";
+      };
+    };
+    "@types/yauzl-2.9.1" = {
+      name = "_at_types_slash_yauzl";
+      packageName = "@types/yauzl";
+      version = "2.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.9.1.tgz";
+        sha512 = "A1b8SU4D10uoPjwb0lnHmmu8wZhR9d+9o2PKBQT2jU5YPTKsxac6M2qGAdY7VcL+dHHhARVUDmeg0rOrcd9EjA==";
+      };
+    };
+    "@zeit/schemas-2.6.0" = {
+      name = "_at_zeit_slash_schemas";
+      packageName = "@zeit/schemas";
+      version = "2.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@zeit/schemas/-/schemas-2.6.0.tgz";
+        sha512 = "uUrgZ8AxS+Lio0fZKAipJjAh415JyrOZowliZAzmnJSsf7piVL5w+G0+gFJ0KSu3QRhvui/7zuvpLz03YjXAhg==";
+      };
+    };
+    "JSONStream-1.3.5" = {
+      name = "JSONStream";
+      packageName = "JSONStream";
+      version = "1.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz";
+        sha512 = "E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==";
+      };
+    };
+    "accepts-1.3.7" = {
+      name = "accepts";
+      packageName = "accepts";
+      version = "1.3.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz";
+        sha512 = "Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==";
+      };
+    };
+    "acorn-7.2.0" = {
+      name = "acorn";
+      packageName = "acorn";
+      version = "7.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn/-/acorn-7.2.0.tgz";
+        sha512 = "apwXVmYVpQ34m/i71vrApRrRKCWQnZZF1+npOD0WV5xZFfwWOmKGQ2RWlfdy9vWITsenisM8M0Qeq8agcFHNiQ==";
+      };
+    };
+    "acorn-jsx-5.2.0" = {
+      name = "acorn-jsx";
+      packageName = "acorn-jsx";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz";
+        sha512 = "HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==";
+      };
+    };
+    "agent-base-5.1.1" = {
+      name = "agent-base";
+      packageName = "agent-base";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/agent-base/-/agent-base-5.1.1.tgz";
+        sha512 = "TMeqbNl2fMW0nMjTEPOwe3J/PRFP4vqeoNuQMG0HlMrtm5QxKqdvAkZ1pRBQ/ulIyDD5Yq0nJ7YbdD8ey0TO3g==";
+      };
+    };
+    "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==";
+      };
+    };
+    "aggregate-error-3.0.1" = {
+      name = "aggregate-error";
+      packageName = "aggregate-error";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz";
+        sha512 = "quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==";
+      };
+    };
+    "ajv-6.12.2" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "6.12.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz";
+        sha512 = "k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==";
+      };
+    };
+    "ajv-6.5.3" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "6.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-6.5.3.tgz";
+        sha512 = "LqZ9wY+fx3UMiiPd741yB2pj3hhil+hQc8taf4o2QGRFpWgZ2V5C8HA165DY9sS3fJwsk7uT7ZlFEyC3Ig3lLg==";
+      };
+    };
+    "ansi-align-2.0.0" = {
+      name = "ansi-align";
+      packageName = "ansi-align";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz";
+        sha1 = "c36aeccba563b89ceb556f3690f0b1d9e3547f7f";
+      };
+    };
+    "ansi-escape-sequences-5.1.2" = {
+      name = "ansi-escape-sequences";
+      packageName = "ansi-escape-sequences";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-escape-sequences/-/ansi-escape-sequences-5.1.2.tgz";
+        sha512 = "JcpoVp1W1bl1Qn4cVuiXEhD6+dyXKSOgCn2zlzE8inYgCJCBy1aPnUhlz6I4DFum8D4ovb9Qi/iAjUcGvG2lqw==";
+      };
+    };
+    "ansi-escapes-3.2.0" = {
+      name = "ansi-escapes";
+      packageName = "ansi-escapes";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz";
+        sha512 = "cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==";
+      };
+    };
+    "ansi-escapes-4.3.1" = {
+      name = "ansi-escapes";
+      packageName = "ansi-escapes";
+      version = "4.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz";
+        sha512 = "JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==";
+      };
+    };
+    "ansi-regex-2.1.1" = {
+      name = "ansi-regex";
+      packageName = "ansi-regex";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz";
+        sha1 = "c3b33ab5ee360d86e0e628f0468ae7ef27d654df";
+      };
+    };
+    "ansi-regex-3.0.0" = {
+      name = "ansi-regex";
+      packageName = "ansi-regex";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz";
+        sha1 = "ed0317c322064f79466c02966bddb605ab37d998";
+      };
+    };
+    "ansi-regex-4.1.0" = {
+      name = "ansi-regex";
+      packageName = "ansi-regex";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz";
+        sha512 = "1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==";
+      };
+    };
+    "ansi-regex-5.0.0" = {
+      name = "ansi-regex";
+      packageName = "ansi-regex";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz";
+        sha512 = "bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==";
+      };
+    };
+    "ansi-styles-2.2.1" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz";
+        sha1 = "b432dd3358b634cf75e1e4664368240533c1ddbe";
+      };
+    };
+    "ansi-styles-3.2.1" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "3.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz";
+        sha512 = "VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==";
+      };
+    };
+    "ansi-styles-4.2.1" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz";
+        sha512 = "9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==";
+      };
+    };
+    "ansi-styles-4.3.0" = {
+      name = "ansi-styles";
+      packageName = "ansi-styles";
+      version = "4.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz";
+        sha512 = "zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==";
+      };
+    };
+    "ansicolors-0.3.2" = {
+      name = "ansicolors";
+      packageName = "ansicolors";
+      version = "0.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz";
+        sha1 = "665597de86a9ffe3aa9bfbe6cae5c6ea426b4979";
+      };
+    };
+    "any-observable-0.3.0" = {
+      name = "any-observable";
+      packageName = "any-observable";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/any-observable/-/any-observable-0.3.0.tgz";
+        sha512 = "/FQM1EDkTsf63Ub2C6O7GuYFDsSXUwsaZDurV0np41ocwq0jthUAYCmhBX9f+KwlaCgIuWyr/4WlUQUBfKfZog==";
+      };
+    };
+    "any-promise-1.3.0" = {
+      name = "any-promise";
+      packageName = "any-promise";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz";
+        sha1 = "abc6afeedcea52e809cdc0376aed3ce39635d17f";
+      };
+    };
+    "arch-2.1.1" = {
+      name = "arch";
+      packageName = "arch";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arch/-/arch-2.1.1.tgz";
+        sha512 = "BLM56aPo9vLLFVa8+/+pJLnrZ7QGGTVHWsCwieAWT9o9K8UeGaQbzZbGoabWLOo2ksBCztoXdqBZBplqLDDCSg==";
+      };
+    };
+    "arch-2.2.0" = {
+      name = "arch";
+      packageName = "arch";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz";
+        sha512 = "Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==";
+      };
+    };
+    "arg-2.0.0" = {
+      name = "arg";
+      packageName = "arg";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arg/-/arg-2.0.0.tgz";
+        sha512 = "XxNTUzKnz1ctK3ZIcI2XUPlD96wbHP2nGqkPKpvk/HNRlPveYrXIVSTk9m3LcqOgDPg3B1nMvdV/K8wZd7PG4w==";
+      };
+    };
+    "argparse-1.0.10" = {
+      name = "argparse";
+      packageName = "argparse";
+      version = "1.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz";
+        sha512 = "o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==";
+      };
+    };
+    "argv-formatter-1.0.0" = {
+      name = "argv-formatter";
+      packageName = "argv-formatter";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/argv-formatter/-/argv-formatter-1.0.0.tgz";
+        sha1 = "a0ca0cbc29a5b73e836eebe1cbf6c5e0e4eb82f9";
+      };
+    };
+    "arr-diff-4.0.0" = {
+      name = "arr-diff";
+      packageName = "arr-diff";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz";
+        sha1 = "d6461074febfec71e7e15235761a329a5dc7c520";
+      };
+    };
+    "arr-flatten-1.1.0" = {
+      name = "arr-flatten";
+      packageName = "arr-flatten";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz";
+        sha512 = "L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==";
+      };
+    };
+    "arr-union-3.1.0" = {
+      name = "arr-union";
+      packageName = "arr-union";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz";
+        sha1 = "e39b09aea9def866a8f206e288af63919bae39c4";
+      };
+    };
+    "array-back-3.1.0" = {
+      name = "array-back";
+      packageName = "array-back";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz";
+        sha512 = "TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==";
+      };
+    };
+    "array-back-4.0.1" = {
+      name = "array-back";
+      packageName = "array-back";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-back/-/array-back-4.0.1.tgz";
+        sha512 = "Z/JnaVEXv+A9xabHzN43FiiiWEE7gPCRXMrVmRm00tWbjZRul1iHm7ECzlyNq1p4a4ATXz+G9FJ3GqGOkOV3fg==";
+      };
+    };
+    "array-find-index-1.0.2" = {
+      name = "array-find-index";
+      packageName = "array-find-index";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz";
+        sha1 = "df010aa1287e164bbda6f9723b0a96a1ec4187a1";
+      };
+    };
+    "array-ify-1.0.0" = {
+      name = "array-ify";
+      packageName = "array-ify";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz";
+        sha1 = "9e528762b4a9066ad163a6962a364418e9626ece";
+      };
+    };
+    "array-union-1.0.2" = {
+      name = "array-union";
+      packageName = "array-union";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz";
+        sha1 = "9a34410e4f4e3da23dea375be5be70f24778ec39";
+      };
+    };
+    "array-union-2.1.0" = {
+      name = "array-union";
+      packageName = "array-union";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz";
+        sha1 = "b798420adbeb1de828d84acd8a2e23d3efe85e8d";
+      };
+    };
+    "array-uniq-1.0.3" = {
+      name = "array-uniq";
+      packageName = "array-uniq";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz";
+        sha1 = "af6ac877a25cc7f74e058894753858dfdb24fdb6";
+      };
+    };
+    "array-unique-0.3.2" = {
+      name = "array-unique";
+      packageName = "array-unique";
+      version = "0.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz";
+        sha1 = "a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428";
+      };
+    };
+    "arrify-1.0.1" = {
+      name = "arrify";
+      packageName = "arrify";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz";
+        sha1 = "898508da2226f380df904728456849c1501a4b0d";
+      };
+    };
+    "asap-2.0.6" = {
+      name = "asap";
+      packageName = "asap";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz";
+        sha1 = "e50347611d7e690943208bbdafebcbc2fb866d46";
+      };
+    };
+    "asn1-0.2.4" = {
+      name = "asn1";
+      packageName = "asn1";
+      version = "0.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz";
+        sha1 = "8d2475dfab553bb33e77b54e59e880bb8ce23136";
+      };
+    };
+    "assert-plus-1.0.0" = {
+      name = "assert-plus";
+      packageName = "assert-plus";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz";
+        sha1 = "f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525";
+      };
+    };
+    "assign-symbols-1.0.0" = {
+      name = "assign-symbols";
+      packageName = "assign-symbols";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz";
+        sha1 = "59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367";
+      };
+    };
+    "astral-regex-1.0.0" = {
+      name = "astral-regex";
+      packageName = "astral-regex";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz";
+        sha512 = "+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==";
+      };
+    };
+    "async-1.5.2" = {
+      name = "async";
+      packageName = "async";
+      version = "1.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async/-/async-1.5.2.tgz";
+        sha1 = "ec6a61ae56480c0c3cb241c95618e20892f9672a";
+      };
+    };
+    "async-3.2.0" = {
+      name = "async";
+      packageName = "async";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async/-/async-3.2.0.tgz";
+        sha512 = "TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==";
+      };
+    };
+    "asynckit-0.4.0" = {
+      name = "asynckit";
+      packageName = "asynckit";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz";
+        sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
+      };
+    };
+    "at-least-node-1.0.0" = {
+      name = "at-least-node";
+      packageName = "at-least-node";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz";
+        sha512 = "+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==";
+      };
+    };
+    "atob-2.1.2" = {
+      name = "atob";
+      packageName = "atob";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz";
+        sha512 = "Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==";
+      };
+    };
+    "atob-lite-2.0.0" = {
+      name = "atob-lite";
+      packageName = "atob-lite";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/atob-lite/-/atob-lite-2.0.0.tgz";
+        sha1 = "0fef5ad46f1bd7a8502c65727f0367d5ee43d696";
+      };
+    };
+    "aws-sign2-0.7.0" = {
+      name = "aws-sign2";
+      packageName = "aws-sign2";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz";
+        sha1 = "b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8";
+      };
+    };
+    "aws4-1.9.1" = {
+      name = "aws4";
+      packageName = "aws4";
+      version = "1.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz";
+        sha512 = "wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==";
+      };
+    };
+    "balanced-match-1.0.0" = {
+      name = "balanced-match";
+      packageName = "balanced-match";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz";
+        sha1 = "89b4d199ab2bee49de164ea02b89ce462d71b767";
+      };
+    };
+    "base-0.11.2" = {
+      name = "base";
+      packageName = "base";
+      version = "0.11.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/base/-/base-0.11.2.tgz";
+        sha512 = "5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==";
+      };
+    };
+    "base64-js-1.5.1" = {
+      name = "base64-js";
+      packageName = "base64-js";
+      version = "1.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz";
+        sha512 = "AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==";
+      };
+    };
+    "basic-auth-2.0.1" = {
+      name = "basic-auth";
+      packageName = "basic-auth";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz";
+        sha512 = "NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==";
+      };
+    };
+    "batch-0.6.1" = {
+      name = "batch";
+      packageName = "batch";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz";
+        sha1 = "dc34314f4e679318093fc760272525f94bf25c16";
+      };
+    };
+    "bcrypt-pbkdf-1.0.2" = {
+      name = "bcrypt-pbkdf";
+      packageName = "bcrypt-pbkdf";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz";
+        sha1 = "a4301d389b6a43f9b67ff3ca11a3f6637e360e9e";
+      };
+    };
+    "before-after-hook-2.1.0" = {
+      name = "before-after-hook";
+      packageName = "before-after-hook";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.1.0.tgz";
+        sha512 = "IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A==";
+      };
+    };
+    "bl-4.1.0" = {
+      name = "bl";
+      packageName = "bl";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz";
+        sha512 = "1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==";
+      };
+    };
+    "blob-util-2.0.2" = {
+      name = "blob-util";
+      packageName = "blob-util";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz";
+        sha512 = "T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==";
+      };
+    };
+    "bluebird-3.5.0" = {
+      name = "bluebird";
+      packageName = "bluebird";
+      version = "3.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.5.0.tgz";
+        sha1 = "791420d7f551eea2897453a8a77653f96606d67c";
+      };
+    };
+    "bluebird-3.7.1" = {
+      name = "bluebird";
+      packageName = "bluebird";
+      version = "3.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.7.1.tgz";
+        sha1 = "df70e302b471d7473489acf26a93d63b53f874de";
+      };
+    };
+    "bluebird-3.7.2" = {
+      name = "bluebird";
+      packageName = "bluebird";
+      version = "3.7.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz";
+        sha512 = "XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==";
+      };
+    };
+    "bottleneck-2.19.5" = {
+      name = "bottleneck";
+      packageName = "bottleneck";
+      version = "2.19.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz";
+        sha512 = "VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==";
+      };
+    };
+    "boxen-1.3.0" = {
+      name = "boxen";
+      packageName = "boxen";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz";
+        sha512 = "TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==";
+      };
+    };
+    "brace-expansion-1.1.11" = {
+      name = "brace-expansion";
+      packageName = "brace-expansion";
+      version = "1.1.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz";
+        sha512 = "iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==";
+      };
+    };
+    "braces-2.3.2" = {
+      name = "braces";
+      packageName = "braces";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz";
+        sha512 = "aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==";
+      };
+    };
+    "braces-3.0.2" = {
+      name = "braces";
+      packageName = "braces";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz";
+        sha1 = "3454e1a462ee8d599e236df336cd9ea4f8afe107";
+      };
+    };
+    "btoa-lite-1.0.0" = {
+      name = "btoa-lite";
+      packageName = "btoa-lite";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/btoa-lite/-/btoa-lite-1.0.0.tgz";
+        sha1 = "337766da15801210fdd956c22e9c6891ab9d0337";
+      };
+    };
+    "buffer-5.7.1" = {
+      name = "buffer";
+      packageName = "buffer";
+      version = "5.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz";
+        sha512 = "EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==";
+      };
+    };
+    "buffer-crc32-0.2.13" = {
+      name = "buffer-crc32";
+      packageName = "buffer-crc32";
+      version = "0.2.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz";
+        sha1 = "0d333e3f00eac50aa1454abd30ef8c2a5d9a7242";
+      };
+    };
+    "buffer-from-1.1.1" = {
+      name = "buffer-from";
+      packageName = "buffer-from";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz";
+        sha512 = "MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==";
+      };
+    };
+    "byte-size-6.2.0" = {
+      name = "byte-size";
+      packageName = "byte-size";
+      version = "6.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/byte-size/-/byte-size-6.2.0.tgz";
+        sha512 = "6EspYUCAPMc7E2rltBgKwhG+Cmk0pDm9zDtF1Awe2dczNUL3YpZ8mTs/dueOTS1hqGWBOatqef4jYMGjln7WmA==";
+      };
+    };
+    "bytes-3.0.0" = {
+      name = "bytes";
+      packageName = "bytes";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz";
+        sha1 = "d32815404d689699f85a4ea4fa8755dd13a96048";
+      };
+    };
+    "bytes-3.1.0" = {
+      name = "bytes";
+      packageName = "bytes";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz";
+        sha512 = "zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==";
+      };
+    };
+    "cache-base-1.0.1" = {
+      name = "cache-base";
+      packageName = "cache-base";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz";
+        sha512 = "AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==";
+      };
+    };
+    "cache-content-type-1.0.1" = {
+      name = "cache-content-type";
+      packageName = "cache-content-type";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz";
+        sha512 = "IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==";
+      };
+    };
+    "cacheable-lookup-2.0.1" = {
+      name = "cacheable-lookup";
+      packageName = "cacheable-lookup";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-2.0.1.tgz";
+        sha512 = "EMMbsiOTcdngM/K6gV/OxF2x0t07+vMOWxZNSCRQMjO2MY2nhZQ6OYhOOpyQrbhqsgtvKGI7hcq6xjnA92USjg==";
+      };
+    };
+    "cacheable-request-7.0.1" = {
+      name = "cacheable-request";
+      packageName = "cacheable-request";
+      version = "7.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.1.tgz";
+        sha512 = "lt0mJ6YAnsrBErpTMWeu5kl/tg9xMAWjavYTN6VQXM1A/teBITuNcccXsCxF0tDQQJf9DfAaX5O4e0zp0KlfZw==";
+      };
+    };
+    "cachedir-2.3.0" = {
+      name = "cachedir";
+      packageName = "cachedir";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz";
+        sha512 = "A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==";
+      };
+    };
+    "call-me-maybe-1.0.1" = {
+      name = "call-me-maybe";
+      packageName = "call-me-maybe";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz";
+        sha1 = "26d208ea89e37b5cbde60250a15f031c16a4d66b";
+      };
+    };
+    "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";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz";
+        sha1 = "06eb84f00eea413da86affefacbffb36093b3c50";
+      };
+    };
+    "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-2.1.1" = {
+      name = "camelcase";
+      packageName = "camelcase";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz";
+        sha1 = "7c1d16d679a1bbe59ca02cacecfb011e201f5a1f";
+      };
+    };
+    "camelcase-4.1.0" = {
+      name = "camelcase";
+      packageName = "camelcase";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz";
+        sha1 = "d545635be1e33c542649c69173e5de6acfae34dd";
+      };
+    };
+    "camelcase-5.3.1" = {
+      name = "camelcase";
+      packageName = "camelcase";
+      version = "5.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz";
+        sha512 = "L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==";
+      };
+    };
+    "camelcase-keys-4.2.0" = {
+      name = "camelcase-keys";
+      packageName = "camelcase-keys";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz";
+        sha1 = "a2aa5fb1af688758259c32c141426d78923b9b77";
+      };
+    };
+    "cardinal-2.1.1" = {
+      name = "cardinal";
+      packageName = "cardinal";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cardinal/-/cardinal-2.1.1.tgz";
+        sha1 = "7cc1055d822d212954d07b085dea251cc7bc5505";
+      };
+    };
+    "caseless-0.12.0" = {
+      name = "caseless";
+      packageName = "caseless";
+      version = "0.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz";
+        sha1 = "1b681c21ff84033c826543090689420d187151dc";
+      };
+    };
+    "chalk-1.1.3" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz";
+        sha1 = "a8115c55e4a702fe4d150abd3872822a7e09fc98";
+      };
+    };
+    "chalk-2.4.1" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "2.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz";
+        sha512 = "ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==";
+      };
+    };
+    "chalk-2.4.2" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "2.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz";
+        sha512 = "Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==";
+      };
+    };
+    "chalk-3.0.0" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz";
+        sha512 = "4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==";
+      };
+    };
+    "chalk-4.0.0" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz";
+        sha512 = "N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==";
+      };
+    };
+    "chalk-4.1.1" = {
+      name = "chalk";
+      packageName = "chalk";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz";
+        sha512 = "diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==";
+      };
+    };
+    "chardet-0.7.0" = {
+      name = "chardet";
+      packageName = "chardet";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz";
+        sha512 = "mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==";
+      };
+    };
+    "chdir-promise-0.4.0" = {
+      name = "chdir-promise";
+      packageName = "chdir-promise";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chdir-promise/-/chdir-promise-0.4.0.tgz";
+        sha1 = "46dc602ed193197470140f152459a4382cf79974";
+      };
+    };
+    "check-more-types-2.23.0" = {
+      name = "check-more-types";
+      packageName = "check-more-types";
+      version = "2.23.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/check-more-types/-/check-more-types-2.23.0.tgz";
+        sha1 = "6226264d30b1095aa1c0a5b874edbdd5d2d0a66f";
+      };
+    };
+    "check-more-types-2.24.0" = {
+      name = "check-more-types";
+      packageName = "check-more-types";
+      version = "2.24.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz";
+        sha1 = "1420ffb10fd444dcfc79b43891bbfffd32a84600";
+      };
+    };
+    "chownr-1.1.4" = {
+      name = "chownr";
+      packageName = "chownr";
+      version = "1.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz";
+        sha512 = "jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==";
+      };
+    };
+    "ci-info-2.0.0" = {
+      name = "ci-info";
+      packageName = "ci-info";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz";
+        sha512 = "5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==";
+      };
+    };
+    "ci-info-3.1.1" = {
+      name = "ci-info";
+      packageName = "ci-info";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ci-info/-/ci-info-3.1.1.tgz";
+        sha512 = "kdRWLBIJwdsYJWYJFtAFFYxybguqeF91qpZaggjG5Nf8QKdizFG2hjqvaTXbxFIcYbSaD74KpAXv6BSm17DHEQ==";
+      };
+    };
+    "class-utils-0.3.6" = {
+      name = "class-utils";
+      packageName = "class-utils";
+      version = "0.3.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz";
+        sha512 = "qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==";
+      };
+    };
+    "clean-stack-2.2.0" = {
+      name = "clean-stack";
+      packageName = "clean-stack";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz";
+        sha512 = "4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==";
+      };
+    };
+    "cli-boxes-1.0.0" = {
+      name = "cli-boxes";
+      packageName = "cli-boxes";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz";
+        sha1 = "4fa917c3e59c94a004cd61f8ee509da651687143";
+      };
+    };
+    "cli-cursor-1.0.2" = {
+      name = "cli-cursor";
+      packageName = "cli-cursor";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz";
+        sha1 = "64da3f7d56a54412e59794bd62dc35295e8f2987";
+      };
+    };
+    "cli-cursor-2.1.0" = {
+      name = "cli-cursor";
+      packageName = "cli-cursor";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz";
+        sha1 = "b35dac376479facc3e94747d41d0d0f5238ffcb5";
+      };
+    };
+    "cli-cursor-3.1.0" = {
+      name = "cli-cursor";
+      packageName = "cli-cursor";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz";
+        sha512 = "I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==";
+      };
+    };
+    "cli-table-0.3.1" = {
+      name = "cli-table";
+      packageName = "cli-table";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-table/-/cli-table-0.3.1.tgz";
+        sha1 = "f53b05266a8b1a0b934b3d0821e6e2dc5914ae23";
+      };
+    };
+    "cli-table3-0.6.0" = {
+      name = "cli-table3";
+      packageName = "cli-table3";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.0.tgz";
+        sha512 = "gnB85c3MGC7Nm9I/FkiasNBOKjOiO1RNuXXarQms37q4QMpWdlbBgD/VnOStA2faG1dpXMv31RFApjX1/QdgWQ==";
+      };
+    };
+    "cli-truncate-0.2.1" = {
+      name = "cli-truncate";
+      packageName = "cli-truncate";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz";
+        sha1 = "9f15cfbb0705005369216c626ac7d05ab90dd574";
+      };
+    };
+    "cli-width-2.2.1" = {
+      name = "cli-width";
+      packageName = "cli-width";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz";
+        sha512 = "GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==";
+      };
+    };
+    "clipboardy-1.2.3" = {
+      name = "clipboardy";
+      packageName = "clipboardy";
+      version = "1.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clipboardy/-/clipboardy-1.2.3.tgz";
+        sha512 = "2WNImOvCRe6r63Gk9pShfkwXsVtKCroMAevIbiae021mS850UkWPbevxsBz3tnvjZIEGvlwaqCPsw+4ulzNgJA==";
+      };
+    };
+    "cliui-3.2.0" = {
+      name = "cliui";
+      packageName = "cliui";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz";
+        sha1 = "120601537a916d29940f934da3b48d585a39213d";
+      };
+    };
+    "cliui-6.0.0" = {
+      name = "cliui";
+      packageName = "cliui";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz";
+        sha512 = "t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==";
+      };
+    };
+    "clone-response-1.0.2" = {
+      name = "clone-response";
+      packageName = "clone-response";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz";
+        sha1 = "d1dc973920314df67fbeb94223b4ee350239e96b";
+      };
+    };
+    "co-4.6.0" = {
+      name = "co";
+      packageName = "co";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/co/-/co-4.6.0.tgz";
+        sha1 = "6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184";
+      };
+    };
+    "co-body-6.1.0" = {
+      name = "co-body";
+      packageName = "co-body";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/co-body/-/co-body-6.1.0.tgz";
+        sha512 = "m7pOT6CdLN7FuXUcpuz/8lfQ/L77x8SchHCF4G0RBTJO20Wzmhn5Sp4/5WsKy8OSpifBSUrmg83qEqaDHdyFuQ==";
+      };
+    };
+    "code-point-at-1.1.0" = {
+      name = "code-point-at";
+      packageName = "code-point-at";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz";
+        sha1 = "0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77";
+      };
+    };
+    "collection-visit-1.0.0" = {
+      name = "collection-visit";
+      packageName = "collection-visit";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz";
+        sha1 = "4bc0373c164bc3291b4d368c829cf1a80a59dca0";
+      };
+    };
+    "colon-names-1.0.0" = {
+      name = "colon-names";
+      packageName = "colon-names";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/colon-names/-/colon-names-1.0.0.tgz";
+        sha512 = "9KSE6zbPFIMLUOTfeZyDyS8RUfpgo/1l9FD4ACJjzwz5mKBFuBspEed5lL7CXZRxSrba0YH/pMEASRtMj3O71Q==";
+      };
+    };
+    "color-convert-1.9.3" = {
+      name = "color-convert";
+      packageName = "color-convert";
+      version = "1.9.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz";
+        sha512 = "QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==";
+      };
+    };
+    "color-convert-2.0.1" = {
+      name = "color-convert";
+      packageName = "color-convert";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz";
+        sha512 = "RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==";
+      };
+    };
+    "color-name-1.1.3" = {
+      name = "color-name";
+      packageName = "color-name";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz";
+        sha1 = "a7d0558bd89c42f795dd42328f740831ca53bc25";
+      };
+    };
+    "color-name-1.1.4" = {
+      name = "color-name";
+      packageName = "color-name";
+      version = "1.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz";
+        sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==";
+      };
+    };
+    "colors-1.0.3" = {
+      name = "colors";
+      packageName = "colors";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz";
+        sha1 = "0433f44d809680fdeb60ed260f1b0c262e82a40b";
+      };
+    };
+    "colors-1.1.2" = {
+      name = "colors";
+      packageName = "colors";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz";
+        sha1 = "168a4701756b6a7f51a12ce0c97bfa28c084ed63";
+      };
+    };
+    "colors-1.4.0" = {
+      name = "colors";
+      packageName = "colors";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz";
+        sha512 = "a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==";
+      };
+    };
+    "combined-stream-1.0.8" = {
+      name = "combined-stream";
+      packageName = "combined-stream";
+      version = "1.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz";
+        sha1 = "c3d45a8b34fd730631a110a8a2520682b31d5a7f";
+      };
+    };
+    "command-line-args-5.1.1" = {
+      name = "command-line-args";
+      packageName = "command-line-args";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/command-line-args/-/command-line-args-5.1.1.tgz";
+        sha512 = "hL/eG8lrll1Qy1ezvkant+trihbGnaKaeEjj6Scyr3DN+RC7iQ5Rz84IeLERfAWDGo0HBSNAakczwgCilDXnWg==";
+      };
+    };
+    "command-line-usage-6.1.1" = {
+      name = "command-line-usage";
+      packageName = "command-line-usage";
+      version = "6.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/command-line-usage/-/command-line-usage-6.1.1.tgz";
+        sha512 = "F59pEuAR9o1SF/bD0dQBDluhpT4jJQNWUHEuVBqpDmCUo6gPjCi+m9fCWnWZVR/oG6cMTUms4h+3NPl74wGXvA==";
+      };
+    };
+    "commander-2.20.3" = {
+      name = "commander";
+      packageName = "commander";
+      version = "2.20.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz";
+        sha512 = "GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==";
+      };
+    };
+    "commander-2.9.0" = {
+      name = "commander";
+      packageName = "commander";
+      version = "2.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz";
+        sha1 = "9c99094176e12240cb22d6c5146098400fe0f7d4";
+      };
+    };
+    "commander-5.1.0" = {
+      name = "commander";
+      packageName = "commander";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz";
+        sha512 = "P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==";
+      };
+    };
+    "common-log-format-1.0.0" = {
+      name = "common-log-format";
+      packageName = "common-log-format";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/common-log-format/-/common-log-format-1.0.0.tgz";
+        sha512 = "fFn/WPNbsTCGTTwdCpZfVZSa5mgqMEkA0gMTRApFSlEsYN+9B2FPfiqch5FT+jsv5IV1RHV3GeZvCa7Qg+jssw==";
+      };
+    };
+    "common-tags-1.8.0" = {
+      name = "common-tags";
+      packageName = "common-tags";
+      version = "1.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/common-tags/-/common-tags-1.8.0.tgz";
+        sha512 = "6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==";
+      };
+    };
+    "compare-func-1.3.2" = {
+      name = "compare-func";
+      packageName = "compare-func";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/compare-func/-/compare-func-1.3.2.tgz";
+        sha1 = "99dd0ba457e1f9bc722b12c08ec33eeab31fa648";
+      };
+    };
+    "component-emitter-1.3.0" = {
+      name = "component-emitter";
+      packageName = "component-emitter";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz";
+        sha512 = "Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==";
+      };
+    };
+    "compressible-2.0.18" = {
+      name = "compressible";
+      packageName = "compressible";
+      version = "2.0.18";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz";
+        sha512 = "AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==";
+      };
+    };
+    "compression-1.7.3" = {
+      name = "compression";
+      packageName = "compression";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz";
+        sha512 = "HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==";
+      };
+    };
+    "concat-map-0.0.1" = {
+      name = "concat-map";
+      packageName = "concat-map";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz";
+        sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
+      };
+    };
+    "concat-stream-1.6.2" = {
+      name = "concat-stream";
+      packageName = "concat-stream";
+      version = "1.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz";
+        sha512 = "27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==";
+      };
+    };
+    "content-disposition-0.5.2" = {
+      name = "content-disposition";
+      packageName = "content-disposition";
+      version = "0.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz";
+        sha1 = "0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4";
+      };
+    };
+    "content-type-1.0.4" = {
+      name = "content-type";
+      packageName = "content-type";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz";
+        sha512 = "hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==";
+      };
+    };
+    "conventional-changelog-angular-5.0.6" = {
+      name = "conventional-changelog-angular";
+      packageName = "conventional-changelog-angular";
+      version = "5.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.6.tgz";
+        sha512 = "QDEmLa+7qdhVIv8sFZfVxU1VSyVvnXPsxq8Vam49mKUcO1Z8VTLEJk9uI21uiJUsnmm0I4Hrsdc9TgkOQo9WSA==";
+      };
+    };
+    "conventional-changelog-writer-4.0.11" = {
+      name = "conventional-changelog-writer";
+      packageName = "conventional-changelog-writer";
+      version = "4.0.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.0.11.tgz";
+        sha512 = "g81GQOR392I+57Cw3IyP1f+f42ME6aEkbR+L7v1FBBWolB0xkjKTeCWVguzRrp6UiT1O6gBpJbEy2eq7AnV1rw==";
+      };
+    };
+    "conventional-commits-filter-2.0.2" = {
+      name = "conventional-commits-filter";
+      packageName = "conventional-commits-filter";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.2.tgz";
+        sha512 = "WpGKsMeXfs21m1zIw4s9H5sys2+9JccTzpN6toXtxhpw2VNF2JUXwIakthKBy+LN4DvJm+TzWhxOMWOs1OFCFQ==";
+      };
+    };
+    "conventional-commits-parser-3.0.8" = {
+      name = "conventional-commits-parser";
+      packageName = "conventional-commits-parser";
+      version = "3.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.0.8.tgz";
+        sha512 = "YcBSGkZbYp7d+Cr3NWUeXbPDFUN6g3SaSIzOybi8bjHL5IJ5225OSCxJJ4LgziyEJ7AaJtE9L2/EU6H7Nt/DDQ==";
+      };
+    };
+    "cookies-0.8.0" = {
+      name = "cookies";
+      packageName = "cookies";
+      version = "0.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cookies/-/cookies-0.8.0.tgz";
+        sha512 = "8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow==";
+      };
+    };
+    "copy-descriptor-0.1.1" = {
+      name = "copy-descriptor";
+      packageName = "copy-descriptor";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz";
+        sha1 = "676f6eb3c39997c2ee1ac3a924fd6124748f578d";
+      };
+    };
+    "copy-to-2.0.1" = {
+      name = "copy-to";
+      packageName = "copy-to";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/copy-to/-/copy-to-2.0.1.tgz";
+        sha1 = "2680fbb8068a48d08656b6098092bdafc906f4a5";
+      };
+    };
+    "core-js-2.6.11" = {
+      name = "core-js";
+      packageName = "core-js";
+      version = "2.6.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz";
+        sha512 = "5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==";
+      };
+    };
+    "core-util-is-1.0.2" = {
+      name = "core-util-is";
+      packageName = "core-util-is";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz";
+        sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
+      };
+    };
+    "cosmiconfig-5.2.1" = {
+      name = "cosmiconfig";
+      packageName = "cosmiconfig";
+      version = "5.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz";
+        sha512 = "H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==";
+      };
+    };
+    "cosmiconfig-6.0.0" = {
+      name = "cosmiconfig";
+      packageName = "cosmiconfig";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz";
+        sha512 = "xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==";
+      };
+    };
+    "create-mixin-3.0.0" = {
+      name = "create-mixin";
+      packageName = "create-mixin";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/create-mixin/-/create-mixin-3.0.0.tgz";
+        sha512 = "LkdMqnWT9LaqBN4huqpUnMz56Yr1mVSoCduAd2xXefgH/YZP2sXCMAyztXjk4q8hTF/TlcDa+zQW2aTgGdjjKQ==";
+      };
+    };
+    "cross-spawn-5.1.0" = {
+      name = "cross-spawn";
+      packageName = "cross-spawn";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz";
+        sha1 = "e8bd0efee58fcff6f8f94510a0a554bbfa235449";
+      };
+    };
+    "cross-spawn-6.0.5" = {
+      name = "cross-spawn";
+      packageName = "cross-spawn";
+      version = "6.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz";
+        sha512 = "eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==";
+      };
+    };
+    "cross-spawn-7.0.2" = {
+      name = "cross-spawn";
+      packageName = "cross-spawn";
+      version = "7.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz";
+        sha512 = "PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==";
+      };
+    };
+    "cross-spawn-7.0.3" = {
+      name = "cross-spawn";
+      packageName = "cross-spawn";
+      version = "7.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz";
+        sha512 = "iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==";
+      };
+    };
+    "crypto-random-string-1.0.0" = {
+      name = "crypto-random-string";
+      packageName = "crypto-random-string";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz";
+        sha1 = "a230f64f568310e1498009940790ec99545bca7e";
+      };
+    };
+    "currently-unhandled-0.4.1" = {
+      name = "currently-unhandled";
+      packageName = "currently-unhandled";
+      version = "0.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz";
+        sha1 = "988df33feab191ef799a61369dd76c17adf957ea";
+      };
+    };
+    "cypress-7.3.0" = {
+      name = "cypress";
+      packageName = "cypress";
+      version = "7.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cypress/-/cypress-7.3.0.tgz";
+        sha512 = "aseRCH1tRVCrM6oEfja6fR/bo5l6e4SkHRRSATh27UeN4f/ANC8U7tGIulmrISJVy9xuOkOdbYKbUb2MNM+nrw==";
+      };
+    };
+    "d3-helpers-0.3.0" = {
+      name = "d3-helpers";
+      packageName = "d3-helpers";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/d3-helpers/-/d3-helpers-0.3.0.tgz";
+        sha1 = "4b31dce4a2121a77336384574d893fbed5fb293d";
+      };
+    };
+    "dashdash-1.14.1" = {
+      name = "dashdash";
+      packageName = "dashdash";
+      version = "1.14.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz";
+        sha1 = "853cfa0f7cbe2fed5de20326b8dd581035f6e2f0";
+      };
+    };
+    "date-fns-1.30.1" = {
+      name = "date-fns";
+      packageName = "date-fns";
+      version = "1.30.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz";
+        sha512 = "hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==";
+      };
+    };
+    "dateformat-3.0.3" = {
+      name = "dateformat";
+      packageName = "dateformat";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz";
+        sha512 = "jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==";
+      };
+    };
+    "dayjs-1.10.4" = {
+      name = "dayjs";
+      packageName = "dayjs";
+      version = "1.10.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dayjs/-/dayjs-1.10.4.tgz";
+        sha512 = "RI/Hh4kqRc1UKLOAf/T5zdMMX5DQIlDxwUe3wSyMMnEbGunnpENCdbUgM+dW7kXidZqCttBrmw7BhN4TMddkCw==";
+      };
+    };
+    "debug-2.6.3" = {
+      name = "debug";
+      packageName = "debug";
+      version = "2.6.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-2.6.3.tgz";
+        sha1 = "0f7eb8c30965ec08c72accfa0130c8b79984141d";
+      };
+    };
+    "debug-2.6.9" = {
+      name = "debug";
+      packageName = "debug";
+      version = "2.6.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz";
+        sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==";
+      };
+    };
+    "debug-3.1.0" = {
+      name = "debug";
+      packageName = "debug";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz";
+        sha512 = "OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==";
+      };
+    };
+    "debug-3.2.7" = {
+      name = "debug";
+      packageName = "debug";
+      version = "3.2.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz";
+        sha512 = "CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==";
+      };
+    };
+    "debug-4.1.1" = {
+      name = "debug";
+      packageName = "debug";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz";
+        sha512 = "pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==";
+      };
+    };
+    "debug-4.3.1" = {
+      name = "debug";
+      packageName = "debug";
+      version = "4.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz";
+        sha512 = "doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==";
+      };
+    };
+    "debug-4.3.2" = {
+      name = "debug";
+      packageName = "debug";
+      version = "4.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz";
+        sha512 = "mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==";
+      };
+    };
+    "decamelize-1.2.0" = {
+      name = "decamelize";
+      packageName = "decamelize";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz";
+        sha1 = "f6534d15148269b20352e7bee26f501f9a191290";
+      };
+    };
+    "decamelize-keys-1.1.0" = {
+      name = "decamelize-keys";
+      packageName = "decamelize-keys";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz";
+        sha1 = "d171a87933252807eb3cb61dc1c1445d078df2d9";
+      };
+    };
+    "decode-uri-component-0.2.0" = {
+      name = "decode-uri-component";
+      packageName = "decode-uri-component";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz";
+        sha1 = "eb3913333458775cb84cd1a1fae062106bb87545";
+      };
+    };
+    "decompress-response-5.0.0" = {
+      name = "decompress-response";
+      packageName = "decompress-response";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decompress-response/-/decompress-response-5.0.0.tgz";
+        sha512 = "TLZWWybuxWgoW7Lykv+gq9xvzOsUjQ9tF09Tj6NSTYGMTCHNXzrPnD6Hi+TgZq19PyTAGH4Ll/NIM/eTGglnMw==";
+      };
+    };
+    "deep-equal-1.0.1" = {
+      name = "deep-equal";
+      packageName = "deep-equal";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz";
+        sha1 = "f5d260292b660e084eff4cdbc9f08ad3247448b5";
+      };
+    };
+    "deep-extend-0.6.0" = {
+      name = "deep-extend";
+      packageName = "deep-extend";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz";
+        sha512 = "LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==";
+      };
+    };
+    "deep-is-0.1.3" = {
+      name = "deep-is";
+      packageName = "deep-is";
+      version = "0.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz";
+        sha1 = "b369d6fb5dbc13eecf524f91b070feedc357cf34";
+      };
+    };
+    "defer-to-connect-2.0.1" = {
+      name = "defer-to-connect";
+      packageName = "defer-to-connect";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz";
+        sha512 = "4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==";
+      };
+    };
+    "define-properties-1.1.3" = {
+      name = "define-properties";
+      packageName = "define-properties";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz";
+        sha512 = "3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==";
+      };
+    };
+    "define-property-0.2.5" = {
+      name = "define-property";
+      packageName = "define-property";
+      version = "0.2.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz";
+        sha1 = "c35b1ef918ec3c990f9a5bc57be04aacec5c8116";
+      };
+    };
+    "define-property-1.0.0" = {
+      name = "define-property";
+      packageName = "define-property";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz";
+        sha1 = "769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6";
+      };
+    };
+    "define-property-2.0.2" = {
+      name = "define-property";
+      packageName = "define-property";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz";
+        sha512 = "jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==";
+      };
+    };
+    "delayed-stream-1.0.0" = {
+      name = "delayed-stream";
+      packageName = "delayed-stream";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz";
+        sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
+      };
+    };
+    "delegates-1.0.0" = {
+      name = "delegates";
+      packageName = "delegates";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz";
+        sha1 = "84c6e159b81904fdca59a0ef44cd870d31250f9a";
+      };
+    };
+    "depd-1.1.2" = {
+      name = "depd";
+      packageName = "depd";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz";
+        sha1 = "9bcd52e14c097763e749b274c4346ed2e560b5a9";
+      };
+    };
+    "depd-2.0.0" = {
+      name = "depd";
+      packageName = "depd";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz";
+        sha512 = "g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==";
+      };
+    };
+    "deprecation-2.3.1" = {
+      name = "deprecation";
+      packageName = "deprecation";
+      version = "2.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz";
+        sha512 = "xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==";
+      };
+    };
+    "destroy-1.0.4" = {
+      name = "destroy";
+      packageName = "destroy";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz";
+        sha1 = "978857442c44749e4206613e37946205826abd80";
+      };
+    };
+    "detect-indent-6.0.0" = {
+      name = "detect-indent";
+      packageName = "detect-indent";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detect-indent/-/detect-indent-6.0.0.tgz";
+        sha512 = "oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA==";
+      };
+    };
+    "detect-newline-3.1.0" = {
+      name = "detect-newline";
+      packageName = "detect-newline";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz";
+        sha512 = "TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==";
+      };
+    };
+    "devtools-protocol-0.0.847576" = {
+      name = "devtools-protocol";
+      packageName = "devtools-protocol";
+      version = "0.0.847576";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.847576.tgz";
+        sha512 = "0M8kobnSQE0Jmly7Mhbeq0W/PpZfnuK+WjN2ZRVPbGqYwCHCioAVp84H0TcLimgECcN5H976y5QiXMGBC9JKmg==";
+      };
+    };
+    "diff-match-patch-1.0.4" = {
+      name = "diff-match-patch";
+      packageName = "diff-match-patch";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/diff-match-patch/-/diff-match-patch-1.0.4.tgz";
+        sha512 = "Uv3SW8bmH9nAtHKaKSanOQmj2DnlH65fUpcrMdfdaOxUG02QQ4YGZ8AE7kKOMisF7UqvOlGKVYWRvezdncW9lg==";
+      };
+    };
+    "dir-glob-2.2.2" = {
+      name = "dir-glob";
+      packageName = "dir-glob";
+      version = "2.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz";
+        sha512 = "f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==";
+      };
+    };
+    "dir-glob-3.0.1" = {
+      name = "dir-glob";
+      packageName = "dir-glob";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz";
+        sha1 = "56dbf73d992a4a93ba1584f4534063fd2e41717f";
+      };
+    };
+    "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==";
+      };
+    };
+    "dot-prop-3.0.0" = {
+      name = "dot-prop";
+      packageName = "dot-prop";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dot-prop/-/dot-prop-3.0.0.tgz";
+        sha1 = "1b708af094a49c9a0e7dbcad790aba539dac1177";
+      };
+    };
+    "duplexer-0.1.1" = {
+      name = "duplexer";
+      packageName = "duplexer";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz";
+        sha1 = "ace6ff808c1ce66b57d1ebf97977acb02334cfc1";
+      };
+    };
+    "duplexer2-0.1.4" = {
+      name = "duplexer2";
+      packageName = "duplexer2";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz";
+        sha1 = "8b12dab878c0d69e3e7891051662a32fc6bddcc1";
+      };
+    };
+    "duplexer3-0.1.4" = {
+      name = "duplexer3";
+      packageName = "duplexer3";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz";
+        sha1 = "ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2";
+      };
+    };
+    "ecc-jsbn-0.1.2" = {
+      name = "ecc-jsbn";
+      packageName = "ecc-jsbn";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz";
+        sha1 = "3a83a904e54353287874c564b7549386849a98c9";
+      };
+    };
+    "ee-first-1.1.1" = {
+      name = "ee-first";
+      packageName = "ee-first";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz";
+        sha1 = "590c61156b0ae2f4f0255732a158b266bc56b21d";
+      };
+    };
+    "elegant-spinner-1.0.1" = {
+      name = "elegant-spinner";
+      packageName = "elegant-spinner";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz";
+        sha1 = "db043521c95d7e303fd8f345bedc3349cfb0729e";
+      };
+    };
+    "emoji-regex-7.0.3" = {
+      name = "emoji-regex";
+      packageName = "emoji-regex";
+      version = "7.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz";
+        sha512 = "CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==";
+      };
+    };
+    "emoji-regex-8.0.0" = {
+      name = "emoji-regex";
+      packageName = "emoji-regex";
+      version = "8.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz";
+        sha512 = "MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==";
+      };
+    };
+    "encodeurl-1.0.2" = {
+      name = "encodeurl";
+      packageName = "encodeurl";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz";
+        sha1 = "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59";
+      };
+    };
+    "end-of-stream-1.4.4" = {
+      name = "end-of-stream";
+      packageName = "end-of-stream";
+      version = "1.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz";
+        sha512 = "+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==";
+      };
+    };
+    "env-ci-4.5.2" = {
+      name = "env-ci";
+      packageName = "env-ci";
+      version = "4.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/env-ci/-/env-ci-4.5.2.tgz";
+        sha512 = "lS+edpNp2+QXEPkx6raEMIjKxKKWnJ4+VWzovYJ2NLYiJAYenSAXotFfVdgaFxdbVnvAbUI8epQDa1u12ERxfQ==";
+      };
+    };
+    "error-ex-1.3.2" = {
+      name = "error-ex";
+      packageName = "error-ex";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz";
+        sha512 = "7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==";
+      };
+    };
+    "es-abstract-1.17.5" = {
+      name = "es-abstract";
+      packageName = "es-abstract";
+      version = "1.17.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz";
+        sha512 = "BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==";
+      };
+    };
+    "es-to-primitive-1.2.1" = {
+      name = "es-to-primitive";
+      packageName = "es-to-primitive";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz";
+        sha512 = "QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==";
+      };
+    };
+    "escape-html-1.0.3" = {
+      name = "escape-html";
+      packageName = "escape-html";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz";
+        sha1 = "0258eae4d3d0c0974de1c169188ef0051d1d1988";
+      };
+    };
+    "escape-string-regexp-1.0.5" = {
+      name = "escape-string-regexp";
+      packageName = "escape-string-regexp";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
+        sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4";
+      };
+    };
+    "eslint-7.0.0" = {
+      name = "eslint";
+      packageName = "eslint";
+      version = "7.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint/-/eslint-7.0.0.tgz";
+        sha512 = "qY1cwdOxMONHJfGqw52UOpZDeqXy8xmD0u8CT6jIstil72jkhURC704W8CFyTPDPllz4z4lu0Ql1+07PG/XdIg==";
+      };
+    };
+    "eslint-plugin-cypress-2.8.1" = {
+      name = "eslint-plugin-cypress";
+      packageName = "eslint-plugin-cypress";
+      version = "2.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-cypress/-/eslint-plugin-cypress-2.8.1.tgz";
+        sha512 = "jDpcP+MmjmqQO/x3bwIXgp4cl7Q66RYS5/IsuOQP4Qo2sEqE3DI8tTxBQ1EhnV5qEDd2Z2TYHR+5vYI6oCN4uw==";
+      };
+    };
+    "eslint-plugin-json-format-2.0.1" = {
+      name = "eslint-plugin-json-format";
+      packageName = "eslint-plugin-json-format";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-json-format/-/eslint-plugin-json-format-2.0.1.tgz";
+        sha512 = "eWT0sNqIEYzKqbej2dvz+/oQ4JQxthE3i+izjInIdfbsPfVgBtiWbmagkgKStje0LJqo9FATx1LWl6xcuxqsBQ==";
+      };
+    };
+    "eslint-plugin-mocha-5.3.0" = {
+      name = "eslint-plugin-mocha";
+      packageName = "eslint-plugin-mocha";
+      version = "5.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-5.3.0.tgz";
+        sha512 = "3uwlJVLijjEmBeNyH60nzqgA1gacUWLUmcKV8PIGNvj1kwP/CTgAWQHn2ayyJVwziX+KETkr9opNwT1qD/RZ5A==";
+      };
+    };
+    "eslint-rule-composer-0.3.0" = {
+      name = "eslint-rule-composer";
+      packageName = "eslint-rule-composer";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz";
+        sha512 = "bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==";
+      };
+    };
+    "eslint-scope-5.0.0" = {
+      name = "eslint-scope";
+      packageName = "eslint-scope";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz";
+        sha512 = "oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==";
+      };
+    };
+    "eslint-utils-2.0.0" = {
+      name = "eslint-utils";
+      packageName = "eslint-utils";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.0.0.tgz";
+        sha512 = "0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA==";
+      };
+    };
+    "eslint-visitor-keys-1.1.0" = {
+      name = "eslint-visitor-keys";
+      packageName = "eslint-visitor-keys";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz";
+        sha512 = "8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==";
+      };
+    };
+    "espree-7.0.0" = {
+      name = "espree";
+      packageName = "espree";
+      version = "7.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/espree/-/espree-7.0.0.tgz";
+        sha512 = "/r2XEx5Mw4pgKdyb7GNLQNsu++asx/dltf/CI8RFi9oGHxmQFgvLbc5Op4U6i8Oaj+kdslhJtVlEZeAqH5qOTw==";
+      };
+    };
+    "esprima-4.0.1" = {
+      name = "esprima";
+      packageName = "esprima";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz";
+        sha512 = "eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==";
+      };
+    };
+    "esquery-1.3.1" = {
+      name = "esquery";
+      packageName = "esquery";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz";
+        sha512 = "olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==";
+      };
+    };
+    "esrecurse-4.2.1" = {
+      name = "esrecurse";
+      packageName = "esrecurse";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz";
+        sha512 = "64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==";
+      };
+    };
+    "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.1.0" = {
+      name = "estraverse";
+      packageName = "estraverse";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz";
+        sha512 = "FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==";
+      };
+    };
+    "esutils-2.0.3" = {
+      name = "esutils";
+      packageName = "esutils";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz";
+        sha512 = "kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==";
+      };
+    };
+    "etag-1.8.1" = {
+      name = "etag";
+      packageName = "etag";
+      version = "1.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz";
+        sha1 = "41ae2eeb65efa62268aebfea83ac7d79299b0887";
+      };
+    };
+    "event-stream-3.3.4" = {
+      name = "event-stream";
+      packageName = "event-stream";
+      version = "3.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz";
+        sha1 = "4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571";
+      };
+    };
+    "eventemitter2-6.4.4" = {
+      name = "eventemitter2";
+      packageName = "eventemitter2";
+      version = "6.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.4.tgz";
+        sha512 = "HLU3NDY6wARrLCEwyGKRBvuWYyvW6mHYv72SJJAH3iJN3a6eVUvkjFkcxah1bcTgGVBBrFdIopBJPhCQFMLyXw==";
+      };
+    };
+    "execa-0.7.0" = {
+      name = "execa";
+      packageName = "execa";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz";
+        sha1 = "944becd34cc41ee32a63a9faf27ad5a65fc59777";
+      };
+    };
+    "execa-0.8.0" = {
+      name = "execa";
+      packageName = "execa";
+      version = "0.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz";
+        sha1 = "d8d76bbc1b55217ed190fd6dd49d3c774ecfc8da";
+      };
+    };
+    "execa-1.0.0" = {
+      name = "execa";
+      packageName = "execa";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz";
+        sha512 = "adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==";
+      };
+    };
+    "execa-2.0.5" = {
+      name = "execa";
+      packageName = "execa";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-2.0.5.tgz";
+        sha512 = "SwmwZZyJjflcqLSgllk4EQlMLst2p9muyzwNugKGFlpAz6rZ7M+s2nBR97GAq4Vzjwx2y9rcMcmqzojwN+xwNA==";
+      };
+    };
+    "execa-2.1.0" = {
+      name = "execa";
+      packageName = "execa";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-2.1.0.tgz";
+        sha1 = "e5d3ecd837d2a60ec50f3da78fd39767747bbe99";
+      };
+    };
+    "execa-3.4.0" = {
+      name = "execa";
+      packageName = "execa";
+      version = "3.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz";
+        sha512 = "r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==";
+      };
+    };
+    "execa-4.1.0" = {
+      name = "execa";
+      packageName = "execa";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz";
+        sha512 = "j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==";
+      };
+    };
+    "executable-4.1.1" = {
+      name = "executable";
+      packageName = "executable";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz";
+        sha512 = "8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==";
+      };
+    };
+    "exit-hook-1.1.1" = {
+      name = "exit-hook";
+      packageName = "exit-hook";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz";
+        sha1 = "f05ca233b48c05d54fff07765df8507e95c02ff8";
+      };
+    };
+    "expand-brackets-2.1.4" = {
+      name = "expand-brackets";
+      packageName = "expand-brackets";
+      version = "2.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz";
+        sha1 = "b77735e315ce30f6b6eff0f83b04151a22449622";
+      };
+    };
+    "extend-3.0.2" = {
+      name = "extend";
+      packageName = "extend";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz";
+        sha1 = "f8b1136b4071fbd8eb140aff858b1019ec2915fa";
+      };
+    };
+    "extend-shallow-2.0.1" = {
+      name = "extend-shallow";
+      packageName = "extend-shallow";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz";
+        sha1 = "51af7d614ad9a9f610ea1bafbb989d6b1c56890f";
+      };
+    };
+    "extend-shallow-3.0.2" = {
+      name = "extend-shallow";
+      packageName = "extend-shallow";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz";
+        sha1 = "26a71aaf073b39fb2127172746131c2704028db8";
+      };
+    };
+    "external-editor-3.1.0" = {
+      name = "external-editor";
+      packageName = "external-editor";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz";
+        sha512 = "hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==";
+      };
+    };
+    "extglob-2.0.4" = {
+      name = "extglob";
+      packageName = "extglob";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz";
+        sha512 = "Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==";
+      };
+    };
+    "extract-zip-1.7.0" = {
+      name = "extract-zip";
+      packageName = "extract-zip";
+      version = "1.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz";
+        sha512 = "xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==";
+      };
+    };
+    "extract-zip-2.0.1" = {
+      name = "extract-zip";
+      packageName = "extract-zip";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz";
+        sha512 = "GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==";
+      };
+    };
+    "extsprintf-1.3.0" = {
+      name = "extsprintf";
+      packageName = "extsprintf";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz";
+        sha1 = "96918440e3041a7a414f8c52e3c574eb3c3e1e05";
+      };
+    };
+    "fast-deep-equal-2.0.1" = {
+      name = "fast-deep-equal";
+      packageName = "fast-deep-equal";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz";
+        sha1 = "7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49";
+      };
+    };
+    "fast-deep-equal-3.1.1" = {
+      name = "fast-deep-equal";
+      packageName = "fast-deep-equal";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz";
+        sha512 = "8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==";
+      };
+    };
+    "fast-glob-2.2.7" = {
+      name = "fast-glob";
+      packageName = "fast-glob";
+      version = "2.2.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz";
+        sha512 = "g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==";
+      };
+    };
+    "fast-glob-3.2.2" = {
+      name = "fast-glob";
+      packageName = "fast-glob";
+      version = "3.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.2.tgz";
+        sha512 = "UDV82o4uQyljznxwMxyVRJgZZt3O5wENYojjzbaGEGZgeOxkLFf+V4cnUD+krzb2F72E18RhamkMZ7AdeggF7A==";
+      };
+    };
+    "fast-json-stable-stringify-2.1.0" = {
+      name = "fast-json-stable-stringify";
+      packageName = "fast-json-stable-stringify";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz";
+        sha512 = "lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==";
+      };
+    };
+    "fast-levenshtein-2.0.6" = {
+      name = "fast-levenshtein";
+      packageName = "fast-levenshtein";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz";
+        sha1 = "3d8a5c66883a16a30ca8643e851f19baa7797917";
+      };
+    };
+    "fast-url-parser-1.1.3" = {
+      name = "fast-url-parser";
+      packageName = "fast-url-parser";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz";
+        sha1 = "f4af3ea9f34d8a271cf58ad2b3759f431f0b318d";
+      };
+    };
+    "fastq-1.7.0" = {
+      name = "fastq";
+      packageName = "fastq";
+      version = "1.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fastq/-/fastq-1.7.0.tgz";
+        sha512 = "YOadQRnHd5q6PogvAR/x62BGituF2ufiEA6s8aavQANw5YKHERI4AREboX6KotzP8oX2klxYF2wcV/7bn1clfQ==";
+      };
+    };
+    "fd-slicer-1.1.0" = {
+      name = "fd-slicer";
+      packageName = "fd-slicer";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz";
+        sha1 = "25c7c89cb1f9077f8891bbe61d8f390eae256f1e";
+      };
+    };
+    "figures-1.7.0" = {
+      name = "figures";
+      packageName = "figures";
+      version = "1.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz";
+        sha1 = "cbe1e3affcf1cd44b80cadfed28dc793a9701d2e";
+      };
+    };
+    "figures-2.0.0" = {
+      name = "figures";
+      packageName = "figures";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz";
+        sha1 = "3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962";
+      };
+    };
+    "figures-3.2.0" = {
+      name = "figures";
+      packageName = "figures";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz";
+        sha512 = "yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==";
+      };
+    };
+    "file-entry-cache-5.0.1" = {
+      name = "file-entry-cache";
+      packageName = "file-entry-cache";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz";
+        sha512 = "bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==";
+      };
+    };
+    "fill-range-4.0.0" = {
+      name = "fill-range";
+      packageName = "fill-range";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz";
+        sha1 = "d544811d428f98eb06a63dc402d2403c328c38f7";
+      };
+    };
+    "fill-range-7.0.1" = {
+      name = "fill-range";
+      packageName = "fill-range";
+      version = "7.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz";
+        sha1 = "1919a6a7c75fe38b2c7c77e5198535da9acdda40";
+      };
+    };
+    "find-replace-3.0.0" = {
+      name = "find-replace";
+      packageName = "find-replace";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz";
+        sha512 = "6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==";
+      };
+    };
+    "find-up-2.1.0" = {
+      name = "find-up";
+      packageName = "find-up";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz";
+        sha1 = "45d1b7e506c717ddd482775a2b77920a3c0c57a7";
+      };
+    };
+    "find-up-3.0.0" = {
+      name = "find-up";
+      packageName = "find-up";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz";
+        sha512 = "1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==";
+      };
+    };
+    "find-up-4.1.0" = {
+      name = "find-up";
+      packageName = "find-up";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz";
+        sha512 = "PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==";
+      };
+    };
+    "find-versions-3.2.0" = {
+      name = "find-versions";
+      packageName = "find-versions";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz";
+        sha512 = "P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==";
+      };
+    };
+    "flat-cache-2.0.1" = {
+      name = "flat-cache";
+      packageName = "flat-cache";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz";
+        sha512 = "LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==";
+      };
+    };
+    "flatted-2.0.2" = {
+      name = "flatted";
+      packageName = "flatted";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz";
+        sha512 = "r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==";
+      };
+    };
+    "for-in-1.0.2" = {
+      name = "for-in";
+      packageName = "for-in";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz";
+        sha1 = "81068d295a8142ec0ac726c6e2200c30fb6d5e80";
+      };
+    };
+    "forever-agent-0.6.1" = {
+      name = "forever-agent";
+      packageName = "forever-agent";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz";
+        sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91";
+      };
+    };
+    "form-data-2.3.3" = {
+      name = "form-data";
+      packageName = "form-data";
+      version = "2.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz";
+        sha1 = "dcce52c05f644f298c6a7ab936bd724ceffbf3a6";
+      };
+    };
+    "fragment-cache-0.2.1" = {
+      name = "fragment-cache";
+      packageName = "fragment-cache";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz";
+        sha1 = "4290fad27f13e89be7f33799c6bc5a0abfff0d19";
+      };
+    };
+    "fresh-0.5.2" = {
+      name = "fresh";
+      packageName = "fresh";
+      version = "0.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz";
+        sha1 = "3d8cadd90d976569fa835ab1f8e4b23a105605a7";
+      };
+    };
+    "from-0.1.7" = {
+      name = "from";
+      packageName = "from";
+      version = "0.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/from/-/from-0.1.7.tgz";
+        sha1 = "83c60afc58b9c56997007ed1a768b3ab303a44fe";
+      };
+    };
+    "from2-2.3.0" = {
+      name = "from2";
+      packageName = "from2";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz";
+        sha1 = "8bfb5502bde4a4d36cfdeea007fcca21d7e382af";
+      };
+    };
+    "fs-constants-1.0.0" = {
+      name = "fs-constants";
+      packageName = "fs-constants";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz";
+        sha512 = "y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==";
+      };
+    };
+    "fs-extra-8.1.0" = {
+      name = "fs-extra";
+      packageName = "fs-extra";
+      version = "8.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz";
+        sha512 = "yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==";
+      };
+    };
+    "fs-extra-9.1.0" = {
+      name = "fs-extra";
+      packageName = "fs-extra";
+      version = "9.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz";
+        sha512 = "hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==";
+      };
+    };
+    "fs.realpath-1.0.0" = {
+      name = "fs.realpath";
+      packageName = "fs.realpath";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz";
+        sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f";
+      };
+    };
+    "function-bind-1.1.1" = {
+      name = "function-bind";
+      packageName = "function-bind";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz";
+        sha512 = "yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==";
+      };
+    };
+    "functional-red-black-tree-1.0.1" = {
+      name = "functional-red-black-tree";
+      packageName = "functional-red-black-tree";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz";
+        sha1 = "1b0ab3bd553b2a0d6399d29c0e3ea0b252078327";
+      };
+    };
+    "get-caller-file-2.0.5" = {
+      name = "get-caller-file";
+      packageName = "get-caller-file";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz";
+        sha512 = "DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==";
+      };
+    };
+    "get-stdin-6.0.0" = {
+      name = "get-stdin";
+      packageName = "get-stdin";
+      version = "6.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz";
+        sha512 = "jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==";
+      };
+    };
+    "get-stream-3.0.0" = {
+      name = "get-stream";
+      packageName = "get-stream";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz";
+        sha1 = "8e943d1358dc37555054ecbe2edb05aa174ede14";
+      };
+    };
+    "get-stream-4.1.0" = {
+      name = "get-stream";
+      packageName = "get-stream";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz";
+        sha512 = "GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==";
+      };
+    };
+    "get-stream-5.1.0" = {
+      name = "get-stream";
+      packageName = "get-stream";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz";
+        sha512 = "EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==";
+      };
+    };
+    "get-stream-5.2.0" = {
+      name = "get-stream";
+      packageName = "get-stream";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz";
+        sha512 = "nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==";
+      };
+    };
+    "get-value-2.0.6" = {
+      name = "get-value";
+      packageName = "get-value";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz";
+        sha1 = "dc15ca1c672387ca76bd37ac0a395ba2042a2c28";
+      };
+    };
+    "getos-3.2.1" = {
+      name = "getos";
+      packageName = "getos";
+      version = "3.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz";
+        sha512 = "U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==";
+      };
+    };
+    "getpass-0.1.7" = {
+      name = "getpass";
+      packageName = "getpass";
+      version = "0.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz";
+        sha1 = "5eff8e3e684d569ae4cb2b1282604e8ba62149fa";
+      };
+    };
+    "ggit-1.15.1" = {
+      name = "ggit";
+      packageName = "ggit";
+      version = "1.15.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ggit/-/ggit-1.15.1.tgz";
+        sha1 = "80d552e8e1712c9805fe5ba1cf119a4e7e3bd998";
+      };
+    };
+    "git-hooks-list-1.0.3" = {
+      name = "git-hooks-list";
+      packageName = "git-hooks-list";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/git-hooks-list/-/git-hooks-list-1.0.3.tgz";
+        sha512 = "Y7wLWcrLUXwk2noSka166byGCvhMtDRpgHdzCno1UQv/n/Hegp++a2xBWJL1lJarnKD3SWaljD+0z1ztqxuKyQ==";
+      };
+    };
+    "git-log-parser-1.2.0" = {
+      name = "git-log-parser";
+      packageName = "git-log-parser";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/git-log-parser/-/git-log-parser-1.2.0.tgz";
+        sha1 = "2e6a4c1b13fc00028207ba795a7ac31667b9fd4a";
+      };
+    };
+    "glob-7.1.1" = {
+      name = "glob";
+      packageName = "glob";
+      version = "7.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz";
+        sha1 = "805211df04faaf1c63a3600306cdf5ade50b2ec8";
+      };
+    };
+    "glob-7.1.6" = {
+      name = "glob";
+      packageName = "glob";
+      version = "7.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz";
+        sha512 = "LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==";
+      };
+    };
+    "glob-parent-3.1.0" = {
+      name = "glob-parent";
+      packageName = "glob-parent";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz";
+        sha1 = "9e6af6299d8d3bd2bd40430832bd113df906c5ae";
+      };
+    };
+    "glob-parent-5.1.1" = {
+      name = "glob-parent";
+      packageName = "glob-parent";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz";
+        sha512 = "FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==";
+      };
+    };
+    "glob-to-regexp-0.3.0" = {
+      name = "glob-to-regexp";
+      packageName = "glob-to-regexp";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz";
+        sha1 = "8c5a1494d2066c570cc3bfe4496175acc4d502ab";
+      };
+    };
+    "global-dirs-3.0.0" = {
+      name = "global-dirs";
+      packageName = "global-dirs";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz";
+        sha512 = "v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==";
+      };
+    };
+    "globals-11.12.0" = {
+      name = "globals";
+      packageName = "globals";
+      version = "11.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz";
+        sha512 = "WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==";
+      };
+    };
+    "globals-12.4.0" = {
+      name = "globals";
+      packageName = "globals";
+      version = "12.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz";
+        sha512 = "BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==";
+      };
+    };
+    "globby-10.0.0" = {
+      name = "globby";
+      packageName = "globby";
+      version = "10.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globby/-/globby-10.0.0.tgz";
+        sha512 = "3LifW9M4joGZasyYPz2A1U74zbC/45fvpXUvO/9KbSa+VV0aGZarWkfdgKyR9sExNP0t0x0ss/UMJpNpcaTspw==";
+      };
+    };
+    "globby-10.0.2" = {
+      name = "globby";
+      packageName = "globby";
+      version = "10.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz";
+        sha512 = "7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==";
+      };
+    };
+    "globby-9.1.0" = {
+      name = "globby";
+      packageName = "globby";
+      version = "9.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/globby/-/globby-9.1.0.tgz";
+        sha512 = "VtYjhHr7ncls724Of5W6Kaahz0ag7dB4G62/2HsN+xEKG6SrPzM1AJMerGxQTwJGnN9reeyxdvXbuZYpfssCvg==";
+      };
+    };
+    "got-10.7.0" = {
+      name = "got";
+      packageName = "got";
+      version = "10.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/got/-/got-10.7.0.tgz";
+        sha512 = "aWTDeNw9g+XqEZNcTjMMZSy7B7yE9toWOFYip7ofFTLleJhvZwUxxTxkTpKvF+p1SAA4VHmuEy7PiHTHyq8tJg==";
+      };
+    };
+    "graceful-fs-4.2.3" = {
+      name = "graceful-fs";
+      packageName = "graceful-fs";
+      version = "4.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz";
+        sha512 = "a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==";
+      };
+    };
+    "graceful-readlink-1.0.1" = {
+      name = "graceful-readlink";
+      packageName = "graceful-readlink";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz";
+        sha1 = "4cafad76bc62f02fa039b2f94e9a3dd3a391a725";
+      };
+    };
+    "handlebars-4.7.6" = {
+      name = "handlebars";
+      packageName = "handlebars";
+      version = "4.7.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz";
+        sha512 = "1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==";
+      };
+    };
+    "har-schema-2.0.0" = {
+      name = "har-schema";
+      packageName = "har-schema";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz";
+        sha1 = "a94c2224ebcac04782a0d9035521f24735b7ec92";
+      };
+    };
+    "har-validator-5.1.3" = {
+      name = "har-validator";
+      packageName = "har-validator";
+      version = "5.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz";
+        sha512 = "sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==";
+      };
+    };
+    "has-1.0.3" = {
+      name = "has";
+      packageName = "has";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has/-/has-1.0.3.tgz";
+        sha512 = "f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==";
+      };
+    };
+    "has-ansi-2.0.0" = {
+      name = "has-ansi";
+      packageName = "has-ansi";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz";
+        sha1 = "34f5049ce1ecdf2b0649af3ef24e45ed35416d91";
+      };
+    };
+    "has-flag-2.0.0" = {
+      name = "has-flag";
+      packageName = "has-flag";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz";
+        sha1 = "e8207af1cc7b30d446cc70b734b5e8be18f88d51";
+      };
+    };
+    "has-flag-3.0.0" = {
+      name = "has-flag";
+      packageName = "has-flag";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz";
+        sha1 = "b5d454dc2199ae225699f3467e5a07f3b955bafd";
+      };
+    };
+    "has-flag-4.0.0" = {
+      name = "has-flag";
+      packageName = "has-flag";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz";
+        sha512 = "EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==";
+      };
+    };
+    "has-symbols-1.0.1" = {
+      name = "has-symbols";
+      packageName = "has-symbols";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz";
+        sha512 = "PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==";
+      };
+    };
+    "has-value-0.3.1" = {
+      name = "has-value";
+      packageName = "has-value";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz";
+        sha1 = "7b1f58bada62ca827ec0a2078025654845995e1f";
+      };
+    };
+    "has-value-1.0.0" = {
+      name = "has-value";
+      packageName = "has-value";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz";
+        sha1 = "18b281da585b1c5c51def24c930ed29a0be6b177";
+      };
+    };
+    "has-values-0.1.4" = {
+      name = "has-values";
+      packageName = "has-values";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz";
+        sha1 = "6d61de95d91dfca9b9a02089ad384bff8f62b771";
+      };
+    };
+    "has-values-1.0.0" = {
+      name = "has-values";
+      packageName = "has-values";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz";
+        sha1 = "95b0b63fec2146619a6fe57fe75628d5a39efe4f";
+      };
+    };
+    "hook-std-2.0.0" = {
+      name = "hook-std";
+      packageName = "hook-std";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hook-std/-/hook-std-2.0.0.tgz";
+        sha512 = "zZ6T5WcuBMIUVh49iPQS9t977t7C0l7OtHrpeMb5uk48JdflRX0NSFvCekfYNmGQETnLq9W/isMyHl69kxGi8g==";
+      };
+    };
+    "hosted-git-info-2.8.8" = {
+      name = "hosted-git-info";
+      packageName = "hosted-git-info";
+      version = "2.8.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz";
+        sha512 = "f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==";
+      };
+    };
+    "hosted-git-info-3.0.4" = {
+      name = "hosted-git-info";
+      packageName = "hosted-git-info";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.4.tgz";
+        sha512 = "4oT62d2jwSDBbLLFLZE+1vPuQ1h8p9wjrJ8Mqx5TjsyWmBMV5B13eJqn8pvluqubLf3cJPTfiYCIwNwDNmzScQ==";
+      };
+    };
+    "http-assert-1.4.1" = {
+      name = "http-assert";
+      packageName = "http-assert";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-assert/-/http-assert-1.4.1.tgz";
+        sha512 = "rdw7q6GTlibqVVbXr0CKelfV5iY8G2HqEUkhSk297BMbSpSL8crXC+9rjKoMcZZEsksX30le6f/4ul4E28gegw==";
+      };
+    };
+    "http-cache-semantics-4.1.0" = {
+      name = "http-cache-semantics";
+      packageName = "http-cache-semantics";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz";
+        sha512 = "carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==";
+      };
+    };
+    "http-errors-1.6.3" = {
+      name = "http-errors";
+      packageName = "http-errors";
+      version = "1.6.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz";
+        sha1 = "8b55680bb4be283a0b5bf4ea2e38580be1d9320d";
+      };
+    };
+    "http-errors-1.7.3" = {
+      name = "http-errors";
+      packageName = "http-errors";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz";
+        sha512 = "ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==";
+      };
+    };
+    "http-errors-1.8.0" = {
+      name = "http-errors";
+      packageName = "http-errors";
+      version = "1.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.8.0.tgz";
+        sha512 = "4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A==";
+      };
+    };
+    "http-proxy-agent-3.0.0" = {
+      name = "http-proxy-agent";
+      packageName = "http-proxy-agent";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-3.0.0.tgz";
+        sha512 = "uGuJaBWQWDQCJI5ip0d/VTYZW0nRrlLWXA4A7P1jrsa+f77rW2yXz315oBt6zGCF6l8C2tlMxY7ffULCj+5FhA==";
+      };
+    };
+    "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";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz";
+        sha1 = "9aecd925114772f3d95b65a60abb8f7c18fbace1";
+      };
+    };
+    "https-proxy-agent-4.0.0" = {
+      name = "https-proxy-agent";
+      packageName = "https-proxy-agent";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz";
+        sha512 = "zoDhWrkR3of1l9QAL8/scJZyLu8j/gBkcwcaQOZh7Gyh/+uJQzGVETdgT30akuwkpL8HTRfssqI3BZuV18teDg==";
+      };
+    };
+    "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==";
+      };
+    };
+    "human-signals-1.1.1" = {
+      name = "human-signals";
+      packageName = "human-signals";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz";
+        sha512 = "SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==";
+      };
+    };
+    "husky-1.3.1" = {
+      name = "husky";
+      packageName = "husky";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/husky/-/husky-1.3.1.tgz";
+        sha512 = "86U6sVVVf4b5NYSZ0yvv88dRgBSSXXmHaiq5pP4KDj5JVzdwKgBjEtUPOm8hcoytezFwbU+7gotXNhpHdystlg==";
+      };
+    };
+    "iconv-lite-0.4.24" = {
+      name = "iconv-lite";
+      packageName = "iconv-lite";
+      version = "0.4.24";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz";
+        sha512 = "v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==";
+      };
+    };
+    "ieee754-1.2.1" = {
+      name = "ieee754";
+      packageName = "ieee754";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz";
+        sha512 = "dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==";
+      };
+    };
+    "ignore-4.0.6" = {
+      name = "ignore";
+      packageName = "ignore";
+      version = "4.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz";
+        sha512 = "cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==";
+      };
+    };
+    "ignore-5.1.4" = {
+      name = "ignore";
+      packageName = "ignore";
+      version = "5.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ignore/-/ignore-5.1.4.tgz";
+        sha1 = "84b7b3dbe64552b6ef0eca99f6743dbec6d97adf";
+      };
+    };
+    "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" = {
+      name = "import-fresh";
+      packageName = "import-fresh";
+      version = "3.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz";
+        sha512 = "6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==";
+      };
+    };
+    "import-from-3.0.0" = {
+      name = "import-from";
+      packageName = "import-from";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/import-from/-/import-from-3.0.0.tgz";
+        sha512 = "CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==";
+      };
+    };
+    "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";
+      };
+    };
+    "indent-string-3.2.0" = {
+      name = "indent-string";
+      packageName = "indent-string";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz";
+        sha1 = "4a5fd6d27cc332f37e5419a504dbb837105c9289";
+      };
+    };
+    "indent-string-4.0.0" = {
+      name = "indent-string";
+      packageName = "indent-string";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz";
+        sha512 = "EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==";
+      };
+    };
+    "inflation-2.0.0" = {
+      name = "inflation";
+      packageName = "inflation";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inflation/-/inflation-2.0.0.tgz";
+        sha1 = "8b417e47c28f925a45133d914ca1fd389107f30f";
+      };
+    };
+    "inflight-1.0.6" = {
+      name = "inflight";
+      packageName = "inflight";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz";
+        sha1 = "49bd6331d7d02d0c09bc910a1075ba8165b56df9";
+      };
+    };
+    "inherits-2.0.3" = {
+      name = "inherits";
+      packageName = "inherits";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz";
+        sha1 = "633c2c83e3da42a502f52466022480f4208261de";
+      };
+    };
+    "inherits-2.0.4" = {
+      name = "inherits";
+      packageName = "inherits";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz";
+        sha512 = "k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==";
+      };
+    };
+    "ini-1.3.5" = {
+      name = "ini";
+      packageName = "ini";
+      version = "1.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz";
+        sha512 = "RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==";
+      };
+    };
+    "ini-2.0.0" = {
+      name = "ini";
+      packageName = "ini";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz";
+        sha512 = "7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==";
+      };
+    };
+    "inquirer-7.1.0" = {
+      name = "inquirer";
+      packageName = "inquirer";
+      version = "7.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inquirer/-/inquirer-7.1.0.tgz";
+        sha512 = "5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg==";
+      };
+    };
+    "interpret-1.2.0" = {
+      name = "interpret";
+      packageName = "interpret";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz";
+        sha512 = "mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==";
+      };
+    };
+    "into-stream-5.1.1" = {
+      name = "into-stream";
+      packageName = "into-stream";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/into-stream/-/into-stream-5.1.1.tgz";
+        sha512 = "krrAJ7McQxGGmvaYbB7Q1mcA+cRwg9Ij2RfWIeVesNBgVDZmzY/Fa4IpZUT3bmdRzMzdf/mzltCG2Dq99IZGBA==";
+      };
+    };
+    "invert-kv-1.0.0" = {
+      name = "invert-kv";
+      packageName = "invert-kv";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz";
+        sha1 = "104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6";
+      };
+    };
+    "is-accessor-descriptor-0.1.6" = {
+      name = "is-accessor-descriptor";
+      packageName = "is-accessor-descriptor";
+      version = "0.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz";
+        sha1 = "a9e12cb3ae8d876727eeef3843f8a0897b5c98d6";
+      };
+    };
+    "is-accessor-descriptor-1.0.0" = {
+      name = "is-accessor-descriptor";
+      packageName = "is-accessor-descriptor";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz";
+        sha512 = "m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==";
+      };
+    };
+    "is-arrayish-0.2.1" = {
+      name = "is-arrayish";
+      packageName = "is-arrayish";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz";
+        sha1 = "77c99840527aa8ecb1a8ba697b80645a7a926a9d";
+      };
+    };
+    "is-buffer-1.1.6" = {
+      name = "is-buffer";
+      packageName = "is-buffer";
+      version = "1.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz";
+        sha512 = "NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==";
+      };
+    };
+    "is-callable-1.1.5" = {
+      name = "is-callable";
+      packageName = "is-callable";
+      version = "1.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz";
+        sha512 = "ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==";
+      };
+    };
+    "is-ci-2.0.0" = {
+      name = "is-ci";
+      packageName = "is-ci";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz";
+        sha512 = "YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==";
+      };
+    };
+    "is-ci-3.0.0" = {
+      name = "is-ci";
+      packageName = "is-ci";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-ci/-/is-ci-3.0.0.tgz";
+        sha512 = "kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ==";
+      };
+    };
+    "is-data-descriptor-0.1.4" = {
+      name = "is-data-descriptor";
+      packageName = "is-data-descriptor";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz";
+        sha1 = "0b5ee648388e2c860282e793f1856fec3f301b56";
+      };
+    };
+    "is-data-descriptor-1.0.0" = {
+      name = "is-data-descriptor";
+      packageName = "is-data-descriptor";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz";
+        sha512 = "jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==";
+      };
+    };
+    "is-date-object-1.0.2" = {
+      name = "is-date-object";
+      packageName = "is-date-object";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz";
+        sha512 = "USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==";
+      };
+    };
+    "is-descriptor-0.1.6" = {
+      name = "is-descriptor";
+      packageName = "is-descriptor";
+      version = "0.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz";
+        sha512 = "avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==";
+      };
+    };
+    "is-descriptor-1.0.2" = {
+      name = "is-descriptor";
+      packageName = "is-descriptor";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz";
+        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-docker-2.1.1" = {
+      name = "is-docker";
+      packageName = "is-docker";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz";
+        sha512 = "ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==";
+      };
+    };
+    "is-extendable-0.1.1" = {
+      name = "is-extendable";
+      packageName = "is-extendable";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz";
+        sha1 = "62b110e289a471418e3ec36a617d472e301dfc89";
+      };
+    };
+    "is-extendable-1.0.1" = {
+      name = "is-extendable";
+      packageName = "is-extendable";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz";
+        sha512 = "arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==";
+      };
+    };
+    "is-extglob-2.1.1" = {
+      name = "is-extglob";
+      packageName = "is-extglob";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz";
+        sha1 = "a88c02535791f02ed37c76a1b9ea9773c833f8c2";
+      };
+    };
+    "is-fullwidth-code-point-1.0.0" = {
+      name = "is-fullwidth-code-point";
+      packageName = "is-fullwidth-code-point";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz";
+        sha1 = "ef9e31386f031a7f0d643af82fde50c457ef00cb";
+      };
+    };
+    "is-fullwidth-code-point-2.0.0" = {
+      name = "is-fullwidth-code-point";
+      packageName = "is-fullwidth-code-point";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz";
+        sha1 = "a3b30a5c4f199183167aaab93beefae3ddfb654f";
+      };
+    };
+    "is-fullwidth-code-point-3.0.0" = {
+      name = "is-fullwidth-code-point";
+      packageName = "is-fullwidth-code-point";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz";
+        sha512 = "zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==";
+      };
+    };
+    "is-generator-function-1.0.8" = {
+      name = "is-generator-function";
+      packageName = "is-generator-function";
+      version = "1.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.8.tgz";
+        sha512 = "2Omr/twNtufVZFr1GhxjOMFPAj2sjc/dKaIqBhvo4qciXfJmITGH6ZGd8eZYNHza8t1y0e01AuqRhJwfWp26WQ==";
+      };
+    };
+    "is-glob-3.1.0" = {
+      name = "is-glob";
+      packageName = "is-glob";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz";
+        sha1 = "7ba5ae24217804ac70707b96922567486cc3e84a";
+      };
+    };
+    "is-glob-4.0.1" = {
+      name = "is-glob";
+      packageName = "is-glob";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz";
+        sha512 = "5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==";
+      };
+    };
+    "is-installed-globally-0.4.0" = {
+      name = "is-installed-globally";
+      packageName = "is-installed-globally";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz";
+        sha512 = "iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==";
+      };
+    };
+    "is-number-3.0.0" = {
+      name = "is-number";
+      packageName = "is-number";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz";
+        sha1 = "24fd6201a4782cf50561c810276afc7d12d71195";
+      };
+    };
+    "is-number-7.0.0" = {
+      name = "is-number";
+      packageName = "is-number";
+      version = "7.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz";
+        sha1 = "7535345b896734d5f80c4d06c50955527a14f12b";
+      };
+    };
+    "is-obj-1.0.1" = {
+      name = "is-obj";
+      packageName = "is-obj";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz";
+        sha1 = "3e4729ac1f5fde025cd7d83a896dab9f4f67db0f";
+      };
+    };
+    "is-observable-1.1.0" = {
+      name = "is-observable";
+      packageName = "is-observable";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz";
+        sha512 = "NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==";
+      };
+    };
+    "is-path-inside-3.0.3" = {
+      name = "is-path-inside";
+      packageName = "is-path-inside";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz";
+        sha512 = "Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==";
+      };
+    };
+    "is-plain-obj-1.1.0" = {
+      name = "is-plain-obj";
+      packageName = "is-plain-obj";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz";
+        sha1 = "71a50c8429dfca773c92a390a4a03b39fcd51d3e";
+      };
+    };
+    "is-plain-obj-2.1.0" = {
+      name = "is-plain-obj";
+      packageName = "is-plain-obj";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz";
+        sha512 = "YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==";
+      };
+    };
+    "is-plain-object-2.0.4" = {
+      name = "is-plain-object";
+      packageName = "is-plain-object";
+      version = "2.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz";
+        sha512 = "h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==";
+      };
+    };
+    "is-plain-object-3.0.0" = {
+      name = "is-plain-object";
+      packageName = "is-plain-object";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.0.tgz";
+        sha512 = "tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg==";
+      };
+    };
+    "is-promise-2.2.2" = {
+      name = "is-promise";
+      packageName = "is-promise";
+      version = "2.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz";
+        sha512 = "+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==";
+      };
+    };
+    "is-regex-1.0.5" = {
+      name = "is-regex";
+      packageName = "is-regex";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz";
+        sha512 = "vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==";
+      };
+    };
+    "is-stream-1.1.0" = {
+      name = "is-stream";
+      packageName = "is-stream";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz";
+        sha1 = "12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44";
+      };
+    };
+    "is-stream-2.0.0" = {
+      name = "is-stream";
+      packageName = "is-stream";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz";
+        sha512 = "XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==";
+      };
+    };
+    "is-symbol-1.0.3" = {
+      name = "is-symbol";
+      packageName = "is-symbol";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz";
+        sha512 = "OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==";
+      };
+    };
+    "is-text-path-1.0.1" = {
+      name = "is-text-path";
+      packageName = "is-text-path";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz";
+        sha1 = "4e1aa0fb51bfbcb3e92688001397202c1775b66e";
+      };
+    };
+    "is-typedarray-1.0.0" = {
+      name = "is-typedarray";
+      packageName = "is-typedarray";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz";
+        sha1 = "e479c80858df0c1b11ddda6940f96011fcda4a9a";
+      };
+    };
+    "is-unicode-supported-0.1.0" = {
+      name = "is-unicode-supported";
+      packageName = "is-unicode-supported";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz";
+        sha512 = "knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==";
+      };
+    };
+    "is-windows-1.0.2" = {
+      name = "is-windows";
+      packageName = "is-windows";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz";
+        sha512 = "eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==";
+      };
+    };
+    "is-wsl-2.2.0" = {
+      name = "is-wsl";
+      packageName = "is-wsl";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz";
+        sha512 = "fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==";
+      };
+    };
+    "isarray-0.0.1" = {
+      name = "isarray";
+      packageName = "isarray";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz";
+        sha1 = "8a18acfca9a8f4177e09abfc6038939b05d1eedf";
+      };
+    };
+    "isarray-1.0.0" = {
+      name = "isarray";
+      packageName = "isarray";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz";
+        sha1 = "bb935d48582cba168c06834957a54a3e07124f11";
+      };
+    };
+    "isexe-2.0.0" = {
+      name = "isexe";
+      packageName = "isexe";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz";
+        sha1 = "e8fbf374dc556ff8947a10dcb0572d633f2cfa10";
+      };
+    };
+    "isobject-2.1.0" = {
+      name = "isobject";
+      packageName = "isobject";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz";
+        sha1 = "f065561096a3f1da2ef46272f815c840d87e0c89";
+      };
+    };
+    "isobject-3.0.1" = {
+      name = "isobject";
+      packageName = "isobject";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz";
+        sha1 = "4e431e92b11a9731636aa1f9c8d1ccbcfdab78df";
+      };
+    };
+    "isobject-4.0.0" = {
+      name = "isobject";
+      packageName = "isobject";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz";
+        sha512 = "S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==";
+      };
+    };
+    "isstream-0.1.2" = {
+      name = "isstream";
+      packageName = "isstream";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz";
+        sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
+      };
+    };
+    "issue-parser-5.0.0" = {
+      name = "issue-parser";
+      packageName = "issue-parser";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/issue-parser/-/issue-parser-5.0.0.tgz";
+        sha512 = "q/16W7EPHRL0FKVz9NU++TUsoygXGj6JOi88oulyAcQG+IEZ0T6teVdE+VLbe19OfL/tbV8Wi3Dfo0HedeHW0Q==";
+      };
+    };
+    "java-properties-1.0.2" = {
+      name = "java-properties";
+      packageName = "java-properties";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/java-properties/-/java-properties-1.0.2.tgz";
+        sha512 = "qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==";
+      };
+    };
+    "js-tokens-4.0.0" = {
+      name = "js-tokens";
+      packageName = "js-tokens";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz";
+        sha512 = "RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==";
+      };
+    };
+    "js-yaml-3.13.1" = {
+      name = "js-yaml";
+      packageName = "js-yaml";
+      version = "3.13.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz";
+        sha512 = "YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==";
+      };
+    };
+    "jsbn-0.1.1" = {
+      name = "jsbn";
+      packageName = "jsbn";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz";
+        sha1 = "a5e654c2e5a2deb5f201d96cefbca80c0ef2f513";
+      };
+    };
+    "json-buffer-3.0.1" = {
+      name = "json-buffer";
+      packageName = "json-buffer";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz";
+        sha512 = "4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==";
+      };
+    };
+    "json-fixer-1.4.1" = {
+      name = "json-fixer";
+      packageName = "json-fixer";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-fixer/-/json-fixer-1.4.1.tgz";
+        sha512 = "zbvD9byMClUKRcGsazP2WBO5kG6hS8q6oRAuIWiOvhDDN4zFFIC+tPYG0I20Vhxv8S4W1VeHzesWZB0p5pzvlA==";
+      };
+    };
+    "json-parse-better-errors-1.0.2" = {
+      name = "json-parse-better-errors";
+      packageName = "json-parse-better-errors";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz";
+        sha512 = "mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==";
+      };
+    };
+    "json-schema-0.2.3" = {
+      name = "json-schema";
+      packageName = "json-schema";
+      version = "0.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz";
+        sha1 = "b480c892e59a2f05954ce727bd3f2a4e882f9e13";
+      };
+    };
+    "json-schema-traverse-0.4.1" = {
+      name = "json-schema-traverse";
+      packageName = "json-schema-traverse";
+      version = "0.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz";
+        sha512 = "xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==";
+      };
+    };
+    "json-stable-stringify-without-jsonify-1.0.1" = {
+      name = "json-stable-stringify-without-jsonify";
+      packageName = "json-stable-stringify-without-jsonify";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz";
+        sha1 = "9db7b59496ad3f3cfef30a75142d2d930ad72651";
+      };
+    };
+    "json-stringify-safe-5.0.1" = {
+      name = "json-stringify-safe";
+      packageName = "json-stringify-safe";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
+        sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
+      };
+    };
+    "jsonfile-4.0.0" = {
+      name = "jsonfile";
+      packageName = "jsonfile";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz";
+        sha1 = "8771aae0799b64076b76640fca058f9c10e33ecb";
+      };
+    };
+    "jsonfile-6.1.0" = {
+      name = "jsonfile";
+      packageName = "jsonfile";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz";
+        sha512 = "5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==";
+      };
+    };
+    "jsonparse-1.3.1" = {
+      name = "jsonparse";
+      packageName = "jsonparse";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz";
+        sha1 = "3f4dae4a91fac315f71062f8521cc239f1366280";
+      };
+    };
+    "jsprim-1.4.1" = {
+      name = "jsprim";
+      packageName = "jsprim";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz";
+        sha1 = "313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2";
+      };
+    };
+    "keygrip-1.1.0" = {
+      name = "keygrip";
+      packageName = "keygrip";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz";
+        sha512 = "iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==";
+      };
+    };
+    "keyv-4.0.3" = {
+      name = "keyv";
+      packageName = "keyv";
+      version = "4.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/keyv/-/keyv-4.0.3.tgz";
+        sha512 = "zdGa2TOpSZPq5mU6iowDARnMBZgtCqJ11dJROFi6tg6kTn4nuUdU09lFyLFSaHrWqpIJ+EBq4E8/Dc0Vx5vLdA==";
+      };
+    };
+    "kind-of-3.2.2" = {
+      name = "kind-of";
+      packageName = "kind-of";
+      version = "3.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz";
+        sha1 = "31ea21a734bab9bbb0f32466d893aea51e4a3c64";
+      };
+    };
+    "kind-of-4.0.0" = {
+      name = "kind-of";
+      packageName = "kind-of";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz";
+        sha1 = "20813df3d712928b207378691a45066fae72dd57";
+      };
+    };
+    "kind-of-5.1.0" = {
+      name = "kind-of";
+      packageName = "kind-of";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz";
+        sha512 = "NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==";
+      };
+    };
+    "kind-of-6.0.3" = {
+      name = "kind-of";
+      packageName = "kind-of";
+      version = "6.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz";
+        sha512 = "dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==";
+      };
+    };
+    "koa-2.13.1" = {
+      name = "koa";
+      packageName = "koa";
+      version = "2.13.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa/-/koa-2.13.1.tgz";
+        sha512 = "Lb2Dloc72auj5vK4X4qqL7B5jyDPQaZucc9sR/71byg7ryoD1NCaCm63CShk9ID9quQvDEi1bGR/iGjCG7As3w==";
+      };
+    };
+    "koa-bodyparser-4.3.0" = {
+      name = "koa-bodyparser";
+      packageName = "koa-bodyparser";
+      version = "4.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-bodyparser/-/koa-bodyparser-4.3.0.tgz";
+        sha512 = "uyV8G29KAGwZc4q/0WUAjH+Tsmuv9ImfBUF2oZVyZtaeo0husInagyn/JH85xMSxM0hEk/mbCII5ubLDuqW/Rw==";
+      };
+    };
+    "koa-compose-3.2.1" = {
+      name = "koa-compose";
+      packageName = "koa-compose";
+      version = "3.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-compose/-/koa-compose-3.2.1.tgz";
+        sha1 = "a85ccb40b7d986d8e5a345b3a1ace8eabcf54de7";
+      };
+    };
+    "koa-compose-4.1.0" = {
+      name = "koa-compose";
+      packageName = "koa-compose";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz";
+        sha512 = "8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==";
+      };
+    };
+    "koa-compress-3.1.0" = {
+      name = "koa-compress";
+      packageName = "koa-compress";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-compress/-/koa-compress-3.1.0.tgz";
+        sha512 = "0m24/yS/GbhWI+g9FqtvStY+yJwTObwoxOvPok6itVjRen7PBWkjsJ8pre76m+99YybXLKhOJ62mJ268qyBFMQ==";
+      };
+    };
+    "koa-conditional-get-2.0.0" = {
+      name = "koa-conditional-get";
+      packageName = "koa-conditional-get";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-conditional-get/-/koa-conditional-get-2.0.0.tgz";
+        sha1 = "a43f3723c1d014b730a34ece8adf30b93c8233f2";
+      };
+    };
+    "koa-convert-1.2.0" = {
+      name = "koa-convert";
+      packageName = "koa-convert";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-convert/-/koa-convert-1.2.0.tgz";
+        sha1 = "da40875df49de0539098d1700b50820cebcd21d0";
+      };
+    };
+    "koa-etag-3.0.0" = {
+      name = "koa-etag";
+      packageName = "koa-etag";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-etag/-/koa-etag-3.0.0.tgz";
+        sha1 = "9ef7382ddd5a82ab0deb153415c915836f771d3f";
+      };
+    };
+    "koa-is-json-1.0.0" = {
+      name = "koa-is-json";
+      packageName = "koa-is-json";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-is-json/-/koa-is-json-1.0.0.tgz";
+        sha1 = "273c07edcdcb8df6a2c1ab7d59ee76491451ec14";
+      };
+    };
+    "koa-json-2.0.2" = {
+      name = "koa-json";
+      packageName = "koa-json";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-json/-/koa-json-2.0.2.tgz";
+        sha1 = "36af14e6ea1f5d646d7c44a285701c6f85a4fde4";
+      };
+    };
+    "koa-morgan-1.0.1" = {
+      name = "koa-morgan";
+      packageName = "koa-morgan";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-morgan/-/koa-morgan-1.0.1.tgz";
+        sha1 = "08052e0ce0d839d3c43178b90a5bb3424bef1f99";
+      };
+    };
+    "koa-range-0.3.0" = {
+      name = "koa-range";
+      packageName = "koa-range";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-range/-/koa-range-0.3.0.tgz";
+        sha1 = "3588e3496473a839a1bd264d2a42b1d85bd7feac";
+      };
+    };
+    "koa-route-3.2.0" = {
+      name = "koa-route";
+      packageName = "koa-route";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-route/-/koa-route-3.2.0.tgz";
+        sha1 = "76298b99a6bcfa9e38cab6fe5c79a8733e758bce";
+      };
+    };
+    "koa-send-5.0.1" = {
+      name = "koa-send";
+      packageName = "koa-send";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-send/-/koa-send-5.0.1.tgz";
+        sha512 = "tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ==";
+      };
+    };
+    "koa-static-5.0.0" = {
+      name = "koa-static";
+      packageName = "koa-static";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-static/-/koa-static-5.0.0.tgz";
+        sha512 = "UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ==";
+      };
+    };
+    "lazy-ass-1.5.0" = {
+      name = "lazy-ass";
+      packageName = "lazy-ass";
+      version = "1.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.5.0.tgz";
+        sha1 = "ca15be243c7c475b8565cdbfa0f9c2f374f2a01d";
+      };
+    };
+    "lazy-ass-1.6.0" = {
+      name = "lazy-ass";
+      packageName = "lazy-ass";
+      version = "1.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz";
+        sha1 = "7999655e8646c17f089fdd187d150d3324d54513";
+      };
+    };
+    "lcid-1.0.0" = {
+      name = "lcid";
+      packageName = "lcid";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz";
+        sha1 = "308accafa0bc483a3867b4b6f2b9506251d1b835";
+      };
+    };
+    "leprechaun-0.0.2" = {
+      name = "leprechaun";
+      packageName = "leprechaun";
+      version = "0.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/leprechaun/-/leprechaun-0.0.2.tgz";
+        sha1 = "8b96514a9e634c53fbe59a8094f3378c8fb2084d";
+      };
+    };
+    "levn-0.4.1" = {
+      name = "levn";
+      packageName = "levn";
+      version = "0.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz";
+        sha512 = "+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==";
+      };
+    };
+    "line-column-1.0.2" = {
+      name = "line-column";
+      packageName = "line-column";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/line-column/-/line-column-1.0.2.tgz";
+        sha1 = "d25af2936b6f4849172b312e4792d1d987bc34a2";
+      };
+    };
+    "lines-and-columns-1.1.6" = {
+      name = "lines-and-columns";
+      packageName = "lines-and-columns";
+      version = "1.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz";
+        sha1 = "1c00c743b433cd0a4e80758f7b64a57440d9ff00";
+      };
+    };
+    "listr-0.14.3" = {
+      name = "listr";
+      packageName = "listr";
+      version = "0.14.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/listr/-/listr-0.14.3.tgz";
+        sha512 = "RmAl7su35BFd/xoMamRjpIE4j3v+L28o8CT5YhAXQJm1fD+1l9ngXY8JAQRJ+tFK2i5njvi0iRUKV09vPwA0iA==";
+      };
+    };
+    "listr-silent-renderer-1.1.1" = {
+      name = "listr-silent-renderer";
+      packageName = "listr-silent-renderer";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz";
+        sha1 = "924b5a3757153770bf1a8e3fbf74b8bbf3f9242e";
+      };
+    };
+    "listr-update-renderer-0.5.0" = {
+      name = "listr-update-renderer";
+      packageName = "listr-update-renderer";
+      version = "0.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/listr-update-renderer/-/listr-update-renderer-0.5.0.tgz";
+        sha512 = "tKRsZpKz8GSGqoI/+caPmfrypiaq+OQCbd+CovEC24uk1h952lVj5sC7SqyFUm+OaJ5HN/a1YLt5cit2FMNsFA==";
+      };
+    };
+    "listr-verbose-renderer-0.5.0" = {
+      name = "listr-verbose-renderer";
+      packageName = "listr-verbose-renderer";
+      version = "0.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/listr-verbose-renderer/-/listr-verbose-renderer-0.5.0.tgz";
+        sha512 = "04PDPqSlsqIOaaaGZ+41vq5FejI9auqTInicFRndCBgE3bXG8D6W1I+mWhk+1nqbHmyhla/6BUrd5OSiHwKRXw==";
+      };
+    };
+    "load-json-file-4.0.0" = {
+      name = "load-json-file";
+      packageName = "load-json-file";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz";
+        sha1 = "2f5f45ab91e33216234fd53adab668eb4ec0993b";
+      };
+    };
+    "load-module-3.0.0" = {
+      name = "load-module";
+      packageName = "load-module";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/load-module/-/load-module-3.0.0.tgz";
+        sha512 = "ZqprfrTx4vfH5+1mgpspPh5JYsNyA193NkMUdb3GwpmVqMczOh8cUDJgZBmEZVlSR42JBGYTUxlBAX9LHIBtIA==";
+      };
+    };
+    "local-web-server-4.2.1" = {
+      name = "local-web-server";
+      packageName = "local-web-server";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/local-web-server/-/local-web-server-4.2.1.tgz";
+        sha512 = "v71LZool2w7uYA+tDP5HhfjzUxz5SFfcrPPB/zC98yFFawt7A6fcmAr2MR4Q9AHk/A8oyd/wrhEJBJLndwHxNQ==";
+      };
+    };
+    "locate-path-2.0.0" = {
+      name = "locate-path";
+      packageName = "locate-path";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz";
+        sha1 = "2b568b265eec944c6d9c0de9c3dbbbca0354cd8e";
+      };
+    };
+    "locate-path-3.0.0" = {
+      name = "locate-path";
+      packageName = "locate-path";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz";
+        sha512 = "7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==";
+      };
+    };
+    "locate-path-5.0.0" = {
+      name = "locate-path";
+      packageName = "locate-path";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz";
+        sha512 = "t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==";
+      };
+    };
+    "lodash-3.10.1" = {
+      name = "lodash";
+      packageName = "lodash";
+      version = "3.10.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz";
+        sha1 = "5bf45e8e49ba4189e17d482789dfd15bd140b7b6";
+      };
+    };
+    "lodash-4.17.15" = {
+      name = "lodash";
+      packageName = "lodash";
+      version = "4.17.15";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz";
+        sha512 = "8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==";
+      };
+    };
+    "lodash-4.17.21" = {
+      name = "lodash";
+      packageName = "lodash";
+      version = "4.17.21";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz";
+        sha512 = "v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==";
+      };
+    };
+    "lodash.assignwith-4.2.0" = {
+      name = "lodash.assignwith";
+      packageName = "lodash.assignwith";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.assignwith/-/lodash.assignwith-4.2.0.tgz";
+        sha1 = "127a97f02adc41751a954d24b0de17e100e038eb";
+      };
+    };
+    "lodash.camelcase-4.3.0" = {
+      name = "lodash.camelcase";
+      packageName = "lodash.camelcase";
+      version = "4.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz";
+        sha1 = "b28aa6288a2b9fc651035c7711f65ab6190331a6";
+      };
+    };
+    "lodash.capitalize-4.2.1" = {
+      name = "lodash.capitalize";
+      packageName = "lodash.capitalize";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.capitalize/-/lodash.capitalize-4.2.1.tgz";
+        sha1 = "f826c9b4e2a8511d84e3aca29db05e1a4f3b72a9";
+      };
+    };
+    "lodash.escaperegexp-4.1.2" = {
+      name = "lodash.escaperegexp";
+      packageName = "lodash.escaperegexp";
+      version = "4.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz";
+        sha1 = "64762c48618082518ac3df4ccf5d5886dae20347";
+      };
+    };
+    "lodash.get-4.4.2" = {
+      name = "lodash.get";
+      packageName = "lodash.get";
+      version = "4.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz";
+        sha1 = "2d177f652fa31e939b4438d5341499dfa3825e99";
+      };
+    };
+    "lodash.ismatch-4.4.0" = {
+      name = "lodash.ismatch";
+      packageName = "lodash.ismatch";
+      version = "4.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz";
+        sha1 = "756cb5150ca3ba6f11085a78849645f188f85f37";
+      };
+    };
+    "lodash.isplainobject-4.0.6" = {
+      name = "lodash.isplainobject";
+      packageName = "lodash.isplainobject";
+      version = "4.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz";
+        sha1 = "7c526a52d89b45c45cc690b88163be0497f550cb";
+      };
+    };
+    "lodash.isstring-4.0.1" = {
+      name = "lodash.isstring";
+      packageName = "lodash.isstring";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz";
+        sha1 = "d527dfb5456eca7cc9bb95d5daeaf88ba54a5451";
+      };
+    };
+    "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.once-4.1.1" = {
+      name = "lodash.once";
+      packageName = "lodash.once";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz";
+        sha1 = "0dd3971213c7c56df880977d504c88fb471a97ac";
+      };
+    };
+    "lodash.set-4.3.2" = {
+      name = "lodash.set";
+      packageName = "lodash.set";
+      version = "4.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz";
+        sha1 = "d8757b1da807dde24816b0d6a84bea1a76230b23";
+      };
+    };
+    "lodash.snakecase-4.1.1" = {
+      name = "lodash.snakecase";
+      packageName = "lodash.snakecase";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz";
+        sha1 = "39d714a35357147837aefd64b5dcbb16becd8f8d";
+      };
+    };
+    "lodash.throttle-4.1.1" = {
+      name = "lodash.throttle";
+      packageName = "lodash.throttle";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz";
+        sha1 = "c23e91b710242ac70c37f1e1cda9274cc39bf2f4";
+      };
+    };
+    "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";
+      version = "4.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz";
+        sha1 = "d0225373aeb652adc1bc82e4945339a842754773";
+      };
+    };
+    "lodash.uniqby-4.7.0" = {
+      name = "lodash.uniqby";
+      packageName = "lodash.uniqby";
+      version = "4.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz";
+        sha1 = "d99c07a669e9e6d24e1362dfe266c67616af1302";
+      };
+    };
+    "log-symbols-1.0.2" = {
+      name = "log-symbols";
+      packageName = "log-symbols";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz";
+        sha1 = "376ff7b58ea3086a0f09facc74617eca501e1a18";
+      };
+    };
+    "log-symbols-4.1.0" = {
+      name = "log-symbols";
+      packageName = "log-symbols";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz";
+        sha512 = "8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==";
+      };
+    };
+    "log-update-2.3.0" = {
+      name = "log-update";
+      packageName = "log-update";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/log-update/-/log-update-2.3.0.tgz";
+        sha1 = "88328fd7d1ce7938b29283746f0b1bc126b24708";
+      };
+    };
+    "loud-rejection-1.6.0" = {
+      name = "loud-rejection";
+      packageName = "loud-rejection";
+      version = "1.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz";
+        sha1 = "5b46f80147edee578870f086d04821cf998e551f";
+      };
+    };
+    "lowercase-keys-2.0.0" = {
+      name = "lowercase-keys";
+      packageName = "lowercase-keys";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz";
+        sha512 = "tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==";
+      };
+    };
+    "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-5.1.1" = {
+      name = "lru-cache";
+      packageName = "lru-cache";
+      version = "5.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz";
+        sha512 = "KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==";
+      };
+    };
+    "lws-3.1.0" = {
+      name = "lws";
+      packageName = "lws";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws/-/lws-3.1.0.tgz";
+        sha512 = "I8rTgZxz8OJL0hjdlDxs6WpcVG7WSyalVHPQXXK+WPNVjm3KhkT5gV0Qmsgm2FRLbRUp15tso80xmDxMsyt7zA==";
+      };
+    };
+    "lws-basic-auth-2.0.0" = {
+      name = "lws-basic-auth";
+      packageName = "lws-basic-auth";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-basic-auth/-/lws-basic-auth-2.0.0.tgz";
+        sha512 = "zzyoGFLQPuKaQJvHMLmmSyfT6lIvocwcDXllTVW5brD0t0YgHYopILkzja+x+MIlJX/YhNKniaTSasujniYVjw==";
+      };
+    };
+    "lws-blacklist-3.0.0" = {
+      name = "lws-blacklist";
+      packageName = "lws-blacklist";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-blacklist/-/lws-blacklist-3.0.0.tgz";
+        sha512 = "KNXGDBmbj+UGfWMBAefe2vrfuWpEQms/9Fd7kfMScTqAKF6nrVoEs4pkxfefArG3bX0bu7jWLyB4tJGma5WC6Q==";
+      };
+    };
+    "lws-body-parser-2.0.0" = {
+      name = "lws-body-parser";
+      packageName = "lws-body-parser";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-body-parser/-/lws-body-parser-2.0.0.tgz";
+        sha512 = "QFDzln3sSdKWL9fVNWy2+ZmrKy/XaYRO0/FFB0MBrDCsNnzepeCD4I7rOOfyuphLn42yR8XUpWdcJ3Ii5aauRA==";
+      };
+    };
+    "lws-compress-2.0.0" = {
+      name = "lws-compress";
+      packageName = "lws-compress";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-compress/-/lws-compress-2.0.0.tgz";
+        sha512 = "5qDXI9pukVYWm07WjAOfpItLXKtL8lCHvjmW4RiXULhTRJj1qqBjNcmqReyk8L7NLUKhc+8eqoDDJFKURQEp0w==";
+      };
+    };
+    "lws-conditional-get-2.0.0" = {
+      name = "lws-conditional-get";
+      packageName = "lws-conditional-get";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-conditional-get/-/lws-conditional-get-2.0.0.tgz";
+        sha512 = "U05yDlFJKIYa7gJZYfnc1HIEuXbKpDJztgkvNYyxCqJC28j/k9ORoNnFNOIHpBh/jlPJgV8x7uH34mIxFAryWA==";
+      };
+    };
+    "lws-cors-3.0.0" = {
+      name = "lws-cors";
+      packageName = "lws-cors";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-cors/-/lws-cors-3.0.0.tgz";
+        sha512 = "diUkoyVZyzLB8LamdtUYYAfJdPAyu/+IjE3ZUcdnNQz9koECe4O2x3SWD7LSV43pd3CKgyiwwSxWJ4hTBZFIvQ==";
+      };
+    };
+    "lws-index-2.0.0" = {
+      name = "lws-index";
+      packageName = "lws-index";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-index/-/lws-index-2.0.0.tgz";
+        sha512 = "qfkeQmKYnd13LmQubzI5LtFV2N8PJQG4QvgSoefoiB3dWre9k2T4C7ajjOTKO8mgSzYpUEREduNcQcLyt62n0g==";
+      };
+    };
+    "lws-json-2.0.0" = {
+      name = "lws-json";
+      packageName = "lws-json";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-json/-/lws-json-2.0.0.tgz";
+        sha512 = "vqUFrAQ5BGpkMS2Mm/ZhgvUMi6Tgia7YtESG7pKjNoiSsD+TxncG0nqp8YjUh2xrEzi/SYFc/ed+9ZOl/t0A0g==";
+      };
+    };
+    "lws-log-2.0.0" = {
+      name = "lws-log";
+      packageName = "lws-log";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-log/-/lws-log-2.0.0.tgz";
+        sha512 = "YveoazSZ0Qb1Tljdm8G8yn9c+mAMXgvLMACZzh5aZIk7p8YJwiXf9r1S+xY7wbXEcKG629KfVO0B5G5gRFcyDQ==";
+      };
+    };
+    "lws-mime-2.0.0" = {
+      name = "lws-mime";
+      packageName = "lws-mime";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-mime/-/lws-mime-2.0.0.tgz";
+        sha512 = "mfrAgRQ5+hkQ7LJ6EAgwnUeymNeYxwLXZY3UQ6C2hSTr7BqMSzm9k5O0C8wWP2dzdhChzITYKwzWbUnAYVBwtA==";
+      };
+    };
+    "lws-range-3.0.0" = {
+      name = "lws-range";
+      packageName = "lws-range";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-range/-/lws-range-3.0.0.tgz";
+        sha512 = "7ZhA/LqQnKjolKBo/2BFj9DyDDXcJGY3v05TwYRD0qDGrxW4vuatEjluC3SV7ZO/k4PxDLdxuk+RCgL5t3ThtQ==";
+      };
+    };
+    "lws-request-monitor-2.0.0" = {
+      name = "lws-request-monitor";
+      packageName = "lws-request-monitor";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-request-monitor/-/lws-request-monitor-2.0.0.tgz";
+        sha512 = "ZTo0/pS42qiejcYlL+wlpurSbDSS0J7pDDohqBx7jjUQkgni2Qd8cPzn/kW8QI82gXgDmdZH+ps0vheLHlgdgg==";
+      };
+    };
+    "lws-rewrite-3.1.1" = {
+      name = "lws-rewrite";
+      packageName = "lws-rewrite";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-rewrite/-/lws-rewrite-3.1.1.tgz";
+        sha512 = "cOeaPXIlLUVLxS6BZ52QzZVzI8JjCzlWD4RWizB5Hd+0YGO0SPa3Vgk7CIghtAOsSdjtXg/wSOap2H1h+tw8BQ==";
+      };
+    };
+    "lws-spa-3.0.0" = {
+      name = "lws-spa";
+      packageName = "lws-spa";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-spa/-/lws-spa-3.0.0.tgz";
+        sha512 = "Tz10LfuOTUsRG6z+OCJ/vBN+4LQWoAGIJ1R02CFPrDk0pY3rHezM7/cCpq6Z6dXD+ipdNE8alkVn4zL2M+eVGg==";
+      };
+    };
+    "lws-static-2.0.0" = {
+      name = "lws-static";
+      packageName = "lws-static";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lws-static/-/lws-static-2.0.0.tgz";
+        sha512 = "P25A0+IXdkB6Y6gZAG7X0mnaa+FJ8aTiWLUgM5kazaWmruRO7lyhSjitsA3y5TLI3DpPCZn0mWE4SRREujUZLg==";
+      };
+    };
+    "macos-release-2.3.0" = {
+      name = "macos-release";
+      packageName = "macos-release";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/macos-release/-/macos-release-2.3.0.tgz";
+        sha512 = "OHhSbtcviqMPt7yfw5ef5aghS2jzFVKEFyCJndQt2YpSQ9qRVSEv2axSJI1paVThEu+FFGs584h/1YhxjVqajA==";
+      };
+    };
+    "map-cache-0.2.2" = {
+      name = "map-cache";
+      packageName = "map-cache";
+      version = "0.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz";
+        sha1 = "c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf";
+      };
+    };
+    "map-obj-1.0.1" = {
+      name = "map-obj";
+      packageName = "map-obj";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz";
+        sha1 = "d933ceb9205d82bdcf4886f6742bdc2b4dea146d";
+      };
+    };
+    "map-obj-2.0.0" = {
+      name = "map-obj";
+      packageName = "map-obj";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz";
+        sha1 = "a65cd29087a92598b8791257a523e021222ac1f9";
+      };
+    };
+    "map-stream-0.1.0" = {
+      name = "map-stream";
+      packageName = "map-stream";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz";
+        sha1 = "e56aa94c4c8055a16404a0674b78f215f7c8e194";
+      };
+    };
+    "map-visit-1.0.0" = {
+      name = "map-visit";
+      packageName = "map-visit";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz";
+        sha1 = "ecdca8f13144e660f1b5bd41f12f3479d98dfb8f";
+      };
+    };
+    "marked-0.7.0" = {
+      name = "marked";
+      packageName = "marked";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/marked/-/marked-0.7.0.tgz";
+        sha512 = "c+yYdCZJQrsRjTPhUx7VKkApw9bwDkNbHUKo1ovgcfDjb2kc8rLuRbIFyXL5WOEUwzSSKo3IXpph2K6DqB/KZg==";
+      };
+    };
+    "marked-terminal-3.3.0" = {
+      name = "marked-terminal";
+      packageName = "marked-terminal";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/marked-terminal/-/marked-terminal-3.3.0.tgz";
+        sha512 = "+IUQJ5VlZoAFsM5MHNT7g3RHSkA3eETqhRCdXv4niUMAKHQ7lb1yvAcuGPmm4soxhmtX13u4Li6ZToXtvSEH+A==";
+      };
+    };
+    "media-typer-0.3.0" = {
+      name = "media-typer";
+      packageName = "media-typer";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz";
+        sha1 = "8710d7af0aa626f8fffa1ce00168545263255748";
+      };
+    };
+    "memorystream-0.3.1" = {
+      name = "memorystream";
+      packageName = "memorystream";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz";
+        sha1 = "86d7090b30ce455d63fbae12dda51a47ddcaf9b2";
+      };
+    };
+    "meow-5.0.0" = {
+      name = "meow";
+      packageName = "meow";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz";
+        sha512 = "CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==";
+      };
+    };
+    "merge-stream-2.0.0" = {
+      name = "merge-stream";
+      packageName = "merge-stream";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz";
+        sha1 = "52823629a14dd00c9770fb6ad47dc6310f2c1f60";
+      };
+    };
+    "merge2-1.3.0" = {
+      name = "merge2";
+      packageName = "merge2";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/merge2/-/merge2-1.3.0.tgz";
+        sha512 = "2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw==";
+      };
+    };
+    "methods-1.1.2" = {
+      name = "methods";
+      packageName = "methods";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz";
+        sha1 = "5529a4d67654134edcc5266656835b0f851afcee";
+      };
+    };
+    "micromatch-3.1.10" = {
+      name = "micromatch";
+      packageName = "micromatch";
+      version = "3.1.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz";
+        sha512 = "MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==";
+      };
+    };
+    "micromatch-4.0.2" = {
+      name = "micromatch";
+      packageName = "micromatch";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz";
+        sha1 = "4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259";
+      };
+    };
+    "mime-2.4.4" = {
+      name = "mime";
+      packageName = "mime";
+      version = "2.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz";
+        sha512 = "LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==";
+      };
+    };
+    "mime-db-1.33.0" = {
+      name = "mime-db";
+      packageName = "mime-db";
+      version = "1.33.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz";
+        sha512 = "BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==";
+      };
+    };
+    "mime-db-1.43.0" = {
+      name = "mime-db";
+      packageName = "mime-db";
+      version = "1.43.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz";
+        sha512 = "+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==";
+      };
+    };
+    "mime-types-2.1.18" = {
+      name = "mime-types";
+      packageName = "mime-types";
+      version = "2.1.18";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz";
+        sha512 = "lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==";
+      };
+    };
+    "mime-types-2.1.26" = {
+      name = "mime-types";
+      packageName = "mime-types";
+      version = "2.1.26";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz";
+        sha512 = "01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==";
+      };
+    };
+    "mimic-fn-1.2.0" = {
+      name = "mimic-fn";
+      packageName = "mimic-fn";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz";
+        sha512 = "jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==";
+      };
+    };
+    "mimic-fn-2.1.0" = {
+      name = "mimic-fn";
+      packageName = "mimic-fn";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz";
+        sha512 = "OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==";
+      };
+    };
+    "mimic-response-1.0.1" = {
+      name = "mimic-response";
+      packageName = "mimic-response";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz";
+        sha512 = "j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==";
+      };
+    };
+    "mimic-response-2.1.0" = {
+      name = "mimic-response";
+      packageName = "mimic-response";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz";
+        sha512 = "wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==";
+      };
+    };
+    "minimatch-3.0.4" = {
+      name = "minimatch";
+      packageName = "minimatch";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";
+        sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
+      };
+    };
+    "minimist-0.0.10" = {
+      name = "minimist";
+      packageName = "minimist";
+      version = "0.0.10";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz";
+        sha1 = "de3f98543dbf96082be48ad1a0c7cda836301dcf";
+      };
+    };
+    "minimist-1.2.5" = {
+      name = "minimist";
+      packageName = "minimist";
+      version = "1.2.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz";
+        sha512 = "FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==";
+      };
+    };
+    "minimist-options-3.0.2" = {
+      name = "minimist-options";
+      packageName = "minimist-options";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz";
+        sha512 = "FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==";
+      };
+    };
+    "mixin-deep-1.3.2" = {
+      name = "mixin-deep";
+      packageName = "mixin-deep";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz";
+        sha512 = "WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==";
+      };
+    };
+    "mkdirp-0.5.5" = {
+      name = "mkdirp";
+      packageName = "mkdirp";
+      version = "0.5.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz";
+        sha512 = "NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==";
+      };
+    };
+    "mkdirp-classic-0.5.3" = {
+      name = "mkdirp-classic";
+      packageName = "mkdirp-classic";
+      version = "0.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz";
+        sha512 = "gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==";
+      };
+    };
+    "modify-values-1.0.1" = {
+      name = "modify-values";
+      packageName = "modify-values";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz";
+        sha512 = "xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==";
+      };
+    };
+    "moment-2.18.1" = {
+      name = "moment";
+      packageName = "moment";
+      version = "2.18.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/moment/-/moment-2.18.1.tgz";
+        sha1 = "c36193dd3ce1c2eed2adb7c802dbbc77a81b1c0f";
+      };
+    };
+    "morgan-1.10.0" = {
+      name = "morgan";
+      packageName = "morgan";
+      version = "1.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz";
+        sha512 = "AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==";
+      };
+    };
+    "ms-0.7.2" = {
+      name = "ms";
+      packageName = "ms";
+      version = "0.7.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz";
+        sha1 = "ae25cf2512b3885a1d95d7f037868d8431124765";
+      };
+    };
+    "ms-2.0.0" = {
+      name = "ms";
+      packageName = "ms";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz";
+        sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8";
+      };
+    };
+    "ms-2.1.2" = {
+      name = "ms";
+      packageName = "ms";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz";
+        sha512 = "sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==";
+      };
+    };
+    "ms-2.1.3" = {
+      name = "ms";
+      packageName = "ms";
+      version = "2.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz";
+        sha512 = "6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==";
+      };
+    };
+    "mute-stream-0.0.8" = {
+      name = "mute-stream";
+      packageName = "mute-stream";
+      version = "0.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz";
+        sha512 = "nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==";
+      };
+    };
+    "mz-2.7.0" = {
+      name = "mz";
+      packageName = "mz";
+      version = "2.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz";
+        sha512 = "z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==";
+      };
+    };
+    "nanomatch-1.2.13" = {
+      name = "nanomatch";
+      packageName = "nanomatch";
+      version = "1.2.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz";
+        sha512 = "fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==";
+      };
+    };
+    "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";
+      };
+    };
+    "nconf-0.10.0" = {
+      name = "nconf";
+      packageName = "nconf";
+      version = "0.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nconf/-/nconf-0.10.0.tgz";
+        sha512 = "fKiXMQrpP7CYWJQzKkPPx9hPgmq+YLDyxcG9N8RpiE9FoCkCbzD0NyW0YhE3xn3Aupe7nnDeIx4PFzYehpHT9Q==";
+      };
+    };
+    "negotiator-0.6.2" = {
+      name = "negotiator";
+      packageName = "negotiator";
+      version = "0.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz";
+        sha512 = "hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==";
+      };
+    };
+    "neo-async-2.6.1" = {
+      name = "neo-async";
+      packageName = "neo-async";
+      version = "2.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz";
+        sha512 = "iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==";
+      };
+    };
+    "nerf-dart-1.0.0" = {
+      name = "nerf-dart";
+      packageName = "nerf-dart";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nerf-dart/-/nerf-dart-1.0.0.tgz";
+        sha1 = "e6dab7febf5ad816ea81cf5c629c5a0ebde72c1a";
+      };
+    };
+    "netlify-plugin-cypress-2.0.0" = {
+      name = "netlify-plugin-cypress";
+      packageName = "netlify-plugin-cypress";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/netlify-plugin-cypress/-/netlify-plugin-cypress-2.0.0.tgz";
+        sha512 = "QLrvGfY9HLgAgUYqNp6a4iTCLKnfrpCAUYToeI85TIRsDx2j51ukv6kHEIO6K9lvfOL7eKme4tLMGw+BS/UmoA==";
+      };
+    };
+    "nice-try-1.0.5" = {
+      name = "nice-try";
+      packageName = "nice-try";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz";
+        sha512 = "1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==";
+      };
+    };
+    "node-emoji-1.10.0" = {
+      name = "node-emoji";
+      packageName = "node-emoji";
+      version = "1.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-emoji/-/node-emoji-1.10.0.tgz";
+        sha512 = "Yt3384If5H6BYGVHiHwTL+99OzJKHhgp82S8/dktEK73T26BazdgZ4JZh92xSVtGNJvz9UbXdNAc5hcrXV42vw==";
+      };
+    };
+    "node-fetch-2.6.0" = {
+      name = "node-fetch";
+      packageName = "node-fetch";
+      version = "2.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz";
+        sha512 = "8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==";
+      };
+    };
+    "node-fetch-2.6.1" = {
+      name = "node-fetch";
+      packageName = "node-fetch";
+      version = "2.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz";
+        sha512 = "V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==";
+      };
+    };
+    "node-version-matches-2.0.1" = {
+      name = "node-version-matches";
+      packageName = "node-version-matches";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-version-matches/-/node-version-matches-2.0.1.tgz";
+        sha512 = "oqk6+05FC0dNVY5NuXuhPEMq+m1b9ZjS9SIhVE9EjwCHZspnmjSO8npbKAEieinR8GeEgbecoQcYIvI/Kwcf6Q==";
+      };
+    };
+    "normalize-package-data-2.5.0" = {
+      name = "normalize-package-data";
+      packageName = "normalize-package-data";
+      version = "2.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz";
+        sha512 = "/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==";
+      };
+    };
+    "normalize-url-4.5.0" = {
+      name = "normalize-url";
+      packageName = "normalize-url";
+      version = "4.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz";
+        sha512 = "2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==";
+      };
+    };
+    "npm-6.14.4" = {
+      name = "npm";
+      packageName = "npm";
+      version = "6.14.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm/-/npm-6.14.4.tgz";
+        sha512 = "B8UDDbWvdkW6RgXFn8/h2cHJP/u/FPa4HWeGzW23aNEBARN3QPrRaHqPIZW2NSN3fW649gtgUDNZpaRs0zTMPw==";
+      };
+    };
+    "npm-run-all-4.1.5" = {
+      name = "npm-run-all";
+      packageName = "npm-run-all";
+      version = "4.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz";
+        sha512 = "Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==";
+      };
+    };
+    "npm-run-path-2.0.2" = {
+      name = "npm-run-path";
+      packageName = "npm-run-path";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz";
+        sha1 = "35a9232dfa35d7067b4cb2ddf2357b1871536c5f";
+      };
+    };
+    "npm-run-path-3.1.0" = {
+      name = "npm-run-path";
+      packageName = "npm-run-path";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-run-path/-/npm-run-path-3.1.0.tgz";
+        sha512 = "Dbl4A/VfiVGLgQv29URL9xshU8XDY1GeLy+fsaZ1AA8JDSfjvr5P5+pzRbWqRSBxk6/DW7MIh8lTM/PaGnP2kg==";
+      };
+    };
+    "npm-run-path-4.0.1" = {
+      name = "npm-run-path";
+      packageName = "npm-run-path";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz";
+        sha512 = "S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==";
+      };
+    };
+    "number-is-nan-1.0.1" = {
+      name = "number-is-nan";
+      packageName = "number-is-nan";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz";
+        sha1 = "097b602b53422a522c1afb8790318336941a011d";
+      };
+    };
+    "oauth-sign-0.9.0" = {
+      name = "oauth-sign";
+      packageName = "oauth-sign";
+      version = "0.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz";
+        sha512 = "fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==";
+      };
+    };
+    "object-assign-4.1.1" = {
+      name = "object-assign";
+      packageName = "object-assign";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz";
+        sha1 = "2109adc7965887cfc05cbbd442cac8bfbb360863";
+      };
+    };
+    "object-copy-0.1.0" = {
+      name = "object-copy";
+      packageName = "object-copy";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz";
+        sha1 = "7e7d858b781bd7c991a41ba975ed3812754e998c";
+      };
+    };
+    "object-inspect-1.7.0" = {
+      name = "object-inspect";
+      packageName = "object-inspect";
+      version = "1.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz";
+        sha512 = "a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==";
+      };
+    };
+    "object-keys-1.1.1" = {
+      name = "object-keys";
+      packageName = "object-keys";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz";
+        sha512 = "NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==";
+      };
+    };
+    "object-visit-1.0.1" = {
+      name = "object-visit";
+      packageName = "object-visit";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz";
+        sha1 = "f79c4493af0c5377b59fe39d395e41042dd045bb";
+      };
+    };
+    "object.assign-4.1.0" = {
+      name = "object.assign";
+      packageName = "object.assign";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz";
+        sha512 = "exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==";
+      };
+    };
+    "object.pick-1.3.0" = {
+      name = "object.pick";
+      packageName = "object.pick";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz";
+        sha1 = "87a10ac4c1694bd2e1cbf53591a66141fb5dd747";
+      };
+    };
+    "octokit-pagination-methods-1.1.0" = {
+      name = "octokit-pagination-methods";
+      packageName = "octokit-pagination-methods";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz";
+        sha512 = "fZ4qZdQ2nxJvtcasX7Ghl+WlWS/d9IgnBIwFZXVNNZUmzpno91SX5bc5vuxiuKoCtK78XxGGNuSCrDC7xYB3OQ==";
+      };
+    };
+    "on-finished-2.3.0" = {
+      name = "on-finished";
+      packageName = "on-finished";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz";
+        sha1 = "20f1336481b083cd75337992a16971aa2d906947";
+      };
+    };
+    "on-headers-1.0.2" = {
+      name = "on-headers";
+      packageName = "on-headers";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz";
+        sha512 = "pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==";
+      };
+    };
+    "once-1.4.0" = {
+      name = "once";
+      packageName = "once";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/once/-/once-1.4.0.tgz";
+        sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1";
+      };
+    };
+    "onetime-1.1.0" = {
+      name = "onetime";
+      packageName = "onetime";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz";
+        sha1 = "a1f7838f8314c516f05ecefcbc4ccfe04b4ed789";
+      };
+    };
+    "onetime-2.0.1" = {
+      name = "onetime";
+      packageName = "onetime";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz";
+        sha1 = "067428230fd67443b2794b22bba528b6867962d4";
+      };
+    };
+    "onetime-5.1.0" = {
+      name = "onetime";
+      packageName = "onetime";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz";
+        sha512 = "5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==";
+      };
+    };
+    "onetime-5.1.2" = {
+      name = "onetime";
+      packageName = "onetime";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz";
+        sha512 = "kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==";
+      };
+    };
+    "only-0.0.2" = {
+      name = "only";
+      packageName = "only";
+      version = "0.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/only/-/only-0.0.2.tgz";
+        sha1 = "2afde84d03e50b9a8edc444e30610a70295edfb4";
+      };
+    };
+    "open-7.4.2" = {
+      name = "open";
+      packageName = "open";
+      version = "7.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/open/-/open-7.4.2.tgz";
+        sha512 = "MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==";
+      };
+    };
+    "optimist-0.6.1" = {
+      name = "optimist";
+      packageName = "optimist";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz";
+        sha1 = "da3ea74686fa21a19a111c326e90eb15a0196686";
+      };
+    };
+    "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==";
+      };
+    };
+    "os-locale-1.4.0" = {
+      name = "os-locale";
+      packageName = "os-locale";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz";
+        sha1 = "20f9f17ae29ed345e8bde583b13d2009803c14d9";
+      };
+    };
+    "os-name-3.1.0" = {
+      name = "os-name";
+      packageName = "os-name";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/os-name/-/os-name-3.1.0.tgz";
+        sha512 = "h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg==";
+      };
+    };
+    "os-tmpdir-1.0.2" = {
+      name = "os-tmpdir";
+      packageName = "os-tmpdir";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz";
+        sha1 = "bbe67406c79aa85c5cfec766fe5734555dfa1274";
+      };
+    };
+    "ospath-1.2.2" = {
+      name = "ospath";
+      packageName = "ospath";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz";
+        sha1 = "1276639774a3f8ef2572f7fe4280e0ea4550c07b";
+      };
+    };
+    "p-cancelable-2.0.0" = {
+      name = "p-cancelable";
+      packageName = "p-cancelable";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.0.0.tgz";
+        sha512 = "wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg==";
+      };
+    };
+    "p-event-4.2.0" = {
+      name = "p-event";
+      packageName = "p-event";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz";
+        sha512 = "KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==";
+      };
+    };
+    "p-filter-2.1.0" = {
+      name = "p-filter";
+      packageName = "p-filter";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-filter/-/p-filter-2.1.0.tgz";
+        sha512 = "ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==";
+      };
+    };
+    "p-finally-1.0.0" = {
+      name = "p-finally";
+      packageName = "p-finally";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz";
+        sha1 = "3fbcfb15b899a44123b34b6dcc18b724336a2cae";
+      };
+    };
+    "p-finally-2.0.1" = {
+      name = "p-finally";
+      packageName = "p-finally";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz";
+        sha512 = "vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==";
+      };
+    };
+    "p-is-promise-3.0.0" = {
+      name = "p-is-promise";
+      packageName = "p-is-promise";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-is-promise/-/p-is-promise-3.0.0.tgz";
+        sha512 = "Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ==";
+      };
+    };
+    "p-limit-1.3.0" = {
+      name = "p-limit";
+      packageName = "p-limit";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz";
+        sha512 = "vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==";
+      };
+    };
+    "p-limit-2.3.0" = {
+      name = "p-limit";
+      packageName = "p-limit";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz";
+        sha512 = "//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==";
+      };
+    };
+    "p-locate-2.0.0" = {
+      name = "p-locate";
+      packageName = "p-locate";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz";
+        sha1 = "20a0103b222a70c8fd39cc2e580680f3dde5ec43";
+      };
+    };
+    "p-locate-3.0.0" = {
+      name = "p-locate";
+      packageName = "p-locate";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz";
+        sha512 = "x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==";
+      };
+    };
+    "p-locate-4.1.0" = {
+      name = "p-locate";
+      packageName = "p-locate";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz";
+        sha512 = "R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==";
+      };
+    };
+    "p-map-2.1.0" = {
+      name = "p-map";
+      packageName = "p-map";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz";
+        sha512 = "y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==";
+      };
+    };
+    "p-reduce-2.1.0" = {
+      name = "p-reduce";
+      packageName = "p-reduce";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz";
+        sha512 = "2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==";
+      };
+    };
+    "p-retry-4.2.0" = {
+      name = "p-retry";
+      packageName = "p-retry";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-retry/-/p-retry-4.2.0.tgz";
+        sha512 = "jPH38/MRh263KKcq0wBNOGFJbm+U6784RilTmHjB/HM9kH9V8WlCpVUcdOmip9cjXOh6MxZ5yk1z2SjDUJfWmA==";
+      };
+    };
+    "p-timeout-3.2.0" = {
+      name = "p-timeout";
+      packageName = "p-timeout";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz";
+        sha512 = "rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==";
+      };
+    };
+    "p-try-1.0.0" = {
+      name = "p-try";
+      packageName = "p-try";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz";
+        sha1 = "cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3";
+      };
+    };
+    "p-try-2.2.0" = {
+      name = "p-try";
+      packageName = "p-try";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz";
+        sha512 = "R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==";
+      };
+    };
+    "parent-module-1.0.1" = {
+      name = "parent-module";
+      packageName = "parent-module";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz";
+        sha512 = "GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==";
+      };
+    };
+    "parse-json-4.0.0" = {
+      name = "parse-json";
+      packageName = "parse-json";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz";
+        sha1 = "be35f5425be1f7f6c747184f98a788cb99477ee0";
+      };
+    };
+    "parse-json-5.0.0" = {
+      name = "parse-json";
+      packageName = "parse-json";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz";
+        sha512 = "OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==";
+      };
+    };
+    "parseurl-1.3.3" = {
+      name = "parseurl";
+      packageName = "parseurl";
+      version = "1.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz";
+        sha512 = "CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==";
+      };
+    };
+    "pascalcase-0.1.1" = {
+      name = "pascalcase";
+      packageName = "pascalcase";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz";
+        sha1 = "b363e55e8006ca6fe21784d2db22bd15d7917f14";
+      };
+    };
+    "path-dirname-1.0.2" = {
+      name = "path-dirname";
+      packageName = "path-dirname";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz";
+        sha1 = "cc33d24d525e099a5388c0336c6e32b9160609e0";
+      };
+    };
+    "path-exists-3.0.0" = {
+      name = "path-exists";
+      packageName = "path-exists";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz";
+        sha1 = "ce0ebeaa5f78cb18925ea7d810d7b59b010fd515";
+      };
+    };
+    "path-exists-4.0.0" = {
+      name = "path-exists";
+      packageName = "path-exists";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz";
+        sha512 = "ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==";
+      };
+    };
+    "path-is-absolute-1.0.1" = {
+      name = "path-is-absolute";
+      packageName = "path-is-absolute";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
+        sha1 = "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f";
+      };
+    };
+    "path-is-inside-1.0.2" = {
+      name = "path-is-inside";
+      packageName = "path-is-inside";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz";
+        sha1 = "365417dede44430d1c11af61027facf074bdfc53";
+      };
+    };
+    "path-key-2.0.1" = {
+      name = "path-key";
+      packageName = "path-key";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz";
+        sha1 = "411cadb574c5a140d3a4b1910d40d80cc9f40b40";
+      };
+    };
+    "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.6" = {
+      name = "path-parse";
+      packageName = "path-parse";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz";
+        sha512 = "GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==";
+      };
+    };
+    "path-to-regexp-1.8.0" = {
+      name = "path-to-regexp";
+      packageName = "path-to-regexp";
+      version = "1.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz";
+        sha512 = "n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==";
+      };
+    };
+    "path-to-regexp-2.2.1" = {
+      name = "path-to-regexp";
+      packageName = "path-to-regexp";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz";
+        sha512 = "gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==";
+      };
+    };
+    "path-to-regexp-6.2.0" = {
+      name = "path-to-regexp";
+      packageName = "path-to-regexp";
+      version = "6.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.0.tgz";
+        sha512 = "f66KywYG6+43afgE/8j/GoiNyygk/bnoCbps++3ErRKsIYkGGupyv07R2Ok5m9i67Iqc+T2g1eAUGUPzWhYTyg==";
+      };
+    };
+    "path-type-3.0.0" = {
+      name = "path-type";
+      packageName = "path-type";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz";
+        sha512 = "T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==";
+      };
+    };
+    "path-type-4.0.0" = {
+      name = "path-type";
+      packageName = "path-type";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz";
+        sha1 = "84ed01c0a7ba380afe09d90a8c180dcd9d03043b";
+      };
+    };
+    "pause-stream-0.0.11" = {
+      name = "pause-stream";
+      packageName = "pause-stream";
+      version = "0.0.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz";
+        sha1 = "fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445";
+      };
+    };
+    "pegjs-0.10.0" = {
+      name = "pegjs";
+      packageName = "pegjs";
+      version = "0.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pegjs/-/pegjs-0.10.0.tgz";
+        sha1 = "cf8bafae6eddff4b5a7efb185269eaaf4610ddbd";
+      };
+    };
+    "pend-1.2.0" = {
+      name = "pend";
+      packageName = "pend";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz";
+        sha1 = "7a57eb550a6783f9115331fcf4663d5c8e007a50";
+      };
+    };
+    "performance-now-2.1.0" = {
+      name = "performance-now";
+      packageName = "performance-now";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz";
+        sha1 = "6309f4e0e5fa913ec1c69307ae364b4b377c9e7b";
+      };
+    };
+    "picomatch-2.2.2" = {
+      name = "picomatch";
+      packageName = "picomatch";
+      version = "2.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz";
+        sha512 = "q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==";
+      };
+    };
+    "pidtree-0.3.1" = {
+      name = "pidtree";
+      packageName = "pidtree";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz";
+        sha512 = "qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==";
+      };
+    };
+    "pify-2.3.0" = {
+      name = "pify";
+      packageName = "pify";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz";
+        sha1 = "ed141a6ac043a849ea588498e7dca8b15330e90c";
+      };
+    };
+    "pify-3.0.0" = {
+      name = "pify";
+      packageName = "pify";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz";
+        sha1 = "e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176";
+      };
+    };
+    "pify-4.0.1" = {
+      name = "pify";
+      packageName = "pify";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz";
+        sha512 = "uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==";
+      };
+    };
+    "pkg-conf-2.1.0" = {
+      name = "pkg-conf";
+      packageName = "pkg-conf";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz";
+        sha1 = "2126514ca6f2abfebd168596df18ba57867f0058";
+      };
+    };
+    "pkg-dir-3.0.0" = {
+      name = "pkg-dir";
+      packageName = "pkg-dir";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz";
+        sha512 = "/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==";
+      };
+    };
+    "pkg-dir-4.2.0" = {
+      name = "pkg-dir";
+      packageName = "pkg-dir";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz";
+        sha512 = "HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==";
+      };
+    };
+    "please-upgrade-node-3.2.0" = {
+      name = "please-upgrade-node";
+      packageName = "please-upgrade-node";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz";
+        sha512 = "gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==";
+      };
+    };
+    "pluralize-5.0.0" = {
+      name = "pluralize";
+      packageName = "pluralize";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pluralize/-/pluralize-5.0.0.tgz";
+        sha1 = "e8b9073af9a0cb02e4c2efa95b55bebbdbf01299";
+      };
+    };
+    "pop-iterate-1.0.1" = {
+      name = "pop-iterate";
+      packageName = "pop-iterate";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pop-iterate/-/pop-iterate-1.0.1.tgz";
+        sha1 = "ceacfdab4abf353d7a0f2aaa2c1fc7b3f9413ba3";
+      };
+    };
+    "posix-character-classes-0.1.1" = {
+      name = "posix-character-classes";
+      packageName = "posix-character-classes";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz";
+        sha1 = "01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab";
+      };
+    };
+    "prelude-ls-1.2.1" = {
+      name = "prelude-ls";
+      packageName = "prelude-ls";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz";
+        sha512 = "vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==";
+      };
+    };
+    "pretty-bytes-5.6.0" = {
+      name = "pretty-bytes";
+      packageName = "pretty-bytes";
+      version = "5.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz";
+        sha512 = "FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==";
+      };
+    };
+    "process-nextick-args-2.0.1" = {
+      name = "process-nextick-args";
+      packageName = "process-nextick-args";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
+        sha512 = "3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==";
+      };
+    };
+    "progress-2.0.3" = {
+      name = "progress";
+      packageName = "progress";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz";
+        sha512 = "7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==";
+      };
+    };
+    "proxy-from-env-1.1.0" = {
+      name = "proxy-from-env";
+      packageName = "proxy-from-env";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz";
+        sha512 = "D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==";
+      };
+    };
+    "ps-tree-1.2.0" = {
+      name = "ps-tree";
+      packageName = "ps-tree";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ps-tree/-/ps-tree-1.2.0.tgz";
+        sha1 = "5e7425b89508736cdd4f2224d028f7bb3f722ebd";
+      };
+    };
+    "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";
+      version = "1.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz";
+        sha512 = "RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==";
+      };
+    };
+    "pump-3.0.0" = {
+      name = "pump";
+      packageName = "pump";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz";
+        sha512 = "LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==";
+      };
+    };
+    "punycode-1.3.2" = {
+      name = "punycode";
+      packageName = "punycode";
+      version = "1.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz";
+        sha1 = "9653a036fb7c1ee42342f2325cceefea3926c48d";
+      };
+    };
+    "punycode-1.4.1" = {
+      name = "punycode";
+      packageName = "punycode";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz";
+        sha1 = "c0d5a63b2718800ad8e1eb0fa5269c84dd41845e";
+      };
+    };
+    "punycode-2.1.1" = {
+      name = "punycode";
+      packageName = "punycode";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz";
+        sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
+      };
+    };
+    "puppeteer-7.1.0" = {
+      name = "puppeteer";
+      packageName = "puppeteer";
+      version = "7.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/puppeteer/-/puppeteer-7.1.0.tgz";
+        sha512 = "lqOLzqCKdh7yUAHvK6LxgOpQrL8Bv1/jvS8MLDXxcNms2rlM3E8p/Wlwc7efbRZ0twxTzUeqjN5EqrTwxOwc9g==";
+      };
+    };
+    "q-1.1.2" = {
+      name = "q";
+      packageName = "q";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/q/-/q-1.1.2.tgz";
+        sha1 = "6357e291206701d99f197ab84e57e8ad196f2a89";
+      };
+    };
+    "q-1.5.1" = {
+      name = "q";
+      packageName = "q";
+      version = "1.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/q/-/q-1.5.1.tgz";
+        sha1 = "7e32f75b41381291d04611f1bf14109ac00651d7";
+      };
+    };
+    "q-2.0.3" = {
+      name = "q";
+      packageName = "q";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/q/-/q-2.0.3.tgz";
+        sha1 = "75b8db0255a1a5af82f58c3f3aaa1efec7d0d134";
+      };
+    };
+    "qrcode-terminal-0.12.0" = {
+      name = "qrcode-terminal";
+      packageName = "qrcode-terminal";
+      version = "0.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz";
+        sha512 = "EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==";
+      };
+    };
+    "qs-6.5.2" = {
+      name = "qs";
+      packageName = "qs";
+      version = "6.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz";
+        sha1 = "cb3ae806e8740444584ef154ce8ee98d403f3e36";
+      };
+    };
+    "querystring-0.2.0" = {
+      name = "querystring";
+      packageName = "querystring";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz";
+        sha1 = "b209849203bb25df820da756e747005878521620";
+      };
+    };
+    "quick-lru-1.1.0" = {
+      name = "quick-lru";
+      packageName = "quick-lru";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz";
+        sha1 = "4360b17c61136ad38078397ff11416e186dcfbb8";
+      };
+    };
+    "quote-0.4.0" = {
+      name = "quote";
+      packageName = "quote";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/quote/-/quote-0.4.0.tgz";
+        sha1 = "10839217f6c1362b89194044d29b233fd7f32f01";
+      };
+    };
+    "ramda-0.26.1" = {
+      name = "ramda";
+      packageName = "ramda";
+      version = "0.26.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ramda/-/ramda-0.26.1.tgz";
+        sha512 = "hLWjpy7EnsDBb0p+Z3B7rPi3GDeRG5ZtiI33kJhTt+ORCd38AbAIjB/9zRIUoeTbE/AVX5ZkU7m6bznsvrf8eQ==";
+      };
+    };
+    "ramda-0.27.1" = {
+      name = "ramda";
+      packageName = "ramda";
+      version = "0.27.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ramda/-/ramda-0.27.1.tgz";
+        sha512 = "PgIdVpn5y5Yns8vqb8FzBUEYn98V3xcPgawAkkgj0YJ0qDsnHCiNmZYfOGMgOvoB0eWFLpYbhxUR3mxfDIMvpw==";
+      };
+    };
+    "ramda-0.9.1" = {
+      name = "ramda";
+      packageName = "ramda";
+      version = "0.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ramda/-/ramda-0.9.1.tgz";
+        sha1 = "cc914dc3a82c608d003090203787c3f6826c1d87";
+      };
+    };
+    "range-parser-1.2.0" = {
+      name = "range-parser";
+      packageName = "range-parser";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz";
+        sha1 = "f49be6b487894ddc40dcc94a322f611092e00d5e";
+      };
+    };
+    "raw-body-2.4.1" = {
+      name = "raw-body";
+      packageName = "raw-body";
+      version = "2.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz";
+        sha512 = "9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==";
+      };
+    };
+    "rc-1.2.8" = {
+      name = "rc";
+      packageName = "rc";
+      version = "1.2.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz";
+        sha512 = "y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==";
+      };
+    };
+    "read-pkg-3.0.0" = {
+      name = "read-pkg";
+      packageName = "read-pkg";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz";
+        sha1 = "9cbc686978fee65d16c00e2b19c237fcf6e38389";
+      };
+    };
+    "read-pkg-4.0.1" = {
+      name = "read-pkg";
+      packageName = "read-pkg";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/read-pkg/-/read-pkg-4.0.1.tgz";
+        sha1 = "963625378f3e1c4d48c85872b5a6ec7d5d093237";
+      };
+    };
+    "read-pkg-5.2.0" = {
+      name = "read-pkg";
+      packageName = "read-pkg";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz";
+        sha512 = "Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==";
+      };
+    };
+    "read-pkg-up-3.0.0" = {
+      name = "read-pkg-up";
+      packageName = "read-pkg-up";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz";
+        sha1 = "3ed496685dba0f8fe118d0691dc51f4a1ff96f07";
+      };
+    };
+    "read-pkg-up-7.0.1" = {
+      name = "read-pkg-up";
+      packageName = "read-pkg-up";
+      version = "7.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz";
+        sha512 = "zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==";
+      };
+    };
+    "readable-stream-2.3.7" = {
+      name = "readable-stream";
+      packageName = "readable-stream";
+      version = "2.3.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz";
+        sha512 = "Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==";
+      };
+    };
+    "readable-stream-3.6.0" = {
+      name = "readable-stream";
+      packageName = "readable-stream";
+      version = "3.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz";
+        sha512 = "BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==";
+      };
+    };
+    "rechoir-0.6.2" = {
+      name = "rechoir";
+      packageName = "rechoir";
+      version = "0.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz";
+        sha1 = "85204b54dba82d5742e28c96756ef43af50e3384";
+      };
+    };
+    "redent-2.0.0" = {
+      name = "redent";
+      packageName = "redent";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz";
+        sha1 = "c1b2007b42d57eb1389079b3c8333639d5e1ccaa";
+      };
+    };
+    "redeyed-2.1.1" = {
+      name = "redeyed";
+      packageName = "redeyed";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/redeyed/-/redeyed-2.1.1.tgz";
+        sha1 = "8984b5815d99cb220469c99eeeffe38913e6cc0b";
+      };
+    };
+    "reduce-flatten-2.0.0" = {
+      name = "reduce-flatten";
+      packageName = "reduce-flatten";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-2.0.0.tgz";
+        sha512 = "EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==";
+      };
+    };
+    "reduce-flatten-3.0.0" = {
+      name = "reduce-flatten";
+      packageName = "reduce-flatten";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-3.0.0.tgz";
+        sha512 = "eczl8wAYBxJ6Egl6I1ECIF+8z6sHu+KE7BzaEDZTpPXKXfy9SUDQlVYwkRcNTjJLC3Iakxbhss50KuT/R6SYfg==";
+      };
+    };
+    "regenerator-runtime-0.13.5" = {
+      name = "regenerator-runtime";
+      packageName = "regenerator-runtime";
+      version = "0.13.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz";
+        sha512 = "ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==";
+      };
+    };
+    "regex-not-1.0.2" = {
+      name = "regex-not";
+      packageName = "regex-not";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz";
+        sha512 = "J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==";
+      };
+    };
+    "regexpp-3.1.0" = {
+      name = "regexpp";
+      packageName = "regexpp";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz";
+        sha512 = "ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==";
+      };
+    };
+    "registry-auth-token-3.3.2" = {
+      name = "registry-auth-token";
+      packageName = "registry-auth-token";
+      version = "3.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz";
+        sha512 = "JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==";
+      };
+    };
+    "registry-auth-token-4.1.1" = {
+      name = "registry-auth-token";
+      packageName = "registry-auth-token";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.1.tgz";
+        sha512 = "9bKS7nTl9+/A1s7tnPeGrUpRcVY+LUh7bfFgzpndALdPfXQBfQV77rQVtqgUV3ti4vc/Ik81Ex8UJDWDQ12zQA==";
+      };
+    };
+    "registry-url-3.1.0" = {
+      name = "registry-url";
+      packageName = "registry-url";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz";
+        sha1 = "3d4ef870f73dde1d77f0cf9a381432444e174942";
+      };
+    };
+    "repeat-element-1.1.3" = {
+      name = "repeat-element";
+      packageName = "repeat-element";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz";
+        sha512 = "ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==";
+      };
+    };
+    "repeat-string-1.6.1" = {
+      name = "repeat-string";
+      packageName = "repeat-string";
+      version = "1.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz";
+        sha1 = "8dcae470e1c88abc2d600fff4a776286da75e637";
+      };
+    };
+    "request-2.88.2" = {
+      name = "request";
+      packageName = "request";
+      version = "2.88.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/request/-/request-2.88.2.tgz";
+        sha512 = "MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==";
+      };
+    };
+    "request-progress-3.0.0" = {
+      name = "request-progress";
+      packageName = "request-progress";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz";
+        sha1 = "4ca754081c7fec63f505e4faa825aa06cd669dbe";
+      };
+    };
+    "require-directory-2.1.1" = {
+      name = "require-directory";
+      packageName = "require-directory";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz";
+        sha1 = "8c64ad5fd30dab1c976e2344ffe7f792a6a6df42";
+      };
+    };
+    "require-main-filename-2.0.0" = {
+      name = "require-main-filename";
+      packageName = "require-main-filename";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz";
+        sha512 = "NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==";
+      };
+    };
+    "resolve-1.16.1" = {
+      name = "resolve";
+      packageName = "resolve";
+      version = "1.16.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve/-/resolve-1.16.1.tgz";
+        sha512 = "rmAglCSqWWMrrBv/XM6sW0NuRFiKViw/W4d9EbC4pt+49H8JwHy+mcGmALTEg504AUDcLTvb1T2q3E9AnmY+ig==";
+      };
+    };
+    "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";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz";
+        sha512 = "pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==";
+      };
+    };
+    "resolve-from-5.0.0" = {
+      name = "resolve-from";
+      packageName = "resolve-from";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz";
+        sha512 = "qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==";
+      };
+    };
+    "resolve-path-1.4.0" = {
+      name = "resolve-path";
+      packageName = "resolve-path";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-path/-/resolve-path-1.4.0.tgz";
+        sha1 = "c4bda9f5efb2fce65247873ab36bb4d834fe16f7";
+      };
+    };
+    "resolve-url-0.2.1" = {
+      name = "resolve-url";
+      packageName = "resolve-url";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz";
+        sha1 = "2c637fe77c893afd2a663fe21aa9080068e2052a";
+      };
+    };
+    "responselike-2.0.0" = {
+      name = "responselike";
+      packageName = "responselike";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz";
+        sha512 = "xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==";
+      };
+    };
+    "restore-cursor-1.0.1" = {
+      name = "restore-cursor";
+      packageName = "restore-cursor";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz";
+        sha1 = "34661f46886327fed2991479152252df92daa541";
+      };
+    };
+    "restore-cursor-2.0.0" = {
+      name = "restore-cursor";
+      packageName = "restore-cursor";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz";
+        sha1 = "9f7ee287f82fd326d4fd162923d62129eee0dfaf";
+      };
+    };
+    "restore-cursor-3.1.0" = {
+      name = "restore-cursor";
+      packageName = "restore-cursor";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz";
+        sha512 = "l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==";
+      };
+    };
+    "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==";
+      };
+    };
+    "retry-0.12.0" = {
+      name = "retry";
+      packageName = "retry";
+      version = "0.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz";
+        sha1 = "1b42a6266a21f07421d1b0b54b7dc167b01c013b";
+      };
+    };
+    "reusify-1.0.4" = {
+      name = "reusify";
+      packageName = "reusify";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz";
+        sha512 = "U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==";
+      };
+    };
+    "rimraf-2.6.3" = {
+      name = "rimraf";
+      packageName = "rimraf";
+      version = "2.6.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz";
+        sha512 = "mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==";
+      };
+    };
+    "rimraf-3.0.2" = {
+      name = "rimraf";
+      packageName = "rimraf";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz";
+        sha512 = "JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==";
+      };
+    };
+    "run-async-2.4.1" = {
+      name = "run-async";
+      packageName = "run-async";
+      version = "2.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz";
+        sha512 = "tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==";
+      };
+    };
+    "run-node-1.0.0" = {
+      name = "run-node";
+      packageName = "run-node";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/run-node/-/run-node-1.0.0.tgz";
+        sha512 = "kc120TBlQ3mih1LSzdAJXo4xn/GWS2ec0l3S+syHDXP9uRr0JAT8Qd3mdMuyjqCzeZktgP3try92cEgf9Nks8A==";
+      };
+    };
+    "run-parallel-1.1.9" = {
+      name = "run-parallel";
+      packageName = "run-parallel";
+      version = "1.1.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz";
+        sha512 = "DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==";
+      };
+    };
+    "rx-4.1.0" = {
+      name = "rx";
+      packageName = "rx";
+      version = "4.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz";
+        sha1 = "a5f13ff79ef3b740fe30aa803fb09f98805d4782";
+      };
+    };
+    "rxjs-6.5.5" = {
+      name = "rxjs";
+      packageName = "rxjs";
+      version = "6.5.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rxjs/-/rxjs-6.5.5.tgz";
+        sha512 = "WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ==";
+      };
+    };
+    "safe-buffer-5.1.2" = {
+      name = "safe-buffer";
+      packageName = "safe-buffer";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz";
+        sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==";
+      };
+    };
+    "safe-regex-1.1.0" = {
+      name = "safe-regex";
+      packageName = "safe-regex";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz";
+        sha1 = "40a3669f3b077d1e943d44629e157dd48023bf2e";
+      };
+    };
+    "safer-buffer-2.1.2" = {
+      name = "safer-buffer";
+      packageName = "safer-buffer";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz";
+        sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
+      };
+    };
+    "secure-keys-1.0.0" = {
+      name = "secure-keys";
+      packageName = "secure-keys";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/secure-keys/-/secure-keys-1.0.0.tgz";
+        sha1 = "f0c82d98a3b139a8776a8808050b824431087fca";
+      };
+    };
+    "semantic-release-15.13.32" = {
+      name = "semantic-release";
+      packageName = "semantic-release";
+      version = "15.13.32";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semantic-release/-/semantic-release-15.13.32.tgz";
+        sha512 = "+K+GS50jBOJQvoByBM119a5ILqKC9mRYirjBWgfredhnORHjlhsPZZz1aRjEWlx6PzKWYLuLBg7F4e3/tm3v9Q==";
+      };
+    };
+    "semver-5.7.1" = {
+      name = "semver";
+      packageName = "semver";
+      version = "5.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz";
+        sha512 = "sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==";
+      };
+    };
+    "semver-6.3.0" = {
+      name = "semver";
+      packageName = "semver";
+      version = "6.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz";
+        sha512 = "b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==";
+      };
+    };
+    "semver-7.3.2" = {
+      name = "semver";
+      packageName = "semver";
+      version = "7.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz";
+        sha512 = "OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==";
+      };
+    };
+    "semver-compare-1.0.0" = {
+      name = "semver-compare";
+      packageName = "semver-compare";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz";
+        sha1 = "0dee216a1c941ab37e9efb1788f6afc5ff5537fc";
+      };
+    };
+    "semver-regex-2.0.0" = {
+      name = "semver-regex";
+      packageName = "semver-regex";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz";
+        sha512 = "mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==";
+      };
+    };
+    "serve-11.3.0" = {
+      name = "serve";
+      packageName = "serve";
+      version = "11.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serve/-/serve-11.3.0.tgz";
+        sha512 = "AU0g50Q1y5EVFX56bl0YX5OtVjUX1N737/Htj93dQGKuHiuLvVB45PD8Muar70W6Kpdlz8aNJfoUqTyAq9EE/A==";
+      };
+    };
+    "serve-handler-6.1.2" = {
+      name = "serve-handler";
+      packageName = "serve-handler";
+      version = "6.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.2.tgz";
+        sha512 = "RFh49wX7zJmmOVDcIjiDSJnMH+ItQEvyuYLYuDBVoA/xmQSCuj+uRmk1cmBB5QQlI3qOiWKp6p4DUGY+Z5AB2A==";
+      };
+    };
+    "serve-index-75lb-2.0.1" = {
+      name = "serve-index-75lb";
+      packageName = "serve-index-75lb";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serve-index-75lb/-/serve-index-75lb-2.0.1.tgz";
+        sha512 = "/d9r8bqJlFQcwy0a0nb1KnWAA+Mno+V+VaoKocdkbW5aXKRQd/+4bfnRhQRQr6uEoYwTRJ4xgztOyCJvWcpBpQ==";
+      };
+    };
+    "set-blocking-2.0.0" = {
+      name = "set-blocking";
+      packageName = "set-blocking";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz";
+        sha1 = "045f9782d011ae9a6803ddd382b24392b3d890f7";
+      };
+    };
+    "set-value-2.0.1" = {
+      name = "set-value";
+      packageName = "set-value";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz";
+        sha512 = "JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==";
+      };
+    };
+    "setprototypeof-1.1.0" = {
+      name = "setprototypeof";
+      packageName = "setprototypeof";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz";
+        sha512 = "BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==";
+      };
+    };
+    "setprototypeof-1.1.1" = {
+      name = "setprototypeof";
+      packageName = "setprototypeof";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz";
+        sha512 = "JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==";
+      };
+    };
+    "setprototypeof-1.2.0" = {
+      name = "setprototypeof";
+      packageName = "setprototypeof";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz";
+        sha512 = "E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==";
+      };
+    };
+    "shebang-command-1.2.0" = {
+      name = "shebang-command";
+      packageName = "shebang-command";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz";
+        sha1 = "44aac65b695b03398968c39f363fee5deafdf1ea";
+      };
+    };
+    "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-1.0.0" = {
+      name = "shebang-regex";
+      packageName = "shebang-regex";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz";
+        sha1 = "da42f49740c0b42db2ca9728571cb190c98efea3";
+      };
+    };
+    "shebang-regex-3.0.0" = {
+      name = "shebang-regex";
+      packageName = "shebang-regex";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz";
+        sha512 = "7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==";
+      };
+    };
+    "shell-quote-1.7.2" = {
+      name = "shell-quote";
+      packageName = "shell-quote";
+      version = "1.7.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz";
+        sha512 = "mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==";
+      };
+    };
+    "shelljs-0.8.4" = {
+      name = "shelljs";
+      packageName = "shelljs";
+      version = "0.8.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shelljs/-/shelljs-0.8.4.tgz";
+        sha512 = "7gk3UZ9kOfPLIAbslLzyWeGiEqx9e3rxwZM0KE6EL8GlGwjym9Mrlx5/p33bWTu9YG6vcS4MBxYZDHYr5lr8BQ==";
+      };
+    };
+    "signal-exit-3.0.3" = {
+      name = "signal-exit";
+      packageName = "signal-exit";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz";
+        sha512 = "VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==";
+      };
+    };
+    "signale-1.4.0" = {
+      name = "signale";
+      packageName = "signale";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/signale/-/signale-1.4.0.tgz";
+        sha512 = "iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==";
+      };
+    };
+    "slash-2.0.0" = {
+      name = "slash";
+      packageName = "slash";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz";
+        sha512 = "ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==";
+      };
+    };
+    "slash-3.0.0" = {
+      name = "slash";
+      packageName = "slash";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz";
+        sha1 = "6539be870c165adbd5240220dbe361f1bc4d4634";
+      };
+    };
+    "slice-ansi-0.0.4" = {
+      name = "slice-ansi";
+      packageName = "slice-ansi";
+      version = "0.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz";
+        sha1 = "edbf8903f66f7ce2f8eafd6ceed65e264c831b35";
+      };
+    };
+    "slice-ansi-2.1.0" = {
+      name = "slice-ansi";
+      packageName = "slice-ansi";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz";
+        sha512 = "Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==";
+      };
+    };
+    "snapdragon-0.8.2" = {
+      name = "snapdragon";
+      packageName = "snapdragon";
+      version = "0.8.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz";
+        sha512 = "FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==";
+      };
+    };
+    "snapdragon-node-2.1.1" = {
+      name = "snapdragon-node";
+      packageName = "snapdragon-node";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz";
+        sha512 = "O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==";
+      };
+    };
+    "snapdragon-util-3.0.1" = {
+      name = "snapdragon-util";
+      packageName = "snapdragon-util";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz";
+        sha512 = "mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==";
+      };
+    };
+    "sort-object-keys-1.1.3" = {
+      name = "sort-object-keys";
+      packageName = "sort-object-keys";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-1.1.3.tgz";
+        sha512 = "855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==";
+      };
+    };
+    "sort-package-json-1.42.2" = {
+      name = "sort-package-json";
+      packageName = "sort-package-json";
+      version = "1.42.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sort-package-json/-/sort-package-json-1.42.2.tgz";
+        sha512 = "B4cIYKeBdNUJXHPxe0G+x3uHHpSWSgJ3z62+W1C28wT1whkEhrz/B3r9lSyW+VVhz1rc+ymGmNkr1mJ323w0xQ==";
+      };
+    };
+    "source-map-0.5.7" = {
+      name = "source-map";
+      packageName = "source-map";
+      version = "0.5.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz";
+        sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc";
+      };
+    };
+    "source-map-0.6.1" = {
+      name = "source-map";
+      packageName = "source-map";
+      version = "0.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz";
+        sha512 = "UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==";
+      };
+    };
+    "source-map-resolve-0.5.3" = {
+      name = "source-map-resolve";
+      packageName = "source-map-resolve";
+      version = "0.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz";
+        sha512 = "Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==";
+      };
+    };
+    "source-map-url-0.4.0" = {
+      name = "source-map-url";
+      packageName = "source-map-url";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz";
+        sha1 = "3e935d7ddd73631b97659956d55128e87b5084a3";
+      };
+    };
+    "spawn-error-forwarder-1.0.0" = {
+      name = "spawn-error-forwarder";
+      packageName = "spawn-error-forwarder";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spawn-error-forwarder/-/spawn-error-forwarder-1.0.0.tgz";
+        sha1 = "1afd94738e999b0346d7b9fc373be55e07577029";
+      };
+    };
+    "spdx-correct-3.1.0" = {
+      name = "spdx-correct";
+      packageName = "spdx-correct";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz";
+        sha512 = "lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==";
+      };
+    };
+    "spdx-exceptions-2.2.0" = {
+      name = "spdx-exceptions";
+      packageName = "spdx-exceptions";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz";
+        sha512 = "2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==";
+      };
+    };
+    "spdx-expression-parse-3.0.0" = {
+      name = "spdx-expression-parse";
+      packageName = "spdx-expression-parse";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz";
+        sha512 = "Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==";
+      };
+    };
+    "spdx-license-ids-3.0.5" = {
+      name = "spdx-license-ids";
+      packageName = "spdx-license-ids";
+      version = "3.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz";
+        sha512 = "J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==";
+      };
+    };
+    "split-0.3.3" = {
+      name = "split";
+      packageName = "split";
+      version = "0.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/split/-/split-0.3.3.tgz";
+        sha1 = "cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f";
+      };
+    };
+    "split-1.0.1" = {
+      name = "split";
+      packageName = "split";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/split/-/split-1.0.1.tgz";
+        sha512 = "mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==";
+      };
+    };
+    "split-string-3.1.0" = {
+      name = "split-string";
+      packageName = "split-string";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz";
+        sha512 = "NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==";
+      };
+    };
+    "split2-1.0.0" = {
+      name = "split2";
+      packageName = "split2";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/split2/-/split2-1.0.0.tgz";
+        sha1 = "52e2e221d88c75f9a73f90556e263ff96772b314";
+      };
+    };
+    "split2-2.2.0" = {
+      name = "split2";
+      packageName = "split2";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz";
+        sha512 = "RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==";
+      };
+    };
+    "spots-0.4.0" = {
+      name = "spots";
+      packageName = "spots";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spots/-/spots-0.4.0.tgz";
+        sha1 = "01eec5efc143669d9d3a20e3eec8b8cbd9842df6";
+      };
+    };
+    "sprintf-js-1.0.3" = {
+      name = "sprintf-js";
+      packageName = "sprintf-js";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz";
+        sha1 = "04e6926f662895354f3dd015203633b857297e2c";
+      };
+    };
+    "sshpk-1.16.1" = {
+      name = "sshpk";
+      packageName = "sshpk";
+      version = "1.16.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz";
+        sha1 = "fb661c0bef29b39db40769ee39fa70093d6f6877";
+      };
+    };
+    "start-server-and-test-1.10.6" = {
+      name = "start-server-and-test";
+      packageName = "start-server-and-test";
+      version = "1.10.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/start-server-and-test/-/start-server-and-test-1.10.6.tgz";
+        sha1 = "43355173e49a165b0ce9e928733b574bb877379c";
+      };
+    };
+    "static-extend-0.1.2" = {
+      name = "static-extend";
+      packageName = "static-extend";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz";
+        sha1 = "60809c39cbff55337226fd5e0b520f341f1fb5c6";
+      };
+    };
+    "statuses-1.5.0" = {
+      name = "statuses";
+      packageName = "statuses";
+      version = "1.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz";
+        sha1 = "161c7dac177659fd9811f43771fa99381478628c";
+      };
+    };
+    "stop-build-1.1.0" = {
+      name = "stop-build";
+      packageName = "stop-build";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stop-build/-/stop-build-1.1.0.tgz";
+        sha1 = "06a7b19d998a436ed3a8bbe96c8fb341e91069be";
+      };
+    };
+    "stream-combiner-0.0.4" = {
+      name = "stream-combiner";
+      packageName = "stream-combiner";
+      version = "0.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz";
+        sha1 = "4d5e433c185261dde623ca3f44c586bcf5c4ad14";
+      };
+    };
+    "stream-combiner2-1.1.1" = {
+      name = "stream-combiner2";
+      packageName = "stream-combiner2";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz";
+        sha1 = "fb4d8a1420ea362764e21ad4780397bebcb41cbe";
+      };
+    };
+    "stream-log-stats-3.0.2" = {
+      name = "stream-log-stats";
+      packageName = "stream-log-stats";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-log-stats/-/stream-log-stats-3.0.2.tgz";
+        sha512 = "393j7aeF9iRdHvyANqEQU82UQmpw2CTxgsT83caefh+lOxavVLbVrw8Mr4zjXeZLh2+xeHZMKfVx4T0rJ/EchA==";
+      };
+    };
+    "stream-slice-0.1.2" = {
+      name = "stream-slice";
+      packageName = "stream-slice";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-slice/-/stream-slice-0.1.2.tgz";
+        sha1 = "2dc4f4e1b936fb13f3eb39a2def1932798d07a4b";
+      };
+    };
+    "stream-via-1.0.4" = {
+      name = "stream-via";
+      packageName = "stream-via";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-via/-/stream-via-1.0.4.tgz";
+        sha512 = "DBp0lSvX5G9KGRDTkR/R+a29H+Wk2xItOF+MpZLLNDWbEV9tGPnqLPxHEYjmiz8xGtJHRIqmI+hCjmNzqoA4nQ==";
+      };
+    };
+    "streaming-json-stringify-3.1.0" = {
+      name = "streaming-json-stringify";
+      packageName = "streaming-json-stringify";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/streaming-json-stringify/-/streaming-json-stringify-3.1.0.tgz";
+        sha1 = "80200437a993cc39c4fe00263b7b3b903ac87af5";
+      };
+    };
+    "string-width-1.0.2" = {
+      name = "string-width";
+      packageName = "string-width";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz";
+        sha1 = "118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3";
+      };
+    };
+    "string-width-2.1.1" = {
+      name = "string-width";
+      packageName = "string-width";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz";
+        sha512 = "nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==";
+      };
+    };
+    "string-width-3.1.0" = {
+      name = "string-width";
+      packageName = "string-width";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz";
+        sha512 = "vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==";
+      };
+    };
+    "string-width-4.2.0" = {
+      name = "string-width";
+      packageName = "string-width";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz";
+        sha512 = "zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==";
+      };
+    };
+    "string-width-4.2.2" = {
+      name = "string-width";
+      packageName = "string-width";
+      version = "4.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz";
+        sha512 = "XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==";
+      };
+    };
+    "string.prototype.padend-3.1.0" = {
+      name = "string.prototype.padend";
+      packageName = "string.prototype.padend";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.0.tgz";
+        sha512 = "3aIv8Ffdp8EZj8iLwREGpQaUZiPyrWrpzMBHvkiSW/bK/EGve9np07Vwy7IJ5waydpGXzQZu/F8Oze2/IWkBaA==";
+      };
+    };
+    "string.prototype.trimend-1.0.1" = {
+      name = "string.prototype.trimend";
+      packageName = "string.prototype.trimend";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz";
+        sha512 = "LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==";
+      };
+    };
+    "string.prototype.trimleft-2.1.2" = {
+      name = "string.prototype.trimleft";
+      packageName = "string.prototype.trimleft";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz";
+        sha512 = "gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw==";
+      };
+    };
+    "string.prototype.trimright-2.1.2" = {
+      name = "string.prototype.trimright";
+      packageName = "string.prototype.trimright";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz";
+        sha512 = "ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg==";
+      };
+    };
+    "string.prototype.trimstart-1.0.1" = {
+      name = "string.prototype.trimstart";
+      packageName = "string.prototype.trimstart";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz";
+        sha512 = "XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==";
+      };
+    };
+    "string_decoder-1.1.1" = {
+      name = "string_decoder";
+      packageName = "string_decoder";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz";
+        sha1 = "9cf1611ba62685d7030ae9e4ba34149c3af03fc8";
+      };
+    };
+    "strip-ansi-3.0.1" = {
+      name = "strip-ansi";
+      packageName = "strip-ansi";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz";
+        sha1 = "6a385fb8853d952d5ff05d0e8aaf94278dc63dcf";
+      };
+    };
+    "strip-ansi-4.0.0" = {
+      name = "strip-ansi";
+      packageName = "strip-ansi";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz";
+        sha1 = "a8479022eb1ac368a871389b635262c505ee368f";
+      };
+    };
+    "strip-ansi-5.2.0" = {
+      name = "strip-ansi";
+      packageName = "strip-ansi";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz";
+        sha512 = "DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==";
+      };
+    };
+    "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==";
+      };
+    };
+    "strip-bom-3.0.0" = {
+      name = "strip-bom";
+      packageName = "strip-bom";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz";
+        sha1 = "2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3";
+      };
+    };
+    "strip-eof-1.0.0" = {
+      name = "strip-eof";
+      packageName = "strip-eof";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz";
+        sha1 = "bb43ff5598a6eb05d89b59fcd129c983313606bf";
+      };
+    };
+    "strip-final-newline-2.0.0" = {
+      name = "strip-final-newline";
+      packageName = "strip-final-newline";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz";
+        sha1 = "89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad";
+      };
+    };
+    "strip-indent-2.0.0" = {
+      name = "strip-indent";
+      packageName = "strip-indent";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz";
+        sha1 = "5ef8db295d01e6ed6cbf7aab96998d7822527b68";
+      };
+    };
+    "strip-json-comments-2.0.1" = {
+      name = "strip-json-comments";
+      packageName = "strip-json-comments";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz";
+        sha1 = "3c531942e908c2697c0ec344858c286c7ca0a60a";
+      };
+    };
+    "strip-json-comments-3.1.0" = {
+      name = "strip-json-comments";
+      packageName = "strip-json-comments";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.0.tgz";
+        sha512 = "e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w==";
+      };
+    };
+    "supports-color-2.0.0" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz";
+        sha1 = "535d045ce6b6363fa40117084629995e9df324c7";
+      };
+    };
+    "supports-color-5.5.0" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "5.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz";
+        sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==";
+      };
+    };
+    "supports-color-7.1.0" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "7.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz";
+        sha512 = "oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==";
+      };
+    };
+    "supports-color-7.2.0" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "7.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz";
+        sha512 = "qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==";
+      };
+    };
+    "supports-color-8.1.1" = {
+      name = "supports-color";
+      packageName = "supports-color";
+      version = "8.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz";
+        sha512 = "MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==";
+      };
+    };
+    "supports-hyperlinks-1.0.1" = {
+      name = "supports-hyperlinks";
+      packageName = "supports-hyperlinks";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-1.0.1.tgz";
+        sha512 = "HHi5kVSefKaJkGYXbDuKbUGRVxqnWGn3J2e39CYcNJEfWciGq2zYtOhXLTlvrOZW1QU7VX67w7fMmWafHX9Pfw==";
+      };
+    };
+    "symbol-observable-1.2.0" = {
+      name = "symbol-observable";
+      packageName = "symbol-observable";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz";
+        sha512 = "e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==";
+      };
+    };
+    "table-5.4.6" = {
+      name = "table";
+      packageName = "table";
+      version = "5.4.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/table/-/table-5.4.6.tgz";
+        sha512 = "wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==";
+      };
+    };
+    "table-layout-1.0.1" = {
+      name = "table-layout";
+      packageName = "table-layout";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/table-layout/-/table-layout-1.0.1.tgz";
+        sha512 = "dEquqYNJiGwY7iPfZ3wbXDI944iqanTSchrACLL2nOB+1r+h1Nzu2eH+DuPPvWvm5Ry7iAPeFlgEtP5bIp5U7Q==";
+      };
+    };
+    "tar-fs-2.1.1" = {
+      name = "tar-fs";
+      packageName = "tar-fs";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz";
+        sha512 = "V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==";
+      };
+    };
+    "tar-stream-2.2.0" = {
+      name = "tar-stream";
+      packageName = "tar-stream";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz";
+        sha512 = "ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==";
+      };
+    };
+    "temp-dir-1.0.0" = {
+      name = "temp-dir";
+      packageName = "temp-dir";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz";
+        sha1 = "0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d";
+      };
+    };
+    "tempy-0.3.0" = {
+      name = "tempy";
+      packageName = "tempy";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tempy/-/tempy-0.3.0.tgz";
+        sha512 = "WrH/pui8YCwmeiAoxV+lpRH9HpRtgBhSR2ViBPgpGb/wnYDzp21R4MN45fsCGvLROvY67o3byhJRYRONJyImVQ==";
+      };
+    };
+    "term-size-1.2.0" = {
+      name = "term-size";
+      packageName = "term-size";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz";
+        sha1 = "458b83887f288fc56d6fffbfad262e26638efa69";
+      };
+    };
+    "text-extensions-1.9.0" = {
+      name = "text-extensions";
+      packageName = "text-extensions";
+      version = "1.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz";
+        sha512 = "wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==";
+      };
+    };
+    "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";
+      };
+    };
+    "thenify-3.3.1" = {
+      name = "thenify";
+      packageName = "thenify";
+      version = "3.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz";
+        sha512 = "RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==";
+      };
+    };
+    "thenify-all-1.6.0" = {
+      name = "thenify-all";
+      packageName = "thenify-all";
+      version = "1.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz";
+        sha1 = "1a1918d402d8fc3f98fbf234db0bcc8cc10e9726";
+      };
+    };
+    "throttleit-1.0.0" = {
+      name = "throttleit";
+      packageName = "throttleit";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz";
+        sha1 = "9e785836daf46743145a5984b6268d828528ac6c";
+      };
+    };
+    "through-2.3.8" = {
+      name = "through";
+      packageName = "through";
+      version = "2.3.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/through/-/through-2.3.8.tgz";
+        sha1 = "0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5";
+      };
+    };
+    "through2-2.0.5" = {
+      name = "through2";
+      packageName = "through2";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz";
+        sha512 = "/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==";
+      };
+    };
+    "through2-3.0.1" = {
+      name = "through2";
+      packageName = "through2";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz";
+        sha512 = "M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww==";
+      };
+    };
+    "tmp-0.0.33" = {
+      name = "tmp";
+      packageName = "tmp";
+      version = "0.0.33";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz";
+        sha512 = "jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==";
+      };
+    };
+    "tmp-0.2.1" = {
+      name = "tmp";
+      packageName = "tmp";
+      version = "0.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz";
+        sha512 = "76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==";
+      };
+    };
+    "to-object-path-0.3.0" = {
+      name = "to-object-path";
+      packageName = "to-object-path";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz";
+        sha1 = "297588b7b0e7e0ac08e04e672f85c1f4999e17af";
+      };
+    };
+    "to-readable-stream-2.1.0" = {
+      name = "to-readable-stream";
+      packageName = "to-readable-stream";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-2.1.0.tgz";
+        sha512 = "o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w==";
+      };
+    };
+    "to-regex-3.0.2" = {
+      name = "to-regex";
+      packageName = "to-regex";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz";
+        sha512 = "FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==";
+      };
+    };
+    "to-regex-range-2.1.1" = {
+      name = "to-regex-range";
+      packageName = "to-regex-range";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz";
+        sha1 = "7c80c17b9dfebe599e27367e0d4dd5590141db38";
+      };
+    };
+    "to-regex-range-5.0.1" = {
+      name = "to-regex-range";
+      packageName = "to-regex-range";
+      version = "5.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz";
+        sha1 = "1648c44aae7c8d988a326018ed72f5b4dd0392e4";
+      };
+    };
+    "toidentifier-1.0.0" = {
+      name = "toidentifier";
+      packageName = "toidentifier";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz";
+        sha512 = "yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==";
+      };
+    };
+    "tough-cookie-2.5.0" = {
+      name = "tough-cookie";
+      packageName = "tough-cookie";
+      version = "2.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz";
+        sha512 = "nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==";
+      };
+    };
+    "traverse-0.6.6" = {
+      name = "traverse";
+      packageName = "traverse";
+      version = "0.6.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz";
+        sha1 = "cbdf560fd7b9af632502fed40f918c157ea97137";
+      };
+    };
+    "trim-newlines-2.0.0" = {
+      name = "trim-newlines";
+      packageName = "trim-newlines";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz";
+        sha1 = "b403d0b91be50c331dfc4b82eeceb22c3de16d20";
+      };
+    };
+    "trim-off-newlines-1.0.1" = {
+      name = "trim-off-newlines";
+      packageName = "trim-off-newlines";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz";
+        sha1 = "9f9ba9d9efa8764c387698bcbfeb2c848f11adb3";
+      };
+    };
+    "tslib-1.11.1" = {
+      name = "tslib";
+      packageName = "tslib";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz";
+        sha512 = "aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==";
+      };
+    };
+    "tsscmp-1.0.6" = {
+      name = "tsscmp";
+      packageName = "tsscmp";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz";
+        sha512 = "LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==";
+      };
+    };
+    "tunnel-agent-0.6.0" = {
+      name = "tunnel-agent";
+      packageName = "tunnel-agent";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz";
+        sha1 = "27a5dea06b36b04a0a9966774b290868f0fc40fd";
+      };
+    };
+    "tweetnacl-0.14.5" = {
+      name = "tweetnacl";
+      packageName = "tweetnacl";
+      version = "0.14.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz";
+        sha1 = "5ae68177f192d4456269d108afa93ff8743f4f64";
+      };
+    };
+    "type-check-0.4.0" = {
+      name = "type-check";
+      packageName = "type-check";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz";
+        sha512 = "XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==";
+      };
+    };
+    "type-fest-0.10.0" = {
+      name = "type-fest";
+      packageName = "type-fest";
+      version = "0.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-fest/-/type-fest-0.10.0.tgz";
+        sha512 = "EUV9jo4sffrwlg8s0zDhP0T2WD3pru5Xi0+HTE3zTUmBaZNhfkite9PdSJwdXLwPVW0jnAHT56pZHIOYckPEiw==";
+      };
+    };
+    "type-fest-0.11.0" = {
+      name = "type-fest";
+      packageName = "type-fest";
+      version = "0.11.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz";
+        sha512 = "OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==";
+      };
+    };
+    "type-fest-0.3.1" = {
+      name = "type-fest";
+      packageName = "type-fest";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz";
+        sha512 = "cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==";
+      };
+    };
+    "type-fest-0.6.0" = {
+      name = "type-fest";
+      packageName = "type-fest";
+      version = "0.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz";
+        sha512 = "q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==";
+      };
+    };
+    "type-fest-0.8.1" = {
+      name = "type-fest";
+      packageName = "type-fest";
+      version = "0.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz";
+        sha512 = "4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==";
+      };
+    };
+    "type-is-1.6.18" = {
+      name = "type-is";
+      packageName = "type-is";
+      version = "1.6.18";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz";
+        sha512 = "TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==";
+      };
+    };
+    "typedarray-0.0.6" = {
+      name = "typedarray";
+      packageName = "typedarray";
+      version = "0.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz";
+        sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777";
+      };
+    };
+    "typescript-3.7.4" = {
+      name = "typescript";
+      packageName = "typescript";
+      version = "3.7.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typescript/-/typescript-3.7.4.tgz";
+        sha512 = "A25xv5XCtarLwXpcDNZzCGvW2D1S3/bACratYBx2sax8PefsFhlYmkQicKHvpYflFS8if4zne5zT5kpJ7pzuvw==";
+      };
+    };
+    "typical-4.0.0" = {
+      name = "typical";
+      packageName = "typical";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz";
+        sha512 = "VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==";
+      };
+    };
+    "typical-5.2.0" = {
+      name = "typical";
+      packageName = "typical";
+      version = "5.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz";
+        sha512 = "dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==";
+      };
+    };
+    "typical-6.0.1" = {
+      name = "typical";
+      packageName = "typical";
+      version = "6.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typical/-/typical-6.0.1.tgz";
+        sha512 = "+g3NEp7fJLe9DPa1TArHm9QAA7YciZmWnfAqEaFrBihQ7epOv9i99rjtgb6Iz0wh3WuQDjsCTDfgRoGnmHN81A==";
+      };
+    };
+    "uglify-js-3.9.1" = {
+      name = "uglify-js";
+      packageName = "uglify-js";
+      version = "3.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.9.1.tgz";
+        sha512 = "JUPoL1jHsc9fOjVFHdQIhqEEJsQvfKDjlubcCilu8U26uZ73qOg8VsN8O1jbuei44ZPlwL7kmbAdM4tzaUvqnA==";
+      };
+    };
+    "unbzip2-stream-1.4.3" = {
+      name = "unbzip2-stream";
+      packageName = "unbzip2-stream";
+      version = "1.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz";
+        sha512 = "mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==";
+      };
+    };
+    "union-value-1.0.1" = {
+      name = "union-value";
+      packageName = "union-value";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz";
+        sha512 = "tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==";
+      };
+    };
+    "unique-string-1.0.0" = {
+      name = "unique-string";
+      packageName = "unique-string";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz";
+        sha1 = "9e1057cca851abb93398f8b33ae187b99caec11a";
+      };
+    };
+    "universal-user-agent-4.0.1" = {
+      name = "universal-user-agent";
+      packageName = "universal-user-agent";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-4.0.1.tgz";
+        sha512 = "LnST3ebHwVL2aNe4mejI9IQh2HfZ1RLo8Io2HugSif8ekzD1TlWpHpColOB/eh8JHMLkGH3Akqf040I+4ylNxg==";
+      };
+    };
+    "universal-user-agent-5.0.0" = {
+      name = "universal-user-agent";
+      packageName = "universal-user-agent";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-5.0.0.tgz";
+        sha512 = "B5TPtzZleXyPrUMKCpEHFmVhMN6EhmJYjG5PQna9s7mXeSqGTLap4OpqLl5FCEFUI3UBmllkETwKf/db66Y54Q==";
+      };
+    };
+    "universalify-0.1.2" = {
+      name = "universalify";
+      packageName = "universalify";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz";
+        sha512 = "rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==";
+      };
+    };
+    "universalify-2.0.0" = {
+      name = "universalify";
+      packageName = "universalify";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz";
+        sha512 = "hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==";
+      };
+    };
+    "unpipe-1.0.0" = {
+      name = "unpipe";
+      packageName = "unpipe";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz";
+        sha1 = "b2bf4ee8514aae6165b4817829d21b2ef49904ec";
+      };
+    };
+    "unset-value-1.0.0" = {
+      name = "unset-value";
+      packageName = "unset-value";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz";
+        sha1 = "8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559";
+      };
+    };
+    "untildify-4.0.0" = {
+      name = "untildify";
+      packageName = "untildify";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz";
+        sha512 = "KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==";
+      };
+    };
+    "update-check-1.5.2" = {
+      name = "update-check";
+      packageName = "update-check";
+      version = "1.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/update-check/-/update-check-1.5.2.tgz";
+        sha512 = "1TrmYLuLj/5ZovwUS7fFd1jMH3NnFDN1y1A8dboedIDt7zs/zJMo6TwwlhYKkSeEwzleeiSBV5/3c9ufAQWDaQ==";
+      };
+    };
+    "uri-js-4.2.2" = {
+      name = "uri-js";
+      packageName = "uri-js";
+      version = "4.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz";
+        sha512 = "KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==";
+      };
+    };
+    "urix-0.1.0" = {
+      name = "urix";
+      packageName = "urix";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz";
+        sha1 = "da937f7a62e21fec1fd18d49b35c2935067a6c72";
+      };
+    };
+    "url-0.11.0" = {
+      name = "url";
+      packageName = "url";
+      version = "0.11.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/url/-/url-0.11.0.tgz";
+        sha1 = "3838e97cfc60521eb73c525a8e55bfdd9e2e28f1";
+      };
+    };
+    "url-join-4.0.1" = {
+      name = "url-join";
+      packageName = "url-join";
+      version = "4.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/url-join/-/url-join-4.0.1.tgz";
+        sha512 = "jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==";
+      };
+    };
+    "use-3.1.1" = {
+      name = "use";
+      packageName = "use";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/use/-/use-3.1.1.tgz";
+        sha512 = "cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==";
+      };
+    };
+    "util-deprecate-1.0.2" = {
+      name = "util-deprecate";
+      packageName = "util-deprecate";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz";
+        sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf";
+      };
+    };
+    "uuid-3.4.0" = {
+      name = "uuid";
+      packageName = "uuid";
+      version = "3.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz";
+        sha512 = "HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==";
+      };
+    };
+    "v8-compile-cache-2.1.0" = {
+      name = "v8-compile-cache";
+      packageName = "v8-compile-cache";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz";
+        sha512 = "usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==";
+      };
+    };
+    "validate-npm-package-license-3.0.4" = {
+      name = "validate-npm-package-license";
+      packageName = "validate-npm-package-license";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz";
+        sha512 = "DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==";
+      };
+    };
+    "vary-1.1.2" = {
+      name = "vary";
+      packageName = "vary";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz";
+        sha1 = "2299f02c6ded30d4a5961b0b9f74524a18f634fc";
+      };
+    };
+    "verror-1.10.0" = {
+      name = "verror";
+      packageName = "verror";
+      version = "1.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz";
+        sha1 = "3a105ca17053af55d6e270c1f8288682e18da400";
+      };
+    };
+    "wait-on-3.3.0" = {
+      name = "wait-on";
+      packageName = "wait-on";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wait-on/-/wait-on-3.3.0.tgz";
+        sha1 = "9940981d047a72a9544a97b8b5fca45b2170a082";
+      };
+    };
+    "walk-back-4.0.0" = {
+      name = "walk-back";
+      packageName = "walk-back";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/walk-back/-/walk-back-4.0.0.tgz";
+        sha512 = "kudCA8PXVQfrqv2mFTG72vDBRi8BKWxGgFLwPpzHcpZnSwZk93WMwUDVcLHWNsnm+Y0AC4Vb6MUNRgaHfyV2DQ==";
+      };
+    };
+    "weak-map-1.0.5" = {
+      name = "weak-map";
+      packageName = "weak-map";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/weak-map/-/weak-map-1.0.5.tgz";
+        sha1 = "79691584d98607f5070bd3b70a40e6bb22e401eb";
+      };
+    };
+    "which-1.3.1" = {
+      name = "which";
+      packageName = "which";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which/-/which-1.3.1.tgz";
+        sha512 = "HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==";
+      };
+    };
+    "which-2.0.2" = {
+      name = "which";
+      packageName = "which";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which/-/which-2.0.2.tgz";
+        sha512 = "BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==";
+      };
+    };
+    "which-module-2.0.0" = {
+      name = "which-module";
+      packageName = "which-module";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz";
+        sha1 = "d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a";
+      };
+    };
+    "widest-line-2.0.1" = {
+      name = "widest-line";
+      packageName = "widest-line";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz";
+        sha512 = "Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==";
+      };
+    };
+    "window-size-0.1.4" = {
+      name = "window-size";
+      packageName = "window-size";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz";
+        sha1 = "f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876";
+      };
+    };
+    "windows-release-3.3.0" = {
+      name = "windows-release";
+      packageName = "windows-release";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/windows-release/-/windows-release-3.3.0.tgz";
+        sha512 = "2HetyTg1Y+R+rUgrKeUEhAG/ZuOmTrI1NBb3ZyAGQMYmOJjBBPe4MTodghRkmLJZHwkuPi02anbeGP+Zf401LQ==";
+      };
+    };
+    "word-wrap-1.2.3" = {
+      name = "word-wrap";
+      packageName = "word-wrap";
+      version = "1.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz";
+        sha512 = "Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==";
+      };
+    };
+    "wordwrap-0.0.3" = {
+      name = "wordwrap";
+      packageName = "wordwrap";
+      version = "0.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz";
+        sha1 = "a3d5da6cd5c0bc0008d37234bbaf1bed63059107";
+      };
+    };
+    "wordwrap-1.0.0" = {
+      name = "wordwrap";
+      packageName = "wordwrap";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz";
+        sha1 = "27584810891456a4171c8d0226441ade90cbcaeb";
+      };
+    };
+    "wordwrapjs-4.0.0" = {
+      name = "wordwrapjs";
+      packageName = "wordwrapjs";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-4.0.0.tgz";
+        sha512 = "Svqw723a3R34KvsMgpjFBYCgNOSdcW3mQFK4wIfhGQhtaFVOJmdYoXgi63ne3dTlWgatVcUc7t4HtQ/+bUVIzQ==";
+      };
+    };
+    "wrap-ansi-2.1.0" = {
+      name = "wrap-ansi";
+      packageName = "wrap-ansi";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz";
+        sha1 = "d8fc3d284dd05794fe84973caecdd1cf824fdd85";
+      };
+    };
+    "wrap-ansi-3.0.1" = {
+      name = "wrap-ansi";
+      packageName = "wrap-ansi";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-3.0.1.tgz";
+        sha1 = "288a04d87eda5c286e060dfe8f135ce8d007f8ba";
+      };
+    };
+    "wrap-ansi-6.2.0" = {
+      name = "wrap-ansi";
+      packageName = "wrap-ansi";
+      version = "6.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz";
+        sha512 = "r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==";
+      };
+    };
+    "wrappy-1.0.2" = {
+      name = "wrappy";
+      packageName = "wrappy";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz";
+        sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
+      };
+    };
+    "write-1.0.3" = {
+      name = "write";
+      packageName = "write";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/write/-/write-1.0.3.tgz";
+        sha512 = "/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==";
+      };
+    };
+    "ws-7.4.3" = {
+      name = "ws";
+      packageName = "ws";
+      version = "7.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ws/-/ws-7.4.3.tgz";
+        sha512 = "hr6vCR76GsossIRsr8OLR9acVVm1jyfEWvhbNjtgPOrfvAlKzvyeg/P6r8RuDjRyrcQoPQT7K0DGEPc7Ae6jzA==";
+      };
+    };
+    "xtend-4.0.2" = {
+      name = "xtend";
+      packageName = "xtend";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz";
+        sha512 = "LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==";
+      };
+    };
+    "y18n-3.2.1" = {
+      name = "y18n";
+      packageName = "y18n";
+      version = "3.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz";
+        sha1 = "6d15fba884c08679c0d77e88e7759e811e07fa41";
+      };
+    };
+    "y18n-4.0.0" = {
+      name = "y18n";
+      packageName = "y18n";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz";
+        sha512 = "r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==";
+      };
+    };
+    "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-3.1.1" = {
+      name = "yallist";
+      packageName = "yallist";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz";
+        sha512 = "a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==";
+      };
+    };
+    "yaml-1.9.1" = {
+      name = "yaml";
+      packageName = "yaml";
+      version = "1.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yaml/-/yaml-1.9.1.tgz";
+        sha512 = "xbWX1ayUVoW8DPM8qxOBowac4XxSTi0mFLbiokRq880ViYglN+F3nJ4Dc2GdypXpykrknKS39d8I3lzFoHv1kA==";
+      };
+    };
+    "yaml-lint-1.2.4" = {
+      name = "yaml-lint";
+      packageName = "yaml-lint";
+      version = "1.2.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yaml-lint/-/yaml-lint-1.2.4.tgz";
+        sha512 = "qpKE0szyKsE9TrlVPi+bxKxVAjl30QjNAOyOxy7noQdf/WCCYUlT4xiCRxMG48eyeBzMBtBN6PgGfaB0MJePNw==";
+      };
+    };
+    "yargs-15.3.1" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "15.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz";
+        sha512 = "92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==";
+      };
+    };
+    "yargs-3.32.0" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "3.32.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz";
+        sha1 = "03088e9ebf9e756b69751611d2a5ef591482c995";
+      };
+    };
+    "yargs-parser-10.1.0" = {
+      name = "yargs-parser";
+      packageName = "yargs-parser";
+      version = "10.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz";
+        sha512 = "VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==";
+      };
+    };
+    "yargs-parser-18.1.3" = {
+      name = "yargs-parser";
+      packageName = "yargs-parser";
+      version = "18.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz";
+        sha512 = "o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==";
+      };
+    };
+    "yauzl-2.10.0" = {
+      name = "yauzl";
+      packageName = "yauzl";
+      version = "2.10.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz";
+        sha1 = "c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9";
+      };
+    };
+    "ylru-1.2.1" = {
+      name = "ylru";
+      packageName = "ylru";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ylru/-/ylru-1.2.1.tgz";
+        sha512 = "faQrqNMzcPCHGVC2aaOINk13K+aaBDUPjGWl0teOXywElLjyVAB6Oe2jj62jHYtwsU49jXhScYbvPENK+6zAvQ==";
+      };
+    };
+  };
+  args = {
+    name = "cypress-example-kitchensink";
+    packageName = "cypress-example-kitchensink";
+    version = "0.0.0-development";
+    src = callPackage ./src.nix {};
+    dependencies = [
+      sources."@babel/code-frame-7.8.3"
+      sources."@babel/helper-validator-identifier-7.9.5"
+      sources."@babel/highlight-7.9.0"
+      sources."@babel/runtime-7.9.2"
+      sources."@bahmutov/print-env-1.2.0"
+      sources."@cypress/eslint-plugin-dev-5.0.0"
+      (sources."@cypress/listr-verbose-renderer-0.4.1" // {
+        dependencies = [
+          sources."ansi-regex-2.1.1"
+          sources."ansi-styles-2.2.1"
+          sources."chalk-1.1.3"
+          sources."strip-ansi-3.0.1"
+          sources."supports-color-2.0.0"
+        ];
+      })
+      sources."@cypress/request-2.88.5"
+      (sources."@cypress/xvfb-1.2.4" // {
+        dependencies = [
+          sources."debug-3.2.7"
+          sources."ms-2.1.3"
+        ];
+      })
+      sources."@hapi/address-2.1.4"
+      sources."@hapi/bourne-1.3.2"
+      sources."@hapi/hoek-8.5.1"
+      sources."@hapi/joi-15.1.1"
+      sources."@hapi/topo-3.1.6"
+      sources."@koa/cors-3.1.0"
+      sources."@mrmlnc/readdir-enhanced-2.2.1"
+      (sources."@nodelib/fs.scandir-2.1.3" // {
+        dependencies = [
+          sources."@nodelib/fs.stat-2.0.3"
+        ];
+      })
+      sources."@nodelib/fs.stat-1.1.3"
+      sources."@nodelib/fs.walk-1.2.4"
+      sources."@octokit/auth-token-2.4.0"
+      (sources."@octokit/endpoint-6.0.1" // {
+        dependencies = [
+          sources."is-plain-object-3.0.0"
+          sources."isobject-4.0.0"
+          sources."universal-user-agent-5.0.0"
+        ];
+      })
+      sources."@octokit/plugin-paginate-rest-1.1.2"
+      sources."@octokit/plugin-request-log-1.0.0"
+      sources."@octokit/plugin-rest-endpoint-methods-2.4.0"
+      (sources."@octokit/request-5.4.2" // {
+        dependencies = [
+          sources."@octokit/request-error-2.0.0"
+          sources."is-plain-object-3.0.0"
+          sources."isobject-4.0.0"
+          sources."universal-user-agent-5.0.0"
+        ];
+      })
+      sources."@octokit/request-error-1.2.1"
+      sources."@octokit/rest-16.43.1"
+      sources."@octokit/types-2.11.1"
+      sources."@samverschueren/stream-to-observable-0.3.1"
+      (sources."@semantic-release/commit-analyzer-6.3.3" // {
+        dependencies = [
+          sources."debug-4.1.1"
+          sources."ms-2.1.2"
+        ];
+      })
+      sources."@semantic-release/error-2.2.0"
+      (sources."@semantic-release/github-5.5.8" // {
+        dependencies = [
+          sources."@nodelib/fs.stat-2.0.3"
+          sources."array-union-2.1.0"
+          sources."braces-3.0.2"
+          sources."debug-4.1.1"
+          sources."dir-glob-3.0.1"
+          sources."fast-glob-3.2.2"
+          sources."fill-range-7.0.1"
+          sources."glob-parent-5.1.1"
+          sources."globby-10.0.2"
+          sources."ignore-5.1.4"
+          sources."is-number-7.0.0"
+          sources."micromatch-4.0.2"
+          sources."ms-2.1.2"
+          sources."path-type-4.0.0"
+          sources."slash-3.0.0"
+          sources."to-regex-range-5.0.1"
+        ];
+      })
+      (sources."@semantic-release/npm-5.3.5" // {
+        dependencies = [
+          sources."cross-spawn-7.0.2"
+          sources."execa-3.4.0"
+          sources."get-stream-5.1.0"
+          sources."is-stream-2.0.0"
+          sources."mimic-fn-2.1.0"
+          sources."npm-run-path-4.0.1"
+          sources."onetime-5.1.0"
+          sources."p-finally-2.0.1"
+          sources."parse-json-5.0.0"
+          sources."path-key-3.1.1"
+          sources."read-pkg-5.2.0"
+          sources."registry-auth-token-4.1.1"
+          sources."shebang-command-2.0.0"
+          sources."shebang-regex-3.0.0"
+          sources."which-2.0.2"
+        ];
+      })
+      (sources."@semantic-release/release-notes-generator-7.3.5" // {
+        dependencies = [
+          sources."debug-4.1.1"
+          sources."get-stream-5.1.0"
+          sources."ms-2.1.2"
+        ];
+      })
+      sources."@sindresorhus/is-2.1.1"
+      sources."@szmarczak/http-timer-4.0.5"
+      sources."@tootallnate/once-1.1.2"
+      sources."@types/cacheable-request-6.0.1"
+      sources."@types/color-name-1.1.1"
+      sources."@types/events-3.0.0"
+      sources."@types/glob-7.1.1"
+      sources."@types/http-cache-semantics-4.0.0"
+      sources."@types/keyv-3.1.1"
+      sources."@types/minimatch-3.0.3"
+      sources."@types/node-13.13.0"
+      sources."@types/normalize-package-data-2.4.0"
+      sources."@types/parse-json-4.0.0"
+      sources."@types/responselike-1.0.0"
+      sources."@types/retry-0.12.0"
+      sources."@types/sinonjs__fake-timers-6.0.2"
+      sources."@types/sizzle-2.3.3"
+      sources."@types/yauzl-2.9.1"
+      sources."@zeit/schemas-2.6.0"
+      sources."JSONStream-1.3.5"
+      sources."accepts-1.3.7"
+      sources."acorn-7.2.0"
+      sources."acorn-jsx-5.2.0"
+      sources."agent-base-5.1.1"
+      (sources."aggregate-error-3.0.1" // {
+        dependencies = [
+          sources."indent-string-4.0.0"
+        ];
+      })
+      sources."ajv-6.5.3"
+      sources."ansi-align-2.0.0"
+      sources."ansi-escape-sequences-5.1.2"
+      sources."ansi-escapes-3.2.0"
+      sources."ansi-regex-3.0.0"
+      sources."ansi-styles-3.2.1"
+      sources."ansicolors-0.3.2"
+      sources."any-observable-0.3.0"
+      sources."any-promise-1.3.0"
+      sources."arch-2.1.1"
+      sources."arg-2.0.0"
+      sources."argparse-1.0.10"
+      sources."argv-formatter-1.0.0"
+      sources."arr-diff-4.0.0"
+      sources."arr-flatten-1.1.0"
+      sources."arr-union-3.1.0"
+      sources."array-back-4.0.1"
+      sources."array-find-index-1.0.2"
+      sources."array-ify-1.0.0"
+      sources."array-union-1.0.2"
+      sources."array-uniq-1.0.3"
+      sources."array-unique-0.3.2"
+      sources."arrify-1.0.1"
+      sources."asap-2.0.6"
+      sources."asn1-0.2.4"
+      sources."assert-plus-1.0.0"
+      sources."assign-symbols-1.0.0"
+      sources."astral-regex-1.0.0"
+      sources."async-3.2.0"
+      sources."asynckit-0.4.0"
+      sources."at-least-node-1.0.0"
+      sources."atob-2.1.2"
+      sources."atob-lite-2.0.0"
+      sources."aws-sign2-0.7.0"
+      sources."aws4-1.9.1"
+      sources."balanced-match-1.0.0"
+      (sources."base-0.11.2" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+          sources."is-accessor-descriptor-1.0.0"
+          sources."is-data-descriptor-1.0.0"
+          sources."is-descriptor-1.0.2"
+        ];
+      })
+      sources."base64-js-1.5.1"
+      sources."basic-auth-2.0.1"
+      sources."batch-0.6.1"
+      sources."bcrypt-pbkdf-1.0.2"
+      sources."before-after-hook-2.1.0"
+      (sources."bl-4.1.0" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
+      sources."blob-util-2.0.2"
+      sources."bluebird-3.7.2"
+      sources."bottleneck-2.19.5"
+      sources."boxen-1.3.0"
+      sources."brace-expansion-1.1.11"
+      (sources."braces-2.3.2" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      sources."btoa-lite-1.0.0"
+      sources."buffer-5.7.1"
+      sources."buffer-crc32-0.2.13"
+      sources."buffer-from-1.1.1"
+      sources."byte-size-6.2.0"
+      sources."bytes-3.0.0"
+      sources."cache-base-1.0.1"
+      sources."cache-content-type-1.0.1"
+      sources."cacheable-lookup-2.0.1"
+      (sources."cacheable-request-7.0.1" // {
+        dependencies = [
+          sources."get-stream-5.2.0"
+        ];
+      })
+      sources."cachedir-2.3.0"
+      sources."call-me-maybe-1.0.1"
+      (sources."caller-callsite-2.0.0" // {
+        dependencies = [
+          sources."callsites-2.0.0"
+        ];
+      })
+      sources."caller-path-2.0.0"
+      sources."callsites-3.1.0"
+      sources."camelcase-4.1.0"
+      sources."camelcase-keys-4.2.0"
+      sources."cardinal-2.1.1"
+      sources."caseless-0.12.0"
+      sources."chalk-2.4.2"
+      sources."chardet-0.7.0"
+      (sources."chdir-promise-0.4.0" // {
+        dependencies = [
+          sources."check-more-types-2.23.0"
+          sources."lazy-ass-1.5.0"
+          sources."q-1.1.2"
+        ];
+      })
+      sources."check-more-types-2.24.0"
+      sources."chownr-1.1.4"
+      sources."ci-info-2.0.0"
+      (sources."class-utils-0.3.6" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+        ];
+      })
+      sources."clean-stack-2.2.0"
+      sources."cli-boxes-1.0.0"
+      sources."cli-cursor-1.0.2"
+      (sources."cli-table-0.3.1" // {
+        dependencies = [
+          sources."colors-1.0.3"
+        ];
+      })
+      (sources."cli-table3-0.6.0" // {
+        dependencies = [
+          sources."ansi-regex-5.0.0"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."string-width-4.2.2"
+          sources."strip-ansi-6.0.0"
+        ];
+      })
+      (sources."cli-truncate-0.2.1" // {
+        dependencies = [
+          sources."ansi-regex-2.1.1"
+          sources."is-fullwidth-code-point-1.0.0"
+          sources."string-width-1.0.2"
+          sources."strip-ansi-3.0.1"
+        ];
+      })
+      sources."cli-width-2.2.1"
+      (sources."clipboardy-1.2.3" // {
+        dependencies = [
+          sources."cross-spawn-5.1.0"
+          sources."execa-0.8.0"
+        ];
+      })
+      (sources."cliui-6.0.0" // {
+        dependencies = [
+          sources."ansi-regex-5.0.0"
+          sources."ansi-styles-4.2.1"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."emoji-regex-8.0.0"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."string-width-4.2.0"
+          sources."strip-ansi-6.0.0"
+          sources."wrap-ansi-6.2.0"
+        ];
+      })
+      (sources."clone-response-1.0.2" // {
+        dependencies = [
+          sources."mimic-response-1.0.1"
+        ];
+      })
+      sources."co-4.6.0"
+      sources."co-body-6.1.0"
+      sources."code-point-at-1.1.0"
+      sources."collection-visit-1.0.0"
+      sources."colon-names-1.0.0"
+      sources."color-convert-1.9.3"
+      sources."color-name-1.1.3"
+      sources."colors-1.4.0"
+      sources."combined-stream-1.0.8"
+      (sources."command-line-args-5.1.1" // {
+        dependencies = [
+          sources."array-back-3.1.0"
+          sources."typical-4.0.0"
+        ];
+      })
+      (sources."command-line-usage-6.1.1" // {
+        dependencies = [
+          sources."typical-5.2.0"
+        ];
+      })
+      sources."commander-5.1.0"
+      sources."common-log-format-1.0.0"
+      sources."common-tags-1.8.0"
+      sources."compare-func-1.3.2"
+      sources."component-emitter-1.3.0"
+      sources."compressible-2.0.18"
+      sources."compression-1.7.3"
+      sources."concat-map-0.0.1"
+      sources."concat-stream-1.6.2"
+      sources."content-disposition-0.5.2"
+      sources."content-type-1.0.4"
+      sources."conventional-changelog-angular-5.0.6"
+      (sources."conventional-changelog-writer-4.0.11" // {
+        dependencies = [
+          sources."semver-6.3.0"
+        ];
+      })
+      sources."conventional-commits-filter-2.0.2"
+      sources."conventional-commits-parser-3.0.8"
+      sources."cookies-0.8.0"
+      sources."copy-descriptor-0.1.1"
+      sources."copy-to-2.0.1"
+      sources."core-js-2.6.11"
+      sources."core-util-is-1.0.2"
+      (sources."cosmiconfig-5.2.1" // {
+        dependencies = [
+          sources."import-fresh-2.0.0"
+          sources."resolve-from-3.0.0"
+        ];
+      })
+      sources."create-mixin-3.0.0"
+      (sources."cross-spawn-6.0.5" // {
+        dependencies = [
+          sources."semver-5.7.1"
+        ];
+      })
+      sources."crypto-random-string-1.0.0"
+      sources."currently-unhandled-0.4.1"
+      (sources."cypress-7.3.0" // {
+        dependencies = [
+          sources."@types/node-14.17.0"
+          sources."ansi-styles-4.3.0"
+          sources."arch-2.2.0"
+          (sources."chalk-4.1.1" // {
+            dependencies = [
+              sources."supports-color-7.2.0"
+            ];
+          })
+          sources."ci-info-3.1.1"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."cross-spawn-7.0.3"
+          sources."debug-4.3.2"
+          sources."execa-4.1.0"
+          sources."fs-extra-9.1.0"
+          sources."get-stream-5.2.0"
+          sources."has-flag-4.0.0"
+          sources."is-ci-3.0.0"
+          sources."is-stream-2.0.0"
+          sources."jsonfile-6.1.0"
+          sources."lodash-4.17.21"
+          sources."ms-2.1.2"
+          sources."npm-run-path-4.0.1"
+          sources."onetime-5.1.2"
+          sources."path-key-3.1.1"
+          sources."ramda-0.27.1"
+          sources."shebang-command-2.0.0"
+          sources."shebang-regex-3.0.0"
+          sources."supports-color-8.1.1"
+          sources."universalify-2.0.0"
+          sources."which-2.0.2"
+        ];
+      })
+      sources."d3-helpers-0.3.0"
+      sources."dashdash-1.14.1"
+      sources."date-fns-1.30.1"
+      sources."dateformat-3.0.3"
+      sources."dayjs-1.10.4"
+      sources."debug-2.6.9"
+      sources."decamelize-1.2.0"
+      (sources."decamelize-keys-1.1.0" // {
+        dependencies = [
+          sources."map-obj-1.0.1"
+        ];
+      })
+      sources."decode-uri-component-0.2.0"
+      sources."decompress-response-5.0.0"
+      sources."deep-equal-1.0.1"
+      sources."deep-extend-0.6.0"
+      sources."deep-is-0.1.3"
+      sources."defer-to-connect-2.0.1"
+      sources."define-properties-1.1.3"
+      (sources."define-property-2.0.2" // {
+        dependencies = [
+          sources."is-accessor-descriptor-1.0.0"
+          sources."is-data-descriptor-1.0.0"
+          sources."is-descriptor-1.0.2"
+        ];
+      })
+      sources."delayed-stream-1.0.0"
+      sources."delegates-1.0.0"
+      sources."depd-2.0.0"
+      sources."deprecation-2.3.1"
+      sources."destroy-1.0.4"
+      sources."detect-indent-6.0.0"
+      sources."detect-newline-3.1.0"
+      sources."devtools-protocol-0.0.847576"
+      sources."diff-match-patch-1.0.4"
+      sources."dir-glob-2.2.2"
+      sources."doctrine-3.0.0"
+      sources."dot-prop-3.0.0"
+      sources."duplexer-0.1.1"
+      sources."duplexer2-0.1.4"
+      sources."duplexer3-0.1.4"
+      sources."ecc-jsbn-0.1.2"
+      sources."ee-first-1.1.1"
+      sources."elegant-spinner-1.0.1"
+      sources."emoji-regex-8.0.0"
+      sources."encodeurl-1.0.2"
+      sources."end-of-stream-1.4.4"
+      (sources."env-ci-4.5.2" // {
+        dependencies = [
+          sources."cross-spawn-7.0.2"
+          sources."execa-3.4.0"
+          sources."get-stream-5.1.0"
+          sources."is-stream-2.0.0"
+          sources."mimic-fn-2.1.0"
+          sources."npm-run-path-4.0.1"
+          sources."onetime-5.1.0"
+          sources."p-finally-2.0.1"
+          sources."path-key-3.1.1"
+          sources."shebang-command-2.0.0"
+          sources."shebang-regex-3.0.0"
+          sources."which-2.0.2"
+        ];
+      })
+      sources."error-ex-1.3.2"
+      sources."es-abstract-1.17.5"
+      sources."es-to-primitive-1.2.1"
+      sources."escape-html-1.0.3"
+      sources."escape-string-regexp-1.0.5"
+      (sources."eslint-7.0.0" // {
+        dependencies = [
+          sources."ajv-6.12.2"
+          sources."ansi-regex-5.0.0"
+          sources."ansi-styles-4.2.1"
+          sources."chalk-4.0.0"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."cross-spawn-7.0.2"
+          sources."debug-4.1.1"
+          sources."fast-deep-equal-3.1.1"
+          sources."glob-parent-5.1.1"
+          sources."globals-12.4.0"
+          sources."has-flag-4.0.0"
+          sources."ms-2.1.2"
+          sources."path-key-3.1.1"
+          sources."semver-7.3.2"
+          sources."shebang-command-2.0.0"
+          sources."shebang-regex-3.0.0"
+          sources."strip-ansi-6.0.0"
+          sources."strip-json-comments-3.1.0"
+          sources."supports-color-7.1.0"
+          sources."type-fest-0.8.1"
+          sources."which-2.0.2"
+        ];
+      })
+      sources."eslint-plugin-cypress-2.8.1"
+      (sources."eslint-plugin-json-format-2.0.1" // {
+        dependencies = [
+          sources."debug-4.1.1"
+          sources."ms-2.1.2"
+        ];
+      })
+      sources."eslint-plugin-mocha-5.3.0"
+      sources."eslint-rule-composer-0.3.0"
+      sources."eslint-scope-5.0.0"
+      sources."eslint-utils-2.0.0"
+      sources."eslint-visitor-keys-1.1.0"
+      sources."espree-7.0.0"
+      sources."esprima-4.0.1"
+      (sources."esquery-1.3.1" // {
+        dependencies = [
+          sources."estraverse-5.1.0"
+        ];
+      })
+      sources."esrecurse-4.2.1"
+      sources."estraverse-4.3.0"
+      sources."esutils-2.0.3"
+      sources."etag-1.8.1"
+      (sources."event-stream-3.3.4" // {
+        dependencies = [
+          sources."split-0.3.3"
+        ];
+      })
+      sources."eventemitter2-6.4.4"
+      (sources."execa-2.0.5" // {
+        dependencies = [
+          sources."get-stream-5.1.0"
+          sources."is-stream-2.0.0"
+          sources."mimic-fn-2.1.0"
+          sources."npm-run-path-3.1.0"
+          sources."onetime-5.1.0"
+          sources."p-finally-2.0.1"
+          sources."path-key-3.1.1"
+        ];
+      })
+      (sources."executable-4.1.1" // {
+        dependencies = [
+          sources."pify-2.3.0"
+        ];
+      })
+      sources."exit-hook-1.1.1"
+      (sources."expand-brackets-2.1.4" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      sources."extend-3.0.2"
+      (sources."extend-shallow-3.0.2" // {
+        dependencies = [
+          sources."is-extendable-1.0.1"
+        ];
+      })
+      (sources."external-editor-3.1.0" // {
+        dependencies = [
+          sources."tmp-0.0.33"
+        ];
+      })
+      (sources."extglob-2.0.4" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+          sources."extend-shallow-2.0.1"
+          sources."is-accessor-descriptor-1.0.0"
+          sources."is-data-descriptor-1.0.0"
+          sources."is-descriptor-1.0.2"
+        ];
+      })
+      sources."extract-zip-1.7.0"
+      sources."extsprintf-1.3.0"
+      sources."fast-deep-equal-2.0.1"
+      sources."fast-glob-2.2.7"
+      sources."fast-json-stable-stringify-2.1.0"
+      sources."fast-levenshtein-2.0.6"
+      (sources."fast-url-parser-1.1.3" // {
+        dependencies = [
+          sources."punycode-1.4.1"
+        ];
+      })
+      sources."fastq-1.7.0"
+      sources."fd-slicer-1.1.0"
+      sources."figures-1.7.0"
+      sources."file-entry-cache-5.0.1"
+      (sources."fill-range-4.0.0" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      (sources."find-replace-3.0.0" // {
+        dependencies = [
+          sources."array-back-3.1.0"
+        ];
+      })
+      sources."find-up-3.0.0"
+      sources."find-versions-3.2.0"
+      (sources."flat-cache-2.0.1" // {
+        dependencies = [
+          sources."rimraf-2.6.3"
+        ];
+      })
+      sources."flatted-2.0.2"
+      sources."for-in-1.0.2"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.3.3"
+      sources."fragment-cache-0.2.1"
+      sources."fresh-0.5.2"
+      sources."from-0.1.7"
+      sources."from2-2.3.0"
+      sources."fs-constants-1.0.0"
+      sources."fs-extra-8.1.0"
+      sources."fs.realpath-1.0.0"
+      sources."function-bind-1.1.1"
+      sources."functional-red-black-tree-1.0.1"
+      sources."get-caller-file-2.0.5"
+      sources."get-stdin-6.0.0"
+      sources."get-stream-3.0.0"
+      sources."get-value-2.0.6"
+      sources."getos-3.2.1"
+      sources."getpass-0.1.7"
+      (sources."ggit-1.15.1" // {
+        dependencies = [
+          sources."bluebird-3.5.0"
+          sources."colors-1.1.2"
+          sources."commander-2.9.0"
+          sources."debug-2.6.3"
+          sources."glob-7.1.1"
+          sources."lodash-3.10.1"
+          sources."moment-2.18.1"
+          sources."ms-0.7.2"
+          sources."q-2.0.3"
+          sources."ramda-0.9.1"
+        ];
+      })
+      sources."git-hooks-list-1.0.3"
+      (sources."git-log-parser-1.2.0" // {
+        dependencies = [
+          sources."split2-1.0.0"
+          sources."through2-2.0.5"
+        ];
+      })
+      sources."glob-7.1.6"
+      (sources."glob-parent-3.1.0" // {
+        dependencies = [
+          sources."is-glob-3.1.0"
+        ];
+      })
+      sources."glob-to-regexp-0.3.0"
+      (sources."global-dirs-3.0.0" // {
+        dependencies = [
+          sources."ini-2.0.0"
+        ];
+      })
+      sources."globals-11.12.0"
+      (sources."globby-9.1.0" // {
+        dependencies = [
+          sources."pify-4.0.1"
+        ];
+      })
+      (sources."got-10.7.0" // {
+        dependencies = [
+          sources."get-stream-5.2.0"
+          sources."type-fest-0.10.0"
+        ];
+      })
+      sources."graceful-fs-4.2.3"
+      sources."graceful-readlink-1.0.1"
+      (sources."handlebars-4.7.6" // {
+        dependencies = [
+          sources."source-map-0.6.1"
+        ];
+      })
+      sources."har-schema-2.0.0"
+      (sources."har-validator-5.1.3" // {
+        dependencies = [
+          sources."ajv-6.12.2"
+          sources."fast-deep-equal-3.1.1"
+        ];
+      })
+      sources."has-1.0.3"
+      (sources."has-ansi-2.0.0" // {
+        dependencies = [
+          sources."ansi-regex-2.1.1"
+        ];
+      })
+      sources."has-flag-3.0.0"
+      sources."has-symbols-1.0.1"
+      sources."has-value-1.0.0"
+      (sources."has-values-1.0.0" // {
+        dependencies = [
+          sources."kind-of-4.0.0"
+        ];
+      })
+      sources."hook-std-2.0.0"
+      sources."hosted-git-info-2.8.8"
+      (sources."http-assert-1.4.1" // {
+        dependencies = [
+          sources."depd-1.1.2"
+          sources."http-errors-1.7.3"
+        ];
+      })
+      sources."http-cache-semantics-4.1.0"
+      (sources."http-errors-1.8.0" // {
+        dependencies = [
+          sources."depd-1.1.2"
+          sources."setprototypeof-1.2.0"
+        ];
+      })
+      (sources."http-proxy-agent-3.0.0" // {
+        dependencies = [
+          sources."debug-4.1.1"
+          sources."ms-2.1.2"
+        ];
+      })
+      sources."http-signature-1.2.0"
+      (sources."https-proxy-agent-4.0.0" // {
+        dependencies = [
+          sources."debug-4.1.1"
+          sources."ms-2.1.2"
+        ];
+      })
+      sources."human-signals-1.1.1"
+      (sources."husky-1.3.1" // {
+        dependencies = [
+          sources."execa-1.0.0"
+          sources."get-stream-4.1.0"
+          sources."read-pkg-4.0.1"
+        ];
+      })
+      sources."iconv-lite-0.4.24"
+      sources."ieee754-1.2.1"
+      sources."ignore-4.0.6"
+      sources."import-fresh-3.2.1"
+      (sources."import-from-3.0.0" // {
+        dependencies = [
+          sources."resolve-from-5.0.0"
+        ];
+      })
+      sources."imurmurhash-0.1.4"
+      sources."indent-string-3.2.0"
+      sources."inflation-2.0.0"
+      sources."inflight-1.0.6"
+      sources."inherits-2.0.4"
+      sources."ini-1.3.5"
+      (sources."inquirer-7.1.0" // {
+        dependencies = [
+          sources."ansi-escapes-4.3.1"
+          sources."ansi-regex-5.0.0"
+          sources."ansi-styles-4.2.1"
+          sources."chalk-3.0.0"
+          sources."cli-cursor-3.1.0"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."figures-3.2.0"
+          sources."has-flag-4.0.0"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."mimic-fn-2.1.0"
+          sources."onetime-5.1.0"
+          sources."restore-cursor-3.1.0"
+          sources."string-width-4.2.0"
+          sources."strip-ansi-6.0.0"
+          sources."supports-color-7.1.0"
+          sources."type-fest-0.11.0"
+        ];
+      })
+      sources."interpret-1.2.0"
+      sources."into-stream-5.1.1"
+      sources."invert-kv-1.0.0"
+      (sources."is-accessor-descriptor-0.1.6" // {
+        dependencies = [
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."is-arrayish-0.2.1"
+      sources."is-buffer-1.1.6"
+      sources."is-callable-1.1.5"
+      sources."is-ci-2.0.0"
+      (sources."is-data-descriptor-0.1.4" // {
+        dependencies = [
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."is-date-object-1.0.2"
+      (sources."is-descriptor-0.1.6" // {
+        dependencies = [
+          sources."kind-of-5.1.0"
+        ];
+      })
+      sources."is-directory-0.3.1"
+      sources."is-docker-2.1.1"
+      sources."is-extendable-0.1.1"
+      sources."is-extglob-2.1.1"
+      sources."is-fullwidth-code-point-2.0.0"
+      sources."is-generator-function-1.0.8"
+      sources."is-glob-4.0.1"
+      sources."is-installed-globally-0.4.0"
+      (sources."is-number-3.0.0" // {
+        dependencies = [
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."is-obj-1.0.1"
+      sources."is-observable-1.1.0"
+      sources."is-path-inside-3.0.3"
+      sources."is-plain-obj-1.1.0"
+      sources."is-plain-object-2.0.4"
+      sources."is-promise-2.2.2"
+      sources."is-regex-1.0.5"
+      sources."is-stream-1.1.0"
+      sources."is-symbol-1.0.3"
+      sources."is-text-path-1.0.1"
+      sources."is-typedarray-1.0.0"
+      sources."is-unicode-supported-0.1.0"
+      sources."is-windows-1.0.2"
+      sources."is-wsl-2.2.0"
+      sources."isarray-1.0.0"
+      sources."isexe-2.0.0"
+      sources."isobject-3.0.1"
+      sources."isstream-0.1.2"
+      sources."issue-parser-5.0.0"
+      sources."java-properties-1.0.2"
+      sources."js-tokens-4.0.0"
+      sources."js-yaml-3.13.1"
+      sources."jsbn-0.1.1"
+      sources."json-buffer-3.0.1"
+      (sources."json-fixer-1.4.1" // {
+        dependencies = [
+          sources."ansi-styles-4.2.1"
+          sources."chalk-3.0.0"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.1.0"
+        ];
+      })
+      sources."json-parse-better-errors-1.0.2"
+      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."jsonfile-4.0.0"
+      sources."jsonparse-1.3.1"
+      sources."jsprim-1.4.1"
+      sources."keygrip-1.1.0"
+      sources."keyv-4.0.3"
+      sources."kind-of-6.0.3"
+      (sources."koa-2.13.1" // {
+        dependencies = [
+          sources."debug-3.1.0"
+        ];
+      })
+      sources."koa-bodyparser-4.3.0"
+      sources."koa-compose-4.1.0"
+      sources."koa-compress-3.1.0"
+      sources."koa-conditional-get-2.0.0"
+      (sources."koa-convert-1.2.0" // {
+        dependencies = [
+          sources."koa-compose-3.2.1"
+        ];
+      })
+      sources."koa-etag-3.0.0"
+      sources."koa-is-json-1.0.0"
+      sources."koa-json-2.0.2"
+      sources."koa-morgan-1.0.1"
+      sources."koa-range-0.3.0"
+      (sources."koa-route-3.2.0" // {
+        dependencies = [
+          sources."isarray-0.0.1"
+          sources."path-to-regexp-1.8.0"
+        ];
+      })
+      (sources."koa-send-5.0.1" // {
+        dependencies = [
+          sources."debug-4.3.1"
+          sources."ms-2.1.2"
+        ];
+      })
+      (sources."koa-static-5.0.0" // {
+        dependencies = [
+          sources."debug-3.2.7"
+          sources."ms-2.1.3"
+        ];
+      })
+      sources."lazy-ass-1.6.0"
+      sources."lcid-1.0.0"
+      (sources."leprechaun-0.0.2" // {
+        dependencies = [
+          sources."ansi-regex-2.1.1"
+          sources."ansi-styles-2.2.1"
+          sources."chalk-1.1.3"
+          sources."log-symbols-1.0.2"
+          sources."strip-ansi-3.0.1"
+          sources."supports-color-2.0.0"
+        ];
+      })
+      sources."levn-0.4.1"
+      (sources."line-column-1.0.2" // {
+        dependencies = [
+          sources."isobject-2.1.0"
+        ];
+      })
+      sources."lines-and-columns-1.1.6"
+      sources."listr-0.14.3"
+      sources."listr-silent-renderer-1.1.1"
+      (sources."listr-update-renderer-0.5.0" // {
+        dependencies = [
+          sources."ansi-regex-2.1.1"
+          sources."ansi-styles-2.2.1"
+          sources."chalk-1.1.3"
+          sources."log-symbols-1.0.2"
+          sources."strip-ansi-3.0.1"
+          sources."supports-color-2.0.0"
+        ];
+      })
+      (sources."listr-verbose-renderer-0.5.0" // {
+        dependencies = [
+          sources."cli-cursor-2.1.0"
+          sources."figures-2.0.0"
+          sources."mimic-fn-1.2.0"
+          sources."onetime-2.0.1"
+          sources."restore-cursor-2.0.0"
+        ];
+      })
+      sources."load-json-file-4.0.0"
+      sources."load-module-3.0.0"
+      sources."local-web-server-4.2.1"
+      sources."locate-path-3.0.0"
+      sources."lodash-4.17.15"
+      sources."lodash.assignwith-4.2.0"
+      sources."lodash.camelcase-4.3.0"
+      sources."lodash.capitalize-4.2.1"
+      sources."lodash.escaperegexp-4.1.2"
+      sources."lodash.get-4.4.2"
+      sources."lodash.ismatch-4.4.0"
+      sources."lodash.isplainobject-4.0.6"
+      sources."lodash.isstring-4.0.1"
+      sources."lodash.merge-4.6.2"
+      sources."lodash.once-4.1.1"
+      sources."lodash.set-4.3.2"
+      sources."lodash.snakecase-4.1.1"
+      sources."lodash.throttle-4.1.1"
+      sources."lodash.toarray-4.4.0"
+      sources."lodash.uniq-4.5.0"
+      sources."lodash.uniqby-4.7.0"
+      (sources."log-symbols-4.1.0" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.1"
+          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."log-update-2.3.0" // {
+        dependencies = [
+          sources."cli-cursor-2.1.0"
+          sources."mimic-fn-1.2.0"
+          sources."onetime-2.0.1"
+          sources."restore-cursor-2.0.0"
+        ];
+      })
+      sources."loud-rejection-1.6.0"
+      sources."lowercase-keys-2.0.0"
+      sources."lru-cache-4.1.5"
+      sources."lws-3.1.0"
+      sources."lws-basic-auth-2.0.0"
+      (sources."lws-blacklist-3.0.0" // {
+        dependencies = [
+          sources."path-to-regexp-6.2.0"
+        ];
+      })
+      sources."lws-body-parser-2.0.0"
+      sources."lws-compress-2.0.0"
+      sources."lws-conditional-get-2.0.0"
+      sources."lws-cors-3.0.0"
+      sources."lws-index-2.0.0"
+      sources."lws-json-2.0.0"
+      sources."lws-log-2.0.0"
+      sources."lws-mime-2.0.0"
+      sources."lws-range-3.0.0"
+      sources."lws-request-monitor-2.0.0"
+      (sources."lws-rewrite-3.1.1" // {
+        dependencies = [
+          sources."agent-base-6.0.2"
+          sources."debug-4.3.1"
+          sources."http-proxy-agent-4.0.1"
+          sources."https-proxy-agent-5.0.0"
+          sources."ms-2.1.2"
+          sources."path-to-regexp-6.2.0"
+        ];
+      })
+      sources."lws-spa-3.0.0"
+      sources."lws-static-2.0.0"
+      sources."macos-release-2.3.0"
+      sources."map-cache-0.2.2"
+      sources."map-obj-2.0.0"
+      sources."map-stream-0.1.0"
+      sources."map-visit-1.0.0"
+      sources."marked-0.7.0"
+      sources."marked-terminal-3.3.0"
+      sources."media-typer-0.3.0"
+      sources."memorystream-0.3.1"
+      (sources."meow-5.0.0" // {
+        dependencies = [
+          sources."find-up-2.1.0"
+          sources."locate-path-2.0.0"
+          sources."p-limit-1.3.0"
+          sources."p-locate-2.0.0"
+          sources."p-try-1.0.0"
+          sources."read-pkg-up-3.0.0"
+        ];
+      })
+      sources."merge-stream-2.0.0"
+      sources."merge2-1.3.0"
+      sources."methods-1.1.2"
+      sources."micromatch-3.1.10"
+      sources."mime-2.4.4"
+      sources."mime-db-1.43.0"
+      sources."mime-types-2.1.26"
+      sources."mimic-fn-2.1.0"
+      sources."mimic-response-2.1.0"
+      sources."minimatch-3.0.4"
+      sources."minimist-1.2.5"
+      sources."minimist-options-3.0.2"
+      (sources."mixin-deep-1.3.2" // {
+        dependencies = [
+          sources."is-extendable-1.0.1"
+        ];
+      })
+      sources."mkdirp-0.5.5"
+      sources."mkdirp-classic-0.5.3"
+      sources."modify-values-1.0.1"
+      sources."morgan-1.10.0"
+      sources."ms-2.0.0"
+      sources."mute-stream-0.0.8"
+      sources."mz-2.7.0"
+      sources."nanomatch-1.2.13"
+      sources."natural-compare-1.4.0"
+      (sources."nconf-0.10.0" // {
+        dependencies = [
+          sources."ansi-regex-2.1.1"
+          sources."async-1.5.2"
+          sources."camelcase-2.1.1"
+          sources."cliui-3.2.0"
+          sources."is-fullwidth-code-point-1.0.0"
+          sources."string-width-1.0.2"
+          sources."strip-ansi-3.0.1"
+          sources."wrap-ansi-2.1.0"
+          sources."y18n-3.2.1"
+          sources."yargs-3.32.0"
+        ];
+      })
+      sources."negotiator-0.6.2"
+      sources."neo-async-2.6.1"
+      sources."nerf-dart-1.0.0"
+      (sources."netlify-plugin-cypress-2.0.0" // {
+        dependencies = [
+          sources."debug-4.1.1"
+          sources."ms-2.1.3"
+          sources."ramda-0.27.1"
+        ];
+      })
+      sources."nice-try-1.0.5"
+      sources."node-emoji-1.10.0"
+      sources."node-fetch-2.6.0"
+      sources."node-version-matches-2.0.1"
+      (sources."normalize-package-data-2.5.0" // {
+        dependencies = [
+          sources."semver-5.7.1"
+        ];
+      })
+      sources."normalize-url-4.5.0"
+      sources."npm-6.14.4"
+      sources."npm-run-all-4.1.5"
+      sources."npm-run-path-2.0.2"
+      sources."number-is-nan-1.0.1"
+      sources."oauth-sign-0.9.0"
+      sources."object-assign-4.1.1"
+      (sources."object-copy-0.1.0" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."object-inspect-1.7.0"
+      sources."object-keys-1.1.1"
+      sources."object-visit-1.0.1"
+      sources."object.assign-4.1.0"
+      sources."object.pick-1.3.0"
+      sources."octokit-pagination-methods-1.1.0"
+      sources."on-finished-2.3.0"
+      sources."on-headers-1.0.2"
+      sources."once-1.4.0"
+      sources."onetime-1.1.0"
+      sources."only-0.0.2"
+      sources."open-7.4.2"
+      (sources."optimist-0.6.1" // {
+        dependencies = [
+          sources."minimist-0.0.10"
+          sources."wordwrap-0.0.3"
+        ];
+      })
+      sources."optionator-0.9.1"
+      sources."os-locale-1.4.0"
+      sources."os-name-3.1.0"
+      sources."os-tmpdir-1.0.2"
+      sources."ospath-1.2.2"
+      sources."p-cancelable-2.0.0"
+      sources."p-event-4.2.0"
+      sources."p-filter-2.1.0"
+      sources."p-finally-1.0.0"
+      sources."p-is-promise-3.0.0"
+      sources."p-limit-2.3.0"
+      sources."p-locate-3.0.0"
+      sources."p-map-2.1.0"
+      sources."p-reduce-2.1.0"
+      sources."p-retry-4.2.0"
+      sources."p-timeout-3.2.0"
+      sources."p-try-2.2.0"
+      sources."parent-module-1.0.1"
+      sources."parse-json-4.0.0"
+      sources."parseurl-1.3.3"
+      sources."pascalcase-0.1.1"
+      sources."path-dirname-1.0.2"
+      sources."path-exists-3.0.0"
+      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-to-regexp-2.2.1"
+      sources."path-type-3.0.0"
+      sources."pause-stream-0.0.11"
+      sources."pegjs-0.10.0"
+      sources."pend-1.2.0"
+      sources."performance-now-2.1.0"
+      sources."picomatch-2.2.2"
+      sources."pidtree-0.3.1"
+      sources."pify-3.0.0"
+      (sources."pkg-conf-2.1.0" // {
+        dependencies = [
+          sources."find-up-2.1.0"
+          sources."locate-path-2.0.0"
+          sources."p-limit-1.3.0"
+          sources."p-locate-2.0.0"
+          sources."p-try-1.0.0"
+        ];
+      })
+      sources."pkg-dir-3.0.0"
+      sources."please-upgrade-node-3.2.0"
+      sources."pluralize-5.0.0"
+      sources."pop-iterate-1.0.1"
+      sources."posix-character-classes-0.1.1"
+      sources."prelude-ls-1.2.1"
+      sources."pretty-bytes-5.6.0"
+      sources."process-nextick-args-2.0.1"
+      sources."progress-2.0.3"
+      sources."proxy-from-env-1.1.0"
+      sources."ps-tree-1.2.0"
+      sources."pseudomap-1.0.2"
+      sources."psl-1.8.0"
+      sources."pump-3.0.0"
+      sources."punycode-2.1.1"
+      (sources."puppeteer-7.1.0" // {
+        dependencies = [
+          sources."agent-base-6.0.2"
+          sources."debug-4.3.1"
+          sources."extract-zip-2.0.1"
+          sources."find-up-4.1.0"
+          sources."get-stream-5.2.0"
+          sources."https-proxy-agent-5.0.0"
+          sources."locate-path-5.0.0"
+          sources."ms-2.1.2"
+          sources."node-fetch-2.6.1"
+          sources."p-locate-4.1.0"
+          sources."path-exists-4.0.0"
+          sources."pkg-dir-4.2.0"
+        ];
+      })
+      sources."q-1.5.1"
+      sources."qrcode-terminal-0.12.0"
+      sources."qs-6.5.2"
+      sources."querystring-0.2.0"
+      sources."quick-lru-1.1.0"
+      sources."quote-0.4.0"
+      sources."ramda-0.26.1"
+      sources."range-parser-1.2.0"
+      (sources."raw-body-2.4.1" // {
+        dependencies = [
+          sources."bytes-3.1.0"
+          sources."depd-1.1.2"
+          sources."http-errors-1.7.3"
+        ];
+      })
+      sources."rc-1.2.8"
+      sources."read-pkg-3.0.0"
+      (sources."read-pkg-up-7.0.1" // {
+        dependencies = [
+          sources."find-up-4.1.0"
+          sources."locate-path-5.0.0"
+          sources."p-locate-4.1.0"
+          sources."parse-json-5.0.0"
+          sources."path-exists-4.0.0"
+          (sources."read-pkg-5.2.0" // {
+            dependencies = [
+              sources."type-fest-0.6.0"
+            ];
+          })
+          sources."type-fest-0.8.1"
+        ];
+      })
+      sources."readable-stream-2.3.7"
+      sources."rechoir-0.6.2"
+      sources."redent-2.0.0"
+      sources."redeyed-2.1.1"
+      sources."reduce-flatten-3.0.0"
+      sources."regenerator-runtime-0.13.5"
+      sources."regex-not-1.0.2"
+      sources."regexpp-3.1.0"
+      sources."registry-auth-token-3.3.2"
+      sources."registry-url-3.1.0"
+      sources."repeat-element-1.1.3"
+      sources."repeat-string-1.6.1"
+      sources."request-2.88.2"
+      sources."request-progress-3.0.0"
+      sources."require-directory-2.1.1"
+      sources."require-main-filename-2.0.0"
+      sources."resolve-1.16.1"
+      sources."resolve-from-4.0.0"
+      (sources."resolve-path-1.4.0" // {
+        dependencies = [
+          sources."depd-1.1.2"
+          sources."http-errors-1.6.3"
+          sources."inherits-2.0.3"
+          sources."setprototypeof-1.1.0"
+        ];
+      })
+      sources."resolve-url-0.2.1"
+      sources."responselike-2.0.0"
+      sources."restore-cursor-1.0.1"
+      sources."ret-0.1.15"
+      sources."retry-0.12.0"
+      sources."reusify-1.0.4"
+      sources."rimraf-3.0.2"
+      sources."run-async-2.4.1"
+      sources."run-node-1.0.0"
+      sources."run-parallel-1.1.9"
+      sources."rx-4.1.0"
+      sources."rxjs-6.5.5"
+      sources."safe-buffer-5.1.2"
+      sources."safe-regex-1.1.0"
+      sources."safer-buffer-2.1.2"
+      sources."secure-keys-1.0.0"
+      (sources."semantic-release-15.13.32" // {
+        dependencies = [
+          sources."cosmiconfig-6.0.0"
+          sources."cross-spawn-7.0.2"
+          sources."debug-4.1.1"
+          sources."execa-3.4.0"
+          sources."figures-3.2.0"
+          sources."get-stream-5.1.0"
+          sources."hosted-git-info-3.0.4"
+          sources."is-stream-2.0.0"
+          sources."lru-cache-5.1.1"
+          sources."mimic-fn-2.1.0"
+          sources."ms-2.1.2"
+          sources."npm-run-path-4.0.1"
+          sources."onetime-5.1.0"
+          sources."p-finally-2.0.1"
+          sources."p-locate-4.1.0"
+          sources."parse-json-5.0.0"
+          sources."path-key-3.1.1"
+          sources."path-type-4.0.0"
+          sources."resolve-from-5.0.0"
+          sources."semver-6.3.0"
+          sources."shebang-command-2.0.0"
+          sources."shebang-regex-3.0.0"
+          sources."which-2.0.2"
+          sources."yallist-3.1.1"
+        ];
+      })
+      sources."semver-6.3.0"
+      sources."semver-compare-1.0.0"
+      sources."semver-regex-2.0.0"
+      (sources."serve-11.3.0" // {
+        dependencies = [
+          sources."chalk-2.4.1"
+        ];
+      })
+      (sources."serve-handler-6.1.2" // {
+        dependencies = [
+          sources."mime-db-1.33.0"
+          sources."mime-types-2.1.18"
+        ];
+      })
+      (sources."serve-index-75lb-2.0.1" // {
+        dependencies = [
+          sources."depd-1.1.2"
+          sources."http-errors-1.6.3"
+          sources."inherits-2.0.3"
+          sources."setprototypeof-1.1.0"
+        ];
+      })
+      sources."set-blocking-2.0.0"
+      (sources."set-value-2.0.1" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      sources."setprototypeof-1.1.1"
+      sources."shebang-command-1.2.0"
+      sources."shebang-regex-1.0.0"
+      sources."shell-quote-1.7.2"
+      sources."shelljs-0.8.4"
+      sources."signal-exit-3.0.3"
+      (sources."signale-1.4.0" // {
+        dependencies = [
+          sources."figures-2.0.0"
+        ];
+      })
+      sources."slash-2.0.0"
+      sources."slice-ansi-0.0.4"
+      (sources."snapdragon-0.8.2" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      (sources."snapdragon-node-2.1.1" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+          sources."is-accessor-descriptor-1.0.0"
+          sources."is-data-descriptor-1.0.0"
+          sources."is-descriptor-1.0.2"
+        ];
+      })
+      (sources."snapdragon-util-3.0.1" // {
+        dependencies = [
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."sort-object-keys-1.1.3"
+      (sources."sort-package-json-1.42.2" // {
+        dependencies = [
+          sources."@nodelib/fs.stat-2.0.3"
+          sources."array-union-2.1.0"
+          sources."braces-3.0.2"
+          sources."dir-glob-3.0.1"
+          sources."fast-glob-3.2.2"
+          sources."fill-range-7.0.1"
+          sources."glob-parent-5.1.1"
+          sources."globby-10.0.0"
+          sources."ignore-5.1.4"
+          sources."is-number-7.0.0"
+          sources."is-plain-obj-2.1.0"
+          sources."micromatch-4.0.2"
+          sources."path-type-4.0.0"
+          sources."slash-3.0.0"
+          sources."to-regex-range-5.0.1"
+        ];
+      })
+      sources."source-map-0.5.7"
+      sources."source-map-resolve-0.5.3"
+      sources."source-map-url-0.4.0"
+      sources."spawn-error-forwarder-1.0.0"
+      sources."spdx-correct-3.1.0"
+      sources."spdx-exceptions-2.2.0"
+      sources."spdx-expression-parse-3.0.0"
+      sources."spdx-license-ids-3.0.5"
+      sources."split-1.0.1"
+      sources."split-string-3.1.0"
+      (sources."split2-2.2.0" // {
+        dependencies = [
+          sources."through2-2.0.5"
+        ];
+      })
+      sources."spots-0.4.0"
+      sources."sprintf-js-1.0.3"
+      sources."sshpk-1.16.1"
+      (sources."start-server-and-test-1.10.6" // {
+        dependencies = [
+          sources."bluebird-3.7.1"
+          sources."cross-spawn-7.0.2"
+          sources."debug-4.1.1"
+          sources."execa-2.1.0"
+          sources."get-stream-5.1.0"
+          sources."is-stream-2.0.0"
+          sources."mimic-fn-2.1.0"
+          sources."ms-2.1.2"
+          sources."npm-run-path-3.1.0"
+          sources."onetime-5.1.0"
+          sources."p-finally-2.0.1"
+          sources."path-key-3.1.1"
+          sources."shebang-command-2.0.0"
+          sources."shebang-regex-3.0.0"
+          sources."which-2.0.2"
+        ];
+      })
+      (sources."static-extend-0.1.2" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+        ];
+      })
+      sources."statuses-1.5.0"
+      sources."stop-build-1.1.0"
+      sources."stream-combiner-0.0.4"
+      sources."stream-combiner2-1.1.1"
+      sources."stream-log-stats-3.0.2"
+      sources."stream-slice-0.1.2"
+      sources."stream-via-1.0.4"
+      sources."streaming-json-stringify-3.1.0"
+      sources."string-width-2.1.1"
+      sources."string.prototype.padend-3.1.0"
+      sources."string.prototype.trimend-1.0.1"
+      sources."string.prototype.trimleft-2.1.2"
+      sources."string.prototype.trimright-2.1.2"
+      sources."string.prototype.trimstart-1.0.1"
+      sources."string_decoder-1.1.1"
+      sources."strip-ansi-4.0.0"
+      sources."strip-bom-3.0.0"
+      sources."strip-eof-1.0.0"
+      sources."strip-final-newline-2.0.0"
+      sources."strip-indent-2.0.0"
+      sources."strip-json-comments-2.0.1"
+      sources."supports-color-5.5.0"
+      (sources."supports-hyperlinks-1.0.1" // {
+        dependencies = [
+          sources."has-flag-2.0.0"
+        ];
+      })
+      sources."symbol-observable-1.2.0"
+      (sources."table-5.4.6" // {
+        dependencies = [
+          sources."ajv-6.12.2"
+          sources."ansi-regex-4.1.0"
+          sources."emoji-regex-7.0.3"
+          sources."fast-deep-equal-3.1.1"
+          sources."slice-ansi-2.1.0"
+          sources."string-width-3.1.0"
+          sources."strip-ansi-5.2.0"
+        ];
+      })
+      (sources."table-layout-1.0.1" // {
+        dependencies = [
+          sources."typical-5.2.0"
+        ];
+      })
+      sources."tar-fs-2.1.1"
+      (sources."tar-stream-2.2.0" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
+      sources."temp-dir-1.0.0"
+      (sources."tempy-0.3.0" // {
+        dependencies = [
+          sources."type-fest-0.3.1"
+        ];
+      })
+      (sources."term-size-1.2.0" // {
+        dependencies = [
+          sources."cross-spawn-5.1.0"
+          sources."execa-0.7.0"
+        ];
+      })
+      sources."text-extensions-1.9.0"
+      sources."text-table-0.2.0"
+      sources."thenify-3.3.1"
+      sources."thenify-all-1.6.0"
+      sources."throttleit-1.0.0"
+      sources."through-2.3.8"
+      sources."through2-3.0.1"
+      sources."tmp-0.2.1"
+      (sources."to-object-path-0.3.0" // {
+        dependencies = [
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."to-readable-stream-2.1.0"
+      sources."to-regex-3.0.2"
+      sources."to-regex-range-2.1.1"
+      sources."toidentifier-1.0.0"
+      sources."tough-cookie-2.5.0"
+      sources."traverse-0.6.6"
+      sources."trim-newlines-2.0.0"
+      sources."trim-off-newlines-1.0.1"
+      sources."tslib-1.11.1"
+      sources."tsscmp-1.0.6"
+      sources."tunnel-agent-0.6.0"
+      sources."tweetnacl-0.14.5"
+      sources."type-check-0.4.0"
+      sources."type-fest-0.6.0"
+      sources."type-is-1.6.18"
+      sources."typedarray-0.0.6"
+      sources."typescript-3.7.4"
+      sources."typical-6.0.1"
+      (sources."uglify-js-3.9.1" // {
+        dependencies = [
+          sources."commander-2.20.3"
+        ];
+      })
+      sources."unbzip2-stream-1.4.3"
+      sources."union-value-1.0.1"
+      sources."unique-string-1.0.0"
+      sources."universal-user-agent-4.0.1"
+      sources."universalify-0.1.2"
+      sources."unpipe-1.0.0"
+      (sources."unset-value-1.0.0" // {
+        dependencies = [
+          (sources."has-value-0.3.1" // {
+            dependencies = [
+              sources."isobject-2.1.0"
+            ];
+          })
+          sources."has-values-0.1.4"
+        ];
+      })
+      sources."untildify-4.0.0"
+      sources."update-check-1.5.2"
+      sources."uri-js-4.2.2"
+      sources."urix-0.1.0"
+      (sources."url-0.11.0" // {
+        dependencies = [
+          sources."punycode-1.3.2"
+        ];
+      })
+      sources."url-join-4.0.1"
+      sources."use-3.1.1"
+      sources."util-deprecate-1.0.2"
+      sources."uuid-3.4.0"
+      sources."v8-compile-cache-2.1.0"
+      sources."validate-npm-package-license-3.0.4"
+      sources."vary-1.1.2"
+      sources."verror-1.10.0"
+      sources."wait-on-3.3.0"
+      sources."walk-back-4.0.0"
+      sources."weak-map-1.0.5"
+      sources."which-1.3.1"
+      sources."which-module-2.0.0"
+      sources."widest-line-2.0.1"
+      sources."window-size-0.1.4"
+      (sources."windows-release-3.3.0" // {
+        dependencies = [
+          sources."execa-1.0.0"
+          sources."get-stream-4.1.0"
+        ];
+      })
+      sources."word-wrap-1.2.3"
+      sources."wordwrap-1.0.0"
+      (sources."wordwrapjs-4.0.0" // {
+        dependencies = [
+          sources."reduce-flatten-2.0.0"
+          sources."typical-5.2.0"
+        ];
+      })
+      sources."wrap-ansi-3.0.1"
+      sources."wrappy-1.0.2"
+      sources."write-1.0.3"
+      sources."ws-7.4.3"
+      sources."xtend-4.0.2"
+      sources."y18n-4.0.0"
+      sources."yallist-2.1.2"
+      sources."yaml-1.9.1"
+      sources."yaml-lint-1.2.4"
+      (sources."yargs-15.3.1" // {
+        dependencies = [
+          sources."ansi-regex-5.0.0"
+          sources."camelcase-5.3.1"
+          sources."emoji-regex-8.0.0"
+          sources."find-up-4.1.0"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."locate-path-5.0.0"
+          sources."p-locate-4.1.0"
+          sources."path-exists-4.0.0"
+          sources."string-width-4.2.0"
+          sources."strip-ansi-6.0.0"
+          sources."yargs-parser-18.1.3"
+        ];
+      })
+      sources."yargs-parser-10.1.0"
+      sources."yauzl-2.10.0"
+      sources."ylru-1.2.1"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "This is an example app used to showcase Cypress.io testing. For a full reference of our documentation, go to https://docs.cypress.io";
+      homepage = "https://github.com/cypress-io/cypress-example-kitchensink#readme";
+      license = "MIT";
+    };
+    production = false;
+    bypassCache = true;
+    reconstructLock = false;
+  };
+in
+{
+  args = args;
+  sources = sources;
+  tarball = nodeEnv.buildNodeSourceDist args;
+  package = nodeEnv.buildNodePackage args;
+  shell = nodeEnv.buildNodeShell args;
+  nodeDependencies = nodeEnv.buildNodeDependencies (lib.overrideExisting args {
+    src = stdenv.mkDerivation {
+      name = args.name + "-package-json";
+      src = (ignore: src: src) [
+        "*"
+        "!package.json"
+        "!package-lock.json"
+      ] args.src;
+      dontBuild = true;
+      installPhase = "mkdir -p $out; cp -r ./* $out;";
+    };
+  });
+}
diff --git a/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/regen-nix b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/regen-nix
new file mode 100755
index 000000000000..86061211d7b3
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/regen-nix
@@ -0,0 +1,21 @@
+#!/usr/bin/env nix-shell
+#!nix-shell ./regen-nix.nix
+#!nix-shell -i bash
+
+node2nix \
+  --nodejs-12 \
+  --input $src/package.json \
+  --lock $src/package-lock.json \
+  --composition cypress-example-kitchensink.nix \
+  --development \
+  ;
+
+# node2nix produces opinionated expressions that work for in-repo packaging
+# but aren't ideal for Nixpkgs:
+sed -i cypress-example-kitchensink.nix \
+  -e 's^fetchgit^fetchgit callPackage^'
+sed -i node-packages.nix \
+  -e 's^fetchgit, ^fetchgit, callPackage, ^' \
+  -e 's^src = .*/nix/store/.*-source^src = callPackage ./src.nix {}^' \
+  -e 's^nix-gitignore.gitignoreSourcePure^(ignore: src: src)^' \
+  ;
diff --git a/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/regen-nix.nix b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/regen-nix.nix
new file mode 100644
index 000000000000..f7276c5c2ec4
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/regen-nix.nix
@@ -0,0 +1,8 @@
+{ pkgs ? import ../../../../.. { config = { }; overlays = [ ]; } }:
+
+pkgs.mkShell {
+  nativeBuildInputs = [
+    pkgs.nodePackages.node2nix
+  ];
+  src = pkgs.callPackage ./src.nix { };
+}
diff --git a/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/src.nix b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/src.nix
new file mode 100644
index 000000000000..8f9999a704fe
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/cypress/cypress-example-kitchensink/src.nix
@@ -0,0 +1,6 @@
+{ fetchFromGitHub }: fetchFromGitHub {
+  owner = "cypress-io";
+  repo = "cypress-example-kitchensink";
+  rev = "1572887a2003c2f35ff46d14f5f1cdfef975c9be";
+  sha256 = "sha256-A7d95b9V707iOzlIg+3nItPPB8HNVVOjPhGqa8MXRPE=";
+}
diff --git a/nixpkgs/pkgs/development/web/cypress/default.nix b/nixpkgs/pkgs/development/web/cypress/default.nix
index 0b61aa23086f..ff673658272e 100644
--- a/nixpkgs/pkgs/development/web/cypress/default.nix
+++ b/nixpkgs/pkgs/development/web/cypress/default.nix
@@ -1,25 +1,45 @@
-{ stdenv, lib, fetchzip, autoPatchelfHook, xorg, gtk2, gnome2, gtk3, nss, alsa-lib, udev, unzip, wrapGAppsHook, mesa }:
+{ alsa-lib
+, autoPatchelfHook
+, callPackage
+, fetchzip
+, gnome2
+, gtk2
+, gtk3
+, lib
+, mesa
+, nss
+, stdenv
+, udev
+, unzip
+, wrapGAppsHook
+, xorg
+}:
 
 stdenv.mkDerivation rec {
   pname = "cypress";
-  version = "7.7.0";
+  version = "8.0.0";
 
   src = fetchzip {
     url = "https://cdn.cypress.io/desktop/${version}/linux-x64/cypress.zip";
-    sha256 = "1mr46raha5aqi8ba0cqvyil5z4vcr46hnxqqmpk3fkrr8awd2897";
+    sha256 = "144mz37xhk7gkwhmf67q1h07f2biy5nnw78yb2syc7w28v48ng0z";
   };
 
-  passthru.updateScript = ./update.sh;
-
   # don't remove runtime deps
   dontPatchELF = true;
 
   nativeBuildInputs = [ autoPatchelfHook wrapGAppsHook unzip ];
 
   buildInputs = with xorg; [
-    libXScrnSaver libXdamage libXtst libxshmfence
+    libXScrnSaver
+    libXdamage
+    libXtst
+    libxshmfence
   ] ++ [
-    nss gtk2 alsa-lib gnome2.GConf gtk3
+    nss
+    gtk2
+    alsa-lib
+    gnome2.GConf
+    gtk3
     mesa # for libgbm
   ];
 
@@ -41,11 +61,19 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
+  passthru = {
+    updateScript = ./update.sh;
+
+    tests = {
+      example = callPackage ./cypress-example-kitchensink { };
+    };
+  };
+
   meta = with lib; {
     description = "Fast, easy and reliable testing for anything that runs in a browser";
     homepage = "https://www.cypress.io";
     license = licenses.mit;
-    platforms = ["x86_64-linux"];
+    platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ tweber mmahut ];
   };
 }
diff --git a/nixpkgs/pkgs/development/web/deno/default.nix b/nixpkgs/pkgs/development/web/deno/default.nix
index b469a49eb722..d1a6330df7bd 100644
--- a/nixpkgs/pkgs/development/web/deno/default.nix
+++ b/nixpkgs/pkgs/development/web/deno/default.nix
@@ -17,15 +17,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "deno";
-  version = "1.11.3";
+  version = "1.12.1";
 
   src = fetchFromGitHub {
     owner = "denoland";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Ru75eyyyaaFDD71AzDE5kgLsiB7thjqrJvvnA/PdvrA=";
+    sha256 = "sha256-kNwRnoUkX2dmj6ii9fRu/Hv4V3/sz6ag+wUPf93tmTQ=";
   };
-  cargoSha256 = "sha256-8UnsmIDdFEKp4diJ6Cr/fsbPKlw7wGHmGjXu5oqh2HI=";
+  cargoSha256 = "sha256-5ukTSzDFCkBQ1UFfnpz1fFzJSHBYUoZAvhPGMkr/fIs=";
 
   # Install completions post-install
   nativeBuildInputs = [ installShellFiles ];
diff --git a/nixpkgs/pkgs/development/web/deno/librusty_v8.nix b/nixpkgs/pkgs/development/web/deno/librusty_v8.nix
index 6ae0de15c770..a85d2bf76f2d 100644
--- a/nixpkgs/pkgs/development/web/deno/librusty_v8.nix
+++ b/nixpkgs/pkgs/development/web/deno/librusty_v8.nix
@@ -11,11 +11,11 @@ let
   };
 in
 fetch_librusty_v8 {
-  version = "0.22.3";
+  version = "0.25.3";
   shas = {
-    x86_64-linux = "sha256-RS1fUuTm6zhln67ank6Sit9nhGyKij1UsJ77ezffCh8=";
-    aarch64-linux = "sha256-E7SSFYODO8diPmEvpJyzAcltrh7YUXhWlqsRytFRmtA=";
-    x86_64-darwin = "sha256-29XTC7RoUDNJq46WkLCQT1vCuv4dzBrp8no6vVCsQ2g=";
-    aarch64-darwin = "sha256-UZHhKUjWQGklH26z2Kc2J7VwlV83LWl5n3YZt5ryKrY=";
+    x86_64-linux = "sha256-Z3lEJT3QVhP8PoDiM6Fw0sm5rXWvasBqASBO5tZA5zM=";
+    aarch64-linux = "sha256-pbcd1zV7IIEqCIp8vsRiO0KBGrOv52SvMZ4gthxuN/I=";
+    x86_64-darwin = "sha256-BwYdgd1kK8EQFfDc9RgtNvwvx7agt9hYNVmBGwHoqz0=";
+    aarch64-darwin = "sha256-/RHeNuR7VjhfwdjZXWMMX3UnweAjJblSCUq9eIwGvWc=";
   };
 }
diff --git a/nixpkgs/pkgs/development/web/flyctl/default.nix b/nixpkgs/pkgs/development/web/flyctl/default.nix
index 3c61121b0357..8828b0222cc2 100644
--- a/nixpkgs/pkgs/development/web/flyctl/default.nix
+++ b/nixpkgs/pkgs/development/web/flyctl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "flyctl";
-  version = "0.0.228";
+  version = "0.0.229";
 
   src = fetchFromGitHub {
     owner = "superfly";
     repo = "flyctl";
     rev = "v${version}";
-    sha256 = "sha256-h8ZiAabB0IIJoeQMMvOO1lQNMdFYAoTXKcTAPmLP5Sw=";
+    sha256 = "sha256-mw+rTMFj41+T6lDe/MOQpmRcjt/gJhOCfaHcBkpjcsg=";
   };
 
   preBuild = ''
diff --git a/nixpkgs/pkgs/development/web/insomnia/default.nix b/nixpkgs/pkgs/development/web/insomnia/default.nix
index 8fcf4696d0e1..31ec970b4251 100644
--- a/nixpkgs/pkgs/development/web/insomnia/default.nix
+++ b/nixpkgs/pkgs/development/web/insomnia/default.nix
@@ -16,12 +16,12 @@ let
   ];
 in stdenv.mkDerivation rec {
   pname = "insomnia";
-  version = "2021.4.0";
+  version = "2021.4.1";
 
   src = fetchurl {
     url =
       "https://github.com/Kong/insomnia/releases/download/core%40${version}/Insomnia.Core-${version}.deb";
-    sha256 = "sha256-lMQWoShlEACTrcGgQtfPGVQ4X8pCG/6SkXtz+rWAOyg=";
+    sha256 = "sha256-74du6UQB1LfsnYF9tmx41KJNmlEVVL5H2W+YQR720FY=";
   };
 
   nativeBuildInputs =
diff --git a/nixpkgs/pkgs/development/web/nodejs/v16.nix b/nixpkgs/pkgs/development/web/nodejs/v16.nix
index 350abed7ec7a..766df734a4aa 100644
--- a/nixpkgs/pkgs/development/web/nodejs/v16.nix
+++ b/nixpkgs/pkgs/development/web/nodejs/v16.nix
@@ -8,6 +8,6 @@ let
 in
   buildNodejs {
     inherit enableNpm;
-    version = "16.4.2";
-    sha256 = "048x4vznpi6dai6fripg0yk21kfxm9s2mw7jb0rzisyv5aw8v2dj";
+    version = "16.5.0";
+    sha256 = "16dapj5pm2y1m3ldrjjlz8rq9axk85nn316iz02nk6qjs66y6drz";
   }
diff --git a/nixpkgs/pkgs/development/web/now-cli/default.nix b/nixpkgs/pkgs/development/web/now-cli/default.nix
index 3b1d2b4be4b5..586fc03687c5 100644
--- a/nixpkgs/pkgs/development/web/now-cli/default.nix
+++ b/nixpkgs/pkgs/development/web/now-cli/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     gunzip -c $curSrc > now-linux
   '';
 
-  buildPhase = ":";
+  dontBuild = true;
 
   installPhase = ''
     mkdir $out
diff --git a/nixpkgs/pkgs/games/0ad/wrapper.nix b/nixpkgs/pkgs/games/0ad/wrapper.nix
index ca7c8e16e3c5..ede151307d55 100644
--- a/nixpkgs/pkgs/games/0ad/wrapper.nix
+++ b/nixpkgs/pkgs/games/0ad/wrapper.nix
@@ -6,7 +6,7 @@ buildEnv {
   name = "zeroad-${zeroad-unwrapped.version}";
   inherit (zeroad-unwrapped) meta;
 
-  buildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ makeWrapper ];
 
   paths = [ zeroad-unwrapped zeroad-data ];
 
diff --git a/nixpkgs/pkgs/games/anki/bin.nix b/nixpkgs/pkgs/games/anki/bin.nix
index 09f92b0f8481..26b29b9228e3 100644
--- a/nixpkgs/pkgs/games/anki/bin.nix
+++ b/nixpkgs/pkgs/games/anki/bin.nix
@@ -43,6 +43,14 @@ if stdenv.isLinux then buildFHSUserEnv (appimageTools.defaultFhsEnvArgs // {
     exec ${unpacked}/bin/anki
   '';
 
+  extraInstallCommands = ''
+    mkdir -p $out/share
+    cp -R ${unpacked}/share/applications \
+      ${unpacked}/share/man \
+      ${unpacked}/share/pixmaps \
+      $out/share/
+  '';
+
   inherit meta;
 }) else stdenv.mkDerivation {
   inherit pname version;
diff --git a/nixpkgs/pkgs/games/cdogs-sdl/default.nix b/nixpkgs/pkgs/games/cdogs-sdl/default.nix
index 30abb71a1296..c34c9efb1673 100644
--- a/nixpkgs/pkgs/games/cdogs-sdl/default.nix
+++ b/nixpkgs/pkgs/games/cdogs-sdl/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cdogs";
-  version = "0.12.0";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     repo = "cdogs-sdl";
     owner = "cxong";
     rev = version;
-    sha256 = "sha256-qbMR7otsC+uz+9mwgFaD2Z5fC6rj8ueYG3KwpPiqL98=";
+    sha256 = "sha256-7wNiDA/gOpqzSFWw8Bn6suC/f5RXdDTxPV49nCvOxas=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/games/dwarf-fortress/default.nix b/nixpkgs/pkgs/games/dwarf-fortress/default.nix
index 3e96351acbbb..7fd3dc61dd42 100644
--- a/nixpkgs/pkgs/games/dwarf-fortress/default.nix
+++ b/nixpkgs/pkgs/games/dwarf-fortress/default.nix
@@ -40,7 +40,7 @@ let
   # The latest Dwarf Fortress version. Maintainers: when a new version comes
   # out, ensure that (unfuck|dfhack|twbt) are all up to date before changing
   # this.
-  latestVersion = "0.47.04";
+  latestVersion = "0.47.05";
 
   # Converts a version to a package name.
   versionToName = version: "dwarf-fortress_${lib.replaceStrings ["."] ["_"] version}";
diff --git a/nixpkgs/pkgs/games/dwarf-fortress/dfhack/default.nix b/nixpkgs/pkgs/games/dwarf-fortress/dfhack/default.nix
index 4bfb69355a7e..80fa1de18e4e 100644
--- a/nixpkgs/pkgs/games/dwarf-fortress/dfhack/default.nix
+++ b/nixpkgs/pkgs/games/dwarf-fortress/dfhack/default.nix
@@ -71,6 +71,13 @@ let
       xmlRev = "036b662a1bbc96b4911f3cbe74dfa1243b6459bc";
       prerelease = false;
     };
+    "0.47.05" = {
+      dfHackRelease = "0.47.05-r1";
+      sha256 = "sha256-B0iv7fpIcnaO8sx9wPqI7/WuyLK15p8UYlYIcF5F5bw=";
+      xmlRev = "11c379ffd31255f2a1415d98106114a46245e1c3";
+      prerelease = false;
+    };
+
   };
 
   release =
diff --git a/nixpkgs/pkgs/games/dwarf-fortress/game.json b/nixpkgs/pkgs/games/dwarf-fortress/game.json
index f5f1f389904f..522cccdcda45 100644
--- a/nixpkgs/pkgs/games/dwarf-fortress/game.json
+++ b/nixpkgs/pkgs/games/dwarf-fortress/game.json
@@ -121,5 +121,19 @@
     "legacy_s": "19ai7lvxx0y3iha9qrbl5krric547rzs6vm4ibk8x61vv97jrbd8",
     "legacy32": "0lli6s1g7yj3p3h26ajgq3h619n88qn6s7amyz6z8w7hyzfi7wij",
     "legacy32_s": "1wzxbzgln9pmsk2nchrl94d2yd09xdgynmjl4qwcaqzkrnf3sfqc"
+  },
+  "0.47.05": {
+    "linux": "18zwmz2nsgwjxbr2yd9jcrgw6l5b481hh1848cgn5nfpnzdscx5c",
+    "linux32": "1jbav7ghsjsxd6cdp6f2x5qn83zc8707dqan5sp73fp6mbj2jasl",
+    "osx": "092z1vhc5sbdc5irggdz5ai7rxifmg4yhy33aicpsjcnvcmajydw",
+    "osx32": "0lpbwfiagp0zp280aw3fmj8938w5fc5r9gibzk2h86jy63ps29ww",
+    "win": "0bbk7j3d4h2wn9hmbsbbbbr0ajf3ddlprxfaajfbnbiyv72cpn9s",
+    "win_s": "0nl7c9dpfx7jjpy7y52z8h3kiy4cpax1m58apbcfyy95an4jz8s4",
+    "win32": "08ka1lklly82h4mr770y9p0a21x9dx6jqvjgxdsxj5979f26il1v",
+    "win32_s": "06w844zxzx3lfykibgkk4gbg4xymnqraj1ikv4mzlv31l727a1x4",
+    "legacy": "042a0gbad3cp5dwhnrzg3vr9w48b8ybqgxgw5i9rk4c1i0gjjpw2",
+    "legacy_s": "1rb7h8lzlsjs08rvhhl3nwbrpj54zijijp4y0qdp4vyzsig6nisk",
+    "legacy32": "0ayw09x9smihh8qp5pdvr6vvhwkvcqz36h3lh4g1b5kzxj7g9cyf",
+    "legacy32_s": "10gfxlysfs9gyi1mv52idp5xk45g9h517g2jq4a8cqp2j7594v9c"
   }
 }
diff --git a/nixpkgs/pkgs/games/dwarf-fortress/game.nix b/nixpkgs/pkgs/games/dwarf-fortress/game.nix
index d73b111919e1..e4b7349a6902 100644
--- a/nixpkgs/pkgs/games/dwarf-fortress/game.nix
+++ b/nixpkgs/pkgs/games/dwarf-fortress/game.nix
@@ -52,7 +52,8 @@ let
 in
 
 stdenv.mkDerivation {
-  name = "dwarf-fortress-${dfVersion}";
+  pname = "dwarf-fortress";
+  version = dfVersion;
 
   src = fetchurl {
     url = "${homepage}df_${baseVersion}_${patchVersion}_${dfPlatform}.tar.bz2";
diff --git a/nixpkgs/pkgs/games/dwarf-fortress/themes/themes.json b/nixpkgs/pkgs/games/dwarf-fortress/themes/themes.json
index 8b0b9127d5b1..1b2449addf40 100644
--- a/nixpkgs/pkgs/games/dwarf-fortress/themes/themes.json
+++ b/nixpkgs/pkgs/games/dwarf-fortress/themes/themes.json
@@ -1,8 +1,8 @@
 [
   {
     "name": "afro-graphics",
-    "version": "47.04",
-    "sha256": "1x1ir0qi3g8wgzwm1pnrkrqb6lhnjq87vs30l8kva6y5wr4sz7q0"
+    "version": "47.05",
+    "sha256": "0gqrxb4bbx1h93xjz4ygd7yp8g5barj2zc6y7xvr94ww8b9a2r28"
   },
   {
     "name": "autoreiv",
@@ -21,13 +21,13 @@
   },
   {
     "name": "gemset",
-    "version": "47.04",
-    "sha256": "015nkkdnpykhz6a1n8qi3wgap19a4wavz4n2xbvfa4g770lcjd92"
+    "version": "47.05",
+    "sha256": "1ivsbj71w3zwxnaz0405xhqhn4yzdfziijc0s0vmbmcphhhqnjaj"
   },
   {
     "name": "ironhand",
-    "version": "47.04",
-    "sha256": "0x3hi1isgc2cv7c3qz87rm7ik0kbd748djpnghvjdqpj3a0n1ih2"
+    "version": "47.05",
+    "sha256": "003yrwishkzf6nvr6xlldbnd3x7rf5ds7l91mc0npdq1lcl0br9w"
   },
   {
     "name": "jolly-bastion",
@@ -36,33 +36,33 @@
   },
   {
     "name": "mayday",
-    "version": "47.04a",
-    "sha256": "1hpj40762n81grsddg3nc5jxc0bqmy2xamxvsgxzb2bx0b7akz0w"
+    "version": "47.05",
+    "sha256": "17sdvr9a98xx5r2nrr3m4jlddvlb4h6qlch8r23g9g4mj0hsifnj"
   },
   {
     "name": "meph",
-    "version": "47.04_v5.5.0_V1.1.2",
-    "sha256": "0q8hfm66rag61qd2hab7lsr4nyg52bn1hvy6bl7z6kv4yj5cra50"
+    "version": "47.05_v5.5.1-V",
+    "sha256": "1kiqxiqw686dii5x7zav2nsw15csg0grv4h8hrb764rl4fw6x9nl"
   },
   {
     "name": "obsidian",
-    "version": "47.04a",
-    "sha256": "0y5kmj362i9y8w1n5d1nx80yq88c0xqps9i02gvnls6r421a4nms"
+    "version": "47.05",
+    "sha256": "1dkwdwm52fsj4gqqqr5vppbsk8a4kd3i7d3qawawgl0qn6q139xs"
   },
   {
     "name": "phoebus",
-    "version": "47.04a",
-    "sha256": "1ihbqs5a3b8pydbcynblvgw2bxkgr9hhpmgjlji7a7zvz8m6h6pw"
+    "version": "47.05",
+    "sha256": "18pn3dqyk9hp82gva92c6y3vk52s366rrx74rdnvahswdr5dmq4d"
   },
   {
     "name": "rally-ho",
-    "version": "47.04",
-    "sha256": "0pmvpfbj07ll674lw7mjgkb4kgjk4mxr82fjq4ppvwrnzx6vi2g0"
+    "version": "47.05",
+    "sha256": "1h3jqq0yq2rbzbl70sq85lgdpwswczpay16kqfwq1n8zdisl4gqn"
   },
   {
     "name": "spacefox",
-    "version": "47.04",
-    "sha256": "0sk3k5bcpfl2xind4vfrgzbcqqbw0mg47pm3d3h44vi6hl3bdaqj"
+    "version": "47.05a",
+    "sha256": "1y1rbsxr1m0mb2k02q6gh24c4nyqc9lw98dvfckp2bzc5f9cx3ks"
   },
   {
     "name": "taffer",
@@ -76,8 +76,8 @@
   },
   {
     "name": "vettlingr",
-    "version": "1.4a",
-    "sha256": "1p4y0dm52rb49dnmcnivddlsd94m4gr1pxn04fpjbrvck22klgpj"
+    "version": "47.05",
+    "sha256": "0s1vy3ssp1hk8f6wlkz09xy5v747dpbsgw5vi6i1mq3lnlcy68vq"
   },
   {
     "name": "wanderlust",
diff --git a/nixpkgs/pkgs/games/dwarf-fortress/twbt/default.nix b/nixpkgs/pkgs/games/dwarf-fortress/twbt/default.nix
index e6c82e32f0db..7882cf06a074 100644
--- a/nixpkgs/pkgs/games/dwarf-fortress/twbt/default.nix
+++ b/nixpkgs/pkgs/games/dwarf-fortress/twbt/default.nix
@@ -50,6 +50,12 @@ let
       sha256 = "092dgp8fh1j4nqr9wbzn89ib1nhscclr8m91lfxsvg0mgn7j8xlv";
       prerelease = true;
     };
+    "0.47.05" = {
+      twbtRelease = "6.xx";
+      dfhackRelease = "0.47.05-beta1";
+      sha256 = "sha256-Y6G0qBMHvotp/oyiqANlzXZVklL270dhskd135PnE9Q=";
+      prerelease = true;
+    };
   };
 
   release =
diff --git a/nixpkgs/pkgs/games/dwarf-fortress/unfuck.nix b/nixpkgs/pkgs/games/dwarf-fortress/unfuck.nix
index 7e96b284044d..5b25cf4ff409 100644
--- a/nixpkgs/pkgs/games/dwarf-fortress/unfuck.nix
+++ b/nixpkgs/pkgs/games/dwarf-fortress/unfuck.nix
@@ -12,6 +12,7 @@
 , ncurses
 , glib
 , gtk2
+, gtk3
 , libsndfile
 , zlib
 , dfVersion
@@ -58,6 +59,10 @@ let
       unfuckRelease = "0.47.04";
       sha256 = "1wa990xbsyiiz7abq153xmafvvk1dmgz33rp907d005kzl1z86i9";
     };
+    "0.47.05" = {
+      unfuckRelease = "0.47.04";
+      sha256 = "1wa990xbsyiiz7abq153xmafvvk1dmgz33rp907d005kzl1z86i9";
+    };
   };
 
   release =
@@ -90,11 +95,16 @@ stdenv.mkDerivation {
     glew
     openalSoft
     ncurses
-    gtk2
     libsndfile
     zlib
     libGL
-  ];
+  ]
+  # switched to gtk3 in 0.47.05
+  ++ (if lib.versionOlder release.unfuckRelease "0.47.05" then [
+    gtk2
+  ] else [
+    gtk3
+  ]);
 
   # Don't strip unused symbols; dfhack hooks into some of them.
   dontStrip = true;
diff --git a/nixpkgs/pkgs/games/empty-epsilon/0001-bundle-system-glm-in-seriousproton.patch b/nixpkgs/pkgs/games/empty-epsilon/0001-bundle-system-glm-in-seriousproton.patch
new file mode 100644
index 000000000000..d59d548a4a46
--- /dev/null
+++ b/nixpkgs/pkgs/games/empty-epsilon/0001-bundle-system-glm-in-seriousproton.patch
@@ -0,0 +1,34 @@
+From 9718cdb4bdaf7203d07789b2dc5eec4060538889 Mon Sep 17 00:00:00 2001
+From: Maximilian Bosch <maximilian@mbosch.me>
+Date: Fri, 9 Jul 2021 11:37:22 +0200
+Subject: [PATCH] bundle system-glm in seriousproton
+
+---
+ CMakeLists.txt | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index cbd68ca..730df82 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -81,6 +81,9 @@ if(NOT ${SFML_FOUND})
+     )
+ endif()
+ 
++
++find_package(glm)
++
+ add_subdirectory(src/Box2D)
+ add_subdirectory(src/lua)
+ add_subdirectory(src/GL)
+@@ -205,7 +208,7 @@ target_compile_options(seriousproton_deps
+ 
+ target_link_libraries(seriousproton_deps
+     INTERFACE 
+-        box2d lua glew ${SFML_LIBRARIES}
++        box2d lua glew ${SFML_LIBRARIES} glm
+         "$<$<BOOL:${WIN32}>:wsock32>"
+         # LTO flag must be on the linker's list as well.
+         "$<$<AND:$<BOOL:${CMAKE_COMPILER_IS_GNUCC}>,$<OR:$<CONFIG:RelWithDebInfo>,$<CONFIG:Release>>>:-flto>"
+-- 
+2.31.1
diff --git a/nixpkgs/pkgs/games/empty-epsilon/default.nix b/nixpkgs/pkgs/games/empty-epsilon/default.nix
index d444c50d976d..bee806fcdd5b 100644
--- a/nixpkgs/pkgs/games/empty-epsilon/default.nix
+++ b/nixpkgs/pkgs/games/empty-epsilon/default.nix
@@ -1,11 +1,11 @@
-{ lib, stdenv, fetchFromGitHub, cmake, sfml, libX11, glew, python3 }:
+{ lib, stdenv, fetchFromGitHub, cmake, sfml, libX11, glew, python3, fetchpatch, applyPatches, glm}:
 
 let
 
   major = "2021";
-  minor = "03";
-  patch.seriousproton = "30";
-  patch.emptyepsilon = "31";
+  minor = "06";
+  patch.seriousproton = "23";
+  patch.emptyepsilon = "23";
 
   version.seriousproton = "${major}.${minor}.${patch.seriousproton}";
   version.emptyepsilon = "${major}.${minor}.${patch.emptyepsilon}";
@@ -14,15 +14,32 @@ let
     pname = "serious-proton";
     version = version.seriousproton;
 
-    src = fetchFromGitHub {
-      owner = "daid";
-      repo = "SeriousProton";
-      rev = "EE-${version.seriousproton}";
-      sha256 = "sha256-wxb/CxJ/HKsVngeahjygZFPMMxitkHdVD0EQ3svxgIU=";
+    src = applyPatches {
+      src = fetchFromGitHub {
+        owner = "daid";
+        repo = "SeriousProton";
+        rev = "EE-${version.seriousproton}";
+        sha256 = "sha256-02cHHWKoe99257qLgxtMjeXnhi0UYajh4v87B57felM=";
+      };
+
+      patches = [
+        # Various CMake fixes for `json11`. Can be removed on the next release.
+        (fetchpatch {
+          url = "https://github.com/daid/SeriousProton/commit/adbba45fd9ae5e020e43e5d7f9326f1355391209.patch";
+          sha256 = "sha256-gMTpIGPGCREmZ/ZxvEc7RVsVUxWXbu2BPUCE3A62sCI=";
+        })
+
+        # Simplified variant of
+        # * https://github.com/daid/SeriousProton/commit/0d1ac45b738195db5e2785531db713328f547e60
+        # * https://github.com/daid/SeriousProton/commit/32509f2db91a58b9528aeb1bb505e9426b52b825
+        #
+        # To fix configure errors when building EmptyEpsilon, can be removed on the next release.
+        ./0001-bundle-system-glm-in-seriousproton.patch
+      ];
     };
 
     nativeBuildInputs = [ cmake ];
-    buildInputs = [ sfml libX11 ];
+    buildInputs = [ sfml libX11 glm ];
 
     meta = with lib; {
       description = "C++ game engine coded on top of SFML used for EmptyEpsilon";
@@ -44,11 +61,23 @@ stdenv.mkDerivation {
     owner = "daid";
     repo = "EmptyEpsilon";
     rev = "EE-${version.emptyepsilon}";
-    sha256 = "sha256-x0XJPMU0prubTb4ti/W/dH5P9abNwbjqkeUhKQpct9o=";
+    sha256 = "sha256-dc/Ic1/DULTQO6y9xSop2HxFvUh4kN57oSF/HBmbmF4=";
   };
 
+  patches = [
+    # Various CMake fixes that can be removed when upgrading to the next release.
+    (fetchpatch {
+      url = "https://github.com/daid/EmptyEpsilon/commit/ee0cd42bfe5fd20b8339e8e02eb7f69766168d57.patch";
+      sha256 = "sha256-8dXtl/izfzqbwHtjuugjH34vYP+d4AobqZhxL2GXTzw=";
+    })
+    (fetchpatch {
+      url = "https://github.com/daid/EmptyEpsilon/commit/69d93e6acdae3259755924f9d35e7e5ae949d377.patch";
+      sha256 = "sha256-30AGo4mi73GrW9GNS3vF3mTOS7J5/41LvjOzNjeFhOg=";
+    })
+  ];
+
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ serious-proton sfml glew libX11 python3 ];
+  buildInputs = [ serious-proton sfml glew libX11 python3 glm ];
 
   cmakeFlags = [
     "-DSERIOUS_PROTON_DIR=${serious-proton.src}"
diff --git a/nixpkgs/pkgs/games/factorio/versions.json b/nixpkgs/pkgs/games/factorio/versions.json
index b230d94cfa53..98c58191f164 100644
--- a/nixpkgs/pkgs/games/factorio/versions.json
+++ b/nixpkgs/pkgs/games/factorio/versions.json
@@ -2,12 +2,12 @@
   "x86_64-linux": {
     "alpha": {
       "experimental": {
-        "name": "factorio_alpha_x64-1.1.35.tar.xz",
+        "name": "factorio_alpha_x64-1.1.36.tar.xz",
         "needsAuth": true,
-        "sha256": "1svjjpyffdrmll1b3icsrikfi4v2r1z6j7iqq0v36iq0zw7vw3bk",
+        "sha256": "1x9a2lv6zbqawqlxg8bcbx04hjy0pq40macfa4sqi8w6h14wgww8",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.35/alpha/linux64",
-        "version": "1.1.35"
+        "url": "https://factorio.com/get-download/1.1.36/alpha/linux64",
+        "version": "1.1.36"
       },
       "stable": {
         "name": "factorio_alpha_x64-1.1.35.tar.xz",
@@ -38,12 +38,12 @@
     },
     "headless": {
       "experimental": {
-        "name": "factorio_headless_x64-1.1.35.tar.xz",
+        "name": "factorio_headless_x64-1.1.36.tar.xz",
         "needsAuth": false,
-        "sha256": "0xpiw89ad6cfpc576g5jpsyzwjncs3jrx01056p52wj01747fm94",
+        "sha256": "1s8g030xp5nrlmnn21frrd8n4nd7jjmb5hbpj1vhxjrk6vpijh24",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.35/headless/linux64",
-        "version": "1.1.35"
+        "url": "https://factorio.com/get-download/1.1.36/headless/linux64",
+        "version": "1.1.36"
       },
       "stable": {
         "name": "factorio_headless_x64-1.1.35.tar.xz",
diff --git a/nixpkgs/pkgs/games/fairymax/default.nix b/nixpkgs/pkgs/games/fairymax/default.nix
index d74339504514..49a91e7a64d4 100644
--- a/nixpkgs/pkgs/games/fairymax/default.nix
+++ b/nixpkgs/pkgs/games/fairymax/default.nix
@@ -23,7 +23,6 @@ stdenv.mkDerivation rec {
     cp fmax.ini "$out/share/fairymax"
   '';
   meta = {
-    inherit version;
     description = "A small chess engine supporting fairy pieces";
     longDescription = ''
        A version of micro-Max that reads the piece description
diff --git a/nixpkgs/pkgs/games/fish-fillets-ng/default.nix b/nixpkgs/pkgs/games/fish-fillets-ng/default.nix
index aa93633906fc..5ddad7fda4c9 100644
--- a/nixpkgs/pkgs/games/fish-fillets-ng/default.nix
+++ b/nixpkgs/pkgs/games/fish-fillets-ng/default.nix
@@ -32,7 +32,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    inherit version;
     description = "A puzzle game";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ raskin ];
diff --git a/nixpkgs/pkgs/games/flare/default.nix b/nixpkgs/pkgs/games/flare/default.nix
index 3ecade9b97e5..8cd70aed6143 100644
--- a/nixpkgs/pkgs/games/flare/default.nix
+++ b/nixpkgs/pkgs/games/flare/default.nix
@@ -1,14 +1,14 @@
 { lib, buildEnv, callPackage, makeWrapper, Cocoa }:
 
 buildEnv {
-  name = "flare-1.12rc1";
+  name = "flare-1.12rc2";
 
   paths = [
     (callPackage ./engine.nix { inherit Cocoa; })
     (callPackage ./game.nix {})
   ];
 
-  buildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ makeWrapper ];
   postBuild = ''
     mkdir -p $out/bin
     makeWrapper $out/games/flare $out/bin/flare --run "cd $out/share/games/flare"
diff --git a/nixpkgs/pkgs/games/flare/desktop.patch b/nixpkgs/pkgs/games/flare/desktop.patch
new file mode 100644
index 000000000000..1ef3c21d010e
--- /dev/null
+++ b/nixpkgs/pkgs/games/flare/desktop.patch
@@ -0,0 +1,15 @@
+diff --git a/distribution/flare.desktop.in b/distribution/flare.desktop.in
+index c740e2a6..eef91a89 100644
+--- a/distribution/flare.desktop.in
++++ b/distribution/flare.desktop.in
+@@ -14,8 +14,8 @@ Comment[fr]=Un jeu de rôle d'action monojoueur en 2D isométrique
+ Comment[gl]=Xogo individual de acción e rol cunha vista isométrica en dúas dimensións.
+ Comment[ru]=Изометрический ролевой боевик для одного игрока
+ Comment[uk]=Ізометричний рольовий екшн (Action/RPG) для одного гравця
+-TryExec=@FLARE_EXECUTABLE_PATH@
+-Exec=@FLARE_EXECUTABLE_PATH@
++TryExec=flare
++Exec=flare
+ Categories=Game;RolePlaying;
+ Icon=flare
+ Terminal=false
diff --git a/nixpkgs/pkgs/games/flare/engine.nix b/nixpkgs/pkgs/games/flare/engine.nix
index 9104195febc9..1f1f35a3762d 100644
--- a/nixpkgs/pkgs/games/flare/engine.nix
+++ b/nixpkgs/pkgs/games/flare/engine.nix
@@ -2,15 +2,17 @@
 
 stdenv.mkDerivation rec {
   pname = "flare-engine";
-  version = "1.12rc1";
+  version = "1.12rc2";
 
   src = fetchFromGitHub {
     owner = "flareteam";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0bl5vayf87y2jd6b1w4nn7pbrhix6dj86xv5kzqxz6b2y65lq73p";
+    sha256 = "10il9dpbcka1w5glmhv48bqwww44csmhq426lvsc7z84444gvvgq";
   };
 
+  patches = [ ./desktop.patch ];
+
   nativeBuildInputs = [ cmake ];
   buildInputs = [ SDL2 SDL2_image SDL2_mixer SDL2_ttf ]
     ++ lib.optional stdenv.isDarwin Cocoa;
diff --git a/nixpkgs/pkgs/games/flare/game.nix b/nixpkgs/pkgs/games/flare/game.nix
index 7eae29f84d18..10e27b4d39c0 100644
--- a/nixpkgs/pkgs/games/flare/game.nix
+++ b/nixpkgs/pkgs/games/flare/game.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flare-game";
-  version = "1.12rc1";
+  version = "1.12rc2";
 
   src = fetchFromGitHub {
     owner = "flareteam";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1i2fa2hds5ph8gf5b9647vrn7ycz2fl9xaaaybz8yrjmnpx27bzc";
+    sha256 = "0k9fnbaqfgmih8bd0sh3kbk6f6v74i95wrbkij48gp48pq8yqbf9";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/games/grapejuice/default.nix b/nixpkgs/pkgs/games/grapejuice/default.nix
index 1cb27f7b8c52..586d93151e2c 100644
--- a/nixpkgs/pkgs/games/grapejuice/default.nix
+++ b/nixpkgs/pkgs/games/grapejuice/default.nix
@@ -15,13 +15,13 @@
 
 python3Packages.buildPythonApplication rec  {
   pname = "grapejuice";
-  version = "3.12.5";
+  version = "3.40.14";
 
   src = fetchFromGitLab {
     owner = "BrinkerVII";
     repo = "grapejuice";
     rev = "v${version}";
-    sha256 = "1xgxyfwwghy9l17i6y40axdrpp4fgxgdr5y97flwmfivif01ifs1";
+    sha256 = "1bmkkmi1gx5kc39cjnz5bzwqaicxs0zb6bcv4iny9qccbqf3icrd";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/games/iortcw/default.nix b/nixpkgs/pkgs/games/iortcw/default.nix
index 3aa459777ea7..8af3dfe31f68 100644
--- a/nixpkgs/pkgs/games/iortcw/default.nix
+++ b/nixpkgs/pkgs/games/iortcw/default.nix
@@ -12,7 +12,7 @@ in buildEnv {
 
   pathsToLink = [ "/opt" ];
 
-  buildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ makeWrapper ];
 
   # so we can launch sp from mp game and vice versa
   postBuild = ''
diff --git a/nixpkgs/pkgs/games/mudlet/default.nix b/nixpkgs/pkgs/games/mudlet/default.nix
index b6f66b30769d..139baece4a6f 100644
--- a/nixpkgs/pkgs/games/mudlet/default.nix
+++ b/nixpkgs/pkgs/games/mudlet/default.nix
@@ -1,24 +1,24 @@
-{ fetchFromGitHub, fetchpatch, lib, stdenv, wrapQtAppsHook, git, pcre, pugixml, qtbase, libsForQt5, qtmultimedia, qttools, yajl, libzip, hunspell
-, boost, libGLU, lua, cmake,  which, }:
+{ fetchFromGitHub, lib, stdenv, wrapQtAppsHook, git, pcre, pugixml, qtbase, libsForQt5, libsecret, qtmultimedia, qttools, yajl, libzip, hunspell
+, boost, libGLU, lua, cmake,  which, pkg-config, }:
 
 let
   luaEnv = lua.withPackages(ps: with ps; [ luazip luafilesystem lrexlib-pcre luasql-sqlite3 lua-yajl luautf8 ]);
 in
 stdenv.mkDerivation rec {
   pname = "mudlet";
-  version = "4.9.1";
+  version = "4.12.0";
 
   src = fetchFromGitHub {
     owner = "Mudlet";
     repo = "Mudlet";
     rev = "Mudlet-${version}";
     fetchSubmodules = true;
-    sha256 = "0i022qcmlq4xwl2yh4xd5qdc0ag52605qmqqz6bim0h8f3dp8cx1";
+    sha256 = "023plm5mwm15xikmdh1mq3gx1n7y4a0r0kw9fvk3rvm9brm78hzp";
   };
 
-  nativeBuildInputs = [ cmake wrapQtAppsHook git qttools which ];
+  nativeBuildInputs = [ pkg-config cmake wrapQtAppsHook git qttools which ];
   buildInputs = [
-    pcre pugixml qtbase libsForQt5.qtkeychain qtmultimedia luaEnv libzip libGLU yajl boost hunspell
+    pcre pugixml qtbase libsForQt5.qtkeychain qtmultimedia luaEnv libsecret libzip libGLU yajl boost hunspell
   ];
 
   WITH_FONTS = "NO";
diff --git a/nixpkgs/pkgs/games/openrct2/default.nix b/nixpkgs/pkgs/games/openrct2/default.nix
index e210efade03a..9e79a9005dcb 100644
--- a/nixpkgs/pkgs/games/openrct2/default.nix
+++ b/nixpkgs/pkgs/games/openrct2/default.nix
@@ -5,13 +5,13 @@
 }:
 
 let
-  version = "0.3.3";
+  version = "0.3.4";
 
   openrct2-src = fetchFromGitHub {
     owner = "OpenRCT2";
     repo = "OpenRCT2";
     rev = "v${version}";
-    sha256 = "01nanpbz5ycdhkyd46fjfvj18sw729l4vk7xg12600f9rjngjk76";
+    sha256 = "051dm7bw3l8qnppk5b7xvavl29xfadqn8aa18q49qdy5mjy6qgk4";
   };
 
   objects-src = fetchFromGitHub {
@@ -29,8 +29,8 @@ let
   };
 in
 stdenv.mkDerivation {
-  inherit version;
   pname = "openrct2";
+  inherit version;
 
   src = openrct2-src;
 
@@ -58,22 +58,22 @@ stdenv.mkDerivation {
     zlib
   ];
 
-  postUnpack = ''
-    cp -r ${objects-src}         $sourceRoot/data/object
-    cp -r ${title-sequences-src} $sourceRoot/data/sequence
-  '';
-
   cmakeFlags = [
     "-DDOWNLOAD_OBJECTS=OFF"
     "-DDOWNLOAD_TITLE_SEQUENCES=OFF"
   ];
 
+  postUnpack = ''
+    cp -r ${objects-src}         $sourceRoot/data/object
+    cp -r ${title-sequences-src} $sourceRoot/data/sequence
+  '';
+
   preFixup = "ln -s $out/share/openrct2 $out/bin/data";
 
   meta = with lib; {
-    description = "An open source re-implementation of RollerCoaster Tycoon 2 (original game required)";
+    description = "Open source re-implementation of RollerCoaster Tycoon 2 (original game required)";
     homepage = "https://openrct2.io/";
-    license = licenses.gpl3;
+    license = licenses.gpl3Only;
     platforms = platforms.linux;
     maintainers = with maintainers; [ oxzi ];
   };
diff --git a/nixpkgs/pkgs/games/osu-lazer/default.nix b/nixpkgs/pkgs/games/osu-lazer/default.nix
index 4209311154de..55f9bfb75c30 100644
--- a/nixpkgs/pkgs/games/osu-lazer/default.nix
+++ b/nixpkgs/pkgs/games/osu-lazer/default.nix
@@ -16,13 +16,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "osu-lazer";
-  version = "2021.703.0";
+  version = "2021.720.0";
 
   src = fetchFromGitHub {
     owner = "ppy";
     repo = "osu";
     rev = version;
-    sha256 = "52wGjNVCh1dyPgDfKnsfPcCI1Jh1R70zRUs/jNyaBI8=";
+    sha256 = "I7UkbyH2i218d5RCq4al9Gr1C0MX339jFOeyKrKQ3b0=";
   };
 
   patches = [ ./bypass-tamper-detection.patch ];
diff --git a/nixpkgs/pkgs/games/osu-lazer/deps.nix b/nixpkgs/pkgs/games/osu-lazer/deps.nix
index f6da6d5c140c..d2c19b08d03d 100644
--- a/nixpkgs/pkgs/games/osu-lazer/deps.nix
+++ b/nixpkgs/pkgs/games/osu-lazer/deps.nix
@@ -26,8 +26,8 @@
   })
   (fetchNuGet {
     name = "Fody";
-    version = "6.5.1";
-    sha256 = "08zpyrniajjba5isjb09spggfh0af2z6x4h2zy5ilk3y5bb9vdch";
+    version = "6.5.2";
+    sha256 = "0vq97mkfk5ijinwnhpkm212y69ik6cd5x0n61ssyxmz50q1vp84f";
   })
   (fetchNuGet {
     name = "HidSharpCore";
@@ -781,13 +781,13 @@
   })
   (fetchNuGet {
     name = "ppy.LocalisationAnalyser";
-    version = "2021.614.0";
-    sha256 = "0b3b72lvjz8lfh0n5rilmf91j0phgmy1jjnw0v6l7qral72lhd4y";
+    version = "2021.716.0";
+    sha256 = "0w45af0mlh4bkjxxhk5p4kb6z0na8fmm6xz10dfzs3b4i61h5x3z";
   })
   (fetchNuGet {
     name = "ppy.osu.Framework";
-    version = "2021.702.0";
-    sha256 = "16lx73gikjl2bmndqh3vizfn1whjvvq2iwy8sll3yqwb20bg7kaa";
+    version = "2021.714.0";
+    sha256 = "175i0hcbl01xy633zvij8185nj4g7ja1rsv2lmfz8qdykqj6g9kl";
   })
   (fetchNuGet {
     name = "ppy.osu.Framework.NativeLibs";
@@ -796,8 +796,8 @@
   })
   (fetchNuGet {
     name = "ppy.osu.Game.Resources";
-    version = "2021.701.0";
-    sha256 = "0ii5ki983vxjq0iq28nzb9xqkmg8iscwj77hcnpf14cj7xiyg454";
+    version = "2021.706.0";
+    sha256 = "1yacqy8h93vph3faf4y0iwhlnlmbny3zj57cm2bh04z2gk0l17am";
   })
   (fetchNuGet {
     name = "ppy.osuTK.NS20";
@@ -816,13 +816,13 @@
   })
   (fetchNuGet {
     name = "Realm";
-    version = "10.2.1";
-    sha256 = "14pi7vz7nl8ag0bmlbyds52z5nx9wbg154qkm6jai10rm02ws86l";
+    version = "10.3.0";
+    sha256 = "12zmp43cf2kilzq1yi9x2hy1jdh51c0kbnddw5s960k1kvyx2s2v";
   })
   (fetchNuGet {
     name = "Realm.Fody";
-    version = "10.2.1";
-    sha256 = "1zv57wb7zcgyigsxqikf2yq2h7an4c3dbydl9la5xdpa76dgmxdi";
+    version = "10.3.0";
+    sha256 = "0mhjkahi2ldxcizv08i70mrpwgrvljxdjlr81x3dmwgpxxfji18d";
   })
   (fetchNuGet {
     name = "Remotion.Linq";
diff --git a/nixpkgs/pkgs/games/papermc/default.nix b/nixpkgs/pkgs/games/papermc/default.nix
index 72612394fe2a..6740b51cfd92 100644
--- a/nixpkgs/pkgs/games/papermc/default.nix
+++ b/nixpkgs/pkgs/games/papermc/default.nix
@@ -1,10 +1,10 @@
 { lib, stdenv, fetchurl, bash, jre }:
 let
-  mcVersion = "1.16.5";
-  buildNum = "771";
+  mcVersion = "1.17.1";
+  buildNum = "97";
   jar = fetchurl {
     url = "https://papermc.io/api/v1/paper/${mcVersion}/${buildNum}/download";
-    sha256 = "1lmlfhigbzbkgzfq6knglka0ccf4i32ch25gkny0c5fllmsnm08l";
+    sha256 = "sha256:0d7q6v5w872phcgkha7j5sxniqq9wqbh1jxdvyvy6d2jl74g1gzw";
   };
 in stdenv.mkDerivation {
   pname = "papermc";
diff --git a/nixpkgs/pkgs/games/powermanga/default.nix b/nixpkgs/pkgs/games/powermanga/default.nix
new file mode 100644
index 000000000000..ce3f5b9bf557
--- /dev/null
+++ b/nixpkgs/pkgs/games/powermanga/default.nix
@@ -0,0 +1,58 @@
+{ lib
+, stdenv
+, fetchurl
+, autoconf
+, automake
+, SDL
+, SDL_mixer
+, libpng
+}:
+
+stdenv.mkDerivation rec {
+  pname = "powermanga";
+  version = "0.93.1";
+
+  src = fetchurl {
+    url = "https://linux.tlk.fr/games/Powermanga/download/powermanga-${version}.tgz";
+    sha256 = "sha256-2nU/zoOQWm2z/Y6mXHDFfWYjYshsQp1saVRBcUT5Q+g=";
+  };
+
+  nativeBuildInputs = [
+    autoconf
+    automake
+  ];
+
+  buildInputs = [
+    SDL
+    SDL_mixer
+    libpng
+  ];
+
+  preConfigure = ''
+    ./bootstrap
+  '';
+
+  installFlags = [
+    # Default is $(out)/games
+    "gamesdir=$(out)/bin"
+    # We set the scoredir to $TMPDIR.
+    # Otherwise it will try to write in /var/games at install time
+    "scoredir=$(TMPDIR)"
+  ];
+
+  meta = with lib; {
+    homepage = "https://linux.tlk.fr/games/Powermanga/";
+    downloadPage = "https://linux.tlk.fr/games/Powermanga/download/";
+    description = "An arcade 2D shoot-em-up game";
+    longDescription = ''
+      Powermanga is an arcade 2D shoot-em-up game with 41 levels and more than
+      200 sprites. It runs in 320x200 or 640x400 pixels, with Window mode or
+      full screen and support for 8, 15, 16, 24, and 32 bpp. As you go through
+      the levels, you will destroy enemy spaceships and bosses, collect gems to
+      power up your ship and get special powers, helpers and weapons.
+    '';
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ fgaz ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/games/simutrans/default.nix b/nixpkgs/pkgs/games/simutrans/default.nix
index fc2654fd8e9b..60b2bc5faf77 100644
--- a/nixpkgs/pkgs/games/simutrans/default.nix
+++ b/nixpkgs/pkgs/games/simutrans/default.nix
@@ -11,28 +11,28 @@ let
       else map (name: pakSpec.${name}) (splitString " " paksets)
   );
 
-  ver1 = "120";
-  ver2 = "4";
-  ver3 = "1";
-  version =   "${ver1}.${ver2}.${ver3}";
-  ver_dash =  "${ver1}-${ver2}-${ver3}";
+  ver1 = "121";
+  ver2 = "0";
+  ver3 = "";
+  version  = "${ver1}.${ver2}${lib.optionalString (ver3 != "") ".${ver3}"}";
+  ver_dash = "${ver1}-${ver2}${lib.optionalString (ver3 != "") "-${ver3}"}";
 
   binary_src = fetchurl {
     url = "mirror://sourceforge/simutrans/simutrans/${ver_dash}/simutrans-src-${ver_dash}.zip";
-    sha256 = "0yw7vjvmczp022mgk35swwhpbiszpz91mwsgicxglwivgc30vvic";
+    sha256 = "1f463r6kr5ig0zd3mncc74k93xbjywsq3d06j5r17831jyc9bzb9";
   };
 
 
-  # As of 2015/03, many packsets still didn't have a release for version 120.
+  # As of 2021/07, many of these paksets have not been updated for years, so are on old versions.
   pakSpec = lib.mapAttrs
     (pakName: attrs: mkPak (attrs // {inherit pakName;}))
   {
     pak64 = {
-      srcPath = "121-0/simupak64-121-0";
+      srcPath = "${ver_dash}/simupak64-${ver_dash}";
       sha256 = "1k335kh8dhm1hdn5iwn3sdgnrlpk0rqxmmgqgqcwsi09cmw45m5c";
     };
     "pak64.japan" = {
-      # No release for 120.2 yet!
+      # No release for 121.0 yet!
       srcPath = "120-0/simupak64.japan-120-0-1";
       sha256 = "14swy3h4ij74bgaw7scyvmivfb5fmp21nixmhlpk3mav3wr3167i";
     };
diff --git a/nixpkgs/pkgs/games/steam/fhsenv.nix b/nixpkgs/pkgs/games/steam/fhsenv.nix
index a0557eed9b12..b2c303caa54f 100644
--- a/nixpkgs/pkgs/games/steam/fhsenv.nix
+++ b/nixpkgs/pkgs/games/steam/fhsenv.nix
@@ -150,6 +150,7 @@ in buildFHSUserEnv rec {
 
     # dependencies for mesa drivers, needed inside pressure-vessel
     mesa.drivers
+    mesa.llvmPackages.llvm.lib
     vulkan-loader
     expat
     wayland
@@ -157,7 +158,6 @@ in buildFHSUserEnv rec {
     xorg.libXdamage
     xorg.libxshmfence
     xorg.libXxf86vm
-    llvm_11.lib
     libelf
   ] ++ (if (!nativeOnly) then [
     (steamPackages.steam-runtime-wrapped.override {
diff --git a/nixpkgs/pkgs/games/steam/runtime.nix b/nixpkgs/pkgs/games/steam/runtime.nix
index ab2c19249aa2..a986e1baa2c3 100644
--- a/nixpkgs/pkgs/games/steam/runtime.nix
+++ b/nixpkgs/pkgs/games/steam/runtime.nix
@@ -8,11 +8,11 @@ stdenv.mkDerivation rec {
 
   pname = "steam-runtime";
   # from https://repo.steampowered.com/steamrt-images-scout/snapshots/
-  version = "0.20210527.0";
+  version = "0.20210630.0";
 
   src = fetchurl {
     url = "https://repo.steampowered.com/steamrt-images-scout/snapshots/${version}/steam-runtime.tar.xz";
-    sha256 = "1880d1byn265w0vy5p98d8w8virnbywj707ydybj7rixhid2gzdc";
+    sha256 = "sha256-vwSgk3hEaI/RO9uvehAx3+ZBynpqjwGDzuyeyGCnu18=";
     name = "scout-runtime-${version}.tar.gz";
   };
 
diff --git a/nixpkgs/pkgs/games/tecnoballz/default.nix b/nixpkgs/pkgs/games/tecnoballz/default.nix
new file mode 100644
index 000000000000..d13468b78e00
--- /dev/null
+++ b/nixpkgs/pkgs/games/tecnoballz/default.nix
@@ -0,0 +1,68 @@
+{ lib
+, stdenv
+, fetchurl
+, autoconf
+, automake
+, SDL
+, SDL_mixer
+, SDL_image
+, libmikmod
+, tinyxml
+}:
+
+stdenv.mkDerivation rec {
+  pname = "tecnoballz";
+  version = "0.93.1";
+
+  src = fetchurl {
+    url = "https://linux.tlk.fr/games/TecnoballZ/download/tecnoballz-${version}.tgz";
+    sha256 = "sha256-WRW76e+/eXE/KwuyOjzTPFQnKwNznbIrUrz14fnvgug=";
+  };
+
+  nativeBuildInputs = [
+    autoconf
+    automake
+  ];
+
+  buildInputs = [
+    SDL
+    SDL_mixer
+    SDL_image
+    libmikmod
+    tinyxml
+  ];
+
+  # Newer compilers introduced warnings
+  postPatch = ''
+    substituteInPlace configure.ac \
+      --replace "-Werror" ""
+  '';
+
+  preConfigure = ''
+    ./bootstrap
+  '';
+
+  installFlags = [
+    # Default is $(out)/games
+    "gamesdir=$(out)/bin"
+    # We set the scoredir to $TMPDIR at install time.
+    # Otherwise it will try to write in /var/games at install time
+    "scoredir=$(TMPDIR)"
+  ];
+
+  meta = with lib; {
+    homepage = "https://linux.tlk.fr/games/TecnoballZ/";
+    downloadPage = "https://linux.tlk.fr/games/TecnoballZ/download/";
+    description = "A brick breaker game with a sophisticated system of weapons and bonuses";
+    longDescription = ''
+      A exciting Brick Breaker with 50 levels of game and 11 special levels,
+      distributed on the 2 modes of game to give the player a sophisticated
+      system of attack weapons with an enormous power of fire that can be build
+      by gaining bonuses. Numerous decors, musics and sounds complete this great
+      game. This game was ported from the Commodore Amiga.
+    '';
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ fgaz ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/games/the-powder-toy/default.nix b/nixpkgs/pkgs/games/the-powder-toy/default.nix
index 703578c2d4e8..ba232097af64 100644
--- a/nixpkgs/pkgs/games/the-powder-toy/default.nix
+++ b/nixpkgs/pkgs/games/the-powder-toy/default.nix
@@ -1,28 +1,27 @@
-{ lib, stdenv, fetchFromGitHub, scons, pkg-config, SDL2, lua, fftwFloat,
-  zlib, bzip2, curl, darwin }:
+{ lib, stdenv, fetchFromGitHub, meson, luajit, ninja, pkg-config
+, python3, SDL2, lua, fftwFloat, zlib, bzip2, curl, darwin }:
 
 stdenv.mkDerivation rec {
   pname = "the-powder-toy";
-  version = "95.0";
+  version = "96.1.349";
 
   src = fetchFromGitHub {
     owner = "The-Powder-Toy";
     repo = "The-Powder-Toy";
     rev = "v${version}";
-    sha256 = "18rp2g1mj0gklra06wm9dm57h73hmm301npndh0y8ap192i5s8sa";
+    sha256 = "sha256-MSN81kPaH8cWZO+QEOlMUQQghs1kn8CpsKA5SUC/RX8=";
   };
 
-  nativeBuildInputs = [ scons pkg-config ];
+  nativeBuildInputs = [ meson ninja pkg-config python3 ];
 
-  propagatedBuildInputs = lib.optionals stdenv.isDarwin
-    [ darwin.apple_sdk.frameworks.Cocoa ];
-
-  buildInputs = [ SDL2 lua fftwFloat zlib bzip2 curl ];
+  buildInputs = [ luajit SDL2 lua fftwFloat zlib bzip2 curl ];
 
   installPhase = ''
-    install -Dm 755 build/powder* "$out/bin/powder"
+    install -Dm 755 powder $out/bin/powder
   '';
 
+  propagatedBuildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Cocoa ];
+
   enableParallelBuilding = true;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/games/uchess/default.nix b/nixpkgs/pkgs/games/uchess/default.nix
index bc2524466ccb..cafd7cf57696 100644
--- a/nixpkgs/pkgs/games/uchess/default.nix
+++ b/nixpkgs/pkgs/games/uchess/default.nix
@@ -18,7 +18,7 @@ buildGoModule rec {
   # package does not contain any tests as of v0.2.1
   doCheck = false;
 
-  buildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ makeWrapper ];
   postInstall = ''
     wrapProgram $out/bin/uchess --suffix PATH : ${stockfish}/bin
   '';
diff --git a/nixpkgs/pkgs/games/unciv/default.nix b/nixpkgs/pkgs/games/unciv/default.nix
index 6d9deb022e7c..307138c03aaa 100644
--- a/nixpkgs/pkgs/games/unciv/default.nix
+++ b/nixpkgs/pkgs/games/unciv/default.nix
@@ -25,11 +25,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "unciv";
-  version = "3.13.12-patch1";
+  version = "3.15.9";
 
   src = fetchurl {
     url = "https://github.com/yairm210/Unciv/releases/download/${version}/Unciv.jar";
-    sha256 = "sha256-SgDfa3henwUb+oKybFJhvo1GkmC24wWz3U78etk+Dsk=";
+    sha256 = "sha256-ONp7M6nMlVjxNnsIveDpqV7/WahydphP16DFDrcjY4E=";
   };
 
   dontUnpack = true;
diff --git a/nixpkgs/pkgs/games/xmoto/default.nix b/nixpkgs/pkgs/games/xmoto/default.nix
index afeded792f2e..246e1afc7444 100644
--- a/nixpkgs/pkgs/games/xmoto/default.nix
+++ b/nixpkgs/pkgs/games/xmoto/default.nix
@@ -1,34 +1,65 @@
-{ lib, stdenv, fetchurl, chipmunk, sqlite, curl, zlib, bzip2, libjpeg
-, libpng, freeglut, libGLU, libGL, SDL, SDL_mixer, SDL_image, SDL_net
-, SDL_ttf, lua5, ode, libxdg_basedir, libxml2 }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, gettext, makeWrapper, bzip2
+, curl, libjpeg, libxml2, xz, lua, ode, libGL, libpng, SDL, SDL_mixer, SDL_net
+, SDL_ttf, sqlite, libxdg_basedir, zlib }:
 
 stdenv.mkDerivation rec {
   pname = "xmoto";
-  version = "0.5.11";
+  version = "0.6.1";
 
-  src = fetchurl {
-    url = "https://download.tuxfamily.org/xmoto/xmoto/${version}/xmoto-${version}-src.tar.gz";
-    sha256 = "1ci6r8zd0l7z28cy92ddf9dmqbdqwinz2y1cny34c61b57wsd155";
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = version;
+    sha256 = "00f5ha79lfa2iiaz66wl0hl5dapa1l15qdr7m7knzi0ll7j6z66n";
   };
 
-  buildInputs = [
-    chipmunk sqlite curl zlib bzip2 libjpeg libpng
-    freeglut libGLU libGL SDL SDL_mixer SDL_image SDL_net SDL_ttf
-    lua5 ode libxdg_basedir libxml2
+  patches = [
+    # Fix build with Nix
+    (fetchpatch {
+      url = "https://github.com/xmoto/xmoto/commit/536dcc7ec77a4c4c454b86220e85b1cb3cd1c7f7.patch";
+      sha256 = "0h9lld668jrbmrqva89zqwp63jiagjj86prkxzx6372p3kk9y7g7";
+    })
   ];
 
-  CXXFLAGS = [
-    "-fpermissive"
-    # Build using the old C++ ABI to fix issue with missing text; the issue
-    # should be fixed in the next stable release (if that ever does happen)
-    "-D_GLIBCXX_USE_CXX11_ABI=0"
+  nativeBuildInputs = [
+    cmake
+    gettext
+    makeWrapper
   ];
 
+  buildInputs = [
+    bzip2
+    curl
+    libjpeg
+    libxml2
+    xz
+    lua
+    ode
+    libGL
+    libpng
+    SDL
+    SDL_mixer
+    SDL_net
+    SDL_ttf
+    sqlite
+    libxdg_basedir
+    zlib
+  ];
+
+  preFixup = ''
+    wrapProgram "$out/bin/xmoto" \
+      --prefix XDG_DATA_DIRS : "$out/share/"
+  '';
+
   meta = with lib; {
-    description = "Obstacled race game";
+    description = "A challenging 2D motocross platform game, where physics play an important role";
+    longDescription = ''
+      X-Moto is a challenging 2D motocross platform game, where physics plays an all important role in the gameplay.
+      You need to control your bike to its limits, if you want to have a chance to finish the most difficult challenges.
+    '';
     homepage = "http://xmoto.tuxfamily.org";
     maintainers = with maintainers; [ raskin pSub ];
-    platforms = platforms.linux;
-    license = licenses.gpl2;
+    platforms = platforms.all;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/nixpkgs/pkgs/games/xsok/default.nix b/nixpkgs/pkgs/games/xsok/default.nix
index ddc43518de64..bb749b57d01e 100644
--- a/nixpkgs/pkgs/games/xsok/default.nix
+++ b/nixpkgs/pkgs/games/xsok/default.nix
@@ -37,7 +37,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     description = "A generic Sokoban game for X11";
     license = lib.licenses.gpl2Plus;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/games/zandronum/sqlite.nix b/nixpkgs/pkgs/games/zandronum/sqlite.nix
index c9baefcf0af6..e38dedbb7f73 100644
--- a/nixpkgs/pkgs/games/zandronum/sqlite.nix
+++ b/nixpkgs/pkgs/games/zandronum/sqlite.nix
@@ -9,8 +9,6 @@ stdenv.mkDerivation {
     sha256 = "0p5cx7nbjxk7glcm277ypi5w4gv144qazw79ql47svlpccj62mrp";
   };
 
-  phases = [ "unpackPhase" "buildPhase" ];
-
   buildPhase = ''
     mkdir -p $out
     cp sqlite3.c $out/
diff --git a/nixpkgs/pkgs/misc/acpilight/default.nix b/nixpkgs/pkgs/misc/acpilight/default.nix
index b5a385ab4076..d6fead938a45 100644
--- a/nixpkgs/pkgs/misc/acpilight/default.nix
+++ b/nixpkgs/pkgs/misc/acpilight/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   };
 
   pyenv = python3.withPackages (pythonPackages: with pythonPackages; [
-    ConfigArgParse
+    configargparse
   ]);
 
   postConfigure = ''
diff --git a/nixpkgs/pkgs/misc/apulse/pressureaudio.nix b/nixpkgs/pkgs/misc/apulse/pressureaudio.nix
index c69fcbc60150..def25474147b 100644
--- a/nixpkgs/pkgs/misc/apulse/pressureaudio.nix
+++ b/nixpkgs/pkgs/misc/apulse/pressureaudio.nix
@@ -1,15 +1,15 @@
 { stdenv, apulse, libpulseaudio, pkg-config, intltool, autoreconfHook }:
 
 stdenv.mkDerivation {
-  name = "libpressureaudio-${apulse.version}";
+  pname = "libpressureaudio";
+  version = apulse.version;
 
   src = libpulseaudio.src;
 
   nativeBuildInputs = [ pkg-config intltool autoreconfHook ];
 
   dontConfigure = true;
-
-  buildPhase = ":";
+  dontBuild = true;
 
   installPhase = ''
     echo "Copying libraries from apulse."
diff --git a/nixpkgs/pkgs/misc/drivers/hplip/default.nix b/nixpkgs/pkgs/misc/drivers/hplip/default.nix
index 98a67a75f0bc..f33ca5024383 100644
--- a/nixpkgs/pkgs/misc/drivers/hplip/default.nix
+++ b/nixpkgs/pkgs/misc/drivers/hplip/default.nix
@@ -101,7 +101,12 @@ python3Packages.buildPythonApplication {
     ./hplip-3.20.11-nixos-cups-ppd-search-path.patch
   ];
 
-  prePatch = ''
+  postPatch = ''
+    # https://github.com/NixOS/nixpkgs/issues/44230
+    substituteInPlace createPPD.sh \
+      --replace ppdc "${cups}/bin/ppdc" \
+      --replace "gzip -c" "gzip -cn"
+
     # HPLIP hardcodes absolute paths everywhere. Nuke from orbit.
     find . -type f -exec sed -i \
       -e s,/etc/hp,$out/etc/hp,g \
@@ -118,35 +123,40 @@ python3Packages.buildPythonApplication {
       {} +
   '';
 
-  preConfigure = ''
-    export configureFlags="$configureFlags
-      --with-hpppddir=$out/share/cups/model/HP
-      --with-cupsfilterdir=$out/lib/cups/filter
-      --with-cupsbackenddir=$out/lib/cups/backend
-      --with-icondir=$out/share/applications
-      --with-systraydir=$out/xdg/autostart
-      --with-mimedir=$out/etc/cups
-      --enable-policykit
-      ${lib.optionalString withStaticPPDInstall "--enable-cups-ppd-install"}
-      --disable-qt4
-      ${lib.optionalString withQt5 "--enable-qt5"}
-    "
-
-    export makeFlags="
-      halpredir=$out/share/hal/fdi/preprobe/10osvendor
-      rulesdir=$out/etc/udev/rules.d
-      policykit_dir=$out/share/polkit-1/actions
-      policykit_dbus_etcdir=$out/etc/dbus-1/system.d
-      policykit_dbus_sharedir=$out/share/dbus-1/system-services
-      hplip_confdir=$out/etc/hp
-      hplip_statedir=$out/var/lib/hp
-    "
-
-    # Prevent 'ppdc: Unable to find include file "<font.defs>"' which prevent
-    # generation of '*.ppd' files.
-    # This seems to be a 'ppdc' issue when the tool is run in a hermetic sandbox.
-    # Could not find how to fix the problem in 'ppdc' so this is a workaround.
-    export CUPS_DATADIR="${cups}/share/cups"
+  configureFlags = let out = placeholder "out"; in [
+    "--with-hpppddir=${out}/share/cups/model/HP"
+    "--with-cupsfilterdir=${out}/lib/cups/filter"
+    "--with-cupsbackenddir=${out}/lib/cups/backend"
+    "--with-icondir=${out}/share/applications"
+    "--with-systraydir=${out}/xdg/autostart"
+    "--with-mimedir=${out}/etc/cups"
+    "--enable-policykit"
+    "--disable-qt4"
+  ]
+    ++ lib.optional withStaticPPDInstall "--enable-cups-ppd-install"
+    ++ lib.optional withQt5 "--enable-qt5"
+    ;
+
+  # Prevent 'ppdc: Unable to find include file "<font.defs>"' which prevent
+  # generation of '*.ppd' files.
+  # This seems to be a 'ppdc' issue when the tool is run in a hermetic sandbox.
+  # Could not find how to fix the problem in 'ppdc' so this is a workaround.
+  CUPS_DATADIR = "${cups}/share/cups";
+
+  makeFlags = let out = placeholder "out"; in [
+    "halpredir=${out}/share/hal/fdi/preprobe/10osvendor"
+    "rulesdir=${out}/etc/udev/rules.d"
+    "policykit_dir=${out}/share/polkit-1/actions"
+    "policykit_dbus_etcdir=${out}/etc/dbus-1/system.d"
+    "policykit_dbus_sharedir=${out}/share/dbus-1/system-services"
+    "hplip_confdir=${out}/etc/hp"
+    "hplip_statedir=${out}/var/lib/hp"
+  ];
+
+  postConfigure = ''
+    # don't save timestamp, in order to improve reproducibility
+    substituteInPlace Makefile \
+      --replace "GZIP_ENV = --best" "GZIP_ENV = --best -n"
   '';
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/misc/emulators/fs-uae-launcher/default.nix b/nixpkgs/pkgs/misc/emulators/fs-uae-launcher/default.nix
new file mode 100644
index 000000000000..9416e92e2b02
--- /dev/null
+++ b/nixpkgs/pkgs/misc/emulators/fs-uae-launcher/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, lib, fetchurl, makeWrapper, python3, gettext
+, pyqt5, setuptools, requests
+}:
+
+stdenv.mkDerivation rec {
+  pname = "fs-uae-launcher";
+  version = "3.0.5";
+
+  src = fetchurl {
+    url = "https://fs-uae.net/stable/${version}/${pname}-${version}.tar.gz";
+    sha256 = "1dknra4ngz7bpppwqghmza1q68pn1yaw54p9ba0f42zwp427ly97";
+  };
+
+  makeFlags = [ "prefix=$(out)" ];
+  nativeBuildInputs = [ makeWrapper python3 gettext ];
+  buildInputs = [ pyqt5 setuptools requests ];
+  postInstall = ''
+    wrapProgram $out/bin/fs-uae-launcher --set PYTHONPATH "$PYTHONPATH"
+  '';
+
+  meta = {
+    description = "Graphical front-end for the FS-UAE emulator";
+    license = lib.licenses.gpl2Plus;
+    homepage = "https://fs-uae.net";
+    maintainers = with lib; [ maintainers.sander ];
+    platforms = [ "i686-linux" "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/misc/emulators/punes/default.nix b/nixpkgs/pkgs/misc/emulators/punes/default.nix
index c0bf7a223a3b..d3ad2f681997 100644
--- a/nixpkgs/pkgs/misc/emulators/punes/default.nix
+++ b/nixpkgs/pkgs/misc/emulators/punes/default.nix
@@ -12,18 +12,20 @@
 , ffmpeg
 , libGLU
 , alsa-lib
+, libX11
+, libXrandr
 , sndio
 }:
 
 mkDerivation rec {
   pname = "punes";
-  version = "unstable-2021-06-05";
+  version = "unstable-2021-07-19";
 
   src = fetchFromGitHub {
     owner = "punesemu";
     repo = "puNES";
-    rev = "07fd123f62b2d075894a0cc966124db7b427b791";
-    sha256 = "1wxff7b397ayd2s2v14w6a0zfgklc7y0kv3mkz1gg5x47mnll24l";
+    rev = "15ab85dabb220889419df0c249c06f3db2b09dc0";
+    sha256 = "1w0c5lfdl9ha4sxxva6hcpcaa444px6x25471q37l69n71rmjpy8";
   };
 
   postPatch = ''
@@ -34,7 +36,7 @@ mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook cmake pkg-config qttools ];
 
   buildInputs = [ ffmpeg qtbase qtsvg libGLU ]
-    ++ lib.optionals stdenv.hostPlatform.isLinux [ alsa-lib ]
+    ++ lib.optionals stdenv.hostPlatform.isLinux [ alsa-lib libX11 libXrandr ]
     ++ lib.optionals stdenv.hostPlatform.isBSD [ sndio ];
 
   dontUseCmakeConfigure = true;
diff --git a/nixpkgs/pkgs/misc/emulators/ryujinx/default.nix b/nixpkgs/pkgs/misc/emulators/ryujinx/default.nix
index 91f4ef519346..856a56f5f5eb 100644
--- a/nixpkgs/pkgs/misc/emulators/ryujinx/default.nix
+++ b/nixpkgs/pkgs/misc/emulators/ryujinx/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub, fetchurl, makeWrapper, makeDesktopItem, linkFarmFromDrvs
 , dotnet-sdk_5, dotnetPackages, dotnetCorePackages, cacert
 , libX11, libgdiplus, ffmpeg
-, SDL2_mixer, openal, libsoundio, sndio
+, SDL2_mixer, openal, libsoundio, sndio, pulseaudio
 , gtk3, gobject-introspection, gdk-pixbuf, wrapGAppsHook
 }:
 
@@ -15,16 +15,17 @@ let
     openal
     libsoundio
     sndio
+    pulseaudio
   ];
 in stdenv.mkDerivation rec {
   pname = "ryujinx";
-  version = "1.0.6893"; # Versioning is based off of the official appveyor builds: https://ci.appveyor.com/project/gdkchan/ryujinx
+  version = "1.0.6954"; # Versioning is based off of the official appveyor builds: https://ci.appveyor.com/project/gdkchan/ryujinx
 
   src = fetchFromGitHub {
     owner = "Ryujinx";
     repo = "Ryujinx";
-    rev = "fb65f392d1c4b0e01f22b6ddebcc8317ba9769c3";
-    sha256 = "0ncrcbwyirz21j81vc6yvcjc2fn8nc5ilrfczclq6f8cpy09c3y8";
+    rev = "31cbd09a75a9d5f4814c3907a060e0961eb2bb15";
+    sha256 = "00qql0wmlzs722s0igip3v0yjlqhc31jcr7nghwibcqrmx031azk";
   };
 
   nativeBuildInputs = [ dotnet-sdk_5 dotnetPackages.Nuget cacert makeWrapper wrapGAppsHook gobject-introspection gdk-pixbuf ];
@@ -79,9 +80,13 @@ in stdenv.mkDerivation rec {
       --output $out/lib/ryujinx
     shopt -s extglob
 
+    # TODO: fix this hack https://github.com/Ryujinx/Ryujinx/issues/2349
+    mkdir -p $out/lib/sndio-6
+    ln -s ${sndio}/lib/libsndio.so $out/lib/sndio-6/libsndio.so.6
+
     makeWrapper $out/lib/ryujinx/Ryujinx $out/bin/Ryujinx \
       --set DOTNET_ROOT "${dotnetCorePackages.net_5_0}" \
-      --suffix LD_LIBRARY_PATH : "${lib.makeLibraryPath runtimeDeps}" \
+      --suffix LD_LIBRARY_PATH : "${builtins.concatStringsSep ":" [ (lib.makeLibraryPath runtimeDeps) "$out/lib/sndio-6" ]}" \
       ''${gappsWrapperArgs[@]}
 
     for i in 16 32 48 64 96 128 256 512 1024; do
diff --git a/nixpkgs/pkgs/misc/emulators/ryujinx/deps.nix b/nixpkgs/pkgs/misc/emulators/ryujinx/deps.nix
index 23eacb690a0e..be9281949855 100644
--- a/nixpkgs/pkgs/misc/emulators/ryujinx/deps.nix
+++ b/nixpkgs/pkgs/misc/emulators/ryujinx/deps.nix
@@ -10,6 +10,11 @@
     sha256 = "1rjdxd4fq5z3n51qx8vrcaf4i277ccc62jxk88xzbsxapdmjjdf9";
   })
   (fetchNuGet {
+    name = "CommandLineParser";
+    version = "2.8.0";
+    sha256 = "1m32xyilv2b7k55jy8ddg08c20glbcj2yi545kxs9hj2ahanhrbb";
+  })
+  (fetchNuGet {
     name = "Concentus";
     version = "1.1.7";
     sha256 = "0y5z444wrbhlmsqpy2sxmajl1fbf74843lvgj3y6vz260dn2q0l0";
@@ -260,11 +265,6 @@
     sha256 = "0dkl9j0yd65s5ds9xj5z6yb7yca7wlycqz25m8dng20d13sqr1zp";
   })
   (fetchNuGet {
-    name = "ppy.SDL2-CS";
-    version = "1.0.225-alpha";
-    sha256 = "1x8hvk9kikwi7wrvwxdxk3pkbs491iss2mvqgiw844zld5izihqc";
-  })
-  (fetchNuGet {
     name = "runtime.any.System.Collections";
     version = "4.3.0";
     sha256 = "0bv5qgm6vr47ynxqbnkc7i797fdi8gbjjxii173syrx14nmrkwg0";
@@ -515,6 +515,11 @@
     sha256 = "0g1l3lgs0ffxp64ka81v6q1cgsdirl1qlf73255v29r3v337074m";
   })
   (fetchNuGet {
+    name = "Ryujinx.SDL2-CS";
+    version = "2.0.15-build11";
+    sha256 = "0s4h69l2b508l5wxp4v4ip8k83k78p3963xxv8bfamin9517przi";
+  })
+  (fetchNuGet {
     name = "SharpZipLib";
     version = "1.3.0";
     sha256 = "1pizj82wisch28nfdaszwqm9bz19lnl0s5mq8c0zybm2vhnrhvk4";
diff --git a/nixpkgs/pkgs/misc/emulators/wine/sources.nix b/nixpkgs/pkgs/misc/emulators/wine/sources.nix
index 72a5240dfc6e..f2e61d18ee2a 100644
--- a/nixpkgs/pkgs/misc/emulators/wine/sources.nix
+++ b/nixpkgs/pkgs/misc/emulators/wine/sources.nix
@@ -44,9 +44,9 @@ in rec {
 
   unstable = fetchurl rec {
     # NOTE: Don't forget to change the SHA256 for staging as well.
-    version = "6.11";
+    version = "6.12";
     url = "https://dl.winehq.org/wine/source/6.x/wine-${version}.tar.xz";
-    sha256 = "02v725qjsibiv6ad6hxsc6199dvlmnp7983286a4k8rygqnvqln9";
+    sha256 = "1a6fnxb4rci310m0wjcs9cnmpj88775q70qk7xi3k06z1qqbx4pv";
     inherit (stable) gecko32 gecko64;
 
     ## see http://wiki.winehq.org/Mono
@@ -65,10 +65,11 @@ in rec {
   staging = fetchFromGitHub rec {
     # https://github.com/wine-staging/wine-staging/releases
     inherit (unstable) version;
-    sha256 = "0gbci8fjvl1bdz7fj4bh25mqrgi1i04q5na2ckv9hj9nh9x7crbm";
+    sha256 = "1mg5yrw5jk2nbdp9mcqc3iar01lr76lmm1py95wify9p2bqzavpp";
     owner = "wine-staging";
     repo = "wine-staging";
-    rev = "v${version}";
+    # Replace back on next release: rev = "v${version}";
+    rev = "v6.12.1";
 
     disabledPatchsets = [ ];
   };
diff --git a/nixpkgs/pkgs/misc/emulators/yuzu/base.nix b/nixpkgs/pkgs/misc/emulators/yuzu/base.nix
index 1160a5fc1e7f..4bee17c6954e 100644
--- a/nixpkgs/pkgs/misc/emulators/yuzu/base.nix
+++ b/nixpkgs/pkgs/misc/emulators/yuzu/base.nix
@@ -1,5 +1,5 @@
 { pname, version, src, branchName
-, stdenv, lib, fetchFromGitHub, fetchpatch, wrapQtAppsHook
+, stdenv, lib, wrapQtAppsHook
 , cmake, pkg-config
 , libpulseaudio, libjack2, alsa-lib, sndio
 , vulkan-loader, vulkan-headers
@@ -9,7 +9,7 @@
 , glslang
 , boost173
 , catch2
-, fmt
+, fmt_8
 , SDL2
 , udev
 , libusb1
@@ -29,20 +29,13 @@ stdenv.mkDerivation rec {
     glslang
     boost173
     catch2
-    fmt
+    fmt_8
     SDL2
     udev
     libusb1
     ffmpeg
   ];
 
-  patches = [
-    (fetchpatch { # Without this, yuzu tries to read version info from .git which is not present.
-      url = "https://raw.githubusercontent.com/pineappleEA/Pineapple-Linux/28cbf656e3188b80eda0031d0b2713708ecd630f/inject-git-info.patch";
-      sha256 = "1zxh5fwdr7jl0aagb3yfwd0995vyyk54f0f748f7c4rqvg6867fd";
-    })
-  ];
-
   cmakeFlags = [
     "-DYUZU_USE_BUNDLED_QT=OFF"
     "-DYUZU_USE_BUNDLED_SDL2=OFF"
@@ -50,19 +43,20 @@ stdenv.mkDerivation rec {
     "-DENABLE_QT_TRANSLATION=ON"
     "-DYUZU_USE_QT_WEB_ENGINE=ON"
     "-DUSE_DISCORD_PRESENCE=ON"
-    # Shows errors about not being able to find .git at runtime if you do not set these
-    "-DGIT_BRANCH=\"\""
-    "-DGIT_DESC=\"\""
   ];
 
+  # This changes `ir/opt` to `ir/var/empty` in `externals/dynarmic/src/dynarmic/CMakeLists.txt`
+  # making the build fail, as that path does not exist
+  dontFixCmake = true;
+
   preConfigure = ''
     # Trick the configure system. This prevents a check for submodule directories.
     rm -f .gitmodules
 
     # see https://github.com/NixOS/nixpkgs/issues/114044, setting this through cmakeFlags does not work.
     cmakeFlagsArray+=(
-      "-DTITLE_BAR_FORMAT_IDLE=\"yuzu ${branchName} ${version}\""
-      "-DTITLE_BAR_FORMAT_RUNNING=\"yuzu ${branchName} ${version} \| \{3\}\""
+      "-DTITLE_BAR_FORMAT_IDLE=yuzu ${branchName} ${version}"
+      "-DTITLE_BAR_FORMAT_RUNNING=yuzu ${branchName} ${version} | {3}"
     )
   '';
 
@@ -87,5 +81,6 @@ stdenv.mkDerivation rec {
     ];
     maintainers = with maintainers; [ ivar joshuafern ];
     platforms = platforms.linux;
+    broken = stdenv.isAarch64; # Currently aarch64 is not supported.
   };
 }
diff --git a/nixpkgs/pkgs/misc/emulators/yuzu/default.nix b/nixpkgs/pkgs/misc/emulators/yuzu/default.nix
index 806ec806e4d6..3ecf17f02331 100644
--- a/nixpkgs/pkgs/misc/emulators/yuzu/default.nix
+++ b/nixpkgs/pkgs/misc/emulators/yuzu/default.nix
@@ -4,25 +4,25 @@ let
 in {
   mainline = libsForQt5.callPackage ./base.nix rec {
     pname = "yuzu-mainline";
-    version = "633";
+    version = "679";
     branchName = branch;
     src = fetchFromGitHub {
       owner = "yuzu-emu";
       repo = "yuzu-mainline";
       rev = "mainline-0-${version}";
-      sha256 = "1zq20dd6x3kk179ls7y3mc5rj9vr73qs12bdj52bl3kscphxybf1";
+      sha256 = "1wkxkgfff5nn30mn2pqcrlsr7fja6bgaallsx1ainlcbamfyspcz";
       fetchSubmodules = true;
     };
   };
   early-access = libsForQt5.callPackage ./base.nix rec {
     pname = "yuzu-ea";
-    version = "1704";
+    version = "1855";
     branchName = branch;
     src = fetchFromGitHub {
       owner = "pineappleEA";
       repo = "pineapple-src";
       rev = "EA-${version}";
-      sha256 = "07pcldcmn8ammzbnxki6by7hgacr6z0548dvhv2p5lp9qcf3xz22";
+      sha256 = "0civ63zi23cym3kii4v3aiqrsg2zzj0w6sp6sa14ixysagqxsd4a";
     };
   };
 }.${branch}
diff --git a/nixpkgs/pkgs/misc/flashfocus/default.nix b/nixpkgs/pkgs/misc/flashfocus/default.nix
index 2b645817a7e5..6a8786be6eaa 100644
--- a/nixpkgs/pkgs/misc/flashfocus/default.nix
+++ b/nixpkgs/pkgs/misc/flashfocus/default.nix
@@ -2,15 +2,15 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "flashfocus";
-  version = "2.2.2";
+  version = "2.2.3";
 
   src = python3.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "1z20d596rnc7cs0rrd221gjn14dmbr11djv94y9p4v7rr788sswv";
+    sha256 = "0cn44hryvz2wl7xklaslxsb3l2i3f8jkgmml0n9v2ks22j5l4r4h";
   };
 
   nativeBuildInputs = with python3.pkgs; [
-    pytestrunner
+    pytest-runner
   ];
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/nixpkgs/pkgs/misc/screensavers/xscreensaver/default.nix b/nixpkgs/pkgs/misc/screensavers/xscreensaver/default.nix
index de230aafd78e..6b90d6f58e15 100644
--- a/nixpkgs/pkgs/misc/screensavers/xscreensaver/default.nix
+++ b/nixpkgs/pkgs/misc/screensavers/xscreensaver/default.nix
@@ -52,7 +52,6 @@ stdenv.mkDerivation rec {
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ raskin ];
     platforms = lib.platforms.unix; # Once had cygwin problems
-    inherit version;
     downloadPage = "https://www.jwz.org/xscreensaver/download.html";
     updateWalker = true;
   };
diff --git a/nixpkgs/pkgs/misc/tmux-plugins/default.nix b/nixpkgs/pkgs/misc/tmux-plugins/default.nix
index 60d6545ae5f3..b4978e200ab1 100644
--- a/nixpkgs/pkgs/misc/tmux-plugins/default.nix
+++ b/nixpkgs/pkgs/misc/tmux-plugins/default.nix
@@ -127,12 +127,12 @@ in rec {
 
   dracula = mkTmuxPlugin rec {
     pluginName = "dracula";
-    version = "1.0.1";
+    version = "2.0.0";
     src = fetchFromGitHub {
       owner = "dracula";
       repo = "tmux";
       rev = "v${version}";
-      sha256 = "sha256-hq+sKA/EkiKia/31SY1zYPz/bxLuwm6sSrGlip1DULw=";
+      sha256 = "ILs+GMltb2AYNUecFMyQZ/AuETB0PCFF2InSnptVBos=";
     };
     meta = with lib; {
       homepage = "https://draculatheme.com/tmux";
diff --git a/nixpkgs/pkgs/misc/uboot/default.nix b/nixpkgs/pkgs/misc/uboot/default.nix
index 3d7e9e48eb35..71f3e13fc906 100644
--- a/nixpkgs/pkgs/misc/uboot/default.nix
+++ b/nixpkgs/pkgs/misc/uboot/default.nix
@@ -401,6 +401,13 @@ in {
 
   ubootRockPro64 = buildUBoot {
     extraMakeFlags = [ "all" "u-boot.itb" ];
+    extraPatches = [
+      # https://patchwork.ozlabs.org/project/uboot/list/?series=237654&archive=both&state=*
+      (fetchpatch {
+        url = "https://patchwork.ozlabs.org/series/237654/mbox/";
+        sha256 = "0aiw9zk8w4msd3v8nndhkspjify0yq6a5f0zdy6mhzs0ilq896c3";
+      })
+    ];
     defconfig = "rockpro64-rk3399_defconfig";
     extraMeta.platforms = ["aarch64-linux"];
     BL31="${armTrustedFirmwareRK3399}/bl31.elf";
diff --git a/nixpkgs/pkgs/misc/vim-plugins/generated.nix b/nixpkgs/pkgs/misc/vim-plugins/generated.nix
index 6218cc05d0f1..b31924a9de42 100644
--- a/nixpkgs/pkgs/misc/vim-plugins/generated.nix
+++ b/nixpkgs/pkgs/misc/vim-plugins/generated.nix
@@ -39,6 +39,18 @@ final: prev:
     meta.homepage = "https://github.com/eikenb/acp/";
   };
 
+  aerial-nvim = buildVimPluginFrom2Nix {
+    pname = "aerial-nvim";
+    version = "2021-07-17";
+    src = fetchFromGitHub {
+      owner = "stevearc";
+      repo = "aerial.nvim";
+      rev = "e641878818c5545afd09b093a368f2d03f169273";
+      sha256 = "1zykpbd42nwvpkgbq0hh52micyybxyvia6558fp6nlcs56bdmqf4";
+    };
+    meta.homepage = "https://github.com/stevearc/aerial.nvim/";
+  };
+
   agda-vim = buildVimPluginFrom2Nix {
     pname = "agda-vim";
     version = "2020-11-23";
@@ -65,12 +77,12 @@ final: prev:
 
   ale = buildVimPluginFrom2Nix {
     pname = "ale";
-    version = "2021-07-05";
+    version = "2021-07-21";
     src = fetchFromGitHub {
       owner = "dense-analysis";
       repo = "ale";
-      rev = "958f30c1635ffc7cd47b929b382a791a9d0db37b";
-      sha256 = "1pbjqg8jn7nw3kn54mjfbm2bidwll1blay9aq70wpzcqvizn8fa0";
+      rev = "5ad4fdd583116ec253aaf43e2d457cd3e3aa5587";
+      sha256 = "178c60ckgkr4ivgi1b21f1cndx9d64spydc8z75gcyz3r6lcbrmm";
     };
     meta.homepage = "https://github.com/dense-analysis/ale/";
   };
@@ -89,12 +101,12 @@ final: prev:
 
   aniseed = buildVimPluginFrom2Nix {
     pname = "aniseed";
-    version = "2021-05-31";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "Olical";
       repo = "aniseed";
-      rev = "4ca3d418eebc0da452b7defc18970c83f7de5070";
-      sha256 = "0ax3hfwppbkm7haxvsllac6r4zk2ys9rrj7sj4p3ayl1w8v3n8nq";
+      rev = "c15c4e49d6ecb7ad7252902bb1b4310ba161617a";
+      sha256 = "13pnlx4rqjc51vrq9d8kyjjxb2apw3y6j2xh68ii746klinjpjy5";
     };
     meta.homepage = "https://github.com/Olical/aniseed/";
   };
@@ -185,12 +197,12 @@ final: prev:
 
   aurora = buildVimPluginFrom2Nix {
     pname = "aurora";
-    version = "2021-06-06";
+    version = "2021-07-17";
     src = fetchFromGitHub {
       owner = "ray-x";
       repo = "aurora";
-      rev = "6a77e8ecf38b0e7a547df58f499cecc1c50cd444";
-      sha256 = "1yh88v6p1ingwydzr40jcva9gw58ihmgjndaf7h3sp0ldvl75ci2";
+      rev = "af110b7f6080bdc4685cdd5551ba1f79a81910f1";
+      sha256 = "1h2czb183lliib95jn4dxq8cn713s22dc4hd1cj19bzqy4j39qhi";
     };
     meta.homepage = "https://github.com/ray-x/aurora/";
   };
@@ -221,12 +233,12 @@ final: prev:
 
   auto-session = buildVimPluginFrom2Nix {
     pname = "auto-session";
-    version = "2021-06-17";
+    version = "2021-07-15";
     src = fetchFromGitHub {
       owner = "rmagatti";
       repo = "auto-session";
-      rev = "99e9370291857c74d9aa7b4a91553ab838c28d95";
-      sha256 = "0wckm7829f5gmcjvbh5rfbig5724k3wlb2xbn06k1hcbnv76pyvh";
+      rev = "f5e5dda7587db72b074edbc3b573d52df639f9a5";
+      sha256 = "1ddr28v44llmfsdf2l3ybgwijhv49dddghdk396nk0sw883a3hs8";
     };
     meta.homepage = "https://github.com/rmagatti/auto-session/";
   };
@@ -245,12 +257,12 @@ final: prev:
 
   awesome-vim-colorschemes = buildVimPluginFrom2Nix {
     pname = "awesome-vim-colorschemes";
-    version = "2021-05-16";
+    version = "2021-07-09";
     src = fetchFromGitHub {
       owner = "rafi";
       repo = "awesome-vim-colorschemes";
-      rev = "39f8083c885149f52712b65b8d5380d63939bc23";
-      sha256 = "1kc8lszdc4gglf5pyp7g6kb4kspml8rd41jv083p29ipwy9n8a8j";
+      rev = "dbb29a451bb5441e860e70a35b925e43ab307e3f";
+      sha256 = "1qd9rfbq0b9jj38arv2mwyrlg7vfpia293lbyhxgn3ilsl85m63h";
     };
     meta.homepage = "https://github.com/rafi/awesome-vim-colorschemes/";
   };
@@ -413,12 +425,12 @@ final: prev:
 
   chadtree = buildVimPluginFrom2Nix {
     pname = "chadtree";
-    version = "2021-07-06";
+    version = "2021-07-21";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "chadtree";
-      rev = "7d1bae413ad45099d7b93592e738b47f7f50b4f2";
-      sha256 = "1dyi2wxl8k875lapwgmxymhg9jyfqnilp2kiyfqs9h45dmfpmxwk";
+      rev = "f768ee24fd8b8b3ee6751361b9ac09f7c8f381d8";
+      sha256 = "1rdfjz2l2v1hzsp8pfiv0c7kbmf7221a90pak7w7mncaabrzlnxr";
     };
     meta.homepage = "https://github.com/ms-jpq/chadtree/";
   };
@@ -521,12 +533,12 @@ final: prev:
 
   coc-lua = buildVimPluginFrom2Nix {
     pname = "coc-lua";
-    version = "2021-06-22";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "josa42";
       repo = "coc-lua";
-      rev = "dcf506e0cd37bf4929f23bb1faae779895811ea8";
-      sha256 = "113p982rm8jp3krxyszmr6zyp586xyyinxqmhfjf14h0v515kklh";
+      rev = "d3ddb34d124c2fce9afa56342e67732a267d6b42";
+      sha256 = "1px4fny0m272jl4vvhhv317j4wh5kfb89rdlrrpqwg8dl2si24rq";
     };
     meta.homepage = "https://github.com/josa42/coc-lua/";
   };
@@ -557,12 +569,12 @@ final: prev:
 
   coc-nvim = buildVimPluginFrom2Nix {
     pname = "coc-nvim";
-    version = "2021-06-29";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "neoclide";
       repo = "coc.nvim";
-      rev = "34d9d52f4e030a7f1c5e15afa1928cad6d9d903d";
-      sha256 = "0mp71zwaiavn8crw64srgcg4fic69dl0rssd1y5jkwfy25r7jnfv";
+      rev = "576f3c972aa9c4458d3dbac2794bd8643ae16e4a";
+      sha256 = "09cndvz8dcasn35bclhqc4i72dw93sczivvfi0zw9ncgsdl22r6g";
     };
     meta.homepage = "https://github.com/neoclide/coc.nvim/";
   };
@@ -666,24 +678,24 @@ final: prev:
 
   compe-tabnine = buildVimPluginFrom2Nix {
     pname = "compe-tabnine";
-    version = "2021-07-04";
+    version = "2021-07-07";
     src = fetchFromGitHub {
       owner = "tzachar";
       repo = "compe-tabnine";
-      rev = "b8326e2acf3056e674925a360dedc33510285f0c";
-      sha256 = "00baf8nmldvd08nsj851bdai6jywpjhg1z1hhcxn7zagj0rl6rs0";
+      rev = "a4d7b60dc538b724c4bc7df50687a879bcf764c7";
+      sha256 = "1lhy2m4awni2pmz9b7b1hkjmaaf4napgihykqwhm9rshsb0xzgvx";
     };
     meta.homepage = "https://github.com/tzachar/compe-tabnine/";
   };
 
   compe-tmux = buildVimPluginFrom2Nix {
     pname = "compe-tmux";
-    version = "2021-07-04";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "andersevenrud";
       repo = "compe-tmux";
-      rev = "2d891bcece6676a4485b248ec9ee05c9acc76190";
-      sha256 = "11ghs6qgx8qwk4ms4f5y1n4clial0xv1q03wsfk8z20w35bm1kg8";
+      rev = "82d2139de0279a20a70da61320042adf31b94798";
+      sha256 = "06dyrknc6gap8ybsjai4ndr4cdhzkwz1hnxilz9ffcbplzwldhs5";
     };
     meta.homepage = "https://github.com/andersevenrud/compe-tmux/";
   };
@@ -774,12 +786,12 @@ final: prev:
 
   conjure = buildVimPluginFrom2Nix {
     pname = "conjure";
-    version = "2021-06-13";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "Olical";
       repo = "conjure";
-      rev = "b55e4906a10db0f6917058aec6616075c4d06994";
-      sha256 = "0agmfahppcaxxn3kwfg9wx9ncdz51qixqh52xw6rddhpda5h7gfm";
+      rev = "c651b5af9e30b9d88290ca30b0374b064e1a278d";
+      sha256 = "1qycvbkr6axl5vcwwf5m6svag511p97h2xzcbh68arqa1kqx208l";
     };
     meta.homepage = "https://github.com/Olical/conjure/";
   };
@@ -810,12 +822,12 @@ final: prev:
 
   Coqtail = buildVimPluginFrom2Nix {
     pname = "Coqtail";
-    version = "2021-06-30";
+    version = "2021-07-21";
     src = fetchFromGitHub {
       owner = "whonore";
       repo = "Coqtail";
-      rev = "7df02d1bf18324d81cbc32b98c05f5aa936afc17";
-      sha256 = "1vf2386xagiyh23kflcnckw5niy4xygns4pi3apq7kza05ca6861";
+      rev = "2cad943df739c1fcf4d923854ae642fde38b477f";
+      sha256 = "1j761zpa41p9hmh4bxapaqjvxx9d3nhcf2bifsibcjghcxblj1xb";
     };
     meta.homepage = "https://github.com/whonore/Coqtail/";
   };
@@ -966,12 +978,12 @@ final: prev:
 
   defx-nvim = buildVimPluginFrom2Nix {
     pname = "defx-nvim";
-    version = "2021-06-23";
+    version = "2021-07-15";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "defx.nvim";
-      rev = "b3353d8bc1f14553e18c68332dc65418977698d1";
-      sha256 = "0cydx3qv217k72rvn3gx3wb3dv5y6bf4zgggz8s84w9kn451swxn";
+      rev = "6ccd2d35581f5c497b2fe3e6a9ecbbb494210d6e";
+      sha256 = "0fg8gv38xvsv7y739m1wix5a384zjn0hqnmkqiz244jxii1l0p8y";
     };
     meta.homepage = "https://github.com/Shougo/defx.nvim/";
   };
@@ -1014,24 +1026,24 @@ final: prev:
 
   denite-nvim = buildVimPluginFrom2Nix {
     pname = "denite-nvim";
-    version = "2021-06-27";
+    version = "2021-07-13";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "denite.nvim";
-      rev = "54abca453ae90607a3f70cc316cba9b384bfaac1";
-      sha256 = "0hhsrw2pkp0pb8sjdr4hmqnnbnfviir56mdwl8m0vzci7zx4409x";
+      rev = "29ece0ca76408c191e3c5ed997b239efb4b38f58";
+      sha256 = "02s43lyqb17066wjjcl29vyky76svzaddclh1q6jh2awhixpsqx2";
     };
     meta.homepage = "https://github.com/Shougo/denite.nvim/";
   };
 
   deol-nvim = buildVimPluginFrom2Nix {
     pname = "deol-nvim";
-    version = "2021-07-04";
+    version = "2021-07-13";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "deol.nvim";
-      rev = "d95fde4d1e042a99f39ddb8c67875fb10d1ed1e8";
-      sha256 = "1wg1z85f816k60201hxrrdi4if9ci86cbg776k15pqdmcpzi0ibz";
+      rev = "df506505ab2de577b35271a2b222042000a30381";
+      sha256 = "0hqfbbcq4bnc48bknd7lfm41djq6977s18j14kyanp9gm7851sis";
     };
     meta.homepage = "https://github.com/Shougo/deol.nvim/";
   };
@@ -1256,12 +1268,12 @@ final: prev:
 
   deoplete-nvim = buildVimPluginFrom2Nix {
     pname = "deoplete-nvim";
-    version = "2021-06-27";
+    version = "2021-07-14";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "deoplete.nvim";
-      rev = "6fc33bed8f5c75a08b14af285d7775d893037cc4";
-      sha256 = "1cg4lvb1py6q838rvd2z3kvcr3xa9cziz0wgsjlg7392ivkss8hd";
+      rev = "49151bc9f7a52b02e5aac5eb76bbb80ba81e3726";
+      sha256 = "02csaq7x99l5h175kyy0bwdb8kdq3caldj6gkpc7lx7zdc987pwn";
     };
     meta.homepage = "https://github.com/Shougo/deoplete.nvim/";
   };
@@ -1304,12 +1316,12 @@ final: prev:
 
   diffview-nvim = buildVimPluginFrom2Nix {
     pname = "diffview-nvim";
-    version = "2021-07-04";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "sindrets";
       repo = "diffview.nvim";
-      rev = "1936824f5986c986befad5995e7bf87ba124d109";
-      sha256 = "16h82yn7g9jq2chdb4wjjvz6akb0r06wjjvqpj9xkp82rx55m4ix";
+      rev = "63d7052686732a910b7355761193fdb55a521cd3";
+      sha256 = "13r743m9x2mbi0qvfgv8vqfjgxnrmvic09ps484m39bxsbdywzvv";
     };
     meta.homepage = "https://github.com/sindrets/diffview.nvim/";
   };
@@ -1328,12 +1340,12 @@ final: prev:
 
   doki-theme-vim = buildVimPluginFrom2Nix {
     pname = "doki-theme-vim";
-    version = "2021-06-16";
+    version = "2021-07-07";
     src = fetchFromGitHub {
       owner = "doki-theme";
       repo = "doki-theme-vim";
-      rev = "8a3a7b64d5509f87564d846faae5ef0b2b77d2a6";
-      sha256 = "05s7fph5bm9gz2b0biqrpsvvh8ccfxh5csxya3rkja86ppz6wawr";
+      rev = "570577ba3f47baebd9e9019916971bee60e2c2e4";
+      sha256 = "05y3dd2w518jcpgbmj83hv8knm92xnagzbv9hknhbs99bgghmp0h";
     };
     meta.homepage = "https://github.com/doki-theme/doki-theme-vim/";
   };
@@ -1364,36 +1376,36 @@ final: prev:
 
   echodoc-vim = buildVimPluginFrom2Nix {
     pname = "echodoc-vim";
-    version = "2021-06-05";
+    version = "2021-07-09";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "echodoc.vim";
-      rev = "d02232ff17517f9bc048f0d4a668ef00d57b5f6c";
-      sha256 = "17m9nph5xk1dcd5l89asp2fw6jd97hsmr78ni67id23v9mjyqslk";
+      rev = "9288bef70cda903edc2561c7612fe2d6a3c73aa5";
+      sha256 = "1s6glmc489dfz750d3xikwxm84qqa89qza1jp3vfj7jn47h1r826";
     };
     meta.homepage = "https://github.com/Shougo/echodoc.vim/";
   };
 
   edge = buildVimPluginFrom2Nix {
     pname = "edge";
-    version = "2021-07-01";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "edge";
-      rev = "1e540f25a4bb84fcc50b5f10c969fbda02d21027";
-      sha256 = "17qpqiv63jpap10wgfkb6zmj2xqcl7jwjglg74y9pajkpm1l050h";
+      rev = "8785d0c2737b6354c847a2ac2cd327a16e2087f2";
+      sha256 = "0nhf9vnsba7gm1yxnbj8lqd9d1ihdgpqrlyihlc815ayqzzs3h9b";
     };
     meta.homepage = "https://github.com/sainnhe/edge/";
   };
 
   editorconfig-vim = buildVimPluginFrom2Nix {
     pname = "editorconfig-vim";
-    version = "2021-04-04";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "editorconfig";
       repo = "editorconfig-vim";
-      rev = "f305bc77faef4b418aee65682d7d147f64cfd5a9";
-      sha256 = "1yr8jni3z9sf348d8zw532vj4s1ww62yfslfcdgkgwhba1l2vy53";
+      rev = "1c4f781f2439469e5342217131886260c9445fc6";
+      sha256 = "0m39if0n4kijqzxk91r1a1fnyhr2p4b9nx1yzvwzkj21snysi4w8";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/editorconfig/editorconfig-vim/";
@@ -1474,12 +1486,12 @@ final: prev:
 
   falcon = buildVimPluginFrom2Nix {
     pname = "falcon";
-    version = "2021-06-11";
+    version = "2021-07-14";
     src = fetchFromGitHub {
       owner = "fenetikm";
       repo = "falcon";
-      rev = "0893abf44cd6dda4d50e98c4ab1f9aea8e61d617";
-      sha256 = "12fa2kwg2495qhs845g31a9iszlrry4jc19famgpjg1glgm9lkrm";
+      rev = "0a67fda0cb7908a43ea4d3c7b8d3d413e305c2be";
+      sha256 = "1yjdj6n74z34lq7aayxnngkvyrcpgii9mh92l50jyq22mbqng4hj";
     };
     meta.homepage = "https://github.com/fenetikm/falcon/";
   };
@@ -1508,6 +1520,18 @@ final: prev:
     meta.homepage = "https://github.com/konfekt/fastfold/";
   };
 
+  feline-nvim = buildVimPluginFrom2Nix {
+    pname = "feline-nvim";
+    version = "2021-07-11";
+    src = fetchFromGitHub {
+      owner = "famiu";
+      repo = "feline.nvim";
+      rev = "4c04c967691d028b4056f726735db329039cdff2";
+      sha256 = "18z9dl58mfmffysr8g5drd6iy79fwn463lagp629cdghrjxcq65c";
+    };
+    meta.homepage = "https://github.com/famiu/feline.nvim/";
+  };
+
   fennel-vim = buildVimPluginFrom2Nix {
     pname = "fennel-vim";
     version = "2020-11-15";
@@ -1534,12 +1558,12 @@ final: prev:
 
   ferret = buildVimPluginFrom2Nix {
     pname = "ferret";
-    version = "2021-06-12";
+    version = "2021-07-09";
     src = fetchFromGitHub {
       owner = "wincent";
       repo = "ferret";
-      rev = "ce27366ab52ef27a2307836e586b9b9c54a00ae5";
-      sha256 = "1j69gd5j7bml6a8gaa8skp3z0145372pnqmqq8hfn7gvncql6l97";
+      rev = "14d883975b2f1d50bbf7a6f74a04f39e59c0b06c";
+      sha256 = "1hnn3x37iphbaam3h5kz0l6y09v2xr79p1nkhs10m939vxavg62k";
     };
     meta.homepage = "https://github.com/wincent/ferret/";
   };
@@ -1595,12 +1619,12 @@ final: prev:
 
   floating-nvim = buildVimPluginFrom2Nix {
     pname = "floating-nvim";
-    version = "2021-05-08";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "fhill2";
       repo = "floating.nvim";
-      rev = "c47af010aa8e88758995858f0ed2771a99cd3e98";
-      sha256 = "0cvs6c903bq4jk4l197vvdrk8q85rl7z7iy7cvd5m4k7yd937r50";
+      rev = "11e75c2a201b9d73f03bd3c2db1fc94021c231eb";
+      sha256 = "172ak3macqmkz4jvic1xcnfpp6wafq33afyvcx4za170qh30sydj";
     };
     meta.homepage = "https://github.com/fhill2/floating.nvim/";
   };
@@ -1619,12 +1643,12 @@ final: prev:
 
   formatter-nvim = buildVimPluginFrom2Nix {
     pname = "formatter-nvim";
-    version = "2021-07-05";
+    version = "2021-07-15";
     src = fetchFromGitHub {
       owner = "mhartington";
       repo = "formatter.nvim";
-      rev = "9866548f1c543ba90d7bb8a62c4fa939a5dcba46";
-      sha256 = "04289wv1zw7r30x7whzf2s9gis7g3a7l8wswsxiwf55zvrqr95j7";
+      rev = "9efa18bc9552a8b2a00644f79d41f279be322e45";
+      sha256 = "0hfq580ng3wlzkc9g44pz1ciwa9ax46ylka3s3y4v79szhviykby";
     };
     meta.homepage = "https://github.com/mhartington/formatter.nvim/";
   };
@@ -1643,12 +1667,12 @@ final: prev:
 
   friendly-snippets = buildVimPluginFrom2Nix {
     pname = "friendly-snippets";
-    version = "2021-06-27";
+    version = "2021-07-08";
     src = fetchFromGitHub {
       owner = "rafamadriz";
       repo = "friendly-snippets";
-      rev = "3361919766dde206849b901163abd7cb820e59a7";
-      sha256 = "0q25v9qlyjv58wlq6yzjajmnzi3rw8yiz9amjia6h0bzhnfxwn3l";
+      rev = "f3ca66b6a2a42eb01ffc255ac03039177b888951";
+      sha256 = "08wzq5i86wxdyhl2yrl9ggfhng92pfx5d7rhmxfcm4abnnl9sj07";
     };
     meta.homepage = "https://github.com/rafamadriz/friendly-snippets/";
   };
@@ -1689,6 +1713,18 @@ final: prev:
     meta.homepage = "https://github.com/rktjmp/fwatch.nvim/";
   };
 
+  fzf-checkout-vim = buildVimPluginFrom2Nix {
+    name = "fzf-checkout.vim";
+    version = "2021-07-21";
+    src = fetchFromGitHub {
+      owner = "stsewd";
+      repo = "fzf-checkout.vim";
+      rev = "4d5ecae74460de8fed4f743f6bd53c4c31d32797";
+      sha256 = "0mia7p2z8l3lrid0v8ml4i8y190gh4ll9898yyg4gcghhxp83zpm";
+    };
+    meta.homepage = "https://github.com/stsewd/fzf-checkout.vim";
+  };
+
   fzf-lsp-nvim = buildVimPluginFrom2Nix {
     pname = "fzf-lsp-nvim";
     version = "2021-06-20";
@@ -1739,12 +1775,12 @@ final: prev:
 
   gentoo-syntax = buildVimPluginFrom2Nix {
     pname = "gentoo-syntax";
-    version = "2021-04-28";
+    version = "2021-07-16";
     src = fetchFromGitHub {
       owner = "gentoo";
       repo = "gentoo-syntax";
-      rev = "9b016fd42ba37395d9299e1e811b282b29effb63";
-      sha256 = "0x3rg1pxildm2mrfr28f4d41z4zzf6v2jng41nzylwm5r4c5r1gd";
+      rev = "14aec3bde121c797f9131da0d4b18a932598bb8f";
+      sha256 = "1mcn4dhwjay5c0y650y2rxz9acxwfsninwrvp20ssgi4gcw2vg76";
     };
     meta.homepage = "https://github.com/gentoo/gentoo-syntax/";
   };
@@ -1811,12 +1847,12 @@ final: prev:
 
   git-worktree-nvim = buildVimPluginFrom2Nix {
     pname = "git-worktree-nvim";
-    version = "2021-05-27";
+    version = "2021-07-15";
     src = fetchFromGitHub {
       owner = "ThePrimeagen";
       repo = "git-worktree.nvim";
-      rev = "b036b2f8a0f9cd973ab25292460e0c7b323616ef";
-      sha256 = "1mn2pwcp482p7rrg0jk8i2g9pql58yqylzpp31308ssw32j8f9fj";
+      rev = "97adf37032c213201c823e98b0555f7279525d62";
+      sha256 = "0vca7pyipch3y3g19sfwqx33l8jh3h7r9wv3hlfw960iyqc2xia7";
     };
     meta.homepage = "https://github.com/ThePrimeagen/git-worktree.nvim/";
   };
@@ -1835,12 +1871,12 @@ final: prev:
 
   gitsigns-nvim = buildVimPluginFrom2Nix {
     pname = "gitsigns-nvim";
-    version = "2021-07-05";
+    version = "2021-07-21";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "gitsigns.nvim";
-      rev = "42c87b9ab34e0fd68fcc669137cd7b351e09a89f";
-      sha256 = "11f5hpzm0xdj2b5lfp65i5p6xbalkazpfxr4kir16v5n8q93azng";
+      rev = "c3b63ec2ffedc7e7199265852eab13ec8c02b6e0";
+      sha256 = "1l8yilf0fqi16lrgpp8i8irq3fb1a73j17gvhff7m6fyzilwahjj";
     };
     meta.homepage = "https://github.com/lewis6991/gitsigns.nvim/";
   };
@@ -1871,12 +1907,12 @@ final: prev:
 
   glow-nvim = buildVimPluginFrom2Nix {
     pname = "glow-nvim";
-    version = "2021-07-01";
+    version = "2021-07-14";
     src = fetchFromGitHub {
       owner = "npxbr";
       repo = "glow.nvim";
-      rev = "c5cf6ca75af09046ea3ff51132732271a6e2dd6c";
-      sha256 = "187zm6vj8xbxs5flbqwjzzsv7vq7c6mw55phihd610bmn1wbxfnd";
+      rev = "3688c38b70eaa680a7100a53e2f12bcd367de225";
+      sha256 = "18xkgwy3gfaq45wzixpr3ngskqqg0c2nziykvy323fimjvbvqxan";
     };
     meta.homepage = "https://github.com/npxbr/glow.nvim/";
   };
@@ -2063,12 +2099,12 @@ final: prev:
 
   hop-nvim = buildVimPluginFrom2Nix {
     pname = "hop-nvim";
-    version = "2021-07-01";
+    version = "2021-07-13";
     src = fetchFromGitHub {
       owner = "phaazon";
       repo = "hop.nvim";
-      rev = "0e9d4b4585f8a37d6cccbe9dd5993900b96a595b";
-      sha256 = "0gpah47azk1miybwm2aa6m3vm08683z85rgrjfywx76fnih9rs66";
+      rev = "9c849dac4b8efe6ad30aabec995dabfb5b251046";
+      sha256 = "0z0ddrqhpirjdck9j0dmaxx0ra5hlcll0iawqb0078xg181bhnwh";
     };
     meta.homepage = "https://github.com/phaazon/hop.nvim/";
   };
@@ -2171,12 +2207,12 @@ final: prev:
 
   indent-blankline-nvim = buildVimPluginFrom2Nix {
     pname = "indent-blankline-nvim";
-    version = "2021-07-03";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "lukas-reineke";
       repo = "indent-blankline.nvim";
-      rev = "17a83ea765831cb0cc64f768b8c3f43479b90bbe";
-      sha256 = "155da638i4ff1wsy5600jgrqicykb27lxq9liag174nga6xazbn6";
+      rev = "0257caac96b28ec9efd80a00c13d31c469357f5b";
+      sha256 = "0r5c99xzsizqpk4h35lp3ip8lqang2vvg01vrv0bad3wqnjqq1d7";
     };
     meta.homepage = "https://github.com/lukas-reineke/indent-blankline.nvim/";
   };
@@ -2412,12 +2448,12 @@ final: prev:
 
   lazygit-nvim = buildVimPluginFrom2Nix {
     pname = "lazygit-nvim";
-    version = "2021-05-10";
+    version = "2021-07-21";
     src = fetchFromGitHub {
       owner = "kdheepak";
       repo = "lazygit.nvim";
-      rev = "acc383d1eab516318816f43e3e380fead8249acb";
-      sha256 = "0w777was4z7yk3z6fn55phqzxmsbzbz0v4959h52yi91pdbb4qfc";
+      rev = "c1840692c17b6994bb3b96b33e48040d0cb2da99";
+      sha256 = "07mwa2bbny73s60as5s1schk4zhk6m6rv26ljbcl14mx45z9m8r8";
     };
     meta.homepage = "https://github.com/kdheepak/lazygit.nvim/";
   };
@@ -2568,12 +2604,12 @@ final: prev:
 
   lightspeed-nvim = buildVimPluginFrom2Nix {
     pname = "lightspeed-nvim";
-    version = "2021-07-02";
+    version = "2021-07-16";
     src = fetchFromGitHub {
       owner = "ggandor";
       repo = "lightspeed.nvim";
-      rev = "14ec41e3348d23c88235f038c7395a750e765e9d";
-      sha256 = "03chwwbwq7zgj899rl7827wqfx9ynyz0i1dhyqn1sk1mrddpr4mz";
+      rev = "62f02aabce3b5af190cf113d5bdf4a8271a966c3";
+      sha256 = "1cckxvr035vsall3891j60yc1a12p8q63rjnm7ac1wzdhh7d8c38";
     };
     meta.homepage = "https://github.com/ggandor/lightspeed.nvim/";
   };
@@ -2614,6 +2650,18 @@ final: prev:
     meta.homepage = "https://github.com/folke/lsp-colors.nvim/";
   };
 
+  lsp-rooter-nvim = buildVimPluginFrom2Nix {
+    pname = "lsp-rooter-nvim";
+    version = "2021-05-25";
+    src = fetchFromGitHub {
+      owner = "ahmedkhalf";
+      repo = "lsp-rooter.nvim";
+      rev = "ca8670c8fc4efbd9a05f330f4037304962c9abbb";
+      sha256 = "1p24gk4yps21wm8gwrsp9a6c2ynwv6xlp7iny2448l2yvrjw494n";
+    };
+    meta.homepage = "https://github.com/ahmedkhalf/lsp-rooter.nvim/";
+  };
+
   lsp-status-nvim = buildVimPluginFrom2Nix {
     pname = "lsp-status-nvim";
     version = "2021-05-20";
@@ -2640,12 +2688,12 @@ final: prev:
 
   lsp_signature-nvim = buildVimPluginFrom2Nix {
     pname = "lsp_signature-nvim";
-    version = "2021-07-05";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "ray-x";
       repo = "lsp_signature.nvim";
-      rev = "e2f781f8dfebf6b21929dd8b326474a828e3f08b";
-      sha256 = "15p5k2kki4pp4hg8284f8hji1b406whhpxr0dws0lx5qc4vqwhwr";
+      rev = "78af1399d0e7a85152d4f75b9ce0c20286735d6e";
+      sha256 = "156wdb57vabz0syx84zlnn5v6wy7g02flq4r5caz9xwccdszwz33";
     };
     meta.homepage = "https://github.com/ray-x/lsp_signature.nvim/";
   };
@@ -2688,24 +2736,24 @@ final: prev:
 
   luasnip = buildVimPluginFrom2Nix {
     pname = "luasnip";
-    version = "2021-07-05";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "l3mon4d3";
       repo = "luasnip";
-      rev = "8b9b689c247f236ad55153582342ecc788444f51";
-      sha256 = "1v24r0kqsqzd111c6ih5s2q0ckz56whqwpsq19awk3sqkvba17w3";
+      rev = "d4ddebdb4f4bc44e731e808d794bd8c429dc9e07";
+      sha256 = "01lsxak9hl2shhhzqjypdjpkasrppn6v8xlzxi28c7973c5jn629";
     };
     meta.homepage = "https://github.com/l3mon4d3/luasnip/";
   };
 
   lush-nvim = buildVimPluginFrom2Nix {
     pname = "lush-nvim";
-    version = "2021-06-30";
+    version = "2021-07-15";
     src = fetchFromGitHub {
       owner = "rktjmp";
       repo = "lush.nvim";
-      rev = "3232af465ed86b9a188389e52ce3c47cd811c3f3";
-      sha256 = "1qcvi8kklggzl4k88n6zhxb08hh2srhm9vvnfrknlz751pgd8z3x";
+      rev = "a787bcd1d9afb2bd6bab13834c5b28e727f266c0";
+      sha256 = "12i4bvgm26sfvdanjjwz1572nfnyax1i2bwawfkz2ab34xlwcr0y";
     };
     meta.homepage = "https://github.com/rktjmp/lush.nvim/";
   };
@@ -2784,12 +2832,12 @@ final: prev:
 
   minimap-vim = buildVimPluginFrom2Nix {
     pname = "minimap-vim";
-    version = "2021-06-29";
+    version = "2021-07-21";
     src = fetchFromGitHub {
       owner = "wfxr";
       repo = "minimap.vim";
-      rev = "8ff65412c76eb25731d96089660c9591b87f104b";
-      sha256 = "1r2n1mvs5zxxz0khg2dsy6m2w6d3wj7jds9swg5n08wa4m8zl05w";
+      rev = "d389e2b0c67f5cedd5ec5edfe53afc847f8daf61";
+      sha256 = "180grx6317ic6ip98awvqnfjc4zkzqh91rglls5pvwcq1w5m5vwb";
     };
     meta.homepage = "https://github.com/wfxr/minimap.vim/";
   };
@@ -3096,24 +3144,24 @@ final: prev:
 
   neoformat = buildVimPluginFrom2Nix {
     pname = "neoformat";
-    version = "2021-06-30";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "sbdchd";
       repo = "neoformat";
-      rev = "3fdfd45119be64945e635bf2406fdb0430cb85df";
-      sha256 = "1sd45xvvw4wgmzixlmaq6j0kvv25l561678q24l23swh77x617r4";
+      rev = "f9fa0e31f9e5c7aaa2ea2091ca64b28d84d485c0";
+      sha256 = "1bv75ijvs63r88nghjk5ljjz06r6xbp3923r3c17p1d3ks2qsfxa";
     };
     meta.homepage = "https://github.com/sbdchd/neoformat/";
   };
 
   neogit = buildVimPluginFrom2Nix {
     pname = "neogit";
-    version = "2021-07-03";
+    version = "2021-07-18";
     src = fetchFromGitHub {
       owner = "TimUntersberger";
       repo = "neogit";
-      rev = "c91d18fa8743860d4fe547faef4a3671d428b422";
-      sha256 = "16bjicmy9m10cq6gsxlzdsib5qwjj6w1k27wrr07zb01finhj658";
+      rev = "ee83d4fa8ac946e5e0064e65a5276e1ea030ae28";
+      sha256 = "0mrydz0xl2yqgsp1nsz4p55mjhx7x7z7pahcq3y5mzzla687dnqg";
     };
     meta.homepage = "https://github.com/TimUntersberger/neogit/";
   };
@@ -3156,12 +3204,12 @@ final: prev:
 
   neorg = buildVimPluginFrom2Nix {
     pname = "neorg";
-    version = "2021-07-03";
+    version = "2021-07-17";
     src = fetchFromGitHub {
       owner = "vhyrro";
       repo = "neorg";
-      rev = "d8aea4d54a0af773142c9be8a30944ae8e49b055";
-      sha256 = "1x2q4lhckb8ynzm9s25y877vvi691bw9sdd6764yqgdcznpdlma1";
+      rev = "7f9f1d328c218b041ce899def4923334a5355c14";
+      sha256 = "1f7acjy3xhiz2yzkdp5x5f4p28zz583h7snyzrc2l8w7fwz600x9";
     };
     meta.homepage = "https://github.com/vhyrro/neorg/";
   };
@@ -3214,6 +3262,18 @@ final: prev:
     meta.homepage = "https://github.com/kassio/neoterm/";
   };
 
+  neovim-ayu = buildVimPluginFrom2Nix {
+    pname = "neovim-ayu";
+    version = "2021-07-17";
+    src = fetchFromGitHub {
+      owner = "Shatur";
+      repo = "neovim-ayu";
+      rev = "755b4a379ef4812f9656fb3f59220cf3a45c2070";
+      sha256 = "0irjjpfrl6i7hfvay6b187i7dkkjq40fdcrx53xxfk9qq47l1z13";
+    };
+    meta.homepage = "https://github.com/Shatur/neovim-ayu/";
+  };
+
   neovim-fuzzy = buildVimPluginFrom2Nix {
     pname = "neovim-fuzzy";
     version = "2021-07-02";
@@ -3264,12 +3324,12 @@ final: prev:
 
   nerdtree = buildVimPluginFrom2Nix {
     pname = "nerdtree";
-    version = "2021-03-25";
+    version = "2021-07-15";
     src = fetchFromGitHub {
       owner = "preservim";
       repo = "nerdtree";
-      rev = "81f3eaba295b3fceb2d032db57e5eae99ae480f8";
-      sha256 = "0zws0b20n8ak2s3hffsb0rrwdjh8sx3sgrilmmmvr0d2ivsfqwlb";
+      rev = "2c14ed0e153cdcd0a1c7d1eabec6820bb6b3f8a2";
+      sha256 = "0gny5xw4knvjlkgazygpkwy8fk2x8igh45f980ypjghfkiw8h5f8";
     };
     meta.homepage = "https://github.com/preservim/nerdtree/";
   };
@@ -3348,24 +3408,24 @@ final: prev:
 
   nord-vim = buildVimPluginFrom2Nix {
     pname = "nord-vim";
-    version = "2021-06-09";
+    version = "2021-07-10";
     src = fetchFromGitHub {
       owner = "arcticicestudio";
       repo = "nord-vim";
-      rev = "537c66ca7c1308430b00dab41d9ad9c4201555f7";
-      sha256 = "18v7xgag87czxnm2mvxg273z88gc8bh4jgzl1rh10y6kbbyv9c82";
+      rev = "7e8d8abec9226d3697a9725b24a7d840623c6b66";
+      sha256 = "0zi86iqc6hznf6vnmhyk7rlqwmkl0gxvjsc55ygxkypa1075lqg3";
     };
     meta.homepage = "https://github.com/arcticicestudio/nord-vim/";
   };
 
   nord-nvim = buildVimPluginFrom2Nix {
     pname = "nord-nvim";
-    version = "2021-07-01";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "shaunsingh";
       repo = "nord.nvim";
-      rev = "98063a91de4179685c29acb1c765a99bf08ef0f2";
-      sha256 = "18q05vfb4h94nlxylkir9chb3n62x2ibb3qlcij4rhn35fsnrfd9";
+      rev = "994cb6b4efa481ac1a64aa3ac5c9e8cfea806783";
+      sha256 = "1wssns3iwgfkf73vgln4msv8l5gw724wyalqzv8w8ckhf68dbz4j";
     };
     meta.homepage = "https://github.com/shaunsingh/nord.nvim/";
   };
@@ -3382,6 +3442,42 @@ final: prev:
     meta.homepage = "https://github.com/chrisbra/NrrwRgn/";
   };
 
+  nterm-nvim = buildVimPluginFrom2Nix {
+    pname = "nterm-nvim";
+    version = "2021-07-15";
+    src = fetchFromGitHub {
+      owner = "jlesquembre";
+      repo = "nterm.nvim";
+      rev = "8076f2960512d50a93ffd3d9b04499f9d4fbe793";
+      sha256 = "0z2d9jvw7yf415mpvqlx5vc8k9n02vc28v4p1fimvz7axcv67361";
+    };
+    meta.homepage = "https://github.com/jlesquembre/nterm.nvim/";
+  };
+
+  null-ls-nvim = buildVimPluginFrom2Nix {
+    pname = "null-ls-nvim";
+    version = "2021-07-21";
+    src = fetchFromGitHub {
+      owner = "jose-elias-alvarez";
+      repo = "null-ls.nvim";
+      rev = "fa50b4ce297599dc22b1b4bb8550eff4d791f9e4";
+      sha256 = "0fhp6qxwykb1hz4xgaj4sq1h1qlfdr855fyaigw171nz0p7ki7ws";
+    };
+    meta.homepage = "https://github.com/jose-elias-alvarez/null-ls.nvim/";
+  };
+
+  numb-nvim = buildVimPluginFrom2Nix {
+    pname = "numb-nvim";
+    version = "2021-07-12";
+    src = fetchFromGitHub {
+      owner = "nacro90";
+      repo = "numb.nvim";
+      rev = "c8b128230adb22727256fd24a221f4c5a1b41e93";
+      sha256 = "0dg5cym0rcjy198rhkd61mhq1mg7lw5z4vprik8aimgnlqdzgqad";
+    };
+    meta.homepage = "https://github.com/nacro90/numb.nvim/";
+  };
+
   nvcode-color-schemes-vim = buildVimPluginFrom2Nix {
     pname = "nvcode-color-schemes-vim";
     version = "2021-07-03";
@@ -3408,12 +3504,12 @@ final: prev:
 
   nvim-autopairs = buildVimPluginFrom2Nix {
     pname = "nvim-autopairs";
-    version = "2021-06-29";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "windwp";
       repo = "nvim-autopairs";
-      rev = "b64fa0d85e9e1b6aa86c8c44cf8a604840a571af";
-      sha256 = "1sqjxf5w77aa0jxzk3yz9l2qw9xja7i9vxnrajajf1m7wa3zm4nl";
+      rev = "b0bbe8d9089cbb045fd15d217ac5a5ec0f4f5066";
+      sha256 = "173nkjfkqklg8zk4vs69c0avrw0v6hngj0szxj7xs3yh2wfnhqnh";
     };
     meta.homepage = "https://github.com/windwp/nvim-autopairs/";
   };
@@ -3432,12 +3528,12 @@ final: prev:
 
   nvim-bqf = buildVimPluginFrom2Nix {
     pname = "nvim-bqf";
-    version = "2021-07-05";
+    version = "2021-07-11";
     src = fetchFromGitHub {
       owner = "kevinhwang91";
       repo = "nvim-bqf";
-      rev = "27641367360d64e67ea8f4d47e950a24c71a99e8";
-      sha256 = "0yjmf651gdyi6ngpbb7y8bjf43snv8di54yldfm6l7xgawrwn3nn";
+      rev = "46e6469fb1ef90d475fb43c56e0eeb81eacf08dd";
+      sha256 = "1mj134zmrq9ldvl7w2m4769az9g2iyk4fvrpahaz93czdx9ac6gh";
     };
     meta.homepage = "https://github.com/kevinhwang91/nvim-bqf/";
   };
@@ -3456,12 +3552,12 @@ final: prev:
 
   nvim-bufferline-lua = buildVimPluginFrom2Nix {
     pname = "nvim-bufferline-lua";
-    version = "2021-07-05";
+    version = "2021-07-21";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "nvim-bufferline.lua";
-      rev = "d66f0e45243a46fc3fd0d84ed7d54e37882207ba";
-      sha256 = "0rwihzz2lcyza86bgmmvny685g1nlz23yagz5agdqjzibqz973xf";
+      rev = "47fc74b5b3aafd2e3028c69ab96cb215c5f6c8bc";
+      sha256 = "0mr0dh8picgd8ghm9gvgyg08cihr4k1x8l2brfahpnxha6aghx58";
     };
     meta.homepage = "https://github.com/akinsho/nvim-bufferline.lua/";
   };
@@ -3492,12 +3588,12 @@ final: prev:
 
   nvim-compe = buildVimPluginFrom2Nix {
     pname = "nvim-compe";
-    version = "2021-07-05";
+    version = "2021-07-16";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "nvim-compe";
-      rev = "00ebf180d01f7f020c6c19bd8caed59f722ccc04";
-      sha256 = "1qasn6qx4qna0p364b2kbyrd3bdw7zkzys0d2x9rgc5pn7jx80f0";
+      rev = "ef97a9b17c655d8b603c5fa9abf6fbb623a1dad4";
+      sha256 = "0lrna8ryw391dpvi64x3q2gj484mf5s6wlqqg6a52a5s3ganh41n";
     };
     meta.homepage = "https://github.com/hrsh7th/nvim-compe/";
   };
@@ -3516,12 +3612,12 @@ final: prev:
 
   nvim-dap = buildVimPluginFrom2Nix {
     pname = "nvim-dap";
-    version = "2021-07-04";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-dap";
-      rev = "6767b438023d63a42149ad5a79960504c9c67bd7";
-      sha256 = "14backs66fmfznrl86dxpvq7ipcawdql2ky30k9kisllpgzccaw6";
+      rev = "e3e23d257c9a36e3d189d6b57e6c6b7e91bfa14f";
+      sha256 = "09rk3s6swwng78cpj1f2rlww2vkqai9sx72sqihk09sc16prp6cc";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-dap/";
   };
@@ -3564,24 +3660,24 @@ final: prev:
 
   nvim-highlite = buildVimPluginFrom2Nix {
     pname = "nvim-highlite";
-    version = "2021-07-04";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "Iron-E";
       repo = "nvim-highlite";
-      rev = "b1b6ff6b78dac7c00b70404892e0eabdacb7b223";
-      sha256 = "13icfnas86iki1x2xd2xcdh7ycp3if49zgnwpyx03djgi7ljkgjk";
+      rev = "8e1d114f3d855653bc71fba9e5a22a05d3a1b1a2";
+      sha256 = "1dm6rwx3w8hbgg20ay4bcdd3c87bqpqvl64zfc673p81m76b3s86";
     };
     meta.homepage = "https://github.com/Iron-E/nvim-highlite/";
   };
 
   nvim-hlslens = buildVimPluginFrom2Nix {
     pname = "nvim-hlslens";
-    version = "2021-06-12";
+    version = "2021-07-17";
     src = fetchFromGitHub {
       owner = "kevinhwang91";
       repo = "nvim-hlslens";
-      rev = "dd688e37458a6fdeb050942da8c1260389c2a99a";
-      sha256 = "0q4bmp3wy0miaysldpfm6646r8c0llygfnlbmk5brs4la321hjld";
+      rev = "1df774df358e70cbc9f74f34d38a82e756ceb001";
+      sha256 = "1zf5i30g49f7ks6hhvr84ac3ka57lv96c124cpr1d4h9xld1n9q8";
     };
     meta.homepage = "https://github.com/kevinhwang91/nvim-hlslens/";
   };
@@ -3600,12 +3696,12 @@ final: prev:
 
   nvim-jdtls = buildVimPluginFrom2Nix {
     pname = "nvim-jdtls";
-    version = "2021-07-02";
+    version = "2021-07-12";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-jdtls";
-      rev = "846187eef85e39997c7b9f101e5169c5b57ec4a8";
-      sha256 = "183szh75a3ix715i1hjr7pbcxw6l75l476snjda17ia68fg6zj6r";
+      rev = "391e55bb5f90bc23e47c3b57eed6c6fcc95b0e7f";
+      sha256 = "1djjdllr1klzy9yggkwmv7cv8gcpyb96mw1c9qfq9vdi5fmhcsyn";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-jdtls/";
   };
@@ -3624,12 +3720,12 @@ final: prev:
 
   nvim-lspconfig = buildVimPluginFrom2Nix {
     pname = "nvim-lspconfig";
-    version = "2021-07-05";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "neovim";
       repo = "nvim-lspconfig";
-      rev = "4e8a6bb35f80e5e37c14b92b5db9abaf2dc6605f";
-      sha256 = "1zz0jf3cv7v1v3ixklld6ls4fcj05d8yy7ww20s85nqvalv5l66r";
+      rev = "4f72377143fc0961391fb0e42e751b9f677fca4e";
+      sha256 = "1w9gjnv98gv8jwkkw1x5jsnc8366w1jcllipxlrij97z6hspqc8m";
     };
     meta.homepage = "https://github.com/neovim/nvim-lspconfig/";
   };
@@ -3672,12 +3768,12 @@ final: prev:
 
   nvim-scrollview = buildVimPluginFrom2Nix {
     pname = "nvim-scrollview";
-    version = "2021-06-26";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "dstein64";
       repo = "nvim-scrollview";
-      rev = "f0423e8085503889170b695d56191b29b51239e2";
-      sha256 = "193h67azj8pldx8csphb7vaj7sza1kv5ayzxx1xq9fynywwncjyy";
+      rev = "b7ca5298fd75700cc74b122654241f5ed24ecf96";
+      sha256 = "0pywghia4hv9pa8g1irmqc1qrbvbhhibazx8z6kcqrrmsb3026g5";
     };
     meta.homepage = "https://github.com/dstein64/nvim-scrollview/";
   };
@@ -3696,36 +3792,36 @@ final: prev:
 
   nvim-toggleterm-lua = buildVimPluginFrom2Nix {
     pname = "nvim-toggleterm-lua";
-    version = "2021-07-04";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "nvim-toggleterm.lua";
-      rev = "fbf502a997db9bb97765cf5e69bd8749110e9139";
-      sha256 = "14w9xn2ns8zpsyiydqyia34dcdgvk1lhzvbvwriprrp0bhgzmq57";
+      rev = "0e11e0322c1730559cb74f728300de2912bf9a61";
+      sha256 = "10r9zqmkhh3bpjhjhrr24vssy5wazd4499sxsyqsr6p9bb1mkhqh";
     };
     meta.homepage = "https://github.com/akinsho/nvim-toggleterm.lua/";
   };
 
   nvim-tree-lua = buildVimPluginFrom2Nix {
     pname = "nvim-tree-lua";
-    version = "2021-07-02";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "kyazdani42";
       repo = "nvim-tree.lua";
-      rev = "589c36e26f99486e7ab5e2e6920636ffd5f3ae2a";
-      sha256 = "0s5ha981igqkmp13xzxy1rj4cw687qxs5301byx9vjl2n5gkyb6j";
+      rev = "d3e76b81e5b169af192dea4da0bd6f64faad2c36";
+      sha256 = "0hw50yyikndx1260a50j6izjsa4m709r7v3qzrpwz482d7fq700j";
     };
     meta.homepage = "https://github.com/kyazdani42/nvim-tree.lua/";
   };
 
   nvim-treesitter = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter";
-    version = "2021-07-05";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter";
-      rev = "53d92f65bddf6623000b81ca5beae5ee3a6a736e";
-      sha256 = "18irdbpwqpp6xjmqk7bjlvd8k2mzyg77xgw5k4y2y5vcjg8jazfq";
+      rev = "e473630fe0872cb0ed97cd7085e724aa58bc1c84";
+      sha256 = "1l6cv9znpwnk4hmg3vh8gy26s8hvlbg03wmd7snjwxcpfyj6vi84";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
   };
@@ -3768,24 +3864,24 @@ final: prev:
 
   nvim-treesitter-textobjects = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter-textobjects";
-    version = "2021-07-04";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter-textobjects";
-      rev = "bebb977b80d7d6253e82804e05b1105a57382d12";
-      sha256 = "0ckszh3157jbzhqzyfa5gb6sixi7b66w3z3hjvl39z66dk9lf9l6";
+      rev = "7f36db566c66998e04ea569723174c42d8190903";
+      sha256 = "1j2vjlfrvvvxzqq2z6z9mdlanq8q8zhfhffbrygv1zgrp6izhhkx";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter-textobjects/";
   };
 
   nvim-ts-rainbow = buildVimPluginFrom2Nix {
     pname = "nvim-ts-rainbow";
-    version = "2021-06-25";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "p00f";
       repo = "nvim-ts-rainbow";
-      rev = "c2a5af6b6f08b883ac6925273142eb178178a2f6";
-      sha256 = "1z07c9w8ms6gpqjy1xfjhqbr1zn717i6gyn9vm7wm60rk86xrn3j";
+      rev = "038cda43f4b7e8819c230de2bbe943972ed2f37c";
+      sha256 = "0kdzfi5dm1lm1bzagf60c8dd1a3zz0x4qp28nns6nhiv7kljj3zy";
     };
     meta.homepage = "https://github.com/p00f/nvim-ts-rainbow/";
   };
@@ -3874,14 +3970,26 @@ final: prev:
     meta.homepage = "https://github.com/Th3Whit3Wolf/one-nvim/";
   };
 
+  onedark-nvim = buildVimPluginFrom2Nix {
+    pname = "onedark-nvim";
+    version = "2021-07-16";
+    src = fetchFromGitHub {
+      owner = "olimorris";
+      repo = "onedark.nvim";
+      rev = "df80982b43ced71a286933e830b26faabb9a36e9";
+      sha256 = "1hddmi543js7z77383ppvdray2dri5jn8lcqivk9xm5l8maz52cz";
+    };
+    meta.homepage = "https://github.com/olimorris/onedark.nvim/";
+  };
+
   onedark-vim = buildVimPluginFrom2Nix {
     pname = "onedark-vim";
-    version = "2021-06-22";
+    version = "2021-07-12";
     src = fetchFromGitHub {
       owner = "joshdick";
       repo = "onedark.vim";
-      rev = "a4dadcd2a37ea69624a808fd8fd47b540c797a45";
-      sha256 = "16pqifn99c1y1g70pg2rqh6pr5p3cznl68l77z7b4rjpk01s9c2v";
+      rev = "ee4b22cbae8a3a434fad832bd89a6981c7c061af";
+      sha256 = "1fz3ly97w0n8viarlqil2q38s6hwd0lzyyi2jvpqsg9bj07dg4k3";
     };
     meta.homepage = "https://github.com/joshdick/onedark.vim/";
   };
@@ -3924,12 +4032,12 @@ final: prev:
 
   packer-nvim = buildVimPluginFrom2Nix {
     pname = "packer-nvim";
-    version = "2021-07-05";
+    version = "2021-07-17";
     src = fetchFromGitHub {
       owner = "wbthomason";
       repo = "packer.nvim";
-      rev = "5f7ce98b4c81dd8d4b727adc86f83b2339befd55";
-      sha256 = "1aphdri6hb9jamwjdkjybv0r3xbdr673jd4sibzj591r2ai6kzja";
+      rev = "b6a904b341c56c5386bdd5c991439a834d061874";
+      sha256 = "1ja6k5cw6v5nhi91s643r6c38a15rgi4n8cb0k5pc5q252q8km04";
     };
     meta.homepage = "https://github.com/wbthomason/packer.nvim/";
   };
@@ -4020,24 +4128,24 @@ final: prev:
 
   playground = buildVimPluginFrom2Nix {
     pname = "playground";
-    version = "2021-07-05";
+    version = "2021-07-13";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "playground";
-      rev = "6e0037c974d17b2883e3f0f38bb3cb6b1daa5feb";
-      sha256 = "0rsdk3ib2sxg6k4k33mcbfrqh7m612jzynzwx3kzh2rmrh1n7i31";
+      rev = "2715d35f27cbdfe6231e48212d12be383013f442";
+      sha256 = "0z1vlsdmhlw6pbga9nypsihzjybglyr8is3maqbyqswrmz1yg87h";
     };
     meta.homepage = "https://github.com/nvim-treesitter/playground/";
   };
 
   plenary-nvim = buildVimPluginFrom2Nix {
     pname = "plenary-nvim";
-    version = "2021-07-02";
+    version = "2021-07-12";
     src = fetchFromGitHub {
       owner = "nvim-lua";
       repo = "plenary.nvim";
-      rev = "ca51b6842cd8021f58dc45c89b3e8d7994e0bf8f";
-      sha256 = "071gdhrrbrhdmagai3q8c4yzc9kn794aa7kkacnknkm5kzswb8hg";
+      rev = "8bae2c1fadc9ed5bfcfb5ecbd0c0c4d7d40cb974";
+      sha256 = "1axvjv6n77afkjqk914dpc020kxd7mig6m5sr916k1n1q35jc4ny";
     };
     meta.homepage = "https://github.com/nvim-lua/plenary.nvim/";
   };
@@ -4081,12 +4189,12 @@ final: prev:
 
   presence-nvim = buildVimPluginFrom2Nix {
     pname = "presence-nvim";
-    version = "2021-06-30";
+    version = "2021-07-09";
     src = fetchFromGitHub {
       owner = "andweeb";
       repo = "presence.nvim";
-      rev = "774994a5b930b9e6635e6a9b83b7f476bdd7dd23";
-      sha256 = "0q6d5k2rf6ci3mgmdga304ihklb10falp4g29djnfxxsi2iapvjv";
+      rev = "080d24394b9abc93b6cd7635cb96c7d6601759a3";
+      sha256 = "19xc61xfdyi21k9wbs63iynkfysqi3v28897bqig8myjr1mifbpb";
     };
     meta.homepage = "https://github.com/andweeb/presence.nvim/";
   };
@@ -4273,12 +4381,12 @@ final: prev:
 
   registers-nvim = buildVimPluginFrom2Nix {
     pname = "registers-nvim";
-    version = "2021-07-05";
+    version = "2021-07-11";
     src = fetchFromGitHub {
       owner = "tversteeg";
       repo = "registers.nvim";
-      rev = "2208bcd4e73fd3b321ac52ce498ab679b8c959ab";
-      sha256 = "0qqskn8sg9jcpg9wvch0j8d28qjkz084hcc7hl7f1lfc70ksvc7h";
+      rev = "8b02ba8dc9a2946f90f51cc43ff1175b0f916616";
+      sha256 = "10xrwxm5qpb1d25d5kr485xik4wmgr0pz92jn9w5rbf6widsdi7a";
     };
     meta.homepage = "https://github.com/tversteeg/registers.nvim/";
   };
@@ -4369,12 +4477,12 @@ final: prev:
 
   rust-tools-nvim = buildVimPluginFrom2Nix {
     pname = "rust-tools-nvim";
-    version = "2021-06-15";
+    version = "2021-07-21";
     src = fetchFromGitHub {
       owner = "simrat39";
       repo = "rust-tools.nvim";
-      rev = "493202aa28b5b9e4aa378ad04de50162ec1f353c";
-      sha256 = "11azahjqg6wvahchds8hanbs8qrx2kjz7g5vcxcfyajfpns1ck6r";
+      rev = "11f232c7a82c3fd5d34654c6b02abae4f56ac5e6";
+      sha256 = "1xyrf6s8szd1lpz70ng1whhysjvnn7pxi80knyrjrkqzkqpimiac";
     };
     meta.homepage = "https://github.com/simrat39/rust-tools.nvim/";
   };
@@ -4453,12 +4561,12 @@ final: prev:
 
   semshi = buildVimPluginFrom2Nix {
     pname = "semshi";
-    version = "2019-12-01";
+    version = "2021-07-13";
     src = fetchFromGitHub {
       owner = "numirias";
       repo = "semshi";
-      rev = "801d0c971d3d7291cf2fc22d74ac69155a71a279";
-      sha256 = "0adq1qxlxd53ps5byjvqmzk266f3wbvqmw74dkx6vd41zqw38wfx";
+      rev = "39c7500032f35711aecb492affd989433b984f14";
+      sha256 = "14hv67fhmq85m382grc6h07r5xs83mmx3j8nf94j60gwbybhlkdb";
     };
     meta.homepage = "https://github.com/numirias/semshi/";
   };
@@ -4513,12 +4621,12 @@ final: prev:
 
   sideways-vim = buildVimPluginFrom2Nix {
     pname = "sideways-vim";
-    version = "2021-06-24";
+    version = "2021-07-15";
     src = fetchFromGitHub {
       owner = "AndrewRadev";
       repo = "sideways.vim";
-      rev = "8703f642db4e545525e6fb10e97c843c74c61964";
-      sha256 = "1rmrxr53i7vmwh7wrrbcb24jyrqrph6bqr2bifhhgwy1kxx04gvg";
+      rev = "960afef88aef374d3525e1536bdd505727b42d67";
+      sha256 = "08yj3p31d5gnd3qyv6dcpz87s3kwz1kgcb5h92w83wf64r6fzq61";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/AndrewRadev/sideways.vim/";
@@ -4598,12 +4706,12 @@ final: prev:
 
   sonokai = buildVimPluginFrom2Nix {
     pname = "sonokai";
-    version = "2021-07-01";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "sonokai";
-      rev = "e8935bde797ce92318c60a21ee671caf04387a33";
-      sha256 = "1sw8d7ipadpa4hazs2fija3rzlf6ch7h8lkm4k3hg9m9gpviygla";
+      rev = "9d8c57c2b0bf57082093bf1b162ac492206d35dd";
+      sha256 = "0ymgbcy8v7ang4ghlkr52wq86ydr4pma1vwvp78y5yhi4xmn82mn";
     };
     meta.homepage = "https://github.com/sainnhe/sonokai/";
   };
@@ -4634,12 +4742,12 @@ final: prev:
 
   Spacegray-vim = buildVimPluginFrom2Nix {
     pname = "Spacegray-vim";
-    version = "2021-06-15";
+    version = "2021-07-06";
     src = fetchFromGitHub {
       owner = "ackyshake";
       repo = "Spacegray.vim";
-      rev = "0aa4e5c973413add9766689385bf9137d8c6cbc9";
-      sha256 = "12lwvcm2ahwvr8gj1sdlgf42cd2f4xxjmiir68f09yimzajip7yi";
+      rev = "c699ca10ed421c462bd1c87a158faaa570dc8e28";
+      sha256 = "0ma8w6p5jh6llka49x5j5ql8fmhv0bx5hhsn5b2phak79yqg1k61";
     };
     meta.homepage = "https://github.com/ackyshake/Spacegray.vim/";
   };
@@ -4706,12 +4814,12 @@ final: prev:
 
   splitjoin-vim = buildVimPluginFrom2Nix {
     pname = "splitjoin-vim";
-    version = "2021-06-28";
+    version = "2021-07-17";
     src = fetchFromGitHub {
       owner = "AndrewRadev";
       repo = "splitjoin.vim";
-      rev = "03af68c1ecec4a01b4fe713393c1b3fa4dd21e77";
-      sha256 = "15qja2ywi83qv365b19xrcw02j693bhrdn0wanxdhbqzpp9kwsb9";
+      rev = "e5c60658d9aca5af479ef6371037cc6453a6b1eb";
+      sha256 = "07l7acnhp9nwwkmybjs2fdprql5nanyxxn9z3wl59y8jx2ca44p7";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/AndrewRadev/splitjoin.vim/";
@@ -4719,24 +4827,24 @@ final: prev:
 
   sql-nvim = buildVimPluginFrom2Nix {
     pname = "sql-nvim";
-    version = "2021-04-13";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "tami5";
       repo = "sql.nvim";
-      rev = "afd60eef9edff543d4d05ac51d518fd501f2e413";
-      sha256 = "115l3dp1i7pmfsqyqir5c73bprvsnnm737sbbz0dwibnlr5sd2q3";
+      rev = "9983108bc9941af842d3b847b60564d180fc8e4b";
+      sha256 = "1f1f1v107w61b86pdrs9qvchyg286nif31c5cp3yx6rq22fynbgd";
     };
     meta.homepage = "https://github.com/tami5/sql.nvim/";
   };
 
   srcery-vim = buildVimPluginFrom2Nix {
     pname = "srcery-vim";
-    version = "2021-06-01";
+    version = "2021-07-21";
     src = fetchFromGitHub {
       owner = "srcery-colors";
       repo = "srcery-vim";
-      rev = "93711180123b9ba6958bfc682d305ef0a1056fa5";
-      sha256 = "1i3hhihlvh5mkn1vl9f1baiz712h8lwp1hfi5arsb36picsmgbfd";
+      rev = "d313ed0f8f39a7fd09da65c4f02191368680387f";
+      sha256 = "1z9r2x58g212jy2sl981s7f8pj2nbqfgjbfi471yqafbxlynfzdw";
     };
     meta.homepage = "https://github.com/srcery-colors/srcery-vim/";
   };
@@ -4767,12 +4875,12 @@ final: prev:
 
   suda-vim = buildVimPluginFrom2Nix {
     pname = "suda-vim";
-    version = "2021-02-20";
+    version = "2021-07-21";
     src = fetchFromGitHub {
       owner = "lambdalisue";
       repo = "suda.vim";
-      rev = "fbb138f5090c3db4dabeba15326397a09df6b73b";
-      sha256 = "01kys8q3gycxqf760ydq1k8wq20brjvl1gxpl8j87jvnyx87kmnf";
+      rev = "bfafa2722178bdb8898e014a7e95b60d497960d9";
+      sha256 = "1cjj6d6zkd2b9hv77saz8p7xcw06rj0svdhycc4df8bcdrvvmi39";
     };
     meta.homepage = "https://github.com/lambdalisue/suda.vim/";
   };
@@ -4825,14 +4933,26 @@ final: prev:
     meta.homepage = "https://github.com/keith/swift.vim/";
   };
 
+  symbols-outline-nvim = buildVimPluginFrom2Nix {
+    pname = "symbols-outline-nvim";
+    version = "2021-07-21";
+    src = fetchFromGitHub {
+      owner = "simrat39";
+      repo = "symbols-outline.nvim";
+      rev = "7414f30365a342e1d89072d474a35913643b6eec";
+      sha256 = "19c9dv8dc72nnb1dx7wdraihpzf5b42wwq3c9vn0na8k1xy26h8y";
+    };
+    meta.homepage = "https://github.com/simrat39/symbols-outline.nvim";
+  };
+
   syntastic = buildVimPluginFrom2Nix {
     pname = "syntastic";
-    version = "2021-07-01";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "vim-syntastic";
       repo = "syntastic";
-      rev = "c89741ef310fd0a380ffb80b80e10f197afd6224";
-      sha256 = "0n691w9mcq0ks7wvj9mpmwhqnkcd11lhzf4fz6pkki8g5i7zhqrh";
+      rev = "7414f30365a342e1d89072d474a35913643b6eec";
+      sha256 = "19c9dv8dc72nnb1dx7wdraihpzf5b42wwq3c9vn0na8k1xy26h8y";
     };
     meta.homepage = "https://github.com/vim-syntastic/syntastic/";
   };
@@ -4851,17 +4971,29 @@ final: prev:
 
   tabnine-vim = buildVimPluginFrom2Nix {
     pname = "tabnine-vim";
-    version = "2021-01-14";
+    version = "2021-07-14";
     src = fetchFromGitHub {
       owner = "codota";
       repo = "tabnine-vim";
-      rev = "fa891e62903501f7eeb2f00f6574ec9684e1c4ee";
-      sha256 = "0cra1l31fcngp3iyn61rlngz4qx7zwk68h07bgp9w5gjx59a7npz";
+      rev = "e431d0425f4b132caef736ab682ba917edee30e9";
+      sha256 = "17d5qa5y809sss4rk5gl75fxbh04nychjgpag6xjd8fzwd51xmzr";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/codota/tabnine-vim/";
   };
 
+  taboo-vim = buildVimPluginFrom2Nix {
+    pname = "taboo-vim";
+    version = "2019-08-27";
+    src = fetchFromGitHub {
+      owner = "gcmt";
+      repo = "taboo.vim";
+      rev = "caf948187694d3f1374913d36f947b3f9fa1c22f";
+      sha256 = "06pizdnb3gr4pf5hrm3yfzkz99y9bi2vwqm85xknzgdvl1lisj99";
+    };
+    meta.homepage = "https://github.com/gcmt/taboo.vim/";
+  };
+
   tabpagebuffer-vim = buildVimPluginFrom2Nix {
     pname = "tabpagebuffer-vim";
     version = "2014-09-30";
@@ -4960,16 +5092,28 @@ final: prev:
 
   telescope-frecency-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-frecency-nvim";
-    version = "2021-04-17";
+    version = "2021-07-14";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope-frecency.nvim";
-      rev = "721300e3d6f4a7157a781014d3d69bb1c7b702a3";
-      sha256 = "1981lfk7xckvf2jmhnnrb58iwb1s3qzz84g52h4rvbjr7dbrr4xk";
+      rev = "5173a42d4a306567a90c41fb90ee660a3274d34f";
+      sha256 = "0baphixbfwq3fd3wcxf1fjgb7qwr7l0p6c8rpqf80msb0d7ikv77";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope-frecency.nvim/";
   };
 
+  telescope-fzf-native-nvim = buildVimPluginFrom2Nix {
+    pname = "telescope-fzf-native-nvim";
+    version = "2021-07-06";
+    src = fetchFromGitHub {
+      owner = "nvim-telescope";
+      repo = "telescope-fzf-native.nvim";
+      rev = "fe8c8d8cf7ff215ac83e1119cba87c016070b27e";
+      sha256 = "0kzxf3kzw45mlccp8z5zl3cfda4n5afymmdyir3kd248ll904jy1";
+    };
+    meta.homepage = "https://github.com/nvim-telescope/telescope-fzf-native.nvim/";
+  };
+
   telescope-fzf-writer-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-fzf-writer-nvim";
     version = "2021-04-16";
@@ -5009,24 +5153,24 @@ final: prev:
 
   telescope-z-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-z-nvim";
-    version = "2021-03-09";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope-z.nvim";
-      rev = "c14b6335f42bdda5100f135f18632bf6421c5f0e";
-      sha256 = "01y3b41ff00qi4g11pry73nd851dc5hjl039symhd2y0lf447j7h";
+      rev = "f5776dbd0c687af0862b2e4ee83c62c5f4a7271d";
+      sha256 = "08lcszv53d9mqhgdwkdygbnk5w0pyh0q6djxzqhnjb6qphibf3m6";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope-z.nvim/";
   };
 
   telescope-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-nvim";
-    version = "2021-07-03";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope.nvim";
-      rev = "38907ce7d74f26d123bfbb8ecf55bc9616b5ece5";
-      sha256 = "1dhjpcc6y6vxrlx9333hnjb6w20zmgs536s4kz6yzvn3w9mgk1kq";
+      rev = "664690029fdb302bee8d3f27a458383e8477add7";
+      sha256 = "1aaq9lmfxxxpirkbj3py76qnyfd1qhsq9msfw689zgzjqahk7zhz";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope.nvim/";
   };
@@ -5069,12 +5213,12 @@ final: prev:
 
   thesaurus_query-vim = buildVimPluginFrom2Nix {
     pname = "thesaurus_query-vim";
-    version = "2019-11-09";
+    version = "2021-07-08";
     src = fetchFromGitHub {
       owner = "ron89";
       repo = "thesaurus_query.vim";
-      rev = "830a20ec77780ebfe8d2a7e8c740ca4abb079f89";
-      sha256 = "0kfqpjwashwf084cbz6dmhirk42a4n8d1zj17i086by17nx7qn1g";
+      rev = "65e67a2dc3290d1fbed59db2a3f58944a73e7251";
+      sha256 = "1hak0ncsq43j0vblcgy9y4ylx2lazhij71sm3471cgini42klmgp";
     };
     meta.homepage = "https://github.com/ron89/thesaurus_query.vim/";
   };
@@ -5093,12 +5237,12 @@ final: prev:
 
   tlib_vim = buildVimPluginFrom2Nix {
     pname = "tlib_vim";
-    version = "2019-09-28";
+    version = "2021-07-17";
     src = fetchFromGitHub {
       owner = "tomtom";
       repo = "tlib_vim";
-      rev = "a071b6d41b20069a3520e0d101194a752968973b";
-      sha256 = "05swfvjyai32cbdpg10m3k2frkv017i1avf0nzilqavskvg04vi3";
+      rev = "70c4e222464020edc2809c932b488daaf891eeef";
+      sha256 = "1amx220nbh1s51z35pkhvl3110pbha5qj2rdgxvg8dbqha7py9fx";
     };
     meta.homepage = "https://github.com/tomtom/tlib_vim/";
   };
@@ -5117,12 +5261,12 @@ final: prev:
 
   todo-comments-nvim = buildVimPluginFrom2Nix {
     pname = "todo-comments-nvim";
-    version = "2021-07-04";
+    version = "2021-07-11";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "todo-comments.nvim";
-      rev = "d5f9bfc164c7ea306710d1a0a9d2db255387b1db";
-      sha256 = "1rrfbdhkgmnyxfk3fjmkk7f5sjdq9mrcw346lrjldgfih5qbaycj";
+      rev = "4a27e05519827ba1594d5ce3fde874040f005bfe";
+      sha256 = "0g6dxyd7vh89rg4xfdl20djfdcv1scq44mvxd3imzb7yhrhdpa95";
     };
     meta.homepage = "https://github.com/folke/todo-comments.nvim/";
   };
@@ -5140,14 +5284,26 @@ final: prev:
     meta.homepage = "https://github.com/freitass/todo.txt-vim/";
   };
 
+  tokyonight-nvim = buildVimPluginFrom2Nix {
+    pname = "tokyonight-nvim";
+    version = "2021-07-21";
+    src = fetchFromGitHub {
+      owner = "folke";
+      repo = "tokyonight.nvim";
+      rev = "0ee0bcf14d8c7c70081a0e9967c211121c4300c7";
+      sha256 = "0rkw544dzgyp76ag3zrh8d3n0mri5c0cjpy8mvbfpgyj87w18m8d";
+    };
+    meta.homepage = "https://github.com/folke/tokyonight.nvim/";
+  };
+
   traces-vim = buildVimPluginFrom2Nix {
     pname = "traces-vim";
-    version = "2021-06-16";
+    version = "2021-07-21";
     src = fetchFromGitHub {
       owner = "markonm";
       repo = "traces.vim";
-      rev = "e36a2e45791ef9078de781a781fec70e160044b0";
-      sha256 = "1qndaqs38mgkl15n895nzjc98h2cy4gjgr3r72cpwhn9qmzhi5zc";
+      rev = "896f2bed6b982ce5ca2c5bd454b8eb8af312e5a1";
+      sha256 = "1pwlw8gq0vd8zc3xqmp8r2s2wka9m9i85w08av59rmwnizk6vkza";
     };
     meta.homepage = "https://github.com/markonm/traces.vim/";
   };
@@ -5178,12 +5334,12 @@ final: prev:
 
   trouble-nvim = buildVimPluginFrom2Nix {
     pname = "trouble-nvim";
-    version = "2021-06-24";
+    version = "2021-07-16";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "trouble.nvim";
-      rev = "7de8bc46164ec1f787dee34b6843b61251b1ea91";
-      sha256 = "1ybv7vdvyvyx09zwwx1vw91ids13g24as0ag0jnw6ck95f12r7mn";
+      rev = "059ea2b999171f50019291ee776dd496799fdf3a";
+      sha256 = "06v2jvlw8rjlarx89kfb7ys8y0jkm1f7c4vnws60nfbqgp9c9k98";
     };
     meta.homepage = "https://github.com/folke/trouble.nvim/";
   };
@@ -5212,6 +5368,18 @@ final: prev:
     meta.homepage = "https://github.com/Quramy/tsuquyomi/";
   };
 
+  twilight-nvim = buildVimPluginFrom2Nix {
+    pname = "twilight-nvim";
+    version = "2021-07-17";
+    src = fetchFromGitHub {
+      owner = "folke";
+      repo = "twilight.nvim";
+      rev = "f722fa24411d0423a3d2daf6f1b5f8b11df9db2b";
+      sha256 = "0k2vbhs960h346w37ky2mpv1syzjxi19zl9zmnvlsy6annqd892x";
+    };
+    meta.homepage = "https://github.com/folke/twilight.nvim/";
+  };
+
   typescript-vim = buildVimPluginFrom2Nix {
     pname = "typescript-vim";
     version = "2020-12-08";
@@ -5574,12 +5742,12 @@ final: prev:
 
   vim-airline = buildVimPluginFrom2Nix {
     pname = "vim-airline";
-    version = "2021-06-07";
+    version = "2021-07-18";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline";
-      rev = "49cdcb7b3ea76ee19c737885c0ab19e64e564169";
-      sha256 = "17p0j9i6ylns66cx6qw4266yd6al1gvmran3k4v2mhjlynf5c4s3";
+      rev = "b861f9d2483a8b066f7b5b4dbae8990ff21455c5";
+      sha256 = "0rz7p95ks4ymdwz7aqahc782msdz70qx25807cwvqh1gc9x887vq";
     };
     meta.homepage = "https://github.com/vim-airline/vim-airline/";
   };
@@ -5598,12 +5766,12 @@ final: prev:
 
   vim-airline-themes = buildVimPluginFrom2Nix {
     pname = "vim-airline-themes";
-    version = "2021-05-18";
+    version = "2021-07-13";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline-themes";
-      rev = "531bcc9e5a4cb1b1fb4dec8face230bf3d205ac7";
-      sha256 = "05yapm3g9rj7k69dhlm7hspakbczwwlbx1lcdydvkx639ka7j09d";
+      rev = "97cf3e6e638f936187d5f6e9b5eb1bdf0a4df256";
+      sha256 = "0cbxjb1q7xlxykzq4ab4n3ny768ysf97f7h7d9spfmw286j3c2wi";
     };
     meta.homepage = "https://github.com/vim-airline/vim-airline-themes/";
   };
@@ -5622,12 +5790,12 @@ final: prev:
 
   vim-android = buildVimPluginFrom2Nix {
     pname = "vim-android";
-    version = "2021-05-28";
+    version = "2021-07-10";
     src = fetchFromGitHub {
       owner = "hsanson";
       repo = "vim-android";
-      rev = "520e29d4dd2c4418e246bc28a3383fefdf501cd2";
-      sha256 = "13kdbp6542k2g2vnzvfrijyc3qmkfysn4wyrsq95bai4pqaipraf";
+      rev = "9be0a3c46a45c7a790022e5e3e293635469446fb";
+      sha256 = "16xgidkd2v2g5zljfpdx82nai7cxq4nzw1irdfsdllv4ns9q27si";
     };
     meta.homepage = "https://github.com/hsanson/vim-android/";
   };
@@ -5826,12 +5994,12 @@ final: prev:
 
   vim-capslock = buildVimPluginFrom2Nix {
     pname = "vim-capslock";
-    version = "2019-11-13";
+    version = "2021-07-13";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-capslock";
-      rev = "84c9e467a7b8e5aabf33674ed17c6356cf98777c";
-      sha256 = "1c2fr8s9im3vxrszsrzm6wvad6disbdslmq6lqdp4603ialy4kja";
+      rev = "a910e686986b239a7885e67ab6914638f88e914b";
+      sha256 = "0aiqs4m5vfc22lcjkb2iphpb2qi7bz994lbjr2frsb8g8h508h18";
     };
     meta.homepage = "https://github.com/tpope/vim-capslock/";
   };
@@ -5874,12 +6042,12 @@ final: prev:
 
   vim-clap = buildVimPluginFrom2Nix {
     pname = "vim-clap";
-    version = "2021-07-06";
+    version = "2021-07-21";
     src = fetchFromGitHub {
       owner = "liuchengxu";
       repo = "vim-clap";
-      rev = "7b4d7f9f140bbb0860b37d23a16d6bb20797c06a";
-      sha256 = "04vws8szlynv0s35xs3w98li89wd48ps6hlssscmk59dmdmjg1m4";
+      rev = "2e287bd7e73198408d73b7183e3019a3aff6c19b";
+      sha256 = "1n1hipxim9d1shh9ch414yy15vdr8yc5ppgk7msv6zzgsw10qyaw";
     };
     meta.homepage = "https://github.com/liuchengxu/vim-clap/";
   };
@@ -6160,6 +6328,18 @@ final: prev:
     meta.homepage = "https://github.com/kristijanhusak/vim-dadbod-completion/";
   };
 
+  vim-dadbod-ui = buildVimPluginFrom2Nix {
+    pname = "vim-dadbod-ui";
+    version = "2021-05-12";
+    src = fetchFromGitHub {
+      owner = "kristijanhusak";
+      repo = "vim-dadbod-ui";
+      rev = "09fb2f51dcd022a6be20b48a730df493f4b3ca2d";
+      sha256 = "1bsy8illa9xsawx6lfs67y2xri38fpxdb4xz25ajy43snls41say";
+    };
+    meta.homepage = "https://github.com/kristijanhusak/vim-dadbod-ui/";
+  };
+
   vim-dasht = buildVimPluginFrom2Nix {
     pname = "vim-dasht";
     version = "2020-07-11";
@@ -6198,12 +6378,12 @@ final: prev:
 
   vim-devicons = buildVimPluginFrom2Nix {
     pname = "vim-devicons";
-    version = "2021-05-13";
+    version = "2021-07-16";
     src = fetchFromGitHub {
       owner = "ryanoasis";
       repo = "vim-devicons";
-      rev = "4c2df59e37b6680e0ec17b543b11a405dc40262c";
-      sha256 = "0knpfl0lwiy0w2f9qd3gz3yl03dqzn6fllv0isl0iz24csya6v2h";
+      rev = "0a11dae811e6c8b939fe80aeb750469f8ca44d67";
+      sha256 = "07lgjzi10h1gfvr2ij1pc4qxj63n4bg3jvj01ilj6yas56a3hk09";
     };
     meta.homepage = "https://github.com/ryanoasis/vim-devicons/";
   };
@@ -6558,12 +6738,12 @@ final: prev:
 
   vim-flake8 = buildVimPluginFrom2Nix {
     pname = "vim-flake8";
-    version = "2021-03-29";
+    version = "2021-07-06";
     src = fetchFromGitHub {
       owner = "nvie";
       repo = "vim-flake8";
-      rev = "719cc31e2d07021906cc6471b7d7b1863d2b6acf";
-      sha256 = "0514gm0r36zclhzjckxnb3v9y8hl85iddjldh0irlagfwa7by773";
+      rev = "ddceec6c457fd59bc2a9321cbf817e42aa4bfd86";
+      sha256 = "0w0g0wjikvvah6fckay2slrcl7zh9f199safhfs875g6f8halj6g";
     };
     meta.homepage = "https://github.com/nvie/vim-flake8/";
   };
@@ -6582,12 +6762,12 @@ final: prev:
 
   vim-floaterm = buildVimPluginFrom2Nix {
     pname = "vim-floaterm";
-    version = "2021-07-03";
+    version = "2021-07-14";
     src = fetchFromGitHub {
       owner = "voldikss";
       repo = "vim-floaterm";
-      rev = "729f932a31c5cfa7dd43d25d1adfcf50feee2cc2";
-      sha256 = "1x4azjsc53191ylijagxpiidad0cgiaxyq7bpg1nx94yg8vcnp3y";
+      rev = "daf9389e827dd19d804ffaad19cc8b64e389da6c";
+      sha256 = "0kcjfi61md9n0fgnypamvqsc9k4mykr9wx978qna2xjb19vfkvad";
     };
     meta.homepage = "https://github.com/voldikss/vim-floaterm/";
   };
@@ -6642,12 +6822,12 @@ final: prev:
 
   vim-fugitive = buildVimPluginFrom2Nix {
     pname = "vim-fugitive";
-    version = "2021-07-05";
+    version = "2021-07-17";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fugitive";
-      rev = "b498607aa79cc7099d02c30ae72812c245cc7091";
-      sha256 = "1g20y3p5f99w20fkf2bfsliy9p5isml04ybxf8mmgzivcy1wpbrj";
+      rev = "de6495ae846b2c5913fa85d5464c036c0acdfa34";
+      sha256 = "184cbh2jxwpp4zgvlfhs4qx1mr4vyq5vvv6lvk8lcng40dxfr9fg";
     };
     meta.homepage = "https://github.com/tpope/vim-fugitive/";
   };
@@ -6690,12 +6870,12 @@ final: prev:
 
   vim-git = buildVimPluginFrom2Nix {
     pname = "vim-git";
-    version = "2021-07-02";
+    version = "2021-07-10";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-git";
-      rev = "71eba9bbba9c00337dbd132cbc12b1952daf0d29";
-      sha256 = "161a546b7gx22j42djxbxirs34pis0kgwz71glqqj6zr32rzapfm";
+      rev = "75047b7d812cbe182ee04f0956bb31ba7efd46b0";
+      sha256 = "00hz040ar9ka3mcf2pgjc6iwznh7baqi6q09xkpr0pnjhm9k0bci";
     };
     meta.homepage = "https://github.com/tpope/vim-git/";
   };
@@ -6714,12 +6894,12 @@ final: prev:
 
   vim-gitgutter = buildVimPluginFrom2Nix {
     pname = "vim-gitgutter";
-    version = "2021-06-08";
+    version = "2021-07-12";
     src = fetchFromGitHub {
       owner = "airblade";
       repo = "vim-gitgutter";
-      rev = "0f98634b92da9a35580b618c11a6d2adc42d9f90";
-      sha256 = "0l1f98zfmxq8xi2ii31ih0mbq5yilpc0l61qbprs1g5h5p4azjy8";
+      rev = "7d9b7125ff2533f6c520573f54e91db2f13a44b0";
+      sha256 = "1ckz2b7y6y483d0ignkv8mm0xf9jbs8k3srp50m7sj24nsdadb1v";
     };
     meta.homepage = "https://github.com/airblade/vim-gitgutter/";
   };
@@ -7207,12 +7387,12 @@ final: prev:
 
   vim-jinja = buildVimPluginFrom2Nix {
     pname = "vim-jinja";
-    version = "2016-11-16";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "lepture";
       repo = "vim-jinja";
-      rev = "8d330a7aaf0763d080dc82204b4aaba6ac0605c6";
-      sha256 = "1n62ga02rcj7jjgzvwr46pckj59dc1zqahjgampjcwdd8vf4mg3q";
+      rev = "2f0eeefe583ea477cb7605f972d57d7d5e55e13f";
+      sha256 = "0r8508h9s2bikmv3wvw4iaq3j8i5n564k7s06aqx9j79i16asn22";
     };
     meta.homepage = "https://github.com/lepture/vim-jinja/";
   };
@@ -7460,12 +7640,12 @@ final: prev:
 
   vim-lsp = buildVimPluginFrom2Nix {
     pname = "vim-lsp";
-    version = "2021-06-16";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "prabirshrestha";
       repo = "vim-lsp";
-      rev = "fb0a72306e1fc42c1ce8909aa1e420ddfccf6fbf";
-      sha256 = "0dzy7cvpmzvx6z5pifzj4y7biln5gcn4iic35ha58ixwgwcw784m";
+      rev = "7ba553effb021293c9ff5176b91e76da71797825";
+      sha256 = "1phfqzn94m2j7g10aifh12a4gyyrhqnj1vn2bpdp29lpm1n179yg";
     };
     meta.homepage = "https://github.com/prabirshrestha/vim-lsp/";
   };
@@ -7496,12 +7676,12 @@ final: prev:
 
   vim-maktaba = buildVimPluginFrom2Nix {
     pname = "vim-maktaba";
-    version = "2021-05-29";
+    version = "2021-07-17";
     src = fetchFromGitHub {
       owner = "google";
       repo = "vim-maktaba";
-      rev = "2b5565881b31ed4e7ac32b4903827ec9c164216d";
-      sha256 = "13nzkqhyz8jydrwprw06jqcx3w37xv0qdq0809gx748kfvh1dznw";
+      rev = "4e4404dffbd99159af9cfe816d13a6e69aadcee2";
+      sha256 = "1a1k27gvsd2ssnw3w8b29z3q8z2w2jxgcwpx5gd6djk1id26rhb6";
     };
     meta.homepage = "https://github.com/google/vim-maktaba/";
   };
@@ -7569,12 +7749,12 @@ final: prev:
 
   vim-matchup = buildVimPluginFrom2Nix {
     pname = "vim-matchup";
-    version = "2021-07-05";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "andymass";
       repo = "vim-matchup";
-      rev = "05f4962c64c5dcd720b8cf5f7af777de33f2fa43";
-      sha256 = "10nfiban4ihsix2zf4qp38mcdmlz3zb6n01n5wkgz9yga28y9jxm";
+      rev = "61802ad25f303dc37f575cbed9b902605353db49";
+      sha256 = "15c8y5rfsnmx4dm01advvax8flkibkg60lbs8x0xgyzfcqjzhl14";
     };
     meta.homepage = "https://github.com/andymass/vim-matchup/";
   };
@@ -7653,12 +7833,12 @@ final: prev:
 
   vim-move = buildVimPluginFrom2Nix {
     pname = "vim-move";
-    version = "2020-07-29";
+    version = "2021-07-09";
     src = fetchFromGitHub {
       owner = "matze";
       repo = "vim-move";
-      rev = "1460aa915c521864c926aa51fe20bf6bb8eaa065";
-      sha256 = "0sbdd1z8nlwpac1n4234pnczavxr1kazvj86xp4a8aa7vggdm9xa";
+      rev = "6442747a3d3084e3c1214388192b8308fcf391b8";
+      sha256 = "1acmaabzqc01gvnxs8jfpiwmgyrd4d20p3lm3g2xsg5zv1l67hbf";
     };
     meta.homepage = "https://github.com/matze/vim-move/";
   };
@@ -7689,12 +7869,12 @@ final: prev:
 
   vim-mundo = buildVimPluginFrom2Nix {
     pname = "vim-mundo";
-    version = "2021-03-25";
+    version = "2021-07-13";
     src = fetchFromGitHub {
       owner = "simnalamburt";
       repo = "vim-mundo";
-      rev = "c6dcea90166750bb5ed40321749966b1a8020a1a";
-      sha256 = "1bd9xab96m2j6zcp6bh7k958wj95m8w40hczmn2qzpq3cvpy8nb0";
+      rev = "8b4bccebf7a16938c77073983d643ba22aa04079";
+      sha256 = "11livwi2pvnrxj7mildh46a6rli6hibpbffc9a5q6vxkvn9s6v29";
     };
     meta.homepage = "https://github.com/simnalamburt/vim-mundo/";
   };
@@ -7891,6 +8071,18 @@ final: prev:
     meta.homepage = "https://github.com/jceb/vim-orgmode/";
   };
 
+  vim-ormolu = buildVimPluginFrom2Nix {
+    pname = "vim-ormolu";
+    version = "2020-11-25";
+    src = fetchFromGitHub {
+      owner = "sdiehl";
+      repo = "vim-ormolu";
+      rev = "edbeb0135692345b088182963e9b229fe2235ac0";
+      sha256 = "03srdix06dhz4b8g9akx448dw2rjbwj840xg7p9c5bq8kbmsjy8x";
+    };
+    meta.homepage = "https://github.com/sdiehl/vim-ormolu/";
+  };
+
   vim-osc52 = buildVimPluginFrom2Nix {
     pname = "vim-osc52";
     version = "2020-09-19";
@@ -7977,12 +8169,12 @@ final: prev:
 
   vim-pandoc-syntax = buildVimPluginFrom2Nix {
     pname = "vim-pandoc-syntax";
-    version = "2021-03-10";
+    version = "2021-07-06";
     src = fetchFromGitHub {
       owner = "vim-pandoc";
       repo = "vim-pandoc-syntax";
-      rev = "aba6b5596cf0e879a83a2aa5edc93e5e5753bea8";
-      sha256 = "0hgzmfcyl3qhdmyyxdaynlm7psk164v8xg5j1kvdaxxgj4lwbnig";
+      rev = "5056e635ecf406e65d7d28651bab55600dd18741";
+      sha256 = "0mzvknzk42x5h2p3l9gmmxhbardfkrirr8wzfx460cm5daps6j2q";
     };
     meta.homepage = "https://github.com/vim-pandoc/vim-pandoc-syntax/";
   };
@@ -8097,12 +8289,12 @@ final: prev:
 
   vim-polyglot = buildVimPluginFrom2Nix {
     pname = "vim-polyglot";
-    version = "2021-06-27";
+    version = "2021-07-08";
     src = fetchFromGitHub {
       owner = "sheerun";
       repo = "vim-polyglot";
-      rev = "4f5388350be1052f610b830c8fce8fbc17370ec6";
-      sha256 = "04cljqrywz3y3r336ahri2b2jig9a6pvxljkkjnlssgjlx0azvv9";
+      rev = "554a6ac7575f87b5b85d1b2bf60e7071c4164cbc";
+      sha256 = "0qh3gzvv3y4fjjk9cqz8nqqh87181rq9pxp4j4ly52jpk7hca7qc";
     };
     meta.homepage = "https://github.com/sheerun/vim-polyglot/";
   };
@@ -8131,6 +8323,18 @@ final: prev:
     meta.homepage = "https://github.com/haya14busa/vim-poweryank/";
   };
 
+  vim-prettier = buildVimPluginFrom2Nix {
+    pname = "vim-prettier";
+    version = "2021-07-21";
+    src = fetchFromGitHub {
+      owner = "prettier";
+      repo = "vim-prettier";
+      rev = "0e61e4a5b55d2740aa118db91a6671dcb11307e8";
+      sha256 = "0d83lx6kfpsi3d4q9wz8zwsgdn0vn16psqyngml6wspjyibh6pnf";
+    };
+    meta.homepage = "https://github.com/prettier/vim-prettier";
+  };
+
   vim-prettyprint = buildVimPluginFrom2Nix {
     pname = "vim-prettyprint";
     version = "2016-07-16";
@@ -8205,12 +8409,12 @@ final: prev:
 
   vim-puppet = buildVimPluginFrom2Nix {
     pname = "vim-puppet";
-    version = "2021-01-30";
+    version = "2021-07-18";
     src = fetchFromGitHub {
       owner = "rodjek";
       repo = "vim-puppet";
-      rev = "b282072eb145c7719319bee1963c33ad876b0cea";
-      sha256 = "1m6zbyg5hh3rhwq36836ldwhgcsmh4bl0lz5g4nzpc2ch83crrn8";
+      rev = "7bb7586896b7afe6e6f26bcbaf70ad8517d98018";
+      sha256 = "1mqnawfpg23rwjp3zpz85s3dpspcl8zrh9dymv5p0pqbn27mlf5n";
     };
     meta.homepage = "https://github.com/rodjek/vim-puppet/";
   };
@@ -8229,12 +8433,12 @@ final: prev:
 
   vim-qf = buildVimPluginFrom2Nix {
     pname = "vim-qf";
-    version = "2021-06-08";
+    version = "2021-07-20";
     src = fetchFromGitHub {
       owner = "romainl";
       repo = "vim-qf";
-      rev = "4fe7e33a514874692d6897edd1acaaa46d9fb646";
-      sha256 = "054p9f3a3yljng3r51asgyq2ifmmrr35ws5f8dv8ssmby2f7an1l";
+      rev = "65f115c350934517382ae45198a74232a9069c2a";
+      sha256 = "0pylxkmhcanks59imah3q2xyn8lp5735xm17p13yx9vx90779nwp";
     };
     meta.homepage = "https://github.com/romainl/vim-qf/";
   };
@@ -8325,12 +8529,12 @@ final: prev:
 
   vim-rhubarb = buildVimPluginFrom2Nix {
     pname = "vim-rhubarb";
-    version = "2021-04-15";
+    version = "2021-07-16";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-rhubarb";
-      rev = "2590324d7fdaf0c6311fad4ee2a2878acaaec42d";
-      sha256 = "0ljlkzy2r8dzqkcl9pbgshr7swdcdbbxcgfvvmyxrw7swfx1srk9";
+      rev = "b4aad6dc43660db554bba2942026fb9965f1a45e";
+      sha256 = "04ckpl3q1k4l530fhf5srbklfqdz4rfrcapwsa92n4bwskfxbnsp";
     };
     meta.homepage = "https://github.com/tpope/vim-rhubarb/";
   };
@@ -8361,12 +8565,12 @@ final: prev:
 
   vim-ruby = buildVimPluginFrom2Nix {
     pname = "vim-ruby";
-    version = "2021-06-12";
+    version = "2021-07-18";
     src = fetchFromGitHub {
       owner = "vim-ruby";
       repo = "vim-ruby";
-      rev = "a006f67d18ce0ed6ff75c98b266eaa606dfcec30";
-      sha256 = "0dhkyfignmcv9jwrszk37k7l8h2ivbv3krz5xwk17fbdd2y7jwz2";
+      rev = "482e2cec5a742920eddf644f2f1efcb15f03967c";
+      sha256 = "18b3hhb1sfgip80dp7wicrsqs59narj49qlmpnfhsy29imsxzb72";
     };
     meta.homepage = "https://github.com/vim-ruby/vim-ruby/";
   };
@@ -8613,12 +8817,12 @@ final: prev:
 
   vim-sneak = buildVimPluginFrom2Nix {
     pname = "vim-sneak";
-    version = "2021-07-03";
+    version = "2021-07-11";
     src = fetchFromGitHub {
       owner = "justinmk";
       repo = "vim-sneak";
-      rev = "51c21ee1ffeea132104da619c9643e61e337e427";
-      sha256 = "1da9b5c15sm8cacfwkggg7kl61vxk94qsamanaaz776xlsj0b9z0";
+      rev = "95374ad3e4b5ef902854e8f4bcfa9a7a31a91d71";
+      sha256 = "0ns80kjirk72l5lapl7m32ybyr5q71p2mr8a45ihh1k2dlc2wv06";
     };
     meta.homepage = "https://github.com/justinmk/vim-sneak/";
   };
@@ -8637,12 +8841,12 @@ final: prev:
 
   vim-snippets = buildVimPluginFrom2Nix {
     pname = "vim-snippets";
-    version = "2021-06-28";
+    version = "2021-07-16";
     src = fetchFromGitHub {
       owner = "honza";
       repo = "vim-snippets";
-      rev = "749460bc5b05b1f4015a041508031d99b1b24982";
-      sha256 = "0f1n0gg8asz0sg81dwc3gg5nl5j142qyd960f7fzdiv7grv7l0xk";
+      rev = "f1b72d866d6564075a8b0da1f179c0b7de723131";
+      sha256 = "1vfpf0mjwk519gdly44f0ixc5y4609j33fsjsfzwgcmp3xgmf081";
     };
     meta.homepage = "https://github.com/honza/vim-snippets/";
   };
@@ -8721,12 +8925,12 @@ final: prev:
 
   vim-startuptime = buildVimPluginFrom2Nix {
     pname = "vim-startuptime";
-    version = "2021-07-04";
+    version = "2021-07-11";
     src = fetchFromGitHub {
       owner = "dstein64";
       repo = "vim-startuptime";
-      rev = "d4cc839f4a7c8fc0b7fbf8ec6a11ef1c1be846e1";
-      sha256 = "05yz4cpxx7n6ggkm8n9s0q387syllbn8s8vn4fwchnml4jdqigfq";
+      rev = "e82e635e1e188b1d00fa9ed3de21794c07ea1445";
+      sha256 = "1623rkqni2xbz6jl8cs848db0gydnpsp0nxss6rg2cp9l813k68f";
     };
     meta.homepage = "https://github.com/dstein64/vim-startuptime/";
   };
@@ -8853,12 +9057,12 @@ final: prev:
 
   vim-terraform = buildVimPluginFrom2Nix {
     pname = "vim-terraform";
-    version = "2021-07-02";
+    version = "2021-07-10";
     src = fetchFromGitHub {
       owner = "hashivim";
       repo = "vim-terraform";
-      rev = "37590260914178e04b46d1248e444e718da519c6";
-      sha256 = "13cvpb2fkqsj4m8lz6b7znmgayaf1sadysn07z2x2fs7ca856hrg";
+      rev = "f0b17ac9f1bbdf3a29dba8b17ab429b1eed5d443";
+      sha256 = "0j87i6kxafwl8a8szy2gzv7d0qhzwynd93iw8k0i42jnpqm8rp3a";
     };
     meta.homepage = "https://github.com/hashivim/vim-terraform/";
   };
@@ -8878,12 +9082,12 @@ final: prev:
 
   vim-test = buildVimPluginFrom2Nix {
     pname = "vim-test";
-    version = "2021-06-17";
+    version = "2021-07-08";
     src = fetchFromGitHub {
       owner = "vim-test";
       repo = "vim-test";
-      rev = "237c463f40f7b7fe2e4e01518e62bfc00c85ff32";
-      sha256 = "1v5kfccjls8bi7h3gs1nq5h68n6d2wc79hqrwkvlvbp2sqwmvrz3";
+      rev = "849d378a499ada59d3326c166d44f0a118e4bdbf";
+      sha256 = "161a3nh1ggd2ff2d6bllssfds6kcab3z7sckr2q2bbipggl33lkd";
     };
     meta.homepage = "https://github.com/vim-test/vim-test/";
   };
@@ -9094,24 +9298,24 @@ final: prev:
 
   vim-twiggy = buildVimPluginFrom2Nix {
     pname = "vim-twiggy";
-    version = "2021-03-19";
+    version = "2021-07-16";
     src = fetchFromGitHub {
       owner = "sodapopcan";
       repo = "vim-twiggy";
-      rev = "cf8aa913329991bfeaa1cabab4bbd8889b0f0790";
-      sha256 = "0j0h95xhb5c59qyx8gc1yrcnsjxffbnycya6wnl7axd71iawwgh8";
+      rev = "cd7286702319d676c622a5f5891dc68563bf6ad5";
+      sha256 = "1xmcnhbny74hr0zciy55gq8c8agds2x1xvdsr1wrghkcr2k15w46";
     };
     meta.homepage = "https://github.com/sodapopcan/vim-twiggy/";
   };
 
   vim-ultest = buildVimPluginFrom2Nix {
     pname = "vim-ultest";
-    version = "2021-07-05";
+    version = "2021-07-18";
     src = fetchFromGitHub {
       owner = "rcarriga";
       repo = "vim-ultest";
-      rev = "43ec7b40a83fcde104d3e5e69a2c112f9dc52325";
-      sha256 = "1q2rcqllip1raay9nj2cacn6vsairrywg7yxh783zf13n9bmr5vb";
+      rev = "06f965a62c32906f220c37e7b758a275d6a992f6";
+      sha256 = "0zgpp6g29n1kb0qi6n84i1d540g0xhw5bzj8kp5xsh5wlvn9h4fk";
     };
     meta.homepage = "https://github.com/rcarriga/vim-ultest/";
   };
@@ -9178,12 +9382,12 @@ final: prev:
 
   vim-visual-multi = buildVimPluginFrom2Nix {
     pname = "vim-visual-multi";
-    version = "2021-07-01";
+    version = "2021-07-11";
     src = fetchFromGitHub {
       owner = "mg979";
       repo = "vim-visual-multi";
-      rev = "f994695813ebaecc9e37c7ea216c65d9cd659767";
-      sha256 = "11n0g6d1yn38lrshlbzc28sfn1qghsjd2nmxzbp86vwm8dysxm5i";
+      rev = "46c082aad84fd83c3c3d962c65afa800c2c33d85";
+      sha256 = "1i3vz8c2v0ygk2m512phkpb8hcz1jj60k583yjkra9l78y7dj7y5";
     };
     meta.homepage = "https://github.com/mg979/vim-visual-multi/";
   };
@@ -9322,24 +9526,24 @@ final: prev:
 
   vim-xkbswitch = buildVimPluginFrom2Nix {
     pname = "vim-xkbswitch";
-    version = "2021-05-08";
+    version = "2021-07-12";
     src = fetchFromGitHub {
       owner = "lyokha";
       repo = "vim-xkbswitch";
-      rev = "cd88d9bc34ca1df6bd06a9e427350d45a6c2931c";
-      sha256 = "0gf0xla3jm8cp4j5mldn79kfbd3zlwil3wdgdvsx8w3kybi6dap1";
+      rev = "df53e9c5fce91a84e1d6e8722956a01595d16c40";
+      sha256 = "0zndnmdmxlr6114d29sc1q8fc0s2zlsrj1v28gp0sgnim1rmavfp";
     };
     meta.homepage = "https://github.com/lyokha/vim-xkbswitch/";
   };
 
   vim-xtabline = buildVimPluginFrom2Nix {
     pname = "vim-xtabline";
-    version = "2021-06-10";
+    version = "2021-07-19";
     src = fetchFromGitHub {
       owner = "mg979";
       repo = "vim-xtabline";
-      rev = "1dbf84a3095eff9bd0d1e49824dddac56c378ed9";
-      sha256 = "16qwp8kk3c2lzfnmzkzi71ilrcssga17kjiphskph5kl35igr16v";
+      rev = "e1be98dc050b8c5196e324cb4236e8c4b44483e6";
+      sha256 = "12gr0v2r91q75v1wfrskp330zlyibshngs11if9nlxpnhgz8f6dn";
     };
     meta.homepage = "https://github.com/mg979/vim-xtabline/";
   };
@@ -9526,12 +9730,12 @@ final: prev:
 
   vimspector = buildVimPluginFrom2Nix {
     pname = "vimspector";
-    version = "2021-07-04";
+    version = "2021-07-13";
     src = fetchFromGitHub {
       owner = "puremourning";
       repo = "vimspector";
-      rev = "da39c4955c2ad0ffa28f5cba81651b568697629c";
-      sha256 = "02c7kxfalp52k2ij5r6hjnvqd2azkhx9sglqr85bc53rvh1rgi7y";
+      rev = "9c806d2a014a21ef4bce49a18791d04e1a66bdf7";
+      sha256 = "0imqzcdw28d5nmv2837x1m07pmir1yh9zbf52nsnvibw09z26kg8";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/puremourning/vimspector/";
@@ -9539,12 +9743,12 @@ final: prev:
 
   vimtex = buildVimPluginFrom2Nix {
     pname = "vimtex";
-    version = "2021-07-05";
+    version = "2021-07-18";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "3807da1c530e46fb6a633a2268f6e435b16b657b";
-      sha256 = "0l05fkisvcq9p9jwbxpbb9svwi0h4gp84d7dc4zlkrin1jwnnxyd";
+      rev = "830659752b8914f6b4567a00448901246e4d1841";
+      sha256 = "1zdi1kblk03gwifpg1nanq4ppn9xw6af92l3li86ziw89bv3bad9";
     };
     meta.homepage = "https://github.com/lervag/vimtex/";
   };
@@ -9561,6 +9765,18 @@ final: prev:
     meta.homepage = "https://github.com/preservim/vimux/";
   };
 
+  vimway-lsp-diag-nvim = buildVimPluginFrom2Nix {
+    pname = "vimway-lsp-diag-nvim";
+    version = "2021-07-21";
+    src = fetchFromGitHub {
+      owner = "onsails";
+      repo = "vimway-lsp-diag.nvim";
+      rev = "dee2f59a45f72fb2ba0dd29cb06ed5357097ee07";
+      sha256 = "16da94g367sb07d1xn55cvyi48zjgjv2c1p7mzabpidm9c7r99pm";
+    };
+    meta.homepage = "https://github.com/onsails/vimway-lsp-diag.nvim/";
+  };
+
   vimwiki = buildVimPluginFrom2Nix {
     pname = "vimwiki";
     version = "2020-05-26";
@@ -9635,12 +9851,12 @@ final: prev:
 
   which-key-nvim = buildVimPluginFrom2Nix {
     pname = "which-key-nvim";
-    version = "2021-07-05";
+    version = "2021-07-06";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "which-key.nvim";
-      rev = "2d2954a1d05b4f074e022e64db9aa6093d439bb0";
-      sha256 = "0xpf889ijhrbnpjcky575k46nfh69m5dzcfnvw29vwhdikaz33ma";
+      rev = "dc9c3be7acae2a486c117f5a9f6ada62b2243336";
+      sha256 = "105fnr3qa64izllb9s4r6lsg5mfddiap784j7zz7gh3znpy43n3m";
     };
     meta.homepage = "https://github.com/folke/which-key.nvim/";
   };
@@ -9743,12 +9959,12 @@ final: prev:
 
   yats-vim = buildVimPluginFrom2Nix {
     pname = "yats-vim";
-    version = "2021-05-29";
+    version = "2021-07-10";
     src = fetchFromGitHub {
       owner = "HerringtonDarkholme";
       repo = "yats.vim";
-      rev = "7c5e526f1aac81e4913be72a5a891e8de38925bd";
-      sha256 = "1p3rgw1fx6ficzyk7ba9s22aj9xjsf50ipkx4bdmp4a2zskacqcp";
+      rev = "dfa61676a32d096aa05003ace3ba8b977c136e1f";
+      sha256 = "1mj35p5ym92qi4gjfnvfxqv328cgwp8sp2sldw54g6f6yxfzi37a";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/HerringtonDarkholme/yats.vim/";
diff --git a/nixpkgs/pkgs/misc/vim-plugins/overrides.nix b/nixpkgs/pkgs/misc/vim-plugins/overrides.nix
index e10cf541066c..a63d05441281 100644
--- a/nixpkgs/pkgs/misc/vim-plugins/overrides.nix
+++ b/nixpkgs/pkgs/misc/vim-plugins/overrides.nix
@@ -251,6 +251,14 @@ self: super: {
       '';
     });
 
+  fzf-checkout-vim = super.fzf-checkout-vim.overrideAttrs (old: {
+    # The plugin has a makefile which tries to run tests in a docker container.
+    # This prevents it.
+    prePatch = ''
+      rm Makefile
+    '';
+  });
+
   fzf-vim = super.fzf-vim.overrideAttrs (old: {
     dependencies = with self; [ fzfWrapper ];
   });
@@ -395,6 +403,14 @@ self: super: {
     dependencies = with self; [ ultisnips ];
   });
 
+  neogit = super.neogit.overrideAttrs (old: {
+    dependencies = with self; [ plenary-nvim ];
+  });
+
+  null-ls-nvim = super.null-ls-nvim.overrideAttrs (old: {
+    path = "null-ls.nvim";
+  });
+
   nvim-lsputils = super.nvim-lsputils.overrideAttrs (old: {
     dependencies = with self; [ popfix ];
   });
@@ -475,6 +491,12 @@ self: super: {
     dependencies = with self; [ telescope-nvim ];
   });
 
+  telescope-fzf-native-nvim = super.telescope-fzf-native-nvim.overrideAttrs (old: {
+    dependencies = with self; [ telescope-nvim ];
+    buildPhase = "make";
+    meta.platforms = lib.platforms.all;
+  });
+
   telescope-fzy-native-nvim = super.telescope-fzy-native-nvim.overrideAttrs (old: {
     dependencies = with self; [ telescope-nvim ];
     preFixup =
@@ -621,7 +643,7 @@ self: super: {
             libiconv
           ];
 
-          cargoSha256 = "sha256-hcbNjp9KLJO0RANOvtopvdiK0w9ESUXk0KOTPvVcCX4=";
+          cargoSha256 = "046c5w47isnz5l23kpk8zkbw312yp5dz9wq9dc2kmpklai71fc1a";
         };
       in
       ''
diff --git a/nixpkgs/pkgs/misc/vim-plugins/vim-plugin-names b/nixpkgs/pkgs/misc/vim-plugins/vim-plugin-names
index de93c6750e55..3f1963101cec 100644
--- a/nixpkgs/pkgs/misc/vim-plugins/vim-plugin-names
+++ b/nixpkgs/pkgs/misc/vim-plugins/vim-plugin-names
@@ -2,6 +2,7 @@
 aca/completion-tabnine
 AckslD/nvim-whichkey-setup.lua@main
 ackyshake/Spacegray.vim@main
+ahmedkhalf/lsp-rooter.nvim@main
 airblade/vim-gitgutter
 airblade/vim-rooter
 ajmwagar/vim-deus
@@ -136,6 +137,7 @@ esneider/YUNOcommit.vim
 euclidianAce/BetterLua.vim
 euclio/vim-markdown-composer
 f-person/git-blame.nvim
+famiu/feline.nvim
 farmergreg/vim-lastplace
 fatih/vim-go
 fcpg/vim-osc52
@@ -148,7 +150,9 @@ flazz/vim-colorschemes
 floobits/floobits-neovim
 folke/lsp-colors.nvim@main
 folke/todo-comments.nvim@main
+folke/tokyonight.nvim@main
 folke/trouble.nvim@main
+folke/twilight.nvim@main
 folke/which-key.nvim@main
 freitass/todo.txt-vim
 frigoeu/psc-ide-vim
@@ -157,6 +161,7 @@ fruit-in/vim-nong-theme
 fsharp/vim-fsharp
 fszymanski/deoplete-emoji
 garbas/vim-snipmate
+gcmt/taboo.vim
 gcmt/wildfire.vim
 gennaro-tedesco/nvim-peekup
 gentoo/gentoo-syntax
@@ -247,13 +252,15 @@ jiangmiao/auto-pairs
 jistr/vim-nerdtree-tabs
 jjo/vim-cue
 jlanzarotta/bufexplorer
+jlesquembre/nterm.nvim
 jnurmine/zenburn
 jonbri/vim-colorstepper
 jonsmithers/vim-html-template-literals
 joonty/vim-xdebug
 josa42/coc-lua
 josa42/vim-lightline-coc
-joshdick/onedark.vim
+jose-elias-alvarez/null-ls.nvim@main
+joshdick/onedark.vim@main
 jpalardy/vim-slime@main
 jparise/vim-graphql
 jparise/vim-phabricator
@@ -312,6 +319,7 @@ kristijanhusak/defx-icons
 kristijanhusak/deoplete-phpactor
 kristijanhusak/vim-carbon-now-sh
 kristijanhusak/vim-dadbod-completion
+kristijanhusak/vim-dadbod-ui
 kristijanhusak/vim-dirvish-git
 kristijanhusak/vim-hybrid-material
 kshenoy/vim-signature
@@ -419,6 +427,7 @@ ms-jpq/chadtree@chad
 mtikekar/vim-bsv
 mzlogin/vim-markdown-toc
 mzlogin/vim-smali
+nacro90/numb.nvim
 nanotech/jellybeans.vim
 natebosch/vim-lsc
 nathanaelkane/vim-indent-guides
@@ -477,6 +486,7 @@ nvim-lua/plenary.nvim
 nvim-lua/popup.nvim
 nvim-telescope/telescope-dap.nvim
 nvim-telescope/telescope-frecency.nvim
+nvim-telescope/telescope-fzf-native.nvim@main
 nvim-telescope/telescope-fzf-writer.nvim
 nvim-telescope/telescope-fzy-native.nvim
 nvim-telescope/telescope-symbols.nvim
@@ -494,7 +504,9 @@ ojroques/nvim-bufdel@main
 ojroques/vim-oscyank@main
 Olical/aniseed
 Olical/conjure
+olimorris/onedark.nvim
 onsails/lspkind-nvim
+onsails/vimway-lsp-diag.nvim
 OrangeT/vim-csharp
 osyo-manga/shabadou.vim
 osyo-manga/vim-anzu
@@ -526,6 +538,7 @@ preservim/tagbar
 preservim/vim-pencil
 preservim/vim-wordy
 preservim/vimux
+prettier/vim-prettier
 psliwka/vim-smoothie
 ptzz/lf.vim
 puremourning/vimspector
@@ -585,8 +598,10 @@ sakhnik/nvim-gdb
 saltstack/salt-vim
 samoshkin/vim-mergetool
 sbdchd/neoformat
+sdiehl/vim-ormolu
 sebastianmarkow/deoplete-rust
 SevereOverfl0w/deoplete-github
+Shatur/neovim-ayu
 shaunsingh/moonlight.nvim@pure-lua
 shaunsingh/nord.nvim
 sheerun/vim-polyglot
@@ -615,6 +630,7 @@ sickill/vim-pasta
 SidOfc/mkdx
 simnalamburt/vim-mundo
 simrat39/rust-tools.nvim
+simrat39/symbols-outline.nvim
 sindrets/diffview.nvim@main
 SirVer/ultisnips
 sjl/gundo.vim
@@ -629,6 +645,8 @@ steelsojka/completion-buffers
 steelsojka/pears.nvim
 stefandtw/quickfix-reflector.vim
 stephpy/vim-yaml
+stsewd/fzf-checkout.vim
+stevearc/aerial.nvim
 sunaku/vim-dasht
 sunjon/Shade.nvim
 svermeulen/vim-subversive
diff --git a/nixpkgs/pkgs/misc/vscode-extensions/default.nix b/nixpkgs/pkgs/misc/vscode-extensions/default.nix
index 19b816fbc77e..6507a603b86c 100644
--- a/nixpkgs/pkgs/misc/vscode-extensions/default.nix
+++ b/nixpkgs/pkgs/misc/vscode-extensions/default.nix
@@ -85,6 +85,23 @@ let
         };
       };
 
+      angular.ng-template = buildVscodeMarketplaceExtension {
+        mktplcRef = {
+          name = "ng-template";
+          publisher = "Angular";
+          version = "12.1.2";
+          sha256 = "sha256-fIHh1eRmu4zSgrtZr0XwLB+1Ad6a/0ABC55akGr0DOA=";
+        };
+        meta = with lib; {
+          changelog = "https://marketplace.visualstudio.com/items/Angular.ng-template/changelog";
+          description = "Editor services for Angular templates";
+          downloadPage = "https://marketplace.visualstudio.com/items?itemName=Angular.ng-template";
+          homepage = "https://github.com/angular/vscode-ng-language-service";
+          license = licenses.mit;
+          maintainers = with maintainers; [ ratsclub ];
+        };
+      };
+
       antfu.icons-carbon = buildVscodeMarketplaceExtension {
         mktplcRef = {
           name = "icons-carbon";
@@ -205,8 +222,8 @@ let
         mktplcRef = {
           name = "vscode-tailwindcss";
           publisher = "bradlc";
-          version = "0.6.6";
-          sha256 = "sha256-CRd+caKHFOXBnePr/LqNkzw0kRGYvNSkf4ecNgedpdA=";
+          version = "0.6.13";
+          sha256 = "098vrm28b7jpzk0c2d0cgxvdw4jsswzf18cx1m9jwsm1j40fp5f4";
         };
         meta = with lib; {
           license = licenses.mpl20;
@@ -270,8 +287,8 @@ let
         mktplcRef = {
           name = "bracket-pair-colorizer-2";
           publisher = "CoenraadS";
-          version = "0.2.0";
-          sha256 = "0nppgfbmw0d089rka9cqs3sbd5260dhhiipmjfga3nar9vp87slh";
+          version = "0.2.1";
+          sha256 = "0bfvzs4ac537zqhnqaa38jf4lhiy1fmqcv6lq89nnx8k963380z7";
         };
         meta = with lib; {
           license = licenses.mit;
@@ -335,6 +352,23 @@ let
         meta = { license = lib.licenses.mit; };
       };
 
+      divyanshuagrawal.competitive-programming-helper = buildVscodeMarketplaceExtension {
+        mktplcRef = {
+          name = "competitive-programming-helper";
+          publisher = "DivyanshuAgrawal";
+          version = "5.8.5";
+          sha256 = "25v2tdAX7fVl2B5nvOIKN9vP1G5rA0G67CiDQn9n9Uc=";
+        };
+        meta = with lib; {
+          changelog = "https://marketplace.visualstudio.com/items/DivyanshuAgrawal.competitive-programming-helper/changelog";
+          description = "Makes judging, compiling, and downloading problems for competitve programming easy. Also supports auto-submit for a few sites.";
+          downloadPage = "https://marketplace.visualstudio.com/items?itemName=DivyanshuAgrawal.competitive-programming-helper";
+          homepage = "https://github.com/agrawal-d/cph";
+          license = licenses.gpl3;
+          maintainers = with maintainers; [ arcticlimer ];
+        };
+      };
+
       donjayamanne.githistory = buildVscodeMarketplaceExtension {
         meta = with lib; {
           changelog = "https://marketplace.visualstudio.com/items/donjayamanne.githistory/changelog";
@@ -386,8 +420,8 @@ let
         mktplcRef = {
           name = "gitlens";
           publisher = "eamodio";
-          version = "11.5.1";
-          sha256 = "sha256-Ic7eT8WX2GDYIj/aTu1d4m+fgPtXe4YQx04G0awbwnM=";
+          version = "11.6.0";
+          sha256 = "sha256-JxCNE/IL/v94xWmhebsRZo1Gw+nSSpDgZ41ZGongGVI=";
         };
         meta = with lib; {
           changelog = "https://marketplace.visualstudio.com/items/eamodio.gitlens/changelog";
@@ -454,8 +488,8 @@ let
         mktplcRef = {
           name = "vscode-great-icons";
           publisher = "emmanuelbeziat";
-          version = "2.1.64";
-          sha256 = "sha256-qsL1vWiEAYeWkMDNSrr1yzg0QxroEQQeznoDL3Ujy/o=";
+          version = "2.1.79";
+          sha256 = "1cr1pxgxlfr643sfxbcr2xd53s1dnzcpacjj0ffkgizfda2psy78";
         };
         meta = with lib; {
           license = licenses.mit;
@@ -474,8 +508,8 @@ let
         mktplcRef = {
           name = "prettier-vscode";
           publisher = "esbenp";
-          version = "5.8.0";
-          sha256 = "0h7wc4pffyq1i8vpj4a5az02g2x04y7y1chilmcfmzg2w42xpby7";
+          version = "8.0.1";
+          sha256 = "017lqpmzjxq5f1zr49akcm9gfki0qq8v7pj7gks6a3szjdx16mnl";
         };
       };
 
@@ -497,6 +531,12 @@ let
       };
 
       foam.foam-vscode = buildVscodeMarketplaceExtension {
+        mktplcRef = {
+          name = "foam-vscode";
+          publisher = "foam";
+          version = "0.14.1";
+          sha256 = "sha256-w9xGkezS3A9z6sTk8WWgW7g8qYX6mJFfRV0lv5cu160=";
+        };
         meta = with lib; {
           changelog = "https://marketplace.visualstudio.com/items/foam.foam-vscode/changelog";
           description = "A personal knowledge management and sharing system for VSCode ";
@@ -505,12 +545,6 @@ let
           license = licenses.mit;
           maintainers = with maintainers; [ ratsclub ];
         };
-        mktplcRef = {
-          name = "foam-vscode";
-          publisher = "foam";
-          version = "0.13.7";
-          sha256 = "Y2pcd4iXPiuhJdD/9d+tbTJN18O4+kRMqUdOtbx8xy8=";
-        };
       };
 
       formulahendry.auto-close-tag = buildVscodeMarketplaceExtension {
@@ -776,8 +810,8 @@ let
         mktplcRef = {
           name = "svg";
           publisher = "jock";
-          version = "1.4.4";
-          sha256 = "0kn2ic7pgbd4rbvzpsxfwyiwxa1iy92l0h3jsppxc8gk8xbqm2nc";
+          version = "1.4.7";
+          sha256 = "04ghqg4s7g7yylmvbxzwzpnyy4zin2bwlgvflh18m77w4j0ckpiq";
         };
         meta = with lib; {
           license = licenses.mit;
@@ -824,8 +858,8 @@ let
         mktplcRef = {
           name = "magit";
           publisher = "kahole";
-          version = "0.6.15";
-          sha256 = "sha256-fRXm70FXnHduoywI4YC9ya6/J7wyd6EBzbnrcijBIbA=";
+          version = "0.6.18";
+          sha256 = "0sqzz5bbqqg60aypvwxcqnxrr72gmwfj9sv0amgkyaf60zg5sf7w";
         };
         meta = {
           license = lib.licenses.mit;
@@ -1096,8 +1130,8 @@ let
         mktplcRef = {
           name = "crates";
           publisher = "serayuzgur";
-          version = "0.5.3";
-          sha256 = "1xk7ayv590hsm3scqpyh6962kvgdlinnpkx0vapr7vs4y08dx72f";
+          version = "0.5.9";
+          sha256 = "0l26pyvw7n3bszf97yx6qps72acq112akg3q4jq5mvlibng1nwk0";
         };
         meta = {
           license = lib.licenses.mit;
@@ -1198,8 +1232,8 @@ let
         mktplcRef = {
           name = "svelte-vscode";
           publisher = "svelte";
-          version = "105.0.0";
-          sha256 = "sha256-my3RzwUW5MnajAbEnqxtrIR701XH+AKYLbnKD7ivASE=";
+          version = "105.3.0";
+          sha256 = "11plqsj3c4dv0xg2d76pxrcn382qr9wbh1lhln2x8mzv840icvwr";
         };
         meta = {
           license = lib.licenses.mit;
@@ -1210,8 +1244,8 @@ let
         mktplcRef = {
           name = "markdown-memo";
           publisher = "svsool";
-          version = "0.3.8";
-          sha256 = "eFiCCXxrOnXwJK1AOMfIDsPGsFG3ArLD1X/uAEH5lRY=";
+          version = "0.3.9";
+          sha256 = "sha256-BsKFHR3wkSRHS8QOi63vLwGj3T2CPzvqXhgtEOq6gJM=";
         };
         meta = with lib; {
           changelog = "https://marketplace.visualstudio.com/items/svsool.markdown-memo/changelog";
@@ -1252,8 +1286,8 @@ let
         mktplcRef = {
           name = "shellcheck";
           publisher = "timonwong";
-          version = "0.14.1";
-          sha256 = "sha256-X3ihMxANcqNLWl9oTZjCgwRt1uBsSN2BmC2D4dPRFLE=";
+          version = "0.14.4";
+          sha256 = "05z314sw9nqym3qlj7dcwm0fz1hb23xppzqn3nr2wcj17hs8zz4m";
         };
         nativeBuildInputs = [ jq ];
         postInstall = ''
@@ -1323,8 +1357,8 @@ let
         mktplcRef = {
           name = "vim";
           publisher = "vscodevim";
-          version = "1.11.3";
-          sha256 = "1smzsgcrkhghbnpy51gp28kh74l7y4s2m8pfxabb4ffb751254j0";
+          version = "1.21.5";
+          sha256 = "1v1xs1wcigisr6xip31i02cfryxrb157sla34y59pwlnhc5x1gny";
         };
         meta = {
           license = lib.licenses.mit;
@@ -1335,8 +1369,8 @@ let
         mktplcRef = {
           name = "vspacecode";
           publisher = "VSpaceCode";
-          version = "0.9.1";
-          sha256 = "sha256-/qJKYXR0DznqwF7XuJsz+OghIBzdWjm6dAlaRX4wdRU=";
+          version = "0.10.1";
+          sha256 = "sha256-H7SCC/ZhDswMQjLX+qpQa6A1N83MobJRPC4pyIbZ1kA=";
         };
         meta = {
           license = lib.licenses.mit;
@@ -1347,8 +1381,8 @@ let
         mktplcRef = {
           name = "whichkey";
           publisher = "VSpaceCode";
-          version = "0.8.5";
-          sha256 = "sha256-p5fukIfk/tZFQrkf6VuT4fjmeGtKAqHDh6r6ky847ks=";
+          version = "0.9.2";
+          sha256 = "sha256-f+t2d8iWW88OYzuYFxzQPnmFMgx/DELBywYhA8A/0EU=";
         };
         meta = {
           license = lib.licenses.mit;
diff --git a/nixpkgs/pkgs/misc/vscode-extensions/terraform/default.nix b/nixpkgs/pkgs/misc/vscode-extensions/terraform/default.nix
index 658495296bf6..e934f03b2095 100644
--- a/nixpkgs/pkgs/misc/vscode-extensions/terraform/default.nix
+++ b/nixpkgs/pkgs/misc/vscode-extensions/terraform/default.nix
@@ -3,19 +3,19 @@ vscode-utils.buildVscodeMarketplaceExtension rec {
   mktplcRef = {
     name = "terraform";
     publisher = "hashicorp";
-    version = "2.13.0";
+    version = "2.13.2";
   };
 
   vsix = fetchurl {
     name = "${mktplcRef.publisher}-${mktplcRef.name}.zip";
     url = "https://github.com/hashicorp/vscode-terraform/releases/download/v${mktplcRef.version}/${mktplcRef.name}-${mktplcRef.version}.vsix";
-    sha256 = "1wc4jl4h3ja4ivynf20yxzwqssi6yd7alvqvcjrkksic98480qcz";
+    sha256 = "0h7c6p2dcwsg7wlp49p2fsq0f164pzkx65929imd1m2df77aykqa";
   };
 
   patches = [ ./fix-terraform-ls.patch ];
 
   postPatch = ''
-    substituteInPlace out/extension.js --replace TERRAFORM-LS-PATH ${terraform-ls}/bin/terraform-ls
+    substituteInPlace out/clientHandler.js --replace TERRAFORM-LS-PATH ${terraform-ls}/bin/terraform-ls
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/misc/vscode-extensions/terraform/fix-terraform-ls.patch b/nixpkgs/pkgs/misc/vscode-extensions/terraform/fix-terraform-ls.patch
index 95e8d92da332..9153276d3674 100644
--- a/nixpkgs/pkgs/misc/vscode-extensions/terraform/fix-terraform-ls.patch
+++ b/nixpkgs/pkgs/misc/vscode-extensions/terraform/fix-terraform-ls.patch
@@ -1,17 +1,30 @@
+diff --git a/out/clientHandler.js b/out/clientHandler.js
+index 7f9716d..a543d60 100644
+--- a/out/clientHandler.js
++++ b/out/clientHandler.js
+@@ -33,8 +33,7 @@ class ClientHandler {
+             this.reporter.sendTelemetryEvent('usePathToBinary');
+         }
+         else {
+-            const installPath = path.join(context.extensionPath, 'lsp');
+-            this.pathToBinary = path.join(installPath, 'terraform-ls');
++            this.pathToBinary = 'TERRAFORM-LS-PATH';
+         }
+     }
+     startClients(folders) {
 diff --git a/out/extension.js b/out/extension.js
-index e932d27..099126b 100644
+index 7a271fc..726bbf8 100644
 --- a/out/extension.js
 +++ b/out/extension.js
-@@ -143,25 +143,6 @@ function updateLanguageServer() {
-     return __awaiter(this, void 0, void 0, function* () {
-         const delay = 1000 * 60 * 60 * 24;
-         languageServerUpdater.timeout(updateLanguageServer, delay); // check for new updates every 24hrs
--        // skip install if a language server binary path is set
+@@ -149,24 +149,6 @@ function updateLanguageServer(clientHandler, installPath) {
+             updateLanguageServer(clientHandler, installPath);
+         }, 24 * hour);
+         // skip install if a language server binary path is set
 -        if (!vscodeUtils_1.config('terraform').get('languageServer.pathToBinary')) {
 -            const installer = new languageServerInstaller_1.LanguageServerInstaller(installPath, reporter);
 -            const install = yield installer.needsInstall();
 -            if (install) {
--                yield stopClients();
+-                yield clientHandler.stopClients();
 -                try {
 -                    yield installer.install();
 -                }
@@ -25,15 +38,6 @@ index e932d27..099126b 100644
 -                }
 -            }
 -        }
-         return startClients(); // on repeat runs with no install, this will be a no-op
+         return clientHandler.startClients(vscodeUtils_1.prunedFolderNames()); // on repeat runs with no install, this will be a no-op
      });
  }
-@@ -259,7 +240,7 @@ function pathToBinary() {
-                 reporter.sendTelemetryEvent('usePathToBinary');
-             }
-             else {
--                command = path.join(installPath, 'terraform-ls');
-+                command = 'TERRAFORM-LS-PATH';
-             }
-             _pathToBinaryPromise = Promise.resolve(command);
-         }
diff --git a/nixpkgs/pkgs/misc/vscode-extensions/update_installed_exts.sh b/nixpkgs/pkgs/misc/vscode-extensions/update_installed_exts.sh
index 659ed8da791e..8e0af182cec5 100755
--- a/nixpkgs/pkgs/misc/vscode-extensions/update_installed_exts.sh
+++ b/nixpkgs/pkgs/misc/vscode-extensions/update_installed_exts.sh
@@ -48,7 +48,7 @@ EOF
 if [ $# -ne 0 ]; then
     CODE=$1
 else
-    CODE=$(command -v code)
+    CODE=$(command -v code || command -v codium)
 fi
 
 if [ -z "$CODE" ]; then
diff --git a/nixpkgs/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix b/nixpkgs/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix
index 7d2615824a68..a23502714827 100644
--- a/nixpkgs/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "alsa-lib";
-  version = "1.2.5";
+  version = "1.2.5.1";
 
   src = fetchurl {
     url = "mirror://alsa/lib/${pname}-${version}.tar.bz2";
-    sha256 = "067ga0l6zr782kw8jdsqvbb20pcgnl0vkpnnz2n36fq8ii58k4lh";
+    sha256 = "sha256-YoQh2VDOyvI03j+JnVIMCmkjMTyWStdR/6wIHfMxQ44=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/os-specific/linux/alsa-project/alsa-ucm-conf/default.nix b/nixpkgs/pkgs/os-specific/linux/alsa-project/alsa-ucm-conf/default.nix
index d87f3eebb845..0666f3f47939 100644
--- a/nixpkgs/pkgs/os-specific/linux/alsa-project/alsa-ucm-conf/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/alsa-project/alsa-ucm-conf/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "alsa-ucm-conf-${version}";
-  version = "1.2.5";
+  version = "1.2.5.1";
 
   src = fetchurl {
     url = "mirror://alsa/lib/${name}.tar.bz2";
-    sha256 = "sha256-CTrj2Fpeb9LNHMJ/7aQA1xkTgvuLXl4jSXKGyHwVB6U=";
+    sha256 = "sha256-WEGkRBZty/R523UTA9vDVW9oUIWsfgDwyed1VnYZXZc=";
   };
 
   dontBuild = true;
diff --git a/nixpkgs/pkgs/os-specific/linux/atop/default.nix b/nixpkgs/pkgs/os-specific/linux/atop/default.nix
index 50a3e3e63168..b082c594acbf 100644
--- a/nixpkgs/pkgs/os-specific/linux/atop/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/atop/default.nix
@@ -74,7 +74,6 @@ stdenv.mkDerivation rec {
     longDescription = ''
       Atop is an ASCII full-screen performance monitor that is capable of reporting the activity of all processes (even if processes have finished during the interval), daily logging of system and process activity for long-term analysis, highlighting overloaded system resources by using colors, etc. At regular intervals, it shows system-level activity related to the CPU, memory, swap, disks and network layers, and for every active process it shows the CPU utilization, memory growth, disk utilization, priority, username, state, and exit code.
     '';
-    inherit version;
     license = licenses.gpl2Plus;
     downloadPage = "http://atoptool.nl/downloadatop.php";
   };
diff --git a/nixpkgs/pkgs/os-specific/linux/bluez/default.nix b/nixpkgs/pkgs/os-specific/linux/bluez/default.nix
index f995c8c5c1e2..040b8fc8478c 100644
--- a/nixpkgs/pkgs/os-specific/linux/bluez/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/bluez/default.nix
@@ -3,9 +3,11 @@
 , fetchurl
 , alsa-lib
 , dbus
+, ell
 , glib
 , json_c
 , libical
+, docutils
 , pkg-config
 , python3
 , readline
@@ -19,16 +21,17 @@
   ];
 in stdenv.mkDerivation rec {
   pname = "bluez";
-  version = "5.58";
+  version = "5.60";
 
   src = fetchurl {
     url = "mirror://kernel/linux/bluetooth/${pname}-${version}.tar.xz";
-    sha256 = "1wgiv8cqya6n1w5fz24cb8q401bhn5aa6s7g95l26rzblmsmw1n8";
+    sha256 = "sha256-cQmZWA0B7lnsWF5efAf9lO3e3AAaom/nRkxUb52UUwQ=";
   };
 
   buildInputs = [
     alsa-lib
     dbus
+    ell
     glib
     json_c
     libical
@@ -38,6 +41,7 @@ in stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [
+    docutils
     pkg-config
     python3.pkgs.wrapPython
   ];
@@ -48,6 +52,11 @@ in stdenv.mkDerivation rec {
     substituteInPlace tools/hid2hci.rules \
       --replace /sbin/udevadm ${systemd}/bin/udevadm \
       --replace "hid2hci " "$out/lib/udev/hid2hci "
+    # Disable some tests:
+    # - test-mesh-crypto depends on the following kernel settings:
+    #   CONFIG_CRYPTO_[USER|USER_API|USER_API_AEAD|USER_API_HASH|AES|CCM|AEAD|CMAC]
+    if [[ ! -f unit/test-mesh-crypto.c ]]; then echo "unit/test-mesh-crypto.c no longer exists"; false; fi
+    echo 'int main() { return 77; }' > unit/test-mesh-crypto.c
   '';
 
   configureFlags = [
@@ -55,6 +64,7 @@ in stdenv.mkDerivation rec {
     "--enable-library"
     "--enable-cups"
     "--enable-pie"
+    "--enable-external-ell"
     "--with-dbusconfdir=${placeholder "out"}/share"
     "--with-dbussystembusdir=${placeholder "out"}/share/dbus-1/system-services"
     "--with-dbussessionbusdir=${placeholder "out"}/share/dbus-1/services"
@@ -67,7 +77,6 @@ in stdenv.mkDerivation rec {
     "--enable-nfc"
     "--enable-sap"
     "--enable-sixaxis"
-    "--enable-wiimote"
   ];
 
   # Work around `make install' trying to create /var/lib/bluetooth.
diff --git a/nixpkgs/pkgs/os-specific/linux/cryptsetup/default.nix b/nixpkgs/pkgs/os-specific/linux/cryptsetup/default.nix
index ad700c097722..e7304e196798 100644
--- a/nixpkgs/pkgs/os-specific/linux/cryptsetup/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/cryptsetup/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cryptsetup";
-  version = "2.3.5";
+  version = "2.3.6";
 
   outputs = [ "out" "dev" "man" ];
 
   src = fetchurl {
     url = "mirror://kernel/linux/utils/cryptsetup/v2.3/${pname}-${version}.tar.xz";
-    sha256 = "sha256-ztmUb0RNEyU22vkvyKykJ3Y4o8LZbiBUCyuuTTb9cME=";
+    sha256 = "sha256-spa3oh6ldsKxgGEcyxnQauyN3a7ffHBLDGqBIQwlY18=";
   };
 
   # Disable 4 test cases that fail in a sandbox
diff --git a/nixpkgs/pkgs/os-specific/linux/dmtcp/default.nix b/nixpkgs/pkgs/os-specific/linux/dmtcp/default.nix
index 5a472c73578a..50124a2bf452 100644
--- a/nixpkgs/pkgs/os-specific/linux/dmtcp/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/dmtcp/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dmtcp";
-  version = "2.6.0";
+  version = "unstable-2021-03-01";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
-    rev = version;
-    sha256 = "01skyhr573w1dygvkwz66lvir2jsq443fjwkysglwxvmrdfz9kwd";
+    rev = "f999adbb8e88fe452a0e57ceb43b6eed7b4409f9";
+    sha256 = "sha256-codCHQui3fGfUZSNq8GuH4ad/GjD6I/S9rX83o8oFPc=";
   };
 
   dontDisableStatic = true;
@@ -23,9 +23,9 @@ stdenv.mkDerivation rec {
     substituteInPlace configure \
       --replace '#define ELF_INTERPRETER "$interp"' \
                 "#define ELF_INTERPRETER \"$(cat $NIX_CC/nix-support/dynamic-linker)\""
-    substituteInPlace src/dmtcp_coordinator.cpp \
+    substituteInPlace src/restartscript.cpp \
       --replace /bin/bash ${stdenv.shell}
-    substituteInPlace util/gdb-add-symbol-file \
+    substituteInPlace util/dmtcp_restart_wrapper.sh \
       --replace /bin/bash ${stdenv.shell}
     substituteInPlace test/autotest.py \
       --replace /bin/bash ${bash}/bin/bash \
diff --git a/nixpkgs/pkgs/os-specific/linux/dmtcp/ld-linux-so-buffer-size.patch b/nixpkgs/pkgs/os-specific/linux/dmtcp/ld-linux-so-buffer-size.patch
index 5a81dad0cc90..118e52b8e626 100644
--- a/nixpkgs/pkgs/os-specific/linux/dmtcp/ld-linux-so-buffer-size.patch
+++ b/nixpkgs/pkgs/os-specific/linux/dmtcp/ld-linux-so-buffer-size.patch
@@ -1,11 +1,13 @@
---- dmtcp-2.5.1-src/src/util_exec.cpp	2017-09-19 13:36:22.947587034 +0200
-+++ dmtcp-2.5.1-src/src/util_exec.cpp	2017-09-19 13:36:32.221313460 +0200
-@@ -178,7 +178,7 @@
- 
- static string ld_linux_so_path(int version, bool is32bitElf = false)
+diff --git a/src/util_exec.cpp b/src/util_exec.cpp
+index 0e8a13c1..0cc99c1e 100644
+--- a/src/util_exec.cpp
++++ b/src/util_exec.cpp
+@@ -300,7 +300,7 @@ Util::elfType(const char *pathname, bool *isElf, bool *is32bitElf)
+ static string
+ ld_linux_so_path(int version, bool is32bitElf = false)
  {
 -  char buf[80];
 +  char buf[128];
+ 
  #if (defined(__x86_64__) || defined(__aarch64__)) && !defined(CONFIG_M32)
    if (is32bitElf) {
-     sprintf(buf, "/lib/ld-linux.so.%d", version);
diff --git a/nixpkgs/pkgs/os-specific/linux/ell/default.nix b/nixpkgs/pkgs/os-specific/linux/ell/default.nix
index 60e597685e42..a43b9eff3c81 100644
--- a/nixpkgs/pkgs/os-specific/linux/ell/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/ell/default.nix
@@ -38,6 +38,6 @@ stdenv.mkDerivation rec {
     '';
     license = licenses.lgpl21Plus;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ mic92 dtzWill ];
+    maintainers = with maintainers; [ mic92 dtzWill maxeaubrey ];
   };
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
index a54454885345..4293f53e47d1 100644
--- a/nixpkgs/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
@@ -2,12 +2,12 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "firmware-linux-nonfree";
-  version = "2021-05-11";
+  version = "2021-07-16";
 
   src = fetchgit {
     url = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git";
     rev = "refs/tags/" + lib.replaceStrings ["-"] [""] version;
-    sha256 = "015hajf3mq8dv2hw5wsyvi34zdqiwxp9p5dwdp8nrk4r9z5ysqxw";
+    sha256 = "185pnaqf2qmhbcdvvldmbar09zgaxhh3h8x9bxn6079bcdpaskn6";
   };
 
   installFlags = [ "DESTDIR=$(out)" ];
@@ -17,7 +17,7 @@ stdenvNoCC.mkDerivation rec {
 
   outputHashMode = "recursive";
   outputHashAlgo = "sha256";
-  outputHash = "034bwbl616vzl7lhcbvyz9dzmpzwi12vca3r5mszdxqh3z3s1g6a";
+  outputHash = "0g470hj2ylpviijfpjqzsndn2k8kkscj27wqwk51xlk8cr3mrahb";
 
   meta = with lib; {
     description = "Binary firmware collection packaged by kernel.org";
diff --git a/nixpkgs/pkgs/os-specific/linux/g15daemon/default.nix b/nixpkgs/pkgs/os-specific/linux/g15daemon/default.nix
index c670fc86d13b..118a17c4c8f0 100644
--- a/nixpkgs/pkgs/os-specific/linux/g15daemon/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/g15daemon/default.nix
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
 
   patches = let
     patch = fname: sha256: fetchurl rec {
-      url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/${pname}-${version}-${fname}.patch?h=packages/${pname}";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-community/c0b0b6d4d6d7b79eca68123b20e0c9fb82e1c6e1/g15daemon/trunk/${pname}-${version}-${fname}.patch";
       name = "${fname}.patch";
       inherit sha256;
     };
diff --git a/nixpkgs/pkgs/os-specific/linux/hyperv-daemons/default.nix b/nixpkgs/pkgs/os-specific/linux/hyperv-daemons/default.nix
index 2b6bf6fc63ad..a659908a7a09 100644
--- a/nixpkgs/pkgs/os-specific/linux/hyperv-daemons/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/hyperv-daemons/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, python, kernel, makeWrapper, writeText
+{ stdenv, lib, python2, python3, kernel, makeWrapper, writeText
 , gawk, iproute2 }:
 
 let
@@ -9,6 +9,7 @@ let
     inherit (kernel) src version;
 
     nativeBuildInputs = [ makeWrapper ];
+    buildInputs = [ (if lib.versionOlder version "4.19" then python2 else python3) ];
 
     # as of 4.9 compilation will fail due to -Werror=format-security
     hardeningDisable = [ "format" ];
@@ -33,10 +34,6 @@ let
       install -Dm755 hv_get_dhcp_info.sh $out/${libexec}/hv_get_dhcp_info
       install -Dm755 hv_get_dns_info.sh  $out/${libexec}/hv_get_dns_info
 
-      # I don't know why this isn't being handled automatically by fixupPhase
-      substituteInPlace $out/bin/lsvmbus \
-        --replace '/usr/bin/env python' ${python.interpreter}
-
       runHook postInstall
     '';
 
@@ -86,7 +83,7 @@ in stdenv.mkDerivation {
     Wants=hv-fcopy.service hv-kvp.service hv-vss.service
     EOF
 
-    for f in $lib/lib/systemd/system/* ; do
+    for f in $lib/lib/systemd/system/*.service ; do
       substituteInPlace $f --replace @out@ ${daemons}/bin
     done
 
diff --git a/nixpkgs/pkgs/os-specific/linux/iio-sensor-proxy/default.nix b/nixpkgs/pkgs/os-specific/linux/iio-sensor-proxy/default.nix
index 5566103b2cd9..5f44622c5122 100644
--- a/nixpkgs/pkgs/os-specific/linux/iio-sensor-proxy/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/iio-sensor-proxy/default.nix
@@ -47,6 +47,5 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3 ;
     maintainers = with maintainers; [ peterhoeg ];
     platforms = platforms.linux;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/iproute/default.nix b/nixpkgs/pkgs/os-specific/linux/iproute/default.nix
index 638983d6c17e..ea3c4d36958f 100644
--- a/nixpkgs/pkgs/os-specific/linux/iproute/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/iproute/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "iproute2";
-  version = "5.12.0";
+  version = "5.13.0";
 
   src = fetchurl {
     url = "mirror://kernel/linux/utils/net/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-nSaNuYo27ioOP/O5Ky7/9m/BE4pR5Am972qzz+FfMm8=";
+    sha256 = "sha256-cqLlN3TKyeZfe2F97rsgWfh+iWDW6XE+TXiM6pZvGzY=";
   };
 
   preConfigure = ''
diff --git a/nixpkgs/pkgs/os-specific/linux/iptables/default.nix b/nixpkgs/pkgs/os-specific/linux/iptables/default.nix
index 797e7a5b1305..912d9078c947 100644
--- a/nixpkgs/pkgs/os-specific/linux/iptables/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/iptables/default.nix
@@ -50,6 +50,5 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     downloadPage = "https://www.netfilter.org/projects/iptables/files/";
     updateWalker = true;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/iwd/default.nix b/nixpkgs/pkgs/os-specific/linux/iwd/default.nix
index 3b7cc7d3d406..e0a1a566d777 100644
--- a/nixpkgs/pkgs/os-specific/linux/iwd/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/iwd/default.nix
@@ -91,6 +91,6 @@ stdenv.mkDerivation rec {
     description = "Wireless daemon for Linux";
     license = licenses.lgpl21Plus;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ dtzWill fpletz ];
+    maintainers = with maintainers; [ dtzWill fpletz maxeaubrey ];
   };
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/generate-config.pl b/nixpkgs/pkgs/os-specific/linux/kernel/generate-config.pl
index 82e1cb66e2be..df807188f14f 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/generate-config.pl
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/generate-config.pl
@@ -19,6 +19,7 @@ my $autoModules = $ENV{'AUTO_MODULES'};
 my $preferBuiltin = $ENV{'PREFER_BUILTIN'};
 my $ignoreConfigErrors = $ENV{'ignoreConfigErrors'};
 my $buildRoot = $ENV{'BUILD_ROOT'};
+my $makeFlags = $ENV{'MAKE_FLAGS'};
 $SIG{PIPE} = 'IGNORE';
 
 # Read the answers.
@@ -40,7 +41,7 @@ close ANSWERS;
 sub runConfig {
 
     # Run `make config'.
-    my $pid = open2(\*IN, \*OUT, "make -C $ENV{SRC} O=$buildRoot config SHELL=bash ARCH=$ENV{ARCH} CC=$ENV{CC} HOSTCC=$ENV{HOSTCC} HOSTCXX=$ENV{HOSTCXX}");
+    my $pid = open2(\*IN, \*OUT, "make -C $ENV{SRC} O=$buildRoot config SHELL=bash ARCH=$ENV{ARCH} CC=$ENV{CC} HOSTCC=$ENV{HOSTCC} HOSTCXX=$ENV{HOSTCXX} $makeFlags");
 
     # Parse the output, look for questions and then send an
     # appropriate answer.
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/generic.nix b/nixpkgs/pkgs/os-specific/linux/kernel/generic.nix
index b35c84513e69..598dac90babe 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/generic.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/generic.nix
@@ -21,6 +21,9 @@
 , # Legacy overrides to the intermediate kernel config, as string
   extraConfig ? ""
 
+  # Additional make flags passed to kbuild
+, extraMakeFlags ? []
+
 , # kernel intermediate config overrides, as a set
  structuredExtraConfig ? {}
 
@@ -97,7 +100,7 @@ let
     in lib.concatStringsSep "\n" ([baseConfigStr] ++ configFromPatches);
 
   configfile = stdenv.mkDerivation {
-    inherit ignoreConfigErrors autoModules preferBuiltin kernelArch;
+    inherit ignoreConfigErrors autoModules preferBuiltin kernelArch extraMakeFlags;
     pname = "linux-config";
     inherit version;
 
@@ -116,6 +119,9 @@ let
     # e.g. "bzImage"
     kernelTarget = stdenv.hostPlatform.linux-kernel.target;
 
+    makeFlags = lib.optionals (stdenv.hostPlatform.linux-kernel ? makeFlags) stdenv.hostPlatform.linux-kernel.makeFlags
+      ++ extraMakeFlags;
+
     prePatch = kernel.prePatch + ''
       # Patch kconfig to print "###" after every question so that
       # generate-config.pl from the generic builder can answer them.
@@ -134,16 +140,19 @@ let
       export HOSTLD=$LD_FOR_BUILD
 
       # Get a basic config file for later refinement with $generateConfig.
-      make -C . O="$buildRoot" $kernelBaseConfig \
+      make $makeFlags \
+          -C . O="$buildRoot" $kernelBaseConfig \
           ARCH=$kernelArch \
           HOSTCC=$HOSTCC HOSTCXX=$HOSTCXX HOSTAR=$HOSTAR HOSTLD=$HOSTLD \
-          CC=$CC OBJCOPY=$OBJCOPY OBJDUMP=$OBJDUMP READELF=$READELF
+          CC=$CC OBJCOPY=$OBJCOPY OBJDUMP=$OBJDUMP READELF=$READELF \
+          $makeFlags
 
       # Create the config file.
       echo "generating kernel configuration..."
       ln -s "$kernelConfigPath" "$buildRoot/kernel-config"
       DEBUG=1 ARCH=$kernelArch KERNEL_CONFIG="$buildRoot/kernel-config" AUTO_MODULES=$autoModules \
-           PREFER_BUILTIN=$preferBuiltin BUILD_ROOT="$buildRoot" SRC=. perl -w $generateConfig
+        PREFER_BUILTIN=$preferBuiltin BUILD_ROOT="$buildRoot" SRC=. MAKE_FLAGS="$makeFlags" \
+        perl -w $generateConfig
     '';
 
     installPhase = "mv $buildRoot/.config $out";
@@ -151,7 +160,6 @@ let
     enableParallelBuilding = true;
 
     passthru = rec {
-
       module = import ../../../../nixos/modules/system/boot/kernel_config.nix;
       # used also in apache
       # { modules = [ { options = res.options; config = svc.config or svc; } ];
@@ -171,15 +179,15 @@ let
     };
   }; # end of configfile derivation
 
-  kernel = (callPackage ./manual-config.nix {}) {
-    inherit version modDirVersion src kernelPatches randstructSeed lib stdenv extraMeta configfile;
+  kernel = (callPackage ./manual-config.nix { inherit buildPackages;  }) {
+    inherit version modDirVersion src kernelPatches randstructSeed lib stdenv extraMakeFlags extraMeta configfile;
 
     config = { CONFIG_MODULES = "y"; CONFIG_FW_LOADER = "m"; };
   };
 
   passthru = {
     features = kernelFeatures;
-    inherit commonStructuredConfig isZen isHardened isLibre modDirVersion;
+    inherit commonStructuredConfig structuredExtraConfig extraMakeFlags isZen isHardened isLibre modDirVersion;
     isXen = lib.warn "The isXen attribute is deprecated. All Nixpkgs kernels that support it now have Xen enabled." true;
     kernelOlder = lib.versionOlder version;
     kernelAtLeast = lib.versionAtLeast version;
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/hardened/patches.json b/nixpkgs/pkgs/os-specific/linux/kernel/hardened/patches.json
index bd1a5397f605..412e50415007 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/hardened/patches.json
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/hardened/patches.json
@@ -1,32 +1,32 @@
 {
     "4.14": {
         "extra": "-hardened1",
-        "name": "linux-hardened-4.14.238-hardened1.patch",
-        "sha256": "13wld3dm9ymwcsk5f06l64z9q49ff7rh7dqfqxxhkngdx2i1h566",
-        "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.238-hardened1/linux-hardened-4.14.238-hardened1.patch"
+        "name": "linux-hardened-4.14.240-hardened1.patch",
+        "sha256": "0j5zp0f8s4w3f60yam2spg3bx56bdjvv0mh632zlhchz8rdk5zs4",
+        "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.240-hardened1/linux-hardened-4.14.240-hardened1.patch"
     },
     "4.19": {
         "extra": "-hardened1",
-        "name": "linux-hardened-4.19.196-hardened1.patch",
-        "sha256": "1wna5j1g1703gl4xw4x5z8dmc8gjqg879zq4xnmlyc0vryqjrxyq",
-        "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.196-hardened1/linux-hardened-4.19.196-hardened1.patch"
+        "name": "linux-hardened-4.19.198-hardened1.patch",
+        "sha256": "18c5j00xiwc0xn5klcrwazk6wvjiy3cixbfbrw4xj7zal9r5p6q9",
+        "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.198-hardened1/linux-hardened-4.19.198-hardened1.patch"
     },
     "5.10": {
         "extra": "-hardened1",
-        "name": "linux-hardened-5.10.47-hardened1.patch",
-        "sha256": "0qkwz3d83p2l5p7lhj3imfx8cr17smciw76xhj00zv171vc3q7xm",
-        "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.47-hardened1/linux-hardened-5.10.47-hardened1.patch"
+        "name": "linux-hardened-5.10.52-hardened1.patch",
+        "sha256": "062a32rb1g5xk1npiz9fa114k7g4x9pmygycn3alc0phngjmvr98",
+        "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.52-hardened1/linux-hardened-5.10.52-hardened1.patch"
     },
     "5.12": {
         "extra": "-hardened1",
-        "name": "linux-hardened-5.12.14-hardened1.patch",
-        "sha256": "0c5zi03j5bjhr706wad1qf5kr4nv0s2bzkx4z5mr6wqgra5dg22v",
-        "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.12.14-hardened1/linux-hardened-5.12.14-hardened1.patch"
+        "name": "linux-hardened-5.12.19-hardened1.patch",
+        "sha256": "1nr3922gd6il69k5cpp9g3knpy6yjb6jsmpi9k4v02bkvypg86dc",
+        "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.12.19-hardened1/linux-hardened-5.12.19-hardened1.patch"
     },
     "5.4": {
         "extra": "-hardened1",
-        "name": "linux-hardened-5.4.129-hardened1.patch",
-        "sha256": "0b16w4jm22mlhwfvbzbg8bw9z7hp13r1bl5g5rk42vmz07ahknga",
-        "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.129-hardened1/linux-hardened-5.4.129-hardened1.patch"
+        "name": "linux-hardened-5.4.134-hardened1.patch",
+        "sha256": "0iay6dxwd1vqj02ljf0ghncrqpr6b0gby90xiza8kkk8wnh3r9hh",
+        "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.134-hardened1/linux-hardened-5.4.134-hardened1.patch"
     }
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.14.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.14.nix
index f418afc280bd..ccecc433a4ac 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.14.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.14.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "4.14.238";
+  version = "4.14.240";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,7 +13,7 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1phjgm1fhyfpm2h9b2bngcbh91v2qrxcm7vma86q7pdqrcbh1fih";
+    sha256 = "1k65qwzlnqnh9ym0n2fxpa8nk2qwvykwhwgaixk3b7ndzmr8b6c8";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_14 ];
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.19.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.19.nix
index 460982b6d2fc..4ed06ee22058 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.19.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.19.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "4.19.196";
+  version = "4.19.198";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,7 +13,7 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0liapgaczv6lq7223wnq2cbwfb6w93iw14dv1xidcb3bnakm4h5f";
+    sha256 = "13k0r6a4n8nbni64a18wqzy0pg4vn1zw2li78xrm78rqcrnah85y";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_19 ];
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.4.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.4.nix
index 9a5dcb7e1ad1..6c2595386e08 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.4.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.4.nix
@@ -1,13 +1,13 @@
 { buildPackages, fetchurl, perl, buildLinux, nixosTests, stdenv, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.4.274";
+  version = "4.4.276";
   extraMeta.branch = "4.4";
   extraMeta.broken = stdenv.isAarch64;
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1n4wawk8fi5s22177994vq9hzay49cackdabl9r1x8y2i9jcqmg4";
+    sha256 = "1hf9h5kr1ws2lvinzq6cv7aps8af1kx4q8j4bsk2vv4i2zvmfr7y";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_4 ];
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.9.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.9.nix
index a4d57135e4af..0dc5cfeae6eb 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,13 +1,13 @@
 { buildPackages, fetchurl, perl, buildLinux, nixosTests, stdenv, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.9.274";
+  version = "4.9.276";
   extraMeta.branch = "4.9";
   extraMeta.broken = stdenv.isAarch64;
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0xdi33f25lbpplx36cz7chdsn7a6xdjvwxgvnmvrw7b2y0g45m95";
+    sha256 = "16jp05jhmqcp8lawqga69gxn1acdkxsskn3a6wf0635863fky3hv";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_9 ];
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.10.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.10.nix
index deec1b3a475f..f59cca3e12fb 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.10.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.10.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.10.47";
+  version = "5.10.52";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,7 +13,7 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "1ig1kb10729xyawm2zqzx8slpdbylgwms7b5vkhw3q6iwqpjmd9h";
+    sha256 = "0ydf09wsg0pkjm9dk8y730ksg15p5rlbhq445zx8k191zah5g7kn";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_10 ];
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.12.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.12.nix
index 93e7499c8dd0..e1e7aec2ce2d 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.12.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.12.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.12.14";
+  version = "5.12.19";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,7 +13,7 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "1b3xnb62n53vm6larkvv2vzd9w7cjnqh8zh6jzq9lpcg12c3pjlh";
+    sha256 = "0wscz736n13m833cd12lskn47r0b8ki4fhgpjnwga0jsab9iqf79";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_12 ];
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.13.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.13.nix
index eb01fb6289c9..82defad373bd 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.13.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.13.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.13";
+  version = "5.13.4";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,7 +13,7 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "sha256-P2uql/N1GEOfUd8uTz1lqCLKX/AWqo5g0sxTuVpsidk=";
+    sha256 = "0v3x1q1r0r8lyjg5hsj7yayfxqcgfj01p86ya4s0i9jaclpwv4ki";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_13 ];
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.4.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.4.nix
index c5b4e390582a..c4e08b685b5e 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.4.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.4.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.4.129";
+  version = "5.4.134";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,7 +13,7 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "1ps64gx85lmbriq445hd2hcv4g4b1d1cwf4r3nd90x6i2cj4c9j4";
+    sha256 = "0haqw1w6f8p330ydbsl7iml1x0qqrv63az6921p2a70n88b8dyy9";
   };
 
   kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_4 ];
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-libre.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-libre.nix
index 76b5c1cf146d..656324569631 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-libre.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-libre.nix
@@ -1,8 +1,8 @@
 { stdenv, lib, fetchsvn, linux
 , scripts ? fetchsvn {
     url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/";
-    rev = "18132";
-    sha256 = "01mgpfx5cddq4bgffydkxpm3xlgf7zfjr1c1icsyn7f2pibd114q";
+    rev = "18165";
+    sha256 = "17birwp6byxr4yb8cbc0afssli84ds1p2sisjl4g6rx3r7yqvsxn";
   }
 , ...
 }:
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-lqx.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-lqx.nix
index eacb906f2e54..f701c2846f44 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-lqx.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-lqx.nix
@@ -1,7 +1,7 @@
 { lib, fetchFromGitHub, buildLinux, linux_zen, ... } @ args:
 
 let
-  version = "5.12.14";
+  version = "5.12.17";
   suffix = "lqx2";
 in
 
@@ -14,7 +14,7 @@ buildLinux (args // {
     owner = "zen-kernel";
     repo = "zen-kernel";
     rev = "v${version}-${suffix}";
-    sha256 = "sha256-pj5sSW4ggZEx2n7bVU2sfK3JOXG5n4Rsp3S66/+/wVU=";
+    sha256 = "sha256-i0Ha9H1VVRKlmomWz1+UmKBH9CSlmHAZm0kwz0Kamqg=";
   };
 
   extraMeta = {
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
index 78e45a7bd91c..62c411cd9698 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
@@ -6,7 +6,7 @@
 , ... } @ args:
 
 let
-  version = "5.10.41-rt42"; # updated by ./update-rt.sh
+  version = "5.10.47-rt46"; # updated by ./update-rt.sh
   branch = lib.versions.majorMinor version;
   kversion = builtins.elemAt (lib.splitString "-" version) 0;
 in buildLinux (args // {
@@ -18,14 +18,14 @@ in buildLinux (args // {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz";
-    sha256 = "0wb739q7dha8nxkd72x42k4in5nw633yw065ppwc8rq7x2fpa17n";
+    sha256 = "1ig1kb10729xyawm2zqzx8slpdbylgwms7b5vkhw3q6iwqpjmd9h";
   };
 
   kernelPatches = let rt-patch = {
     name = "rt";
     patch = fetchurl {
       url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
-      sha256 = "1z8jgsq5fkg486xxawg4c4wk1l9xra7x1cfqaf4grhw0csbbx883";
+      sha256 = "12jnnwnh3bgz2ygc173r45sbqm74rz3f2nlp7m2fb8dlxdby460q";
     };
   }; in [ rt-patch ] ++ kernelPatches;
 
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix
index ec3aa7f7006e..4c49dc9c42a4 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix
@@ -6,7 +6,7 @@
 , ... } @ args:
 
 let
-  version = "5.4.123-rt59"; # updated by ./update-rt.sh
+  version = "5.4.129-rt61"; # updated by ./update-rt.sh
   branch = lib.versions.majorMinor version;
   kversion = builtins.elemAt (lib.splitString "-" version) 0;
 in buildLinux (args // {
@@ -14,14 +14,14 @@ in buildLinux (args // {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz";
-    sha256 = "1pi223dls52piw65s3v4ml23wdyy73xpbdvp511187b6zgzk7zlf";
+    sha256 = "1ps64gx85lmbriq445hd2hcv4g4b1d1cwf4r3nd90x6i2cj4c9j4";
   };
 
   kernelPatches = let rt-patch = {
     name = "rt";
     patch = fetchurl {
       url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
-      sha256 = "1m1mnmk7h35p7dv6mg3pla6pw3b645hbbccjmp1jc3fyn6qiy6fq";
+      sha256 = "0b3hp6a7afkjqd7an4hj423nq6flwzd42kjcyk4pifv5fx6c7pgq";
     };
   }; in [ rt-patch ] ++ kernelPatches;
 
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
index 619bf48b736c..a12633eb6d72 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
@@ -1,24 +1,33 @@
-{ lib, buildPackages, fetchFromGitHub, fetchpatch, perl, buildLinux, ... } @ args:
+{ lib
+, fetchpatch
+, kernel
+, date ? "2021-07-08"
+, commit ? "3693b2ca83ff9eda49660b31299d2bebe3a1075f"
+, diffHash ? "1sfq3vwc2kxa761s292f2cqrm0vvqvkdx6drpyn5yaxwnapwidcw"
+, kernelPatches # must always be defined in bcachefs' all-packages.nix entry because it's also a top-level attribute supplied by callPackage
+, argsOverride ? {}
+, ...
+} @ args:
 
-buildLinux (args // {
-  version = "5.9.0-2020.11.20";
-  modDirVersion = "5.9.0";
+kernel.override ( args // {
 
-  src = fetchFromGitHub {
-    owner = "koverstreet";
-    repo = "bcachefs";
-    # commit does not exist on any branch on the target repository
-    rev = "6a505b63ed3003faf5000f19fd08bbd477d93fbc";
-    sha256 = "1rf34gzv9npafp1c3i6lymk3b0gnqp4rb0wl33pw6yrpgnsry3cc";
-  };
+  argsOverride = {
+    version = "${kernel.version}-bcachefs-unstable-${date}";
+    extraMeta = {
+      branch = "master";
+      maintainers = with lib.maintainers; [ davidak chiiruno ];
+      platforms = [ "x86_64-linux" ];
+    };
+  } // argsOverride;
 
-  extraConfig = "BCACHEFS_FS m";
+  kernelPatches = [ {
+      name = "bcachefs-${commit}";
+      patch = fetchpatch {
+        name = "bcachefs-${commit}.diff";
+        url = "https://evilpiepirate.org/git/bcachefs.git/rawdiff/?id=${commit}&id2=v${lib.versions.majorMinor kernel.version}";
+        sha256 = diffHash;
+      };
+      extraConfig = "BCACHEFS_FS m";
+    } ] ++ kernelPatches;
 
-  extraMeta = {
-    branch = "master";
-    hydraPlatforms = []; # Should the testing kernels ever be built on Hydra?
-    maintainers = with lib.maintainers; [ davidak chiiruno ];
-    platforms = [ "x86_64-linux" ];
-  };
-
-} // (args.argsOverride or {}))
+})
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-xanmod.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-xanmod.nix
index fbb9bf93ed55..758f6fd998aa 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-xanmod.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-xanmod.nix
@@ -1,8 +1,8 @@
 { lib, stdenv, buildLinux, fetchFromGitHub, ... } @ args:
 
 let
-  version = "5.13.0";
-  suffix = "xanmod2-cacule";
+  version = "5.13.4";
+  suffix = "xanmod1-cacule";
 in
 buildLinux (args // rec {
   inherit version;
@@ -12,7 +12,7 @@ buildLinux (args // rec {
     owner = "xanmod";
     repo = "linux";
     rev = modDirVersion;
-    sha256 = "sha256-q+m1Ys/Gfr56cihoX8LS/w7icNcM3oefcXRtvzgx3cM=";
+    sha256 = "sha256-jSV5dL6myB4WeokYBwoBtQaOfLaUgvseYtReyjLGOhU=";
   };
 
   structuredExtraConfig = with lib.kernel; {
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/manual-config.nix b/nixpkgs/pkgs/os-specific/linux/kernel/manual-config.nix
index f874762267a8..77add0aef539 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/manual-config.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/manual-config.nix
@@ -1,5 +1,5 @@
 { lib, buildPackages, runCommand, nettools, bc, bison, flex, perl, rsync, gmp, libmpc, mpfr, openssl
-, libelf, cpio, elfutils, zstd, gawk
+, libelf, cpio, elfutils, zstd, gawk, python3Minimal
 , writeTextFile
 }:
 
@@ -19,6 +19,8 @@ in {
   stdenv,
   # The kernel version
   version,
+  # Additional kernel make flags
+  extraMakeFlags ? [],
   # The version of the kernel module directory
   modDirVersion ? version,
   # The kernel source (tarball, git checkout, etc.)
@@ -119,9 +121,9 @@ let
         # This way kernels can be bit-by-bit reproducible depending on settings
         # (e.g. MODULE_SIG and SECURITY_LOCKDOWN_LSM need to be disabled).
         # See also https://kernelnewbies.org/BuildId
-        sed -i Makefile -e 's|--build-id|--build-id=none|'
+        sed -i Makefile -e 's|--build-id=[^ ]*|--build-id=none|'
 
-        patchShebangs scripts/ld-version.sh
+        patchShebangs scripts
       '';
 
       postPatch = ''
@@ -173,7 +175,9 @@ let
         "KBUILD_BUILD_VERSION=1-NixOS"
         kernelConf.target
         "vmlinux"  # for "perf" and things like that
-      ] ++ optional isModular "modules";
+      ]
+      ++ optional isModular "modules"
+      ++ extraMakeFlags;
 
       installFlags = [
         "INSTALLKERNEL=${installkernel}"
@@ -307,7 +311,7 @@ stdenv.mkDerivation ((drvAttrs config stdenv.hostPlatform.linux-kernel kernelPat
   enableParallelBuilding = true;
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
-  nativeBuildInputs = [ perl bc nettools openssl rsync gmp libmpc mpfr gawk zstd ]
+  nativeBuildInputs = [ perl bc nettools openssl rsync gmp libmpc mpfr gawk zstd python3Minimal ]
       ++ optional  (stdenv.hostPlatform.linux-kernel.target == "uImage") buildPackages.ubootTools
       ++ optional  (lib.versionAtLeast version "4.14" && lib.versionOlder version "5.8") libelf
       # Removed util-linuxMinimal since it should not be a dependency.
@@ -325,7 +329,7 @@ stdenv.mkDerivation ((drvAttrs config stdenv.hostPlatform.linux-kernel kernelPat
     "ARCH=${stdenv.hostPlatform.linuxArch}"
   ] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) [
     "CROSS_COMPILE=${stdenv.cc.targetPrefix}"
-  ];
+  ] ++ extraMakeFlags;
 
   karch = stdenv.hostPlatform.linuxArch;
 })
diff --git a/nixpkgs/pkgs/os-specific/linux/kinect-audio-setup/default.nix b/nixpkgs/pkgs/os-specific/linux/kinect-audio-setup/default.nix
new file mode 100644
index 000000000000..94ae4806cf25
--- /dev/null
+++ b/nixpkgs/pkgs/os-specific/linux/kinect-audio-setup/default.nix
@@ -0,0 +1,91 @@
+{ lib
+, stdenv
+, fetchgit
+, requireFile
+, pkg-config
+, libusb1
+, p7zip
+}:
+
+let
+  # The last known good firmware package to have been tested
+  # by the upstream projet.
+  # The firmware URL is hardcoded in the upstream project's installation script
+  firmwareUrl = "https://download.microsoft.com/download/F/9/9/F99791F2-D5BE-478A-B77A-830AD14950C3/KinectSDK-v1.0-beta2-x86.msi";
+  # The original URL "https://research.microsoft.com/en-us/um/legal/kinectsdk-tou_noncommercial.htm"
+  # redirects to the following url:
+  licenseUrl = "https://www.microsoft.com/en-us/legal/terms-of-use";
+in
+stdenv.mkDerivation rec {
+  pname = "kinect-audio-setup";
+
+  # On update: Make sure that the `firmwareURL` is still in sync with upstream.
+  # If the project structure hasn't changed you can find the URL in the
+  # `kinect_fetch_fw` file in the project source.
+  version = "0.5";
+
+  # This is an MSI or CAB file
+  FIRMWARE = requireFile rec {
+    name = "UACFirmware";
+    sha256 = "08a2vpgd061cmc6h3h8i6qj3sjvjr1fwcnwccwywqypz3icn8xw1";
+    message = ''
+      In order to install the Kinect Audio Firmware, you need to download the
+      non-redistributable firmware from Microsoft.
+      The firmware is available at ${firmwareUrl} and the license at ${licenseUrl} .
+      Save the file as UACFirmware and use "nix-prefetch-url file://\$PWD/UACFirmware" to
+      add it to the Nix store.
+    '';
+  };
+
+  src = fetchgit {
+    url = "git://git.ao2.it/kinect-audio-setup.git";
+    rev = "v${version}";
+    sha256 = "sha256-bFwmWh822KvFwP/0Gu097nF5K2uCwCLMB1RtP7k+Zt0=";
+  };
+
+  # These patches are not upstream because the project has seen no
+  # activity since 2016
+  patches = [
+    ./libusb-1-import-path.patch
+    ./udev-rules-extra-devices.patch
+  ];
+
+  nativeBuildInputs = [ p7zip libusb1 pkg-config ];
+
+  makeFlags = [
+    "PREFIX=$(out)"
+    "DESTDIR=$(out)"
+    "FIRMWARE_PATH=$(out)/lib/firmware/UACFirmware"
+    "LOADER_PATH=$(out)/libexec/kinect_upload_fw"
+  ];
+
+  buildPhase = ''
+    runHook preBuild
+    make -C kinect_upload_fw kinect_upload_fw $makeFlags "''${makeFlagsArray[@]}"
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/libexec/ $out/lib/firmware $out/lib/udev/rules.d
+
+    install -Dm755 kinect_upload_fw/kinect_upload_fw $out/libexec/
+
+    # 7z extract "assume yes on all queries" "only extract/keep files/directories matching UACFIRMWARE.* recursively"
+    7z e -y -r "${FIRMWARE}" "UACFirmware.*" >/dev/null
+    # The filename is bound to change with the Firmware SDK
+    mv UACFirmware.* $out/lib/firmware/UACFirmware
+
+    make install_udev_rules $makeFlags "''${makeFlagsArray[@]}"
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Tools to enable audio input from the Microsoft Kinect sensor device";
+    homepage = "https://git.ao2.it/kinect-audio-setup.git";
+    maintainers = with maintainers; [ berbiche ];
+    platforms = platforms.linux;
+    license = licenses.unfree;
+  };
+}
diff --git a/nixpkgs/pkgs/os-specific/linux/kinect-audio-setup/libusb-1-import-path.patch b/nixpkgs/pkgs/os-specific/linux/kinect-audio-setup/libusb-1-import-path.patch
new file mode 100644
index 000000000000..a0c5ad99f9f2
--- /dev/null
+++ b/nixpkgs/pkgs/os-specific/linux/kinect-audio-setup/libusb-1-import-path.patch
@@ -0,0 +1,23 @@
+commit 02fd6c4355809e1bff7c66d478e88f30bedde13b
+Author: Nicolas Berbiche <nicolas@normie.dev>
+Date:   Wed May 5 23:14:56 2021 -0400
+
+    fix libusb include for Linux
+
+diff --git a/kinect_upload_fw/kinect_upload_fw.c b/kinect_upload_fw/kinect_upload_fw.c
+index 1bd4102..351c94f 100644
+--- a/kinect_upload_fw/kinect_upload_fw.c
++++ b/kinect_upload_fw/kinect_upload_fw.c
+@@ -35,7 +35,12 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <errno.h>
++
++#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(_WIN32)
+ #include <libusb.h>
++#else
++#include <libusb-1.0/libusb.h>
++#endif
+ 
+ #include "endian.h"
+ 
diff --git a/nixpkgs/pkgs/os-specific/linux/kinect-audio-setup/udev-rules-extra-devices.patch b/nixpkgs/pkgs/os-specific/linux/kinect-audio-setup/udev-rules-extra-devices.patch
new file mode 100644
index 000000000000..d58b970c7c01
--- /dev/null
+++ b/nixpkgs/pkgs/os-specific/linux/kinect-audio-setup/udev-rules-extra-devices.patch
@@ -0,0 +1,15 @@
+commit afaaa77b0a03811f86428cf264397b60dd795549
+Author: Nicolas Berbiche <nicolas@normie.dev>
+Date:   Thu May 6 00:10:37 2021 -0400
+
+    Add support for other Kinect device in udev
+
+diff --git a/contrib/55-kinect_audio.rules.in b/contrib/55-kinect_audio.rules.in
+index 25ea713..9e1b69f 100644
+--- a/contrib/55-kinect_audio.rules.in
++++ b/contrib/55-kinect_audio.rules.in
+@@ -1,2 +1,4 @@
+ # Rule to load the Kinect UAC firmware on the "generic" usb device
+ ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="045e", ATTRS{idProduct}=="02ad", RUN+="@LOADER_PATH@ @FIRMWARE_PATH@"
++# Rule to load the Kinect UAC firmware on another supported device
++ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="045e", ATTRS{idProduct}=="02bb", RUN+="@LOADER_PATH@ @FIRMWARE_PATH@"
diff --git a/nixpkgs/pkgs/os-specific/linux/libnl/default.nix b/nixpkgs/pkgs/os-specific/linux/libnl/default.nix
index b40b3c46e77b..d6604f9e15b9 100644
--- a/nixpkgs/pkgs/os-specific/linux/libnl/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/libnl/default.nix
@@ -34,7 +34,6 @@ stdenv.mkDerivation rec {
   };
 
   meta = with lib; {
-    inherit version;
     homepage = "http://www.infradead.org/~tgr/libnl/";
     description = "Linux Netlink interface library suite";
     license = licenses.lgpl21;
diff --git a/nixpkgs/pkgs/os-specific/linux/linuxptp/default.nix b/nixpkgs/pkgs/os-specific/linux/linuxptp/default.nix
index 4f58c9f3f2ad..4c14d2ecae3d 100644
--- a/nixpkgs/pkgs/os-specific/linux/linuxptp/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/linuxptp/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "linuxptp";
-  version = "3.1";
+  version = "3.1.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/linuxptp/${pname}-${version}.tgz";
-    sha256 = "0zff502w3nlycgv2ad8cy8nd0hqf34kzpzcygi7prp0lrw8mp3zm";
+    sha256 = "1nf0w4xyzg884v8blb81zkk6q8p6zbiq9lx61jdqwbbzkdgqbmll";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/os-specific/linux/lsiutil/default.nix b/nixpkgs/pkgs/os-specific/linux/lsiutil/default.nix
index 1b1acdb535f5..f88cdcda5237 100644
--- a/nixpkgs/pkgs/os-specific/linux/lsiutil/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/lsiutil/default.nix
@@ -1,41 +1,44 @@
-{ lib, stdenv, fetchurl, unzip }:
+{ lib
+, stdenv
+, fetchurl
+, kmod
+, coreutils
+}:
 
-let
-
-  version = "1.60";
+stdenv.mkDerivation rec {
+  pname = "lsiutil";
+  version = "1.72";
 
   src = fetchurl {
-    name = "lsiutil-${version}.zip";
-    url = "http://www.lsi.com/DistributionSystem/AssetDocument/support/downloads/hbas/fibre_channel/hardware_drivers/LSIUtil%20Kit_${version}.zip";
-    sha256 = "1d4337faa56e24f7d98db87b9de94d6e2c17ab671f4e301b93833eea08b9e426";
+    url = "https://github.com/exactassembly/meta-xa-stm/raw/f96cf6e13f3c9c980f5651510dd96279b9b2af4f/recipes-support/lsiutil/files/lsiutil-${version}.tar.gz";
+    sha256 = "sha256-aTi+EogY1aDWYq3anjRkjz1mzINVfUPQbOPHthxrvS4=";
   };
 
-in
-
-stdenv.mkDerivation {
-  pname = "lsiutils";
-  inherit version;
+  buildPhase = ''
+    runHook preBuild
 
-  srcs = [ src "Source/lsiutil.tar.gz" ];
+    substituteInPlace lsiutil.c \
+      --replace /sbin/modprobe "${kmod}/bin/modprobe" \
+      --replace /bin/mknod "${coreutils}/bin/mknod"
+    gcc -Wall -O lsiutil.c -o lsiutil
 
-  nativeBuildInputs = [ unzip ];
+    runHook postBuild
+  '';
 
-  sourceRoot = "lsiutil";
+  installPhase = ''
+    runHook preInstall
 
-  preBuild =
-    ''
-      mkdir -p $out/bin
-      substituteInPlace Makefile --replace /usr/bin $out/bin
-      substituteInPlace lsiutil.c \
-        --replace /sbin/modprobe modprobe \
-        --replace /bin/mknod $(type -P mknod)
-    '';
+    mkdir -p "$out/bin"
+    install -Dm755 lsiutil "$out/bin/lsiutil"
 
-  installPhase = "true";
+    runHook postInstall
+  '';
 
-  meta = {
-    homepage = "http://www.lsi.com/";
-    description = "LSI Logic Fusion MPT command line management tool";
-    license = lib.licenses.unfree;
+  meta = with lib; {
+    homepage = "https://github.com/exactassembly/meta-xa-stm/tree/master/recipes-support/lsiutil/files";
+    description = "Configuration utility for MPT adapters (FC, SCSI, and SAS/SATA)";
+    license = licenses.unfree;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ Luflosi ];
   };
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/lxc/default.nix b/nixpkgs/pkgs/os-specific/linux/lxc/default.nix
index bad7622771aa..e10af3abf923 100644
--- a/nixpkgs/pkgs/os-specific/linux/lxc/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/lxc/default.nix
@@ -9,11 +9,11 @@
 with lib;
 stdenv.mkDerivation rec {
   pname = "lxc";
-  version = "4.0.9";
+  version = "4.0.10";
 
   src = fetchurl {
     url = "https://linuxcontainers.org/downloads/lxc/lxc-${version}.tar.gz";
-    sha256 = "0az56xpvhqiwmf9wfxzaz89s5idrgd9ynd13psscw3hlx480dkqz";
+    sha256 = "1sgsic9dzj3wv2k5bx2vhcgappivhp1glkqfc2yrgr6jas052351";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/os-specific/linux/lxcfs/default.nix b/nixpkgs/pkgs/os-specific/linux/lxcfs/default.nix
index 440e81266c8b..3ed80269d3ad 100644
--- a/nixpkgs/pkgs/os-specific/linux/lxcfs/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/lxcfs/default.nix
@@ -5,13 +5,13 @@
 with lib;
 stdenv.mkDerivation rec {
   pname = "lxcfs";
-  version = "4.0.8";
+  version = "4.0.9";
 
   src = fetchFromGitHub {
     owner = "lxc";
     repo = "lxcfs";
     rev = "lxcfs-${version}";
-    sha256 = "sha256-8Tack2gM3AU3coGXs5hEbAaBCo5ss1sGUFFEjZDn5Lg=";
+    sha256 = "0zx58lair8hwi4bxm5h7i8n1j5fcdgw5cr6f4wk9qhks0sr5dip5";
   };
 
   nativeBuildInputs = [ pkg-config help2man autoreconfHook makeWrapper ];
diff --git a/nixpkgs/pkgs/os-specific/linux/nvidia-x11/builder.sh b/nixpkgs/pkgs/os-specific/linux/nvidia-x11/builder.sh
index 70fc5126a939..e6ad62b1128d 100755
--- a/nixpkgs/pkgs/os-specific/linux/nvidia-x11/builder.sh
+++ b/nixpkgs/pkgs/os-specific/linux/nvidia-x11/builder.sh
@@ -20,7 +20,7 @@ buildPhase() {
         sysSrc=$(echo $kernel/lib/modules/$kernelVersion/source)
         sysOut=$(echo $kernel/lib/modules/$kernelVersion/build)
         unset src # used by the nv makefile
-        make IGNORE_PREEMPT_RT_PRESENCE=1 SYSSRC=$sysSrc SYSOUT=$sysOut module -j$NIX_BUILD_CORES
+        make IGNORE_PREEMPT_RT_PRESENCE=1 NV_BUILD_SUPPORTS_HMM=1 SYSSRC=$sysSrc SYSOUT=$sysOut module -j$NIX_BUILD_CORES
 
         cd ..
     fi
diff --git a/nixpkgs/pkgs/os-specific/linux/setools/default.nix b/nixpkgs/pkgs/os-specific/linux/setools/default.nix
index 0da84ab1cefd..842a525353d4 100644
--- a/nixpkgs/pkgs/os-specific/linux/setools/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/setools/default.nix
@@ -1,5 +1,6 @@
 { lib, fetchFromGitHub, python3
 , libsepol, libselinux, checkpolicy
+, fetchpatch
 , withGraphics ? false
 }:
 
@@ -17,6 +18,13 @@ buildPythonApplication rec {
     sha256 = "0vr20bi8w147z5lclqz1l0j1b34137zg2r04pkafkgqqk7qbyjk6";
   };
 
+  patches = [
+    (fetchpatch { # included in 4.4.0
+      url = "https://github.com/SELinuxProject/setools/commit/f1b4a5d375be05fbccedb258c940d771bff8e524.diff";
+      sha256 = "1r38s6i4i6bdr2zdp5wcg1yifpf3pd018c73a511mgynyg7d11xy";
+    })
+  ];
+
   nativeBuildInputs = [ cython ];
   buildInputs = [ libsepol ];
   propagatedBuildInputs = [ enum34 libselinux networkx ]
diff --git a/nixpkgs/pkgs/os-specific/linux/syslinux/default.nix b/nixpkgs/pkgs/os-specific/linux/syslinux/default.nix
index 0f69cb13fcd9..4ca7f50b7d1a 100644
--- a/nixpkgs/pkgs/os-specific/linux/syslinux/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/syslinux/default.nix
@@ -23,12 +23,12 @@ stdenv.mkDerivation {
       sha256 = "06ifgzbpjj4picpj17zgprsfi501zf4pp85qjjgn29i5rs291zni";
     })
     (fetchurl {
-      url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/0005-gnu-efi-version-compatibility.patch?id=821c3da473d1399d930d5b4a086e46a4179eaa45";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/821c3da473d1399d930d5b4a086e46a4179eaa45/trunk/0005-gnu-efi-version-compatibility.patch";
       name = "0005-gnu-efi-version-compatibility.patch";
       sha256 = "1mz2idg8cwn0mvd3jixxynhkn7rhmi5fp8cc8zznh5f0ysfra446";
     })
     (fetchurl {
-      url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/0025-reproducible-build.patch?id=821c3da473d1399d930d5b4a086e46a4179eaa45";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/821c3da473d1399d930d5b4a086e46a4179eaa45/trunk/0025-reproducible-build.patch";
       name = "0025-reproducible-build.patch";
       sha256 = "0qk6wc6z3648828y3961pn4pi7xhd20a6fqn6z1mnj22bbvzcxls";
     })
diff --git a/nixpkgs/pkgs/os-specific/linux/systemd/default.nix b/nixpkgs/pkgs/os-specific/linux/systemd/default.nix
index c13f97fcde74..a33bb3c1a1d6 100644
--- a/nixpkgs/pkgs/os-specific/linux/systemd/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/systemd/default.nix
@@ -157,6 +157,13 @@ stdenv.mkDerivation {
       url = "https://github.com/systemd/systemd/commit/ab1aa6368a883bce88e3162fee2bea14aacedf23.patch";
       sha256 = "1b280l5jrjsg8qhsang199mpqjhkpix4c8bm3blknjnq9iv43add";
     })
+
+    # Fix CVE-2021-33910, disclosed 2021-07-20
+    (fetchpatch {
+      name = "CVE-2021-33910.patch";
+      url = "https://github.com/systemd/systemd/commit/441e0115646d54f080e5c3bb0ba477c892861ab9.patch";
+      sha256 = "1g1lk95igaadg67kah9bpi4zsc01rg398sd1247ghjsvl5hxn4v4";
+    })
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/os-specific/linux/wooting-udev-rules/default.nix b/nixpkgs/pkgs/os-specific/linux/wooting-udev-rules/default.nix
index 75924ad02a72..f1ae20692353 100644
--- a/nixpkgs/pkgs/os-specific/linux/wooting-udev-rules/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/wooting-udev-rules/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
   # Source: https://wooting.helpscoutdocs.com/article/68-wootility-configuring-device-access-for-wootility-under-linux-udev-rules
   src = [ ./wooting.rules ];
 
-  unpackPhase = ":";
+  dontUnpack = true;
 
   installPhase = ''
     install -Dpm644 $src $out/lib/udev/rules.d/70-wooting.rules
diff --git a/nixpkgs/pkgs/os-specific/linux/xf86-input-wacom/default.nix b/nixpkgs/pkgs/os-specific/linux/xf86-input-wacom/default.nix
index 34cfd58ab4bc..4ebc4ed76638 100644
--- a/nixpkgs/pkgs/os-specific/linux/xf86-input-wacom/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/xf86-input-wacom/default.nix
@@ -45,13 +45,11 @@ stdenv.mkDerivation rec {
     xorgserver
   ];
 
-  preConfigure = ''
-    mkdir -p $out/share/X11/xorg.conf.d
-    configureFlags="--with-xorg-module-dir=$out/lib/xorg/modules
-    --with-sdkdir=$out/include/xorg --with-xorg-conf-dir=$out/share/X11/xorg.conf.d"
-  '';
-
-  CFLAGS = "-I${pixman}/include/pixman-1";
+  configureFlags = [
+    "--with-xorg-module-dir=${placeholder "out"}/lib/xorg/modules"
+    "--with-sdkdir=${placeholder "out"}/include/xorg"
+    "--with-xorg-conf-dir=${placeholder "out"}/share/X11/xorg.conf.d"
+  ];
 
   meta = with lib; {
     maintainers = with maintainers; [ goibhniu fortuneteller2k ];
diff --git a/nixpkgs/pkgs/os-specific/linux/xmm7360-pci/default.nix b/nixpkgs/pkgs/os-specific/linux/xmm7360-pci/default.nix
new file mode 100644
index 000000000000..115299ff50bd
--- /dev/null
+++ b/nixpkgs/pkgs/os-specific/linux/xmm7360-pci/default.nix
@@ -0,0 +1,28 @@
+{ lib, stdenv, fetchFromGitHub, fetchpatch, kernel, perl, bc, breakpointHook }:
+
+stdenv.mkDerivation rec {
+  pname = "xmm7360-pci";
+  version = "unstable-2021-07-19";
+
+  src = fetchFromGitHub {
+    owner = "xmm7360";
+    repo = "xmm7360-pci";
+    rev = "7086b80bb609180b1b89fb478751e5e8414ab64f";
+    sha256 = "1wdb0phqg9rj9g9ycqdya0m7lx24kzjlh25yw0ifp898ddxrrr0c";
+  };
+
+  makeFlags = [ "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" ];
+
+  nativeBuildInputs = kernel.moduleBuildDependencies;
+  INSTALL_MOD_PATH = placeholder "out";
+  installFlags = [ "DEPMOD=true" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/xmm7360/xmm7360-pci";
+    description = "PCI driver for Fibocom L850-GL modem based on Intel XMM7360 modem";
+    downloadPage = "https://github.com/xmm7360/xmm7360-pci";
+    license = licenses.isc;
+    maintainers = with maintainers; [ flokli hexa ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/os-specific/windows/mingw-w64/default.nix b/nixpkgs/pkgs/os-specific/windows/mingw-w64/default.nix
index 0a342997530f..38293e65f70f 100644
--- a/nixpkgs/pkgs/os-specific/windows/mingw-w64/default.nix
+++ b/nixpkgs/pkgs/os-specific/windows/mingw-w64/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, windows, fetchurl }:
 
 let
-  version = "6.0.0";
+  version = "9.0.0";
 in stdenv.mkDerivation {
   pname = "mingw-w64";
   inherit version;
 
   src = fetchurl {
     url = "mirror://sourceforge/mingw-w64/mingw-w64-v${version}.tar.bz2";
-    sha256 = "1w28mynv500y03h92nh87rgw3fnp82qwnjbxrrzqkmr63q812pl0";
+    sha256 = "10a15bi4lyfi0k0haj0klqambicwma6yi7vssgbz8prg815vja8r";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/servers/althttpd/default.nix b/nixpkgs/pkgs/servers/althttpd/default.nix
index dfb073aa11fb..4f1a128dd388 100644
--- a/nixpkgs/pkgs/servers/althttpd/default.nix
+++ b/nixpkgs/pkgs/servers/althttpd/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "althttpd";
-  version = "unstable-2021-05-07";
+  version = "unstable-2021-06-09";
 
   src = fetchfossil {
     url = "https://sqlite.org/althttpd/";
-    rev = "2c5e3f9f7051a578";
-    sha256 = "sha256-+RuogtQAc+zjCWTOiOunu1pXf3LxfdWYQX+24ysJ7uY=";
+    rev = "0d3b5e232c57e188";
+    sha256 = "sha256-vZwpjYYMdP/FgPTAQ9Kdh2RRMovpONqu2v73cCoYyxE=";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/servers/bazarr/default.nix b/nixpkgs/pkgs/servers/bazarr/default.nix
index 7e7349408855..d15844e682e2 100644
--- a/nixpkgs/pkgs/servers/bazarr/default.nix
+++ b/nixpkgs/pkgs/servers/bazarr/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bazarr";
-  version = "0.9.5";
+  version = "0.9.6";
 
   src = fetchurl {
     url = "https://github.com/morpheus65535/bazarr/archive/v${version}.tar.gz";
-    sha256 = "sha256-N0HoZgAtWPgYPU9OWpMEXO2qUoNIGCsFn9vll0hLal0=";
+    sha256 = "sha256-aO9PIE/YlSIGEcntDCdxIYuuvV5jG266ldhC2QfT+e4=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/servers/code-server/default.nix b/nixpkgs/pkgs/servers/code-server/default.nix
index c5c27f530045..039f0578569b 100644
--- a/nixpkgs/pkgs/servers/code-server/default.nix
+++ b/nixpkgs/pkgs/servers/code-server/default.nix
@@ -1,26 +1,26 @@
 { lib, stdenv, fetchFromGitHub, buildGoModule, makeWrapper, runCommand
-, moreutils, jq, git, zip, rsync, pkg-config, yarn, python2
-, nodejs-12_x, libsecret, xorg, ripgrep
+, moreutils, jq, git, zip, rsync, pkg-config, yarn, python3
+, nodejs-14_x, libsecret, xorg, ripgrep
 , AppKit, Cocoa, Security, cctools }:
 
 let
   system = stdenv.hostPlatform.system;
 
-  nodejs = nodejs-12_x;
-  python = python2;
+  nodejs = nodejs-14_x;
+  python = python3;
   yarn' = yarn.override { inherit nodejs; };
   defaultYarnOpts = [ "frozen-lockfile" "non-interactive" "no-progress"];
 
 in stdenv.mkDerivation rec {
   pname = "code-server";
-  version = "3.8.0";
-  commit = "c4610f7829701aadb045d450013b84491c30580d";
+  version = "3.9.0";
+  commit = "fc6d123da59a4e5a675ac8e080f66e032ba01a1b";
 
   src = fetchFromGitHub {
     owner = "cdr";
     repo = "code-server";
     rev = "v${version}";
-    sha256 = "1snc7dbqfz53337h6av2zhkrn54ypanxljs5by4jqczq96c2v6yk";
+    sha256 = "0jgmf8d7hki1iv6yy1z0s5qjyxchxnwj8kv53jrwkllim08swbi3";
   };
 
   cloudAgent = buildGoModule rec {
@@ -46,7 +46,6 @@ in stdenv.mkDerivation rec {
   yarnCache = stdenv.mkDerivation {
     name = "${pname}-${version}-${system}-yarn-cache";
     inherit src;
-    phases = ["unpackPhase" "buildPhase"];
     nativeBuildInputs = [ yarn' git ];
     buildPhase = ''
       export HOME=$PWD
@@ -62,9 +61,9 @@ in stdenv.mkDerivation rec {
 
     # to get hash values use nix-build -A code-server.prefetchYarnCache
     outputHash = {
-      x86_64-linux = "0xc1yjz53ydg1mwyc2rp4hq20hg6i4aiirfwsnykjw1zm79qgrgb";
-      aarch64-linux = "0xc1yjz53ydg1mwyc2rp4hq20hg6i4aiirfwsnykjw1zm79qgrgb";
-      x86_64-darwin = "0xc1yjz53ydg1mwyc2rp4hq20hg6i4aiirfwsnykjw1zm79qgrgb";
+      x86_64-linux = "01nkqcfvx2qw9g60h8k9x221ibv3j58vdkjzcjnj7ph54a33ifih";
+      aarch64-linux = "01nkqcfvx2qw9g60h8k9x221ibv3j58vdkjzcjnj7ph54a33ifih";
+      x86_64-darwin = "01nkqcfvx2qw9g60h8k9x221ibv3j58vdkjzcjnj7ph54a33ifih";
     }.${system} or (throw "Unsupported system ${system}");
   };
 
@@ -210,7 +209,7 @@ in stdenv.mkDerivation rec {
     ln -s "${cloudAgent}/bin/cloud-agent" $out/libexec/code-server/lib/coder-cloud-agent
 
     # create wrapper
-    makeWrapper "${nodejs-12_x}/bin/node" "$out/bin/code-server" \
+    makeWrapper "${nodejs-14_x}/bin/node" "$out/bin/code-server" \
       --add-flags "$out/libexec/code-server/out/node/entry.js"
   '';
 
diff --git a/nixpkgs/pkgs/servers/consul/default.nix b/nixpkgs/pkgs/servers/consul/default.nix
index c259f962b04c..da0e7364e95a 100644
--- a/nixpkgs/pkgs/servers/consul/default.nix
+++ b/nixpkgs/pkgs/servers/consul/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "consul";
-  version = "1.10.0";
+  version = "1.10.1";
   rev = "v${version}";
 
   # Note: Currently only release tags are supported, because they have the Consul UI
@@ -17,7 +17,7 @@ buildGoModule rec {
     owner = "hashicorp";
     repo = pname;
     inherit rev;
-    sha256 = "sha256:0gc5shz1nbya7jdkggw2izbw1p4lwkbqgbc5ihlvnwrfdgksfqqd";
+    sha256 = "sha256-oap0pXqtIbT9wMfD/RuJ2tTRynSvfzsgL8TyY4nj3sM=";
   };
 
   passthru.tests.consul = nixosTests.consul;
@@ -26,7 +26,7 @@ buildGoModule rec {
   # has a split module structure in one repo
   subPackages = ["." "connect/certgen"];
 
-  vendorSha256 = "sha256:0sxnnzzsp58ma42ylysdgxibqf65f4f9vbf8c20r44426vg75as7";
+  vendorSha256 = "sha256-DloQGxeooVhYWA5/ICkL2UEQvNPilb2F5pst78UzWPI=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/servers/dict/dictd-db.nix b/nixpkgs/pkgs/servers/dict/dictd-db.nix
index 0bc05bd1bb36..d72deab2354b 100644
--- a/nixpkgs/pkgs/servers/dict/dictd-db.nix
+++ b/nixpkgs/pkgs/servers/dict/dictd-db.nix
@@ -12,7 +12,7 @@ let
      inherit src;
      locale = _locale;
      dbName = _name;
-     buildPhase = ":";
+     dontBuild = true;
      unpackPhase = ''
        tar xf  ${src}
      '';
diff --git a/nixpkgs/pkgs/servers/dns/doh-proxy/default.nix b/nixpkgs/pkgs/servers/dns/doh-proxy/default.nix
index e65021599ad4..8128ec6f04d4 100644
--- a/nixpkgs/pkgs/servers/dns/doh-proxy/default.nix
+++ b/nixpkgs/pkgs/servers/dns/doh-proxy/default.nix
@@ -10,7 +10,7 @@ buildPythonApplication rec {
     sha256 = "1fxzxipzdvk75yrcr78mpdz8lwpisba67lk4jcwxdnkv6997dwfp";
   };
 
-  nativeBuildInputs = [ pytestrunner flake8];
+  nativeBuildInputs = [ pytest-runner flake8];
 
   propagatedBuildInputs = [
     aioh2
@@ -22,7 +22,7 @@ buildPythonApplication rec {
     asynctest
     unittest-data-provider
     pytest
-    pytestcov
+    pytest-cov
     pytest-aiohttp
   ];
 
diff --git a/nixpkgs/pkgs/servers/dns/knot-dns/default.nix b/nixpkgs/pkgs/servers/dns/knot-dns/default.nix
index d052ddb7b79f..e5192b7b3c1e 100644
--- a/nixpkgs/pkgs/servers/dns/knot-dns/default.nix
+++ b/nixpkgs/pkgs/servers/dns/knot-dns/default.nix
@@ -7,11 +7,11 @@ let inherit (lib) optional optionals; in
 
 stdenv.mkDerivation rec {
   pname = "knot-dns";
-  version = "3.0.7";
+  version = "3.0.8";
 
   src = fetchurl {
     url = "https://secure.nic.cz/files/knot-dns/knot-${version}.tar.xz";
-    sha256 = "2bad8be0be95c8f54a26d1e16299e65f31ae1b34bd6ad3819aa50e7b40521484";
+    sha256 = "df723949c19ebecf9a7118894c3127e292eb09dc7274b5ce9b527409f42edfb0";
   };
 
   outputs = [ "bin" "out" "dev" ];
diff --git a/nixpkgs/pkgs/servers/foundationdb/vsmake.nix b/nixpkgs/pkgs/servers/foundationdb/vsmake.nix
index e171d7145647..52807fc06201 100644
--- a/nixpkgs/pkgs/servers/foundationdb/vsmake.nix
+++ b/nixpkgs/pkgs/servers/foundationdb/vsmake.nix
@@ -21,7 +21,7 @@ let
     };
 
     dontConfigure = true;
-    buildPhase = ":";
+    dontBuild = true;
     installPhase = "mkdir -p $out/include && cp -R boost $out/include/";
   };
 
diff --git a/nixpkgs/pkgs/servers/ftp/bftpd/default.nix b/nixpkgs/pkgs/servers/ftp/bftpd/default.nix
index b92975149dbd..f8a9875914da 100644
--- a/nixpkgs/pkgs/servers/ftp/bftpd/default.nix
+++ b/nixpkgs/pkgs/servers/ftp/bftpd/default.nix
@@ -25,7 +25,6 @@ in stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with lib; {
-    inherit version;
     description = "A minimal ftp server";
     downloadPage = "http://bftpd.sf.net/download.html";
     homepage = "http://bftpd.sf.net/";
diff --git a/nixpkgs/pkgs/servers/headscale/default.nix b/nixpkgs/pkgs/servers/headscale/default.nix
new file mode 100644
index 000000000000..bece609fc4e0
--- /dev/null
+++ b/nixpkgs/pkgs/servers/headscale/default.nix
@@ -0,0 +1,26 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "headscale";
+  version = "0.3.4";
+
+  src = fetchFromGitHub {
+    owner = "juanfont";
+    repo = "headscale";
+    rev = "v${version}";
+    sha256 = "sha256-O8PJrowP9iDK4sQXHNi1eo44X/tRc7nyKZgJUB6fKC4=";
+  };
+
+  vendorSha256 = "sha256-0Lqr/tWk31S01vi21sG2gtlGouOhecL4u8ScKG0nWLo=";
+
+  # Ldflags are same as build target in the project's Makefile
+  # https://github.com/juanfont/headscale/blob/main/Makefile
+  ldflags = [ "-s" "-w" "-X main.version=v${version}" ];
+
+  meta = with lib; {
+    description = "An implementation of the Tailscale coordination server";
+    homepage = "https://github.com/juanfont/headscale";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ nkje ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/heisenbridge/default.nix b/nixpkgs/pkgs/servers/heisenbridge/default.nix
index 2d98f377b3bd..638dba8f56c7 100644
--- a/nixpkgs/pkgs/servers/heisenbridge/default.nix
+++ b/nixpkgs/pkgs/servers/heisenbridge/default.nix
@@ -2,13 +2,13 @@
 
 python3Packages.buildPythonPackage rec {
   pname = "heisenbridge";
-  version = "unstable-2021-05-29";
+  version = "0.99.1";
 
   src = fetchFromGitHub {
     owner = "hifi";
     repo = "heisenbridge";
-    rev = "980755226b0cb46ad9c7f40e0e940f354212a8b7";
-    sha256 = "sha256-jO1Dqtv3IbV4FLI3C82pxssgrCf43hAEcPLYszX2GNI=";
+    rev = "v${version}";
+    sha256 = "sha256-v3ji450YFxMiyBOb4DuDJDvAGKhWYSSQ8kBB51r97PE=";
   };
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/nixpkgs/pkgs/servers/hockeypuck/server.nix b/nixpkgs/pkgs/servers/hockeypuck/server.nix
new file mode 100644
index 000000000000..cf48fd5716c9
--- /dev/null
+++ b/nixpkgs/pkgs/servers/hockeypuck/server.nix
@@ -0,0 +1,21 @@
+{ lib, buildGoModule, fetchFromGitHub, nixosTests }:
+
+let
+  sources = (import ./sources.nix) { inherit fetchFromGitHub; };
+in
+buildGoModule {
+  inherit (sources) pname version src;
+
+  modRoot = "src/hockeypuck/";
+  vendorSha256 = null;
+  doCheck = false; # Uses networking for tests
+
+  passthru.tests = nixosTests.hockeypuck;
+
+  meta = with lib; {
+    description = "OpenPGP Key Server";
+    homepage = "https://github.com/hockeypuck/hockeypuck";
+    license = licenses.agpl3Plus;
+    maintainers = [ maintainers.etu ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/hockeypuck/sources.nix b/nixpkgs/pkgs/servers/hockeypuck/sources.nix
new file mode 100644
index 000000000000..b504cd331410
--- /dev/null
+++ b/nixpkgs/pkgs/servers/hockeypuck/sources.nix
@@ -0,0 +1,16 @@
+{ fetchFromGitHub }:
+
+let
+  pname = "hockeypuck";
+  version = "2.1.0";
+in
+{
+  inherit version pname;
+
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = version;
+    sha256 = "0da3ffbqck0dr7d89gy2yillp7g9a4ziyjlvrm8vgkkg2fs8dlb1";
+  };
+}
diff --git a/nixpkgs/pkgs/servers/hockeypuck/web.nix b/nixpkgs/pkgs/servers/hockeypuck/web.nix
new file mode 100644
index 000000000000..32f2b1acd22e
--- /dev/null
+++ b/nixpkgs/pkgs/servers/hockeypuck/web.nix
@@ -0,0 +1,28 @@
+{ stdenv, lib, fetchFromGitHub, nixosTests }:
+
+let
+  sources = (import ./sources.nix) { inherit fetchFromGitHub; };
+in
+stdenv.mkDerivation {
+  pname = "${sources.pname}-web";
+
+  inherit (sources) version src;
+
+  dontBuild = true; # We should just copy the web templates
+
+  installPhase = ''
+    mkdir -p $out/share/
+
+    cp -vr contrib/webroot $out/share/
+    cp -vr contrib/templates $out/share/
+  '';
+
+  passthru.tests = nixosTests.hockeypuck;
+
+  meta = with lib; {
+    description = "OpenPGP Key Server web resources";
+    homepage = "https://github.com/hockeypuck/hockeypuck";
+    license = licenses.gpl3Plus;
+    maintainers = [ maintainers.etu ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/home-assistant/0001-tests-ignore-OSErrors-in-hass-fixture.patch b/nixpkgs/pkgs/servers/home-assistant/0001-tests-ignore-OSErrors-in-hass-fixture.patch
new file mode 100644
index 000000000000..add0ea1d5521
--- /dev/null
+++ b/nixpkgs/pkgs/servers/home-assistant/0001-tests-ignore-OSErrors-in-hass-fixture.patch
@@ -0,0 +1,27 @@
+From 3e3f5c37252a33ea1e71c39f2ca0f13940c261ad Mon Sep 17 00:00:00 2001
+From: Martin Weinelt <hexa@darmstadt.ccc.de>
+Date: Sat, 17 Jul 2021 16:11:23 +0200
+Subject: [PATCH] tests: ignore OSErrors in hass fixture
+
+The nix sandbox will cause OSErrors due to limitations imposed on
+network interaction. This change makes it so we forgive these cases.
+---
+ tests/conftest.py | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/tests/conftest.py b/tests/conftest.py
+index 1f5ffc80d0..b284727a0f 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -168,6 +168,8 @@ def hass(loop, load_registries, hass_storage, request):
+             continue
+         if isinstance(ex, ServiceNotFound):
+             continue
++        if isinstance(ex, OSError):
++            continue
+         raise ex
+ 
+ 
+-- 
+2.32.0
+
diff --git a/nixpkgs/pkgs/servers/home-assistant/component-packages.nix b/nixpkgs/pkgs/servers/home-assistant/component-packages.nix
index dbe9c938c678..2190bd6b2787 100644
--- a/nixpkgs/pkgs/servers/home-assistant/component-packages.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/component-packages.nix
@@ -2,7 +2,7 @@
 # Do not edit!
 
 {
-  version = "2021.6.6";
+  version = "2021.7.0";
   components = {
     "abode" = ps: with ps; [ abodepy ];
     "accuweather" = ps: with ps; [ accuweather ];
@@ -27,6 +27,7 @@
     "almond" = ps: with ps; [ aiohttp-cors pyalmond ];
     "alpha_vantage" = ps: with ps; [ alpha-vantage ];
     "amazon_polly" = ps: with ps; [ boto3 ];
+    "ambee" = ps: with ps; [ ambee ];
     "ambiclimate" = ps: with ps; [ aiohttp-cors ambiclimate ];
     "ambient_station" = ps: with ps; [ aioambient ];
     "amcrest" = ps: with ps; [ amcrest ha-ffmpeg ];
@@ -90,7 +91,7 @@
     "blueprint" = ps: with ps; [ ];
     "bluesound" = ps: with ps; [ xmltodict ];
     "bluetooth_le_tracker" = ps: with ps; [ pygatt ];
-    "bluetooth_tracker" = ps: with ps; [ bt_proximity pybluez ];
+    "bluetooth_tracker" = ps: with ps; [ bt-proximity pybluez ];
     "bme280" = ps: with ps; [ smbus-cffi ]; # missing inputs: i2csense
     "bme680" = ps: with ps; [ bme680 smbus-cffi ];
     "bmp280" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-circuitpython-bmp280
@@ -157,7 +158,7 @@
     "deconz" = ps: with ps; [ pydeconz ];
     "decora" = ps: with ps; [ bluepy ]; # missing inputs: decora
     "decora_wifi" = ps: with ps; [ ]; # missing inputs: decora_wifi
-    "default_config" = ps: with ps; [ pynacl aiodiscover aiohttp-cors async-upnp-client defusedxml distro emoji hass-nabucasa home-assistant-frontend ifaddr netdisco pillow scapy sqlalchemy zeroconf ];
+    "default_config" = ps: with ps; [ pynacl aiodiscover aiohttp-cors async-upnp-client defusedxml distro emoji hass-nabucasa home-assistant-frontend ifaddr pillow scapy sqlalchemy zeroconf ];
     "delijn" = ps: with ps; [ pydelijn ];
     "deluge" = ps: with ps; [ deluge-client ];
     "demo" = ps: with ps; [ aiohttp-cors ];
@@ -176,7 +177,7 @@
     "digital_ocean" = ps: with ps; [ digital-ocean ];
     "digitalloggers" = ps: with ps; [ ]; # missing inputs: dlipower
     "directv" = ps: with ps; [ directv ];
-    "discogs" = ps: with ps; [ discogs_client ];
+    "discogs" = ps: with ps; [ discogs-client ];
     "discord" = ps: with ps; [ discordpy ];
     "discovery" = ps: with ps; [ aiohttp-cors ifaddr netdisco zeroconf ];
     "dlib_face_detect" = ps: with ps; [ face_recognition ];
@@ -276,6 +277,7 @@
     "folder" = ps: with ps; [ ];
     "folder_watcher" = ps: with ps; [ watchdog ];
     "foobot" = ps: with ps; [ foobot-async ];
+    "forecast_solar" = ps: with ps; [ forecast-solar ];
     "forked_daapd" = ps: with ps; [ ]; # missing inputs: pyforked-daapd pylibrespot-java
     "fortios" = ps: with ps; [ fortiosapi ];
     "foscam" = ps: with ps; [ libpyfoscam ];
@@ -283,11 +285,12 @@
     "free_mobile" = ps: with ps; [ ]; # missing inputs: freesms
     "freebox" = ps: with ps; [ freebox-api ];
     "freedns" = ps: with ps; [ ];
-    "fritz" = ps: with ps; [ fritzconnection ];
+    "freedompro" = ps: with ps; [ pyfreedompro ];
+    "fritz" = ps: with ps; [ aiohttp-cors fritzconnection fritzprofiles ifaddr xmltodict ];
     "fritzbox" = ps: with ps; [ pyfritzhome ];
     "fritzbox_callmonitor" = ps: with ps; [ fritzconnection ];
     "fritzbox_netmonitor" = ps: with ps; [ fritzconnection ];
-    "fronius" = ps: with ps; [ ]; # missing inputs: pyfronius
+    "fronius" = ps: with ps; [ pyfronius ];
     "frontend" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow ];
     "frontier_silicon" = ps: with ps; [ ]; # missing inputs: afsapi
     "futurenow" = ps: with ps; [ pyfnip ];
@@ -520,6 +523,7 @@
     "mochad" = ps: with ps; [ ]; # missing inputs: pymochad
     "modbus" = ps: with ps; [ pymodbus ];
     "modem_callerid" = ps: with ps; [ ]; # missing inputs: basicmodem
+    "modern_forms" = ps: with ps; [ aiomodernforms ];
     "mold_indicator" = ps: with ps; [ ];
     "monoprice" = ps: with ps; [ ]; # missing inputs: pymonoprice
     "moon" = ps: with ps; [ ];
@@ -732,6 +736,7 @@
     "scsgate" = ps: with ps; [ ]; # missing inputs: scsgate
     "search" = ps: with ps; [ aiohttp-cors ];
     "season" = ps: with ps; [ ephem ];
+    "select" = ps: with ps; [ ];
     "sendgrid" = ps: with ps; [ sendgrid ];
     "sense" = ps: with ps; [ sense-energy ];
     "sensehat" = ps: with ps; [ ]; # missing inputs: sense-hat
@@ -742,7 +747,7 @@
     "serial_pm" = ps: with ps; [ pmsensor ];
     "sesame" = ps: with ps; [ ]; # missing inputs: pysesame2
     "seven_segments" = ps: with ps; [ pillow ];
-    "seventeentrack" = ps: with ps; [ ]; # missing inputs: py17track
+    "seventeentrack" = ps: with ps; [ py17track ];
     "sharkiq" = ps: with ps; [ sharkiqpy ];
     "shell_command" = ps: with ps; [ ];
     "shelly" = ps: with ps; [ aioshelly ];
@@ -788,7 +793,7 @@
     "somfy_mylink" = ps: with ps; [ somfy-mylink-synergy ];
     "sonarr" = ps: with ps; [ sonarr ];
     "songpal" = ps: with ps; [ python-songpal ];
-    "sonos" = ps: with ps; [ aiohttp-cors plexapi plexauth plexwebsocket pysonos ];
+    "sonos" = ps: with ps; [ aiohttp-cors async-upnp-client defusedxml ifaddr plexapi plexauth plexwebsocket pysonos zeroconf ];
     "sony_projector" = ps: with ps; [ ]; # missing inputs: pysdcp
     "soundtouch" = ps: with ps; [ aiohttp-cors ifaddr libsoundtouch zeroconf ];
     "spaceapi" = ps: with ps; [ aiohttp-cors ];
@@ -800,7 +805,7 @@
     "sql" = ps: with ps; [ sqlalchemy ];
     "squeezebox" = ps: with ps; [ pysqueezebox ];
     "srp_energy" = ps: with ps; [ srpenergy ];
-    "ssdp" = ps: with ps; [ aiohttp-cors async-upnp-client defusedxml ifaddr netdisco zeroconf ];
+    "ssdp" = ps: with ps; [ aiohttp-cors async-upnp-client defusedxml ifaddr zeroconf ];
     "starline" = ps: with ps; [ starline ];
     "starlingbank" = ps: with ps; [ ]; # missing inputs: starlingbank
     "startca" = ps: with ps; [ xmltodict ];
@@ -907,7 +912,7 @@
     "upc_connect" = ps: with ps; [ connect-box ];
     "upcloud" = ps: with ps; [ upcloud-api ];
     "updater" = ps: with ps; [ distro ];
-    "upnp" = ps: with ps; [ async-upnp-client ];
+    "upnp" = ps: with ps; [ aiohttp-cors async-upnp-client defusedxml ifaddr zeroconf ];
     "uptime" = ps: with ps; [ ];
     "uptimerobot" = ps: with ps; [ ]; # missing inputs: pyuptimerobot
     "uscis" = ps: with ps; [ ]; # missing inputs: uscisstatus
@@ -972,13 +977,13 @@
     "xeoma" = ps: with ps; [ pyxeoma ];
     "xiaomi" = ps: with ps; [ ha-ffmpeg ];
     "xiaomi_aqara" = ps: with ps; [ pyxiaomigateway aiohttp-cors ifaddr netdisco zeroconf ];
-    "xiaomi_miio" = ps: with ps; [ construct python-miio ];
+    "xiaomi_miio" = ps: with ps; [ construct micloud python-miio ];
     "xiaomi_tv" = ps: with ps; [ pymitv ];
     "xmpp" = ps: with ps; [ slixmpp ];
     "xs1" = ps: with ps; [ ]; # missing inputs: xs1-api-client
     "yale_smart_alarm" = ps: with ps; [ yalesmartalarmclient ];
     "yamaha" = ps: with ps; [ rxv ];
-    "yamaha_musiccast" = ps: with ps; [ ]; # missing inputs: pymusiccast
+    "yamaha_musiccast" = ps: with ps; [ aiomusiccast ];
     "yandex_transport" = ps: with ps; [ aioymaps ];
     "yandextts" = ps: with ps; [ ];
     "yeelight" = ps: with ps; [ yeelight ];
diff --git a/nixpkgs/pkgs/servers/home-assistant/default.nix b/nixpkgs/pkgs/servers/home-assistant/default.nix
index c9a4a15a87c0..36af74cc1620 100644
--- a/nixpkgs/pkgs/servers/home-assistant/default.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/default.nix
@@ -22,19 +22,7 @@
 let
   defaultOverrides = [
     # Override the version of some packages pinned in Home Assistant's setup.py and requirements_all.txt
-
-    # Pinned due to API changes in aiopvpc>=2.2.0, remove after 2021.7.0
-    (self: super: {
-      aiopvpc = super.aiopvpc.overridePythonAttrs (oldAttr: rec {
-        version = "2.1.2";
-        src = fetchFromGitHub {
-          owner = "azogue";
-          repo = "aiopvpc";
-          rev = "v${version}";
-          sha256 = "0s8ki46dh39kw6qvsjcfcxa0gblyi33m3hry137kbi4lw5ws6qhr";
-        };
-      });
-    })
+    (mkOverride "python-slugify" "4.0.1" "69a517766e00c1268e5bbfc0d010a0a8508de0b18d30ad5a1ff357f8ae724270")
 
     # Pinned due to API changes in iaqualink>=2.0, remove after
     # https://github.com/home-assistant/core/pull/48137 was merged
@@ -70,19 +58,6 @@ let
     (mkOverride "ring-doorbell" "0.6.2"
       "fbd537722a27b3b854c26506d894b7399bb8dc57ff36083285971227a2d46560")
 
-    # Pinned due to API changes in pyatmo>=5.1.0
-    (self: super: {
-      pyatmo = super.pyatmo.overridePythonAttrs (oldAttrs: rec {
-        version = "5.0.1";
-        src = fetchFromGitHub {
-          owner = "jabesq";
-          repo = "pyatmo";
-          rev = "v${version}";
-          sha256 = "0can9v602iqfn0l01fd7gr63qzvcngfm0qka4s1x0pldh6avxmfh";
-        };
-      });
-    })
-
     # Pinned due to API changes in pyatv>=0.8.0
     (self: super: {
       pyatv = super.pyatv.overridePythonAttrs (olAttrs: rec {
@@ -149,8 +124,6 @@ let
       });
     })
 
-    (mkOverride "pysma" "0.4.3" "sha256-vriMnJFS7yfTyDT1f4sx1xEBTQjqc4ZHmkdHp1vcd+Q=")
-
     # Pinned due to API changes in eebrightbox>=0.0.5
     (self: super: {
       eebrightbox = super.eebrightbox.overridePythonAttrs (oldAttrs: rec {
@@ -197,7 +170,7 @@ let
   extraBuildInputs = extraPackages py.pkgs;
 
   # Don't forget to run parse-requirements.py after updating
-  hassVersion = "2021.6.6";
+  hassVersion = "2021.7.0";
 
 in with py.pkgs; buildPythonApplication rec {
   pname = "homeassistant";
@@ -214,11 +187,12 @@ in with py.pkgs; buildPythonApplication rec {
     owner = "home-assistant";
     repo = "core";
     rev = version;
-    sha256 = "0r8l2qya9pdl65kq3xrnb1vhmbnxm3bj12hn1wyxmw56l8m9l5d5";
+    sha256 = "1dx1pmi0w265pyajmmvd7k6vb5z7s77a7b161zd0n4zsb989dil6";
   };
 
   # leave this in, so users don't have to constantly update their downstream patch handling
   patches = [
+    ./0001-tests-ignore-OSErrors-in-hass-fixture.patch
   ];
 
   postPatch = ''
@@ -673,7 +647,8 @@ in with py.pkgs; buildPythonApplication rec {
     "somfy_mylink"
     "sonarr"
     "songpal"
-    "sonos"
+    # disable sonos components test because they rely on ssdp, which doesn't work in our sandbox
+    # "sonos"
     "soundtouch"
     "spaceapi"
     "speedtestdotnet"
@@ -735,7 +710,8 @@ in with py.pkgs; buildPythonApplication rec {
     "upb"
     "upcloud"
     "updater"
-    "upnp"
+    # disabled, because it tries to join a multicast group and fails to find a usable network interface
+    # "upnp"
     "uptime"
     "usgs_earthquakes_feed"
     "utility_meter"
@@ -751,7 +727,8 @@ in with py.pkgs; buildPythonApplication rec {
     "vizio"
     "voicerss"
     "volumio"
-    "vultr"
+    # disabled, becaused AttributeError: <class 'vultr.vultr.Vultr'> does not have the attribute 'server_list'
+    # "vultr"
     "wake_on_lan"
     "wallbox"
     "water_heater"
@@ -776,7 +753,8 @@ in with py.pkgs; buildPythonApplication rec {
     "yandex_transport"
     "yandextts"
     "yeelight"
-    "zeroconf"
+    # disabled, because it tries to join a multicast group and fails to find a usable network interface
+    # "zeroconf"
     "zerproc"
     "zha"
     "zodiac"
@@ -826,6 +804,8 @@ in with py.pkgs; buildPythonApplication rec {
     # wallbox/test_config_flow.py: Tries to connect to api.wall-box.cim: Failed to establish a new connection: [Errno -2] Name or service not known
     "--deselect tests/components/wallbox/test_config_flow.py::test_form_invalid_auth"
     "--deselect tests/components/wallbox/test_config_flow.py::test_form_cannot_connect"
+    # tests/components/default_config/test_init.py: Tries to check for updates and fails ungracefully without network access
+    "--deselect tests/components/default_config/test_init.py::test_setup"
     # tests are located in tests/
     "tests"
     # dynamically add packages required for component tests
@@ -861,6 +841,10 @@ in with py.pkgs; buildPythonApplication rec {
     "test_onboarding_core_no_rpi_power"
     # hue/test_sensor_base.py: Race condition when counting events
     "test_hue_events"
+    # homekit/test_homekit.py: Tries to use zeroconf, which tries to join a multicast group
+    "test_homekit_uses_system_zeroconf"
+    # august/test_lock.py: AssertionError: assert 'unlocked' == 'locked'
+    "test_lock_update_via_pubnub"
   ];
 
   preCheck = ''
diff --git a/nixpkgs/pkgs/servers/home-assistant/frontend.nix b/nixpkgs/pkgs/servers/home-assistant/frontend.nix
index f59f3943cd03..a42b13a260d5 100644
--- a/nixpkgs/pkgs/servers/home-assistant/frontend.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/frontend.nix
@@ -4,11 +4,11 @@ buildPythonPackage rec {
   # the frontend version corresponding to a specific home-assistant version can be found here
   # https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json
   pname = "home-assistant-frontend";
-  version = "20210603.0";
+  version = "20210707.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-2UhbtaxEcOkD9Z5g9gZs+QjuVLXZGCEcmKoxRtIEYxw=";
+    sha256 = "sha256-6RR+T4+vS6g00+MS1ty8aFVx6WM2dE+c17+wDoPxnGg=";
   };
 
   # there is nothing to strip in this package
diff --git a/nixpkgs/pkgs/servers/home-assistant/update.sh b/nixpkgs/pkgs/servers/home-assistant/update.sh
index 5ed865f411e2..8b17dabdfe28 100755
--- a/nixpkgs/pkgs/servers/home-assistant/update.sh
+++ b/nixpkgs/pkgs/servers/home-assistant/update.sh
@@ -23,10 +23,16 @@ sed -i -e "s/version =.*/version = \"${TARGET_VERSION}\";/" \
 sed -i -e "s/hassVersion =.*/hassVersion = \"${TARGET_VERSION}\";/" \
     default.nix
 
-./parse-requirements.py
 (
+    # update the frontend before running parse-requirements, so it doesn't get shown as outdated
     cd ../../..
     nix-update --version "$FRONTEND_VERSION" home-assistant.python.pkgs.home-assistant-frontend
+)
+
+./parse-requirements.py
+
+(
+    cd ../../..
     nix-update --version "$TARGET_VERSION" --build home-assistant
 )
 
diff --git a/nixpkgs/pkgs/servers/hqplayerd/default.nix b/nixpkgs/pkgs/servers/hqplayerd/default.nix
index ea6cd9ae04c3..594085d422ef 100644
--- a/nixpkgs/pkgs/servers/hqplayerd/default.nix
+++ b/nixpkgs/pkgs/servers/hqplayerd/default.nix
@@ -4,6 +4,7 @@
 , cairo
 , fetchurl
 , flac
+, gcc11
 , gnome
 , gssdp
 , gupnp
@@ -16,13 +17,11 @@
 
 stdenv.mkDerivation rec {
   pname = "hqplayerd";
-  version = "4.24.1-62";
+  version = "4.24.2-63";
 
   src = fetchurl {
-    # FIXME: use the fc34 sources when we get glibc 2.33 in nixpkgs
-    # c.f. https://github.com/NixOS/nixpkgs/pull/111616
-    url = "https://www.signalyst.eu/bins/${pname}/fc33/${pname}-${version}.fc33.x86_64.rpm";
-    sha256 = "sha256-lnejPkw6X3wRtjXTsdipEy6yZCEsDARhLPnySIltHXs=";
+    url = "https://www.signalyst.eu/bins/${pname}/fc34/${pname}-${version}.fc34.x86_64.rpm";
+    sha256 = "sha256-6JUgHDO+S73n/IVQhkmC0Nw4GQVzTLtiBbz/wZiflRg=";
   };
 
   unpackPhase = ''
@@ -35,6 +34,7 @@ stdenv.mkDerivation rec {
     alsa-lib
     cairo
     flac
+    gcc11.cc.lib
     gnome.rygel
     gssdp
     gupnp
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
 
     # misc service support files
     mkdir -p $out/var/lib/hqplayerd
-    cp -r ./var/hqplayer/web $out/var/lib/hqplayerd
+    cp -r ./var/lib/hqplayer/web $out/var/lib/hqplayer
 
     runHook postInstall
   '';
diff --git a/nixpkgs/pkgs/servers/http/jetty/default.nix b/nixpkgs/pkgs/servers/http/jetty/default.nix
index d9830df4f454..f226e0ad7e4a 100644
--- a/nixpkgs/pkgs/servers/http/jetty/default.nix
+++ b/nixpkgs/pkgs/servers/http/jetty/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "jetty";
-  version = "9.4.41.v20210516";
+  version = "9.4.43.v20210629";
   src = fetchurl {
     url = "https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/${version}/jetty-distribution-${version}.tar.gz";
-    sha256 = "sha256-hFQC1UiqZbbvyMf1FC3eqvVga3QdPWh0fbotatkVHBI=";
+    sha256 = "sha256-AfrmVLCZMuRGAZqoWeevbgXifbreErVM17rjJJ/HI9k=";
   };
 
   dontBuild = true;
diff --git a/nixpkgs/pkgs/servers/http/nginx/mainline.nix b/nixpkgs/pkgs/servers/http/nginx/mainline.nix
index 5b87b499964e..80e56d1bf0f0 100644
--- a/nixpkgs/pkgs/servers/http/nginx/mainline.nix
+++ b/nixpkgs/pkgs/servers/http/nginx/mainline.nix
@@ -1,6 +1,6 @@
 { callPackage, ... }@args:
 
 callPackage ./generic.nix args {
-  version = "1.21.0";
-  sha256 = "0w87zhm5nfx88x9hj6drrvm5f3m02kzbjp39x1lsglrbmi5jl6gy";
+  version = "1.21.1";
+  sha256 = "0q2m2pd9x287py54kp49ys5pwnn0j17x7jjl0cx1c5916h8h7fk8";
 }
diff --git a/nixpkgs/pkgs/servers/http/nginx/quic.nix b/nixpkgs/pkgs/servers/http/nginx/quic.nix
index a8864864721e..8bb383d59964 100644
--- a/nixpkgs/pkgs/servers/http/nginx/quic.nix
+++ b/nixpkgs/pkgs/servers/http/nginx/quic.nix
@@ -6,8 +6,8 @@
 callPackage ./generic.nix args {
   src = fetchhg {
     url = "https://hg.nginx.org/nginx-quic";
-    rev = "1fec68e322d0"; # branch=quic
-    sha256 = "0nr1mjic215yc6liyv1kfwhfdija3q2sw3qdwibds5vkg330vmw8";
+    rev = "5b0c229ba5fe"; # branch=quic
+    sha256 = "1bb6n6b4nkc1cfllj75lwr4gjijl8883bkcvq8ncg7r4s5xs7r90";
   };
 
   preConfigure = ''
diff --git a/nixpkgs/pkgs/servers/http/nix-binary-cache/default.nix b/nixpkgs/pkgs/servers/http/nix-binary-cache/default.nix
index 653233239627..4f26610e10cf 100644
--- a/nixpkgs/pkgs/servers/http/nix-binary-cache/default.nix
+++ b/nixpkgs/pkgs/servers/http/nix-binary-cache/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "2014-06-29-1";
   pname = "nix-binary-cache";
 
-  phases = ["installPhase"];
+  dontUnpack = true;
 
   installPhase = ''
     mkdir -p "$out/bin"
@@ -54,7 +54,6 @@ stdenv.mkDerivation rec {
     '';
     maintainers = [lib.maintainers.raskin];
     license = lib.licenses.gpl2Plus;
-    inherit version;
     platforms = lib.platforms.all;
     hydraPlatforms = [];
   };
diff --git a/nixpkgs/pkgs/servers/http/openresty/default.nix b/nixpkgs/pkgs/servers/http/openresty/default.nix
index 964517649900..71490b342805 100644
--- a/nixpkgs/pkgs/servers/http/openresty/default.nix
+++ b/nixpkgs/pkgs/servers/http/openresty/default.nix
@@ -9,11 +9,11 @@
 callPackage ../nginx/generic.nix args rec {
   pname = "openresty";
   nginxVersion = "1.19.3";
-  version = "${nginxVersion}.1";
+  version = "${nginxVersion}.2";
 
   src = fetchurl {
     url = "https://openresty.org/download/openresty-${version}.tar.gz";
-    sha256 = "0p9xn0xgbk6nmjfb25a3d6bwxm8q23igkixqma5fpygla6fcsvzk";
+    sha256 = "1fav3qykckqcyw9ksi8s61prpwab44zbcvj95rwfpfqgk5jffh6f";
   };
 
   # generic.nix applies fixPatch on top of every patch defined there.  This
@@ -44,7 +44,7 @@ callPackage ../nginx/generic.nix args rec {
 
   meta = {
     description = "A fast web application server built on Nginx";
-    homepage = "http://openresty.org";
+    homepage = "https://openresty.org";
     license = lib.licenses.bsd2;
     platforms = lib.platforms.all;
     maintainers = with lib.maintainers; [ thoughtpolice lblasc emily ];
diff --git a/nixpkgs/pkgs/servers/http/unit/default.nix b/nixpkgs/pkgs/servers/http/unit/default.nix
index cb5fafd17cf7..f3238cc4bda9 100644
--- a/nixpkgs/pkgs/servers/http/unit/default.nix
+++ b/nixpkgs/pkgs/servers/http/unit/default.nix
@@ -4,8 +4,8 @@
 , withPython3 ? true, python3, ncurses
 , withPHP74 ? false, php74
 , withPHP80 ? true, php80
-, withPerl530 ? false, perl530
-, withPerl532 ? true, perl532
+, withPerl532 ? false, perl532
+, withPerl534 ? true, perl534
 , withPerldevel ? false, perldevel
 , withRuby_2_6 ? true, ruby_2_6
 , withRuby_2_7 ? false, ruby_2_7
@@ -47,8 +47,8 @@ in stdenv.mkDerivation rec {
     ++ optionals withPython3 [ python3 ncurses ]
     ++ optional withPHP74 php74-unit
     ++ optional withPHP80 php80-unit
-    ++ optional withPerl530 perl530
     ++ optional withPerl532 perl532
+    ++ optional withPerl534 perl534
     ++ optional withPerldevel perldevel
     ++ optional withRuby_2_6 ruby_2_6
     ++ optional withRuby_2_7 ruby_2_7
@@ -72,8 +72,8 @@ in stdenv.mkDerivation rec {
     ${optionalString withPython3    "./configure python --module=python3  --config=python3-config  --lib-path=${python3}/lib"}
     ${optionalString withPHP74      "./configure php    --module=php74    --config=${php74-unit.unwrapped.dev}/bin/php-config --lib-path=${php74-unit}/lib"}
     ${optionalString withPHP80      "./configure php    --module=php80    --config=${php80-unit.unwrapped.dev}/bin/php-config --lib-path=${php80-unit}/lib"}
-    ${optionalString withPerl530    "./configure perl   --module=perl530  --perl=${perl530}/bin/perl"}
     ${optionalString withPerl532    "./configure perl   --module=perl532  --perl=${perl532}/bin/perl"}
+    ${optionalString withPerl534    "./configure perl   --module=perl534  --perl=${perl534}/bin/perl"}
     ${optionalString withPerldevel  "./configure perl   --module=perldev  --perl=${perldevel}/bin/perl"}
     ${optionalString withRuby_2_6   "./configure ruby   --module=ruby26   --ruby=${ruby_2_6}/bin/ruby"}
     ${optionalString withRuby_2_7   "./configure ruby   --module=ruby27   --ruby=${ruby_2_7}/bin/ruby"}
diff --git a/nixpkgs/pkgs/servers/hylafaxplus/default.nix b/nixpkgs/pkgs/servers/hylafaxplus/default.nix
index 4ce0d63f6bed..04be8c63599d 100644
--- a/nixpkgs/pkgs/servers/hylafaxplus/default.nix
+++ b/nixpkgs/pkgs/servers/hylafaxplus/default.nix
@@ -2,7 +2,6 @@
 , lib
 , fakeroot
 , fetchurl
-, fetchpatch
 , libfaketime
 , substituteAll
 ## runtime dependencies
@@ -70,11 +69,7 @@ stdenv.mkDerivation {
   };
   patches = [
     # adjust configure check to work with libtiff > 4.1
-    (fetchpatch {
-      name = "libtiff-4.2.patch";
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/net-misc/hylafaxplus/files/hylafaxplus-7.0.2-tiff-4.2.patch?id=82e3eefd5447f36e5bb00068a54b91d8c891ccf6";
-      sha256 = "0hhf4wpgj842gz4nxq8s55vnzmciqkyjjaaxdpqawns2746vx0sw";
-    })
+    ./libtiff-4.patch
   ];
   # Note that `configure` (and maybe `faxsetup`) are looking
   # for a couple of standard binaries in the `PATH` and
diff --git a/nixpkgs/pkgs/servers/hylafaxplus/libtiff-4.patch b/nixpkgs/pkgs/servers/hylafaxplus/libtiff-4.patch
new file mode 100644
index 000000000000..daf7b4f7d05a
--- /dev/null
+++ b/nixpkgs/pkgs/servers/hylafaxplus/libtiff-4.patch
@@ -0,0 +1,12 @@
+https://bugs.gentoo.org/706154
+--- a/configure
++++ b/configure
+@@ -2583,7 +2583,7 @@ EOF
+ 				echo '#define TIFFSTRIPBYTECOUNTS uint32'
+ 				echo '#define TIFFVERSION TIFF_VERSION'
+ 				echo '#define TIFFHEADER TIFFHeader';;
+-		4.[01])		tiff_runlen_t="uint32"
++		4.[0-9])	tiff_runlen_t="uint32"
+ 				tiff_offset_t="uint64"
+ 				echo '#define TIFFSTRIPBYTECOUNTS uint64'
+ 				echo '#define TIFFVERSION TIFF_VERSION_CLASSIC'
diff --git a/nixpkgs/pkgs/servers/icingaweb2/default.nix b/nixpkgs/pkgs/servers/icingaweb2/default.nix
index e7d9b1a2847b..7923674a3b76 100644
--- a/nixpkgs/pkgs/servers/icingaweb2/default.nix
+++ b/nixpkgs/pkgs/servers/icingaweb2/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, lib, fetchFromGitHub, makeWrapper, php }:
+{ stdenvNoCC, lib, fetchFromGitHub, makeWrapper, php }:
 
-stdenv.mkDerivation rec {
+stdenvNoCC.mkDerivation rec {
   pname = "icingaweb2";
-  version = "2.8.2";
+  version = "2.9.0";
 
   src = fetchFromGitHub {
     owner = "Icinga";
     repo = "icingaweb2";
     rev = "v${version}";
-    sha256 = "1zrni1hzblaangiqm7iqbvg2h9rdc2l3pzzymz52r7mri4qnr4s8";
+    sha256 = "1vp2gdvgvw960178yaqql6iza0rg2h8japsnass3kkrwrmb2liq5";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
       Analyse problems and act on them.
     '';
     homepage = "https://www.icinga.com/products/icinga-web-2/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.all;
     maintainers = with maintainers; [ das_j ];
   };
diff --git a/nixpkgs/pkgs/servers/icingaweb2/ipl.nix b/nixpkgs/pkgs/servers/icingaweb2/ipl.nix
new file mode 100644
index 000000000000..35b9357009c4
--- /dev/null
+++ b/nixpkgs/pkgs/servers/icingaweb2/ipl.nix
@@ -0,0 +1,26 @@
+{ stdenvNoCC, lib, fetchFromGitHub }:
+
+stdenvNoCC.mkDerivation rec {
+  pname = "icingaweb2-ipl";
+  version = "0.6.0";
+
+  src = fetchFromGitHub {
+    owner = "Icinga";
+    repo = "icinga-php-library";
+    rev = "v${version}";
+    sha256 = "0nzvd84r9f1mypfhq4p37hsvkrbd5wzgs1m9qhj45ncvf5rq49f1";
+  };
+
+  installPhase = ''
+    mkdir -p "$out"
+    cp -r * "$out"
+  '';
+
+  meta = {
+    description = "PHP library package for Icingaweb 2";
+    homepage = "https://github.com/Icinga/icinga-php-library";
+    license = lib.licenses.mit;
+    platforms = lib.platforms.all;
+    maintainers = with lib.maintainers; [ das_j ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/icingaweb2/thirdparty.nix b/nixpkgs/pkgs/servers/icingaweb2/thirdparty.nix
new file mode 100644
index 000000000000..ae3ce9538c95
--- /dev/null
+++ b/nixpkgs/pkgs/servers/icingaweb2/thirdparty.nix
@@ -0,0 +1,26 @@
+{ stdenvNoCC, lib, fetchFromGitHub }:
+
+stdenvNoCC.mkDerivation rec {
+  pname = "icingaweb2-thirdparty";
+  version = "0.10.0";
+
+  src = fetchFromGitHub {
+    owner = "Icinga";
+    repo = "icinga-php-thirdparty";
+    rev = "v${version}";
+    sha256 = "03zq6p2xyjrln8hdfks70hg8mwa51d3pnkswnzavpbxlbk83vzz5";
+  };
+
+  installPhase = ''
+    mkdir -p "$out"
+    cp -r * "$out"
+  '';
+
+  meta = {
+    description = "Third party dependencies for Icingaweb 2";
+    homepage = "https://github.com/Icinga/icinga-php-thirdparty";
+    license = lib.licenses.mit;
+    platforms = lib.platforms.all;
+    maintainers = with lib.maintainers; [ das_j ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/imgproxy/default.nix b/nixpkgs/pkgs/servers/imgproxy/default.nix
index 3c93b7f82604..fc099e905e5a 100644
--- a/nixpkgs/pkgs/servers/imgproxy/default.nix
+++ b/nixpkgs/pkgs/servers/imgproxy/default.nix
@@ -3,12 +3,12 @@
 
 buildGoModule rec {
   pname = "imgproxy";
-  version = "2.16.5";
+  version = "2.16.7";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
-    sha256 = "sha256-CLmnc33mVvm7CR0Qv4zsLiQ/jyRIkr1N53mMfD3flNM=";
+    sha256 = "sha256-7UGIkYChXIht/dyMhvPeu8oeGQEA7/Ns7+e56wEmAwQ=";
     rev = "v${version}";
   };
 
diff --git a/nixpkgs/pkgs/servers/jackett/default.nix b/nixpkgs/pkgs/servers/jackett/default.nix
index 5bb43ae316c1..a324dcb58bdc 100644
--- a/nixpkgs/pkgs/servers/jackett/default.nix
+++ b/nixpkgs/pkgs/servers/jackett/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "jackett";
-  version = "0.18.364";
+  version = "0.18.455";
 
   src = fetchurl {
     url = "https://github.com/Jackett/Jackett/releases/download/v${version}/Jackett.Binaries.Mono.tar.gz";
-    sha256 = "sha256-QcwrgW07tP0PxA6UWqMf7VT0Y8uBZFJY9Uz7seorEfs=";
+    sha256 = "sha256-qEuhgtDtdMCHJtUcUDUmKI8FT0ti7veleI7UhwTAUfE=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/servers/janus-gateway/default.nix b/nixpkgs/pkgs/servers/janus-gateway/default.nix
new file mode 100644
index 000000000000..6c6d6759f329
--- /dev/null
+++ b/nixpkgs/pkgs/servers/janus-gateway/default.nix
@@ -0,0 +1,59 @@
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, gengetopt
+, glib, libconfig, libnice, jansson, boringssl, zlib, srtp, libuv
+, libmicrohttpd, curl, libwebsockets, sofia_sip, libogg, libopus
+, usrsctp, ffmpeg
+}:
+
+let
+  libwebsockets_janus = libwebsockets.overrideAttrs (_: {
+    configureFlags = [
+      "-DLWS_MAX_SMP=1"
+      "-DLWS_WITHOUT_EXTENSIONS=0"
+    ];
+  });
+in
+
+stdenv.mkDerivation rec {
+  pname = "janus-gateway";
+  version = "0.11.3";
+
+  src = fetchFromGitHub {
+    owner = "meetecho";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "15nadpz67w24f4wz8ya0kx0a1jc4wxv1kl0d5fr7kckkdyijh7gz";
+  };
+
+  nativeBuildInputs = [ autoreconfHook pkg-config gengetopt ];
+
+  buildInputs = [
+    glib libconfig libnice jansson boringssl zlib srtp libuv libmicrohttpd
+    curl libwebsockets_janus sofia_sip libogg libopus usrsctp ffmpeg
+  ];
+
+  enableParallelBuilding = true;
+
+  configureFlags = [
+    "--enable-boringssl=${boringssl}"
+    "--enable-libsrtp2"
+    "--enable-turn-rest-api"
+    "--enable-json-logger"
+    "--enable-gelf-event-handler"
+    "--enable-post-processing"
+  ];
+
+  outputs = [ "out" "dev" "doc" "man" ];
+
+  postInstall = ''
+    moveToOutput share/janus "$doc"
+    moveToOutput etc "$doc"
+  '';
+
+  meta = with lib; {
+    description = "General purpose WebRTC server";
+    homepage = "https://janus.conf.meetecho.com/";
+    license = licenses.gpl3Only;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ fpletz ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/klipper/default.nix b/nixpkgs/pkgs/servers/klipper/default.nix
index 63ad531bbefe..f120454ac84a 100644
--- a/nixpkgs/pkgs/servers/klipper/default.nix
+++ b/nixpkgs/pkgs/servers/klipper/default.nix
@@ -5,14 +5,14 @@
 , unstableGitUpdater
 }:
 stdenv.mkDerivation rec {
-  name = "klipper";
-  version = "unstable-2021-01-31";
+  pname = "klipper";
+  version = "unstable-2021-07-15";
 
   src = fetchFromGitHub {
     owner = "KevinOConnor";
     repo = "klipper";
-    rev = "ef4d9c3abd30ae8a485020fd9ff2fb4529a143b3";
-    sha256 = "sha256-puAkSGL0DD0JUWejPdzr7zKIW2UP2soBBtgm2msUKzA=";
+    rev = "dafb74e3aba707db364ed773bb2135084ac0fffa";
+    sha256 = "sha256-wF5I8Mo89ohhysBRDMtkCDbCW9SKWrdYdbifmxCPJBc=";
   };
 
   # We have no LTO on i686 since commit 22284b0
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "The Klipper 3D printer firmware";
     homepage = "https://github.com/KevinOConnor/klipper";
-    maintainers = with maintainers; [ lovesegfault ];
+    maintainers = with maintainers; [ lovesegfault zhaofengli ];
     platforms = platforms.linux;
     license = licenses.gpl3Only;
   };
diff --git a/nixpkgs/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix b/nixpkgs/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix
index a20068767e52..841ee7915a43 100644
--- a/nixpkgs/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix
+++ b/nixpkgs/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix
@@ -1,13 +1,13 @@
 { lib, stdenv, fetchFromGitHub, autoconf, automake, pkg-config, dovecot, libtool, xapian, icu64 }:
 stdenv.mkDerivation rec {
   pname = "fts-xapian";
-  version = "1.4.9";
+  version = "1.4.11";
 
   src = fetchFromGitHub {
     owner = "grosjo";
     repo = "fts-xapian";
     rev = version;
-    sha256 = "0p4ps9h24vr9bldrcf9cdx6l4rdz5i8zyc58qp10h7cc3jilwddy";
+    sha256 = "sha256-HPmS2Z1PIEM9fc6EerCEigQJg5BK/115zOW2uxFqjP0=";
   };
 
   buildInputs = [ dovecot xapian icu64 ];
diff --git a/nixpkgs/pkgs/servers/mail/exim/default.nix b/nixpkgs/pkgs/servers/mail/exim/default.nix
index 122d00c5f0a7..702808f950a2 100644
--- a/nixpkgs/pkgs/servers/mail/exim/default.nix
+++ b/nixpkgs/pkgs/servers/mail/exim/default.nix
@@ -5,6 +5,7 @@
 , enablePAM ? false, pam
 , enableSPF ? true, libspf2
 , enableDMARC ? true, opendmarc
+, enableRedis ? false, hiredis
 }:
 
 stdenv.mkDerivation rec {
@@ -23,7 +24,8 @@ stdenv.mkDerivation rec {
     ++ lib.optional enableAuthDovecot dovecot
     ++ lib.optional enablePAM pam
     ++ lib.optional enableSPF libspf2
-    ++ lib.optional enableDMARC opendmarc;
+    ++ lib.optional enableDMARC opendmarc
+    ++ lib.optional enableRedis hiredis;
 
   preBuild = ''
     sed '
@@ -78,6 +80,13 @@ stdenv.mkDerivation rec {
         s:^# \(SUPPORT_DMARC\)=.*:\1=yes:
         s:^# \(LDFLAGS += -lopendmarc\):\1:
       ''}
+      ${lib.optionalString enableRedis ''
+        s:^# \(LOOKUP_REDIS=yes\)$:\1:
+        s:^\(LOOKUP_LIBS\)=\(.*\):\1=\2 -lhiredis -L${hiredis}/lib/hiredis:
+        s:^# \(LOOKUP_LIBS\)=.*:\1=-lhiredis -L${hiredis}/lib/hiredis:
+        s:^\(LOOKUP_INCLUDE\)=\(.*\):\1=\2 -I${hiredis}/include/hiredis/:
+        s:^# \(LOOKUP_INCLUDE\)=.*:\1=-I${hiredis}/include/hiredis/:
+      ''}
       #/^\s*#.*/d
       #/^\s*$/d
     ' < src/EDITME > Local/Makefile
diff --git a/nixpkgs/pkgs/servers/mail/system-sendmail/default.nix b/nixpkgs/pkgs/servers/mail/system-sendmail/default.nix
index 28c54fc0fae9..76b92299409e 100644
--- a/nixpkgs/pkgs/servers/mail/system-sendmail/default.nix
+++ b/nixpkgs/pkgs/servers/mail/system-sendmail/default.nix
@@ -20,7 +20,9 @@ stdenv.mkDerivation {
 
   src = script;
 
-  phases = [ "buildPhase" ];
+  dontUnpack = true;
+  dontInstall = true;
+
   buildPhase = ''
     mkdir -p $out/bin
     < $src sed "s#{{MYPATH}}#$out/bin/sendmail#" > $out/bin/sendmail
diff --git a/nixpkgs/pkgs/servers/matrix-synapse/default.nix b/nixpkgs/pkgs/servers/matrix-synapse/default.nix
index 7940b560b5a7..b2e61d506560 100644
--- a/nixpkgs/pkgs/servers/matrix-synapse/default.nix
+++ b/nixpkgs/pkgs/servers/matrix-synapse/default.nix
@@ -12,11 +12,11 @@ let
 in
 buildPythonApplication rec {
   pname = "matrix-synapse";
-  version = "1.37.1";
+  version = "1.38.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-KxDHJrKm/QUZtOzI6MEpIUb4hTtxtIPLFuD1as3j4EA=";
+    sha256 = "sha256-bGKGzhuDjKaNbjXSwvidk9SrRmJsLQyLe5jps4DXN+s=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/servers/mautrix-signal/default.nix b/nixpkgs/pkgs/servers/mautrix-signal/default.nix
index c7dc3ecad584..76897d92820c 100644
--- a/nixpkgs/pkgs/servers/mautrix-signal/default.nix
+++ b/nixpkgs/pkgs/servers/mautrix-signal/default.nix
@@ -1,29 +1,17 @@
 { lib, python3, fetchFromGitHub }:
 
-let
-  python = python3.override {
-    packageOverrides = self: super: {
-      mautrix = super.mautrix.overridePythonAttrs (oldAttrs: rec {
-        version = "0.8.18";
-        src = oldAttrs.src.override {
-          inherit version;
-          sha256 = "32daf7a7dcf5d4013b37321df7b319f36523f38884ccc3e2e965917d0a5c73c1";
-        };
-      });
-    };
-  };
-in python.pkgs.buildPythonPackage rec {
+python3.pkgs.buildPythonPackage rec {
   pname = "mautrix-signal";
-  version = "0.1.1";
+  version = "unstable-2021-07-01";
 
   src = fetchFromGitHub {
     owner = "tulir";
     repo = "mautrix-signal";
-    rev = "v${version}";
-    sha256 = "11snsl7i407855h39g1fgk26hinnq0inr8sjrgd319li0d3jwzxl";
+    rev = "56eb24412fcafb4836f29375fba9cc6db1715d6f";
+    sha256 = "10nbfl48yb7h23znkxvkqh1dgp2xgldvxsigwfmwa1qbq0l4dljl";
   };
 
-  propagatedBuildInputs = with python.pkgs; [
+  propagatedBuildInputs = with python3.pkgs; [
     CommonMark
     aiohttp
     asyncpg
@@ -53,7 +41,7 @@ in python.pkgs.buildPythonPackage rec {
     " > $out/bin/mautrix-signal
     chmod +x $out/bin/mautrix-signal
     wrapProgram $out/bin/mautrix-signal \
-      --set PATH ${python}/bin \
+      --set PATH ${python3}/bin \
       --set PYTHONPATH "$PYTHONPATH"
   '';
 
diff --git a/nixpkgs/pkgs/servers/monitoring/buildkite-agent-metrics/default.nix b/nixpkgs/pkgs/servers/monitoring/buildkite-agent-metrics/default.nix
new file mode 100644
index 000000000000..8112feb75fed
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/buildkite-agent-metrics/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, fetchpatch
+}:
+buildGoModule rec {
+  pname = "buildkite-agent-metrics";
+  version = "5.2.1";
+
+  outputs = [ "out" "lambda" ];
+
+  src = fetchFromGitHub {
+    owner = "buildkite";
+    repo = "buildkite-agent-metrics";
+    rev = "v${version}";
+    sha256 = "XZYVCSJ/DIwoLrz37aQ3yW3RUhOhorY8L1AsAWxywcg=";
+  };
+
+  vendorSha256 = "UIkU3i45IEXWHdiakTj7f4W9kR49k4A93msfkqeXmQQ=";
+
+  patches = [
+    # Necessary to support passing the agent token in an env var, rather than on
+    # the command line. Should be removed upon the next release.
+    (fetchpatch {
+      name = "BUILDKITE_AGENT_TOKEN-env-var.patch";
+      url = "https://github.com/buildkite/buildkite-agent-metrics/commit/6c40b478b95f0e05fc12b87158222a9ff68169e0.patch";
+      sha256 = "Y4m9qGyPIROSqOY6G6xRQfFENEG4bFF3q5dZcHI4XiY=";
+    })
+  ];
+
+  postInstall = ''
+    mkdir -p $lambda/bin
+    mv $out/bin/lambda $lambda/bin
+  '';
+
+  meta = with lib; {
+    description = "A command-line tool (and Lambda) for collecting Buildkite agent metrics";
+    homepage = "https://github.com/buildkite/buildkite-agent-metrics";
+    license = licenses.mit;
+    maintainers = teams.determinatesystems.members;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana-agent/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana-agent/default.nix
index 41b8b56fc441..c772b76cf031 100644
--- a/nixpkgs/pkgs/servers/monitoring/grafana-agent/default.nix
+++ b/nixpkgs/pkgs/servers/monitoring/grafana-agent/default.nix
@@ -2,16 +2,21 @@
 
 buildGoModule rec {
   pname = "grafana-agent";
-  version = "0.15.0";
+  version = "0.16.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "grafana";
     repo = "agent";
-    sha256 = "sha256-mRDd9G/VMbDwp/GYPoUE0v9j+BmUd08wOMJjgcg2qdo=";
+    sha256 = "0kqbn6fqlrxjqdkkhbr7qmm2m05a7dlskfdb7y4gr5ggi65m6ik5";
   };
 
-  vendorSha256 = "sha256-sQFWdBOjfYb1e7ZzHGgtgnuEQCU4xnkJTyzC/9DRcYs=";
+  vendorSha256 = "0xi69a1zkcmi5q8m7lfwp3xb4cbkwc2dzqm24lfqsq13xj5jq6ph";
+
+  patches = [
+    # https://github.com/grafana/agent/issues/731
+    ./skip_test_requiring_network.patch
+  ];
 
   # uses go-systemd, which uses libsystemd headers
   # https://github.com/coreos/go-systemd/issues/351
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana-agent/skip_test_requiring_network.patch b/nixpkgs/pkgs/servers/monitoring/grafana-agent/skip_test_requiring_network.patch
new file mode 100644
index 000000000000..fcba11dd2fb4
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana-agent/skip_test_requiring_network.patch
@@ -0,0 +1,15 @@
+diff --git a/pkg/operator/selector_eventhandler_test.go b/pkg/operator/selector_eventhandler_test.go
+index 7b6ec602..e79bae0e 100644
+--- a/pkg/operator/selector_eventhandler_test.go
++++ b/pkg/operator/selector_eventhandler_test.go
+@@ -39,6 +39,10 @@ var (
+ // TestEnqueueRequestForSelector creates an example Kubenretes cluster and runs
+ // EnqueueRequestForSelector to validate it works.
+ func TestEnqueueRequestForSelector(t *testing.T) {
++	// Requires network access, which is not available during
++	// the nixpkgs sandboxed build
++	t.Skip()
++
+ 	l := log.NewNopLogger()
+ 
+ 	ctx, cancel := context.WithTimeout(context.Background(), 5*time.Minute)
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/default.nix
index 14d0c63d90bf..2c8ba20f6d41 100644
--- a/nixpkgs/pkgs/servers/monitoring/grafana/default.nix
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/default.nix
@@ -2,23 +2,23 @@
 
 buildGoModule rec {
   pname = "grafana";
-  version = "8.0.4";
+  version = "8.0.6";
 
-  excludedPackages = [ "release_publisher" ];
+  excludedPackages = "\\(alert_webhook_listener\\|clean-swagger\\|release_publisher\\|slow_proxy\\|slow_proxy_mac\\)";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "grafana";
     repo = "grafana";
-    sha256 = "sha256-I4TUPni2WDdpsV19nltsaF1PugB5SOtQ9Jb0YzWUwFg=";
+    sha256 = "sha256-incw/Uv1Jeg/WAkWUgJGvdJ2OpZYfkCAvgLW/qXWXEo=";
   };
 
   srcStatic = fetchurl {
     url = "https://dl.grafana.com/oss/release/grafana-${version}.linux-amd64.tar.gz";
-    sha256 = "sha256-GUVnw2kKxVfztvfsNMwRLxPTqRYzbxXzoH2GkmZB2JE=";
+    sha256 = "sha256-JSpNAi9NvZpo0HzdDmdi1i+lNGLylHgctT6PPWHNhkk=";
   };
 
-  vendorSha256 = "sha256-x7sSVIim/TOhMTbnRK/fpgxiSRSO8KwGILTE2i1gU3U=";
+  vendorSha256 = "sha256-72i2NgulRpdBZ9dwx+0VlKDzzNnBJgEKKizrLPwzUY4=";
 
   preBuild = ''
     # The testcase makes an API call against grafana.com:
diff --git a/nixpkgs/pkgs/servers/monitoring/prometheus/lnd-exporter.nix b/nixpkgs/pkgs/servers/monitoring/prometheus/lnd-exporter.nix
index 34a9511d0b57..034d5a0c3861 100644
--- a/nixpkgs/pkgs/servers/monitoring/prometheus/lnd-exporter.nix
+++ b/nixpkgs/pkgs/servers/monitoring/prometheus/lnd-exporter.nix
@@ -2,23 +2,21 @@
 
 buildGoModule rec {
   pname = "lndmon";
-  version = "unstable-2020-12-04";
+  version = "unstable-2021-03-26";
 
   src = fetchFromGitHub {
     owner = "lightninglabs";
     repo = "lndmon";
-    sha256 = "0q72jbkhw1vpwxd0r80l1v4ab71sakc315plfqbijy7al9ywq5nl";
-    rev = "f07d574320dd1a6a428fecd47f3a5bb46a0fc4d1";
+    sha256 = "14lmmjq61p8yhc86swigs43risqi31vlmz7ri8j0n0fyp8lm2kxs";
+    rev = "3aa925aa4f633a6c4d132601922e78f173ae8ac1";
   };
 
   vendorSha256 = "06if387b9m02ciqgcissih1x06l33djp87vgspwzz589f77vczk8";
 
-  doCheck = false;
-
   passthru.tests = { inherit (nixosTests.prometheus-exporters) lnd; };
 
   meta = with lib; {
-    inherit (src.meta) homepage;
+    homepage = "https://github.com/lightninglabs/lndmon";
     description = "Prometheus exporter for lnd (Lightning Network Daemon)";
     license = licenses.mit;
     maintainers = with maintainers; [ mmilata ];
diff --git a/nixpkgs/pkgs/servers/monitoring/telegraf/default.nix b/nixpkgs/pkgs/servers/monitoring/telegraf/default.nix
index 37a4b3e87da8..578bb10652a0 100644
--- a/nixpkgs/pkgs/servers/monitoring/telegraf/default.nix
+++ b/nixpkgs/pkgs/servers/monitoring/telegraf/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "telegraf";
-  version = "1.18.1";
+  version = "1.19.1";
 
   excludedPackages = "test";
 
@@ -12,10 +12,10 @@ buildGoModule rec {
     owner = "influxdata";
     repo = "telegraf";
     rev = "v${version}";
-    sha256 = "sha256-iFigbnqUXWQrhDovwQYZsr8llkB9553c5LgcKJ78yZ4=";
+    sha256 = "sha256-8shyNKwSg3pUxfQsIHBNnIaks/86vHuHN/SroDE3QFU=";
   };
 
-  vendorSha256 = "sha256-m53S/L71nyioCBbIDDAWEnqStBdqTFGq16y5ozsXq1c=";
+  vendorSha256 = "sha256-jP6P2NShzlFCptCQ04XY4cIrONNArwthiEONEo32Btw=";
 
   preBuild = ''
     buildFlagsArray+=("-ldflags=-w -s -X main.version=${version}")
@@ -27,6 +27,6 @@ buildGoModule rec {
     description = "The plugin-driven server agent for collecting & reporting metrics";
     license = licenses.mit;
     homepage = "https://www.influxdata.com/time-series-platform/telegraf/";
-    maintainers = with maintainers; [ mic92 roblabla timstott foxit64 ];
+    maintainers = with maintainers; [ mic92 roblabla timstott ];
   };
 }
diff --git a/nixpkgs/pkgs/servers/nextcloud/default.nix b/nixpkgs/pkgs/servers/nextcloud/default.nix
index 3f2b1798a2cb..1776987bae09 100644
--- a/nixpkgs/pkgs/servers/nextcloud/default.nix
+++ b/nixpkgs/pkgs/servers/nextcloud/default.nix
@@ -33,35 +33,29 @@ let
     };
   };
 in {
-  nextcloud18 = throw ''
-    Nextcloud v18 has been removed from `nixpkgs` as the support for it was dropped
-    by upstream in 2021-01. Please upgrade to at least Nextcloud v19 by
+  nextcloud19 = throw ''
+    Nextcloud v19 has been removed from `nixpkgs` as the support for it was dropped
+    by upstream in 2021-06. Please upgrade to at least Nextcloud v20 by
     declaring
 
-        services.nextcloud.package = pkgs.nextcloud19;
+        services.nextcloud.package = pkgs.nextcloud20;
 
     in your NixOS config.
-
-    [1] https://docs.nextcloud.com/server/18/admin_manual/release_schedule.html
   '';
 
-  # FIXME(@Ma27) remove on 21.05
-  nextcloud19 = generic {
-    version = "19.0.6";
-    sha256 = "sha256-pqqIayE0OyTailtd2zeYi+G1APjv/YHqyO8jCpq7KJg=";
-    extraVulnerabilities = [
-      "Nextcloud 19 is still supported, but CVE-2020-8259 & CVE-2020-8152 are unfixed! Please note that both CVEs only affect the file encryption module which is turned off by default. Alternatively, `pkgs.nextcloud20` can be used."
-    ];
-  };
-
   nextcloud20 = generic {
-    version = "20.0.7";
-    sha256 = "sha256-jO2Ct3K/CvZ9W+EyPkD5d0KbwKK8yGQJXvx4dnUAtys=";
+    version = "20.0.11";
+    sha256 = "sha256-CLrJH5eNTiJJrDzfCg+re3J2qmwxFOe12nUU/QgtD6A=";
   };
 
   nextcloud21 = generic {
-    version = "21.0.2";
-    sha256 = "5e5b38109a3485db5fd2d248f24478eabe6c0790ec10b030acbbee207d5511fe";
+    version = "21.0.3";
+    sha256 = "8adcd175c7a70c33332586fa9ce36d03ba02d1df5d4c334d1210201d3fb953ee";
+  };
+
+  nextcloud22 = generic {
+    version = "22.0.0";
+    sha256 = "sha256-ORHTdUw3rKfJtfOys3UTwPK1u5ea8AgWwRF7Hu28XXo=";
   };
   # tip: get she sha with:
   # curl 'https://download.nextcloud.com/server/releases/nextcloud-${version}.tar.bz2.sha256'
diff --git a/nixpkgs/pkgs/servers/nosql/neo4j/default.nix b/nixpkgs/pkgs/servers/nosql/neo4j/default.nix
index d9c9ddf8752b..9147de6d4a1e 100644
--- a/nixpkgs/pkgs/servers/nosql/neo4j/default.nix
+++ b/nixpkgs/pkgs/servers/nosql/neo4j/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, makeWrapper, jre8, which, gawk }:
+{ lib, stdenv, fetchurl, makeWrapper, jre, which, gawk }:
 
 with lib;
 
@@ -12,8 +12,6 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ jre8 which gawk ];
-
 
   installPhase = ''
     mkdir -p "$out/share/neo4j"
@@ -24,8 +22,8 @@ stdenv.mkDerivation rec {
     do
         makeWrapper "$out/share/neo4j/bin/$NEO4J_SCRIPT" \
             "$out/bin/$NEO4J_SCRIPT" \
-            --prefix PATH : "${lib.makeBinPath [ jre8 which gawk ]}" \
-            --set JAVA_HOME "$jre8"
+            --prefix PATH : "${lib.makeBinPath [ jre which gawk ]}" \
+            --set JAVA_HOME "${jre}"
     done
   '';
 
diff --git a/nixpkgs/pkgs/servers/nosql/redis/default.nix b/nixpkgs/pkgs/servers/nosql/redis/default.nix
index 14061974a9dd..77eae32e27f4 100644
--- a/nixpkgs/pkgs/servers/nosql/redis/default.nix
+++ b/nixpkgs/pkgs/servers/nosql/redis/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "redis";
-  version = "6.2.4";
+  version = "6.2.5";
 
   src = fetchurl {
     url = "https://download.redis.io/releases/${pname}-${version}.tar.gz";
-    sha256 = "0vp1d9mlfsppry3nsj9f7bmh9wjgsy3jggp24sac1hhgl43c8cms";
+    sha256 = "1bjismh8lrvsjkm1wf5ak0igak5rr9cc39i0brwb6x0vk9q7b6jb";
   };
 
   # Cross-compiling fixes
diff --git a/nixpkgs/pkgs/servers/plex/raw.nix b/nixpkgs/pkgs/servers/plex/raw.nix
index 929abe23ccea..1d527fb203c1 100644
--- a/nixpkgs/pkgs/servers/plex/raw.nix
+++ b/nixpkgs/pkgs/servers/plex/raw.nix
@@ -12,24 +12,22 @@
 # server, and the FHS userenv and corresponding NixOS module should
 # automatically pick up the changes.
 stdenv.mkDerivation rec {
-  version = "1.23.3.4707-ebb5fe9f3";
+  version = "1.23.5.4841-549599676";
   pname = "plexmediaserver";
 
   # Fetch the source
   src = if stdenv.hostPlatform.system == "aarch64-linux" then fetchurl {
     url = "https://downloads.plex.tv/plex-media-server-new/${version}/debian/plexmediaserver_${version}_arm64.deb";
-    sha256 = "0b3xsyrpz1098lyqfapnjp7k55d07qg7h9avc7f3zmpkiclxf2ry";
+    sha256 = "168aill68fcq3cv3a78yhqnfxziww8r80is179y9jxmhymnmzp9q";
   } else fetchurl {
     url = "https://downloads.plex.tv/plex-media-server-new/${version}/debian/plexmediaserver_${version}_amd64.deb";
-    sha256 = "1as83prhlfi4g172k3mgm6p8k58zm4bahjf8bp8pyxcmgiii76m0";
+    sha256 = "0cp2likx2dqy6j5icp5n07kg1md9qvq9vsh4818m86r2p015qlvb";
   };
 
   outputs = [ "out" "basedb" ];
 
   nativeBuildInputs = [ dpkg ];
 
-  phases = [ "unpackPhase" "installPhase" "fixupPhase" "distPhase" ];
-
   unpackPhase = ''
     dpkg-deb -R $src .
   '';
@@ -89,6 +87,8 @@ stdenv.mkDerivation rec {
       lnl7
       pjones
       thoughtpolice
+      maxeaubrey
+      MayNiklas
     ];
     description = "Media library streaming server";
     longDescription = ''
diff --git a/nixpkgs/pkgs/servers/radicale/2.x.nix b/nixpkgs/pkgs/servers/radicale/2.x.nix
index b0902feeead4..d4ab51ce84f8 100644
--- a/nixpkgs/pkgs/servers/radicale/2.x.nix
+++ b/nixpkgs/pkgs/servers/radicale/2.x.nix
@@ -26,7 +26,7 @@ python3.pkgs.buildPythonApplication rec {
   ];
 
   checkInputs = with python3.pkgs; [
-    pytestrunner
+    pytest-runner
     pytest
   ];
 
diff --git a/nixpkgs/pkgs/servers/roundcube/default.nix b/nixpkgs/pkgs/servers/roundcube/default.nix
index 75afedaa2ddc..0b0b5a0f8299 100644
--- a/nixpkgs/pkgs/servers/roundcube/default.nix
+++ b/nixpkgs/pkgs/servers/roundcube/default.nix
@@ -18,6 +18,8 @@ stdenv.mkDerivation rec {
     cp -r * $out/
     ln -sf /etc/roundcube/config.inc.php $out/config/config.inc.php
     rm -rf $out/installer
+    # shut up updater
+    rm $out/composer.json-dist
   '';
 
   passthru.withPlugins = f: buildEnv {
diff --git a/nixpkgs/pkgs/servers/sql/mariadb/connector-c/3_1.nix b/nixpkgs/pkgs/servers/sql/mariadb/connector-c/3_1.nix
index 477d6113b7a4..40a00313639b 100644
--- a/nixpkgs/pkgs/servers/sql/mariadb/connector-c/3_1.nix
+++ b/nixpkgs/pkgs/servers/sql/mariadb/connector-c/3_1.nix
@@ -1,6 +1,6 @@
 { callPackage, ... } @ args:
 
 callPackage ./. (args // {
-  version = "3.1.12";
-  sha256 = "0qzyahr8x9l1xz0l79wz3iahxz7648n1azc5yr7kx0dl113y2nig";
+  version = "3.1.13";
+  sha256 = "0xb8fiissblxb319y5ifqqp86zblwis789ipb753pcb4zpnsaw82";
 })
diff --git a/nixpkgs/pkgs/servers/sql/mariadb/default.nix b/nixpkgs/pkgs/servers/sql/mariadb/default.nix
index b7205f93026d..fa9b5c414ed9 100644
--- a/nixpkgs/pkgs/servers/sql/mariadb/default.nix
+++ b/nixpkgs/pkgs/servers/sql/mariadb/default.nix
@@ -22,14 +22,14 @@ mariadb = server // {
 };
 
 common = rec { # attributes common to both builds
-  version = "10.5.10";
+  version = "10.5.11";
 
   src = fetchurl {
     urls = [
       "https://downloads.mariadb.org/f/mariadb-${version}/source/mariadb-${version}.tar.gz"
       "https://downloads.mariadb.com/MariaDB/mariadb-${version}/source/mariadb-${version}.tar.gz"
     ];
-    sha256 = "1fxsq2xgcb8j81z043bifpmxblj6nb3wqjm9rgsnpwmazkwk5zx5";
+    sha256 = "0yn4bhqciy6jyig31rmkjc588l03k4bj3194yf9y6373bxh5643n";
     name   = "mariadb-${version}.tar.gz";
   };
 
diff --git a/nixpkgs/pkgs/servers/sql/mysql/8.0.x.nix b/nixpkgs/pkgs/servers/sql/mysql/8.0.x.nix
index cdbfdaea7adf..d5bc01716997 100644
--- a/nixpkgs/pkgs/servers/sql/mysql/8.0.x.nix
+++ b/nixpkgs/pkgs/servers/sql/mysql/8.0.x.nix
@@ -1,16 +1,16 @@
 { lib, stdenv, fetchurl, bison, cmake, pkg-config
 , boost, icu, libedit, libevent, lz4, ncurses, openssl, protobuf, re2, readline, zlib, zstd
-, numactl, perl, cctools, CoreServices, developer_cmds, libtirpc, rpcsvc-proto
+, numactl, perl, cctools, CoreServices, developer_cmds, libtirpc, rpcsvc-proto, curl
 }:
 
 let
 self = stdenv.mkDerivation rec {
   pname = "mysql";
-  version = "8.0.22";
+  version = "8.0.25";
 
   src = fetchurl {
     url = "https://dev.mysql.com/get/Downloads/MySQL-${self.mysqlVersion}/${pname}-${version}.tar.gz";
-    sha256 = "9fd85bb243940ef8234d21384ef421a0962fd4d13406fc1420efa902115ce17a";
+    sha256 = "c16aa9cf621bc028efba2bb11f3c36a323b125fa0d108ff92fab60e46309206e";
   };
 
   patches = [
@@ -27,7 +27,7 @@ self = stdenv.mkDerivation rec {
   '';
 
   buildInputs = [
-    boost icu libedit libevent lz4 ncurses openssl protobuf re2 readline zlib
+    boost curl icu libedit libevent lz4 ncurses openssl protobuf re2 readline zlib
     zstd
   ] ++ lib.optionals stdenv.isLinux [
     numactl libtirpc
diff --git a/nixpkgs/pkgs/servers/sql/postgresql/default.nix b/nixpkgs/pkgs/servers/sql/postgresql/default.nix
index e13c23ddeee5..5d0a9cfa8574 100644
--- a/nixpkgs/pkgs/servers/sql/postgresql/default.nix
+++ b/nixpkgs/pkgs/servers/sql/postgresql/default.nix
@@ -33,6 +33,8 @@ let
       inherit sha256;
     };
 
+    hardeningEnable = lib.optionals (!stdenv.isDarwin) [ "pie" ];
+
     outputs = [ "out" "lib" "doc" "man" ];
     setOutputFlags = false; # $out retains configureFlags :-/
 
diff --git a/nixpkgs/pkgs/servers/sql/postgresql/ext/pg_auto_failover.nix b/nixpkgs/pkgs/servers/sql/postgresql/ext/pg_auto_failover.nix
index b5438d84ba83..c51cd9117a46 100644
--- a/nixpkgs/pkgs/servers/sql/postgresql/ext/pg_auto_failover.nix
+++ b/nixpkgs/pkgs/servers/sql/postgresql/ext/pg_auto_failover.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pg_auto_failover";
-  version = "1.5.2";
+  version = "1.6.1";
 
   src = fetchFromGitHub {
     owner = "citusdata";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1svzln0dc1vidb9qmg4m881pvmqqjq8d43ghb8yjl7shirawqkqx";
+    sha256 = "0bg1qxjszqnv0c5k5vf60sh8lcfagp9d66sprkf0d83yjh5qpwlm";
   };
 
   buildInputs = [ postgresql openssl zlib readline libkrb5 ];
diff --git a/nixpkgs/pkgs/servers/sql/postgresql/ext/pgjwt.nix b/nixpkgs/pkgs/servers/sql/postgresql/ext/pgjwt.nix
index b89ac1725008..afa08a8cdce0 100644
--- a/nixpkgs/pkgs/servers/sql/postgresql/ext/pgjwt.nix
+++ b/nixpkgs/pkgs/servers/sql/postgresql/ext/pgjwt.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
     sha256 = "1riz0xvwb6y02j0fljbr9hcbqb2jqs4njlivmavy9ysbcrrv1vrf";
   };
 
-  buildPhase = ":";
+  dontBuild = true;
   installPhase = ''
     mkdir -p $out/share/postgresql/extension
     cp pg*sql *.control $out/share/postgresql/extension
diff --git a/nixpkgs/pkgs/servers/sql/postgresql/ext/timescaledb.nix b/nixpkgs/pkgs/servers/sql/postgresql/ext/timescaledb.nix
index 4afb4c985441..bebe58676935 100644
--- a/nixpkgs/pkgs/servers/sql/postgresql/ext/timescaledb.nix
+++ b/nixpkgs/pkgs/servers/sql/postgresql/ext/timescaledb.nix
@@ -8,7 +8,7 @@
 
 stdenv.mkDerivation rec {
   pname = "timescaledb";
-  version = "2.3.0";
+  version = "2.3.1";
 
   nativeBuildInputs = [ cmake ];
   buildInputs = [ postgresql openssl libkrb5 ];
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     owner  = "timescale";
     repo   = "timescaledb";
     rev    = "refs/tags/${version}";
-    sha256 = "03k6skl3191i5jby710xr1caq85cvzbjqmqv59mfkfbvihn2zfx2";
+    sha256 = "0azcg8fh0bbc4a6b0mghdg4b9v62bb3haaq6cycj40fk4mf1dldx";
   };
 
   cmakeFlags = [ "-DSEND_TELEMETRY_DEFAULT=OFF" "-DREGRESS_CHECKS=OFF" ]
diff --git a/nixpkgs/pkgs/servers/tailscale/default.nix b/nixpkgs/pkgs/servers/tailscale/default.nix
index ff2c8f9af375..e09def926e18 100644
--- a/nixpkgs/pkgs/servers/tailscale/default.nix
+++ b/nixpkgs/pkgs/servers/tailscale/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "tailscale";
-  version = "1.10.1";
+  version = "1.10.2";
 
   src = fetchFromGitHub {
     owner = "tailscale";
     repo = "tailscale";
     rev = "v${version}";
-    sha256 = "1s4qpz4jwar3lcqyzkgyvgm4bghzass974lq1pw4fziqlsblh0vm";
+    sha256 = "sha256-bAWQTdpqDF7ERQzNY1k0NtxdA9M9bIyfHtvX0nKfIQY=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/servers/unifi-video/default.nix b/nixpkgs/pkgs/servers/unifi-video/default.nix
new file mode 100755
index 000000000000..4c55d5102591
--- /dev/null
+++ b/nixpkgs/pkgs/servers/unifi-video/default.nix
@@ -0,0 +1,61 @@
+{ dpkg
+, stdenv
+, lib
+, fetchurl
+, jre8
+, jsvc
+, lsb-release
+, libcap
+, util-linux
+, makeWrapper
+, autoPatchelfHook
+, glibc
+, gcc-unwrapped
+}:
+
+stdenv.mkDerivation rec {
+  pname = "unifi-video";
+  version = "3.10.13";
+  src = fetchurl {
+    urls = [ "https://dl.ui.com/firmwares/ufv/v${version}/unifi-video.Debian9_amd64.v${version}.deb" "https://archive.org/download/unifi-video.Debian9_amd64.v${version}/unifi-video.Debian9_amd64.v${version}.deb" ];
+    sha256 = "06mxjdizs4mhm1by8kj4pg5hhdi8ns6x75ggwyp1k6zb26jvvdny";
+  };
+
+  buildInputs = [ jre8 jsvc lsb-release libcap util-linux ];
+  nativeBuildInputs = [ dpkg makeWrapper autoPatchelfHook glibc gcc-unwrapped ];
+
+  unpackCmd = ''
+    runHook preUnpack
+
+    dpkg-deb -x $src .
+    rm -r etc
+
+    runHook postUnpack
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out
+    cp -ar sbin $out/bin
+    cp -ar lib share $out
+    chmod +x $out/bin/*
+    wrapProgram $out/bin/unifi-video --set JAVA_HOME "${jre8}" --prefix PATH : ${lib.makeBinPath [ jre8 lsb-release libcap util-linux]}
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Unifi Video NVR (aka Airvision) is a software package for controlling Unifi cameras";
+    longDescription = ''
+      Unifi Video is the NVR server software which can monitor and
+      record footage from supported Unifi video cameras
+    '';
+    homepage = "https://www.ui.com";
+    downloadPage = "https://www.ui.com/download/unifi-video/";
+    license = licenses.unfree;
+    maintainers = [ maintainers.rsynnest ];
+    platforms = [ "x86_64-linux" ];
+    knownVulnerabilities = [ "Upstream support for Unifi Video ended January 1st, 2021." ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/uwsgi/default.nix b/nixpkgs/pkgs/servers/uwsgi/default.nix
index ddfa6faf2438..c6c65d58e356 100644
--- a/nixpkgs/pkgs/servers/uwsgi/default.nix
+++ b/nixpkgs/pkgs/servers/uwsgi/default.nix
@@ -14,13 +14,13 @@ let php-embed = php.override {
     };
 
     pythonPlugin = pkg : lib.nameValuePair "python${if pkg.isPy2 then "2" else "3"}" {
-                           interpreter = pkg.interpreter;
+                           interpreter = pkg.pythonForBuild.interpreter;
                            path = "plugins/python";
                            inputs = [ pkg ncurses ];
                            install = ''
                              install -Dm644 uwsgidecorators.py $out/${pkg.sitePackages}/uwsgidecorators.py
-                             ${pkg.executable} -m compileall $out/${pkg.sitePackages}/
-                             ${pkg.executable} -O -m compileall $out/${pkg.sitePackages}/
+                             ${pkg.pythonForBuild.executable} -m compileall $out/${pkg.sitePackages}/
+                             ${pkg.pythonForBuild.executable} -O -m compileall $out/${pkg.sitePackages}/
                            '';
                          };
 
@@ -91,6 +91,13 @@ stdenv.mkDerivation rec {
     inherit python2 python3;
   };
 
+  postPatch = ''
+    for f in uwsgiconfig.py plugins/*/uwsgiplugin.py; do
+      substituteInPlace "$f" \
+        --replace pkg-config "$PKG_CONFIG"
+    done
+  '';
+
   configurePhase = ''
     export pluginDir=$out/lib/uwsgi
     substituteAll ${./nixos.ini} buildconf/nixos.ini
diff --git a/nixpkgs/pkgs/servers/web-apps/bookstack/default.nix b/nixpkgs/pkgs/servers/web-apps/bookstack/default.nix
index 139a8588eedd..1c35ebeff3b0 100644
--- a/nixpkgs/pkgs/servers/web-apps/bookstack/default.nix
+++ b/nixpkgs/pkgs/servers/web-apps/bookstack/default.nix
@@ -15,13 +15,13 @@ let
 
 in package.override rec {
   name = "bookstack";
-  version = "21.05";
+  version = "21.05.3";
 
   src = fetchFromGitHub {
     owner = "bookstackapp";
     repo = name;
     rev = "v${version}";
-    sha256 = "0vn1n2l66xsv2qjhh53dm28vwm7d9ba62syx2gviznva1lsyn78z";
+    sha256 = "0dymrmy771lv6h9432vw7d12x5xgchjn9s3z8maz3b9d5xlx9gw8";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/servers/web-apps/bookstack/php-packages.nix b/nixpkgs/pkgs/servers/web-apps/bookstack/php-packages.nix
index aa3115ef955d..69f39241f419 100644
--- a/nixpkgs/pkgs/servers/web-apps/bookstack/php-packages.nix
+++ b/nixpkgs/pkgs/servers/web-apps/bookstack/php-packages.nix
@@ -5,10 +5,10 @@ let
     "aws/aws-sdk-php" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "aws-aws-sdk-php-3b3aafdceac4cb820e2ae65a8785e4d07db471a7";
+        name = "aws-aws-sdk-php-35310302912fdc3b4a0e829b84424c41e3fd9727";
         src = fetchurl {
-          url = https://api.github.com/repos/aws/aws-sdk-php/zipball/3b3aafdceac4cb820e2ae65a8785e4d07db471a7;
-          sha256 = "0pyc5n1h9c12li03wk0p04k25rg1x8qlq4ns4wr8xbxcysdm6xi1";
+          url = https://api.github.com/repos/aws/aws-sdk-php/zipball/35310302912fdc3b4a0e829b84424c41e3fd9727;
+          sha256 = "043ia45zlb3596cnh76yc7wvizr8acn5jrilnnqdv78v07s9c99i";
         };
       };
     };
@@ -35,20 +35,20 @@ let
     "doctrine/cache" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "doctrine-cache-3bb5588cec00a0268829cc4a518490df6741af9d";
+        name = "doctrine-cache-c9622c6820d3ede1e2315a6a377ea1076e421d88";
         src = fetchurl {
-          url = https://api.github.com/repos/doctrine/cache/zipball/3bb5588cec00a0268829cc4a518490df6741af9d;
-          sha256 = "0r9fhv0y79ma7a5llmj1skycflnwbxyyrblkavjj6svld46li94q";
+          url = https://api.github.com/repos/doctrine/cache/zipball/c9622c6820d3ede1e2315a6a377ea1076e421d88;
+          sha256 = "0dw03i597mffza3bllsh89fqwa61zwhp0gvs8hh6qzkhwmsw9rk5";
         };
       };
     };
     "doctrine/dbal" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "doctrine-dbal-c800380457948e65bbd30ba92cc17cda108bf8c9";
+        name = "doctrine-dbal-8dd39d2ead4409ce652fd4f02621060f009ea5e4";
         src = fetchurl {
-          url = https://api.github.com/repos/doctrine/dbal/zipball/c800380457948e65bbd30ba92cc17cda108bf8c9;
-          sha256 = "1x6bij89yaj0d52ffx683rlpxrgxl0vx9q6a121mkz1zplnif647";
+          url = https://api.github.com/repos/doctrine/dbal/zipball/8dd39d2ead4409ce652fd4f02621060f009ea5e4;
+          sha256 = "107k0qr3m34cjxy00yhdjmd8liqa8wg729zj4z2jifz26niiy8qs";
         };
       };
     };
@@ -125,10 +125,10 @@ let
     "facade/flare-client-php" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "facade-flare-client-php-69742118c037f34ee1ef86dc605be4a105d9e984";
+        name = "facade-flare-client-php-47b639dc02bcfdfc4ebb83de703856fa01e35f5f";
         src = fetchurl {
-          url = https://api.github.com/repos/facade/flare-client-php/zipball/69742118c037f34ee1ef86dc605be4a105d9e984;
-          sha256 = "1if56r0g9ymwankz40l5xhw5vch1qkjjy9914lz1vgbkj7ln9pvz";
+          url = https://api.github.com/repos/facade/flare-client-php/zipball/47b639dc02bcfdfc4ebb83de703856fa01e35f5f;
+          sha256 = "1chpfxmnlpl98cg127i70ari7nb3w83l91l119hc2fhyjk0zrcy5";
         };
       };
     };
@@ -165,10 +165,10 @@ let
     "filp/whoops" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "filp-whoops-c13c0be93cff50f88bbd70827d993026821914dd";
+        name = "filp-whoops-2edbc73a4687d9085c8f20f398eebade844e8424";
         src = fetchurl {
-          url = https://api.github.com/repos/filp/whoops/zipball/c13c0be93cff50f88bbd70827d993026821914dd;
-          sha256 = "0janbd93xvr5hy2bms05q1l31gmwbqrgjfvbzkmv3bfw4gcksq0i";
+          url = https://api.github.com/repos/filp/whoops/zipball/2edbc73a4687d9085c8f20f398eebade844e8424;
+          sha256 = "1x79vnjdbjk9z2mix75ri56kyc5iwvjv3dyivncg6n3wd80nyfgg";
         };
       };
     };
@@ -225,10 +225,10 @@ let
     "laravel/framework" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "laravel-framework-92c0417e60efc39bc556ba5dfc9b20a56f7848fb";
+        name = "laravel-framework-00fa9c04aed10d68481f5757b89da0e6798f53b3";
         src = fetchurl {
-          url = https://api.github.com/repos/laravel/framework/zipball/92c0417e60efc39bc556ba5dfc9b20a56f7848fb;
-          sha256 = "17wpm3fk6qakq4b8qf2bvmyzm7zfamiabdgqshzcnfjm7kj4rijy";
+          url = https://api.github.com/repos/laravel/framework/zipball/00fa9c04aed10d68481f5757b89da0e6798f53b3;
+          sha256 = "1ryk6c23sa6lfsx2zpm8mcfng4ys474959kqg959cjaqzq47blq9";
         };
       };
     };
@@ -245,20 +245,20 @@ let
     "league/commonmark" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "league-commonmark-7d70d2f19c84bcc16275ea47edabee24747352eb";
+        name = "league-commonmark-44ffd8d3c4a9133e4bd0548622b09c55af39db5f";
         src = fetchurl {
-          url = https://api.github.com/repos/thephpleague/commonmark/zipball/7d70d2f19c84bcc16275ea47edabee24747352eb;
-          sha256 = "1clfi4k0xp15pzg8c344qj5jk54k9dm9xbg4sd6l6iv66md1xasn";
+          url = https://api.github.com/repos/thephpleague/commonmark/zipball/44ffd8d3c4a9133e4bd0548622b09c55af39db5f;
+          sha256 = "1nlydxyfsh51hrvxg5c7c5lqphynvdclch6w8k9dh1whl8pwjf27";
         };
       };
     };
     "league/flysystem" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "league-flysystem-9be3b16c877d477357c015cec057548cf9b2a14a";
+        name = "league-flysystem-f3ad69181b8afed2c9edf7be5a2918144ff4ea32";
         src = fetchurl {
-          url = https://api.github.com/repos/thephpleague/flysystem/zipball/9be3b16c877d477357c015cec057548cf9b2a14a;
-          sha256 = "0mhlr6l75j58xwbadq30x58s67434195zlpdax6ix4nkr7fc907j";
+          url = https://api.github.com/repos/thephpleague/flysystem/zipball/f3ad69181b8afed2c9edf7be5a2918144ff4ea32;
+          sha256 = "0s4sx4j7c16qkk7m6k2r4ajfjidlv15z18ybxhfmmz4jb4wsmv94";
         };
       };
     };
@@ -305,20 +305,20 @@ let
     "mtdowling/jmespath.php" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "mtdowling-jmespath.php-42dae2cbd13154083ca6d70099692fef8ca84bfb";
+        name = "mtdowling-jmespath.php-9b87907a81b87bc76d19a7fb2d61e61486ee9edb";
         src = fetchurl {
-          url = https://api.github.com/repos/jmespath/jmespath.php/zipball/42dae2cbd13154083ca6d70099692fef8ca84bfb;
-          sha256 = "157pdx45dmkxwxyq8vdjfci24fw7kl3yc2gj1cifp9kaia7mwlkk";
+          url = https://api.github.com/repos/jmespath/jmespath.php/zipball/9b87907a81b87bc76d19a7fb2d61e61486ee9edb;
+          sha256 = "1ig3gi6f8gisagcn876598ps48s86s6m0c82diyksylarg3yn0yd";
         };
       };
     };
     "nesbot/carbon" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "nesbot-carbon-8d1f50f1436fb4b05e7127360483dd9c6e73da16";
+        name = "nesbot-carbon-f47f17d17602b2243414a44ad53d9f8b9ada5fdb";
         src = fetchurl {
-          url = https://api.github.com/repos/briannesbitt/Carbon/zipball/8d1f50f1436fb4b05e7127360483dd9c6e73da16;
-          sha256 = "102pypd7x9l739qv2fp5lv4gw4sywr1jpgxlgpqyi1ww1dm3dch0";
+          url = https://api.github.com/repos/briannesbitt/Carbon/zipball/f47f17d17602b2243414a44ad53d9f8b9ada5fdb;
+          sha256 = "0b7pr4cqg5l75fncw1lzxcpn4xjnjddyrz287lb4zrjgx1raz3ah";
         };
       };
     };
@@ -555,10 +555,10 @@ let
     "socialiteproviders/microsoft-azure" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "socialiteproviders-microsoft-azure-7808764f777a01df88be9ca6b14d683e50aaf88a";
+        name = "socialiteproviders-microsoft-azure-64779ec21db0bee3111039a67c0fa0ab550a3462";
         src = fetchurl {
-          url = https://api.github.com/repos/SocialiteProviders/Microsoft-Azure/zipball/7808764f777a01df88be9ca6b14d683e50aaf88a;
-          sha256 = "1lxsvb5pzqrm467a8737v98sgmsxs6mvxc683p19b2y30g4fyrlj";
+          url = https://api.github.com/repos/SocialiteProviders/Microsoft-Azure/zipball/64779ec21db0bee3111039a67c0fa0ab550a3462;
+          sha256 = "00jjj7jwmhf2nypwwnmv5rbw6mw0phdlcz8rxybxzy72p2v51m1c";
         };
       };
     };
@@ -615,30 +615,30 @@ let
     "symfony/console" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-console-1b15ca1b1bedda86f98064da9ff5d800560d4c6d";
+        name = "symfony-console-9aa1eb46c1b12fada74dc0c529e93d1ccef22576";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/console/zipball/1b15ca1b1bedda86f98064da9ff5d800560d4c6d;
-          sha256 = "0xpk6241vg866z56dksv384xmk0vkrz1by9vb8q2d6cbp6nw17y0";
+          url = https://api.github.com/repos/symfony/console/zipball/9aa1eb46c1b12fada74dc0c529e93d1ccef22576;
+          sha256 = "0xsjpsgdm2x2avw92cgx90r5yvpgqfcy0ad8cviwcfdardqfh7z0";
         };
       };
     };
     "symfony/css-selector" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-css-selector-947cacaf1b3a2af6f13a435392873d5ddaba5f70";
+        name = "symfony-css-selector-c1e29de6dc893b130b45d20d8051efbb040560a9";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/css-selector/zipball/947cacaf1b3a2af6f13a435392873d5ddaba5f70;
-          sha256 = "1v5fl6vhbc2n9mm0y9m28i1gz12n1v0zqzc2sspymyq98921q3gp";
+          url = https://api.github.com/repos/symfony/css-selector/zipball/c1e29de6dc893b130b45d20d8051efbb040560a9;
+          sha256 = "0af571s9i7inwsjbqpf5dkpghs2k5ds8ba8x7wdvad6hpgphify8";
         };
       };
     };
     "symfony/debug" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-debug-45b2136377cca5f10af858968d6079a482bca473";
+        name = "symfony-debug-a8d2d5c94438548bff9f998ca874e202bb29d07f";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/debug/zipball/45b2136377cca5f10af858968d6079a482bca473;
-          sha256 = "0p7g2mwrvg8x264kl9kn7a23adnqxh66jy1kjczq5c5xlpw2rxdb";
+          url = https://api.github.com/repos/symfony/debug/zipball/a8d2d5c94438548bff9f998ca874e202bb29d07f;
+          sha256 = "0w0i66c42bvh5ss84jqgjzq81dx673sliaf7z7p60p3fxiy0fdsy";
         };
       };
     };
@@ -655,20 +655,20 @@ let
     "symfony/error-handler" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-error-handler-21d75bfbdfdd3581a7f97080deb98926987f14a7";
+        name = "symfony-error-handler-4001f01153d0eb5496fe11d8c76d1e56b47fdb88";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/error-handler/zipball/21d75bfbdfdd3581a7f97080deb98926987f14a7;
-          sha256 = "0hdcvmid17xcm21crj3k2gxvnhfww3yaw3liiqrjrkwmny9pr73q";
+          url = https://api.github.com/repos/symfony/error-handler/zipball/4001f01153d0eb5496fe11d8c76d1e56b47fdb88;
+          sha256 = "19pf2qk8nal0p59xvgvl04s2v2bcmi87wffml35qiks1pirn6znp";
         };
       };
     };
     "symfony/event-dispatcher" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-event-dispatcher-c352647244bd376bf7d31efbd5401f13f50dad0c";
+        name = "symfony-event-dispatcher-047773e7016e4fd45102cedf4bd2558ae0d0c32f";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/event-dispatcher/zipball/c352647244bd376bf7d31efbd5401f13f50dad0c;
-          sha256 = "1cxgn0y83i4qqx757kq96jadwwbc68h11snhvy175xvy8nvsmxkd";
+          url = https://api.github.com/repos/symfony/event-dispatcher/zipball/047773e7016e4fd45102cedf4bd2558ae0d0c32f;
+          sha256 = "1cc2lm7fwwqjvx72990k8mzb1xiprpnc1lky13bc61jipdk49jq0";
         };
       };
     };
@@ -685,10 +685,10 @@ let
     "symfony/finder" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-finder-a96bc19ed87c88eec78e1a4c803bdc1446952983";
+        name = "symfony-finder-ed33314396d968a8936c95f5bd1b88bd3b3e94a3";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/finder/zipball/a96bc19ed87c88eec78e1a4c803bdc1446952983;
-          sha256 = "065mk0cvby82wv799gl5n4xw75nm7q32g816kily39d70rfjwzrs";
+          url = https://api.github.com/repos/symfony/finder/zipball/ed33314396d968a8936c95f5bd1b88bd3b3e94a3;
+          sha256 = "06m9xr0aik0y5f3j9rr0f23rwdr2b1ib55340myf0lah62as7nxm";
         };
       };
     };
@@ -705,30 +705,30 @@ let
     "symfony/http-foundation" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-http-foundation-2ffb43bd6c589a274ee1e93a5fd6b7ef1577b9c5";
+        name = "symfony-http-foundation-8759ed5c27c2a8a47cb60f367f4be6727f08d58b";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/http-foundation/zipball/2ffb43bd6c589a274ee1e93a5fd6b7ef1577b9c5;
-          sha256 = "02dras9h0h2g3xkibvpqfly7108qhg609cv16cgmw109m9d6rv7p";
+          url = https://api.github.com/repos/symfony/http-foundation/zipball/8759ed5c27c2a8a47cb60f367f4be6727f08d58b;
+          sha256 = "0g47jlsz2p3np3mq4vdhj68jr7a84lwi8hifq132igzgdkbdg6ln";
         };
       };
     };
     "symfony/http-kernel" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-http-kernel-59925ee79f2541b4c6e990843e1a42768e898254";
+        name = "symfony-http-kernel-e08b2fb8a6eedd81c70522e514bad9b2c1fff881";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/http-kernel/zipball/59925ee79f2541b4c6e990843e1a42768e898254;
-          sha256 = "1v6ah9ibz6n2kdpmji1wfqzvb4cbndnwfz4hjqhhrysc0vffpbk4";
+          url = https://api.github.com/repos/symfony/http-kernel/zipball/e08b2fb8a6eedd81c70522e514bad9b2c1fff881;
+          sha256 = "009w87c31vp5x7hcy77g1b03avm3wp0jznxbqqvdfrid0s42zz77";
         };
       };
     };
     "symfony/mime" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-mime-64258e870f8cc75c3dae986201ea2df58c210b52";
+        name = "symfony-mime-47dd7912152b82d0d4c8d9040dbc93d6232d472a";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/mime/zipball/64258e870f8cc75c3dae986201ea2df58c210b52;
-          sha256 = "14s26zam8dxhbskizcw6mpyizg6n4i1ambq5ni6r9gv3rs6cfr9p";
+          url = https://api.github.com/repos/symfony/mime/zipball/47dd7912152b82d0d4c8d9040dbc93d6232d472a;
+          sha256 = "1xyk50qrd5hzpwp795adbc56pqxljy3yalsd7p2bfyhd1y5ihwdv";
         };
       };
     };
@@ -815,20 +815,20 @@ let
     "symfony/process" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-process-f5481b22729d465acb1cea3455fc04ce84b0148b";
+        name = "symfony-process-7e812c84c3f2dba173d311de6e510edf701685a8";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/process/zipball/f5481b22729d465acb1cea3455fc04ce84b0148b;
-          sha256 = "1cz0gd7lkp07dlylf8c32fjpfsm9z3d66iwx45i7b5wh5gc96ns0";
+          url = https://api.github.com/repos/symfony/process/zipball/7e812c84c3f2dba173d311de6e510edf701685a8;
+          sha256 = "1bayw4mnjxqr94y0w0mk1ch5ynvyz71v2hlxlp7w6xw15m9ccpsk";
         };
       };
     };
     "symfony/routing" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-routing-b42c3631fd9e3511610afb2ba081ea7e38d9fa38";
+        name = "symfony-routing-3a3c2f197ad0846ac6413225fc78868ba1c61434";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/routing/zipball/b42c3631fd9e3511610afb2ba081ea7e38d9fa38;
-          sha256 = "167lvg9n8qvgkz7hgx8hv7a53j4shqiriir03g5qz7zhvddlk7vp";
+          url = https://api.github.com/repos/symfony/routing/zipball/3a3c2f197ad0846ac6413225fc78868ba1c61434;
+          sha256 = "0wbd206gn64q89kiz3fvpcynmpfrjrj081l5lfab0rfj50m80q4h";
         };
       };
     };
@@ -845,10 +845,10 @@ let
     "symfony/translation" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-translation-424d29dfcc15575af05196de0100d7b52f650602";
+        name = "symfony-translation-2f7fa60b8d10ca71c30dc46b0870143183a8f131";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/translation/zipball/424d29dfcc15575af05196de0100d7b52f650602;
-          sha256 = "0fpbhbiix0yqvbq5iv5wy7b37wsfgnsay0g1292s339dil60i6a6";
+          url = https://api.github.com/repos/symfony/translation/zipball/2f7fa60b8d10ca71c30dc46b0870143183a8f131;
+          sha256 = "0nhljcj0bmkdx5xsyyxyj32hdl2lirypr5yyy2n9w16bal9fxmc9";
         };
       };
     };
@@ -865,10 +865,10 @@ let
     "symfony/var-dumper" = {
       targetDir = "";
       src = composerEnv.buildZipPackage {
-        name = "symfony-var-dumper-c194bcedde6295f3ec3e9eba1f5d484ea97c41a7";
+        name = "symfony-var-dumper-a586efdf2aa832d05b9249e9115d24f6a2691160";
         src = fetchurl {
-          url = https://api.github.com/repos/symfony/var-dumper/zipball/c194bcedde6295f3ec3e9eba1f5d484ea97c41a7;
-          sha256 = "0wccbr4l03asdar89bss3fhy486wjjqgjsk5iypmxaiga12ac01b";
+          url = https://api.github.com/repos/symfony/var-dumper/zipball/a586efdf2aa832d05b9249e9115d24f6a2691160;
+          sha256 = "12wnz5hrqcml2l28f1b5949rcvadhc8vigqcg9sqbkzzhxn6gli1";
         };
       };
     };
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/default.nix b/nixpkgs/pkgs/servers/web-apps/discourse/default.nix
index 5a3301040d33..72ea8a943dc2 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/default.nix
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/default.nix
@@ -9,13 +9,13 @@
 }:
 
 let
-  version = "2.7.4";
+  version = "2.7.5";
 
   src = fetchFromGitHub {
     owner = "discourse";
     repo = "discourse";
     rev = "v${version}";
-    sha256 = "sha256-3cvrdWBXRM5F8qFEqbe8ru1U0wBqCkRxK7GAV0beJNk=";
+    sha256 = "sha256-OykWaiBAHcZy41i+aRzBHCRgwnfQUBijHjb+ofIk25M=";
   };
 
   runtimeDeps = [
@@ -64,7 +64,6 @@ let
       });
     in
       stdenv.mkDerivation (builtins.removeAttrs args [ "bundlerEnvArgs" ] // {
-        inherit name pname version src meta;
         pluginName = if name != null then name else "${pname}-${version}";
         phases = [ "unpackPhase" "installPhase" ];
         installPhase = ''
@@ -151,6 +150,7 @@ let
       brotli
       procps
       nodePackages.uglify-js
+      nodePackages.terser
     ];
 
     patches = [
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/all-plugins.nix b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/all-plugins.nix
index e6640cbbe975..f64fbb137dfc 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/all-plugins.nix
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/all-plugins.nix
@@ -3,10 +3,10 @@ let
   callPackage = newScope args;
 in
 {
-  discourse-spoiler-alert = callPackage ./discourse-spoiler-alert {};
-  discourse-solved = callPackage ./discourse-solved {};
   discourse-canned-replies = callPackage ./discourse-canned-replies {};
-  discourse-math = callPackage ./discourse-math {};
   discourse-github = callPackage ./discourse-github {};
+  discourse-math = callPackage ./discourse-math {};
+  discourse-solved = callPackage ./discourse-solved {};
+  discourse-spoiler-alert = callPackage ./discourse-spoiler-alert {};
   discourse-yearly-review = callPackage ./discourse-yearly-review {};
 }
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-canned-replies/default.nix b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-canned-replies/default.nix
index 05c153cd70b1..558abec36f47 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-canned-replies/default.nix
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-canned-replies/default.nix
@@ -1,11 +1,17 @@
-{ mkDiscoursePlugin, fetchFromGitHub }:
+{ lib, mkDiscoursePlugin, fetchFromGitHub }:
 
 mkDiscoursePlugin {
   name = "discourse-canned-replies";
   src = fetchFromGitHub {
     owner = "discourse";
     repo = "discourse-canned-replies";
-    rev = "7ee748f18a276aca42185e2079c1d4cadeecdaf8";
-    sha256 = "0j10kxfr6v2rdd58smg2i7iac46z74qnnjk8b91jd1svazhis1ph";
+    rev = "e3f1de8928df5955b64994079b7e2073556e5456";
+    sha256 = "1g4fazm6cn6hbfd08mq2zhc6dgm4qj1r1f1amhbgxhk6qsxf42cd";
+  };
+  meta = with lib; {
+    homepage = "https://github.com/discourse/discourse-canned-replies";
+    maintainers = with maintainers; [ talyz ];
+    license = licenses.gpl2Only;
+    description = "Adds support for inserting a canned reply into the composer window via a UI";
   };
 }
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/Gemfile b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/Gemfile
index f0205f4ff1df..7c0e7f435ae7 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/Gemfile
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/Gemfile
@@ -1,3 +1,9 @@
-source 'https://rubygems.org'
+# frozen_string_literal: true
+
+source "https://rubygems.org"
+
+git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
+
+# gem "rails"
 gem 'sawyer', '0.8.2'
 gem 'octokit', '4.21.0'
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/Gemfile.lock b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/Gemfile.lock
index f28833a35c0f..0486ea1402b9 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/Gemfile.lock
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/Gemfile.lock
@@ -1,21 +1,25 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    addressable (2.7.0)
+    addressable (2.8.0)
       public_suffix (>= 2.0.2, < 5.0)
-    faraday (1.4.2)
+    faraday (1.5.0)
       faraday-em_http (~> 1.0)
       faraday-em_synchrony (~> 1.0)
       faraday-excon (~> 1.1)
+      faraday-httpclient (~> 1.0.1)
       faraday-net_http (~> 1.0)
       faraday-net_http_persistent (~> 1.1)
+      faraday-patron (~> 1.0)
       multipart-post (>= 1.2, < 3)
       ruby2_keywords (>= 0.0.4)
     faraday-em_http (1.0.0)
     faraday-em_synchrony (1.0.0)
     faraday-excon (1.1.0)
+    faraday-httpclient (1.0.1)
     faraday-net_http (1.0.1)
     faraday-net_http_persistent (1.1.0)
+    faraday-patron (1.0.0)
     multipart-post (2.1.1)
     octokit (4.21.0)
       faraday (>= 0.9)
@@ -27,11 +31,11 @@ GEM
       faraday (> 0.8, < 2.0)
 
 PLATFORMS
-  ruby
+  x86_64-linux
 
 DEPENDENCIES
   octokit (= 4.21.0)
   sawyer (= 0.8.2)
 
 BUNDLED WITH
-   2.1.4
+   2.2.20
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/default.nix b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/default.nix
index e5d8cff0a9fd..bb6d16bfe465 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/default.nix
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/default.nix
@@ -1,4 +1,4 @@
-{ mkDiscoursePlugin, fetchFromGitHub }:
+{ lib, mkDiscoursePlugin, fetchFromGitHub }:
 
 mkDiscoursePlugin {
   name = "discourse-github";
@@ -6,7 +6,14 @@ mkDiscoursePlugin {
   src = fetchFromGitHub {
     owner = "discourse";
     repo = "discourse-github";
-    rev = "151e353a5a1971157c70c2e2b0f56387f212a81f";
-    sha256 = "00kra6zd2k1f2vwcdvxnxnammzh72f5qxcqbb94m0z6maj598wdy";
+    rev = "154fd5ea597640c2259ce489b4ce75b48ac1973c";
+    sha256 = "0wb5p219z42rc035rnh2iwrbsj000nxa9shbmc325rzcg6xlhdhw";
   };
+  meta = with lib; {
+    homepage = "https://github.com/discourse/discourse-github";
+    maintainers = with maintainers; [ talyz ];
+    license = licenses.mit;
+    description = "Adds GitHub badges and linkback functionality";
+  };
+
 }
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/gemset.nix b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/gemset.nix
index bad1f9629578..ae20ec895210 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/gemset.nix
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-github/gemset.nix
@@ -5,21 +5,21 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1fvchp2rhp2rmigx7qglf69xvjqvzq7x0g49naliw29r2bz656sy";
+      sha256 = "022r3m9wdxljpbya69y2i3h9g3dhhfaqzidf95m6qjzms792jvgp";
       type = "gem";
     };
-    version = "2.7.0";
+    version = "2.8.0";
   };
   faraday = {
-    dependencies = ["faraday-em_http" "faraday-em_synchrony" "faraday-excon" "faraday-net_http" "faraday-net_http_persistent" "multipart-post" "ruby2_keywords"];
+    dependencies = ["faraday-em_http" "faraday-em_synchrony" "faraday-excon" "faraday-httpclient" "faraday-net_http" "faraday-net_http_persistent" "faraday-patron" "multipart-post" "ruby2_keywords"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07mhk70gv453pg38md346470hknyhipdqppnplq706ll3k3lzb7v";
+      sha256 = "0gwbii45plm9bljk22bwzhzxrc5xid8qx24f54vrm74q3zaz00ah";
       type = "gem";
     };
-    version = "1.4.2";
+    version = "1.5.0";
   };
   faraday-em_http = {
     groups = ["default"];
@@ -51,6 +51,16 @@
     };
     version = "1.1.0";
   };
+  faraday-httpclient = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fyk0jd3ks7fdn8nv3spnwjpzx2lmxmg2gh4inz3by1zjzqg33sc";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
   faraday-net_http = {
     groups = ["default"];
     platforms = [];
@@ -71,6 +81,16 @@
     };
     version = "1.1.0";
   };
+  faraday-patron = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19wgsgfq0xkski1g7m96snv39la3zxz6x7nbdgiwhg5v82rxfb6w";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
   multipart-post = {
     groups = ["default"];
     platforms = [];
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-math/default.nix b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-math/default.nix
index 8cf2a4abc0d1..0e751c1dc545 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-math/default.nix
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-math/default.nix
@@ -1,11 +1,17 @@
-{ mkDiscoursePlugin, fetchFromGitHub }:
+{ lib, mkDiscoursePlugin, fetchFromGitHub }:
 
 mkDiscoursePlugin {
   name = "discourse-math";
   src = fetchFromGitHub {
     owner = "discourse";
     repo = "discourse-math";
-    rev = "143ddea4558ea9a1b3fd71635bc11e055763c8e7";
-    sha256 = "18pq5ybl3g34i39cpixc3nszvq8gx5yji58zlbbl6428mm011cbx";
+    rev = "aed0c83cee568d5239143bcf1df59c5fbe86b276";
+    sha256 = "1k6kpnhf8s2l0w9zr5pn3wvn8w0n3gwkv7qkv0mkhkzy246ag20z";
+  };
+  meta = with lib; {
+    homepage = "https://github.com/discourse/discourse-math";
+    maintainers = with maintainers; [ talyz ];
+    license = licenses.mit;
+    description = "Official MathJax support for Discourse";
   };
 }
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-solved/default.nix b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-solved/default.nix
index c382a83d0893..2d451418bdd9 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-solved/default.nix
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-solved/default.nix
@@ -1,11 +1,17 @@
-{ mkDiscoursePlugin, fetchFromGitHub }:
+{ lib, mkDiscoursePlugin, fetchFromGitHub }:
 
 mkDiscoursePlugin {
   name = "discourse-solved";
   src = fetchFromGitHub {
     owner = "discourse";
     repo = "discourse-solved";
-    rev = "179611766d53974308e6f7def21836997c3c55fc";
-    sha256 = "sha256:1s77h42d3bv2lqw33akxh8ss482vxnz4d7qz6xicwqfwv34qjf03";
+    rev = "b96374bf4ab7e6d5cecb0761918b060a524eb9bf";
+    sha256 = "0zrv70p0wz93akpcj6gpwjkw7az3iz9bx4n2z630kyrlmxdbj32a";
+  };
+  meta = with lib; {
+    homepage = "https://github.com/discourse/discourse-solved";
+    maintainers = with maintainers; [ talyz ];
+    license = licenses.mit;
+    description = "Allow accepted answers on topics";
   };
 }
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-spoiler-alert/default.nix b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-spoiler-alert/default.nix
index 8eba43e47e40..da47dbf182c6 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-spoiler-alert/default.nix
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-spoiler-alert/default.nix
@@ -1,11 +1,17 @@
-{ mkDiscoursePlugin, fetchFromGitHub }:
+{ lib, mkDiscoursePlugin, fetchFromGitHub }:
 
 mkDiscoursePlugin {
   name = "discourse-spoiler-alert";
   src = fetchFromGitHub {
     owner = "discourse";
     repo = "discourse-spoiler-alert";
-    rev = "e200cfa571d252cab63f3d30d619b370986e4cee";
-    sha256 = "0ya69ix5g77wz4c9x9gmng6l25ghb5xxlx3icr6jam16q14dzc33";
+    rev = "ec14a2316da0a4fc055cfc21c68a60040188a2b4";
+    sha256 = "11n977gp8va7jkqa6i3ja279k4nmkhk5l4hg9xhs229450m1rnfp";
+  };
+  meta = with lib; {
+    homepage = "https://github.com/discourse/discourse-spoiler-alert";
+    maintainers = with maintainers; [ talyz ];
+    license = licenses.mit;
+    description = "Hide spoilers behind the spoiler-alert jQuery plugin";
   };
 }
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-yearly-review/default.nix b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-yearly-review/default.nix
index 8e76123ae593..b20e16118c7e 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-yearly-review/default.nix
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/plugins/discourse-yearly-review/default.nix
@@ -1,11 +1,17 @@
-{ mkDiscoursePlugin, fetchFromGitHub }:
+{ lib, mkDiscoursePlugin, fetchFromGitHub }:
 
 mkDiscoursePlugin {
   name = "discourse-yearly-review";
   src = fetchFromGitHub {
     owner = "discourse";
     repo = "discourse-yearly-review";
-    rev = "d1471bdb68945f55342e72e2c525b4f628419a50";
-    sha256 = "sha256:0xpl0l1vpih8xzb6y7k1lm72nj4ya99378viyhqfvpwzsn5pha2a";
+    rev = "95149df2282d62eebeb265b4895df15a2b259d03";
+    sha256 = "02n27al8n8cxz3dx4awlnd4qhv8a0fmjac57yyblmpviapja1wj7";
+  };
+  meta = with lib; {
+    homepage = "https://github.com/discourse/discourse-yearly-review";
+    maintainers = with maintainers; [ talyz ];
+    license = licenses.mit;
+    description = "Publishes an automated Year in Review topic";
   };
 }
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile.lock b/nixpkgs/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile.lock
index af968cdf3313..1f7a3641caad 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile.lock
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/rubyEnv/Gemfile.lock
@@ -186,11 +186,6 @@ GEM
     jwt (2.2.3)
     kgio (2.11.3)
     libv8-node (15.14.0.1)
-    libv8-node (15.14.0.1-arm64-darwin-20)
-    libv8-node (15.14.0.1-x86_64-darwin-18)
-    libv8-node (15.14.0.1-x86_64-darwin-19)
-    libv8-node (15.14.0.1-x86_64-darwin-20)
-    libv8-node (15.14.0.1-x86_64-linux)
     listen (3.5.1)
       rb-fsevent (~> 0.10, >= 0.10.3)
       rb-inotify (~> 0.9, >= 0.9.10)
@@ -214,7 +209,7 @@ GEM
       rack (>= 1.1.3)
     method_source (1.0.0)
     mini_mime (1.1.0)
-    mini_portile2 (2.5.1)
+    mini_portile2 (2.5.3)
     mini_racer (0.4.0)
       libv8-node (~> 15.14.0.0)
     mini_scheduler (0.13.0)
@@ -232,7 +227,7 @@ GEM
     multipart-post (2.1.1)
     mustache (1.1.1)
     nio4r (2.5.7)
-    nokogiri (1.11.5)
+    nokogiri (1.11.7)
       mini_portile2 (~> 2.5.0)
       racc (~> 1.4)
     nokogumbo (2.0.5)
@@ -267,7 +262,7 @@ GEM
     omniauth-twitter (1.4.0)
       omniauth-oauth (~> 1.1)
       rack
-    onebox (2.2.15)
+    onebox (2.2.17)
       addressable (~> 2.7.0)
       htmlentities (~> 4.3)
       multi_json (~> 1.11)
@@ -465,12 +460,7 @@ GEM
     zeitwerk (2.4.2)
 
 PLATFORMS
-  arm64-darwin-20
   ruby
-  x86_64-darwin-18
-  x86_64-darwin-19
-  x86_64-darwin-20
-  x86_64-linux
 
 DEPENDENCIES
   actionmailer (= 6.1.3.2)
@@ -600,4 +590,4 @@ DEPENDENCIES
   yaml-lint
 
 BUNDLED WITH
-   2.2.16
+   2.2.20
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/rubyEnv/gemset.nix b/nixpkgs/pkgs/servers/web-apps/discourse/rubyEnv/gemset.nix
index 974df1ed4eae..2fe2587d25f5 100644
--- a/nixpkgs/pkgs/servers/web-apps/discourse/rubyEnv/gemset.nix
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/rubyEnv/gemset.nix
@@ -1135,10 +1135,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xg1x4708a4pn2wk8qs2d8kfzzdyv9kjjachg2f1phsx62ap2rx2";
+      sha256 = "1ad0mli9rc0f17zw4ibp24dbj1y39zkykijsjmnzl4gwpg5s0j6k";
       type = "gem";
     };
-    version = "2.5.1";
+    version = "2.5.3";
   };
   mini_racer = {
     dependencies = ["libv8-node"];
@@ -1284,10 +1284,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1i80ny61maqzqr1fq5wgpkijmh5j8abisrmhn16kv7mzmxqg5w0m";
+      sha256 = "1vrn31385ix5k9b0yalnlzv360isv6dincbcvi8psllnwz4sjxj9";
       type = "gem";
     };
-    version = "1.11.5";
+    version = "1.11.7";
   };
   nokogumbo = {
     dependencies = ["nokogiri"];
@@ -1414,10 +1414,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0a76xmwikcg2lv8k2cawzhmi2hx7j145v12mbpriby6zff797z4g";
+      sha256 = "1swlysqwfc6mb7smv52yv12sd79dchjf2f6r738wrag0wp5hazqy";
       type = "gem";
     };
-    version = "2.2.15";
+    version = "2.2.17";
   };
   openssl = {
     groups = ["default"];
diff --git a/nixpkgs/pkgs/servers/web-apps/discourse/update.py b/nixpkgs/pkgs/servers/web-apps/discourse/update.py
index c401ab552bb7..ae4dadfc3a73 100755
--- a/nixpkgs/pkgs/servers/web-apps/discourse/update.py
+++ b/nixpkgs/pkgs/servers/web-apps/discourse/update.py
@@ -1,5 +1,5 @@
 #!/usr/bin/env nix-shell
-#! nix-shell -i python3 -p bundix bundler nix-update python3 python3Packages.requests python3Packages.click python3Packages.click-log
+#! nix-shell -i python3 -p bundix bundler nix-update nix-universal-prefetch python3 python3Packages.requests python3Packages.click python3Packages.click-log
 
 import click
 import click_log
@@ -8,17 +8,22 @@ import tempfile
 import re
 import logging
 import subprocess
-import pathlib
+import os
+import stat
+import json
+import requests
 from distutils.version import LooseVersion
+from pathlib import Path
 from typing import Iterable
 
-import requests
 
 logger = logging.getLogger(__name__)
 
 
 class DiscourseRepo:
     version_regex = re.compile(r'^v\d+\.\d+\.\d+$')
+    _latest_commit_sha = None
+
     def __init__(self, owner: str = 'discourse', repo: str = 'discourse'):
         self.owner = owner
         self.repo = repo
@@ -35,6 +40,15 @@ class DiscourseRepo:
         versions.sort(key=lambda x: LooseVersion(x.replace('v', '')), reverse=True)
         return versions
 
+    @property
+    def latest_commit_sha(self) -> str:
+        if self._latest_commit_sha is None:
+            r = requests.get(f'https://api.github.com/repos/{self.owner}/{self.repo}/commits?per_page=1')
+            r.raise_for_status()
+            self._latest_commit_sha = r.json()[0]['sha']
+
+        return self._latest_commit_sha
+
     @staticmethod
     def rev2version(tag: str) -> str:
         """
@@ -57,19 +71,23 @@ class DiscourseRepo:
 
 def _call_nix_update(pkg, version):
     """calls nix-update from nixpkgs root dir"""
-    nixpkgs_path = pathlib.Path(__file__).parent / '../../../../'
+    nixpkgs_path = Path(__file__).parent / '../../../../'
     return subprocess.check_output(['nix-update', pkg, '--version', version], cwd=nixpkgs_path)
 
 
+def _nix_eval(expr: str):
+    nixpkgs_path = Path(__file__).parent / '../../../../'
+    return json.loads(subprocess.check_output(['nix', 'eval', '--json', f'(with import {nixpkgs_path} {{}}; {expr})'], text=True))
+
+
 def _get_current_package_version(pkg: str):
-    nixpkgs_path = pathlib.Path(__file__).parent / '../../../../'
-    return subprocess.check_output(['nix', 'eval', '--raw', f'nixpkgs.{pkg}.version'], text=True)
+    return _nix_eval(f'{pkg}.version')
 
 
 def _diff_file(filepath: str, old_version: str, new_version: str):
     repo = DiscourseRepo()
 
-    current_dir = pathlib.Path(__file__).parent
+    current_dir = Path(__file__).parent
 
     old = repo.get_file(filepath, 'v' + old_version)
     new = repo.get_file(filepath, 'v' + new_version)
@@ -148,17 +166,87 @@ def update(rev):
     version = repo.rev2version(rev)
     logger.debug(f"Using version {version}")
 
-    rubyenv_dir = pathlib.Path(__file__).parent / "rubyEnv"
+    rubyenv_dir = Path(__file__).parent / "rubyEnv"
 
     for fn in ['Gemfile.lock', 'Gemfile']:
         with open(rubyenv_dir / fn, 'w') as f:
             f.write(repo.get_file(fn, rev))
 
     subprocess.check_output(['bundle', 'lock'], cwd=rubyenv_dir)
+    for platform in ['arm64-darwin-20', 'x86_64-darwin-18',
+                     'x86_64-darwin-19', 'x86_64-darwin-20',
+                     'x86_64-linux']:
+        subprocess.check_output(['bundle', 'lock', '--remove-platform', platform], cwd=rubyenv_dir)
     subprocess.check_output(['bundix'], cwd=rubyenv_dir)
 
     _call_nix_update('discourse', repo.rev2version(rev))
 
+@cli.command()
+def update_plugins():
+    """Update plugins to their latest revision.
+
+    """
+    plugins = [
+        {'name': 'discourse-canned-replies'},
+        {'name': 'discourse-github'},
+        {'name': 'discourse-math'},
+        {'name': 'discourse-solved'},
+        {'name': 'discourse-spoiler-alert'},
+        {'name': 'discourse-yearly-review'},
+    ]
+
+    for plugin in plugins:
+        fetcher = plugin.get('fetcher') or "fetchFromGitHub"
+        owner = plugin.get('owner') or "discourse"
+        name = plugin.get('name')
+        repo_name = plugin.get('repo_name') or name
+
+        repo = DiscourseRepo(owner=owner, repo=repo_name)
+        prev_commit_sha = _nix_eval(f'discourse.plugins.{name}.src.rev')
+
+        if prev_commit_sha == repo.latest_commit_sha:
+            click.echo(f'Plugin {name} is already at the latest revision')
+            continue
+
+        filename = _nix_eval(f'builtins.unsafeGetAttrPos "src" discourse.plugins.{name}')['file']
+        prev_hash = _nix_eval(f'discourse.plugins.{name}.src.outputHash')
+        new_hash = subprocess.check_output([
+            'nix-universal-prefetch', fetcher,
+            '--owner', owner,
+            '--repo', repo_name,
+            '--rev', repo.latest_commit_sha,
+        ], text=True).strip("\n")
+
+        click.echo(f"Update {name}, {prev_commit_sha} -> {repo.latest_commit_sha} in {filename}")
+
+        with open(filename, 'r+') as f:
+            content = f.read()
+            content = content.replace(prev_commit_sha, repo.latest_commit_sha)
+            content = content.replace(prev_hash, new_hash)
+            f.seek(0)
+            f.write(content)
+            f.truncate()
+
+        rubyenv_dir = Path(filename).parent
+        gemfile = rubyenv_dir / "Gemfile"
+        gemfile_text = ''
+        for line in repo.get_file('plugin.rb', repo.latest_commit_sha).splitlines():
+            if 'gem ' in line:
+                gemfile_text = gemfile_text + line + os.linesep
+
+        if len(gemfile_text) > 0:
+            if os.path.isfile(gemfile):
+                os.remove(gemfile)
+
+            subprocess.check_output(['bundle', 'init'], cwd=rubyenv_dir)
+            os.chmod(gemfile, stat.S_IREAD | stat.S_IWRITE | stat.S_IRGRP | stat.S_IROTH)
+
+            with open(gemfile, 'a') as f:
+                f.write(gemfile_text)
+
+            subprocess.check_output(['bundle', 'lock', '--update'], cwd=rubyenv_dir)
+            subprocess.check_output(['bundix'], cwd=rubyenv_dir)
+
 
 if __name__ == '__main__':
     cli()
diff --git a/nixpkgs/pkgs/servers/web-apps/lemmy/default.nix b/nixpkgs/pkgs/servers/web-apps/lemmy/default.nix
new file mode 100644
index 000000000000..e9b6eb116290
--- /dev/null
+++ b/nixpkgs/pkgs/servers/web-apps/lemmy/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, stdenv
+, rustPlatform
+, fetchFromGitHub
+, openssl
+, postgresql
+, libiconv
+, Security
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "lemmy-server";
+  version = "0.11.2";
+
+  src = fetchFromGitHub {
+    owner = "LemmyNet";
+    repo = "lemmy";
+    rev = version;
+    sha256 = "sha256-wDRBeAYjPpAd3DL99fH4Yng994hGmAmxlBqzOeXTP88=";
+  };
+
+  cargoSha256 = "sha256-7wF5mUjSeJvCNLZcR6XB31RX2RLOOEyTGpOQxg+NcWk=";
+
+  buildInputs = [ postgresql ]
+    ++ lib.optionals stdenv.isDarwin [ libiconv Security ];
+
+  # Using OPENSSL_NO_VENDOR is not an option on darwin
+  # As of version 0.10.35 rust-openssl looks for openssl on darwin
+  # with a hardcoded path to /usr/lib/libssl.x.x.x.dylib
+  # https://github.com/sfackler/rust-openssl/blob/master/openssl-sys/build/find_normal.rs#L115
+  OPENSSL_LIB_DIR = "${openssl.out}/lib";
+  OPENSSL_INCLUDE_DIR = "${openssl.dev}/include";
+
+  meta = with lib; {
+    description = "Ultra relevant and instant full-text search API";
+    homepage = "https://join-lemmy.org/";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ happysalada ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/web-apps/plausible/default.nix b/nixpkgs/pkgs/servers/web-apps/plausible/default.nix
index bf408551a44e..2cdd33a245e5 100644
--- a/nixpkgs/pkgs/servers/web-apps/plausible/default.nix
+++ b/nixpkgs/pkgs/servers/web-apps/plausible/default.nix
@@ -26,12 +26,15 @@ let
   mixFodDeps = beamPackages.fetchMixDeps {
     pname = "${pname}-deps";
     inherit src version;
-    sha256 = "18h3hs69nw06msvs3nnymf6p94qd3x1f4d2zawqriy9fr5fz7zx6";
+    sha256 = "1x0if0ifk272vcqjlgf097pxsw13bhwy8vs0b89l0bssx1bzygsi";
 
     # We need ecto 3.6 as this version checks whether the database exists before
     # trying to create it. The creation attempt would always require super-user privileges
     # and since 3.6 this isn't the case anymore.
-    patches = [ ./ecto_sql-fix.patch ];
+    patches = [
+      ./ecto_sql-fix.patch
+      ./plausible-Bump-clickhouse_ecto-dependency-to-be-compatible-with-ecto-3.6.patch
+    ];
   };
 
   yarnDeps = mkYarnModules {
diff --git a/nixpkgs/pkgs/servers/web-apps/plausible/plausible-Bump-clickhouse_ecto-dependency-to-be-compatible-with-ecto-3.6.patch b/nixpkgs/pkgs/servers/web-apps/plausible/plausible-Bump-clickhouse_ecto-dependency-to-be-compatible-with-ecto-3.6.patch
new file mode 100644
index 000000000000..b8aa7319a217
--- /dev/null
+++ b/nixpkgs/pkgs/servers/web-apps/plausible/plausible-Bump-clickhouse_ecto-dependency-to-be-compatible-with-ecto-3.6.patch
@@ -0,0 +1,26 @@
+From 127a77882879e5cdf32d908ee3b1b6cbdc9e482e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= <mail@nh2.me>
+Date: Wed, 14 Jul 2021 01:20:29 +0200
+Subject: [PATCH] Bump `clickhouse_ecto` dependency to be compatible with ecto
+ 3.6
+
+---
+ mix.lock | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/mix.lock b/mix.lock
+index ecae8ac..d42af1e 100644
+--- a/mix.lock
++++ b/mix.lock
+@@ -12,7 +12,7 @@
+   "bunt": {:hex, :bunt, "0.2.0", "951c6e801e8b1d2cbe58ebbd3e616a869061ddadcc4863d0a2182541acae9a38", [:mix], [], "hexpm", "7af5c7e09fe1d40f76c8e4f9dd2be7cebd83909f31fee7cd0e9eadc567da8353"},
+   "cachex": {:hex, :cachex, "3.3.0", "6f2ebb8f27491fe39121bd207c78badc499214d76c695658b19d6079beeca5c2", [:mix], [{:eternal, "~> 1.2", [hex: :eternal, repo: "hexpm", optional: false]}, {:jumper, "~> 1.0", [hex: :jumper, repo: "hexpm", optional: false]}, {:sleeplocks, "~> 1.1", [hex: :sleeplocks, repo: "hexpm", optional: false]}, {:unsafe, "~> 1.0", [hex: :unsafe, repo: "hexpm", optional: false]}], "hexpm", "d90e5ee1dde14cef33f6b187af4335b88748b72b30c038969176cd4e6ccc31a1"},
+   "certifi": {:hex, :certifi, "2.6.1", "dbab8e5e155a0763eea978c913ca280a6b544bfa115633fa20249c3d396d9493", [:rebar3], [], "hexpm", "524c97b4991b3849dd5c17a631223896272c6b0af446778ba4675a1dff53bb7e"},
+-  "clickhouse_ecto": {:git, "https://github.com/plausible/clickhouse_ecto.git", "b30ccc93a4101a25ff0bba92113e18d8a9a8b28e", []},
++  "clickhouse_ecto": {:git, "https://github.com/plausible/clickhouse_ecto.git", "1969f14ecef7c357b2bd8bdc3e566234269de58c", []},
+   "clickhousex": {:git, "https://github.com/plausible/clickhousex", "0832dd4b1af1f0eba1d1018c231bf0d8d281f031", []},
+   "combine": {:hex, :combine, "0.10.0", "eff8224eeb56498a2af13011d142c5e7997a80c8f5b97c499f84c841032e429f", [:mix], [], "hexpm", "1b1dbc1790073076580d0d1d64e42eae2366583e7aecd455d1215b0d16f2451b"},
+   "comeonin": {:hex, :comeonin, "5.3.2", "5c2f893d05c56ae3f5e24c1b983c2d5dfb88c6d979c9287a76a7feb1e1d8d646", [:mix], [], "hexpm", "d0993402844c49539aeadb3fe46a3c9bd190f1ecf86b6f9ebd71957534c95f04"},
+-- 
+2.31.1
+
diff --git a/nixpkgs/pkgs/servers/web-apps/vikunja/api.nix b/nixpkgs/pkgs/servers/web-apps/vikunja/api.nix
new file mode 100644
index 000000000000..285352da36e6
--- /dev/null
+++ b/nixpkgs/pkgs/servers/web-apps/vikunja/api.nix
@@ -0,0 +1,57 @@
+{ lib, buildGoModule, fetchFromGitea, mage, writeShellScriptBin, nixosTests }:
+
+buildGoModule rec {
+  pname = "vikunja-api";
+  version = "0.17.1";
+
+  src = fetchFromGitea {
+    domain = "kolaente.dev";
+    owner = "vikunja";
+    repo = "api";
+    rev = "v${version}";
+    sha256 = "sha256-xqC7MaPe5cClMUTSRE3HLTEH3LH1J1bJSdH+1ZOfGo4=";
+  };
+
+  nativeBuildInputs =
+      let
+        fakeGit = writeShellScriptBin "git" ''
+          if [[ $@ = "describe --tags --always --abbrev=10" ]]; then
+              echo "${version}"
+          else
+              >&2 echo "Unknown command: $@"
+              exit 1
+          fi
+        '';
+      in [ fakeGit mage ];
+
+  vendorSha256 = "sha256-/vXyZznGxj5hxwqi4sttBBkEoS25DJqwoBtADCRO9Qc=";
+
+  # checks need to be disabled because of needed internet for some checks
+  doCheck = false;
+
+  buildPhase = ''
+    runHook preBuild
+
+    # Fixes "mkdir /homeless-shelter: permission denied" - "Error: error compiling magefiles" during build
+    export HOME=$(mktemp -d)
+    mage build:build
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    install -Dt $out/bin vikunja
+    runHook postInstall
+  '';
+
+  passthru.tests.vikunja = nixosTests.vikunja;
+
+  meta = {
+    description = "API of the Vikunja to-do list app";
+    homepage = "https://vikunja.io/";
+    license = lib.licenses.agpl3Plus;
+    maintainers = with lib.maintainers; [ em0lar ];
+    platforms = lib.platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/web-apps/vikunja/frontend.nix b/nixpkgs/pkgs/servers/web-apps/vikunja/frontend.nix
new file mode 100644
index 000000000000..e3b8a8785dec
--- /dev/null
+++ b/nixpkgs/pkgs/servers/web-apps/vikunja/frontend.nix
@@ -0,0 +1,33 @@
+{ stdenv, lib, fetchurl, unzip, nixosTests, ... }:
+
+stdenv.mkDerivation rec {
+  pname = "vikunja-frontend";
+  version = "0.17.0";
+  src = fetchurl {
+    url = "https://dl.vikunja.io/frontend/${pname}-${version}.zip";
+    sha256 = "sha256-LUYBCdEwDMwhFuIIRmnrtQN9ChaEZyFbItMxh27H5XY=";
+  };
+
+  nativeBuildInputs = [ unzip ];
+
+  sourceRoot = ".";
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/
+    cp -r * $out/
+
+    runHook postInstall
+  '';
+
+  passthru.tests.vikunja = nixosTests.vikunja;
+
+  meta = {
+    description = "Frontend of the Vikunja to-do list app";
+    homepage = "https://vikunja.io/";
+    license = lib.licenses.agpl3Plus;
+    maintainers = with lib.maintainers; [ em0lar ];
+    platforms = lib.platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/x11/xorg/default.nix b/nixpkgs/pkgs/servers/x11/xorg/default.nix
index 125c329c4bde..9a75403cec62 100644
--- a/nixpkgs/pkgs/servers/x11/xorg/default.nix
+++ b/nixpkgs/pkgs/servers/x11/xorg/default.nix
@@ -3102,11 +3102,11 @@ lib.makeScope newScope (self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xorgserver = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, openssl, libX11, libXau, libXaw, libxcb, xcbutil, xcbutilwm, xcbutilimage, xcbutilkeysyms, xcbutilrenderutil, libXdmcp, libXfixes, libxkbfile, libXmu, libXpm, libXrender, libXres, libXt }: stdenv.mkDerivation {
     pname = "xorg-server";
-    version = "1.20.11";
+    version = "1.20.12";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/xserver/xorg-server-1.20.11.tar.bz2";
-      sha256 = "0jacqgin8kcyy8fyv0lhgb4if8g9hp60rm3ih3s1mgps7xp7jk4i";
+      url = "mirror://xorg/individual/xserver/xorg-server-1.20.12.tar.xz";
+      sha256 = "1b4ckvxaiiiwdxwyfzbbfkr384qqy5qzfsm37z0fr08x8f9w0v9k";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/servers/x11/xorg/overrides.nix b/nixpkgs/pkgs/servers/x11/xorg/overrides.nix
index 7e8eee77a082..a52e1a7b0a58 100644
--- a/nixpkgs/pkgs/servers/x11/xorg/overrides.nix
+++ b/nixpkgs/pkgs/servers/x11/xorg/overrides.nix
@@ -659,6 +659,7 @@ self: super:
           "--with-xkb-output=$out/share/X11/xkb/compiled"
           "--with-log-dir=/var/log"
           "--enable-glamor"
+          "--with-os-name=Nix" # r13y, embeds the build machine's kernel version otherwise
         ] ++ lib.optionals stdenv.hostPlatform.isMusl [
           "--disable-tls"
         ];
@@ -781,7 +782,7 @@ self: super:
       # don't unset DBUS_SESSION_BUS_ADDRESS in startx
       (fetchpatch {
         name = "dont-unset-DBUS_SESSION_BUS_ADDRESS.patch";
-        url = "https://git.archlinux.org/svntogit/packages.git/plain/repos/extra-x86_64/fs46369.patch?h=packages/xorg-xinit&id=40f3ac0a31336d871c76065270d3f10e922d06f3";
+        url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/40f3ac0a31336d871c76065270d3f10e922d06f3/trunk/fs46369.patch";
         sha256 = "18kb88i3s9nbq2jxl7l2hyj6p56c993hivk8mzxg811iqbbawkp7";
       })
     ];
diff --git a/nixpkgs/pkgs/servers/x11/xorg/tarballs.list b/nixpkgs/pkgs/servers/x11/xorg/tarballs.list
index 4bb1867903ee..42cb2da3a0d6 100644
--- a/nixpkgs/pkgs/servers/x11/xorg/tarballs.list
+++ b/nixpkgs/pkgs/servers/x11/xorg/tarballs.list
@@ -218,4 +218,4 @@ mirror://xorg/individual/util/lndir-1.0.3.tar.bz2
 mirror://xorg/individual/util/makedepend-1.0.6.tar.bz2
 mirror://xorg/individual/util/util-macros-1.19.3.tar.bz2
 mirror://xorg/individual/util/xorg-cf-files-1.0.6.tar.bz2
-mirror://xorg/individual/xserver/xorg-server-1.20.11.tar.bz2
+mirror://xorg/individual/xserver/xorg-server-1.20.12.tar.xz
diff --git a/nixpkgs/pkgs/servers/x11/xorg/xwayland.nix b/nixpkgs/pkgs/servers/x11/xorg/xwayland.nix
index c16391a3c504..84df46605fa5 100644
--- a/nixpkgs/pkgs/servers/x11/xorg/xwayland.nix
+++ b/nixpkgs/pkgs/servers/x11/xorg/xwayland.nix
@@ -43,10 +43,10 @@
 stdenv.mkDerivation rec {
 
   pname = "xwayland";
-  version = "21.1.1";
+  version = "21.1.2";
   src = fetchurl {
     url = "mirror://xorg/individual/xserver/${pname}-${version}.tar.xz";
-    sha256 = "sha256-MfJhzlG77namyj7AKqNn/6K176K5hBLfV8zv16GQA84=";
+    sha256 = "sha256-uBy91a1guLetjD7MfsKijJvwIUSGcHNc67UB8Ivr0Ys=";
   };
 
   depsBuildBuild = [
diff --git a/nixpkgs/pkgs/servers/xmpp/ejabberd/default.nix b/nixpkgs/pkgs/servers/xmpp/ejabberd/default.nix
index bf0b7472c571..bec594041037 100644
--- a/nixpkgs/pkgs/servers/xmpp/ejabberd/default.nix
+++ b/nixpkgs/pkgs/servers/xmpp/ejabberd/default.nix
@@ -52,8 +52,6 @@ in stdenv.mkDerivation rec {
 
     makeFlags = [ "deps" ];
 
-    phases = [ "unpackPhase" "configurePhase" "buildPhase" "installPhase" ];
-
     installPhase = ''
       for i in deps/*; do
         ( cd $i
diff --git a/nixpkgs/pkgs/shells/es/default.nix b/nixpkgs/pkgs/shells/es/default.nix
index 5efb860c1d5f..52131a214a5e 100644
--- a/nixpkgs/pkgs/shells/es/default.nix
+++ b/nixpkgs/pkgs/shells/es/default.nix
@@ -1,12 +1,9 @@
 { lib, stdenv, fetchurl, readline, bison }:
 
-let
-  version = "0.9.1";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
 
   pname = "es";
-  inherit version;
+  version = "0.9.1";
 
   src = fetchurl {
     url = "https://github.com/wryun/es-shell/releases/download/v${version}/es-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/shells/fish/plugins/done.nix b/nixpkgs/pkgs/shells/fish/plugins/done.nix
index 25065b21fb14..8d1a14e19f23 100644
--- a/nixpkgs/pkgs/shells/fish/plugins/done.nix
+++ b/nixpkgs/pkgs/shells/fish/plugins/done.nix
@@ -2,13 +2,13 @@
 
 buildFishPlugin rec {
   pname = "done";
-  version = "1.16.1";
+  version = "1.16.3";
 
   src = fetchFromGitHub {
     owner = "franciscolourenco";
     repo = "done";
     rev = version;
-    sha256 = "NFysKzRZgDXXZW/sUlZNu7ZpMCKwbjAhIfspSK3UqCY=";
+    sha256 = "Xld66z9vVp3kxikndZ9k/zlNvP0YSoSCNTBkJ8rT3uo=";
   };
 
   checkPlugins = [ fishtape ];
diff --git a/nixpkgs/pkgs/shells/nushell/default.nix b/nixpkgs/pkgs/shells/nushell/default.nix
index 65ed6d5000c2..b7fa5453d87a 100644
--- a/nixpkgs/pkgs/shells/nushell/default.nix
+++ b/nixpkgs/pkgs/shells/nushell/default.nix
@@ -12,7 +12,7 @@
 , Security
 , nghttp2
 , libgit2
-, withStableFeatures ? true
+, withExtraFeatures ? true
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -29,14 +29,14 @@ rustPlatform.buildRustPackage rec {
   cargoSha256 = "sha256-Ly59mdUzSI2pIPbckWn1WBz/o2zVzpAzaCDROLdjG7Y=";
 
   nativeBuildInputs = [ pkg-config ]
-    ++ lib.optionals (withStableFeatures && stdenv.isLinux) [ python3 ];
+    ++ lib.optionals (withExtraFeatures && stdenv.isLinux) [ python3 ];
 
   buildInputs = [ openssl ]
     ++ lib.optionals stdenv.isDarwin [ zlib libiconv Security ]
-    ++ lib.optionals (withStableFeatures && stdenv.isLinux) [ xorg.libX11 ]
-    ++ lib.optionals (withStableFeatures && stdenv.isDarwin) [ AppKit nghttp2 libgit2 ];
+    ++ lib.optionals (withExtraFeatures && stdenv.isLinux) [ xorg.libX11 ]
+    ++ lib.optionals (withExtraFeatures && stdenv.isDarwin) [ AppKit nghttp2 libgit2 ];
 
-  cargoBuildFlags = lib.optional withStableFeatures "--features stable";
+  cargoBuildFlags = lib.optional withExtraFeatures "--features=extra";
 
   # TODO investigate why tests are broken on darwin
   # failures show that tests try to write to paths
diff --git a/nixpkgs/pkgs/shells/zsh/antigen/default.nix b/nixpkgs/pkgs/shells/zsh/antigen/default.nix
index c80471677f09..935939f90e60 100644
--- a/nixpkgs/pkgs/shells/zsh/antigen/default.nix
+++ b/nixpkgs/pkgs/shells/zsh/antigen/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "1bmp3qf14509swpxin4j9f98n05pdilzapjm0jdzbv0dy3hn20ix";
   };
 
-  phases = "installPhase";
+  dontUnpack = true;
 
   installPhase = ''
     outdir=$out/share/antigen
diff --git a/nixpkgs/pkgs/shells/zsh/grml-zsh-config/default.nix b/nixpkgs/pkgs/shells/zsh/grml-zsh-config/default.nix
index 4d5331543fbf..6196658723f6 100644
--- a/nixpkgs/pkgs/shells/zsh/grml-zsh-config/default.nix
+++ b/nixpkgs/pkgs/shells/zsh/grml-zsh-config/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "grml-zsh-config";
-  version = "0.18.0";
+  version = "0.19.0";
 
   src = fetchFromGitHub {
     owner = "grml";
     repo = "grml-etc-core";
     rev = "v${version}";
-    sha256 = "sha256-5QwP+dMOm6UBbQ1X1OcHawHSi3DJIciny2sV7biE18c=";
+    sha256 = "sha256-Vn8NzpvJ1W/+UUuhr1plLqskVBUOFJHvy+hxKE3DmIs=";
   };
 
   nativeBuildInputs = [ txt2tags ];
diff --git a/nixpkgs/pkgs/shells/zsh/nix-zsh-completions/default.nix b/nixpkgs/pkgs/shells/zsh/nix-zsh-completions/default.nix
index c48bf209d0f9..f60bb966003f 100644
--- a/nixpkgs/pkgs/shells/zsh/nix-zsh-completions/default.nix
+++ b/nixpkgs/pkgs/shells/zsh/nix-zsh-completions/default.nix
@@ -1,12 +1,8 @@
 { lib, stdenv, fetchFromGitHub }:
 
-let
-  version = "0.4.4";
-in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "nix-zsh-completions";
-  inherit version;
+  version = "0.4.4";
 
   src = fetchFromGitHub {
     owner = "spwhitt";
diff --git a/nixpkgs/pkgs/shells/zsh/pure-prompt/default.nix b/nixpkgs/pkgs/shells/zsh/pure-prompt/default.nix
index a15c9b5bbb99..0ba449870b83 100644
--- a/nixpkgs/pkgs/shells/zsh/pure-prompt/default.nix
+++ b/nixpkgs/pkgs/shells/zsh/pure-prompt/default.nix
@@ -4,13 +4,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "pure-prompt";
-  version = "1.16.0";
+  version = "1.17.0";
 
   src = fetchFromGitHub {
     owner = "sindresorhus";
     repo = "pure";
     rev = "v${version}";
-    sha256 = "sha256-fnk4lLRASX7FFAovAiRd9sm4jNlnFIJ78UCzdsXYVfM=";
+    sha256 = "sha256-6j6QZtsA5ZgfXthYjXRrND2zAJwZx0/6WRI1f3c+2mE=";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/shells/zsh/zsh-command-time/default.nix b/nixpkgs/pkgs/shells/zsh/zsh-command-time/default.nix
index 9696e441cf5a..b92ced6be71c 100644
--- a/nixpkgs/pkgs/shells/zsh/zsh-command-time/default.nix
+++ b/nixpkgs/pkgs/shells/zsh/zsh-command-time/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
     sha256 = "1bvyjgz6bhgg1nwr56r50p6fblgah6yiql55pgm5abnn2h876fjq";
   };
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   installPhase = ''
     install -Dm0444 $src/command-time.plugin.zsh --target-directory=$out/share/zsh/plugins/command-time
diff --git a/nixpkgs/pkgs/stdenv/darwin/default.nix b/nixpkgs/pkgs/stdenv/darwin/default.nix
index d6624a493aaf..b5a9f0cc5cb9 100644
--- a/nixpkgs/pkgs/stdenv/darwin/default.nix
+++ b/nixpkgs/pkgs/stdenv/darwin/default.nix
@@ -23,16 +23,16 @@
   else
     let
       fetch = { file, sha256, executable ? true }: import <nix/fetchurl.nix> {
-        url = "http://tarballs.nixos.org/stdenv-darwin/x86_64/5ab5783e4f46c373c6de84deac9ad59b608bb2e6/${file}";
+        url = "http://tarballs.nixos.org/stdenv-darwin/x86_64/05ef940b94fe76e7ac06ea45a625adc8e4be96f9/${file}";
         inherit (localSystem) system;
         inherit sha256 executable;
       }; in
     {
-      sh = fetch { file = "sh"; sha256 = "sha256-nbb4XEk3go7ttiWrQyKQMLzPr+qUnwnHkWMtVCZsMCs="; };
-      bzip2 = fetch { file = "bzip2"; sha256 = "sha256-ybnA+JWrKhXSfn20+GVKXkHFTp2Zt79hat8hAVmsUOc="; };
-      mkdir = fetch { file = "mkdir"; sha256 = "sha256-nmvMxmfcY41/60Z/E8L9u0vgePW5l30Dqw1z+Nr02Hk="; };
-      cpio = fetch { file = "cpio"; sha256 = "sha256-cB36rN3NLj19Tk37Kc5bodMFMO+mCpEQkKKo0AEMkaU="; };
-      tarball = fetch { file = "bootstrap-tools.cpio.bz2"; sha256 = "sha256-kh2vKmjCr/HvR06czZbxUxV5KDRxSF27M6nN3cyofRI="; executable = false; };
+      sh = fetch { file = "sh"; sha256 = "sha256-igMAVEfumFv/LUNTGfNi2nSehgTNIP4Sg+f3L7u6SMA="; };
+      bzip2 = fetch { file = "bzip2"; sha256 = "sha256-K3rhkJZipudT1Jgh+l41Y/fNsMkrPtiAsNRDha/lpZI="; };
+      mkdir = fetch { file = "mkdir"; sha256 = "sha256-VddFELwLDJGNADKB1fWwWPBtIAlEUgJv2hXRmC4NEeM="; };
+      cpio = fetch { file = "cpio"; sha256 = "sha256-SWkwvLaFyV44kLKL2nx720SvcL4ej/p2V/bX3uqAGO0="; };
+      tarball = fetch { file = "bootstrap-tools.cpio.bz2"; sha256 = "sha256-b65dXbIm6o6s6U8tAiGpR6SMfvfn/VFcZgTHBetJZis="; executable = false; };
     }
 }:
 
diff --git a/nixpkgs/pkgs/stdenv/linux/default.nix b/nixpkgs/pkgs/stdenv/linux/default.nix
index 63a37d54547d..1fbd3cba27ef 100644
--- a/nixpkgs/pkgs/stdenv/linux/default.nix
+++ b/nixpkgs/pkgs/stdenv/linux/default.nix
@@ -258,6 +258,25 @@ in
         # Rewrap the binutils with the new glibc, so both the next
         # stage's wrappers use it.
         libc = getLibc self;
+
+        # Unfortunately, when building gcc in the next stage, its LTO plugin
+        # would use the final libc but `ld` would use the bootstrap one,
+        # and that can fail to load.  Therefore we upgrade `ld` to use newer libc;
+        # apparently the interpreter needs to match libc, too.
+        bintools = self.stdenvNoCC.mkDerivation {
+          inherit (prevStage.bintools.bintools) name;
+          dontUnpack = true;
+          dontBuild = true;
+          # We wouldn't need to *copy* all, but it's easier and the result is temporary anyway.
+          installPhase = ''
+            mkdir -p "$out"/bin
+            cp -a '${prevStage.bintools.bintools}'/bin/* "$out"/bin/
+            chmod +w "$out"/bin/ld.bfd
+            patchelf --set-interpreter '${getLibc self}'/lib/ld*.so.? \
+              --set-rpath "${getLibc self}/lib:$(patchelf --print-rpath "$out"/bin/ld.bfd)" \
+              "$out"/bin/ld.bfd
+          '';
+        };
       };
     };
   })
diff --git a/nixpkgs/pkgs/stdenv/linux/make-bootstrap-tools.nix b/nixpkgs/pkgs/stdenv/linux/make-bootstrap-tools.nix
index 4db40a2e516b..0eee6e692fd3 100644
--- a/nixpkgs/pkgs/stdenv/linux/make-bootstrap-tools.nix
+++ b/nixpkgs/pkgs/stdenv/linux/make-bootstrap-tools.nix
@@ -183,7 +183,7 @@ in with pkgs; rec {
         nuke-refs $out/lib/*
         nuke-refs $out/libexec/gcc/*/*/*
         nuke-refs $out/lib/gcc/*/*/*
-        nuke-refs $out/lib/gcc/*/*/include-fixed/*/*
+        nuke-refs $out/lib/gcc/*/*/include-fixed/*{,/*}
 
         mkdir $out/.pack
         mv $out/* $out/.pack
diff --git a/nixpkgs/pkgs/test/haskell/default.nix b/nixpkgs/pkgs/test/haskell/default.nix
index eb389f4051f8..03e4f3461558 100644
--- a/nixpkgs/pkgs/test/haskell/default.nix
+++ b/nixpkgs/pkgs/test/haskell/default.nix
@@ -4,4 +4,5 @@ lib.recurseIntoAttrs {
   shellFor = callPackage ./shellFor { };
   documentationTarball = callPackage ./documentationTarball { };
   setBuildTarget = callPackage ./setBuildTarget { };
+  writers = callPackage ./writers { };
 }
diff --git a/nixpkgs/pkgs/test/haskell/documentationTarball/default.nix b/nixpkgs/pkgs/test/haskell/documentationTarball/default.nix
index aec3dc41f268..e3214fb49fed 100644
--- a/nixpkgs/pkgs/test/haskell/documentationTarball/default.nix
+++ b/nixpkgs/pkgs/test/haskell/documentationTarball/default.nix
@@ -4,7 +4,11 @@ let
   drv = haskellPackages.vector;
   docs = pkgs.haskell.lib.documentationTarball drv;
 
-in pkgs.runCommand "test haskell.lib.documentationTarball" { } ''
+in pkgs.runCommand "test haskell.lib.documentationTarball" {
+  meta = {
+    inherit (docs.meta) platforms;
+  };
+} ''
   tar xvzf "${docs}/${drv.name}-docs.tar.gz"
 
   # Check for Haddock html
diff --git a/nixpkgs/pkgs/test/haskell/setBuildTarget/default.nix b/nixpkgs/pkgs/test/haskell/setBuildTarget/default.nix
index b1335e2a74cf..5a8391d08861 100644
--- a/nixpkgs/pkgs/test/haskell/setBuildTarget/default.nix
+++ b/nixpkgs/pkgs/test/haskell/setBuildTarget/default.nix
@@ -30,7 +30,12 @@ let
          fi
      '';
 
-in pkgs.runCommand "test haskell.lib.setBuildTarget" {} ''
+in
+pkgs.runCommand "test haskell.lib.setBuildTarget" {
+  meta = {
+    inherit (drv.meta) platforms;
+  };
+} ''
   ${test "foo" "bar"}
   ${test "bar" "foo"}
   touch "$out"
diff --git a/nixpkgs/pkgs/test/haskell/shellFor/default.nix b/nixpkgs/pkgs/test/haskell/shellFor/default.nix
index 37ad2e90d89e..04f5e0453619 100644
--- a/nixpkgs/pkgs/test/haskell/shellFor/default.nix
+++ b/nixpkgs/pkgs/test/haskell/shellFor/default.nix
@@ -29,5 +29,8 @@
       additionalMaintainers = with lib.maintainers; [ cdepillabout ];
       allMaintainers = oldMaintainers ++ additionalMaintainers;
     in
-    oldMeta // { maintainers = allMaintainers; };
+    oldMeta // {
+      maintainers = allMaintainers;
+      inherit (cabal-install.meta) platforms;
+    };
 })
diff --git a/nixpkgs/pkgs/test/haskell/writers/default.nix b/nixpkgs/pkgs/test/haskell/writers/default.nix
new file mode 100644
index 000000000000..f05fda4bc736
--- /dev/null
+++ b/nixpkgs/pkgs/test/haskell/writers/default.nix
@@ -0,0 +1,26 @@
+# Wrap only the haskell-related tests from tests.writers
+# in their own derivation for Hydra CI in the haskell-updates
+# jobset. Can presumably removed as soon as tests.writers is
+# always green on darwin as well:
+# https://github.com/NixOS/nixpkgs/issues/126182
+{ runCommand, tests }:
+
+let
+  inherit (tests.writers)
+    writeTest
+    bin
+    simple
+    path
+    ;
+in
+
+runCommand "test-haskell-writers" {
+  meta = {
+    inherit (tests.writers.meta) platforms;
+  };
+} ''
+  ${writeTest "success" "test-haskell-bin-writer" "${bin.haskell}/bin/${bin.haskell.name}"}
+  ${writeTest "success" "test-haskell-simple-writer" simple.haskell}
+  ${writeTest "success" "test-haskell-path-writer" path.haskell}
+  touch $out
+''
diff --git a/nixpkgs/pkgs/test/texlive/default.nix b/nixpkgs/pkgs/test/texlive/default.nix
index 86c0a7f795b7..2444334f5268 100644
--- a/nixpkgs/pkgs/test/texlive/default.nix
+++ b/nixpkgs/pkgs/test/texlive/default.nix
@@ -119,4 +119,49 @@
     texdoc --debug --list texdoc | tee "$out"
     grep texdoc.pdf "$out"
   '';
+
+  # test that language files are generated as expected
+  hyphen-base = runCommandNoCC "texlive-test-hyphen-base" {
+    hyphenBase = lib.head texlive.hyphen-base.pkgs;
+    schemeFull = texlive.combined.scheme-full;
+    schemeInfraOnly = texlive.combined.scheme-infraonly;
+  } ''
+    mkdir -p "$out"/{scheme-infraonly,scheme-full}
+
+    # create language files with no hyphenation patterns
+    cat "$hyphenBase"/tex/generic/config/language.us >language.dat
+    cat "$hyphenBase"/tex/generic/config/language.us.def >language.def
+    cat "$hyphenBase"/tex/generic/config/language.us.lua >language.dat.lua
+
+    cat >>language.dat.lua <<EOF
+    }
+    EOF
+
+    cat >>language.def <<EOF
+    %%% No changes may be made beyond this point.
+
+    \uselanguage {USenglish}             %%% This MUST be the last line of the file.
+    EOF
+
+    for fname in language.{dat,def,dat.lua} ; do
+      diff --ignore-matching-lines='^\(%\|--\) Generated by ' -u \
+        {"$hyphenBase","$schemeFull"/share/texmf}/tex/generic/config/"$fname" \
+        | tee "$out/scheme-full/$fname.patch"
+      diff --ignore-matching-lines='^\(%\|--\) Generated by ' -u \
+        {,"$schemeInfraOnly"/share/texmf/tex/generic/config/}"$fname" \
+        | tee "$out/scheme-infraonly/$fname.patch"
+    done
+  '';
+
+  # test that fmtutil.cnf is fully regenerated on scheme-full
+  fmtutilCnf = runCommandNoCC "texlive-test-fmtutil.cnf" {
+    kpathsea = lib.head texlive.kpathsea.pkgs;
+    schemeFull = texlive.combined.scheme-full;
+  } ''
+    mkdir -p "$out"
+
+    diff --ignore-matching-lines='^# Generated by ' -u \
+      {"$kpathsea","$schemeFull"/share/texmf}/web2c/fmtutil.cnf \
+      | tee "$out/fmtutil.cnf.patch"
+  '';
 }
diff --git a/nixpkgs/pkgs/tools/X11/autocutsel/default.nix b/nixpkgs/pkgs/tools/X11/autocutsel/default.nix
index 4e6f40707a77..036ba8bc4e9a 100644
--- a/nixpkgs/pkgs/tools/X11/autocutsel/default.nix
+++ b/nixpkgs/pkgs/tools/X11/autocutsel/default.nix
@@ -16,7 +16,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     homepage = "https://www.nongnu.org/autocutsel/";
     description = "Tracks changes in the server's cutbuffer and CLIPBOARD selection";
     license = lib.licenses.gpl2Plus;
diff --git a/nixpkgs/pkgs/tools/X11/bumblebee/default.nix b/nixpkgs/pkgs/tools/X11/bumblebee/default.nix
index 706194cc0dd0..48d28562c207 100644
--- a/nixpkgs/pkgs/tools/X11/bumblebee/default.nix
+++ b/nixpkgs/pkgs/tools/X11/bumblebee/default.nix
@@ -33,8 +33,6 @@
 }:
 
 let
-  version = "3.2.1";
-
   nvidia_x11s = [ nvidia_x11 ]
                 ++ lib.optional nvidia_x11.useGLVND libglvnd
                 ++ lib.optionals (nvidia_x11_i686 != null)
@@ -57,7 +55,7 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "bumblebee";
-  inherit version;
+  version = "3.2.1";
 
   src = fetchurl {
     url = "https://bumblebee-project.org/${pname}-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/tools/X11/nitrogen/default.nix b/nixpkgs/pkgs/tools/X11/nitrogen/default.nix
index 432193950cdd..deefddf23cea 100644
--- a/nixpkgs/pkgs/tools/X11/nitrogen/default.nix
+++ b/nixpkgs/pkgs/tools/X11/nitrogen/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchurl, pkg-config, glib, gtkmm2 }:
 
-let version = "1.6.1";
-in
 stdenv.mkDerivation rec {
   pname = "nitrogen";
-  inherit version;
+  version = "1.6.1";
 
   src = fetchurl {
     url = "http://projects.l3ib.org/nitrogen/files/${pname}-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/tools/X11/runningx/default.nix b/nixpkgs/pkgs/tools/X11/runningx/default.nix
index ae0e5b89a619..b3b5233564af 100644
--- a/nixpkgs/pkgs/tools/X11/runningx/default.nix
+++ b/nixpkgs/pkgs/tools/X11/runningx/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
 
   buildInputs = [ libX11 ];
 
-  phases = [ "buildPhase" "installPhase" ];
+  dontUnpack = true;
 
   buildPhase = ''
     cc -O2 -o RunningX $(pkg-config --cflags --libs x11) $src
diff --git a/nixpkgs/pkgs/tools/X11/skippy-xd/default.nix b/nixpkgs/pkgs/tools/X11/skippy-xd/default.nix
index adf3b3d9250c..0519f2c42044 100644
--- a/nixpkgs/pkgs/tools/X11/skippy-xd/default.nix
+++ b/nixpkgs/pkgs/tools/X11/skippy-xd/default.nix
@@ -21,7 +21,6 @@ stdenv.mkDerivation rec {
     sed -e "s@/etc/xdg@$out&@" -i Makefile
   '';
   meta = {
-    inherit version;
     description = "Expose-style compositing-based standalone window switcher";
     license = lib.licenses.gpl2Plus ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/tools/X11/sx/default.nix b/nixpkgs/pkgs/tools/X11/sx/default.nix
new file mode 100644
index 000000000000..c03d4443fcf0
--- /dev/null
+++ b/nixpkgs/pkgs/tools/X11/sx/default.nix
@@ -0,0 +1,30 @@
+{ coreutils, fetchFromGitHub, lib, makeWrapper, stdenv, util-linux, xauth, xorgserver }:
+
+stdenv.mkDerivation rec {
+  pname = "sx";
+  version = "2.1.7";
+
+  src = fetchFromGitHub {
+    owner = "earnestly";
+    repo = pname;
+    rev = version;
+    sha256 = "0xv15m30nhcknasqiybj5wwf7l91q4a4jf6xind8x5x00c6br6nl";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  postInstall = ''
+    wrapProgram $out/bin/sx \
+      --prefix PATH : ${lib.makeBinPath [ coreutils util-linux xorgserver xauth ]}
+  '';
+
+  meta = with lib; {
+    description = "Simple alternative to both xinit and startx for starting a Xorg server";
+    homepage = "https://github.com/earnestly/sx";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/X11/virtualgl/lib.nix b/nixpkgs/pkgs/tools/X11/virtualgl/lib.nix
index 362a86fff37c..5974b2bd3d56 100644
--- a/nixpkgs/pkgs/tools/X11/virtualgl/lib.nix
+++ b/nixpkgs/pkgs/tools/X11/virtualgl/lib.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, cmake
-, libGL, libGLU, libX11, libXv, libXtst, libjpeg_turbo, fltk
+, libGL, libGLU, libXv, libXtst, libXi, libjpeg_turbo, fltk
 , xorg
 , opencl-headers, opencl-clhpp, ocl-icd
 }:
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
 
   buildInputs = [ libjpeg_turbo libGL libGLU fltk
-    libX11 libXv libXtst xorg.xcbutilkeysyms
+    libXv libXtst libXi xorg.xcbutilkeysyms
     opencl-headers opencl-clhpp ocl-icd
   ];
 
diff --git a/nixpkgs/pkgs/tools/X11/wayv/default.nix b/nixpkgs/pkgs/tools/X11/wayv/default.nix
index 4ee2c8acc254..e489ad0237be 100644
--- a/nixpkgs/pkgs/tools/X11/wayv/default.nix
+++ b/nixpkgs/pkgs/tools/X11/wayv/default.nix
@@ -22,7 +22,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    inherit version;
     description = "A gesture control for X11";
     license = lib.licenses.gpl2Plus ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/tools/X11/wmctrl/default.nix b/nixpkgs/pkgs/tools/X11/wmctrl/default.nix
index 0a01a3dad5a4..19a464aff72a 100644
--- a/nixpkgs/pkgs/tools/X11/wmctrl/default.nix
+++ b/nixpkgs/pkgs/tools/X11/wmctrl/default.nix
@@ -17,7 +17,9 @@ stdenv.mkDerivation rec {
     sha256 = "1afclc57b9017a73mfs9w7lbdvdipmf9q0xdk116f61gnvyix2np";
   };
 
-  nativeBuildInputs = [ pkg-config ];
+  strictDeps = true;
+  depsBuildBuild = [ pkg-config ];
+  nativeBuildInputs = [ glib.dev ];
   buildInputs = [ libX11 libXmu glib ];
 
   patches = [ ./64-bit-data.patch ];
diff --git a/nixpkgs/pkgs/tools/X11/xannotate/default.nix b/nixpkgs/pkgs/tools/X11/xannotate/default.nix
index 9c88a038e3ee..9eafb5e6b497 100644
--- a/nixpkgs/pkgs/tools/X11/xannotate/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xannotate/default.nix
@@ -13,7 +13,6 @@ stdenv.mkDerivation rec {
   buildInputs = [ libX11 ];
 
   meta = {
-    inherit version;
     description = "A tool to scribble over X windows";
     license = lib.licenses.gpl2Plus ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/tools/X11/xautomation/default.nix b/nixpkgs/pkgs/tools/X11/xautomation/default.nix
index 0521b6f8b3b4..a1fb88176325 100644
--- a/nixpkgs/pkgs/tools/X11/xautomation/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xautomation/default.nix
@@ -1,9 +1,8 @@
 { lib, stdenv, fetchurl, pkg-config, libpng, libX11, libXext, libXi, libXtst }:
 
-let version = "1.09"; in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "xautomation";
-  inherit version;
+  version = "1.09";
   src = fetchurl {
     url = "https://www.hoopajoo.net/static/projects/xautomation-${version}.tar.gz";
     sha256 = "03azv5wpg65h40ip2kk1kdh58vix4vy1r9bihgsq59jx2rhjr3zf";
diff --git a/nixpkgs/pkgs/tools/X11/xbindkeys/default.nix b/nixpkgs/pkgs/tools/X11/xbindkeys/default.nix
index ba45442a4492..17e0ca66e3f3 100644
--- a/nixpkgs/pkgs/tools/X11/xbindkeys/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xbindkeys/default.nix
@@ -1,9 +1,8 @@
 { lib, stdenv, fetchurl, pkg-config, libX11, guile }:
 
-let version = "1.8.7"; in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "xbindkeys";
-  inherit version;
+  version = "1.8.7";
   src = fetchurl {
     url = "https://www.nongnu.org/xbindkeys/xbindkeys-${version}.tar.gz";
     sha256 = "1wl2vc5alisiwyk8m07y1ryq8w3ll9ym83j27g4apm4ixjl8d6x2";
diff --git a/nixpkgs/pkgs/tools/X11/xgeometry-select/default.nix b/nixpkgs/pkgs/tools/X11/xgeometry-select/default.nix
index b954205990b9..87c643af483d 100644
--- a/nixpkgs/pkgs/tools/X11/xgeometry-select/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xgeometry-select/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "0s7kirgh5iz91m3qy8xiq0j4gljy8zrcnylf4szl5h0lrsaqj7ya";
   };
 
-  phases = [ "buildPhase" "installPhase" ];
+  dontUnpack = true;
 
   buildInputs = [ libX11 ];
 
diff --git a/nixpkgs/pkgs/tools/X11/xob/default.nix b/nixpkgs/pkgs/tools/X11/xob/default.nix
index 2c1ae4bdf61c..754904449efa 100644
--- a/nixpkgs/pkgs/tools/X11/xob/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xob/default.nix
@@ -30,6 +30,6 @@ stdenv.mkDerivation rec {
     inherit (src.meta) homepage;
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ primeos ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/X11/xprintidle-ng/default.nix b/nixpkgs/pkgs/tools/X11/xprintidle-ng/default.nix
index 758450d36545..61e48de7f5e1 100644
--- a/nixpkgs/pkgs/tools/X11/xprintidle-ng/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xprintidle-ng/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     substituteInPlace configure.ac \
-      --replace "AC_PREREQ([2.62])" "AC_PREREQ([2.63])"
+      --replace "AC_PREREQ([2.62])" "AC_PREREQ([2.64])"
   '';
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/X11/xwinmosaic/default.nix b/nixpkgs/pkgs/tools/X11/xwinmosaic/default.nix
index 311f1e42901e..af17f3ade7dc 100644
--- a/nixpkgs/pkgs/tools/X11/xwinmosaic/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xwinmosaic/default.nix
@@ -15,7 +15,6 @@ stdenv.mkDerivation rec {
   buildInputs = [ gtk2 libXdamage ];
 
   meta = {
-    inherit version;
     description = "X window switcher drawing a colourful grid";
     license = lib.licenses.bsd2 ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/tools/X11/xwinwrap/default.nix b/nixpkgs/pkgs/tools/X11/xwinwrap/default.nix
index 00ee7413189a..3921df9fffab 100644
--- a/nixpkgs/pkgs/tools/X11/xwinwrap/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xwinwrap/default.nix
@@ -1,11 +1,8 @@
 { lib, stdenv, fetchbzr, xlibsWrapper }:
 
-let
-  version = "4";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "xwinwrap";
-  inherit version;
+  version = "4";
 
   src = fetchbzr {
     url = "https://code.launchpad.net/~shantanu-goel/xwinwrap/devel";
diff --git a/nixpkgs/pkgs/tools/X11/xzoom/default.nix b/nixpkgs/pkgs/tools/X11/xzoom/default.nix
index ba62704bdd3b..979e2725098d 100644
--- a/nixpkgs/pkgs/tools/X11/xzoom/default.nix
+++ b/nixpkgs/pkgs/tools/X11/xzoom/default.nix
@@ -29,7 +29,6 @@ stdenv.mkDerivation rec {
   installTargets = [ "install" "install.man" ];
 
   meta = {
-    inherit version;
     description = "An X11 screen zoom tool";
     license = lib.licenses.free ;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/tools/admin/awscli2/default.nix b/nixpkgs/pkgs/tools/admin/awscli2/default.nix
index 1ce3cb452b8c..d84c1816fec4 100644
--- a/nixpkgs/pkgs/tools/admin/awscli2/default.nix
+++ b/nixpkgs/pkgs/tools/admin/awscli2/default.nix
@@ -1,4 +1,4 @@
-{ lib, python3, groff, less, fetchFromGitHub }:
+{ lib, python3, groff, less, fetchFromGitHub, fetchpatch }:
 let
   py = python3.override {
     packageOverrides = self: super: {
@@ -33,6 +33,13 @@ with py.pkgs; buildPythonApplication rec {
     sha256 = "sha256-LU9Tqzdi8ULZ5y3FbfSXdrip4NcxFkXRCTpVGo05LcM=";
   };
 
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/mgorny/aws-cli/commit/85361123d2fa12eaedf912c046ffe39aebdd2bad.patch";
+      sha256 = "sha256-1Rb+/CY7ze1/DbJ6TfqHF01cfI2vixZ1dT91bmHTg/A=";
+    })
+  ];
+
   postPatch = ''
     substituteInPlace setup.py \
       --replace "awscrt==0.11.13" "awscrt" \
diff --git a/nixpkgs/pkgs/tools/admin/azure-cli/default.nix b/nixpkgs/pkgs/tools/admin/azure-cli/default.nix
index 877ddf8a5e9d..b93ab0e867b3 100644
--- a/nixpkgs/pkgs/tools/admin/azure-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/azure-cli/default.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, python3, fetchFromGitHub, installShellFiles }:
 
 let
-  version = "2.24.2";
+  version = "2.26.1";
   srcName = "azure-cli-${version}-src";
 
   src = fetchFromGitHub {
@@ -9,7 +9,7 @@ let
     owner = "Azure";
     repo = "azure-cli";
     rev = "azure-cli-${version}";
-    sha256 = "sha256-4XmwM0/89hacA8ARs5Zq/ahzeqIc9wS18zT/ale+wQ4=";
+    sha256 = "sha256-AwchP0o3I2T37dLPNw51wldwYUmcRuWptyzrhOocEaQ=";
   };
 
   # put packages that needs to be overriden in the py package scope
@@ -81,6 +81,7 @@ py.pkgs.toPythonApplication (py.pkgs.buildAzureCliPackage {
     azure-mgmt-dns
     azure-mgmt-eventgrid
     azure-mgmt-eventhub
+    azure-mgmt-extendedlocation
     azure-mgmt-hdinsight
     azure-mgmt-imagebuilder
     azure-mgmt-iotcentral
diff --git a/nixpkgs/pkgs/tools/admin/azure-cli/python-packages.nix b/nixpkgs/pkgs/tools/admin/azure-cli/python-packages.nix
index 64823278d6da..2cde5a1da579 100644
--- a/nixpkgs/pkgs/tools/admin/azure-cli/python-packages.nix
+++ b/nixpkgs/pkgs/tools/admin/azure-cli/python-packages.nix
@@ -86,7 +86,7 @@ let
 
         postPatch = ''
           substituteInPlace setup.py \
-            --replace "azure-mgmt-core==1.2.1" "azure-mgmt-core~=1.2" \
+            --replace "azure-mgmt-core>=1.2.0,<1.3.0" "azure-mgmt-core~=1.2" \
             --replace "cryptography>=3.2,<3.4" "cryptography"
         '';
 
@@ -132,17 +132,20 @@ let
         '';
       };
 
+      azure-appconfiguration = overrideAzureMgmtPackage super.azure-appconfiguration "1.1.1" "zip"
+        "sha256-uDzSy2PZMiXehOJ6u/wFkhL43id2b0xY3Tq7g53/C+Q=";
+
       azure-batch = overrideAzureMgmtPackage super.azure-batch "10.0.0" "zip"
         "83d7a2b0be42ca456ac2b56fa3dc6ce704c130e888d37d924072c1d3718f32d0";
 
       azure-mgmt-apimanagement = overrideAzureMgmtPackage super.azure-mgmt-apimanagement "0.2.0" "zip"
         "0whx3s8ri9939r3pdvjf8iqcslas1xy6cnccidmp10r5ng0023vr";
 
-      azure-mgmt-batch = overrideAzureMgmtPackage super.azure-mgmt-batch "9.0.0" "zip"
-        "1zn3yqwvm2f3sy8v0xvj4yb7m8kxxm1wpcaccxp91b0zzbn7wh83";
+      azure-mgmt-batch = overrideAzureMgmtPackage super.azure-mgmt-batch "15.0.0" "zip"
+        "9b793bb31a0d4dc8c29186db61db24d83795851a75846aadb187cf95bf853ccb";
 
-      azure-mgmt-billing = overrideAzureMgmtPackage super.azure-mgmt-billing "1.0.0" "zip"
-        "8b55064546c8e94839d9f8c98e9ea4b021004b3804e192bf39fa65b603536ad0";
+      azure-mgmt-billing = overrideAzureMgmtPackage super.azure-mgmt-billing "6.0.0" "zip"
+        "d4f5c5a4188a456fe1eb32b6c45f55ca2069c74be41eb76921840b39f2f5c07f";
 
       azure-mgmt-botservice = overrideAzureMgmtPackage super.azure-mgmt-botservice "0.3.0" "zip"
         "f8318878a66a0685a01bf27b7d1409c44eb90eb72b0a616c1a2455c72330f2f1";
@@ -153,23 +156,23 @@ let
       azure-mgmt-rdbms = overrideAzureMgmtPackage super.azure-mgmt-rdbms "8.1.0b4" "zip"
         "sha256-39msNYlZeZdn8cJ4LjZw9oxzy0YrNSPVEIN21wnkMKs=";
 
-      azure-mgmt-recoveryservices = overrideAzureMgmtPackage super.azure-mgmt-recoveryservices "0.4.0" "zip"
-        "0v0ycyjnnx09jqf958hj2q6zfpsn80bxxm98jf59y8rj09v99rz1";
+      azure-mgmt-recoveryservices = overrideAzureMgmtPackage super.azure-mgmt-recoveryservices "1.0.0" "zip"
+        "0v0ycyjnnx09jqf958hj2q6zfpsn80bxxm98jf59y8rj09v99rza";
 
-      azure-mgmt-recoveryservicesbackup = overrideAzureMgmtPackage super.azure-mgmt-recoveryservicesbackup "0.11.0" "zip"
-        "f2b85d1d7d7db2af106000910ea5f8b95639874176a5de2f7ab37a2caa67af6b";
+      azure-mgmt-recoveryservicesbackup = overrideAzureMgmtPackage super.azure-mgmt-recoveryservicesbackup "0.12.0" "zip"
+        "sha256-mrw1Gs3LMOPFiL5mSSrm+g1/dxihplA6ItYHbwljJbM=";
 
       azure-mgmt-resource = overrideAzureMgmtPackage super.azure-mgmt-resource "18.0.0" "zip"
         "551036e592f409ef477d30937ea7cc4dda5126576965d9c816fdb8401bbd774c";
 
-      azure-mgmt-appconfiguration = overrideAzureMgmtPackage super.azure-mgmt-appconfiguration "1.0.1" "zip"
+      azure-mgmt-appconfiguration = overrideAzureMgmtPackage super.azure-mgmt-appconfiguration "2.0.0" "zip"
         "b58bbe82a7429ba589292024896b58d96fe9fa732c578569cac349928dc2ca5f";
 
-      azure-mgmt-cognitiveservices = overrideAzureMgmtPackage super.azure-mgmt-cognitiveservices "6.3.0" "zip"
-        "059lhbxqx1r1717s8xz5ahpxwphq5fgy0h7k6b63cahm818rs0hx";
+      azure-mgmt-cognitiveservices = overrideAzureMgmtPackage super.azure-mgmt-cognitiveservices "12.0.0" "zip"
+        "73054bd19866577e7e327518afc8f47e1639a11aea29a7466354b81804f4a676";
 
-      azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "20.0.0" "zip"
-        "7920bea2e11d78fa616992813aea470a8fb50eab2e646e032e138f93d53b70e8";
+      azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "21.0.0" "zip"
+        "sha256-kifDdVpwvDd9cONeH8bx+rEJ3YiXT9LHEphnzKoQ+BM=";
 
       azure-mgmt-consumption = overrideAzureMgmtPackage super.azure-mgmt-consumption "2.0.0" "zip"
         "12ai4qps73ivawh0yzvgb148ksx02r30pqlvfihx497j62gsi1cs";
@@ -177,14 +180,11 @@ let
       azure-mgmt-containerinstance = overrideAzureMgmtPackage super.azure-mgmt-containerinstance "1.4.0" "zip"
         "1qw6228bia5pimcijr755npli2l33jyfka1s2bzgl1w4h3prsji7";
 
-      azure-mgmt-containerservice = overrideAzureMgmtPackage super.azure-mgmt-containerservice "11.2.0" "zip"
-        "sha256-x2YJt+fX0B+YMn7+yYi4t21K518DQQ3kBHn1nCrDSqo=";
-
-      azure-mgmt-core = overrideAzureMgmtPackage super.azure-mgmt-core "1.2.0" "zip"
-        "8fe3b59446438f27e34f7b24ea692a982034d9e734617ca1320eedeee1939998";
+      azure-mgmt-containerservice = overrideAzureMgmtPackage super.azure-mgmt-containerservice "16.0.0" "zip"
+        "d6aa95951d32fe2cb390b3d8ae4f6459746de51bbaad94b5d1842dd35c4d0c11";
 
-      azure-mgmt-cosmosdb = overrideAzureMgmtPackage super.azure-mgmt-cosmosdb "6.3.0" "zip"
-        "4135104da5b0f3f0a7249abcd8da55936603e50aaaf2868e5f739a717cf20b3d";
+      azure-mgmt-cosmosdb = overrideAzureMgmtPackage super.azure-mgmt-cosmosdb "6.4.0" "zip"
+        "fb6b8ab80ab97214b94ae9e462ba1c459b68a3af296ffc26317ebd3ff500e00b";
 
       azure-mgmt-databoxedge = overrideAzureMgmtPackage super.azure-mgmt-databoxedge "0.2.0" "zip"
         "sha256-g8BtUpIGOse8Jrws48gQ/o7sgymlgX0XIxl1ThHS3XA=";
@@ -192,8 +192,8 @@ let
       azure-mgmt-deploymentmanager = overrideAzureMgmtPackage super.azure-mgmt-deploymentmanager "0.2.0" "zip"
         "0c6pyr36n9snx879vas5r6l25db6nlp2z96xn759mz4kg4i45qs6";
 
-      azure-mgmt-eventgrid = overrideAzureMgmtPackage super.azure-mgmt-eventgrid "3.0.0rc9" "zip"
-        "sha256-txWYthg9QI5OSW6yE5lY+Gpb+/E6x3jb/obfSQuaAcg=";
+      azure-mgmt-eventgrid = overrideAzureMgmtPackage super.azure-mgmt-eventgrid "9.0.0" "zip"
+        "aecbb69ecb010126c03668ca7c9a2be8e965568f5b560f0e7b5bc152b157b510";
 
       azure-mgmt-imagebuilder = overrideAzureMgmtPackage super.azure-mgmt-imagebuilder "0.4.0" "zip"
         "0cqpjnkpid6a34ifd4vk4fn1h57pa1bg3r756wv082xl2szr34jc";
@@ -210,8 +210,8 @@ let
       azure-mgmt-devtestlabs = overrideAzureMgmtPackage super.azure-mgmt-devtestlabs "4.0.0" "zip"
         "1397ksrd61jv7400mgn8sqngp6ahir55fyq9n5k69wk88169qm2r";
 
-      azure-mgmt-netapp = overrideAzureMgmtPackage super.azure-mgmt-netapp "2.0.0" "zip"
-        "ff3b663e36c961e86fc0cdbd6f9fb9fb863d3e7db9035fe713af7299e809ee5e";
+      azure-mgmt-netapp = overrideAzureMgmtPackage super.azure-mgmt-netapp "4.0.0" "zip"
+        "7195e413a0764684cd42bec9e429c13c290db9ab5c465dbed586a6f6d0ec8a42";
 
       azure-mgmt-dns = overrideAzureMgmtPackage super.azure-mgmt-dns "8.0.0" "zip"
         "407c2dacb33513ffbe9ca4be5addb5e9d4bae0cb7efa613c3f7d531ef7bf8de8";
@@ -261,17 +261,17 @@ let
       azure-mgmt-security = overrideAzureMgmtPackage super.azure-mgmt-security "0.6.0" "zip"
         "9f37d0151d730801222af111f0830905634795dbfd59ad1b89c35197421e74d3";
 
-      azure-mgmt-signalr = overrideAzureMgmtPackage super.azure-mgmt-signalr "0.4.0" "zip"
-        "09n12ligh301z4xwixl50n8f1rgd2k6lpsxqzr6n6jvgkpdds0v5";
+      azure-mgmt-signalr = overrideAzureMgmtPackage super.azure-mgmt-signalr "1.0.0b2" "zip"
+        "sha256-FTxY8qoihHG4OZuKT3sRRlKfORbIoqDqug9Ko+6S9dw=";
 
-      azure-mgmt-sql = overrideAzureMgmtPackage super.azure-mgmt-sql "0.26.0" "zip"
-        "sha256-tmsxhHt6mRWNOXDebckZSXt4L8+757NRKSDu6wVMqRE=";
+      azure-mgmt-sql = overrideAzureMgmtPackage super.azure-mgmt-sql "0.29.0" "zip"
+        "sha256-a8epWPoGI4SA01DkjToaHmTx8lSPgwMB7dutI/zaoAA=";
 
       azure-mgmt-sqlvirtualmachine = overrideAzureMgmtPackage super.azure-mgmt-sqlvirtualmachine "0.5.0" "zip"
         "1b9am8raa17hxnz7d5pk2ix0309wsnhnchq1mi22icd728sl5adm";
 
-      azure-mgmt-synapse = overrideAzureMgmtPackage super.azure-mgmt-synapse "0.6.0" "zip"
-        "sha256-+By1KyIHdKq5P/zyW9wX4D/YS2kWg2ZAeJ+G+/Y2uYQ=";
+      azure-mgmt-synapse = overrideAzureMgmtPackage super.azure-mgmt-synapse "2.0.0" "zip"
+        "bec6bdfaeb55b4fdd159f2055e8875bf50a720bb0fce80a816e92a2359b898c8";
 
       azure-mgmt-datamigration = overrideAzureMgmtPackage super.azure-mgmt-datamigration "4.1.0" "zip"
         "c33d1deb0ee173a15c8ec21a1e714ba544fe5f4895d3b1d8b0581f3c1b2e8ce4";
@@ -288,17 +288,17 @@ let
       azure-mgmt-cdn = overrideAzureMgmtPackage super.azure-mgmt-cdn "11.0.0" "zip"
         "28e7070001e7208cdb6c2ad253ec78851abdd73be482230d2c0874eed5bc0907";
 
-      azure-mgmt-containerregistry = overrideAzureMgmtPackage super.azure-mgmt-containerregistry "3.0.0rc17" "zip"
-        "sha256-M6lenj1rVEJZ+EJyBXkqokFfr1e5sqRgcAbUc0W0svo=";
+      azure-mgmt-containerregistry = overrideAzureMgmtPackage super.azure-mgmt-containerregistry "8.0.0" "zip"
+        "480eb5d1bb910da4e87a5d7047e2f3e426083b14911ac64c48badd0218e9e756";
 
       azure-mgmt-monitor = overrideAzureMgmtPackage super.azure-mgmt-monitor "2.0.0" "zip"
         "e7f7943fe8f0efe98b3b1996cdec47c709765257a6e09e7940f7838a0f829e82";
 
-      azure-mgmt-advisor =  overrideAzureMgmtPackage super.azure-mgmt-advisor "2.0.1" "zip"
-        "1wsfkprdrn22mwm24y2zlcms8ppp7jwq3s86r3ymbl29pbaxca8r";
+      azure-mgmt-advisor =  overrideAzureMgmtPackage super.azure-mgmt-advisor "9.0.0" "zip"
+        "fc408b37315fe84781b519124f8cb1b8ac10b2f4241e439d0d3e25fd6ca18d7b";
 
-      azure-mgmt-applicationinsights = overrideAzureMgmtPackage super.azure-mgmt-applicationinsights "0.1.1" "zip"
-        "16raxr5naszrxmgbfhsvh7rqcph5cx6x3f480790m79ykvmjj0pi";
+      azure-mgmt-applicationinsights = overrideAzureMgmtPackage super.azure-mgmt-applicationinsights "1.0.0" "zip"
+        "c287a2c7def4de19f92c0c31ba02867fac6f5b8df71b5dbdab19288bb455fc5b";
 
       azure-mgmt-authorization = overrideAzureMgmtPackage super.azure-mgmt-authorization "0.61.0" "zip"
         "0xfvx2dvfj3fbz4ngn860ipi4v6gxqajyjc8x92r8knhmniyxk7m";
@@ -312,8 +312,8 @@ let
       azure-mgmt-servicefabric = overrideAzureMgmtPackage super.azure-mgmt-servicefabric "0.5.0" "zip"
         "0x6wxb9zrvcayg3yw0nm99p10vvgc0x3zwk9amzs5m682r2z4wap";
 
-      azure-mgmt-hdinsight = overrideAzureMgmtPackage super.azure-mgmt-hdinsight "2.2.0" "zip"
-        "sha256-Myxg3G0+OAk/bh4k5TOEGGJuyEBtYA2edNlbIXnWE4M=";
+      azure-mgmt-hdinsight = overrideAzureMgmtPackage super.azure-mgmt-hdinsight "8.0.0" "zip"
+        "2c43f1a62e5b83304392b0ad7cfdaeef2ef2f47cb3fdfa2577b703b6ea126000";
 
       azure-multiapi-storage = overrideAzureMgmtPackage super.azure-multiapi-storage "0.6.2" "tar.gz"
         "74061f99730fa82c54d9b8ab3c7d6e219da3f30912740ecf0456b20cb3555ebc";
@@ -458,20 +458,6 @@ let
         };
       });
 
-      pyjwt = super.pyjwt.overridePythonAttrs(oldAttrs: rec {
-        version = "1.7.1";
-
-        src = super.fetchPypi {
-          inherit (oldAttrs) pname;
-          inherit version;
-          sha256 = "15hflax5qkw1v6nssk1r0wkj83jgghskcmn875m3wgvpzdvajncd";
-        };
-
-        # new cryptography returns slightly different values than what's expected
-        # this gets tested in azure-cli-core, so not absolutely necessary to run tests here
-        doCheck = false;
-      });
-
       PyGithub = super.PyGithub.overridePythonAttrs(oldAttrs: rec {
         version = "1.38";
 
diff --git a/nixpkgs/pkgs/tools/admin/boulder/default.nix b/nixpkgs/pkgs/tools/admin/boulder/default.nix
index a21a3ebdde11..706ac84afb33 100644
--- a/nixpkgs/pkgs/tools/admin/boulder/default.nix
+++ b/nixpkgs/pkgs/tools/admin/boulder/default.nix
@@ -4,13 +4,10 @@
 , lib
 }:
 
-let
-  version = "release-2019-10-13";
-
-in buildGoPackage {
+buildGoPackage rec{
 
   pname = "boulder";
-  inherit version;
+  version = "release-2019-10-13";
 
   goPackagePath = "github.com/letsencrypt/boulder";
 
diff --git a/nixpkgs/pkgs/tools/admin/docker-credential-gcr/default.nix b/nixpkgs/pkgs/tools/admin/docker-credential-gcr/default.nix
index 48851c3784b7..ee2efb206af6 100644
--- a/nixpkgs/pkgs/tools/admin/docker-credential-gcr/default.nix
+++ b/nixpkgs/pkgs/tools/admin/docker-credential-gcr/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "docker-credential-gcr";
-  version = "2.0.4";
+  version = "2.0.5";
 
   goPackagePath = "github.com/GoogleCloudPlatform/docker-credential-gcr";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "GoogleCloudPlatform";
     repo = "docker-credential-gcr";
     rev = "v${version}";
-    sha256 = "sha256-yG8gpsD1KZBSbJnnNTXgZah/mcrOUH1O37s7AGpeHjQ=";
+    sha256 = "sha256-WrcGTXy5SMWDHJWddXUuvUvEWjOsJcoB1zBg02p5ggY=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/admin/eksctl/default.nix b/nixpkgs/pkgs/tools/admin/eksctl/default.nix
index 9af721f02e56..6a28e18c7d3a 100644
--- a/nixpkgs/pkgs/tools/admin/eksctl/default.nix
+++ b/nixpkgs/pkgs/tools/admin/eksctl/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "eksctl";
-  version = "0.55.0";
+  version = "0.57.0";
 
   src = fetchFromGitHub {
     owner = "weaveworks";
     repo = pname;
     rev = version;
-    sha256 = "sha256-5PrwOR70pSmNPHFSDHRvXNn0pksIQun5jJkcCFsYhCE=";
+    sha256 = "sha256-5Y//OD/UsqDnM8MPVJghrc5SbVwBEG/Eu761QWy5xK8=";
   };
 
-  vendorSha256 = "sha256-N2jdaz0lb4Ut8P+FgNNjgyUeJ731fTQ5XSQgOF8KCQs=";
+  vendorSha256 = "sha256-CQ7A4vwUrshKRZBdIJZlCXmcxS0O0CkE1tNkZskYu1E=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/admin/exoscale-cli/default.nix b/nixpkgs/pkgs/tools/admin/exoscale-cli/default.nix
index 7136fecf433a..4fb11de26c3c 100644
--- a/nixpkgs/pkgs/tools/admin/exoscale-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/exoscale-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   pname = "exoscale-cli";
-  version = "1.34.0";
+  version = "1.37.0";
 
   src = fetchFromGitHub {
     owner  = "exoscale";
     repo   = "cli";
     rev    = "v${version}";
-    sha256 = "sha256-Gu9o1aUDlhcEZPZZsfVF0FnlzT1DvbEXMXjnOxhY8tY=";
+    sha256 = "sha256-ETj14xwCQJv3xNYXFY/Z0FsxjxLrlpcVkap2sRsLzVU=";
   };
 
   goPackagePath = "github.com/exoscale/cli";
diff --git a/nixpkgs/pkgs/tools/admin/fastlane/default.nix b/nixpkgs/pkgs/tools/admin/fastlane/default.nix
index 245c1dfef8cb..dc8dd1fd7a6c 100644
--- a/nixpkgs/pkgs/tools/admin/fastlane/default.nix
+++ b/nixpkgs/pkgs/tools/admin/fastlane/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ makeWrapper ];
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   installPhase = let
     env = bundlerEnv {
diff --git a/nixpkgs/pkgs/tools/admin/gixy/default.nix b/nixpkgs/pkgs/tools/admin/gixy/default.nix
index 1711792ab2bc..65ca85b463e9 100644
--- a/nixpkgs/pkgs/tools/admin/gixy/default.nix
+++ b/nixpkgs/pkgs/tools/admin/gixy/default.nix
@@ -21,7 +21,7 @@ python3.pkgs.buildPythonApplication rec {
 
   propagatedBuildInputs = with python3.pkgs; [
     cached-property
-    ConfigArgParse
+    configargparse
     pyparsing
     jinja2
     nose
diff --git a/nixpkgs/pkgs/tools/admin/google-cloud-sdk/default.nix b/nixpkgs/pkgs/tools/admin/google-cloud-sdk/default.nix
index 5bd9c95d3a5e..f461a5c30ed1 100644
--- a/nixpkgs/pkgs/tools/admin/google-cloud-sdk/default.nix
+++ b/nixpkgs/pkgs/tools/admin/google-cloud-sdk/default.nix
@@ -21,23 +21,23 @@ let
   sources = name: system: {
     x86_64-darwin = {
       url = "${baseUrl}/${name}-darwin-x86_64.tar.gz";
-      sha256 = "0viiwimnk26jfi4ypkvclqqxw8anlmch10zscjw69d8x1pyqczcd";
+      sha256 = "1h02pywzjn2d4p07xic1936w5qjbaz33qny8afrgzvgbqnqx7dvs";
     };
 
     aarch64-darwin = {
       url = "${baseUrl}/${name}-darwin-arm.tar.gz";
-      sha256 = "sha256-EZbJgMzEZScvaqSKay5aDuayVaIK1zZUzqAHgT0czZk=";
+      sha256 = "0qrmrxzphslhq3xf01zh91v7fvqn0z4hv8rpd15qwq9q84d2c3gr";
     };
 
     x86_64-linux = {
       url = "${baseUrl}/${name}-linux-x86_64.tar.gz";
-      sha256 = "11113l8pyhq6vbsh79m5anh6ljss94zhnp33ghds9rn1gxa83hnb";
+      sha256 = "0lz14d9gs6k0zbnyvrl6zyj8w7f6a5z7q95y48jkizc822rajhc3";
     };
   }.${system};
 
 in stdenv.mkDerivation rec {
   pname = "google-cloud-sdk";
-  version = "347.0.0";
+  version = "348.0.0";
 
   src = fetchurl (sources "${pname}-${version}" stdenv.hostPlatform.system);
 
diff --git a/nixpkgs/pkgs/tools/admin/lexicon/default.nix b/nixpkgs/pkgs/tools/admin/lexicon/default.nix
index 6c105cf9b335..c183e3741429 100644
--- a/nixpkgs/pkgs/tools/admin/lexicon/default.nix
+++ b/nixpkgs/pkgs/tools/admin/lexicon/default.nix
@@ -65,8 +65,8 @@ buildPythonApplication rec {
   checkInputs = [
     mock
     pytest
-    pytestcov
-    pytest_xdist
+    pytest-cov
+    pytest-xdist
     vcrpy
   ];
 
diff --git a/nixpkgs/pkgs/tools/admin/lxd/default.nix b/nixpkgs/pkgs/tools/admin/lxd/default.nix
index fde3e829cc1e..ac831c9da482 100644
--- a/nixpkgs/pkgs/tools/admin/lxd/default.nix
+++ b/nixpkgs/pkgs/tools/admin/lxd/default.nix
@@ -19,13 +19,13 @@ let
 in
 buildGoPackage rec {
   pname = "lxd";
-  version = "4.15";
+  version = "4.16";
 
   goPackagePath = "github.com/lxc/lxd";
 
   src = fetchurl {
     url = "https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz";
-    sha256 = "sha256-UXipGNWclBKgr0r0wav85Gnhp2SXkTvDFr9gKJWismU=";
+    sha256 = "1da9avmxs8sy92d9nrdgry2x685ral58zgf89yr88qxc0llbzq7r";
   };
 
   postPatch = ''
@@ -40,6 +40,9 @@ buildGoPackage rec {
     cp -r _dist/src/* ../../..
     popd
 
+    # required for go-dqlite. See: https://github.com/lxc/lxd/pull/8939
+    export CGO_LDFLAGS_ALLOW="(-Wl,-wrap,pthread_create)|(-Wl,-z,now)"
+
     makeFlagsArray+=("-tags libsqlite3")
   '';
 
diff --git a/nixpkgs/pkgs/tools/admin/procs/default.nix b/nixpkgs/pkgs/tools/admin/procs/default.nix
index e86bfb31101a..0578bb4703cc 100644
--- a/nixpkgs/pkgs/tools/admin/procs/default.nix
+++ b/nixpkgs/pkgs/tools/admin/procs/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "procs";
-  version = "0.11.8";
+  version = "0.11.9";
 
   src = fetchFromGitHub {
     owner = "dalance";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ZeCTUoi2HAMUeyze7LdxH0mi1Dd6q8Sw6+xPAVf3HTs=";
+    sha256 = "sha256-zqRjMCyFT7knI1/zH+RF1pA/OKaDhJZLLjWJhfmqopE=";
   };
 
-  cargoSha256 = "sha256-8myay5y4PGb/8s0vPLeg9xt6xqAQxGFXJz/GiV0ABlA=";
+  cargoSha256 = "sha256-W/ZMDbHC1VsllTSxCt77n4eb8Xgfj9YNx5NG5u+D+qA=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/tools/admin/salt/pepper/default.nix b/nixpkgs/pkgs/tools/admin/salt/pepper/default.nix
index 25d3eaa15fc8..31cb2861f39f 100644
--- a/nixpkgs/pkgs/tools/admin/salt/pepper/default.nix
+++ b/nixpkgs/pkgs/tools/admin/salt/pepper/default.nix
@@ -13,7 +13,7 @@ python3Packages.buildPythonApplication rec {
 
   buildInputs = with python3Packages; [ setuptools setuptools-scm salt ];
   checkInputs = with python3Packages; [
-    pytest mock pyzmq pytest-rerunfailures pytestcov cherrypy tornado
+    pytest mock pyzmq pytest-rerunfailures pytest-cov cherrypy tornado
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/admin/tigervnc/default.nix b/nixpkgs/pkgs/tools/admin/tigervnc/default.nix
index 20d17b77741b..1ef584ec977f 100644
--- a/nixpkgs/pkgs/tools/admin/tigervnc/default.nix
+++ b/nixpkgs/pkgs/tools/admin/tigervnc/default.nix
@@ -1,12 +1,12 @@
 { lib, stdenv, fetchFromGitHub
 , xorg, xkeyboard_config, zlib
 , libjpeg_turbo, pixman, fltk
-, fontDirectories
 , cmake, gettext, libtool
 , libGLU
 , gnutls, pam, nettle
 , xterm, openssh, perl
 , makeWrapper
+, nixosTests
 }:
 
 with lib;
@@ -22,17 +22,10 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-IX39oEhTyk7NV+9dD9mFtes22fBdMTAVIv5XkqFK560=";
   };
 
-  inherit fontDirectories;
 
   postPatch = ''
     sed -i -e '/^\$cmd \.= " -pn";/a$cmd .= " -xkbdir ${xkeyboard_config}/etc/X11/xkb";' unix/vncserver/vncserver.in
     fontPath=
-    for i in $fontDirectories; do
-      for j in $(find $i -name fonts.dir); do
-        addToSearchPathWithCustomDelimiter "," fontPath $(dirname $j)
-      done
-    done
-    sed -i -e '/^\$cmd \.= " -pn";/a$cmd .= " -fp '"$fontPath"'";' unix/vncserver/vncserver.in
     substituteInPlace vncviewer/vncviewer.cxx \
        --replace '"/usr/bin/ssh' '"${openssh}/bin/ssh'
   '';
@@ -98,6 +91,8 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = xorg.xorgserver.propagatedBuildInputs;
 
+  passthru.tests.tigervnc = nixosTests.vnc.testTigerVNC;
+
   meta = {
     homepage = "https://tigervnc.org/";
     license = lib.licenses.gpl2Plus;
diff --git a/nixpkgs/pkgs/tools/admin/trivy/default.nix b/nixpkgs/pkgs/tools/admin/trivy/default.nix
index 9507096335a9..50ca76f0d6d3 100644
--- a/nixpkgs/pkgs/tools/admin/trivy/default.nix
+++ b/nixpkgs/pkgs/tools/admin/trivy/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "trivy";
-  version = "0.18.3";
+  version = "0.19.2";
 
   src = fetchFromGitHub {
     owner = "aquasecurity";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-YQYDDg4rgLygswGl/IYb+USSsuXQ8kXh4NhQYvnaCko=";
+    sha256 = "sha256-aYPG0xvuijASKXBGgB+6UyF9bmeU8l5snOoPWI8Ewh8=";
   };
 
-  vendorSha256 = "sha256-f1un8jWhx7VfbbYV0/t3SLFXp496Wt5aEHkcuj/U4KQ=";
+  vendorSha256 = "sha256-4FO6/1eNyxy/CH7XMUkLfRqEg2+XUXL1gKleL6o4EoM=";
 
   excludedPackages = "misc";
 
diff --git a/nixpkgs/pkgs/tools/admin/turbovnc/default.nix b/nixpkgs/pkgs/tools/admin/turbovnc/default.nix
index 33d248ffde88..c0af38e10f3b 100644
--- a/nixpkgs/pkgs/tools/admin/turbovnc/default.nix
+++ b/nixpkgs/pkgs/tools/admin/turbovnc/default.nix
@@ -95,10 +95,11 @@ stdenv.mkDerivation rec {
     wrapProgram $out/bin/vncserver \
       --prefix PATH : ${lib.makeBinPath (with xorg; [ xauth ])}
 
-    # The viewer is in Java and requires `JAVA_HOME`.
+    # The viewer is in Java and requires `JAVA_HOME` (which is a single
+    # path, cannot be multiple separated paths).
     # For SSH support, `ssh` is required on `PATH`.
     wrapProgram $out/bin/vncviewer \
-      --prefix JAVA_HOME : "${lib.makeLibraryPath [ openjdk ]}/openjdk" \
+      --set JAVA_HOME "${lib.makeLibraryPath [ openjdk ]}/openjdk" \
       --prefix PATH : ${lib.makeBinPath [ openssh ]}
   '';
 
diff --git a/nixpkgs/pkgs/tools/admin/virtscreen/default.nix b/nixpkgs/pkgs/tools/admin/virtscreen/default.nix
index ebfd6c21772f..a1558248f802 100644
--- a/nixpkgs/pkgs/tools/admin/virtscreen/default.nix
+++ b/nixpkgs/pkgs/tools/admin/virtscreen/default.nix
@@ -1,4 +1,12 @@
-{ lib, stdenv, fetchFromGitHub, python3Packages, x11vnc, xrandr, libGL }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, python3Packages
+, x11vnc
+, xrandr
+, libGL
+, qt5
+}:
 
 python3Packages.buildPythonApplication rec {
   pname = "virtscreen";
@@ -16,6 +24,8 @@ python3Packages.buildPythonApplication rec {
     sha256 = "005qach6phz8w17k8kqmyd647c6jkfybczybxq0yxi5ik0s91a08";
   };
 
+  nativeBuildInputs = [ qt5.wrapQtAppsHook ];
+
   propagatedBuildInputs = with python3Packages; [
     netifaces
     pyqt5
@@ -24,10 +34,17 @@ python3Packages.buildPythonApplication rec {
     xrandr
   ];
 
-  postPatch = let
-    ext = stdenv.hostPlatform.extensions.sharedLibrary; in ''
+  dontWrapQtApps = true;
+
+  makeWrapperArgs = [
+    "\${qtWrapperArgs[@]}"
+    # import Qt.labs.platform failed without this
+    "--prefix QML2_IMPORT_PATH : ${qt5.qtquickcontrols2.bin}/${qt5.qtbase.qtQmlPrefix}"
+  ];
+
+  postPatch = ''
     substituteInPlace virtscreen/__main__.py \
-      --replace "'GL'" "'${libGL}/lib/libGL${ext}'" \
+      --replace "'GL'" "'${libGL}/lib/libGL${stdenv.hostPlatform.extensions.sharedLibrary}'" \
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/archivers/arj/default.nix b/nixpkgs/pkgs/tools/archivers/arj/default.nix
new file mode 100644
index 000000000000..e09e390fa473
--- /dev/null
+++ b/nixpkgs/pkgs/tools/archivers/arj/default.nix
@@ -0,0 +1,150 @@
+{stdenv, lib, fetchurl, fetchpatch, autoreconfHook}:
+
+stdenv.mkDerivation rec {
+  pname = "arj";
+  version = "3.10.22";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
+    sha256 = "1nx7jqxwqkihhdmdbahhzqhjqshzw1jcsvwddmxrwrn8rjdlr7jq";
+  };
+
+  patches = [
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/001_arches_align.patch";
+      sha256 = "0i3qclm2mh98c04rqpx1r4qagd3wpxlkj7lvq0ddpkmr8bm0fh0m";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/002_no_remove_static_const.patch";
+      sha256 = "0zfjqmjsj0y1kfzxbp29v6nxq5qwgazhb9clqc544sm5zn0bdp8n";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/003_64_bit_clean.patch";
+      sha256 = "0mda9fkaqf2s1xl6vlbkbq20362h3is9dpml9kfmacpbifl4dx3n";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/004_parallel_build.patch";
+      sha256 = "0gam6k7jknzmbjlf1r6c9kjh5s5h76pd31v59cnaqiycwiy8z6q9";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/005_use_system_strnlen.patch";
+      sha256 = "0q0ypm8mdsxd0rl1k0id6fdx5m7mvqgwcla4r250cmc6zqzpib6d";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/006_use_safe_strcpy.patch";
+      sha256 = "1garad95s34cix3kd77lz37andrcnz19glzkfdnkjaq7ldvzwikc";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/hurd_no_fcntl_getlk.patch";
+      sha256 = "0b3hpn4qypimrw9ar2n4h24886sl6pmim4lb4ly1wqcq0f73arva";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/security_format.patch";
+      sha256 = "0q67cvln55p38bm0xwd2cgppqmkp2nfar2pg1zj78f7ncn35lbvf";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/doc_refer_robert_k_jung.patch";
+      sha256 = "1wxdx0m6a9vdvjlaycwsissn75l1ni7grg8n6qmkynz2vrcvgzb1";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/gnu_build_fix.patch";
+      sha256 = "19ycp1rak7l6ql28m50v95ls621w3sl8agw5r5va73svkgh8hc3g";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/gnu_build_flags.patch";
+      sha256 = "1jw1y9i9lw1idgi4l9cycwsql1hcz1m4f3k2iybwsgx0acaw695q";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/gnu_build_strip.patch";
+      sha256 = "1b18khj6cxnjyqk2ycygwqlcs20hrsbf4h6bckl99dxnpbq5blxi";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/gnu_build_pie.patch";
+      sha256 = "1jqswxgc1plipblf055n9175fbanfi6fb67lnzk8dcvxjn227fs3";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/self_integrity_64bit.patch";
+      sha256 = "0s5zdq81a0f83hdg9hy6lqn3xvckx9y9r20awczm9mbf11vi01cb";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/security-afl.patch";
+      sha256 = "0yajcwpghij8wg21a0kkp3f9x7anz5m121jx2vnkyn04bvi9541a";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/security-traversal-dir.patch";
+      sha256 = "10lv3867k0wm2s0cyf40hkxfqbjaxm4aph5ivk2q2rjkracrn2y4";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/security-traversal-symlink.patch";
+      sha256 = "095pdfskxwh0jnyy31dpz10s2ppv8n7lvvn4q722y3g71d0c79qq";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/out-of-bounds-read.patch";
+      sha256 = "0ps9lqkbqzlhzr2bnr47sir431z1nywr7nagkmk42iki4d96v0jq";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/remove_build_date.patch";
+      sha256 = "1vjlfq6firxpj068l9acyqs77mfydn1rwgr2jmxgsy9mq0fw1dsc";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/reproducible_help_archive.patch";
+      sha256 = "0l3qi9f140pwc6fk8qdbxx4g9d8zlf45asimmr8wfpbi4pf59n8i";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/gnu_build_cross.patch";
+      sha256 = "1vb0vbh3jbxj192q47vg3f41l343ghcz2ypbrrm2bkbpwm5cl8qr";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/fix-time_t-usage.patch";
+      sha256 = "012c6pnf5y4jwn715kxn3vjy088rm905959j6yh8bslyx84qaijv";
+    })
+
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/gnu_build_fix_autoreconf.patch";
+      sha256 = "0yhxbdasnbqcg1nyx2379fpbr7fmdlv4n2nlxrv1z1vbc7rlvw9d";
+    })
+  ];
+
+  nativeBuildInputs = [ autoreconfHook ];
+
+  preAutoreconf = ''
+    cd gnu
+  '';
+
+  postConfigure = ''
+    cd ..
+  '';
+
+  meta = with lib; {
+    description = "Open-source implementation of the world-famous ARJ archiver";
+    longDescription = ''
+      This version of ARJ has been created with an intent to preserve maximum
+      compatibility and retain the feature set of the original ARJ archiver as
+      provided by ARJ Software, Inc.
+    '';
+    license = licenses.gpl2Plus;
+    maintainers = [ maintainers.sander ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/archivers/lha/default.nix b/nixpkgs/pkgs/tools/archivers/lha/default.nix
new file mode 100644
index 000000000000..f6b5c2bd1350
--- /dev/null
+++ b/nixpkgs/pkgs/tools/archivers/lha/default.nix
@@ -0,0 +1,27 @@
+{stdenv, lib, fetchFromGitHub, autoreconfHook}:
+
+stdenv.mkDerivation {
+  pname = "lha";
+  version = "unstable-2021-01-07";
+
+  src = fetchFromGitHub {
+    owner = "jca02266";
+    repo = "lha";
+    rev = "03475355bc6311f7f816ea9a88fb34a0029d975b";
+    sha256 = "18w2x0g5yq89yxkxh1fmb05lz4hw7a3b4jmkk95gvh11mwbbr5lm";
+  };
+
+  nativeBuildInputs = [ autoreconfHook ];
+
+  meta = with lib; {
+    description = "LHa is an archiver and compressor using the LZSS and Huffman encoding compression algorithms";
+    platforms = platforms.unix;
+    maintainers = [ maintainers.sander ];
+    # Some of the original LhA code has been rewritten and the current author
+    # considers adopting a "true" free and open source license for it.
+    # However, old code is still covered by the original LHa license, which is
+    # not a free software license (it has additional requirements on commercial
+    # use).
+    license = licenses.unfree;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/archivers/p7zip/default.nix b/nixpkgs/pkgs/tools/archivers/p7zip/default.nix
index 8ba87da6b6ac..96f9262427b0 100644
--- a/nixpkgs/pkgs/tools/archivers/p7zip/default.nix
+++ b/nixpkgs/pkgs/tools/archivers/p7zip/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "17.04";
 
   src = fetchFromGitHub {
-    owner  = "szcnick";
+    owner  = "jinfeihan57";
     repo   = pname;
     rev    = "v${version}";
     sha256 = "sha256-19F4hPV0nKVuFZNbOcXrcA1uW6Y3HQolaHVIYXGmh18=";
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=c++11-narrowing";
 
   meta = {
-    homepage = "https://github.com/szcnick/p7zip";
+    homepage = "https://github.com/jinfeihan57/p7zip";
     description = "A new p7zip fork with additional codecs and improvements (forked from https://sourceforge.net/projects/p7zip/)";
     platforms = lib.platforms.unix;
     maintainers = [ lib.maintainers.raskin ];
diff --git a/nixpkgs/pkgs/tools/archivers/unar/default.nix b/nixpkgs/pkgs/tools/archivers/unar/default.nix
index 4021bc92e062..f3f7b32e1192 100644
--- a/nixpkgs/pkgs/tools/archivers/unar/default.nix
+++ b/nixpkgs/pkgs/tools/archivers/unar/default.nix
@@ -53,14 +53,14 @@ stdenv.mkDerivation rec {
     homepage = "https://theunarchiver.com";
     description = "An archive unpacker program";
     longDescription = ''
-      The Unarchiver is an archive unpacker program with support for the popular \
-      zip, RAR, 7z, tar, gzip, bzip2, LZMA, XZ, CAB, MSI, NSIS, EXE, ISO, BIN, \
-      and split file formats, as well as the old Stuffit, Stuffit X, DiskDouble, \
-      Compact Pro, Packit, cpio, compress (.Z), ARJ, ARC, PAK, ACE, ZOO, LZH, \
+      The Unarchiver is an archive unpacker program with support for the popular
+      zip, RAR, 7z, tar, gzip, bzip2, LZMA, XZ, CAB, MSI, NSIS, EXE, ISO, BIN,
+      and split file formats, as well as the old Stuffit, Stuffit X, DiskDouble,
+      Compact Pro, Packit, cpio, compress (.Z), ARJ, ARC, PAK, ACE, ZOO, LZH,
       ADF, DMS, LZX, PowerPacker, LBR, Squeeze, Crunch, and other old formats.
     '';
     license = licenses.lgpl21Plus;
     maintainers = with maintainers; [ peterhoeg ];
-    platforms = with platforms; linux;
+    platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/tools/archivers/xarchiver/default.nix b/nixpkgs/pkgs/tools/archivers/xarchiver/default.nix
index e94092210693..57d35633128d 100644
--- a/nixpkgs/pkgs/tools/archivers/xarchiver/default.nix
+++ b/nixpkgs/pkgs/tools/archivers/xarchiver/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, gtk3, pkg-config, intltool, libxslt, makeWrapper,
-  coreutils, zip, unzip, p7zip, unrar, gnutar, bzip2, gzip, lhasa, wrapGAppsHook }:
+  coreutils, zip, unzip, p7zip, unar, gnutar, bzip2, gzip, lhasa, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   version = "0.5.4.17";
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   postFixup = ''
     wrapProgram $out/bin/xarchiver \
-    --prefix PATH : ${lib.makeBinPath [ zip unzip p7zip unrar gnutar bzip2 gzip lhasa coreutils ]}
+    --prefix PATH : ${lib.makeBinPath [ zip unzip p7zip unar gnutar bzip2 gzip lhasa coreutils ]}
   '';
 
   meta = {
diff --git a/nixpkgs/pkgs/tools/archivers/zpaq/default.nix b/nixpkgs/pkgs/tools/archivers/zpaq/default.nix
index 08d98716f1f2..150633e620ae 100644
--- a/nixpkgs/pkgs/tools/archivers/zpaq/default.nix
+++ b/nixpkgs/pkgs/tools/archivers/zpaq/default.nix
@@ -32,6 +32,5 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Plus ;
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.linux;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/tools/audio/beets/default.nix b/nixpkgs/pkgs/tools/audio/beets/default.nix
index c218aa7e4e12..059174ae0a27 100644
--- a/nixpkgs/pkgs/tools/audio/beets/default.nix
+++ b/nixpkgs/pkgs/tools/audio/beets/default.nix
@@ -133,7 +133,7 @@ in pythonPackages.buildPythonApplication rec {
     ++ lib.optional enableAcoustid         pythonPackages.pyacoustid
     ++ lib.optional enableBeatport         pythonPackages.requests_oauthlib
     ++ lib.optional enableConvert          ffmpeg
-    ++ lib.optional enableDiscogs          pythonPackages.discogs_client
+    ++ lib.optional enableDiscogs          pythonPackages.discogs-client
     ++ lib.optional (enableFetchart
                   || enableDeezer
                   || enableEmbyupdate
@@ -175,7 +175,7 @@ in pythonPackages.buildPythonApplication rec {
     # https://github.com/beetbox/beets/blob/v1.4.9/setup.py
     pylast
     mpd2
-    discogs_client
+    discogs-client
     pyxdg
   ];
 
diff --git a/nixpkgs/pkgs/tools/audio/tts/default.nix b/nixpkgs/pkgs/tools/audio/tts/default.nix
index 0e57e19a2883..7906c92ba881 100644
--- a/nixpkgs/pkgs/tools/audio/tts/default.nix
+++ b/nixpkgs/pkgs/tools/audio/tts/default.nix
@@ -1,7 +1,6 @@
 { lib
-, python3Packages
+, python38
 , fetchFromGitHub
-, python3
 , fetchpatch
 }:
 
@@ -12,38 +11,43 @@
 #
 # If you upgrade from an old version you may have to delete old models from ~/.local/share/tts
 # Also note that your tts version might not support all available models so check:
-#   https://github.com/coqui-ai/TTS/releases/tag/v0.0.15.1
+#   https://github.com/coqui-ai/TTS/releases/tag/v0.1.2
 #
 # For now, for deployment check the systemd unit in the pull request:
 #   https://github.com/NixOS/nixpkgs/pull/103851#issue-521121136
 
-python3Packages.buildPythonApplication rec {
+let
+  python3 = python38;
+in python3.pkgs.buildPythonApplication rec {
   pname = "tts";
-  version = "0.0.15.1";
+  version = "0.1.2";
+
+  # https://github.com/coqui-ai/TTS/issues/570
+  disabled = python3.pythonAtLeast "3.9";
 
   src = fetchFromGitHub {
     owner = "coqui-ai";
     repo = "TTS";
     rev = "v${version}";
-    sha256 = "0z6sbzspgmw5ja8r2zysyhdk4jzlv88a0ihkvxvvwxslkyncdb89";
+    sha256 = "1qgiaqn7iqxyf54qgnpmli69nw9s3gmi9qv874jsgycykc10hjg4";
   };
 
   postPatch = ''
     sed -i -e 's!librosa==[^"]*!librosa!' requirements.txt
-    sed -i -e 's!unidecode==[^"]*!unidecode!' requirements.txt
     sed -i -e 's!numba==[^"]*!numba!' requirements.txt
     sed -i -e 's!numpy==[^"]*!numpy!' requirements.txt
     sed -i -e 's!umap-learn==[^"]*!umap-learn!' requirements.txt
   '';
 
-  nativeBuildInputs = with python3Packages; [
+  nativeBuildInputs = with python3.pkgs; [
     cython
   ];
 
-  propagatedBuildInputs = with python3Packages; [
+  propagatedBuildInputs = with python3.pkgs; [
     anyascii
     coqpit
     flask
+    gruut
     gdown
     inflect
     jieba
@@ -69,11 +73,11 @@ python3Packages.buildPythonApplication rec {
     # cython modules are not installed for some reasons
     (
       cd TTS/tts/layers/glow_tts/monotonic_align
-      ${python3Packages.python.interpreter} setup.py install --prefix=$out
+      ${python3.interpreter} setup.py install --prefix=$out
     )
   '';
 
-  checkInputs = with python3Packages; [
+  checkInputs = with python3.pkgs; [
     pytest-sugar
     pytestCheckHook
   ];
diff --git a/nixpkgs/pkgs/tools/backup/borgbackup/default.nix b/nixpkgs/pkgs/tools/backup/borgbackup/default.nix
index d0e48454a368..ce7887ff0fb8 100644
--- a/nixpkgs/pkgs/tools/backup/borgbackup/default.nix
+++ b/nixpkgs/pkgs/tools/backup/borgbackup/default.nix
@@ -1,33 +1,53 @@
-{ lib, stdenv, python3, fetchpatch, acl, libb2, lz4, zstd, openssl, openssh, nixosTests }:
+{ lib
+, stdenv
+, acl
+, e2fsprogs
+, libb2
+, lz4
+, openssh
+, openssl
+, python3
+, zstd
+, nixosTests
+}:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "borgbackup";
-  version = "1.1.16";
+  version = "1.1.17";
 
   src = python3.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "0l1dqfwrd9l34rg30cmzmq5bs6yha6kg4vy313jq611jsqj94mmw";
+    sha256 = "0x0ncy0b0bmf586hbdgrif3gjmkdw760vfnfxndr493v07y29fbs";
   };
 
-  patches = [
-    # fix compatibility with sphinx 4
-    (fetchpatch {
-      url = "https://github.com/borgbackup/borg/commit/6a1f31bf2914d167e2f5051f1d531d5d4a19f54b.patch";
-      includes = [ "docs/conf.py" ];
-      sha256 = "0aa4kyb3j4apgwqcy1hzg6lxvpf60m2mijcj60vh101b42410hiz";
-    })
-  ];
+  postPatch = ''
+    # sandbox does not support setuid/setgid/sticky bits
+    substituteInPlace src/borg/testsuite/archiver.py \
+      --replace "0o4755" "0o0755"
+  '';
 
   nativeBuildInputs = with python3.pkgs; [
     setuptools-scm
     # For building documentation:
-    sphinx guzzle_sphinx_theme
+    sphinx
+    guzzle_sphinx_theme
   ];
+
   buildInputs = [
-    libb2 lz4 zstd openssl
-  ] ++ lib.optionals stdenv.isLinux [ acl ];
+    libb2
+    lz4
+    zstd
+    openssl
+  ] ++ lib.optionals stdenv.isLinux [
+    acl
+  ];
+
   propagatedBuildInputs = with python3.pkgs; [
-    cython llfuse
+    cython
+    llfuse
+    packaging
+  ] ++ lib.optionals (!stdenv.isDarwin) [
+    pyfuse3
   ];
 
   preConfigure = ''
@@ -61,15 +81,36 @@ python3.pkgs.buildPythonApplication rec {
   '';
 
   checkInputs = with python3.pkgs; [
-    pytest
+    e2fsprogs
+    pytest-benchmark
+    pytest-xdist
+    pytestCheckHook
   ];
 
-  checkPhase = ''
-    HOME=$(mktemp -d) py.test --pyargs borg.testsuite
-  '';
+  pytestFlagsArray = [
+    "--numprocesses" "auto"
+    "--benchmark-skip"
+    "--pyargs" "borg.testsuite"
+  ];
 
-  # 64 failures, needs pytest-benchmark
-  doCheck = false;
+  disabledTests = [
+    # fuse: device not found, try 'modprobe fuse' first
+    "test_fuse"
+    "test_fuse_allow_damaged_files"
+    "test_fuse_mount_hardlinks"
+    "test_fuse_mount_options"
+    "test_fuse_versions_view"
+    "test_readonly_mount"
+    # Error: Permission denied while trying to write to /var/{,tmp}
+    "test_get_cache_dir"
+    "test_get_keys_dir"
+    "test_get_security_dir"
+    "test_get_config_dir"
+  ];
+
+  preCheck = ''
+    export HOME=$TEMP
+  '';
 
   passthru.tests = {
     inherit (nixosTests) borgbackup;
diff --git a/nixpkgs/pkgs/tools/backup/btrbk/default.nix b/nixpkgs/pkgs/tools/backup/btrbk/default.nix
index 4b4dadd4faff..12308b240450 100644
--- a/nixpkgs/pkgs/tools/backup/btrbk/default.nix
+++ b/nixpkgs/pkgs/tools/backup/btrbk/default.nix
@@ -43,6 +43,5 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3;
     platforms = platforms.unix;
     maintainers = with maintainers; [ asymmetric ];
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/tools/backup/discordchatexporter-cli/default.nix b/nixpkgs/pkgs/tools/backup/discordchatexporter-cli/default.nix
index 76b7d1da59b4..770a64b841c3 100644
--- a/nixpkgs/pkgs/tools/backup/discordchatexporter-cli/default.nix
+++ b/nixpkgs/pkgs/tools/backup/discordchatexporter-cli/default.nix
@@ -7,13 +7,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "discordchatexporter-cli";
-  version = "2.28";
+  version = "2.29";
 
   src = fetchFromGitHub {
     owner = "tyrrrz";
     repo = "discordchatexporter";
     rev = version;
-    sha256 = "1bcq8mwjr8635g8mkgbxnszk20hnwf0zk672glrxjqga6f6fnykg";
+    sha256 = "0hbhDlGEK2rxuCByW8RaT/0vne8Z+q0ZobCkW1FBoG8=";
   };
 
   nativeBuildInputs = [ dotnet-sdk_5 dotnetPackages.Nuget cacert makeWrapper autoPatchelfHook ];
diff --git a/nixpkgs/pkgs/tools/backup/discordchatexporter-cli/deps.nix b/nixpkgs/pkgs/tools/backup/discordchatexporter-cli/deps.nix
index a7703f2ba2c1..9849e6c63662 100644
--- a/nixpkgs/pkgs/tools/backup/discordchatexporter-cli/deps.nix
+++ b/nixpkgs/pkgs/tools/backup/discordchatexporter-cli/deps.nix
@@ -1,8 +1,8 @@
 { fetchNuGet }: [
   (fetchNuGet {
     name = "CliFx";
-    version = "2.0.4";
-    sha256 = "1wwpjli4y2545yi6k17mvjqy994wl3wm6nngszk87rbdwhkbncaj";
+    version = "2.0.6";
+    sha256 = "09yyjgpp52b0r3mqlvx75ld4vjp8hry7ql7r20nnvj0lach6fyh6";
   })
   (fetchNuGet {
     name = "Gress";
@@ -46,8 +46,13 @@
   })
   (fetchNuGet {
     name = "Spectre.Console";
-    version = "0.40.0";
-    sha256 = "17bb31nsvfk7m337zwqcz4v6cvayhfx51ri4yrv5i8nbp7f4rpb1";
+    version = "0.41.0";
+    sha256 = "104vyzwbbq5m75dm31xk7ilvmik8hw1cj3bc301a8w6gq8i0fpk3";
+  })
+  (fetchNuGet {
+    name = "Superpower";
+    version = "2.3.0";
+    sha256 = "0bdsc3c0d6jb0wr67siqfba0ldl0jxbwis6xr0whzqzf6m2cyahm";
   })
   (fetchNuGet {
     name = "System.Memory";
diff --git a/nixpkgs/pkgs/tools/backup/duplicity/default.nix b/nixpkgs/pkgs/tools/backup/duplicity/default.nix
index 24e1a2954ed6..28929615bcdb 100644
--- a/nixpkgs/pkgs/tools/backup/duplicity/default.nix
+++ b/nixpkgs/pkgs/tools/backup/duplicity/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv
-, fetchurl
-, pythonPackages
+, fetchFromGitLab
+, fetchpatch
+, python38
 , librsync
 , ncftp
 , gnupg
@@ -12,16 +13,19 @@
 , gettext
 }:
 let
+  pythonPackages = python38.pkgs;
   inherit (lib.versions) majorMinor splitVersion;
   majorMinorPatch = v: builtins.concatStringsSep "." (lib.take 3 (splitVersion v));
 in
 pythonPackages.buildPythonApplication rec {
   pname = "duplicity";
-  version = "0.8.17";
+  version = "0.8.20";
 
-  src = fetchurl {
-    url = "https://code.launchpad.net/duplicity/${majorMinor version}-series/${majorMinorPatch version}/+download/duplicity-${version}.tar.gz";
-    sha256 = "114rwkf9b3h4fcagrx013sb7krc4hafbwl9gawjph2wd9pkv2wx2";
+  src = fetchFromGitLab {
+    owner = "duplicity";
+    repo = "duplicity";
+    rev = "rel.${version}";
+    sha256 = "13ghra0myq6h6yx8qli55bh8dg91nf1hpd8l7d7xamgrw6b188sm";
   };
 
   patches = [
@@ -31,6 +35,13 @@ pythonPackages.buildPythonApplication rec {
     # Our Python infrastructure runs test in installCheckPhase so we need
     # to make the testing code stop assuming it is run from the source directory.
     ./use-installed-scripts-in-test.patch
+
+    # https://gitlab.com/duplicity/duplicity/-/merge_requests/64
+    # remove on next release
+    (fetchpatch {
+      url = "https://gitlab.com/duplicity/duplicity/-/commit/5c229a9b42f67257c747fbc0022c698fec405bbc.patch";
+      sha256 = "05v931rnawfv11cyxj8gykmal8rj5vq2ksdysyr2mb4sl81mi7v0";
+    })
   ] ++ lib.optionals stdenv.isLinux [
     # Broken on Linux in Nix' build environment
     ./linux-disable-timezone-test.patch
@@ -38,6 +49,15 @@ pythonPackages.buildPythonApplication rec {
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
 
+  preConfigure = ''
+    # fix version displayed by duplicity --version
+    # see SourceCopy in setup.py
+    ls
+    for i in bin/*.1 duplicity/__init__.py; do
+      substituteInPlace "$i" --replace '$version' "${version}"
+    done
+  '';
+
   nativeBuildInputs = [
     makeWrapper
     gettext
@@ -50,7 +70,6 @@ pythonPackages.buildPythonApplication rec {
 
   pythonPath = with pythonPackages; [
     b2sdk
-    boto
     boto3
     cffi
     cryptography
@@ -81,7 +100,7 @@ pythonPackages.buildPythonApplication rec {
     mock
     pexpect
     pytest
-    pytestrunner
+    pytest-runner
   ]);
 
   postInstall = ''
@@ -102,6 +121,9 @@ pythonPackages.buildPythonApplication rec {
 
     # Don't run developer-only checks (pep8, etc.).
     export RUN_CODE_TESTS=0
+
+    # check version string
+    duplicity --version | grep ${version}
   '' + lib.optionalString stdenv.isDarwin ''
     # Work around the following error when running tests:
     # > Max open files of 256 is too low, should be >= 1024.
diff --git a/nixpkgs/pkgs/tools/backup/duplicity/gnutar-in-test.patch b/nixpkgs/pkgs/tools/backup/duplicity/gnutar-in-test.patch
index 694fc8819509..ee95b68e2abb 100644
--- a/nixpkgs/pkgs/tools/backup/duplicity/gnutar-in-test.patch
+++ b/nixpkgs/pkgs/tools/backup/duplicity/gnutar-in-test.patch
@@ -1,9 +1,11 @@
+diff --git a/testing/functional/test_restart.py b/testing/functional/test_restart.py
+index 6d972c82..e8435fd5 100644
 --- a/testing/functional/test_restart.py
 +++ b/testing/functional/test_restart.py
-@@ -323,14 +323,7 @@ class RestartTestWithoutEncryption(RestartTest):
+@@ -350,14 +350,7 @@ class RestartTestWithoutEncryption(RestartTest):
          https://launchpad.net/bugs/929067
          """
-
+ 
 -        if platform.system().startswith(u'Linux'):
 -            tarcmd = u"tar"
 -        elif platform.system().startswith(u'Darwin'):
@@ -13,6 +15,6 @@
 -        else:
 -            raise Exception(u"Platform %s not supported by tar/gtar." % platform.platform())
 +        tarcmd = u"tar"
-
+ 
          # Intial normal backup
-         self.backup("full", "testfiles/blocktartest")
+         self.backup(u"full", u"{0}/testfiles/blocktartest".format(_runtest_dir))
diff --git a/nixpkgs/pkgs/tools/backup/duplicity/linux-disable-timezone-test.patch b/nixpkgs/pkgs/tools/backup/duplicity/linux-disable-timezone-test.patch
index b5e6df18a15b..e322625cdbf4 100644
--- a/nixpkgs/pkgs/tools/backup/duplicity/linux-disable-timezone-test.patch
+++ b/nixpkgs/pkgs/tools/backup/duplicity/linux-disable-timezone-test.patch
@@ -1,10 +1,16 @@
+commit f0142706c377b7c133753db57b5c4c90baa2de30
+Author: Guillaume Girol <symphorien+git@xlumurb.eu>
+Date:   Sun Jul 11 17:48:15 2021 +0200
+
+diff --git a/testing/unit/test_statistics.py b/testing/unit/test_statistics.py
+index 4be5000c..80545853 100644
 --- a/testing/unit/test_statistics.py
 +++ b/testing/unit/test_statistics.py
-@@ -59,6 +59,7 @@ class StatsObjTest(UnitTestCase):
+@@ -63,6 +63,7 @@ class StatsObjTest(UnitTestCase):
          s1 = StatsDeltaProcess()
-         assert s1.get_stat('SourceFiles') == 0
-
+         assert s1.get_stat(u'SourceFiles') == 0
+ 
 +    @unittest.skip("Broken on Linux in Nix' build environment")
      def test_get_stats_string(self):
-         """Test conversion of stat object into string"""
+         u"""Test conversion of stat object into string"""
          s = StatsObj()
diff --git a/nixpkgs/pkgs/tools/backup/duplicity/use-installed-scripts-in-test.patch b/nixpkgs/pkgs/tools/backup/duplicity/use-installed-scripts-in-test.patch
index c02527cf3948..a5ddc4381bd8 100644
--- a/nixpkgs/pkgs/tools/backup/duplicity/use-installed-scripts-in-test.patch
+++ b/nixpkgs/pkgs/tools/backup/duplicity/use-installed-scripts-in-test.patch
@@ -1,48 +1,62 @@
+commit ccd4dd92cd37acce1da20966ad9e4e0c7bcf1709
+Author: Guillaume Girol <symphorien+git@xlumurb.eu>
+Date:   Sun Jul 11 12:00:00 2021 +0000
+
+    use installed duplicity when running tests
+
+diff --git a/setup.py b/setup.py
+index fa474f20..604a242a 100755
 --- a/setup.py
 +++ b/setup.py
-@@ -92,10 +92,6 @@ class TestCommand(test):
+@@ -205,10 +205,6 @@ class TestCommand(test):
                  except Exception:
                      pass
-
+ 
 -        os.environ[u'PATH'] = u"%s:%s" % (
 -            os.path.abspath(build_scripts_cmd.build_dir),
 -            os.environ.get(u'PATH'))
 -
          test.run(self)
-
-     def run_tests(self):
+ 
+ 
+diff --git a/testing/functional/__init__.py b/testing/functional/__init__.py
+index 4221576d..3cf44945 100644
 --- a/testing/functional/__init__.py
 +++ b/testing/functional/__init__.py
-@@ -107,7 +107,7 @@ class FunctionalTestCase(DuplicityTestCase):
-         if basepython is not None:
-             cmd_list.extend([basepython])
+@@ -111,7 +111,7 @@ class FunctionalTestCase(DuplicityTestCase):
+         run_coverage = os.environ.get(u'RUN_COVERAGE', None)
+         if run_coverage is not None:
              cmd_list.extend([u"-m", u"coverage", u"run", u"--source=duplicity", u"-p"])
--        cmd_list.extend([u"../bin/duplicity"])
+-        cmd_list.extend([u"{0}/bin/duplicity".format(_top_dir)])
 +        cmd_list.extend([u"duplicity"])
          cmd_list.extend(options)
          cmd_list.extend([u"-v0"])
          cmd_list.extend([u"--no-print-statistics"])
+diff --git a/testing/functional/test_log.py b/testing/functional/test_log.py
+index 9dfc86a6..b9cb55db 100644
 --- a/testing/functional/test_log.py
 +++ b/testing/functional/test_log.py
-@@ -47,9 +47,9 @@ class LogTest(FunctionalTestCase):
+@@ -49,9 +49,9 @@ class LogTest(FunctionalTestCase):
          # Run actual duplicity command (will fail, because no arguments passed)
          basepython = os.environ.get(u'TOXPYTHON', None)
          if basepython is not None:
--            os.system(u"{} ../bin/duplicity --log-file={} >/dev/null 2>&1".format(basepython, self.logfile))
-+            os.system(u"{} duplicity --log-file={} >/dev/null 2>&1".format(basepython, self.logfile))
+-            os.system(u"{0} {1}/bin/duplicity --log-file={2} >/dev/null 2>&1".format(basepython, _top_dir, self.logfile))
++            os.system(u"{0} duplicity --log-file={1} >/dev/null 2>&1".format(basepython, self.logfile))
          else:
--            os.system(u"../bin/duplicity --log-file={} >/dev/null 2>&1".format(self.logfile))
-+            os.system(u"duplicity --log-file={} >/dev/null 2>&1".format(self.logfile))
+-            os.system(u"{0}/bin/duplicity --log-file={1} >/dev/null 2>&1".format(_top_dir, self.logfile))
++            os.system(u"duplicity --log-file={0} >/dev/null 2>&1".format(self.logfile))
  
          # The format of the file should be:
          # """ERROR 2
+diff --git a/testing/functional/test_rdiffdir.py b/testing/functional/test_rdiffdir.py
+index 0cbfdb33..47acd029 100644
 --- a/testing/functional/test_rdiffdir.py
 +++ b/testing/functional/test_rdiffdir.py
-@@ -42,7 +42,7 @@ class RdiffdirTest(FunctionalTestCase):
+@@ -44,7 +44,7 @@ class RdiffdirTest(FunctionalTestCase):
          basepython = os.environ.get(u'TOXPYTHON', None)
          if basepython is not None:
              cmd_list.extend([basepython])
--        cmd_list.extend([u"../bin/rdiffdir"])
+-        cmd_list.extend([u"{0}/bin/rdiffdir".format(_top_dir)])
 +        cmd_list.extend([u"rdiffdir"])
          cmd_list.extend(argstring.split())
          cmdline = u" ".join([u'"%s"' % x for x in cmd_list])
diff --git a/nixpkgs/pkgs/tools/backup/lvmsync/default.nix b/nixpkgs/pkgs/tools/backup/lvmsync/default.nix
index c289c3938ab7..e36e20902df8 100644
--- a/nixpkgs/pkgs/tools/backup/lvmsync/default.nix
+++ b/nixpkgs/pkgs/tools/backup/lvmsync/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ makeWrapper ];
 
-  phases = ["installPhase"];
+  dontUnpack = true;
 
   installPhase = let
     env = bundlerEnv {
diff --git a/nixpkgs/pkgs/tools/backup/ori/default.nix b/nixpkgs/pkgs/tools/backup/ori/default.nix
index 5e6e6a95ae72..01da407695a4 100644
--- a/nixpkgs/pkgs/tools/backup/ori/default.nix
+++ b/nixpkgs/pkgs/tools/backup/ori/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
     scons PREFIX=$out WITH_ORILOCAL=1 install
   '';
 
-  installPhase = ":";
+  dontInstall = true;
 
   meta = with lib; {
     description = "A secure distributed file system";
diff --git a/nixpkgs/pkgs/tools/backup/rdiff-backup/default.nix b/nixpkgs/pkgs/tools/backup/rdiff-backup/default.nix
index 0d24e3df7206..3307ba08b118 100644
--- a/nixpkgs/pkgs/tools/backup/rdiff-backup/default.nix
+++ b/nixpkgs/pkgs/tools/backup/rdiff-backup/default.nix
@@ -1,23 +1,36 @@
-{lib, fetchurl, python2Packages, librsync, gnused }:
+{ lib, python3Packages, librsync }:
 
-python2Packages.buildPythonApplication {
-  name = "rdiff-backup-1.3.3";
+let
+  pypkgs = python3Packages;
 
-  src = fetchurl {
-    url = "mirror://savannah/rdiff-backup/rdiff-backup-1.3.3.tar.gz";
-    sha256 = "01hcwf5rgqi303fa4kdjkbpa7n8mvvh7h9gpgh2b23nz73k0q0zf";
+in
+pypkgs.buildPythonApplication rec {
+  pname = "rdiff-backup";
+  version = "2.0.5";
+
+  src = pypkgs.fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-VNFgOOYgFO2RbHHIMDsH0vphpqaAOMoYn8LTFTSw84s=";
   };
 
-  patches = [ ./fix-librsync-rs_default_strong_len.patch ];
+  # pkg_resources fails to find the version and then falls back to "DEV"
+  postPatch = ''
+    substituteInPlace src/rdiff_backup/Globals.py \
+      --replace 'version = "DEV"' 'version = "${version}"'
+  '';
+
+  buildInputs = [ librsync ];
 
-  buildInputs = [ librsync gnused ];
+  nativeBuildInputs = with pypkgs; [ setuptools-scm ];
 
+  # no tests from pypi
   doCheck = false;
 
-  meta = {
+  meta = with lib; {
     description = "Backup system trying to combine best a mirror and an incremental backup system";
-    homepage = "http://rdiff-backup.nongnu.org/";
-    license = lib.licenses.gpl2;
-    platforms = lib.platforms.all;
+    homepage = "https://rdiff-backup.net";
+    license = licenses.gpl2Only;
+    maintainers = with maintainers; [ peterhoeg ];
+    platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/tools/backup/rdiff-backup/fix-librsync-rs_default_strong_len.patch b/nixpkgs/pkgs/tools/backup/rdiff-backup/fix-librsync-rs_default_strong_len.patch
deleted file mode 100644
index ce23c8a8124f..000000000000
--- a/nixpkgs/pkgs/tools/backup/rdiff-backup/fix-librsync-rs_default_strong_len.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Patch by Roman Tereshonkov and Kari Hautio for rdiff-backup <= 1.2.8 to avoid a build failure with
-librsync >= 1.0.0 (which is a security bugfix release). The discussion and solution finding can be
-found at https://bugs.launchpad.net/duplicity/+bug/1416344 (for duplicity).
-
---- rdiff-backup-1.2.8/_librsyncmodule.c			2009-03-16 15:36:21.000000000 +0100
-+++ rdiff-backup-1.2.8/_librsyncmodule.c.librsync-1.0.0		2015-03-02 00:54:24.000000000 +0100
-@@ -59,8 +59,13 @@
-   if (sm == NULL) return NULL;
-   sm->x_attr = NULL;
- 
-+#ifdef RS_DEFAULT_STRONG_LEN
-   sm->sig_job = rs_sig_begin((size_t)blocklen,
- 							 (size_t)RS_DEFAULT_STRONG_LEN);
-+#else
-+  sm->sig_job = rs_sig_begin((size_t)blocklen,
-+							 (size_t)8, RS_MD4_SIG_MAGIC);
-+#endif
-   return (PyObject*)sm;
- }
- 
diff --git a/nixpkgs/pkgs/tools/backup/zfs-replicate/default.nix b/nixpkgs/pkgs/tools/backup/zfs-replicate/default.nix
index c167ad1fa018..fa2f69bb3ef5 100644
--- a/nixpkgs/pkgs/tools/backup/zfs-replicate/default.nix
+++ b/nixpkgs/pkgs/tools/backup/zfs-replicate/default.nix
@@ -1,5 +1,5 @@
 { buildPythonApplication, click, fetchPypi, hypothesis, mypy, pytest
-, pytestcov, pytestrunner, lib, stringcase
+, pytest-cov, pytest-runner, lib, stringcase
 }:
 
 buildPythonApplication rec {
@@ -15,11 +15,11 @@ buildPythonApplication rec {
     hypothesis
     mypy
     pytest
-    pytestcov
+    pytest-cov
   ];
 
   buildInputs = [
-    pytestrunner
+    pytest-runner
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/backup/zrepl/default.nix b/nixpkgs/pkgs/tools/backup/zrepl/default.nix
index a7111633545e..59dbfc0be72e 100644
--- a/nixpkgs/pkgs/tools/backup/zrepl/default.nix
+++ b/nixpkgs/pkgs/tools/backup/zrepl/default.nix
@@ -1,5 +1,9 @@
-{ lib, buildGoModule, fetchFromGitHub }:
-
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, makeWrapper
+, openssh
+}:
 buildGoModule rec {
   pname = "zrepl";
   version = "0.4.0";
@@ -15,10 +19,17 @@ buildGoModule rec {
 
   subPackages = [ "." ];
 
+  nativeBuildInputs = [
+    makeWrapper
+  ];
+
   postInstall = ''
     mkdir -p $out/lib/systemd/system
     substitute dist/systemd/zrepl.service $out/lib/systemd/system/zrepl.service \
       --replace /usr/local/bin/zrepl $out/bin/zrepl
+
+    wrapProgram $out/bin/zrepl \
+      --prefix PATH : ${lib.makeBinPath [ openssh ]}
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/cd-dvd/brasero/wrapper.nix b/nixpkgs/pkgs/tools/cd-dvd/brasero/wrapper.nix
index 8112b0971f3d..5371e8d526b8 100644
--- a/nixpkgs/pkgs/tools/cd-dvd/brasero/wrapper.nix
+++ b/nixpkgs/pkgs/tools/cd-dvd/brasero/wrapper.nix
@@ -6,7 +6,7 @@ in symlinkJoin {
   name = "brasero-${brasero-original.version}";
 
   paths = [ brasero-original ];
-  buildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ makeWrapper ];
 
   postBuild = ''
     wrapProgram $out/bin/brasero \
diff --git a/nixpkgs/pkgs/tools/cd-dvd/lsdvd/default.nix b/nixpkgs/pkgs/tools/cd-dvd/lsdvd/default.nix
index a202ee9376b0..59e8bf8843a4 100644
--- a/nixpkgs/pkgs/tools/cd-dvd/lsdvd/default.nix
+++ b/nixpkgs/pkgs/tools/cd-dvd/lsdvd/default.nix
@@ -1,11 +1,8 @@
 { lib, stdenv, fetchurl, libdvdread, pkg-config }:
 
-let
-  version = "0.17";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "lsdvd";
-  inherit version;
+  version = "0.17";
   src = fetchurl {
     url = "mirror://sourceforge/lsdvd/lsdvd-${version}.tar.gz";
     sha256 = "1274d54jgca1prx106iyir7200aflr70bnb1kawndlmcckcmnb3x";
diff --git a/nixpkgs/pkgs/tools/compression/brotli/default.nix b/nixpkgs/pkgs/tools/compression/brotli/default.nix
index af0cbc4fe22e..dfac5af0980b 100644
--- a/nixpkgs/pkgs/tools/compression/brotli/default.nix
+++ b/nixpkgs/pkgs/tools/compression/brotli/default.nix
@@ -1,4 +1,8 @@
-{ lib, stdenv, fetchFromGitHub, cmake, fetchpatch
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, fetchpatch
 , staticOnly ? stdenv.hostPlatform.isStatic
 }:
 
@@ -11,7 +15,7 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "google";
     repo = "brotli";
-    rev = "v" + version;
+    rev = "v${version}";
     sha256 = "z6Dhrabav1MDQ4rAcXaDv0aN+qOoh9cvoXZqEWBB13c=";
   };
 
@@ -24,8 +28,7 @@ stdenv.mkDerivation rec {
     sha256 = "sOeXNVsCaBSD9i82GRUDrkyreGeQ7qaJWjjy/uLL0/0=";
   });
 
-  cmakeFlags = []
-    ++ lib.optional staticOnly "-DBUILD_SHARED_LIBS=OFF";
+  cmakeFlags = lib.optional staticOnly "-DBUILD_SHARED_LIBS=OFF";
 
   outputs = [ "out" "dev" "lib" ];
 
@@ -36,13 +39,13 @@ stdenv.mkDerivation rec {
   # This breaks on Darwin because our cmake hook tries to make a build folder
   # and the wonderful bazel BUILD file is already there (yay case-insensitivity?)
   prePatch = ''
-      rm BUILD
+    rm BUILD
 
-      # Upstream fixed this reference to runtime-path after the release
-      # and with this references g++ complains about invalid option -R
-      sed -i 's/ -R''${libdir}//' scripts/libbrotli*.pc.in
-      cat scripts/libbrotli*.pc.in
-    '';
+    # Upstream fixed this reference to runtime-path after the release
+    # and with this references g++ complains about invalid option -R
+    sed -i 's/ -R''${libdir}//' scripts/libbrotli*.pc.in
+    cat scripts/libbrotli*.pc.in
+  '';
 
   # Don't bother with "man" output for now,
   # it currently only makes the manpages hard to use.
@@ -53,10 +56,8 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    inherit (src.meta) homepage;
-
+    homepage = "https://github.com/google/brotli";
     description = "A generic-purpose lossless compression algorithm and tool";
-
     longDescription =
       ''  Brotli is a generic-purpose lossless compression algorithm that
           compresses data using a combination of a modern variant of the LZ77
@@ -69,7 +70,6 @@ stdenv.mkDerivation rec {
           in the following internet draft:
           http://www.ietf.org/id/draft-alakuijala-brotli
       '';
-
     license = licenses.mit;
     maintainers = with maintainers; [ freezeboy ];
     platforms = platforms.all;
diff --git a/nixpkgs/pkgs/tools/compression/bsc/default.nix b/nixpkgs/pkgs/tools/compression/bsc/default.nix
index ac0c0544f017..93b715f853cf 100644
--- a/nixpkgs/pkgs/tools/compression/bsc/default.nix
+++ b/nixpkgs/pkgs/tools/compression/bsc/default.nix
@@ -1,30 +1,31 @@
-{ lib, stdenv, fetchurl, openmp ? null }:
+{ lib, stdenv, fetchFromGitHub, openmp }:
 
 stdenv.mkDerivation rec {
   pname = "bsc";
   version = "3.1.0";
 
-  src = fetchurl {
-    url = "https://github.com/IlyaGrebnov/libbsc/archive/${version}.tar.gz";
-    sha256 = "01yhizaf6qjv1plyrx0fcib264maa5qwvgfvvid9rzlzj9fxjib6";
+  src = fetchFromGitHub {
+    owner = "IlyaGrebnov";
+    repo = "libbsc";
+    rev = version;
+    sha256 = "0c0jmirh9y23kyi1jnrm13sa3xsjn54jazfr84ag45pai279fciz";
   };
 
   enableParallelBuilding = true;
 
   buildInputs = lib.optional stdenv.isDarwin openmp;
 
-  prePatch = ''
+  postPatch = ''
     substituteInPlace makefile \
         --replace 'g++' '$(CXX)'
   '';
 
-  preInstall = ''
-    makeFlagsArray+=("PREFIX=$out")
-  '';
+  makeFlags = [ "PREFIX=$(out)" ];
 
   meta = with lib; {
     description = "High performance block-sorting data compression library";
     homepage = "http://libbsc.com/";
+    maintainers = with maintainers; [ ];
     # Later commits changed the licence to Apache2 (no release yet, though)
     license = with licenses; [ lgpl3Plus ];
     platforms = platforms.unix;
diff --git a/nixpkgs/pkgs/tools/compression/bsdiff/default.nix b/nixpkgs/pkgs/tools/compression/bsdiff/default.nix
index 8b5dfe919c7d..8f8818781ab4 100644
--- a/nixpkgs/pkgs/tools/compression/bsdiff/default.nix
+++ b/nixpkgs/pkgs/tools/compression/bsdiff/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "4.3";
 
   src = fetchurl {
-    url    = "https://www.daemonology.net/bsdiff/${pname}-${version}.tar.gz";
+    url = "https://www.daemonology.net/bsdiff/${pname}-${version}.tar.gz";
     sha256 = "0j2zm3z271x5aw63mwhr3vymzn45p2vvrlrpm9cz2nywna41b0hq";
   };
 
@@ -27,11 +27,11 @@ stdenv.mkDerivation rec {
     cp bspatch.1 $out/share/man/man1
   '';
 
-  meta = {
+  meta = with lib; {
     description = "An efficient binary diff/patch tool";
-    homepage    = "http://www.daemonology.net/bsdiff";
-    license     = lib.licenses.bsd2;
-    platforms   = lib.platforms.unix;
-    maintainers = [ lib.maintainers.thoughtpolice ];
+    homepage = "https://www.daemonology.net/bsdiff/";
+    license = licenses.bsd2;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.thoughtpolice ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/compression/dejsonlz4/default.nix b/nixpkgs/pkgs/tools/compression/dejsonlz4/default.nix
index 07b6a5979a4f..0dd703035fa9 100644
--- a/nixpkgs/pkgs/tools/compression/dejsonlz4/default.nix
+++ b/nixpkgs/pkgs/tools/compression/dejsonlz4/default.nix
@@ -1,28 +1,30 @@
 { lib, stdenv, fetchFromGitHub }:
+
 stdenv.mkDerivation rec {
-    pname = "dejsonlz4";
-    version = "1.1";
-    src = fetchFromGitHub {
-      owner = "avih";
-      repo = pname;
-      rev = "v${version}";
-      sha256 = "0ggs69qamaama5mid07mhp95m1x42wljdb953lrwfr7p8p6f8czh";
-    };
+  pname = "dejsonlz4";
+  version = "1.1";
+
+  src = fetchFromGitHub {
+    owner = "avih";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0ggs69qamaama5mid07mhp95m1x42wljdb953lrwfr7p8p6f8czh";
+  };
 
-    buildPhase = ''
-      ${stdenv.cc.targetPrefix}cc -o dejsonlz4 src/dejsonlz4.c src/lz4.c
-    '';
+  buildPhase = ''
+    ${stdenv.cc.targetPrefix}cc -o dejsonlz4 src/dejsonlz4.c src/lz4.c
+  '';
 
-    installPhase = ''
-      mkdir -p $out/bin/
-      cp dejsonlz4 $out/bin/
-    '';
+  installPhase = ''
+    mkdir -p $out/bin/
+    cp dejsonlz4 $out/bin/
+  '';
 
-    meta = with lib; {
-      description = "Decompress Mozilla Firefox bookmarks backup files";
-      homepage = "https://github.com/avih/dejsonlz4";
-      license = licenses.bsd2;
-      maintainers = with maintainers; [ mt-caret ];
-      platforms = platforms.all;
-    };
-  }
+  meta = with lib; {
+    description = "Decompress Mozilla Firefox bookmarks backup files";
+    homepage = "https://github.com/avih/dejsonlz4";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ mt-caret ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/compression/gzrt/default.nix b/nixpkgs/pkgs/tools/compression/gzrt/default.nix
index 18efc1b64c28..664c1eb78565 100644
--- a/nixpkgs/pkgs/tools/compression/gzrt/default.nix
+++ b/nixpkgs/pkgs/tools/compression/gzrt/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, zlib }:
 
 stdenv.mkDerivation rec {
-  name = "gzrt-0.8";
+  pname = "gzrt";
+  version = "0.8";
 
   src = fetchurl {
-    url = "https://www.urbanophile.com/arenn/coding/gzrt/${name}.tar.gz";
+    url = "https://www.urbanophile.com/arenn/coding/gzrt/gzrt-${version}.tar.gz";
     sha256 = "1vhzazj47xfpbfhzkwalz27cc0n5gazddmj3kynhk0yxv99xrdxh";
   };
 
@@ -15,10 +16,11 @@ stdenv.mkDerivation rec {
     cp gzrecover $out/bin
   '';
 
-  meta = {
+  meta = with lib; {
     homepage = "https://www.urbanophile.com/arenn/hacking/gzrt/";
     description = "The gzip Recovery Toolkit";
-    license = lib.licenses.gpl2Plus;
-    platforms = lib.platforms.unix;
+    maintainers = with maintainers; [ ];
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/compression/kzipmix/default.nix b/nixpkgs/pkgs/tools/compression/kzipmix/default.nix
index 73931f6bcaea..9072a24b7fb5 100644
--- a/nixpkgs/pkgs/tools/compression/kzipmix/default.nix
+++ b/nixpkgs/pkgs/tools/compression/kzipmix/default.nix
@@ -1,25 +1,26 @@
-{lib, stdenv, fetchurl}:
+{ lib, stdenv, fetchurl }:
 
-stdenv.mkDerivation {
-  name = "kzipmix-20091108";
+stdenv.mkDerivation rec {
+  pname = "kzipmix";
+  version = "20200115";
 
   src = fetchurl {
-    url = "http://static.jonof.id.au/dl/kenutils/kzipmix-20091108-linux.tar.gz";
-    sha256 = "19gyn8pblffdz1bf3xkbpzx8a8wn3xb0v411pqzmz5g5l6pm5gph";
+    url = "http://static.jonof.id.au/dl/kenutils/kzipmix-${version}-linux.tar.gz";
+    sha256 = "sha256-ePgye0D6/ED53zx6xffLnYhkjed7SPU4BLOZQr9E3yA=";
   };
 
   installPhase = ''
     mkdir -p $out/bin
-    cp kzip zipmix $out/bin
+    cp amd64/{kzip,zipmix} $out/bin
 
     patchelf --set-interpreter ${stdenv.glibc.out}/lib/ld-linux.so.2 $out/bin/kzip
     patchelf --set-interpreter ${stdenv.glibc.out}/lib/ld-linux.so.2 $out/bin/zipmix
   '';
 
-  meta = {
+  meta = with lib; {
     description = "A tool that aggressively optimizes the sizes of Zip archives";
-    license = lib.licenses.unfree;
+    license = licenses.unfree;
     homepage = "http://advsys.net/ken/utils.htm";
-    maintainers = [ lib.maintainers.sander ];
+    maintainers = [ maintainers.sander ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/compression/lbzip2/default.nix b/nixpkgs/pkgs/tools/compression/lbzip2/default.nix
index 4072dd43aef1..6d4017ac62ca 100644
--- a/nixpkgs/pkgs/tools/compression/lbzip2/default.nix
+++ b/nixpkgs/pkgs/tools/compression/lbzip2/default.nix
@@ -1,20 +1,21 @@
 { lib, stdenv, fetchFromGitHub, gnulib, perl, autoconf, automake }:
 
 stdenv.mkDerivation rec {
+  pname = "lbzip2";
   version = "2.5";
-  name = "lbzip2-${version}";
 
   src = fetchFromGitHub {
     owner = "kjn";
     repo = "lbzip2";
-    sha256 = "1h321wva6fp6khz6x0i6rqb76xh327nw6v5jhgjpcckwdarj5jv8";
     rev = "v${version}";
+    sha256 = "1h321wva6fp6khz6x0i6rqb76xh327nw6v5jhgjpcckwdarj5jv8";
   };
 
   buildInputs = [ gnulib perl ];
   nativeBuildInputs = [ autoconf automake ];
 
   preConfigure = ''
+    substituteInPlace configure.ac --replace 'AC_PREREQ([2.63])' 'AC_PREREQ(2.64)'
     ./build-aux/autogen.sh
   '';
 
diff --git a/nixpkgs/pkgs/tools/compression/lhasa/default.nix b/nixpkgs/pkgs/tools/compression/lhasa/default.nix
index 77df84879b8d..4f1ba702831f 100644
--- a/nixpkgs/pkgs/tools/compression/lhasa/default.nix
+++ b/nixpkgs/pkgs/tools/compression/lhasa/default.nix
@@ -1,21 +1,24 @@
-{lib, stdenv, fetchurl}:
+{ lib, stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  pname = "lhasa";
+  version = "0.3.1";
 
-stdenv.mkDerivation {
-  name = "lhasa-0.3.1";
   src = fetchurl {
-    url = "https://soulsphere.org/projects/lhasa/lhasa-0.3.1.tar.gz";
+    url = "https://soulsphere.org/projects/lhasa/lhasa-${version}.tar.gz";
     sha256 = "092zi9av18ma20c6h9448k0bapvx2plnp292741dvfd9hmgqxc1z";
   };
-  meta = {
+
+  meta = with lib; {
     description = "Free Software replacement for the Unix LHA tool";
     longDescription = ''
       Lhasa is a Free Software replacement for the Unix LHA tool, for
       decompressing .lzh (LHA / LHarc) and .lzs (LArc) archives. The backend for
       the tool is a library, so that it can be reused for other purposes.
     '';
-    license = lib.licenses.isc;
+    license = licenses.isc;
     homepage = "http://fragglet.github.io/lhasa";
-    maintainers = with lib; [ maintainers.sander ];
-    platforms = with lib.platforms; linux ++ darwin;
+    maintainers = [ maintainers.sander ];
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/compression/lrzip/default.nix b/nixpkgs/pkgs/tools/compression/lrzip/default.nix
index 9f4f66521f66..02f62c3e3c01 100644
--- a/nixpkgs/pkgs/tools/compression/lrzip/default.nix
+++ b/nixpkgs/pkgs/tools/compression/lrzip/default.nix
@@ -1,8 +1,8 @@
-{lib, stdenv, fetchurl, zlib, lzo, bzip2, lz4, nasm, perl}:
+{ lib, stdenv, fetchurl, zlib, lzo, bzip2, lz4, nasm, perl }:
 
 stdenv.mkDerivation rec {
-  version = "0.641";
   pname = "lrzip";
+  version = "0.641";
 
   src = fetchurl {
     url = "http://ck.kolivas.org/apps/lrzip/${pname}-${version}.tar.xz";
@@ -15,11 +15,11 @@ stdenv.mkDerivation rec {
     "--disable-asm"
   ];
 
-  meta = {
+  meta = with lib; {
     homepage = "http://ck.kolivas.org/apps/lrzip/";
     description = "The CK LRZIP compression program (LZMA + RZIP)";
-    license = lib.licenses.gpl2Plus;
-    inherit version;
-    platforms = lib.platforms.unix;
+    maintainers = with maintainers; [ ];
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/compression/lzop/default.nix b/nixpkgs/pkgs/tools/compression/lzop/default.nix
index be31048c2186..8bf58d9cc356 100644
--- a/nixpkgs/pkgs/tools/compression/lzop/default.nix
+++ b/nixpkgs/pkgs/tools/compression/lzop/default.nix
@@ -1,9 +1,11 @@
-{lib, stdenv, fetchurl, lzo}:
+{ lib, stdenv, fetchurl, lzo }:
 
 stdenv.mkDerivation rec {
-  name = "lzop-1.04";
+  pname = "lzop";
+  version = "1.04";
+
   src = fetchurl {
-    url = "https://www.lzop.org/download/${name}.tar.gz";
+    url = "https://www.lzop.org/download/lzop-${version}.tar.gz";
     sha256 = "0h9gb8q7y54m9mvy3jvsmxf21yx8fc3ylzh418hgbbv0i8mbcwky";
   };
 
@@ -12,6 +14,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "http://www.lzop.org";
     description = "Fast file compressor";
+    maintainers = with maintainers; [ ];
     license = licenses.gpl2;
     platforms = platforms.unix;
   };
diff --git a/nixpkgs/pkgs/tools/compression/mozlz4a/default.nix b/nixpkgs/pkgs/tools/compression/mozlz4a/default.nix
index dabde674d2eb..0aec49827e6d 100644
--- a/nixpkgs/pkgs/tools/compression/mozlz4a/default.nix
+++ b/nixpkgs/pkgs/tools/compression/mozlz4a/default.nix
@@ -24,7 +24,6 @@ stdenv.mkDerivation rec {
   buildInputs = [ python3 python3.pkgs.python-lz4 ];
 
   meta = {
-    inherit version;
     description = "A script to handle Mozilla's mozlz4 files";
     license = lib.licenses.bsd2;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/tools/compression/pigz/default.nix b/nixpkgs/pkgs/tools/compression/pigz/default.nix
index a4cdcc08549e..6dbe190c400b 100644
--- a/nixpkgs/pkgs/tools/compression/pigz/default.nix
+++ b/nixpkgs/pkgs/tools/compression/pigz/default.nix
@@ -1,36 +1,34 @@
 { lib, stdenv, fetchurl, zlib, util-linux }:
 
-let name = "pigz";
-    version = "2.6";
-in
-stdenv.mkDerivation {
-  name = name + "-" + version;
+stdenv.mkDerivation rec {
+  pname = "pigz";
+  version = "2.6";
 
   src = fetchurl {
-    url = "https://www.zlib.net/${name}/${name}-${version}.tar.gz";
+    url = "https://www.zlib.net/${pname}/${pname}-${version}.tar.gz";
     sha256 = "sha256-Lu17DXRJ0dcJA/KmLNYAXSYus6jJ6YaHvIy7WAnbKn0=";
   };
 
   enableParallelBuilding = true;
 
-  buildInputs = [zlib] ++ lib.optional stdenv.isLinux util-linux;
+  buildInputs = [ zlib ] ++ lib.optional stdenv.isLinux util-linux;
 
   makeFlags = [ "CC=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc" ];
 
   doCheck = stdenv.isLinux;
   checkTarget = "tests";
-  installPhase =
-  ''
-      install -Dm755 pigz "$out/bin/pigz"
-      ln -s pigz "$out/bin/unpigz"
-      install -Dm755 pigz.1 "$out/share/man/man1/pigz.1"
-      ln -s pigz.1 "$out/share/man/man1/unpigz.1"
-      install -Dm755 pigz.pdf "$out/share/doc/pigz/pigz.pdf"
+  installPhase = ''
+    install -Dm755 pigz "$out/bin/pigz"
+    ln -s pigz "$out/bin/unpigz"
+    install -Dm755 pigz.1 "$out/share/man/man1/pigz.1"
+    ln -s pigz.1 "$out/share/man/man1/unpigz.1"
+    install -Dm755 pigz.pdf "$out/share/doc/pigz/pigz.pdf"
   '';
 
   meta = with lib; {
-    homepage = "http://www.zlib.net/pigz/";
+    homepage = "https://www.zlib.net/pigz/";
     description = "A parallel implementation of gzip for multi-core machines";
+    maintainers = with maintainers; [ ];
     license = licenses.zlib;
     platforms = platforms.unix;
   };
diff --git a/nixpkgs/pkgs/tools/compression/pixz/default.nix b/nixpkgs/pkgs/tools/compression/pixz/default.nix
index d0418ffdd60d..ec05a44a5189 100644
--- a/nixpkgs/pkgs/tools/compression/pixz/default.nix
+++ b/nixpkgs/pkgs/tools/compression/pixz/default.nix
@@ -1,25 +1,42 @@
-{
-  lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, pkg-config
-  , asciidoc, libxslt, libxml2, docbook_xml_dtd_45, docbook_xsl
-  , libarchive, xz
+{ lib
+, stdenv
+, fetchFromGitHub
+, autoconf
+, automake
+, libtool
+, pkg-config
+, asciidoc
+, libxslt
+, libxml2
+, docbook_xml_dtd_45
+, docbook_xsl
+, libarchive
+, xz
 }:
+
 stdenv.mkDerivation rec {
-  baseName = "pixz";
+  pname = "pixz";
   version = "1.0.7";
-  name = "${baseName}-${version}";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [
-    autoconf automake libtool asciidoc libxslt libxml2
-    docbook_xml_dtd_45 docbook_xsl
-    libarchive xz
+    autoconf
+    automake
+    libtool
+    asciidoc
+    libxslt
+    libxml2
+    docbook_xml_dtd_45
+    docbook_xsl
+    libarchive
+    xz
   ];
   preBuild = ''
     echo "XML_CATALOG_FILES='$XML_CATALOG_FILES'"
   '';
   src = fetchFromGitHub {
     owner = "vasi";
-    repo = baseName;
+    repo = pname;
     rev = "v${version}";
     sha256 = "163axxs22w7pghr786hda22mnlpvmi50hzhfr9axwyyjl9n41qs2";
   };
@@ -27,11 +44,10 @@ stdenv.mkDerivation rec {
     ./autogen.sh
   '';
 
-  meta = {
-    inherit version;
+  meta = with lib; {
     description = "A parallel compressor/decompressor for xz format";
-    license = lib.licenses.bsd2;
-    maintainers = [lib.maintainers.raskin];
-    platforms = lib.platforms.unix;
+    license = licenses.bsd2;
+    maintainers = [ maintainers.raskin ];
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/compression/pxz/_SC_ARG_MAX.patch b/nixpkgs/pkgs/tools/compression/pxz/_SC_ARG_MAX.patch
deleted file mode 100644
index fac8f1fc147c..000000000000
--- a/nixpkgs/pkgs/tools/compression/pxz/_SC_ARG_MAX.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From b8f9827fc4de9296c7a6f5e6fdac46e070cd6cb4 Mon Sep 17 00:00:00 2001
-From: Igor Pashev <pashev.igor@gmail.com>
-Date: Sat, 1 Nov 2014 18:10:05 +0300
-Subject: [PATCH] Fixed crash on Linux when stack size is unlimited
-
----
- pxz.c | 7 +++++--
- 1 file changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/pxz.c b/pxz.c
-index 9cb843e..52713e2 100644
---- a/pxz.c
-+++ b/pxz.c
-@@ -65,7 +65,7 @@ FILE **ftemp;
- char str[0x100];
- char buf[BUFFSIZE];
- char *xzcmd;
--size_t xzcmd_max;
-+const size_t xzcmd_max = 10240;
- 
- unsigned opt_complevel = 6, opt_stdout, opt_keep, opt_threads, opt_verbose;
- unsigned opt_force, opt_stdout;
-@@ -243,9 +243,12 @@ int main( int argc, char **argv ) {
- 	lzma_filter filters[LZMA_FILTERS_MAX + 1];
- 	lzma_options_lzma lzma_options;
- 	
--	xzcmd_max = sysconf(_SC_ARG_MAX);
- 	page_size = sysconf(_SC_PAGE_SIZE);
- 	xzcmd = malloc(xzcmd_max);
-+	if (!xzcmd) {
-+		fprintf(stderr, "Failed to allocate %lu bytes for xz command.\n", xzcmd_max);
-+		return -1;
-+	}
- 	snprintf(xzcmd, xzcmd_max, XZ_BINARY);
- 	
- 	parse_args(argc, argv);
diff --git a/nixpkgs/pkgs/tools/compression/pxz/default.nix b/nixpkgs/pkgs/tools/compression/pxz/default.nix
index eb1f5d3570b1..4ea95a3f78ac 100644
--- a/nixpkgs/pkgs/tools/compression/pxz/default.nix
+++ b/nixpkgs/pkgs/tools/compression/pxz/default.nix
@@ -1,21 +1,18 @@
-{ lib, stdenv, fetchgit, xz }:
+{ lib, stdenv, fetchFromGitHub, xz }:
 
-let name = "pxz";
-    version = "4.999.9beta+git";
-in
-stdenv.mkDerivation {
-  name = name + "-" + version;
+stdenv.mkDerivation rec {
+  pname = "pxz";
+  version = "4.999.9beta+git";
 
-  src = fetchgit {
-    url = "https://github.com/jnovy/pxz.git";
-    rev = "ae808463c2950edfdedb8fb49f95006db0a18667";
-    sha256 = "0na2kw8cf0qd8l1aywlv9m3xrxnqlcwxfdwp3f7x9vxwqx3k32kc";
+  src = fetchFromGitHub {
+    owner = "jnovy";
+    repo = "pxz";
+    rev = "124382a6d0832b13b7c091f72264f8f3f463070a";
+    sha256 = "15mmv832iqsqwigidvwnf0nyivxf0y8m22j2szy4h0xr76x4z21m";
   };
 
   buildInputs = [ xz ];
 
-  patches = [ ./_SC_ARG_MAX.patch ];
-
   buildPhase = ''
     gcc -o pxz pxz.c -llzma \
         -fopenmp -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -O2 \
@@ -30,15 +27,18 @@ stdenv.mkDerivation {
     cp pxz.1 $out/share/man/man1
   '';
 
-  meta = {
+  meta = with lib; {
     homepage = "https://jnovy.fedorapeople.org/pxz/";
-    license = lib.licenses.gpl2Plus;
-    maintainers = with lib.maintainers; [pashev];
-    description = ''Parallel XZ is a compression utility that takes advantage of
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ pashev ];
+    description = "compression utility that runs LZMA compression of different parts on multiple cores simultaneously";
+    longDescription = ''
+      Parallel XZ is a compression utility that takes advantage of
       running LZMA compression of different parts of an input file on multiple
       cores and processors simultaneously. Its primary goal is to utilize all
       resources to speed up compression time with minimal possible influence
-      on compression ratio'';
-    platforms = with lib.platforms; linux;
+      on compression ratio
+    '';
+    platforms = with platforms; linux;
   };
 }
diff --git a/nixpkgs/pkgs/tools/compression/rzip/default.nix b/nixpkgs/pkgs/tools/compression/rzip/default.nix
index 60364afa9f30..5f878f8c494f 100644
--- a/nixpkgs/pkgs/tools/compression/rzip/default.nix
+++ b/nixpkgs/pkgs/tools/compression/rzip/default.nix
@@ -1,9 +1,11 @@
-{lib, stdenv, fetchurl, fetchpatch, bzip2}:
+{ lib, stdenv, fetchurl, fetchpatch, bzip2 }:
+
+stdenv.mkDerivation rec {
+  pname = "rzip";
+  version = "2.1";
 
-stdenv.mkDerivation {
-  name = "rzip-2.1";
   src = fetchurl {
-    url = "mirror://samba/rzip/rzip-2.1.tar.gz";
+    url = "mirror://samba/rzip/rzip-${version}.tar.gz";
     sha256 = "4bb96f4d58ccf16749ed3f836957ce97dbcff3e3ee5fd50266229a48f89815b7";
   };
   buildInputs = [ bzip2 ];
@@ -16,10 +18,11 @@ stdenv.mkDerivation {
     })
   ];
 
-  meta = {
+  meta = with lib; {
     homepage = "https://rzip.samba.org/";
     description = "Compression program";
-    license = lib.licenses.gpl2Plus;
-    platforms = lib.platforms.unix;
+    maintainers = with maintainers; [ ];
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/compression/zstd/default.nix b/nixpkgs/pkgs/tools/compression/zstd/default.nix
index a89453b55f4f..5253d7faa401 100644
--- a/nixpkgs/pkgs/tools/compression/zstd/default.nix
+++ b/nixpkgs/pkgs/tools/compression/zstd/default.nix
@@ -40,6 +40,7 @@ stdenv.mkDerivation rec {
     (name: value: "-DZSTD_${name}:BOOL=${if value then "ON" else "OFF"}") {
       BUILD_SHARED = !static;
       BUILD_STATIC = static;
+      BUILD_CONTRIB = true;
       PROGRAMS_LINK_SHARED = !static;
       LEGACY_SUPPORT = legacySupport;
       BUILD_TESTS = doCheck;
@@ -62,12 +63,16 @@ stdenv.mkDerivation rec {
   '';
 
   preInstall = ''
+    mkdir -p $bin/bin
+    cp contrib/pzstd/pzstd $bin/bin/pzstd
     substituteInPlace ../programs/zstdgrep \
       --replace ":-grep" ":-${gnugrep}/bin/grep" \
       --replace ":-zstdcat" ":-$bin/bin/zstdcat"
 
     substituteInPlace ../programs/zstdless \
       --replace "zstdcat" "$bin/bin/zstdcat"
+  '' + lib.optionalString stdenv.isDarwin ''
+    install_name_tool -change @rpath/libzstd.1.dylib $out/lib/libzstd.1.dylib $bin/bin/pzstd
   '';
 
   outputs = [ "bin" "dev" ]
diff --git a/nixpkgs/pkgs/tools/compression/zsync/default.nix b/nixpkgs/pkgs/tools/compression/zsync/default.nix
index 94921397e303..b92112a4816e 100644
--- a/nixpkgs/pkgs/tools/compression/zsync/default.nix
+++ b/nixpkgs/pkgs/tools/compression/zsync/default.nix
@@ -1,20 +1,21 @@
-{lib, stdenv, fetchurl}:
+{ lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "zsync-0.6.2";
+  pname = "zsync";
+  version = "0.6.2";
 
   src = fetchurl {
-    url = "http://zsync.moria.org.uk/download/${name}.tar.bz2";
+    url = "http://zsync.moria.org.uk/download/${pname}-${version}.tar.bz2";
     sha256 = "1wjslvfy76szf0mgg2i9y9q30858xyjn6v2acc24zal76d1m778b";
   };
 
   makeFlags = [ "AR=${stdenv.cc.bintools.targetPrefix}ar" ];
 
-  meta = {
+  meta = with lib; {
     homepage = "http://zsync.moria.org.uk/";
     description = "File distribution system using the rsync algorithm";
-    license = lib.licenses.free;
-    maintainers = with lib.maintainers; [viric];
-    platforms = with lib.platforms; all;
+    license = licenses.free;
+    maintainers = with maintainers; [ viric ];
+    platforms = with platforms; all;
   };
 }
diff --git a/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix b/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix
index a28499f77328..be7a42e19e9d 100644
--- a/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix
@@ -1,18 +1,34 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, attr, libuuid, libscrypt, libsodium, keyutils
-, liburcu, zlib, libaio, udev, zstd, lz4, valgrind, python3Packages, nixosTests
-, fuseSupport ? false, fuse3 ? null }:
-
-assert fuseSupport -> fuse3 != null;
+{ lib
+, stdenv
+, fetchFromGitHub
+, pkg-config
+, docutils
+, libuuid
+, libscrypt
+, libsodium
+, keyutils
+, liburcu
+, zlib
+, libaio
+, zstd
+, lz4
+, python3Packages
+, udev
+, valgrind
+, nixosTests
+, fuse3
+, fuseSupport ? false
+}:
 
 stdenv.mkDerivation {
   pname = "bcachefs-tools";
-  version = "2020-11-17";
+  version = "unstable-2021-07-08";
 
   src = fetchFromGitHub {
     owner = "koverstreet";
     repo = "bcachefs-tools";
-    rev = "41bec63b265a38dd9fa168b6042ea5bf07135048";
-    sha256 = "1y3187kpw1bmnl97isv28k2sw8cmrnsn31a0dw745adwm0n7z6fj";
+    rev = "050d5f7bcf08bd02f5077a1c5559f352fa449e1e";
+    sha256 = "15bl9ni0ckmvs5d7hi6v26z690rrmkb7dx00skn6gwq87ffz3imw";
   };
 
   postPatch = ''
@@ -22,7 +38,7 @@ stdenv.mkDerivation {
                 "INITRAMFS_DIR=${placeholder "out"}/etc/initramfs-tools"
   '';
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config docutils ];
 
   buildInputs = [
     libuuid libscrypt libsodium keyutils liburcu zlib libaio
@@ -48,6 +64,6 @@ stdenv.mkDerivation {
     homepage = "https://bcachefs.org/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ davidak chiiruno ];
-    platforms = platforms.linux;
+    platforms = [ "x86_64-linux" ]; # does not build on aarch64, see https://github.com/koverstreet/bcachefs-tools/issues/39
   };
 }
diff --git a/nixpkgs/pkgs/tools/filesystems/fatsort/default.nix b/nixpkgs/pkgs/tools/filesystems/fatsort/default.nix
index ec7563dfc494..7c9edf2f84d9 100644
--- a/nixpkgs/pkgs/tools/filesystems/fatsort/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/fatsort/default.nix
@@ -20,7 +20,6 @@ stdenv.mkDerivation rec {
     description = "Sorts FAT partition table, for devices that don't do sorting of files";
     maintainers = [ maintainers.kovirobi ];
     license = licenses.gpl2;
-    inherit version;
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/tools/filesystems/fuse-7z-ng/default.nix b/nixpkgs/pkgs/tools/filesystems/fuse-7z-ng/default.nix
index 8a0671957c35..0149071ab0d0 100644
--- a/nixpkgs/pkgs/tools/filesystems/fuse-7z-ng/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/fuse-7z-ng/default.nix
@@ -25,7 +25,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    inherit version;
     inherit (src.homepage);
     description = "A FUSE-based filesystem that uses the p7zip library";
     longDescription = ''
diff --git a/nixpkgs/pkgs/tools/filesystems/gitfs/default.nix b/nixpkgs/pkgs/tools/filesystems/gitfs/default.nix
index 03e76e5fb275..b5b1256a9b5e 100644
--- a/nixpkgs/pkgs/tools/filesystems/gitfs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/gitfs/default.nix
@@ -22,7 +22,7 @@ python3Packages.buildPythonApplication rec {
       'from pygit2 import RemoteCallbacks'
   '';
 
-  checkInputs = with python3Packages; [ pytest pytestcov mock ];
+  checkInputs = with python3Packages; [ pytest pytest-cov mock ];
   propagatedBuildInputs = with python3Packages; [ atomiclong fusepy pygit2 six ];
 
   checkPhase = "py.test";
diff --git a/nixpkgs/pkgs/tools/filesystems/jmtpfs/default.nix b/nixpkgs/pkgs/tools/filesystems/jmtpfs/default.nix
index 8589abffc77d..2754d223a6ba 100644
--- a/nixpkgs/pkgs/tools/filesystems/jmtpfs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/jmtpfs/default.nix
@@ -1,9 +1,8 @@
 { lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, file, fuse, libmtp }:
 
-let version = "0.5"; in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "jmtpfs";
-  inherit version;
+  version = "0.5";
 
   src = fetchFromGitHub {
     sha256 = "1pm68agkhrwgrplrfrnbwdcvx5lrivdmqw8pb5gdmm3xppnryji1";
diff --git a/nixpkgs/pkgs/tools/filesystems/mtools/default.nix b/nixpkgs/pkgs/tools/filesystems/mtools/default.nix
index 4618a9b3b79a..f82b008e41d0 100644
--- a/nixpkgs/pkgs/tools/filesystems/mtools/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/mtools/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mtools";
-  version = "4.0.31";
+  version = "4.0.33";
 
   src = fetchurl {
     url = "mirror://gnu/mtools/${pname}-${version}.tar.bz2";
-    sha256 = "11nm5mhsq700f3dzvzjpcik89cfcn38mb249yc0sjbwggwkrk2ak";
+    sha256 = "0m5rx8djvg4jfvdgs4dxjkfd2na55wkdpid9xa32yc103s70zc8w";
   };
 
   patches = lib.optional stdenv.isDarwin ./UNUSED-darwin.patch;
diff --git a/nixpkgs/pkgs/tools/filesystems/reiser4progs/default.nix b/nixpkgs/pkgs/tools/filesystems/reiser4progs/default.nix
index 961a286729a8..f833d562972a 100644
--- a/nixpkgs/pkgs/tools/filesystems/reiser4progs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/reiser4progs/default.nix
@@ -1,9 +1,8 @@
 {lib, stdenv, fetchurl, libaal}:
 
-let version = "2.0.4"; in
 stdenv.mkDerivation rec {
   pname = "reiser4progs";
-  inherit version;
+  version = "2.0.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/reiser4/reiser4-utils/${pname}-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/tools/filesystems/reiserfsprogs/default.nix b/nixpkgs/pkgs/tools/filesystems/reiserfsprogs/default.nix
index dc97cdb652e2..c6583410ff3c 100644
--- a/nixpkgs/pkgs/tools/filesystems/reiserfsprogs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/reiserfsprogs/default.nix
@@ -1,9 +1,8 @@
 { lib, stdenv, fetchurl, libuuid, autoreconfHook }:
 
-let version = "3.6.24"; in
 stdenv.mkDerivation rec {
   pname = "reiserfsprogs";
-  inherit version;
+  version = "3.6.24";
 
   src = fetchurl {
     url = "https://www.kernel.org/pub/linux/kernel/people/jeffm/reiserfsprogs/v${version}/${pname}-${version}.tar.xz";
diff --git a/nixpkgs/pkgs/tools/filesystems/smbnetfs/default.nix b/nixpkgs/pkgs/tools/filesystems/smbnetfs/default.nix
index 3bbff2903bc7..bb042a95ecc4 100644
--- a/nixpkgs/pkgs/tools/filesystems/smbnetfs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/smbnetfs/default.nix
@@ -18,7 +18,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     downloadPage = "https://sourceforge.net/projects/smbnetfs/files/smbnetfs";
     updateWalker = true;
-    inherit version;
     homepage = "https://sourceforge.net/projects/smbnetfs/";
   };
 }
diff --git a/nixpkgs/pkgs/tools/filesystems/squashfs-tools-ng/default.nix b/nixpkgs/pkgs/tools/filesystems/squashfs-tools-ng/default.nix
index 8661740d8074..cb4f3820bcc0 100644
--- a/nixpkgs/pkgs/tools/filesystems/squashfs-tools-ng/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/squashfs-tools-ng/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "squashfs-tools-ng";
-  version = "1.1.1";
+  version = "1.1.2";
 
   src = fetchurl {
     url = "https://infraroot.at/pub/squashfs/squashfs-tools-ng-${version}.tar.xz";
-    sha256 = "07c8vpzgwvqr9ycww1769ya40cf077c6igdg1b4akwszz2nw0bxq";
+    sha256 = "0hlrbiy8xmccczi11ml0lzmg3946l9ck5wpfyw03wn5zgvx29zja";
   };
 
   nativeBuildInputs = [ doxygen graphviz pkg-config perl ];
diff --git a/nixpkgs/pkgs/tools/filesystems/ubidump/default.nix b/nixpkgs/pkgs/tools/filesystems/ubidump/default.nix
index 6a6409ad3251..bf141c8d94d7 100644
--- a/nixpkgs/pkgs/tools/filesystems/ubidump/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/ubidump/default.nix
@@ -14,7 +14,7 @@ python3.pkgs.buildPythonApplication rec {
 
   propagatedBuildInputs = with python3.pkgs; [ crcmod python-lzo ];
 
-  phases = [ "unpackPhase" "patchPhase" "installPhase" "installCheckPhase" ];
+  dontBuild = true;
 
   patchPhase = ''
     sed -i '1s;^;#!${python3.interpreter}\n;' ubidump.py
diff --git a/nixpkgs/pkgs/tools/filesystems/yandex-disk/default.nix b/nixpkgs/pkgs/tools/filesystems/yandex-disk/default.nix
index d2779e2b4c59..e837350abd6f 100644
--- a/nixpkgs/pkgs/tools/filesystems/yandex-disk/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/yandex-disk/default.nix
@@ -4,18 +4,18 @@ let
   p = if stdenv.is64bit then {
       arch = "x86_64";
       gcclib = "${stdenv.cc.cc.lib}/lib64";
-      sha256 = "14bpc5ddhxvgfxkxhj5q9z443s7z4nn1zf4k1hxj7rbf13rcpg00";
+      sha256 = "e4f579963199f05476657f0066beaa32d1261aef2203382f3919e1ed4bc4594e";
     }
     else {
       arch = "i386";
       gcclib = "${stdenv.cc.cc.lib}/lib";
-      sha256 = "1s829q8gy9xgz0jm7w70aljqs2h49x402blqfr9zvn806aprmrm5";
+      sha256 = "69113bf33ba0c57a363305b76361f2866c3b8394b173eed0f49db1f50bfe0373";
     };
 in
 stdenv.mkDerivation rec {
 
   pname = "yandex-disk";
-  version = "0.1.5.1039";
+  version = "0.1.6.1074";
 
   src = fetchurl {
     url = "https://repo.yandex.ru/yandex-disk/rpm/stable/${p.arch}/${pname}-${version}-1.fedora.${p.arch}.rpm";
diff --git a/nixpkgs/pkgs/tools/filesystems/zfstools/default.nix b/nixpkgs/pkgs/tools/filesystems/zfstools/default.nix
index ecc4b1184867..feb5b23df52a 100644
--- a/nixpkgs/pkgs/tools/filesystems/zfstools/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/zfstools/default.nix
@@ -1,9 +1,8 @@
 { lib, stdenv, fetchFromGitHub, ruby, zfs }:
 
-let version = "0.3.6"; in
 stdenv.mkDerivation rec {
   pname = "zfstools";
-  inherit version;
+  version = "0.3.6";
 
   src = fetchFromGitHub {
     sha256 = "16lvw3xbmxp2pr8nixqn7lf4504zaaxvbbdnjkv4dggwd4lsdjyg";
diff --git a/nixpkgs/pkgs/tools/games/amidst/default.nix b/nixpkgs/pkgs/tools/games/minecraft/amidst/default.nix
index 8ec65a1dd391..8ec65a1dd391 100644
--- a/nixpkgs/pkgs/tools/games/amidst/default.nix
+++ b/nixpkgs/pkgs/tools/games/minecraft/amidst/default.nix
diff --git a/nixpkgs/pkgs/tools/games/minecraft/fabric-installer/default.nix b/nixpkgs/pkgs/tools/games/minecraft/fabric-installer/default.nix
new file mode 100644
index 000000000000..ef978875049e
--- /dev/null
+++ b/nixpkgs/pkgs/tools/games/minecraft/fabric-installer/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, stdenv
+, fetchurl
+, makeWrapper
+, jre }:
+
+stdenv.mkDerivation rec {
+  pname = "fabric-installer";
+  version = "0.7.4";
+
+  src = fetchurl {
+    url = "https://maven.fabricmc.net/net/fabricmc/fabric-installer/${version}/fabric-installer-${version}.jar";
+    sha256 = "0s3nmwpq1qg90c27qh4anvvsg4yzsgcp6kwsb35fsiaaakxn0b8r";
+  };
+
+  dontUnpack = true;
+
+  nativeBuildInputs = [ jre makeWrapper ];
+
+  installPhase = ''
+    mkdir -p $out/{bin,lib/fabric}
+
+    cp $src $out/lib/fabric/fabric-installer.jar
+    makeWrapper ${jre}/bin/java $out/bin/fabric-installer \
+      --add-flags "-jar $out/lib/fabric/fabric-installer.jar"
+  '';
+
+  meta = with lib; {
+    homepage = "https://fabricmc.net/";
+    description = "A lightweight, experimental modding toolchain for Minecraft";
+    license = licenses.asl20;
+    maintainers = [ maintainers.ivar ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/games/minecraft/optifine/default.nix b/nixpkgs/pkgs/tools/games/minecraft/optifine/default.nix
new file mode 100644
index 000000000000..06425e6b67ef
--- /dev/null
+++ b/nixpkgs/pkgs/tools/games/minecraft/optifine/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, stdenv
+, fetchurl
+, makeWrapper
+, jre }:
+
+stdenv.mkDerivation rec {
+  pname = "optifine";
+  version = "1.16.5_HD_U_G8";
+
+  src = fetchurl {
+    url = "https://optifine.net/download?f=OptiFine_${version}.jar";
+    sha256 = "0ks91d6n4vkgb5ykdrc67br2c69nqjr0xhp7rrkybg24xn8bqxiw";
+  };
+
+  dontUnpack = true;
+
+  nativeBuildInputs = [ jre makeWrapper ];
+
+  installPhase = ''
+    mkdir -p $out/{bin,lib/optifine}
+    cp $src $out/lib/optifine/optifine.jar
+
+    makeWrapper ${jre}/bin/java $out/bin/optifine \
+      --add-flags "-jar $out/lib/optifine/optifine.jar"
+  '';
+
+  meta = with lib; {
+    homepage = "https://optifine.net/";
+    description = "A Minecraft optimization mod";
+    longDescription = ''
+      OptiFine is a Minecraft optimization mod.
+      It allows Minecraft to run faster and look better with full support for HD textures and many configuration options.
+    '';
+    license = licenses.unfree;
+    maintainers = [ maintainers.ivar ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/graphics/argyllcms/default.nix b/nixpkgs/pkgs/tools/graphics/argyllcms/default.nix
index 9dc2ad4d5f57..8ebccd8047ae 100644
--- a/nixpkgs/pkgs/tools/graphics/argyllcms/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/argyllcms/default.nix
@@ -1,12 +1,10 @@
 { stdenv, fetchzip, jam, unzip, libX11, libXxf86vm, libXrandr, libXinerama
 , libXrender, libXext, libtiff, libjpeg, libpng, libXScrnSaver, writeText
 , libXdmcp, libXau, lib, openssl }:
-let
-  version = "2.1.2";
- in
+
 stdenv.mkDerivation rec {
   pname = "argyllcms";
-  inherit version;
+  version = "2.1.2";
 
   src = fetchzip {
     # Kind of flacky URL, it was reaturning 406 and inconsistent binaries for a
diff --git a/nixpkgs/pkgs/tools/graphics/briss/default.nix b/nixpkgs/pkgs/tools/graphics/briss/default.nix
index b554ac9b3c0e..07f7b63ad7d4 100644
--- a/nixpkgs/pkgs/tools/graphics/briss/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/briss/default.nix
@@ -2,17 +2,12 @@
 
 { lib, stdenv, fetchurl, jre, makeWrapper }:
 
-let
-
-  version = "0.9";
-  sha256 = "45dd668a9ceb9cd59529a9fefe422a002ee1554a61be07e6fc8b3baf33d733d9";
-
-in stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "briss";
-  inherit version;
+  version = "0.9";
   src = fetchurl {
     url = "mirror://sourceforge/briss/briss-${version}.tar.gz";
-    inherit sha256;
+    sha256 = "45dd668a9ceb9cd59529a9fefe422a002ee1554a61be07e6fc8b3baf33d733d9";
   };
 
   nativeBuildInputs = [makeWrapper];
diff --git a/nixpkgs/pkgs/tools/graphics/convchain/default.nix b/nixpkgs/pkgs/tools/graphics/convchain/default.nix
index 714cdd656df1..20f29b2a0ad5 100644
--- a/nixpkgs/pkgs/tools/graphics/convchain/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/convchain/default.nix
@@ -31,7 +31,6 @@ stdenv.mkDerivation rec {
   '';
   buildInputs = [mono];
   meta = {
-    inherit version;
     description = "Bitmap generation from a single example with convolutions and MCMC";
     license = lib.licenses.mit;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/tools/graphics/cuneiform/default.nix b/nixpkgs/pkgs/tools/graphics/cuneiform/default.nix
index ac6481cc6251..3d7608ac094c 100644
--- a/nixpkgs/pkgs/tools/graphics/cuneiform/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/cuneiform/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
 
   patches = [
   (fetchurl {
-    url = "https://git.archlinux.org/svntogit/community.git/plain/cuneiform/trunk/build-fix.patch?id=a2ec92f05de006b56d16ac6a6c370d54a554861a";
+    url = "https://raw.githubusercontent.com/archlinux/svntogit-community/a2ec92f05de006b56d16ac6a6c370d54a554861a/cuneiform/trunk/build-fix.patch";
     sha256 = "19cmrlx4khn30qqrpyayn7bicg8yi0wpz1x1bvqqrbvr3kwldxyj";
   })
   ];
diff --git a/nixpkgs/pkgs/tools/graphics/ditaa/default.nix b/nixpkgs/pkgs/tools/graphics/ditaa/default.nix
index 79a24ed3841c..a22f402b5d17 100644
--- a/nixpkgs/pkgs/tools/graphics/ditaa/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/ditaa/default.nix
@@ -1,18 +1,18 @@
 { lib, stdenv, fetchurl, jre }:
 
 stdenv.mkDerivation rec {
-  name = "ditaa-0.11.0";
+  pname = "ditaa";
+  version = "0.11.0";
 
   src = fetchurl {
-    url = "https://github.com/stathissideris/ditaa/releases/download/v0.11.0/ditaa-0.11.0-standalone.jar";
+    url = "https://github.com/stathissideris/ditaa/releases/download/v${version}/ditaa-${version}-standalone.jar";
     sha256 = "1acnl7khz8aasg230nbsx9dyf8716scgb5l3679cb2bdzxisl64l";
   };
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   installPhase = ''
-    mkdir -p "$out/bin"
-    mkdir -p "$out/lib"
+    mkdir -p $out/bin $out/lib
 
     cp ${src} "$out/lib/ditaa.jar"
 
diff --git a/nixpkgs/pkgs/tools/graphics/facedetect/default.nix b/nixpkgs/pkgs/tools/graphics/facedetect/default.nix
index 257de05a898a..26a9b3e24bd5 100644
--- a/nixpkgs/pkgs/tools/graphics/facedetect/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/facedetect/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ python2Packages.python python2Packages.wrapPython ];
   pythonPath = [ python2Packages.numpy python2Packages.opencv4 ];
 
-  phases = [ "unpackPhase" "patchPhase" "installPhase" ];
+  dontConfigure = true;
 
   patchPhase = ''
     substituteInPlace facedetect \
diff --git a/nixpkgs/pkgs/tools/graphics/gmic/default.nix b/nixpkgs/pkgs/tools/graphics/gmic/default.nix
index 37b398ef1c62..d12a213a31e5 100644
--- a/nixpkgs/pkgs/tools/graphics/gmic/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/gmic/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gmic";
-  version = "2.9.7";
+  version = "2.9.8";
 
   outputs = [ "out" "lib" "dev" "man" ];
 
   src = fetchurl {
     url = "https://gmic.eu/files/source/gmic_${version}.tar.gz";
-    sha256 = "sha256-lCU3SH6nIhQSMFeds81DMTaEKcDjPLOP7hsXqulVfxY=";
+    sha256 = "sha256-GNa7xzGuO02oplasGJR2eTsRGp3Rn3LbIxLwdN983II=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/graphics/lsix/default.nix b/nixpkgs/pkgs/tools/graphics/lsix/default.nix
new file mode 100644
index 000000000000..ba07e2886b53
--- /dev/null
+++ b/nixpkgs/pkgs/tools/graphics/lsix/default.nix
@@ -0,0 +1,36 @@
+{ lib, stdenvNoCC, fetchFromGitHub, makeWrapper, imagemagick }:
+
+stdenvNoCC.mkDerivation rec {
+  pname = "lsix";
+  version = "1.7.4";
+
+  src = fetchFromGitHub {
+    owner = "hackerb9";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-mOueSNhf1ywG4k1kRODBaWRjy0L162BAO1HRPaMMbFM=";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm755 lsix -t $out/bin
+
+    runHook postInstall
+  '';
+
+  postFixup = ''
+    wrapProgram $out/bin/lsix \
+      --prefix PATH : ${lib.makeBinPath [ imagemagick ]}
+  '';
+
+  meta = with lib; {
+    description = "Shows thumbnails in terminal using sixel graphics";
+    homepage = "https://github.com/hackerb9/lsix";
+    license = licenses.gpl3Only;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ kidonng ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/graphics/mangohud/default.nix b/nixpkgs/pkgs/tools/graphics/mangohud/default.nix
index 888a9a1e3a72..6c5da89b85b7 100644
--- a/nixpkgs/pkgs/tools/graphics/mangohud/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/mangohud/default.nix
@@ -46,14 +46,14 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "mangohud";
-  version = "0.6.4";
+  version = "0.6.5";
 
   src = fetchFromGitHub {
     owner = "flightlessmango";
     repo = "MangoHud";
     rev = "v${version}";
     fetchSubmodules = true;
-    sha256 = "S7FtO/VLZp6Al13i6IrEbIzsgP3kZ3VSNBLhwReZLqM=";
+    sha256 = "sha256-RRtti0VnB6SXrpFYaEqANvpgvP/Dkvc+x/I40AXaspU=";
   };
 
   outputs = [ "out" "doc" "man" ];
diff --git a/nixpkgs/pkgs/tools/graphics/mscgen/default.nix b/nixpkgs/pkgs/tools/graphics/mscgen/default.nix
index 6cd8777f5258..6749a193c00e 100644
--- a/nixpkgs/pkgs/tools/graphics/mscgen/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/mscgen/default.nix
@@ -11,12 +11,9 @@
 , zlib
 }:
 
-let
-  version = "0.20";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "mscgen";
-  inherit version;
+  version = "0.20";
 
   src = fetchurl {
     url = "http://www.mcternan.me.uk/mscgen/software/mscgen-src-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/tools/graphics/oxipng/default.nix b/nixpkgs/pkgs/tools/graphics/oxipng/default.nix
index edffad57963e..eab3996811ef 100644
--- a/nixpkgs/pkgs/tools/graphics/oxipng/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/oxipng/default.nix
@@ -1,15 +1,15 @@
 { lib, stdenv, fetchCrate, rustPlatform }:
 
 rustPlatform.buildRustPackage rec {
-  version = "4.0.3";
+  version = "5.0.0";
   pname = "oxipng";
 
   src = fetchCrate {
     inherit version pname;
-    sha256 = "sha256-lvVgoAZMIqmbS6yMul9Hf9PtneEVy+jDs3kU1jSBL2w=";
+    sha256 = "sha256-rTAY+3ViPkOsRjT9FHKnVOEGfLscuBdMAiQq+N9PRNU=";
   };
 
-  cargoSha256 = "sha256-sxvOFxSZCANBa/448SpjoLqk/HjqtaFrOhjrQro446Q=";
+  cargoSha256 = "sha256-Z5tA2bUE/5qGKXP2hIKo6tBegaSUALRzEZ/Xext3EWY=";
 
   doCheck = !stdenv.isAarch64 && !stdenv.isDarwin;
 
diff --git a/nixpkgs/pkgs/tools/graphics/pgf/default.nix b/nixpkgs/pkgs/tools/graphics/pgf/default.nix
index 14cd83c3fcfe..8976700006bc 100644
--- a/nixpkgs/pkgs/tools/graphics/pgf/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/pgf/default.nix
@@ -1,13 +1,9 @@
 { lib, stdenv, fetchurl, autoconf, automake, libtool, dos2unix, libpgf, freeimage, doxygen }:
 
 with lib;
-
-let
-  version = "6.14.12";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "pgf";
-  inherit version;
+  version = "6.14.12";
 
   src = fetchurl {
     url = "mirror://sourceforge/libpgf/pgf-console-src-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/tools/graphics/svgbob/default.nix b/nixpkgs/pkgs/tools/graphics/svgbob/default.nix
index b9784a85b2da..1f72243293e8 100644
--- a/nixpkgs/pkgs/tools/graphics/svgbob/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/svgbob/default.nix
@@ -1,25 +1,16 @@
-{ lib, rustPlatform, fetchFromGitHub }:
+{ lib, rustPlatform, fetchCrate }:
 
 rustPlatform.buildRustPackage rec {
   pname = "svgbob";
-  version = "0.4.2";
+  version = "0.5.3";
 
-  src = fetchFromGitHub {
-    owner = "ivanceras";
-    repo = pname;
-    rev = "0febc4377134a2ea3b3cd43ebdf5ea688a0e7432";
-    sha256 = "1n0w5b3fjgbczy1iw52172x1p3y1bvw1qpz77fkaxkhrkgfd7vwr";
+  src = fetchCrate {
+    inherit version;
+    crateName = "svgbob_cli";
+    sha256 = "1gi8h4wzpi477y1gwi4708pn2kr65934a4dmphbhwppxbw447qiw";
   };
-  sourceRoot = "source/svgbob_cli";
-  postPatch = ''
-    substituteInPlace ../svgbob/src/lib.rs \
-      --replace '#![deny(warnings)]' ""
-  '';
 
-  cargoSha256 = "1jyycr95gjginx6bzmay9b5dbpnbwdqbv13w1qy58znicsmh3v8a";
-
-  # Test tries to build outdated examples
-  doCheck = false;
+  cargoSha256 = "1x8phpllwm12igaachghwq6wgxl7nl8bhh7xybfrmn447viwxhq2";
 
   meta = with lib; {
     description = "Convert your ascii diagram scribbles into happy little SVG";
diff --git a/nixpkgs/pkgs/tools/graphics/syntex/default.nix b/nixpkgs/pkgs/tools/graphics/syntex/default.nix
index a076e97d0568..b149333f2eac 100644
--- a/nixpkgs/pkgs/tools/graphics/syntex/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/syntex/default.nix
@@ -25,7 +25,6 @@ stdenv.mkDerivation rec {
   '';
   buildInputs = [mono];
   meta = {
-    inherit version;
     description = "Texture synthesis from examples";
     license = lib.licenses.mit;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/tools/graphics/twilight/default.nix b/nixpkgs/pkgs/tools/graphics/twilight/default.nix
index 7c43063fb810..58d4d0df9133 100644
--- a/nixpkgs/pkgs/tools/graphics/twilight/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/twilight/default.nix
@@ -1,11 +1,9 @@
 { lib, stdenv, fetchFromGitHub
 , libGL, libGLU, freeglut, libX11 }:
 
-let
-  version = "2018-04-19";
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "twilight";
-  inherit version;
+  version = "unstable-2018-04-19";
 
   src = fetchFromGitHub {
     owner = "tweakoz";
diff --git a/nixpkgs/pkgs/tools/graphics/wavefunctioncollapse/default.nix b/nixpkgs/pkgs/tools/graphics/wavefunctioncollapse/default.nix
index f761e2bbde60..2c7ce4272458 100644
--- a/nixpkgs/pkgs/tools/graphics/wavefunctioncollapse/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/wavefunctioncollapse/default.nix
@@ -25,7 +25,6 @@ stdenv.mkDerivation rec {
   '';
   buildInputs = [mono];
   meta = {
-    inherit version;
     description = "A generator of bitmaps that are locally similar to the input bitmap";
     license = lib.licenses.mit;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/tools/graphics/zxing/default.nix b/nixpkgs/pkgs/tools/graphics/zxing/default.nix
index f4eeb50fc03b..18721390a511 100644
--- a/nixpkgs/pkgs/tools/graphics/zxing/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/zxing/default.nix
@@ -24,7 +24,6 @@ stdenv.mkDerivation rec {
     cd "$out/lib/java"; for i in *.jar; do mv "$i" "''${i#*-}"; done
   '';
   meta = {
-    inherit version;
     description = "1D and 2D code reading library";
     license = lib.licenses.asl20;
     maintainers = [lib.maintainers.raskin];
diff --git a/nixpkgs/pkgs/tools/inputmethods/fcitx/wrapper.nix b/nixpkgs/pkgs/tools/inputmethods/fcitx/wrapper.nix
index 28a08e39b225..6e7e71c57132 100644
--- a/nixpkgs/pkgs/tools/inputmethods/fcitx/wrapper.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/fcitx/wrapper.nix
@@ -5,7 +5,7 @@ symlinkJoin {
 
   paths = [ fcitx fcitx-configtool libsForQt5.fcitx-qt5 ] ++ plugins;
 
-  buildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ makeWrapper ];
 
   postBuild = ''
     wrapProgram $out/bin/fcitx \
diff --git a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
index acb2d41e0456..aaef2dd2d084 100644
--- a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ibus-m17n";
-  version = "1.4.5";
+  version = "1.4.6";
 
   src = fetchFromGitHub {
     owner = "ibus";
     repo = "ibus-m17n";
     rev = version;
-    sha256 = "sha256-atsfaoA0V9PPwhPTpHI7b7A5JsDiYHfA+0NlNOKYIPg=";
+    sha256 = "sha256-hdm1ObzN9pFLeO1ujobHxiQYnA+dg9zIp/qho6S0H78=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table-others/default.nix b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table-others/default.nix
index 258ab93689bc..18fc21e98088 100644
--- a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table-others/default.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table-others/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ibus-table-others";
-  version = "1.3.11";
+  version = "1.3.12";
 
   src = fetchurl {
     url = "https://github.com/moebiuscurve/ibus-table-others/releases/download/${version}/${pname}-${version}.tar.gz";
-    sha256 = "0763wnlklcs3d8fk21nkp7dgn4qzqgxh1s24q3kl8gzgng2a88jj";
+    sha256 = "sha256-2k7JtLr+zO71rbTz11CCiIPx+orn0dw/Y8m47WfRDEU=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/tools/inputmethods/interception-tools/default.nix b/nixpkgs/pkgs/tools/inputmethods/interception-tools/default.nix
index 35b3b1e336d3..ad18becfc72f 100644
--- a/nixpkgs/pkgs/tools/inputmethods/interception-tools/default.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/interception-tools/default.nix
@@ -3,23 +3,17 @@
 
 stdenv.mkDerivation rec {
   pname = "interception-tools";
-  version = "0.6.6";
+  version = "0.6.7";
   src = fetchFromGitLab {
     owner = "interception/linux";
     repo = "tools";
     rev = "v${version}";
-    sha256 = "0k9h14a9d65nwvv7pj0kigjgzfv453mm3r4svnxfg1h5lccmy8jj";
+    sha256 = "0wcmppa7092b33wb8vc782day5phf90pc25cn1x7rk0rlw565z36";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
   buildInputs = [ libevdev udev libyamlcpp boost ];
 
-  prePatch = ''
-    substituteInPlace CMakeLists.txt --replace \
-      '"/usr/include/libevdev-1.0"' \
-      "\"$(pkg-config --cflags libevdev | cut -c 3-)\""
-  '';
-
   meta = {
     description = "A minimal composable infrastructure on top of libudev and libevdev";
     homepage = "https://gitlab.com/interception/linux/tools";
diff --git a/nixpkgs/pkgs/tools/inputmethods/skk/skk-dicts/default.nix b/nixpkgs/pkgs/tools/inputmethods/skk/skk-dicts/default.nix
index bc9aa73c2fc6..d165f404f6cb 100644
--- a/nixpkgs/pkgs/tools/inputmethods/skk/skk-dicts/default.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/skk/skk-dicts/default.nix
@@ -33,7 +33,8 @@ stdenv.mkDerivation {
   srcs = [ small medium large edict assoc ];
   nativeBuildInputs = [ skktools ] ++ lib.optional stdenv.isDarwin libiconv;
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
+
   installPhase = ''
     function dictname() {
       src=$1
diff --git a/nixpkgs/pkgs/tools/misc/afetch/default.nix b/nixpkgs/pkgs/tools/misc/afetch/default.nix
new file mode 100644
index 000000000000..aea2ff1ff2b9
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/afetch/default.nix
@@ -0,0 +1,28 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+}:
+
+stdenv.mkDerivation rec {
+  pname = "afetch";
+  version = "2.2.0";
+
+  src = fetchFromGitHub {
+    owner = "13-CF";
+    repo = "afetch";
+    rev = "V${version}";
+    sha256 = "sha256-bHP3DJpgh89AaCX4c1tQGaZ/PiWjArED1rMdszFUq+U=";
+  };
+
+  makeFlags = [
+    "PREFIX=${placeholder "out"}"
+  ];
+
+  meta = with lib; {
+    description = "A fetch program written in C";
+    homepage = "https://github.com/13-CF/afetch";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ dan4ik605743 jk ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/android-tools/default.nix b/nixpkgs/pkgs/tools/misc/android-tools/default.nix
index 69a74e465c91..1654b008aa55 100644
--- a/nixpkgs/pkgs/tools/misc/android-tools/default.nix
+++ b/nixpkgs/pkgs/tools/misc/android-tools/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "android-tools";
-  version = "31.0.0p1";
+  version = "31.0.2";
 
   src = fetchurl {
     url = "https://github.com/nmeum/android-tools/releases/download/${version}/android-tools-${version}.tar.xz";
-    sha256 = "1dn7v10gdx1pi0pkddznd5sdz941qz0x4jww8h2mk50nbyxc792i";
+    sha256 = "sha256-YbO/bCQMsLTQzP72lsVZhuBmV4Q2J9+VD9z2iBrw+NQ=";
   };
 
   nativeBuildInputs = [ cmake perl go ];
diff --git a/nixpkgs/pkgs/tools/misc/autorandr/default.nix b/nixpkgs/pkgs/tools/misc/autorandr/default.nix
index 1d4a3a2b6ec9..793204014541 100644
--- a/nixpkgs/pkgs/tools/misc/autorandr/default.nix
+++ b/nixpkgs/pkgs/tools/misc/autorandr/default.nix
@@ -4,63 +4,59 @@
 , systemd
 , xrandr }:
 
-let
-  python = python3Packages.python;
+stdenv.mkDerivation rec {
+  pname = "autorandr";
   version = "1.11";
-in
-  stdenv.mkDerivation {
-    pname = "autorandr";
-    inherit version;
 
-    buildInputs = [ python ];
-
-    # no wrapper, as autorandr --batch does os.environ.clear()
-    buildPhase = ''
-      substituteInPlace autorandr.py \
-        --replace 'os.popen("xrandr' 'os.popen("${xrandr}/bin/xrandr' \
-        --replace '["xrandr"]' '["${xrandr}/bin/xrandr"]'
-    '';
-
-    outputs = [ "out" "man" ];
-
-    installPhase = ''
-      runHook preInstall
-      make install TARGETS='autorandr' PREFIX=$out
-
-      make install TARGETS='bash_completion' DESTDIR=$out/share/bash-completion/completions
-
-      make install TARGETS='autostart_config' PREFIX=$out DESTDIR=$out
-
-      make install TARGETS='manpage' PREFIX=$man
-
-      ${if systemd != null then ''
-        make install TARGETS='systemd udev' PREFIX=$out DESTDIR=$out \
-          SYSTEMD_UNIT_DIR=/lib/systemd/system \
-          UDEV_RULES_DIR=/etc/udev/rules.d
-        substituteInPlace $out/etc/udev/rules.d/40-monitor-hotplug.rules \
-          --replace /bin/systemctl "/run/current-system/systemd/bin/systemctl"
-      '' else ''
-        make install TARGETS='pmutils' DESTDIR=$out \
-          PM_SLEEPHOOKS_DIR=/lib/pm-utils/sleep.d
-        make install TARGETS='udev' PREFIX=$out DESTDIR=$out \
-          UDEV_RULES_DIR=/etc/udev/rules.d
-      ''}
-
-      runHook postInstall
-    '';
-
-    src = fetchFromGitHub {
-      owner = "phillipberndt";
-      repo = "autorandr";
-      rev = version;
-      sha256 = "0rmnqk2bi6bbd2if1rll37mlzlqxzmnazfffdhcpzskxwyaj4yn5";
-    };
-
-    meta = with lib; {
-      homepage = "https://github.com/phillipberndt/autorandr/";
-      description = "Automatically select a display configuration based on connected devices";
-      license = licenses.gpl3Plus;
-      maintainers = with maintainers; [ coroa globin ];
-      platforms = platforms.unix;
-    };
-  }
+  buildInputs = [ python3Packages.python ];
+
+  # no wrapper, as autorandr --batch does os.environ.clear()
+  buildPhase = ''
+    substituteInPlace autorandr.py \
+      --replace 'os.popen("xrandr' 'os.popen("${xrandr}/bin/xrandr' \
+      --replace '["xrandr"]' '["${xrandr}/bin/xrandr"]'
+  '';
+
+  outputs = [ "out" "man" ];
+
+  installPhase = ''
+    runHook preInstall
+    make install TARGETS='autorandr' PREFIX=$out
+
+    make install TARGETS='bash_completion' DESTDIR=$out/share/bash-completion/completions
+
+    make install TARGETS='autostart_config' PREFIX=$out DESTDIR=$out
+
+    make install TARGETS='manpage' PREFIX=$man
+
+    ${if systemd != null then ''
+      make install TARGETS='systemd udev' PREFIX=$out DESTDIR=$out \
+        SYSTEMD_UNIT_DIR=/lib/systemd/system \
+        UDEV_RULES_DIR=/etc/udev/rules.d
+      substituteInPlace $out/etc/udev/rules.d/40-monitor-hotplug.rules \
+        --replace /bin/systemctl "/run/current-system/systemd/bin/systemctl"
+    '' else ''
+      make install TARGETS='pmutils' DESTDIR=$out \
+        PM_SLEEPHOOKS_DIR=/lib/pm-utils/sleep.d
+      make install TARGETS='udev' PREFIX=$out DESTDIR=$out \
+        UDEV_RULES_DIR=/etc/udev/rules.d
+    ''}
+
+    runHook postInstall
+  '';
+
+  src = fetchFromGitHub {
+    owner = "phillipberndt";
+    repo = "autorandr";
+    rev = version;
+    sha256 = "0rmnqk2bi6bbd2if1rll37mlzlqxzmnazfffdhcpzskxwyaj4yn5";
+  };
+
+  meta = with lib; {
+    homepage = "https://github.com/phillipberndt/autorandr/";
+    description = "Automatically select a display configuration based on connected devices";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ coroa globin ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/bat/default.nix b/nixpkgs/pkgs/tools/misc/bat/default.nix
index 8bc82547eeb9..81b910117f17 100644
--- a/nixpkgs/pkgs/tools/misc/bat/default.nix
+++ b/nixpkgs/pkgs/tools/misc/bat/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , nixosTests
 , rustPlatform
 , fetchFromGitHub
@@ -12,16 +13,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "bat";
-  version = "0.18.1";
+  version = "0.18.2";
 
   src = fetchFromGitHub {
     owner = "sharkdp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-kyl+clL/4uxVaDH/9zPDGQTir4/JVgtHo9kNQ31gXTo=";
+    sha256 = "sha256-Y8CmVOIDPQ9kpggOlKnxLV0oOyNRow0r/nvxNpCtYNU=";
   };
-
-  cargoSha256 = "sha256-j9HbOXiwN4CWv9wMBrNxY3jehh+KRkXlwmDqChNy1Dk=";
+  cargoSha256 = "sha256-MdfBldImyW8QV0P3zPrYT2Vi9zChvXePI2T8tRsrlcQ=";
 
   nativeBuildInputs = [ pkg-config installShellFiles makeWrapper ];
 
@@ -29,7 +29,7 @@ rustPlatform.buildRustPackage rec {
 
   postInstall = ''
     installManPage $releaseDir/build/bat-*/out/assets/manual/bat.1
-    installShellCompletion $releaseDir/build/bat-*/out/assets/completions/bat.{fish,zsh}
+    installShellCompletion $releaseDir/build/bat-*/out/assets/completions/bat.{bash,fish,zsh}
   '';
 
   # Insert Nix-built `less` into PATH because the system-provided one may be too old to behave as
diff --git a/nixpkgs/pkgs/tools/misc/bcunit/default.nix b/nixpkgs/pkgs/tools/misc/bcunit/default.nix
index 099ae294bec9..61fc84fef7e7 100644
--- a/nixpkgs/pkgs/tools/misc/bcunit/default.nix
+++ b/nixpkgs/pkgs/tools/misc/bcunit/default.nix
@@ -20,7 +20,6 @@ stdenv.mkDerivation rec {
   };
 
   meta = with lib; {
-    inherit version;
     description = "A fork of CUnit test framework";
     homepage = "https://gitlab.linphone.org/BC/public/bcunit";
     license = licenses.lgpl2Plus;
diff --git a/nixpkgs/pkgs/tools/misc/bdf2psf/default.nix b/nixpkgs/pkgs/tools/misc/bdf2psf/default.nix
index 5e91756413eb..d6ee17204304 100644
--- a/nixpkgs/pkgs/tools/misc/bdf2psf/default.nix
+++ b/nixpkgs/pkgs/tools/misc/bdf2psf/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bdf2psf";
-  version = "1.203";
+  version = "1.204";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/c/console-setup/bdf2psf_${version}_all.deb";
-    sha256 = "sha256-jQJC3b+HsEeKYRKQUfI2w3xYDJHs9ajfN8lb6Upzgd8=";
+    sha256 = "sha256-oyBkt52mWM2FiaM++s5Uoe7Wd0v1oLM7HjWKDjIonGE=";
   };
 
   nativeBuildInputs = [ dpkg ];
diff --git a/nixpkgs/pkgs/tools/misc/betterdiscordctl/default.nix b/nixpkgs/pkgs/tools/misc/betterdiscordctl/default.nix
index f75f3a6f8223..6a20ebc10c5c 100644
--- a/nixpkgs/pkgs/tools/misc/betterdiscordctl/default.nix
+++ b/nixpkgs/pkgs/tools/misc/betterdiscordctl/default.nix
@@ -1,14 +1,14 @@
-{ lib, stdenv, fetchFromGitHub }:
+{ lib, stdenvNoCC, fetchFromGitHub }:
 
-stdenv.mkDerivation rec {
+stdenvNoCC.mkDerivation rec {
   pname = "betterdiscordctl";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "bb010g";
     repo = "betterdiscordctl";
     rev = "v${version}";
-    sha256 = "1wys3wbcz5hq8275ia2887kr5fzz4b3gkcp56667j9k0p3k3zfac";
+    sha256 = "0p321rfcihz2779sdd6qfgpxgk5yd53d33vq5pvb50dbdgxww0bc";
   };
 
   postPatch = ''
@@ -26,6 +26,12 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
+  doInstallCheck = true;
+
+  installCheckPhase = ''
+    $out/bin/betterdiscordctl --version
+  '';
+
   meta = with lib; {
     homepage = "https://github.com/bb010g/betterdiscordctl";
     description = "A utility for managing BetterDiscord on Linux";
diff --git a/nixpkgs/pkgs/tools/misc/birdfont/default.nix b/nixpkgs/pkgs/tools/misc/birdfont/default.nix
index 57b42952c854..5473fa0e78ce 100644
--- a/nixpkgs/pkgs/tools/misc/birdfont/default.nix
+++ b/nixpkgs/pkgs/tools/misc/birdfont/default.nix
@@ -4,11 +4,11 @@ gobject-introspection, gsettings-desktop-schemas, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "birdfont";
-  version = "2.29.4";
+  version = "2.29.5";
 
   src = fetchurl {
     url = "https://birdfont.org/releases/${pname}-${version}.tar.xz";
-    sha256 = "sha256-caNY6PrsqBrYwC61MxNsf8B9E8it1Ls1d+hdbf8u+o8=";
+    sha256 = "sha256-eIqq4ehUB4lF89ikrHeN5Akq14nxYMxREZzPSVnv+nU=";
   };
 
   nativeBuildInputs = [ python3 pkg-config vala gobject-introspection wrapGAppsHook ];
diff --git a/nixpkgs/pkgs/tools/misc/bitwise/default.nix b/nixpkgs/pkgs/tools/misc/bitwise/default.nix
new file mode 100644
index 000000000000..a7ae6243f453
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/bitwise/default.nix
@@ -0,0 +1,24 @@
+{ lib, stdenv, fetchFromGitHub, ncurses, readline, autoreconfHook }:
+
+stdenv.mkDerivation rec {
+  pname = "bitwise";
+  version = "0.42";
+
+  src = fetchFromGitHub {
+    owner = "mellowcandle";
+    repo = "bitwise";
+    rev = "v${version}";
+    sha256 = "154y0sn3z64z56k84ghsazkyihbkaz40hfwxcxdymnhvhh6m9f3g";
+  };
+
+  buildInputs = [ ncurses readline ];
+  nativeBuildInputs = [ autoreconfHook ];
+
+  meta = with lib; {
+    description = "Terminal based bitwise calculator in curses";
+    homepage = "https://github.com/mellowcandle/bitwise";
+    license = licenses.gpl3Only;
+    maintainers = [ maintainers.whonore ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/bmon/default.nix b/nixpkgs/pkgs/tools/misc/bmon/default.nix
index ca5f99f3b62a..758a42d15385 100644
--- a/nixpkgs/pkgs/tools/misc/bmon/default.nix
+++ b/nixpkgs/pkgs/tools/misc/bmon/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
 
-  buildInputs = [ ncurses libconfuse libnl ];
+  buildInputs = [ ncurses libconfuse ] ++ lib.optional stdenv.isLinux libnl;
 
   preConfigure = ''
     # Must be an absolute path
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     #  - https://github.com/tgraf/bmon/blob/master/LICENSE.BSD
     #  - https://github.com/tgraf/bmon/blob/master/LICENSE.MIT
     license = licenses.bsd2;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = with maintainers; [ bjornfor pSub ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/bonfire/default.nix b/nixpkgs/pkgs/tools/misc/bonfire/default.nix
index a3f1608c3ad1..f71d8a8b8ef3 100644
--- a/nixpkgs/pkgs/tools/misc/bonfire/default.nix
+++ b/nixpkgs/pkgs/tools/misc/bonfire/default.nix
@@ -29,7 +29,7 @@ buildPythonApplication rec {
       --replace "data_files = *.rst, *.txt" ""
   '';
 
-  buildInputs = [ httpretty pytest pytestcov ];
+  buildInputs = [ httpretty pytest pytest-cov ];
 
   preCheck = ''
     # fix compatibility with pytest 4
diff --git a/nixpkgs/pkgs/tools/misc/chezmoi/default.nix b/nixpkgs/pkgs/tools/misc/chezmoi/default.nix
index 5d9790ec2be0..fd289f9cfb8a 100644
--- a/nixpkgs/pkgs/tools/misc/chezmoi/default.nix
+++ b/nixpkgs/pkgs/tools/misc/chezmoi/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "chezmoi";
-  version = "2.1.0";
+  version = "2.1.2";
 
   src = fetchFromGitHub {
     owner = "twpayne";
     repo = "chezmoi";
     rev = "v${version}";
-    sha256 = "sha256-TEY3oEAWnS+iuLgAgR9mp1TaEb+wzlAgN41dgLRdUs4=";
+    sha256 = "sha256-EStR/tmbu95tptB7h3rHxoro87jlhu3i0XwRQNbIBvA=";
   };
 
-  vendorSha256 = "sha256-pr6bMO1klq/V9zkBftLleSRTg3zjl24EuA283M88HY4=";
+  vendorSha256 = "sha256-Geeo/tqF+VJamIzgU1qz0iEjTKE8jwFQLGXPBuN9eN8=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/misc/clac/default.nix b/nixpkgs/pkgs/tools/misc/clac/default.nix
index 4f26b2036a7d..acf9b6b867de 100644
--- a/nixpkgs/pkgs/tools/misc/clac/default.nix
+++ b/nixpkgs/pkgs/tools/misc/clac/default.nix
@@ -19,7 +19,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    inherit version;
     description = "Interactive stack-based calculator";
     homepage = "https://github.com/soveran/clac";
     license = licenses.bsd2;
diff --git a/nixpkgs/pkgs/tools/misc/clasp/default.nix b/nixpkgs/pkgs/tools/misc/clasp/default.nix
index 4fc0d2c2f8cb..401a2006c6f9 100644
--- a/nixpkgs/pkgs/tools/misc/clasp/default.nix
+++ b/nixpkgs/pkgs/tools/misc/clasp/default.nix
@@ -1,12 +1,8 @@
 { lib, stdenv, fetchurl }:
 
-let
-  version = "3.1.4";
-in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "clasp";
-  inherit version;
+  version = "3.1.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/potassco/clasp/${version}/clasp-${version}-source.tar.gz";
diff --git a/nixpkgs/pkgs/tools/misc/cod/default.nix b/nixpkgs/pkgs/tools/misc/cod/default.nix
index dfad9569d2a0..741487c66877 100644
--- a/nixpkgs/pkgs/tools/misc/cod/default.nix
+++ b/nixpkgs/pkgs/tools/misc/cod/default.nix
@@ -2,24 +2,24 @@
 
 buildGoModule rec {
   pname = "cod";
-  version = "unstable-2020-09-10";
+  version = "0.1.0";
 
   src = fetchFromGitHub {
     owner = "dim-an";
     repo = pname;
-    rev = "ae68da08339471dd278d6df79abbfd6fe89a10fe";
-    sha256 = "1l3gn9v8dcy72f5xq9hwbkvkis0vp4dp8qyinsrii3acmhksg9v6";
+    rev = "v${version}";
+    sha256 = "0wi680sxpv0kp1ggy21qp4c4ms79hw4z9w9kvp278p8z3y8wwglr";
   };
 
-  vendorSha256 = "1arllkiz1hk12hq5b2zpg3f8i9lxl66mil5sdv8gnhflmb37vbv3";
+  vendorSha256 = "0ann1fbh8rqys3rwbz5h9mfnvkpqiw5rgkd4c30y99706h2dzv4i";
 
-  buildFlagsArray = [ "-ldflags=-s -w -X main.GitSha=${src.rev}" ];
+  ldflags = [ "-s" "-w" "-X main.GitSha=${src.rev}" ];
 
   doCheck = false;
 
   meta = with lib; {
-    description = "Tool for generating Bash/Zsh autocompletions based on `--help` output";
-    homepage = src.meta.homepage;
+    description = "Tool for generating Bash/Fish/Zsh autocompletions based on `--help` output";
+    homepage = "https://github.com/dim-an/cod/";
     license = licenses.asl20;
     maintainers = with maintainers; [ SuperSandro2000 ];
   };
diff --git a/nixpkgs/pkgs/tools/misc/code-minimap/default.nix b/nixpkgs/pkgs/tools/misc/code-minimap/default.nix
index 560ad4604713..cc2d979ca757 100644
--- a/nixpkgs/pkgs/tools/misc/code-minimap/default.nix
+++ b/nixpkgs/pkgs/tools/misc/code-minimap/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "code-minimap";
-  version = "0.6.0";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "wfxr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-nWfvRrKkUrr2owv9sLgORVPYp68/Ibdu/P1VddMb61s=";
+    sha256 = "sha256-eCHmMtndcQJqKmjxhkcLvjMUXApkSnH+7qyG7PDfcwo=";
   };
 
-  cargoSha256 = "sha256-OmWn6Z/r/gXMD4gp/TDo0Hokliq8Qgb354q8ZFpVG2s=";
+  cargoSha256 = "sha256-wKCANWznOJMlQ8T2q39NNNRmgPYMpbkJhXpxojusNsE=";
 
   buildInputs = lib.optional stdenv.isDarwin libiconv;
 
diff --git a/nixpkgs/pkgs/tools/misc/cp437/default.nix b/nixpkgs/pkgs/tools/misc/cp437/default.nix
index ac9282ae4344..c08214ff548b 100644
--- a/nixpkgs/pkgs/tools/misc/cp437/default.nix
+++ b/nixpkgs/pkgs/tools/misc/cp437/default.nix
@@ -1,9 +1,8 @@
 { lib, stdenv, fetchFromGitHub }:
-let version = "0.6";
-in
-stdenv.mkDerivation {
+
+stdenv.mkDerivation rec {
   pname = "cp437";
-  inherit version;
+  version = "0.6";
 
   src = fetchFromGitHub {
     owner = "keaston";
diff --git a/nixpkgs/pkgs/tools/misc/ddccontrol/default.nix b/nixpkgs/pkgs/tools/misc/ddccontrol/default.nix
index b7d0f2c3aad9..2a85c0dc2b8f 100644
--- a/nixpkgs/pkgs/tools/misc/ddccontrol/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ddccontrol/default.nix
@@ -34,6 +34,10 @@ stdenv.mkDerivation rec {
     ddccontrol-db
   ];
 
+  configureFlags = [
+    "--with-systemdsystemunitdir=${placeholder "out"}/etc/systemd/system"
+  ];
+
   prePatch = ''
     oldPath="\$""{datadir}/ddccontrol-db"
     newPath="${ddccontrol-db}/share/ddccontrol-db"
diff --git a/nixpkgs/pkgs/tools/misc/diffoscope/default.nix b/nixpkgs/pkgs/tools/misc/diffoscope/default.nix
index e57caa8cc7f8..88a9846e8352 100644
--- a/nixpkgs/pkgs/tools/misc/diffoscope/default.nix
+++ b/nixpkgs/pkgs/tools/misc/diffoscope/default.nix
@@ -16,11 +16,11 @@ let
 in
 python3Packages.buildPythonApplication rec {
   pname = "diffoscope";
-  version = "177";
+  version = "178";
 
   src = fetchurl {
     url = "https://diffoscope.org/archive/diffoscope-${version}.tar.bz2";
-    sha256 = "sha256-yTOaDhAKtMhQYxolALnuc7FuXoMUOhjmsabtS1FeW/Q=";
+    sha256 = "sha256-uJbTQshf7vRd6EyaaV0itJVrMc/6o+pPXhtUgrjFnzM=";
   };
 
   outputs = [ "out" "man" ];
@@ -72,6 +72,7 @@ python3Packages.buildPythonApplication rec {
     "test_sbin_added_to_path"
     "test_diff_meta"
     "test_diff_meta2"
+    "test_obj_no_differences"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/misc/dijo/default.nix b/nixpkgs/pkgs/tools/misc/dijo/default.nix
index 9a6bd7999212..606bba0dff92 100644
--- a/nixpkgs/pkgs/tools/misc/dijo/default.nix
+++ b/nixpkgs/pkgs/tools/misc/dijo/default.nix
@@ -1,8 +1,8 @@
 { stdenv, lib, rustPlatform, fetchFromGitHub, ncurses, CoreServices }:
-let version = "0.2.7"; in
-rustPlatform.buildRustPackage {
+
+rustPlatform.buildRustPackage rec {
   pname = "dijo";
-  inherit version;
+  version = "0.2.7";
   buildInputs = [ ncurses ] ++ lib.optional stdenv.isDarwin CoreServices;
   src = fetchFromGitHub {
     owner = "NerdyPepper";
diff --git a/nixpkgs/pkgs/tools/misc/diskscan/default.nix b/nixpkgs/pkgs/tools/misc/diskscan/default.nix
index 1e7bbd6bfcec..265218dfcfd5 100644
--- a/nixpkgs/pkgs/tools/misc/diskscan/default.nix
+++ b/nixpkgs/pkgs/tools/misc/diskscan/default.nix
@@ -20,7 +20,6 @@ stdenv.mkDerivation rec {
     description = "Scan HDD/SSD for failed and near failed sectors";
     platforms = with platforms; linux;
     maintainers = with maintainers; [ peterhoeg ];
-    inherit version;
     license = licenses.gpl3;
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/dua/default.nix b/nixpkgs/pkgs/tools/misc/dua/default.nix
index 20288bf3f5e7..0c3d319f2a70 100644
--- a/nixpkgs/pkgs/tools/misc/dua/default.nix
+++ b/nixpkgs/pkgs/tools/misc/dua/default.nix
@@ -1,16 +1,16 @@
-{ lib, stdenv, rustPlatform, fetchFromGitHub, libiconv }:
+{ lib, stdenv, rustPlatform, fetchFromGitHub, libiconv, Foundation }:
 
 rustPlatform.buildRustPackage rec {
   pname = "dua";
-  version = "2.13.1";
+  version = "2.14.2";
 
-  buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
+  buildInputs = lib.optionals stdenv.isDarwin [ libiconv Foundation ];
 
   src = fetchFromGitHub {
     owner = "Byron";
     repo = "dua-cli";
     rev = "v${version}";
-    sha256 = "sha256-6xSRsLM1DD1xMjOGzHMDVLibrJlu9lN9OoSV7B/WMT0=";
+    sha256 = "sha256-gUTDiUH/jlGAGbhOOCa63wfNy5Y8W6VWlSb9E+hQjHY=";
     # Remove unicode file names which leads to different checksums on HFS+
     # vs. other filesystems because of unicode normalisation.
     extraPostFetch = ''
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
     '';
   };
 
-  cargoSha256 = "sha256-udz1EtPchEHxkvvVFnkwSOpFz4XEBGOXRz8qWREyzvc=";
+  cargoSha256 = "sha256-P8QFeP5KD5YeD4Px7OQNwCrvErgT9ytr4OlFkXuPgGU=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/misc/dust/default.nix b/nixpkgs/pkgs/tools/misc/dust/default.nix
index dc8dc5af97c3..85055ccba5eb 100644
--- a/nixpkgs/pkgs/tools/misc/dust/default.nix
+++ b/nixpkgs/pkgs/tools/misc/dust/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "du-dust";
-  version = "0.6.0";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "bootandy";
     repo = "dust";
     rev = "v${version}";
-    sha256 = "sha256-15n8CpyyC41oJRrFlNHYXF5UjOyYPX93Zrq7jcU2DVM=";
+    sha256 = "sha256-SgTEawxuz9gRxSZ9edNz2NwfJWSAwxKXxDJVpU6oTBg=";
     # Remove unicode file names which leads to different checksums on HFS+
     # vs. other filesystems because of unicode normalisation.
     extraPostFetch = ''
@@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
     '';
   };
 
-  cargoSha256 = "sha256-rqNj3EwszSIn2cMmslO6T3K5NxQJ9u56m37TU1GwtVI=";
+  cargoSha256 = "sha256-/kDF1ZOzu32Dwd5fWZGhMlEf65TAKLMPFu+ZnZxOAms=";
 
   doCheck = false;
 
@@ -25,5 +25,6 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://github.com/bootandy/dust";
     license = licenses.asl20;
     maintainers = with maintainers; [ infinisil SuperSandro2000 ];
+    mainProgram = "dust";
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/edid-decode/default.nix b/nixpkgs/pkgs/tools/misc/edid-decode/default.nix
index 99a21e28b075..f39fc1b55243 100644
--- a/nixpkgs/pkgs/tools/misc/edid-decode/default.nix
+++ b/nixpkgs/pkgs/tools/misc/edid-decode/default.nix
@@ -1,9 +1,8 @@
 { lib, stdenv, fetchgit }:
-let
-  version = "2018-12-06";
-in stdenv.mkDerivation {
+
+stdenv.mkDerivation rec {
   pname = "edid-decode-unstable";
-  inherit version;
+  version = "unstable-2018-12-06";
 
   src = fetchgit {
     url = "git://linuxtv.org/edid-decode.git";
diff --git a/nixpkgs/pkgs/tools/misc/edid-generator/default.nix b/nixpkgs/pkgs/tools/misc/edid-generator/default.nix
index 89ac21db5f57..d3abb37b9f47 100644
--- a/nixpkgs/pkgs/tools/misc/edid-generator/default.nix
+++ b/nixpkgs/pkgs/tools/misc/edid-generator/default.nix
@@ -6,11 +6,10 @@
 , zsh
 , modelines ? [] # Modeline "1280x800"   83.50  1280 1352 1480 1680  800 803 809 831 -hsync +vsync
 }:
-let
-  version = "unstable-2018-03-15";
-in stdenv.mkDerivation {
+
+stdenv.mkDerivation rec {
   pname = "edid-generator";
-  inherit version;
+  version = "unstable-2018-03-15";
 
   src = fetchFromGitHub {
     owner = "akatrevorjay";
diff --git a/nixpkgs/pkgs/tools/misc/elfcat/Cargo.lock b/nixpkgs/pkgs/tools/misc/elfcat/Cargo.lock
index e6c694bffb33..c5b48135993f 100644
--- a/nixpkgs/pkgs/tools/misc/elfcat/Cargo.lock
+++ b/nixpkgs/pkgs/tools/misc/elfcat/Cargo.lock
@@ -4,4 +4,4 @@ version = 3
 
 [[package]]
 name = "elfcat"
-version = "0.1.3"
+version = "0.1.4"
diff --git a/nixpkgs/pkgs/tools/misc/elfcat/default.nix b/nixpkgs/pkgs/tools/misc/elfcat/default.nix
index 38b1cc9b64f0..a9691e43c6a9 100644
--- a/nixpkgs/pkgs/tools/misc/elfcat/default.nix
+++ b/nixpkgs/pkgs/tools/misc/elfcat/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "elfcat";
-  version = "0.1.3";
+  version = "0.1.4";
 
   src = fetchFromGitHub {
     owner = "ruslashev";
     repo = pname;
     rev = version;
-    sha256 = "sha256-s56FyRoD2IhgdwEV63jMaB265CodHUlvmrWzmXAmonY=";
+    sha256 = "sha256-gh5JO3vO2FpHiZfaHOODPhRSB9HqZe1ir4g7UEkSUHY=";
   };
 
   cargoLock.lockFile = ./Cargo.lock;
diff --git a/nixpkgs/pkgs/tools/misc/emv/default.nix b/nixpkgs/pkgs/tools/misc/emv/default.nix
index 1dbb5199f754..3e5a348c5823 100644
--- a/nixpkgs/pkgs/tools/misc/emv/default.nix
+++ b/nixpkgs/pkgs/tools/misc/emv/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
     sha256 = "7e0e12afa45ef5ed8025e5f2c6deea0ff5f512644a721f7b1b95b63406a8f7ce";
   };
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   installPhase = ''
     mkdir -pv $out/bin
diff --git a/nixpkgs/pkgs/tools/misc/esphome/dashboard.nix b/nixpkgs/pkgs/tools/misc/esphome/dashboard.nix
index a701fbd73b52..beaffadab97e 100644
--- a/nixpkgs/pkgs/tools/misc/esphome/dashboard.nix
+++ b/nixpkgs/pkgs/tools/misc/esphome/dashboard.nix
@@ -4,11 +4,11 @@
 
 with python3.pkgs; buildPythonPackage rec {
   pname = "esphome-dashboard";
-  version = "20210623.0";
+  version = "20210719.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0fc6xgi1naydm3wgk5lljnf6zggzdk6558cpyqlriw031gqnab77";
+    sha256 = "sha256-gUZut9FsFHZ0zcTg+QDIdsM3EMvNFBawgBnt/Ia1BIc=";
   };
 
   # no tests
diff --git a/nixpkgs/pkgs/tools/misc/esphome/default.nix b/nixpkgs/pkgs/tools/misc/esphome/default.nix
index 945af40a7171..69a67a6e9181 100644
--- a/nixpkgs/pkgs/tools/misc/esphome/default.nix
+++ b/nixpkgs/pkgs/tools/misc/esphome/default.nix
@@ -8,17 +8,21 @@
 }:
 
 let
-  esphome-dashboard = pkgs.callPackage ./dashboard.nix {};
+  python = python3.override {
+    packageOverrides = self: super: {
+      esphome-dashboard = pkgs.callPackage ./dashboard.nix {};
+    };
+  };
 in
-python3.pkgs.buildPythonApplication rec {
+with python.pkgs; buildPythonApplication rec {
   pname = "esphome";
-  version = "1.19.4";
+  version = "1.20.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "029ykjk24h21b0s0gha6kv9pvgallin6marzkb2vfbvr3icsmbz2";
+    sha256 = "sha256-saLcTiWqpxnE+li9ojfrEAh/vjB1c3K4kQzkrBJW3t4=";
   };
 
   patches = [
@@ -32,12 +36,6 @@ python3.pkgs.buildPythonApplication rec {
 
     # drop coverage testing
     sed -i '/--cov/d' pytest.ini
-
-    # migrate use of hypothesis internals to be compatible with hypothesis>=5.32.1
-    # https://github.com/esphome/issues/issues/2021
-    substituteInPlace tests/unit_tests/strategies.py --replace \
-      "@st.defines_strategy_with_reusable_values" \
-      "@st.defines_strategy(force_reusable_values=True)"
   '';
 
   # Remove esptool and platformio from requirements
@@ -49,7 +47,7 @@ python3.pkgs.buildPythonApplication rec {
   # They have validation functions like:
   # - validate_cryptography_installed
   # - validate_pillow_installed
-  propagatedBuildInputs = with python3.pkgs; [
+  propagatedBuildInputs = [
     click
     colorama
     cryptography
@@ -73,7 +71,7 @@ python3.pkgs.buildPythonApplication rec {
     "--set ESPHOME_USE_SUBPROCESS ''"
   ];
 
-  checkInputs = with python3.pkgs; [
+  checkInputs = [
     hypothesis
     mock
     pytest-asyncio
@@ -82,6 +80,13 @@ python3.pkgs.buildPythonApplication rec {
     pytestCheckHook
   ];
 
+  disabledTestPaths = [
+    # requires hypothesis 5.49, we have 6.x
+    # ImportError: cannot import name 'ip_addresses' from 'hypothesis.provisional'
+    "tests/unit_tests/test_core.py"
+    "tests/unit_tests/test_helpers.py"
+  ];
+
   postCheck = ''
     $out/bin/esphome --help > /dev/null
   '';
diff --git a/nixpkgs/pkgs/tools/misc/esptool/default.nix b/nixpkgs/pkgs/tools/misc/esptool/default.nix
index 7c7f91621b82..3fc6e96e228b 100644
--- a/nixpkgs/pkgs/tools/misc/esptool/default.nix
+++ b/nixpkgs/pkgs/tools/misc/esptool/default.nix
@@ -2,13 +2,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "esptool";
-  version = "3.0";
+  version = "3.1";
 
   src = fetchFromGitHub {
     owner = "espressif";
     repo = "esptool";
     rev = "v${version}";
-    sha256 = "1y022qlcdgdx5a88lkc3sqavklz494afbfyh100lp7xfk3f2mjln";
+    sha256 = "sha256-GaGrV8L//pU4kt4HJmY88l5BNtT0IcZox7b24AFjPCI=";
   };
 
   checkInputs = with python3.pkgs;
@@ -31,7 +31,7 @@ python3.pkgs.buildPythonApplication rec {
   meta = with lib; {
     description = "ESP8266 and ESP32 serial bootloader utility";
     homepage = "https://github.com/espressif/esptool";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ dezgeg dotlambda ];
     platforms = platforms.linux;
   };
diff --git a/nixpkgs/pkgs/tools/misc/etcher/default.nix b/nixpkgs/pkgs/tools/misc/etcher/default.nix
index 9bda86db9bf2..d0fae336d9d3 100644
--- a/nixpkgs/pkgs/tools/misc/etcher/default.nix
+++ b/nixpkgs/pkgs/tools/misc/etcher/default.nix
@@ -10,7 +10,7 @@
 
 let
   sha256 = {
-    "x86_64-linux" = "sha256-nGIUOS4LzfeXamcT0uigbQsVkULH2R3bli0DDEpg3ns=";
+    "x86_64-linux" = "sha256-FRZTUOlOK1bIbrHdR9yQv45zMhby3tWbMPpaPPq3L9s=";
     "i686-linux" = "0z6y45sz086njpywg7f0jn6n02qynb1qbi889g2kcgwbfjvmcpm1";
   }."${stdenv.system}";
 
@@ -25,7 +25,7 @@ in
 
 stdenv.mkDerivation rec {
   pname = "etcher";
-  version = "1.5.120";
+  version = "1.5.121";
 
   src = fetchurl {
     url = "https://github.com/balena-io/etcher/releases/download/v${version}/balena-etcher-electron_${version}_${arch}.deb";
diff --git a/nixpkgs/pkgs/tools/misc/fcp/default.nix b/nixpkgs/pkgs/tools/misc/fcp/default.nix
new file mode 100644
index 000000000000..7124e9078457
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/fcp/default.nix
@@ -0,0 +1,33 @@
+{ expect, fetchFromGitHub, lib, rustPlatform, stdenv }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "fcp";
+  version = "0.2.1";
+
+  src = fetchFromGitHub {
+    owner = "svetlitski";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0f242n8w88rikg1srimdifadhggrb2r1z0g65id60ahb4bjm8a0x";
+  };
+
+  cargoSha256 = "0gw7gjfwc4r03rg6z65ml0y37sh4yf716isqs0mb4jqkp7rwfbc9";
+
+  nativeBuildInputs = [ expect ];
+
+  # character_device fails with "File name too long" on darwin
+  doCheck = !stdenv.isDarwin;
+
+  postPatch = ''
+    patchShebangs tests/*.exp
+  '';
+
+  meta = with lib; {
+    description = "A significantly faster alternative to the classic Unix cp(1) command";
+    homepage = "https://github.com/svetlitski/fcp";
+    changelog = "https://github.com/svetlitski/fcp/releases/tag/v${version}";
+    license = licenses.bsd3;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/fend/default.nix b/nixpkgs/pkgs/tools/misc/fend/default.nix
index 6c4160b06e32..4ed308643e56 100644
--- a/nixpkgs/pkgs/tools/misc/fend/default.nix
+++ b/nixpkgs/pkgs/tools/misc/fend/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "fend";
-  version = "0.1.17";
+  version = "0.1.21";
 
   src = fetchFromGitHub {
     owner = "printfn";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Xq2UjeZiKy9BjNQ9xnC7tppEwrEtg8ZN5BVDz1bUOmw=";
+    sha256 = "sha256-LrHZsnW96+QsXuGxWoGqIEKTE86m3tMnh4fpDPIhd1w=";
   };
 
-  cargoSha256 = "sha256-Bf3fYHhpoX05AmTdwwdRU2YRfGVb1EmaGDm75i+Vs2w=";
+  cargoSha256 = "sha256-GZ4Yt5iQkgupJMTYIbvCPtz19985MFf8IDy3ui0M6DE=";
 
   doInstallCheck = true;
 
diff --git a/nixpkgs/pkgs/tools/misc/flameshot/default.nix b/nixpkgs/pkgs/tools/misc/flameshot/default.nix
index f0ed87bcc22b..838572d92973 100644
--- a/nixpkgs/pkgs/tools/misc/flameshot/default.nix
+++ b/nixpkgs/pkgs/tools/misc/flameshot/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "flameshot";
-  version = "0.9.0";
+  version = "0.10.0";
 
   src = fetchFromGitHub {
     owner = "flameshot-org";
     repo = "flameshot";
     rev = "v${version}";
-    sha256 = "sha256-E5J61k1tVpbwlzYHbCY1rf9+GODcJRRAQwb0jR4s7BU=";
+    sha256 = "1m0mx8qhy9ycsqh5dj6c7mwwpbhqxlds31dqdxxk0krwl750smi2";
   };
 
   nativeBuildInputs = [ cmake qttools qtsvg ];
@@ -17,8 +17,8 @@ mkDerivation rec {
   meta = with lib; {
     description = "Powerful yet simple to use screenshot software";
     homepage = "https://github.com/flameshot-org/flameshot";
-    maintainers = [ maintainers.scode ];
-    license = lib.licenses.gpl3Plus;
-    platforms = lib.platforms.linux;
+    maintainers = with maintainers; [ scode ];
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/fsql/default.nix b/nixpkgs/pkgs/tools/misc/fsql/default.nix
index 100e70232321..dac33eaedb30 100644
--- a/nixpkgs/pkgs/tools/misc/fsql/default.nix
+++ b/nixpkgs/pkgs/tools/misc/fsql/default.nix
@@ -19,7 +19,6 @@ buildGoPackage rec {
     license = licenses.mit;
     maintainers = with maintainers; [ pSub ];
     platforms = platforms.unix;
-    inherit version;
   };
 
 }
diff --git a/nixpkgs/pkgs/tools/misc/fwup/default.nix b/nixpkgs/pkgs/tools/misc/fwup/default.nix
index de2b809eea52..69b76cf648d8 100644
--- a/nixpkgs/pkgs/tools/misc/fwup/default.nix
+++ b/nixpkgs/pkgs/tools/misc/fwup/default.nix
@@ -21,17 +21,15 @@
 
 stdenv.mkDerivation rec {
   pname = "fwup";
-  version = "1.8.3";
+  version = "1.8.4";
 
   src = fetchFromGitHub {
     owner = "fhunleth";
     repo = "fwup";
     rev = "v${version}";
-    sha256 = "sha256-ayfcnIZ7MuBsCy1giwmY2D2C6AukwS+fevmXqGa4c1w=";
+    sha256 = "sha256-NaSA3mFWf3C03SAGssMqLT0vr5KMfxD5y/iragGNKjw=";
   };
 
-  patches = [ ./fix-testrunner-darwin.patch ];
-
   nativeBuildInputs = [
     autoreconfHook
     pkg-config
@@ -44,8 +42,7 @@ stdenv.mkDerivation rec {
     libsodium
     xz
     zlib
-  ]
-    ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.isDarwin [
     DiskArbitration
   ];
 
diff --git a/nixpkgs/pkgs/tools/misc/fwup/fix-testrunner-darwin.patch b/nixpkgs/pkgs/tools/misc/fwup/fix-testrunner-darwin.patch
deleted file mode 100644
index b04b436ff5b1..000000000000
--- a/nixpkgs/pkgs/tools/misc/fwup/fix-testrunner-darwin.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/tests/common-orig.sh b/tests/common.sh
-index 1f2673f..79dcf74 100755
---- a/tests/common-orig.sh
-+++ b/tests/common.sh
-@@ -21,20 +21,6 @@ else
- fi
- 
- case "$HOST_OS" in
--    Darwin)
--	# BSD stat
--        STAT_FILESIZE_FLAGS="-f %z"
--
--	# Not -d?
--        BASE64_DECODE=-D
--
--        READLINK=/usr/local/bin/greadlink
--        [ -e $READLINK ] || ( echo "Please run 'brew install coreutils' to install greadlink"; exit 1 )
--        [ -e /usr/local/bin/mdir ] || ( echo "Please run 'brew install mtools' to install mdir"; exit 1 )
--
--        FSCK_FAT=fsck_msdos
--        TIMEOUT=gtimeout
--        ;;
-     FreeBSD|NetBSD|OpenBSD|DragonFly)
- 	# BSD stat
-         STAT_FILESIZE_FLAGS="-f %z"
diff --git a/nixpkgs/pkgs/tools/misc/gibo/default.nix b/nixpkgs/pkgs/tools/misc/gibo/default.nix
index 70d0eb19ca85..6ee4698d750c 100644
--- a/nixpkgs/pkgs/tools/misc/gibo/default.nix
+++ b/nixpkgs/pkgs/tools/misc/gibo/default.nix
@@ -11,8 +11,6 @@ stdenv.mkDerivation rec {
     sha256 = "07j3sv9ar9l074krajw8nfmsfmdp836irsbd053dbqk2v880gfm6";
   };
 
-  phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
-
   installPhase = ''
     mkdir -p $out/bin $out/share/bash-completion/completions
     cp gibo $out/bin
diff --git a/nixpkgs/pkgs/tools/misc/gitlint/default.nix b/nixpkgs/pkgs/tools/misc/gitlint/default.nix
index 014cc76e7138..267cdee72338 100644
--- a/nixpkgs/pkgs/tools/misc/gitlint/default.nix
+++ b/nixpkgs/pkgs/tools/misc/gitlint/default.nix
@@ -2,12 +2,41 @@
 , buildPythonApplication
 , fetchFromGitHub
 , gitMinimal
-, arrow
-, click
-, sh
-, wheel
+, python3
 }:
 
+let
+  py = python3.override {
+    packageOverrides = self: super: {
+
+      click = super.click.overridePythonAttrs (oldAttrs: rec {
+        version = "7.1.2";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "06kbzd6sjfkqan3miwj9wqyddfxc2b6hi7p5s4dvqjb3gif2bdfj";
+        };
+      });
+
+      arrow = super.arrow.overridePythonAttrs (oldAttrs: rec {
+        version = "1.0.3";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "0793badh4hgbk2c5g70hmbl7n3d4g5d87bcflld0w9rjwy59r71r";
+        };
+      });
+
+      sh = super.sh.overridePythonAttrs (oldAttrs: rec {
+        version = "1.14.1";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "13hxgifab9ichla13qaa7sh8r0il7vs1r21js72s0n355zr9mair";
+        };
+      });
+    };
+  };
+in
+with py.pkgs;
+
 buildPythonApplication rec {
   pname = "gitlint";
   version = "0.15.1";
@@ -19,7 +48,9 @@ buildPythonApplication rec {
     sha256 = "sha256-CqmE4V+svSuQAsoX0I3NpUqPU5CQf3fyCHJPrjUjHF4=";
   };
 
-  nativeBuildInputs = [ wheel ];
+  nativeBuildInputs = [
+    wheel
+  ];
 
   propagatedBuildInputs = [
     arrow
@@ -35,10 +66,10 @@ buildPythonApplication rec {
     gitMinimal
   ];
 
-  meta = {
+  meta = with lib; {
     description = "Linting for your git commit messages";
-    homepage = "http://jorisroovers.github.io/gitlint";
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ ethancedwards8 ];
+    homepage = "https://jorisroovers.com/gitlint/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ethancedwards8 fab ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/goreleaser/default.nix b/nixpkgs/pkgs/tools/misc/goreleaser/default.nix
index 34195c2fffe0..5e805920b68a 100644
--- a/nixpkgs/pkgs/tools/misc/goreleaser/default.nix
+++ b/nixpkgs/pkgs/tools/misc/goreleaser/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "goreleaser";
-  version = "0.173.1";
+  version = "0.173.2";
 
   src = fetchFromGitHub {
     owner = "goreleaser";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-v3Sln1qtYDdWCWJSKErxUoPAUzwWrTYM0j5X+mz+1xo=";
+    sha256 = "sha256-X7Tj50A0CwkGUyKGsCj6LBAlNZwMhFk/gDEgG1KNjx0=";
   };
 
   vendorSha256 = "sha256-yX8Ffdzq22JHA2owtHurH8AEgqPgPjz+N06oD5ZiZmM=";
diff --git a/nixpkgs/pkgs/tools/misc/gparted/default.nix b/nixpkgs/pkgs/tools/misc/gparted/default.nix
index f661f2cf97d5..08e4641fb4c1 100644
--- a/nixpkgs/pkgs/tools/misc/gparted/default.nix
+++ b/nixpkgs/pkgs/tools/misc/gparted/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gparted";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/gparted/${pname}-${version}.tar.gz";
-    sha256 = "sha256-jcGAJF3Z6kXm4vS8aVEvGH4Ivn95nJioJaCwTBYcvSo=";
+    sha256 = "sha256-Xu4ubXSxXvlrE7OiMQyGjtIpjgM0ECHn0SpamKHR4Qk=";
   };
 
   # Tries to run `pkexec --version` to get version.
diff --git a/nixpkgs/pkgs/tools/misc/gpick/default.nix b/nixpkgs/pkgs/tools/misc/gpick/default.nix
new file mode 100644
index 000000000000..0d39bb810b93
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/gpick/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchFromGitHub, cmake, glib, boost, pkg-config, gtk3, ragel, lua, lib }:
+
+stdenv.mkDerivation rec {
+  pname = "gpick";
+  version = "0.2.6";
+
+  src = fetchFromGitHub {
+    owner = "thezbyg";
+    repo = pname;
+    rev = "${pname}-${version}";
+    sha256 = "sha256-Z67EJRtKJZLoTUtdMttVTLkzTV2F5rKZ96vaothLiFo=";
+  };
+
+  nativeBuildInputs = [ cmake pkg-config ];
+  NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
+  buildInputs = [ boost gtk3 ragel lua ];
+
+  meta = with lib; {
+    description = "Advanced color picker written in C++ using GTK+ toolkit";
+    homepage = "http://www.gpick.org/";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.vanilla ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/gringo/default.nix b/nixpkgs/pkgs/tools/misc/gringo/default.nix
index f08bad03916a..87902de0cb03 100644
--- a/nixpkgs/pkgs/tools/misc/gringo/default.nix
+++ b/nixpkgs/pkgs/tools/misc/gringo/default.nix
@@ -3,13 +3,9 @@
   libcxx
 }:
 
-let
-  version = "4.5.4";
-in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "gringo";
-  inherit version;
+  version = "4.5.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/potassco/gringo/${version}/gringo-${version}-source.tar.gz";
diff --git a/nixpkgs/pkgs/tools/misc/grub/2.0x.nix b/nixpkgs/pkgs/tools/misc/grub/2.0x.nix
index fcf29beb1882..d9c4ceeca2c0 100644
--- a/nixpkgs/pkgs/tools/misc/grub/2.0x.nix
+++ b/nixpkgs/pkgs/tools/misc/grub/2.0x.nix
@@ -39,7 +39,7 @@ let
   canEfi = any (system: stdenv.hostPlatform.system == system) (mapAttrsToList (name: _: name) efiSystemsBuild);
   inPCSystems = any (system: stdenv.hostPlatform.system == system) (mapAttrsToList (name: _: name) pcSystems);
 
-  version = "2.06-rc1";
+  version = "2.06";
 
 in (
 
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
   src = fetchgit {
     url = "git://git.savannah.gnu.org/grub.git";
     rev = "${pname}-${version}";
-    sha256 = "1ngc960g4w91rg13l724v6nlj6fq1adxp6is2mrq4bnp7sm9mysa";
+    sha256 = "1vkxr6b4p7h259vayjw8bfgqj57x68byy939y4bmyaz6g7fgrv0f";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/tools/misc/grub/default.nix b/nixpkgs/pkgs/tools/misc/grub/default.nix
index 6d747bf8c6e7..2371bdb0e055 100644
--- a/nixpkgs/pkgs/tools/misc/grub/default.nix
+++ b/nixpkgs/pkgs/tools/misc/grub/default.nix
@@ -18,6 +18,10 @@ stdenv.mkDerivation {
   ++ map fetchurl (import ./grub1.patches.nix)
   ;
 
+  preConfigure = ''
+    substituteInPlace ./configure.ac --replace 'AC_PREREQ(2.61)' 'AC_PREREQ(2.64)'
+  '';
+
   # autoreconfHook required for the splashimage patch.
   nativeBuildInputs = [ autoreconfHook ];
   buildInputs = [ texinfo ];
diff --git a/nixpkgs/pkgs/tools/misc/hdaps-gl/default.nix b/nixpkgs/pkgs/tools/misc/hdaps-gl/default.nix
index 41de7ef5d28b..8ea863f46417 100644
--- a/nixpkgs/pkgs/tools/misc/hdaps-gl/default.nix
+++ b/nixpkgs/pkgs/tools/misc/hdaps-gl/default.nix
@@ -1,24 +1,23 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook, freeglut, libGL, libGLU }:
 
-let version = "0.0.7"; in
-stdenv.mkDerivation {
-      pname = "hdaps-gl";
-      inherit version;
-      src = fetchFromGitHub {
-            owner = "linux-thinkpad";
-            repo = "hdaps-gl";
-            rev = version;
-            sha256 = "0jywsrcr1wzkjig5cvz014c3r026sbwscbkv7zh1014lkjm0kyyh";
-      };
+stdenv.mkDerivation rec {
+  pname = "hdaps-gl";
+  version = "0.0.7";
+  src = fetchFromGitHub {
+    owner = "linux-thinkpad";
+    repo = "hdaps-gl";
+    rev = version;
+    sha256 = "0jywsrcr1wzkjig5cvz014c3r026sbwscbkv7zh1014lkjm0kyyh";
+  };
 
-      nativeBuildInputs = [ autoreconfHook ];
-      buildInputs = [ freeglut libGL libGLU ];
+  nativeBuildInputs = [ autoreconfHook ];
+  buildInputs = [ freeglut libGL libGLU ];
 
-      meta = with lib; {
-            description = "GL-based laptop model that rotates in real-time via hdaps";
-            homepage = "https://github.com/linux-thinkpad/hdaps-gl";
-            license = licenses.gpl2;
-            platforms = platforms.linux;
-            maintainers = [ maintainers.symphorien ];
-      };
+  meta = with lib; {
+    description = "GL-based laptop model that rotates in real-time via hdaps";
+    homepage = "https://github.com/linux-thinkpad/hdaps-gl";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.symphorien ];
+  };
 }
diff --git a/nixpkgs/pkgs/tools/misc/hexyl/default.nix b/nixpkgs/pkgs/tools/misc/hexyl/default.nix
index 3f11490fcc4d..dcab5f249fe5 100644
--- a/nixpkgs/pkgs/tools/misc/hexyl/default.nix
+++ b/nixpkgs/pkgs/tools/misc/hexyl/default.nix
@@ -1,17 +1,17 @@
 { lib, fetchFromGitHub, rustPlatform }:
 
 rustPlatform.buildRustPackage rec {
-  pname   = "hexyl";
-  version = "0.8.0";
+  pname = "hexyl";
+  version = "0.9.0";
 
   src = fetchFromGitHub {
-    owner  = "sharkdp";
-    repo   = pname;
-    rev    = "v${version}";
-    sha256 = "0aj2sysl0spf5zlcd5kfzlw97w7dzf9x93pv0d1v9blnbd1rz7lm";
+    owner = "sharkdp";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-hLDx5OzCE5iA492V3+dhaav2l8/rOVWyskrU4Gz1hf4=";
   };
 
-  cargoSha256 = "08hn0csw12xaag95gb5rj4q7k2zyy9j9bf4iw3b0r3ndh66qqra2";
+  cargoSha256 = "sha256-CGaCMrShagK4dAdwJtaeUMJlYOlG/cH+6E1QDYGrqL0=";
 
   meta = with lib; {
     changelog = "https://github.com/sharkdp/hexyl/releases/tag/v${version}";
@@ -22,9 +22,8 @@ rustPlatform.buildRustPackage rec {
       printable ASCII characters, ASCII whitespace characters, other ASCII
       characters and non-ASCII).
     '';
-    homepage    = "https://github.com/sharkdp/hexyl";
-    license     = with licenses; [ asl20 /* or */ mit ];
-    maintainers = with maintainers; [ dywedir ];
-    platforms   = platforms.linux ++ platforms.darwin;
+    homepage = "https://github.com/sharkdp/hexyl";
+    license = with licenses; [ asl20 /* or */ mit ];
+    maintainers = with maintainers; [ dywedir SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/idutils/default.nix b/nixpkgs/pkgs/tools/misc/idutils/default.nix
index ac64fe9e8bc4..e43ab2ae8797 100644
--- a/nixpkgs/pkgs/tools/misc/idutils/default.nix
+++ b/nixpkgs/pkgs/tools/misc/idutils/default.nix
@@ -1,27 +1,29 @@
-{ fetchurl, lib, stdenv, emacs }:
+{ fetchurl, lib, stdenv, emacs, gnulib, autoconf, bison, automake, gettext, gperf, texinfo, perl, rsync, gawk}:
 
 stdenv.mkDerivation rec {
-  name = "idutils-4.6";
+  pname = "idutils";
+  version = "4.6";
 
   src = fetchurl {
-    url = "mirror://gnu/idutils/${name}.tar.xz";
+    url = "mirror://gnu/idutils/idutils-${version}.tar.xz";
     sha256 = "1hmai3422iaqnp34kkzxdnywl7n7pvlxp11vrw66ybxn9wxg90c1";
   };
 
-  preConfigure =
-    ''
-       # Fix for building on Glibc 2.16.  Won't be needed once the
-       # gnulib in idutils is updated.
-       sed -i '/gets is a security hole/d' lib/stdio.in.h
+  preConfigure = ''
+    # replace embedded gnulib tests with those from gnulib package
+    bash -O extglob -c "cd gnulib-tests; rm -r !(Makefile.am)"
+    substituteInPlace ./configure.ac --replace "AC_PREREQ(2.61)" "AC_PREREQ(2.64)"
+    ./bootstrap --force --gnulib-srcdir=${gnulib} --skip-po --bootstrap-sync --no-git
     '';
 
   buildInputs = lib.optional stdenv.isLinux emacs;
+  nativeBuildInputs = [ gnulib autoconf bison automake gettext gperf texinfo perl rsync gawk ];
 
   doCheck = !stdenv.isDarwin;
 
   patches = [ ./nix-mapping.patch ];
 
-  meta = {
+  meta = with lib; {
     description = "Text searching utility";
 
     longDescription = ''
@@ -46,10 +48,9 @@ stdenv.mkDerivation rec {
     '';
 
     homepage = "https://www.gnu.org/software/idutils/";
-    license = lib.licenses.gpl3Plus;
+    license = licenses.gpl3Plus;
 
-    maintainers = [ ];
+    maintainers = with maintainers; [ gfrascadorio ];
     platforms = lib.platforms.all;
-    broken = true;
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/infracost/default.nix b/nixpkgs/pkgs/tools/misc/infracost/default.nix
index abe1872c67fd..3d91dd6d9abb 100644
--- a/nixpkgs/pkgs/tools/misc/infracost/default.nix
+++ b/nixpkgs/pkgs/tools/misc/infracost/default.nix
@@ -1,25 +1,58 @@
-{ lib, buildGoModule, fetchFromGitHub, terraform }:
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles, terraform }:
 
 buildGoModule rec {
   pname = "infracost";
-  version = "0.9.2";
+  version = "0.9.4";
 
   src = fetchFromGitHub {
     owner = "infracost";
     rev = "v${version}";
     repo = "infracost";
-    sha256 = "sha256-TM+7Am5hoiRk/StAwCh5yAN1GKv3oPun38pvhArBoJg=";
+    sha256 = "sha256-OQwMO9bhPK+Wjob8rAFYJQRpAYf1bPdRi2BjETjpSpE=";
   };
+  vendorSha256 = "sha256-zMEtVPyzwW4SrbpydDFDqgHEC0/khkrSxlEnQ5I0he8=";
 
-  vendorSha256 = "sha256-6sMtM7MTFTDXwH8AKr5Dxq8rPqE92xzcWqBTixcPi+8=";
+  ldflags = [ "-s" "-w" "-X github.com/infracost/infracost/internal/version.Version=v${version}" ];
+
+  # Install completions post-install
+  nativeBuildInputs = [ installShellFiles ];
 
   checkInputs = [ terraform ];
-  checkPhase = "make test";
+  checkPhase = ''
+    runHook preCheck
+    make test
+    runHook postCheck
+  '';
+
+  postInstall = ''
+    export INFRACOST_SKIP_UPDATE_CHECK=true
+    installShellCompletion --cmd infracost \
+      --bash <($out/bin/infracost completion --shell bash) \
+      --fish <($out/bin/infracost completion --shell fish) \
+      --zsh <($out/bin/infracost completion --shell zsh)
+  '';
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    runHook preInstallCheck
+
+    export INFRACOST_SKIP_UPDATE_CHECK=true
+    $out/bin/infracost --help
+    $out/bin/infracost --version | grep "v${version}"
+
+    runHook postInstallCheck
+  '';
 
   meta = with lib; {
+    homepage = "https://infracost.io";
+    changelog = "https://github.com/infracost/infracost/releases/tag/v${version}";
     description = "Cloud cost estimates for Terraform in your CLI and pull requests";
-    homepage = "https://github.com/infracost/infracost";
-    license = [ licenses.asl20 ];
-    maintainers = [ maintainers.davegallant ];
+    longDescription = ''
+      Infracost shows hourly and monthly cost estimates for a Terraform project.
+      This helps developers, DevOps et al. quickly see the cost breakdown and
+      compare different deployment options upfront.
+    '';
+    license = licenses.asl20;
+    maintainers = with maintainers; [ davegallant jk ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/ipxe/default.nix b/nixpkgs/pkgs/tools/misc/ipxe/default.nix
index 641e86c22c4b..4be0b3d417e4 100644
--- a/nixpkgs/pkgs/tools/misc/ipxe/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ipxe/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, lib, fetchFromGitHub, perl, cdrkit, syslinux, xz, openssl, gnu-efi, mtools
+{ stdenv, lib, fetchFromGitHub, perl, cdrkit, xz, openssl, gnu-efi, mtools
+, syslinux ? null
 , embedScript ? null
 , additionalTargets ? {}
 }:
@@ -8,12 +9,20 @@ let
     "bin-x86_64-efi/ipxe.efi" = null;
     "bin-x86_64-efi/ipxe.efirom" = null;
     "bin-x86_64-efi/ipxe.usb" = "ipxe-efi.usb";
-  } // {
+  } // lib.optionalAttrs (stdenv.isi686 || stdenv.isx86_64) {
     "bin/ipxe.dsk" = null;
     "bin/ipxe.usb" = null;
     "bin/ipxe.iso" = null;
     "bin/ipxe.lkrn" = null;
     "bin/undionly.kpxe" = null;
+  } // lib.optionalAttrs stdenv.isAarch32 {
+    "bin-arm32-efi/ipxe.efi" = null;
+    "bin-arm32-efi/ipxe.efirom" = null;
+    "bin-arm32-efi/ipxe.usb" = "ipxe-efi.usb";
+  } // lib.optionalAttrs stdenv.isAarch64 {
+    "bin-arm64-efi/ipxe.efi" = null;
+    "bin-arm64-efi/ipxe.efirom" = null;
+    "bin-arm64-efi/ipxe.usb" = "ipxe-efi.usb";
   };
 in
 
@@ -21,7 +30,7 @@ stdenv.mkDerivation rec {
   pname = "ipxe";
   version = "1.21.1";
 
-  nativeBuildInputs = [ perl cdrkit syslinux xz openssl gnu-efi mtools ];
+  nativeBuildInputs = [ perl cdrkit xz openssl gnu-efi mtools ] ++ lib.optional (stdenv.isi686 || stdenv.isx86_64) syslinux;
 
   src = fetchFromGitHub {
     owner = "ipxe";
@@ -37,6 +46,7 @@ stdenv.mkDerivation rec {
 
   makeFlags =
     [ "ECHO_E_BIN_ECHO=echo" "ECHO_E_BIN_ECHO_E=echo" # No /bin/echo here.
+    ] ++ lib.optionals (stdenv.isi686 || stdenv.isx86_64) [
       "ISOLINUX_BIN_LIST=${syslinux}/share/syslinux/isolinux.bin"
       "LDLINUX_C32=${syslinux}/share/syslinux/ldlinux.c32"
     ] ++ lib.optional (embedScript != null) "EMBED=${embedScript}";
@@ -62,6 +72,8 @@ stdenv.mkDerivation rec {
   buildFlags = lib.attrNames targets;
 
   installPhase = ''
+    runHook preInstall
+
     mkdir -p $out
     ${lib.concatStringsSep "\n" (lib.mapAttrsToList (from: to:
       if to == null
@@ -71,6 +83,8 @@ stdenv.mkDerivation rec {
     # Some PXE constellations especially with dnsmasq are looking for the file with .0 ending
     # let's provide it as a symlink to be compatible in this case.
     ln -s undionly.kpxe $out/undionly.kpxe.0
+
+    runHook postInstall
   '';
 
   enableParallelBuilding = true;
@@ -78,8 +92,8 @@ stdenv.mkDerivation rec {
   meta = with lib;
     { description = "Network boot firmware";
       homepage = "https://ipxe.org/";
-      license = licenses.gpl2;
+      license = licenses.gpl2Only;
       maintainers = with maintainers; [ ehmry ];
-      platforms = [ "x86_64-linux" "i686-linux" ];
+      platforms = platforms.linux;
     };
 }
diff --git a/nixpkgs/pkgs/tools/misc/ix/default.nix b/nixpkgs/pkgs/tools/misc/ix/default.nix
index 83d8a7704192..95b53c3b6ccd 100644
--- a/nixpkgs/pkgs/tools/misc/ix/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ix/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [ makeWrapper ];
 
-  phases = [ "installPhase" "fixupPhase" ];
+  dontUnpack = true;
 
   installPhase = ''
     install -Dm +x $src $out/bin/ix
diff --git a/nixpkgs/pkgs/tools/misc/kisslicer/default.nix b/nixpkgs/pkgs/tools/misc/kisslicer/default.nix
index fb69610e4ef7..73d86e7dfc65 100644
--- a/nixpkgs/pkgs/tools/misc/kisslicer/default.nix
+++ b/nixpkgs/pkgs/tools/misc/kisslicer/default.nix
@@ -26,8 +26,6 @@ stdenv.mkDerivation {
     stripRoot = false;
   };
 
-  phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
-
   buildInputs = [
     makeWrapper
     libGLU libGL
diff --git a/nixpkgs/pkgs/tools/misc/krapslog/default.nix b/nixpkgs/pkgs/tools/misc/krapslog/default.nix
index c6f1cf8f8169..a499c3eb46b4 100644
--- a/nixpkgs/pkgs/tools/misc/krapslog/default.nix
+++ b/nixpkgs/pkgs/tools/misc/krapslog/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "krapslog";
-  version = "0.2.0";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "acj";
     repo = "krapslog-rs";
     rev = version;
-    sha256 = "sha256-Ab5bY5r0tYx3JxYRRq7i9O7WFvdi6cRMSuru/pK50y8=";
+    sha256 = "sha256-IXbOmeWLhGOijO1xLItw1wzbHxl0Zyd0dHvfcaPWE8U=";
   };
 
-  cargoSha256 = "sha256-k7jsWMFU/8XogREic4GB+qYocFtiTvSzvBAcORUFe0o=";
+  cargoSha256 = "sha256-2XCtjMV8ko6jnvXYtJhLlNvB1uc0QLO/aYsQX40deBk=";
 
   buildInputs = lib.optional stdenv.isDarwin libiconv;
 
diff --git a/nixpkgs/pkgs/tools/misc/lbdb/default.nix b/nixpkgs/pkgs/tools/misc/lbdb/default.nix
index ea4b2a9cbbc5..ce3a5acd4c9d 100644
--- a/nixpkgs/pkgs/tools/misc/lbdb/default.nix
+++ b/nixpkgs/pkgs/tools/misc/lbdb/default.nix
@@ -7,12 +7,11 @@
 }:
 
 let
-  version = "0.48.1";
   perl' = perl.withPackages (p: with p; [ ConvertASN1 perlldap AuthenSASL ]);
 in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "lbdb";
-  inherit version;
+  version = "0.48.1";
   src = fetchurl {
     url = "https://www.spinnaker.de/lbdb/download/lbdb_${version}.tar.gz";
     sha256 = "1gr5l2fr9qbdccga8bhsrpvz6jxigvfkdxrln9wyf2xpps5cdjxh";
diff --git a/nixpkgs/pkgs/tools/misc/lilo/default.nix b/nixpkgs/pkgs/tools/misc/lilo/default.nix
new file mode 100644
index 000000000000..2babcb2bedd7
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/lilo/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, lib, fetchurl, dev86, sharutils }:
+
+stdenv.mkDerivation rec {
+  pname = "lilo";
+  version = "24.2";
+  src = fetchurl {
+    url = "https://www.joonet.de/lilo/ftp/sources/${pname}-${version}.tar.gz";
+    hash = "sha256-4VjxneRWDJNevgUHwht5v/F2GLkjDYB2/oxf/5/b1bE=";
+  };
+  nativeBuildInputs = [ dev86 sharutils ];
+  DESTDIR = placeholder "out";
+
+  meta = with lib; {
+    homepage = "https://www.joonet.de/lilo/";
+    description = "Linux bootloader";
+    license = licenses.bsd3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ kaction ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/man-db/default.nix b/nixpkgs/pkgs/tools/misc/man-db/default.nix
index 4ac11aa62c1b..9c8adc1d8d41 100644
--- a/nixpkgs/pkgs/tools/misc/man-db/default.nix
+++ b/nixpkgs/pkgs/tools/misc/man-db/default.nix
@@ -77,5 +77,6 @@ stdenv.mkDerivation rec {
     description = "An implementation of the standard Unix documentation system accessed using the man command";
     license = licenses.gpl2;
     platforms = lib.platforms.unix;
+    mainProgram = "man";
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/ocz-ssd-guru/default.nix b/nixpkgs/pkgs/tools/misc/ocz-ssd-guru/default.nix
deleted file mode 100644
index 0c021591e5e5..000000000000
--- a/nixpkgs/pkgs/tools/misc/ocz-ssd-guru/default.nix
+++ /dev/null
@@ -1,53 +0,0 @@
-{ fetchurl, lib, stdenv, xorg, freetype, fontconfig, libGLU, libGL, glibc, makeWrapper }:
-
-let
-  system = if stdenv.hostPlatform.system == "x86_64-linux" then "linux64" else "linux32";
-in
-stdenv.mkDerivation rec {
-  pname = "ocz-ssd-guru";
-  version = "1.0.1170";
-
-  src = fetchurl {
-    url = "http://ocz.com/consumer/download/ssd-guru/SSDGuru_${version}.tar.gz";
-    sha256 = "0ri7qmpc1xpy12lpzl6k298c641wcibcwrzz8jn75wdg4rr176r5";
-  };
-
-  nativeBuildInputs = [ makeWrapper ];
-
-  libPath = lib.makeLibraryPath [
-      xorg.libX11
-      xorg.libxcb
-      freetype
-      fontconfig
-      xorg.libXext
-      xorg.libXi
-      xorg.libXrender
-      stdenv.cc.cc
-      glibc
-      libGLU libGL
-  ];
-
-  installPhase = ''
-    mkdir -p $out/bin
-    cp ${system}/SSDGuru $out/bin/
-    rm -rf linux{32,64}
-    patchelf \
-      --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-      --set-rpath $libPath:$out \
-      $out/bin/SSDGuru
-
-    wrapProgram $out/bin/SSDGuru --prefix LD_LIBRARY_PATH : $libPath
-  '';
-
-  dontStrip = true;
-  dontPatchELF = true;
-
-  meta = {
-    homepage = "http://ocz.com/ssd-guru";
-    description = "SSD Management Tool for OCZ disks";
-    license = lib.licenses.unfree;
-    platforms = lib.platforms.linux;
-    maintainers = with lib.maintainers; [ jagajaga ];
-  };
-
-}
diff --git a/nixpkgs/pkgs/tools/misc/osm2pgsql/default.nix b/nixpkgs/pkgs/tools/misc/osm2pgsql/default.nix
index 8208459bc89a..062b49e8bbdc 100644
--- a/nixpkgs/pkgs/tools/misc/osm2pgsql/default.nix
+++ b/nixpkgs/pkgs/tools/misc/osm2pgsql/default.nix
@@ -34,8 +34,6 @@ stdenv.mkDerivation rec {
   cmakeFlags = [ "-DEXTERNAL_LIBOSMIUM=ON" "-DEXTERNAL_PROTOZERO=ON" ]
     ++ lib.optional withLuaJIT "-DWITH_LUAJIT:BOOL=ON";
 
-  NIX_CFLAGS_COMPILE = "-DACCEPT_USE_OF_DEPRECATED_PROJ_API_H";
-
   meta = with lib; {
     description = "OpenStreetMap data to PostgreSQL converter";
     homepage = "https://osm2pgsql.org";
diff --git a/nixpkgs/pkgs/tools/misc/plowshare/default.nix b/nixpkgs/pkgs/tools/misc/plowshare/default.nix
index 2cfbf5ae91ac..1d15db020407 100644
--- a/nixpkgs/pkgs/tools/misc/plowshare/default.nix
+++ b/nixpkgs/pkgs/tools/misc/plowshare/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ makeWrapper ];
 
-  phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
+  dontBuild = true;
 
   installPhase = ''
     make PREFIX="$out" install
diff --git a/nixpkgs/pkgs/tools/misc/ponysay/default.nix b/nixpkgs/pkgs/tools/misc/ponysay/default.nix
index 113c2b05ff59..b27aa32481c0 100644
--- a/nixpkgs/pkgs/tools/misc/ponysay/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ponysay/default.nix
@@ -1,20 +1,21 @@
-{ lib, stdenv, fetchurl, python3, texinfo, makeWrapper }:
+{ lib, stdenv, fetchFromGitHub, python3, texinfo, makeWrapper }:
 
-stdenv.mkDerivation {
-  name = "ponysay-3.0.3";
+stdenv.mkDerivation rec {
+  name = "ponysay";
+  version = "3.0.3";
 
-  src = fetchurl {
-    url = "https://github.com/erkin/ponysay/archive/3.0.3.tar.gz";
-    sha256 = "12mjabf5cpp5dgg63s19rlyq3dhhpzzy2sa439yncqzsk7rdg0n3";
+  src = fetchFromGitHub {
+    owner = "erkin";
+    repo = "ponysay";
+    rev = version;
+    sha256 = "sha256-R2B0TU3ZSEncGsijKgvhaHIbcZa5Dx/jVPxrILBaoVw=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ python3 texinfo  ];
+  buildInputs = [ python3 texinfo ];
 
   inherit python3;
 
-  phases = "unpackPhase installPhase fixupPhase";
-
   installPhase = ''
     find -type f -name "*.py" | xargs sed -i "s@/usr/bin/env python3@$python3/bin/python3@g"
     substituteInPlace setup.py --replace \
@@ -25,11 +26,11 @@ stdenv.mkDerivation {
         --with-bash
   '';
 
-  meta = {
+  meta = with lib; {
     description = "Cowsay reimplemention for ponies";
     homepage = "https://github.com/erkin/ponysay";
-    license = lib.licenses.gpl3;
-    maintainers = with lib.maintainers; [ bodil ];
-    platforms = with lib.platforms; unix;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ bodil ];
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/poweralertd/default.nix b/nixpkgs/pkgs/tools/misc/poweralertd/default.nix
index a00a5b9a4026..4121b0712bd7 100644
--- a/nixpkgs/pkgs/tools/misc/poweralertd/default.nix
+++ b/nixpkgs/pkgs/tools/misc/poweralertd/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "poweralertd";
-  version = "0.1.0";
+  version = "0.2.0";
 
   outputs = [ "out" "man" ];
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     owner = "~kennylevinsen";
     repo = "poweralertd";
     rev = version;
-    sha256 = "136xcrp7prilh905a6v933vryqy20l7nw24ahc4ycax8f0s906x9";
+    sha256 = "19rw9q4pcqw56nmzjfglfikzx5wwjl4n08awwdhg0jy1k0bm3dvp";
   };
 
   patchPhase = ''
diff --git a/nixpkgs/pkgs/tools/misc/powerline-go/default.nix b/nixpkgs/pkgs/tools/misc/powerline-go/default.nix
index 2f6ff216dc87..004bebaebbea 100644
--- a/nixpkgs/pkgs/tools/misc/powerline-go/default.nix
+++ b/nixpkgs/pkgs/tools/misc/powerline-go/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "powerline-go";
-  version = "1.21.0";
+  version = "unstable-2021-07-15";
 
   src = fetchFromGitHub {
     owner = "justjanne";
     repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-IO3I5lvPdN73EF+S5Xo+TMEYaBtd1pOGMs+aQtRnHjE=";
+    rev = "f27435b26b5001c52ffb1aee454572c59494c81b";
+    sha256 = "sha256-YB/WMprjXA5ZN6baT5nWahNj0xwbP8kzS7X/1tCwWiE=";
   };
 
   vendorSha256 = "sha256-HYF6aKz+P241EKmupEoretadlrh9FBRx6nIER66jofg=";
diff --git a/nixpkgs/pkgs/tools/misc/pws/default.nix b/nixpkgs/pkgs/tools/misc/pws/default.nix
index e98323b75eea..783bb9b5a384 100644
--- a/nixpkgs/pkgs/tools/misc/pws/default.nix
+++ b/nixpkgs/pkgs/tools/misc/pws/default.nix
@@ -1,15 +1,16 @@
 { stdenv, lib, bundlerEnv, ruby, bundlerUpdateScript, xsel, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "pws-${(import ./gemset.nix).pws.version}";
+  pname = "pws";
+  version = (import ./gemset.nix).pws.version;
 
   nativeBuildInputs = [ makeWrapper ];
 
-  phases = ["installPhase"];
+  dontUnpack = true;
 
   installPhase = let
     env = bundlerEnv {
-      name = "${name}-gems";
+      name = "${pname}-gems";
 
       inherit ruby;
 
diff --git a/nixpkgs/pkgs/tools/misc/rauc/default.nix b/nixpkgs/pkgs/tools/misc/rauc/default.nix
index 41183a2f6e1e..667ce3cabe41 100644
--- a/nixpkgs/pkgs/tools/misc/rauc/default.nix
+++ b/nixpkgs/pkgs/tools/misc/rauc/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   configureFlags = [
     "--with-systemdunitdir=${placeholder "out"}/lib/systemd/system"
     "--with-dbusinterfacesdir=${placeholder "out"}/share/dbus-1/interfaces"
-    "--with-dbuspolicydir=${placeholder "out"}/share/dbus-1/systemd.d"
+    "--with-dbuspolicydir=${placeholder "out"}/share/dbus-1/system.d"
     "--with-dbussystemservicedir=${placeholder "out"}/share/dbus-1/system-services"
   ];
 
diff --git a/nixpkgs/pkgs/tools/misc/starship/default.nix b/nixpkgs/pkgs/tools/misc/starship/default.nix
index f5f8f87e9ca9..052e6198d4fb 100644
--- a/nixpkgs/pkgs/tools/misc/starship/default.nix
+++ b/nixpkgs/pkgs/tools/misc/starship/default.nix
@@ -11,13 +11,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "starship";
-  version = "0.55.0";
+  version = "0.56.0";
 
   src = fetchFromGitHub {
     owner = "starship";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-zXXjy90oxLO/Ac/TQC4J6rOvha2qGBMv0SAAXvDyITo=";
+    sha256 = "0wcldggdavmxajq6dkksdacs5f4729yvxvqiyb9vgalv4akik4yj";
   };
 
   nativeBuildInputs = [ installShellFiles ] ++ lib.optionals stdenv.isLinux [ pkg-config ];
@@ -32,7 +32,7 @@ rustPlatform.buildRustPackage rec {
     done
   '';
 
-  cargoSha256 = "sha256-TXmV1saqZ/XS4HxKpGXWu3HuoZ3WIptSc8oTNnPCqYE=";
+  cargoSha256 = "1ligh5mwids7crf2qh657sdij9fcw7pb3w7vqskpvkyk25h2z6r9";
 
   preCheck = ''
     HOME=$TMPDIR
diff --git a/nixpkgs/pkgs/tools/misc/svtplay-dl/default.nix b/nixpkgs/pkgs/tools/misc/svtplay-dl/default.nix
index 0e91b9c0e562..5514fd4e30f0 100644
--- a/nixpkgs/pkgs/tools/misc/svtplay-dl/default.nix
+++ b/nixpkgs/pkgs/tools/misc/svtplay-dl/default.nix
@@ -8,13 +8,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "svtplay-dl";
-  version = "4.0";
+  version = "4.1";
 
   src = fetchFromGitHub {
     owner = "spaam";
     repo = "svtplay-dl";
     rev = version;
-    sha256 = "01q03v6a2rkw49z5nbm5mghm0qmmm12pq3amsiiiv5j6m9p0fdsy";
+    sha256 = "0b0q4k5aacw2nna5higr6sk5lsdn62lw2l9lccfy5s3m530banni";
   };
 
   pythonPaths = [ cryptography pyyaml requests ];
@@ -43,6 +43,13 @@ in stdenv.mkDerivation rec {
     sh scripts/run-tests.sh -2
   '';
 
+  doInstallCheck = true;
+  installCheckPhase = ''
+    runHook preInstallCheck
+    $out/bin/svtplay-dl --help > /dev/null
+    runHook postInstallCheck
+  '';
+
   meta = with lib; {
     homepage = "https://github.com/spaam/svtplay-dl";
     description = "Command-line tool to download videos from svtplay.se and other sites";
diff --git a/nixpkgs/pkgs/tools/misc/sweep-visualizer/default.nix b/nixpkgs/pkgs/tools/misc/sweep-visualizer/default.nix
index 1ead06ed6e85..74f0807a7080 100644
--- a/nixpkgs/pkgs/tools/misc/sweep-visualizer/default.nix
+++ b/nixpkgs/pkgs/tools/misc/sweep-visualizer/default.nix
@@ -21,7 +21,7 @@
       ar p "$src" data.tar.xz | tar xJ
     '';
 
-    buildPhase = ":";
+    dontBuild = true;
 
     installPhase = ''
       mkdir -p $out/bin $out/share/sweep-visualizer
diff --git a/nixpkgs/pkgs/tools/misc/system-config-printer/default.nix b/nixpkgs/pkgs/tools/misc/system-config-printer/default.nix
index 1781187481fb..aafdfe07ff9b 100644
--- a/nixpkgs/pkgs/tools/misc/system-config-printer/default.nix
+++ b/nixpkgs/pkgs/tools/misc/system-config-printer/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "system-config-printer";
-  version = "1.5.12";
+  version = "1.5.15";
 
   src = fetchFromGitHub {
     owner = "openPrinting";
     repo = pname;
-    rev = version;
-    sha256 = "1a812jsd9pb02jbz9bq16qj5j6k2kw44g7s1xdqqkg7061rd7mwf";
+    rev = "v${version}";
+    sha256 = "0a3v8fp1dfb5cwwpadc3f6mv608b5yrrqd8ddkmnrngizqwlswsc";
   };
 
   prePatch = ''
@@ -26,17 +26,6 @@ stdenv.mkDerivation rec {
 
   patches = [
     ./detect_serverbindir.patch
-
-    # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=958104
-    # (Fixes will be included in next upstream release.)
-    (fetchpatch {
-      url = "https://github.com/OpenPrinting/system-config-printer/commit/cf9903466c1a2d18a701f3b5e8c7e03483e1244d.patch";
-      sha256 = "03gpav618w50q90m2kdkgwclc7fv17m493fgjd633zfavb5kqr3n";
-    })
-    (fetchpatch {
-      url = "https://github.com/OpenPrinting/system-config-printer/commit/b9289dfe105bdb502f183f0afe7a115ecae5f2af.patch";
-      sha256 = "12w47hy3ly4phh8jcqxvdnd5sgbnbp8dnscjd7d5y2i43kxj7b23";
-    })
   ];
 
   buildInputs = [
@@ -55,6 +44,10 @@ stdenv.mkDerivation rec {
 
   pythonPath = with python3Packages; requiredPythonModules [ pycups pycurl dbus-python pygobject3 requests pycairo pysmbc ];
 
+  preConfigure = ''
+    intltoolize --copy --force --automake
+  '';
+
   configureFlags = [
     "--with-udev-rules"
     "--with-udevdir=${placeholder "out"}/etc/udev"
diff --git a/nixpkgs/pkgs/tools/misc/tea/default.nix b/nixpkgs/pkgs/tools/misc/tea/default.nix
index 06e54559db9a..a7af4fec7ba4 100644
--- a/nixpkgs/pkgs/tools/misc/tea/default.nix
+++ b/nixpkgs/pkgs/tools/misc/tea/default.nix
@@ -1,11 +1,13 @@
-{ lib, buildGoModule, fetchgit }:
+{ lib, buildGoModule, fetchFromGitea }:
 
 buildGoModule rec {
   pname = "tea";
   version = "0.7.0";
 
-  src = fetchgit {
-    url = "https://gitea.com/gitea/tea";
+  src = fetchFromGitea {
+    domain = "gitea.com";
+    owner = "gitea";
+    repo = "tea";
     rev = "v${version}";
     sha256 = "sha256-Kq+A6YELfBJ04t7pPnX8Ulh4NSMFn3AHggplLD9J8MY=";
   };
diff --git a/nixpkgs/pkgs/tools/misc/tfk8s/default.nix b/nixpkgs/pkgs/tools/misc/tfk8s/default.nix
index e6fc7bf3f7fe..d9c9ad0451bb 100644
--- a/nixpkgs/pkgs/tools/misc/tfk8s/default.nix
+++ b/nixpkgs/pkgs/tools/misc/tfk8s/default.nix
@@ -1,18 +1,18 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub, callPackage }:
 
 buildGoModule rec {
   pname = "tfk8s";
-  version = "0.1.4";
+  version = "0.1.5";
   tag = "v${version}";
 
   src = fetchFromGitHub {
     owner = "jrhouston";
     repo = "tfk8s";
     rev = tag;
-    sha256 = "sha256-Ha/F8rCGZqFYqJzfemmKRyEBI5khaSIerJxvf2Pf2ao=";
+    sha256 = "sha256-T0zM2JOmzk8YyS3+De6yGwiwLgyb6Rwy6hT9b44wNxQ=";
   };
 
-  vendorSha256 = "sha256-wS5diDQFkt8IAp13d8Yeh8ihLvKWdR0Mbw0fMZpqqKE=";
+  vendorSha256 = "sha256-eLPmghs05pMMtys97Ja7YGdVMZmMmiaFeMwzaWNxW0I=";
   runVend = true;
 
   buildFlagsArray = [
@@ -30,6 +30,10 @@ buildGoModule rec {
     $out/bin/tfk8s --version | grep ${tag} > /dev/null
   '';
 
+  passthru.tests = {
+    sample1 = callPackage ./tests/sample1 { };
+  };
+
   meta = with lib; {
     description = "An utility to convert Kubernetes YAML manifests to Terraform's HCL format";
     license = licenses.mit;
diff --git a/nixpkgs/pkgs/tools/misc/tfk8s/tests/sample1/default.nix b/nixpkgs/pkgs/tools/misc/tfk8s/tests/sample1/default.nix
new file mode 100644
index 000000000000..6b06dbf32340
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/tfk8s/tests/sample1/default.nix
@@ -0,0 +1,11 @@
+{ runCommandCC, tfk8s }:
+
+runCommandCC "tfk8s-test-sample1" {
+    buildInputs = [
+      tfk8s
+    ];
+    meta.timeout = 60;
+  }
+  ''
+    cmp <(${tfk8s}/bin/tfk8s -f ${./input.yaml}) ${./output.tf} > $out
+  ''
diff --git a/nixpkgs/pkgs/tools/misc/tfk8s/tests/sample1/input.yaml b/nixpkgs/pkgs/tools/misc/tfk8s/tests/sample1/input.yaml
new file mode 100644
index 000000000000..58ed0eb11d76
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/tfk8s/tests/sample1/input.yaml
@@ -0,0 +1,7 @@
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: test
+data:
+  TEST: test
diff --git a/nixpkgs/pkgs/tools/misc/tfk8s/tests/sample1/output.tf b/nixpkgs/pkgs/tools/misc/tfk8s/tests/sample1/output.tf
new file mode 100644
index 000000000000..51d564400b55
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/tfk8s/tests/sample1/output.tf
@@ -0,0 +1,12 @@
+resource "kubernetes_manifest" "configmap_test" {
+  manifest = {
+    "apiVersion" = "v1"
+    "data" = {
+      "TEST" = "test"
+    }
+    "kind" = "ConfigMap"
+    "metadata" = {
+      "name" = "test"
+    }
+  }
+}
diff --git a/nixpkgs/pkgs/tools/misc/tmuxinator/default.nix b/nixpkgs/pkgs/tools/misc/tmuxinator/default.nix
index c3ceae7a0bd3..c248546fdb49 100644
--- a/nixpkgs/pkgs/tools/misc/tmuxinator/default.nix
+++ b/nixpkgs/pkgs/tools/misc/tmuxinator/default.nix
@@ -8,8 +8,8 @@ buildRubyGem rec {
   inherit ruby;
   name = "${gemName}-${version}";
   gemName = "tmuxinator";
-  version = "2.0.3";
-  source.sha256 = "0js43hl07is9nx1b17g8x2blh1q7ls8y4dshcb50r5dn7drpardh";
+  version = "3.0.1";
+  source.sha256 = "1vm96iyzbcy1388b3zyqivfhs4p63v87mp5qwlr4s8i2haq62xyf";
 
   erubis = buildRubyGem rec {
     inherit ruby;
diff --git a/nixpkgs/pkgs/tools/misc/tremor-rs/default.nix b/nixpkgs/pkgs/tools/misc/tremor-rs/default.nix
index 9c0a68805a6f..5f6acfd9696f 100644
--- a/nixpkgs/pkgs/tools/misc/tremor-rs/default.nix
+++ b/nixpkgs/pkgs/tools/misc/tremor-rs/default.nix
@@ -3,16 +3,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "tremor";
-  version = "0.11.2";
+  version = "0.11.5";
 
   src = fetchFromGitHub {
     owner = "tremor-rs";
     repo = "tremor-runtime";
     rev = "v${version}";
-    sha256 = "sha256-FedRwFVc+m25+Elj1Vp/fInbK6DVsUpniw29/dtecWo=";
+    sha256 = "sha256-fE0f0tCI2V+HqHZwn9cO+xs0o3o6w0nrJg9Et0zJMOE=";
   };
 
-  cargoSha256 = "sha256-jxXoFOwoBSkn7pv10ctLpD7ko8bokc1ADkB7NQFRC7c=";
+  cargoHash = "sha256-dky9ejzMgKXlzpg+9bmkd7th+EHBpNmZJkgYt2pjuuI=";
 
   nativeBuildInputs = [ cmake pkg-config installShellFiles ];
 
diff --git a/nixpkgs/pkgs/tools/misc/trillian/default.nix b/nixpkgs/pkgs/tools/misc/trillian/default.nix
index 8a96248e718a..9959fe9375be 100644
--- a/nixpkgs/pkgs/tools/misc/trillian/default.nix
+++ b/nixpkgs/pkgs/tools/misc/trillian/default.nix
@@ -5,28 +5,21 @@
 
 buildGoModule rec {
   pname = "trillian";
-  version = "1.3.11";
-  vendorSha256 = "0zxp1gjzcc3z6vkpc2bchbs1shwm1b28ks0jh4gf6zxpp4361j4l";
+  version = "1.3.13";
+  vendorSha256 = "1ad0vaw0k57njzk9x233iqjbplyvw66qjk8r9j7sx87pdc6a4lpb";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1lh19wba90y91l5jj8ilzjqxgmqqqdvyn7pzrwvmzv7iiy18wcmh";
+    sha256 = "1ns394yd4js9g1psd1dkrffidyzixqvjp5lhw2x2iycrxbnm3y44";
   };
 
-  # Remove tests that require networking
-  postPatch = ''
-    rm cmd/get_tree_public_key/main_test.go
-  '';
-
   subPackages = [
     "cmd/trillian_log_server"
     "cmd/trillian_log_signer"
-    "cmd/trillian_map_server"
     "cmd/createtree"
     "cmd/deletetree"
-    "cmd/get_tree_public_key"
     "cmd/updatetree"
   ];
 
diff --git a/nixpkgs/pkgs/tools/misc/ultrastar-manager/default.nix b/nixpkgs/pkgs/tools/misc/ultrastar-manager/default.nix
index f69955020c72..d5dd47e0f669 100644
--- a/nixpkgs/pkgs/tools/misc/ultrastar-manager/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ultrastar-manager/default.nix
@@ -27,7 +27,8 @@ let
     in mkDerivation {
       name = "${src.name}-patched";
       inherit src;
-      phases = [ "unpackPhase" "patchPhase" ];
+
+      dontInstall = true;
 
       patchPhase = with lib; ''
         # we don’t want prebuild binaries checked into version control!
diff --git a/nixpkgs/pkgs/tools/misc/unclutter-xfixes/default.nix b/nixpkgs/pkgs/tools/misc/unclutter-xfixes/default.nix
index 464183cf579e..d59b759503f8 100644
--- a/nixpkgs/pkgs/tools/misc/unclutter-xfixes/default.nix
+++ b/nixpkgs/pkgs/tools/misc/unclutter-xfixes/default.nix
@@ -24,7 +24,6 @@ stdenv.mkDerivation rec {
     description = "Rewrite of unclutter using the X11 Xfixes extension";
     platforms = platforms.unix;
     license = lib.licenses.mit;
-    inherit version;
     maintainers = [ maintainers.globin ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/uutils-coreutils/default.nix b/nixpkgs/pkgs/tools/misc/uutils-coreutils/default.nix
index 209a38cdcc10..8abfb077596a 100644
--- a/nixpkgs/pkgs/tools/misc/uutils-coreutils/default.nix
+++ b/nixpkgs/pkgs/tools/misc/uutils-coreutils/default.nix
@@ -12,25 +12,19 @@
 
 stdenv.mkDerivation rec {
   pname = "uutils-coreutils";
-  version = "0.0.6";
+  version = "0.0.7";
 
   src = fetchFromGitHub {
     owner = "uutils";
     repo = "coreutils";
     rev = version;
-    sha256 = "sha256-dnswE/DU2jCfxWW10Ctjw8woktwWZqyd3E9IuKkle1M=";
+    sha256 = "sha256-XI6061nCVyL8Q1s+QH75IesneJNhbhxGnILZxQCa5LU=";
   };
 
-  postPatch = ''
-    # can be removed after https://github.com/uutils/coreutils/pull/1815 is included
-    substituteInPlace GNUmakefile \
-      --replace uutils coreutils
-  '';
-
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-92BHPSVIPZLn399AcaJJjRq2WkxzDm8knKN3FIdAxAA=";
+    hash = "sha256-bfwWyeuslLjh4OCt+H8CM8hCrRFqlibOS8gS64lysa0=";
   };
 
   nativeBuildInputs = [ rustPlatform.cargoSetupHook sphinx ];
diff --git a/nixpkgs/pkgs/tools/misc/vector/default.nix b/nixpkgs/pkgs/tools/misc/vector/default.nix
index e8c3ed7cbe9e..d9e454d4ab81 100644
--- a/nixpkgs/pkgs/tools/misc/vector/default.nix
+++ b/nixpkgs/pkgs/tools/misc/vector/default.nix
@@ -28,16 +28,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "vector";
-  version = "0.14.0";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     owner = "timberio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-wtihrR19jMJ7Kgvy6XBzOUrC/WKNVl2MVx4lWgXYlvg=";
+    sha256 = "sha256-8ZsZyV6zlMiNTVYPwqQi7F1OJ4hV33IqrrGkvUb8JaY=";
   };
 
-  cargoSha256 = "sha256-VYIzAqh5Xxmn1koxhh+UDb2G3WS2UVXffuBY7h5Kr7A=";
+  cargoSha256 = "sha256-t6KeyBwIfCQTfaennFiFX3K+8unFOsduBP7nRbAo9wI=";
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ oniguruma openssl protobuf rdkafka zstd ]
     ++ lib.optional stdenv.isDarwin [ Security libiconv coreutils CoreServices ];
diff --git a/nixpkgs/pkgs/tools/misc/via/default.nix b/nixpkgs/pkgs/tools/misc/via/default.nix
new file mode 100644
index 000000000000..5667c8a4c46c
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/via/default.nix
@@ -0,0 +1,41 @@
+{ lib, fetchurl, appimageTools }:
+
+let
+  pname = "via";
+  version = "1.3.1";
+  name = "${pname}-${version}";
+  nameExecutable = pname;
+  src = fetchurl {
+    url = "https://github.com/the-via/releases/releases/download/v${version}/via-${version}-linux.AppImage";
+    name = "via-${version}-linux.AppImage";
+    sha256 = "d2cd73d280a265149fedb24161ec7c575523596c4d30898ad6b5875e09b3f34a";
+  };
+  appimageContents = appimageTools.extractType2 { inherit name src; };
+in appimageTools.wrapType2 {
+  inherit name src;
+
+  profile = ''
+    # Skip prompt to add udev rule.
+    # On NixOS you can add this rule with `services.udev.packages = [ pkgs.via ];`.
+    export DISABLE_SUDO_PROMPT=1
+  '';
+
+  extraInstallCommands = ''
+    mv $out/bin/${name} $out/bin/${pname}
+    install -m 444 -D ${appimageContents}/via.desktop -t $out/share/applications
+    substituteInPlace $out/share/applications/via.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+    cp -r ${appimageContents}/usr/share/icons $out/share
+
+    mkdir -p $out/etc/udev/rules.d
+    echo 'KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0666", TAG+="uaccess", TAG+="udev-acl"' > $out/etc/udev/rules.d/92-viia.rules
+  '';
+
+  meta = with lib; {
+    description = "Yet another keyboard configurator";
+    homepage = "https://caniusevia.com/";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ angustrau ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/vial/default.nix b/nixpkgs/pkgs/tools/misc/vial/default.nix
new file mode 100644
index 000000000000..c8d38d826d1f
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/vial/default.nix
@@ -0,0 +1,33 @@
+{ lib, fetchurl, appimageTools }:
+let
+  name = "vial-${version}";
+  version = "0.4";
+  pname = "Vial";
+
+  src = fetchurl {
+    url = "https://github.com/vial-kb/vial-gui/releases/download/v${version}/${pname}-v${version}-x86_64.AppImage";
+    sha256 = "sha256-4EDEVSqjQ6Ybqx4BoNwE4pT5yFLYM05FBHc5deQU9f8=";
+  };
+
+  appimageContents = appimageTools.extractType2 { inherit name src; };
+in
+appimageTools.wrapType2 {
+  inherit name src;
+
+  extraInstallCommands = ''
+    mv $out/bin/${name} $out/bin/${pname}
+    install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
+    cp -r ${appimageContents}/usr/share/icons $out/share
+
+    mkdir -p $out/etc/udev/rules.d/ # https://get.vial.today/getting-started/linux-udev.html
+    echo 'KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0666", TAG+="uaccess", TAG+="udev-acl"' > $out/etc/udev/rules.d/92-viia.rules
+  '';
+
+  meta = with lib; {
+    description = "An Open-source cross-platform (Windows, Linux and Mac) GUI and a QMK fork for configuring your keyboard in real time";
+    homepage = "https://get.vial.today";
+    license = licenses.gpl2Only;
+    maintainers = with maintainers; [ kranzes ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/xvfb-run/default.nix b/nixpkgs/pkgs/tools/misc/xvfb-run/default.nix
index 2e5063768516..06e886e4d04f 100644
--- a/nixpkgs/pkgs/tools/misc/xvfb-run/default.nix
+++ b/nixpkgs/pkgs/tools/misc/xvfb-run/default.nix
@@ -3,8 +3,7 @@
 let
   xvfb-run = fetchurl {
     name = "xvfb-run";
-    # https://git.archlinux.org/svntogit/packages.git/?h=packages/xorg-server
-    url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/xvfb-run?h=packages/xorg-server&id=9cb733cefa92af3fca608fb051d5251160c9bbff";
+    url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/9cb733cefa92af3fca608fb051d5251160c9bbff/trunk/xvfb-run";
     sha256 = "1307mz4nr8ga3qz73i8hbcdphky75rq8lrvfk2zm4kmv6pkbk611";
   };
 in
diff --git a/nixpkgs/pkgs/tools/misc/yafetch/default.nix b/nixpkgs/pkgs/tools/misc/yafetch/default.nix
index 8dad93d0debb..5a0821844007 100644
--- a/nixpkgs/pkgs/tools/misc/yafetch/default.nix
+++ b/nixpkgs/pkgs/tools/misc/yafetch/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "yafetch";
-  version = "unstable-2021-06-15";
+  version = "unstable-2021-07-18";
 
   src = fetchFromGitLab {
     owner = "cyberkitty";
     repo = pname;
-    rev = "423a7d1f1ef8f0e4caf586710828620d3cb593e3";
-    sha256 = "184yy7i8ca2fh6d1rxyhxi9gqb57fpz7ia0i56dl1zhg769m8b99";
+    rev = "f3efbca54df1ffea22cc40034114af141ccff9c1";
+    sha256 = "1cxhrjy9vzq87rzql4dcknkwca7nydysp1p1x4fh1qfw79dfdmxw";
   };
 
   # Use the provided NixOS logo automatically
diff --git a/nixpkgs/pkgs/tools/misc/yle-dl/default.nix b/nixpkgs/pkgs/tools/misc/yle-dl/default.nix
index cd04e2020b1c..209072da3b0b 100644
--- a/nixpkgs/pkgs/tools/misc/yle-dl/default.nix
+++ b/nixpkgs/pkgs/tools/misc/yle-dl/default.nix
@@ -12,12 +12,12 @@ python3Packages.buildPythonApplication rec {
   };
 
   propagatedBuildInputs = with python3Packages; [
-    attrs ConfigArgParse ffmpeg future lxml requests
+    attrs configargparse ffmpeg future lxml requests
   ];
   pythonPath = [ rtmpdump php wget ];
 
   doCheck = false; # tests require network access
-  checkInputs = with python3Packages; [ ffmpeg pytest pytestrunner ];
+  checkInputs = with python3Packages; [ ffmpeg pytest pytest-runner ];
 
   meta = with lib; {
     description = "Downloads videos from Yle (Finnish Broadcasting Company) servers";
diff --git a/nixpkgs/pkgs/tools/misc/yubikey-manager-qt/default.nix b/nixpkgs/pkgs/tools/misc/yubikey-manager-qt/default.nix
index 00e3ec1fbdcd..cb575adf75ee 100644
--- a/nixpkgs/pkgs/tools/misc/yubikey-manager-qt/default.nix
+++ b/nixpkgs/pkgs/tools/misc/yubikey-manager-qt/default.nix
@@ -59,7 +59,6 @@ mkDerivation rec {
   '';
 
   meta = with lib; {
-    inherit version;
     description = "Cross-platform application for configuring any YubiKey over all USB interfaces";
     homepage = "https://developers.yubico.com/yubikey-manager-qt/";
     license = licenses.bsd2;
diff --git a/nixpkgs/pkgs/tools/misc/zellij/default.nix b/nixpkgs/pkgs/tools/misc/zellij/default.nix
index d55353682fdd..c7889b158735 100644
--- a/nixpkgs/pkgs/tools/misc/zellij/default.nix
+++ b/nixpkgs/pkgs/tools/misc/zellij/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "zellij";
-  version = "0.14.0";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     owner = "zellij-org";
     repo = "zellij";
     rev = "v${version}";
-    sha256 = "sha256-1GG3Bvw3P77dLhvJKwq48TUWMwg+bDgzWmtrw2JixLg=";
+    sha256 = "sha256-IcpCE9mqR7H1+gRhHyscvXhYHOynJFtOyrSr1FiMxFc=";
   };
 
-  cargoSha256 = "sha256-cqm4QCGy6eTKtEBlE2ihmh93eO7d47zlCrLY8Gp0dxM=";
+  cargoSha256 = "sha256-22ggPs4iVOI1LKHtW5skfSO7J/FLF8EinvcyHVO14Dw=";
 
   nativeBuildInputs = [ installShellFiles pkg-config ];
 
diff --git a/nixpkgs/pkgs/tools/misc/zsh-autoenv/default.nix b/nixpkgs/pkgs/tools/misc/zsh-autoenv/default.nix
index 61589345d702..51cfda5e0aa1 100644
--- a/nixpkgs/pkgs/tools/misc/zsh-autoenv/default.nix
+++ b/nixpkgs/pkgs/tools/misc/zsh-autoenv/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation {
   pname = "zsh-autoenv";
-  version = "2017-12-16";
+  version = "unstable-2017-12-16";
 
   src = fetchFromGitHub {
     owner = "Tarrasch";
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
     sha256 = "004svkfzhc3ab6q2qvwzgj36wvicg5bs8d2gcibx6adq042di7zj";
   };
 
-  buildPhase = ":";
+  dontBuild = true;
 
   installPhase = ''
     mkdir -p $out/{bin,share}
diff --git a/nixpkgs/pkgs/tools/networking/amass/default.nix b/nixpkgs/pkgs/tools/networking/amass/default.nix
index bf8a1b8e4f83..5d539cc56978 100644
--- a/nixpkgs/pkgs/tools/networking/amass/default.nix
+++ b/nixpkgs/pkgs/tools/networking/amass/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "amass";
-  version = "3.13.2";
+  version = "3.13.4";
 
   src = fetchFromGitHub {
     owner = "OWASP";
     repo = "Amass";
     rev = "v${version}";
-    sha256 = "sha256-3J4yT7GTuVzkxMb+fCD3S9u0XBHa4Y0W+BnkDJ4PhWI=";
+    sha256 = "0zlkr0r06w3y34nx174wyfwk69i2q0bcq88kfvb0j3d28fdh5p31";
   };
 
-  vendorSha256 = "0nbj41ha31lkwraxwvyavdr94y9nnxl6z85jjkszxbd12a5g6v7h";
+  vendorSha256 = "065n1vhj5003ay4pflp418w32s84jvza52lghj6cpcdzs0rwgc45";
 
   outputs = [ "out" "wordlists" ];
 
@@ -24,6 +24,9 @@ buildGoModule rec {
     gzip $wordlists/*.txt
   '';
 
+  # https://github.com/OWASP/Amass/issues/640
+  doCheck = false;
+
   meta = with lib; {
     description = "In-Depth DNS Enumeration and Network Mapping";
     longDescription = ''
@@ -37,8 +40,8 @@ buildGoModule rec {
       Amass ships with a set of wordlist (to be used with the amass -w flag)
       that are found under the wordlists output.
       '';
-    homepage = "https://www.owasp.org/index.php/OWASP_Amass_Project";
+    homepage = "https://owasp.org/www-project-amass/";
     license = licenses.asl20;
-    maintainers = with maintainers; [ kalbasit ];
+    maintainers = with maintainers; [ kalbasit fab ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/cdpr/default.nix b/nixpkgs/pkgs/tools/networking/cdpr/default.nix
new file mode 100644
index 000000000000..6ac69b95dba6
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/cdpr/default.nix
@@ -0,0 +1,25 @@
+{ lib, stdenv, fetchurl, libpcap }:
+
+stdenv.mkDerivation rec {
+  pname = "cdpr";
+  version = "2.4";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/${pname}/${pname}/${version}/${pname}-${version}.tgz";
+    sha256 = "1idyvyafkk0ifcbi7mc65b60qia6hpsdb6s66j4ggqp7if6vblrj";
+  };
+
+  buildInputs = [ libpcap ];
+
+  installPhase = ''
+    install -Dm755 cdpr $out/bin/cdpr
+  '';
+
+  meta = with lib; {
+    description = "Cisco Discovery Protocol Reporter";
+    homepage = "http://cdpr.sourceforge.net/";
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.sgo ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/networking/corerad/default.nix b/nixpkgs/pkgs/tools/networking/corerad/default.nix
index 341e1c13335c..8ba8109f2668 100644
--- a/nixpkgs/pkgs/tools/networking/corerad/default.nix
+++ b/nixpkgs/pkgs/tools/networking/corerad/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "corerad";
-  version = "0.3.2";
+  version = "0.3.3";
 
   src = fetchFromGitHub {
     owner = "mdlayher";
     repo = "corerad";
     rev = "v${version}";
-    sha256 = "1avbd0ldmzzkfay2pm6b88aln388cj8z7dzyw6i8m5k0lmmmmz9y";
+    sha256 = "1xfqjxygf6r5wbf3brilx4d4hm0h518zaadmmzvkmbbz6w0fyl0k";
   };
 
-  vendorSha256 = "0cd6h5d4yjn86q296qp6lgxcykci1233s4s2fp8m0l3ywss69fck";
+  vendorSha256 = "0ydyfdx9syrv719knwv64srfx4d1m9pzkivfc3q188bx5qx67pjw";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/networking/corkscrew/default.nix b/nixpkgs/pkgs/tools/networking/corkscrew/default.nix
index 58a43c30a935..3aacb0da6a2e 100644
--- a/nixpkgs/pkgs/tools/networking/corkscrew/default.nix
+++ b/nixpkgs/pkgs/tools/networking/corkscrew/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, automake }:
 
 stdenv.mkDerivation rec {
-  name = "corkscrew-2.0";
+  pname = "corkscrew";
+  version = "2.0";
 
   src = fetchurl {
-    url = "http://agroman.net/corkscrew/${name}.tar.gz";
+    url = "http://agroman.net/corkscrew/corkscrew-${version}.tar.gz";
     sha256 = "0d0fcbb41cba4a81c4ab494459472086f377f9edb78a2e2238ed19b58956b0be";
   };
 
diff --git a/nixpkgs/pkgs/tools/networking/curlie/default.nix b/nixpkgs/pkgs/tools/networking/curlie/default.nix
index 9ae9644eb940..9d3e4025a991 100644
--- a/nixpkgs/pkgs/tools/networking/curlie/default.nix
+++ b/nixpkgs/pkgs/tools/networking/curlie/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "curlie";
-  version = "1.6.0";
+  version = "1.6.2";
 
   src= fetchFromGitHub {
     owner = "rs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-rrwdqaKrC37BaI9RuTTv6EiOZ3ztgd7nGuplmeW02h8=";
+    sha256 = "sha256-2CZpqc1MnAY6M1UFakKLaqGjaifw+7bN4hxc0jWgSps=";
   };
 
   vendorSha256 = "sha256-tYZtnD7RUurhl8yccXlTIvOxybBJITM+it1ollYJ1OI=";
diff --git a/nixpkgs/pkgs/tools/networking/ddclient/default.nix b/nixpkgs/pkgs/tools/networking/ddclient/default.nix
index 72daa0608a67..e4bb685b518e 100644
--- a/nixpkgs/pkgs/tools/networking/ddclient/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ddclient/default.nix
@@ -14,7 +14,7 @@ perlPackages.buildPerlPackage rec {
   # perl packages by default get devdoc which isn't present
   outputs = [ "out" ];
 
-  buildInputs = with perlPackages; [ IOSocketSSL DigestSHA1 DataValidateIP JSONPP ];
+  buildInputs = with perlPackages; [ IOSocketSSL DigestSHA1 DataValidateIP JSONPP IOSocketInet6 ];
 
   # Use iproute2 instead of ifconfig
   preConfigure = ''
diff --git a/nixpkgs/pkgs/tools/networking/dhcp/default.nix b/nixpkgs/pkgs/tools/networking/dhcp/default.nix
index 5d71f9641fd9..2a722d17c01f 100644
--- a/nixpkgs/pkgs/tools/networking/dhcp/default.nix
+++ b/nixpkgs/pkgs/tools/networking/dhcp/default.nix
@@ -84,7 +84,7 @@ stdenv.mkDerivation rec {
    '';
 
     homepage = "https://www.isc.org/dhcp/";
-    license = licenses.isc;
+    license = licenses.mpl20;
     platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/dnsproxy/default.nix b/nixpkgs/pkgs/tools/networking/dnsproxy/default.nix
index c28e94a8218c..ffa2138ffa82 100644
--- a/nixpkgs/pkgs/tools/networking/dnsproxy/default.nix
+++ b/nixpkgs/pkgs/tools/networking/dnsproxy/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "dnsproxy";
-  version = "0.38.1";
+  version = "0.38.3";
 
   src = fetchFromGitHub {
     owner = "AdguardTeam";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-H0K38SX/mKsVjdQEa6vzx5TNRhqqomYk28+5Wl5H0sA=";
+    sha256 = "sha256-VfEfxcewKo8D8kNsMuCvrLOZNl632ZIFyD+RG8qzjQ4=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/tools/networking/getmail/default.nix b/nixpkgs/pkgs/tools/networking/getmail/default.nix
index 44481802cc08..fc06ba0363d8 100644
--- a/nixpkgs/pkgs/tools/networking/getmail/default.nix
+++ b/nixpkgs/pkgs/tools/networking/getmail/default.nix
@@ -23,7 +23,6 @@ python2Packages.buildPythonApplication rec {
     platforms = lib.platforms.linux;
 
     homepage = "http://pyropus.ca/software/getmail/";
-    inherit version;
     updateWalker = true;
     license = lib.licenses.gpl2Plus;
   };
diff --git a/nixpkgs/pkgs/tools/networking/getmail6/default.nix b/nixpkgs/pkgs/tools/networking/getmail6/default.nix
index 910758fcf207..dc36a7d124a4 100644
--- a/nixpkgs/pkgs/tools/networking/getmail6/default.nix
+++ b/nixpkgs/pkgs/tools/networking/getmail6/default.nix
@@ -5,13 +5,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "getmail6";
-  version = "6.18";
+  version = "6.18.3";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-n2ADzxkd7bO6cO8UioCdRdCqUu03G9jxs9biEZACSus=";
+    sha256 = "sha256-8tBSi9QzWcVL09j6aa2yWFhLlqaI6DREX2PpKvHC3qU=";
   };
 
   # needs a Docker setup
diff --git a/nixpkgs/pkgs/tools/networking/ifstat-legacy/default.nix b/nixpkgs/pkgs/tools/networking/ifstat-legacy/default.nix
index 8383f82fd93c..014cce5ea4f1 100644
--- a/nixpkgs/pkgs/tools/networking/ifstat-legacy/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ifstat-legacy/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "01zmv6vk5kh5xmd563xws8a1qnxjb6b6kv59yzz9r3rrghxhd6c5";
   };
 
-  buildInputs = [ net-snmp ];
+  buildInputs = lib.optional stdenv.isLinux net-snmp;
 
   nativeBuildInputs = [ autoreconfHook ];
 
diff --git a/nixpkgs/pkgs/tools/networking/innernet/default.nix b/nixpkgs/pkgs/tools/networking/innernet/default.nix
index cee4956269e1..f643702d625b 100644
--- a/nixpkgs/pkgs/tools/networking/innernet/default.nix
+++ b/nixpkgs/pkgs/tools/networking/innernet/default.nix
@@ -2,15 +2,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "innernet";
-  version = "1.3.1";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "tonarino";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Tnwq86gAbi24O8/26134gJCf9+wol1zma980t9iHEKY=";
+    sha256 = "sha256-n+xNWhOkRCIcoBHR8u+xZK81fU0usIfFhYg3BO9yXik=";
   };
-  cargoSha256 = "sha256-Wy+i1lmXpsy0Sy0GF5XUfXsLQHeV7cQo9nUxUEFnHOU=";
+  cargoSha256 = "sha256-cTqQtJpuwVlUKfAK8ASf6vq6PU2NE8PT/el/Hz4HgtA=";
 
   nativeBuildInputs = with llvmPackages; [
     llvm
diff --git a/nixpkgs/pkgs/tools/networking/ip2unix/default.nix b/nixpkgs/pkgs/tools/networking/ip2unix/default.nix
index 992ee324cc50..7e2eef70b8a2 100644
--- a/nixpkgs/pkgs/tools/networking/ip2unix/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ip2unix/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ip2unix";
-  version = "2.1.3";
+  version = "2.1.4";
 
   src = fetchFromGitHub {
     owner = "nixcloud";
     repo = "ip2unix";
     rev = "v${version}";
-    sha256 = "19c449h60b2m1d8kawnhpi4y9y4ddm24jmlh8kilqmx8m5l2khr6";
+    sha256 = "1pl8ayadxb0zzh5s26yschkjhr1xffbzzv347m88f9y0jv34d24r";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/networking/iwgtk/default.nix b/nixpkgs/pkgs/tools/networking/iwgtk/default.nix
new file mode 100644
index 000000000000..5c89facd3fa3
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/iwgtk/default.nix
@@ -0,0 +1,28 @@
+{ fetchFromGitHub, gtk3, lib, pkg-config, stdenv }:
+
+stdenv.mkDerivation rec {
+  pname = "iwgtk";
+  version = "0.4";
+
+  src = fetchFromGitHub {
+    owner = "j-lentz";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "129h7vq9b1r9a5c79hk8d06bj8lgzrnhq55x54hqri9c471jjh0s";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ gtk3 ];
+
+  makeFlags = [ "prefix=$(out)" ];
+
+  meta = with lib; {
+    description = "Lightweight, graphical wifi management utility for Linux";
+    homepage = "https://github.com/j-lentz/iwgtk";
+    changelog = "https://github.com/j-lentz/iwgtk/blob/v${version}/CHANGELOG";
+    license = licenses.gpl3Only;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/networking/kea/default.nix b/nixpkgs/pkgs/tools/networking/kea/default.nix
index e852fdb1c2d4..e3e4a67c131f 100644
--- a/nixpkgs/pkgs/tools/networking/kea/default.nix
+++ b/nixpkgs/pkgs/tools/networking/kea/default.nix
@@ -8,7 +8,9 @@
 , libmysqlclient
 , log4cplus
 , postgresql
-, python3 }:
+, python3
+, nixosTests
+}:
 
 stdenv.mkDerivation rec {
   pname = "kea";
@@ -48,11 +50,15 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  passthru.tests = {
+    inherit (nixosTests) kea;
+  };
+
   meta = with lib; {
     homepage = "https://kea.isc.org/";
     description = "High-performance, extensible DHCP server by ISC";
     longDescription = ''
-      KEA is a new open source DHCPv4/DHCPv6 server being developed by
+      Kea is a new open source DHCPv4/DHCPv6 server being developed by
       Internet Systems Consortium. The objective of this project is to
       provide a very high-performance, extensible DHCP server engine for
       use by enterprises and service providers, either as is or with
@@ -60,6 +66,6 @@ stdenv.mkDerivation rec {
     '';
     license = licenses.mpl20;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ fpletz ];
+    maintainers = with maintainers; [ fpletz hexa ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/linkchecker/default.nix b/nixpkgs/pkgs/tools/networking/linkchecker/default.nix
index 05da924c47e4..480321ad15fc 100644
--- a/nixpkgs/pkgs/tools/networking/linkchecker/default.nix
+++ b/nixpkgs/pkgs/tools/networking/linkchecker/default.nix
@@ -16,7 +16,7 @@ buildPythonApplication rec {
   nativeBuildInputs = [ gettext ];
 
   propagatedBuildInputs = [
-    ConfigArgParse
+    configargparse
     argcomplete
     beautifulsoup4
     pyopenssl
diff --git a/nixpkgs/pkgs/tools/networking/maphosts/default.nix b/nixpkgs/pkgs/tools/networking/maphosts/default.nix
index 8e3d0cf9160c..6632485b7091 100644
--- a/nixpkgs/pkgs/tools/networking/maphosts/default.nix
+++ b/nixpkgs/pkgs/tools/networking/maphosts/default.nix
@@ -7,9 +7,10 @@ let
     gemdir = ./.;
   };
 in stdenv.mkDerivation {
-  name = "maphosts-${env.gems.maphosts.version}";
+  pname = "maphosts";
+  version = env.gems.maphosts.version;
 
-  phases = ["installPhase"];
+  dontUnpack = true;
 
   installPhase = ''
     mkdir -p "$out/bin"
diff --git a/nixpkgs/pkgs/tools/networking/minio-client/default.nix b/nixpkgs/pkgs/tools/networking/minio-client/default.nix
index 70b663edded5..06ec1b5a83f7 100644
--- a/nixpkgs/pkgs/tools/networking/minio-client/default.nix
+++ b/nixpkgs/pkgs/tools/networking/minio-client/default.nix
@@ -2,18 +2,16 @@
 
 buildGoModule rec {
   pname = "minio-client";
-  version = "2021-03-23T05-46-11Z";
+  version = "2021-06-13T17-48-22Z";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "mc";
     rev = "RELEASE.${version}";
-    sha256 = "sha256-AtE9Zy8tRvcE+gYc0pqJDEFnXL4jSbJ4b6l3ZOe69Y4=";
+    sha256 = "sha256-u0WO7KSalDqlRwbN3b74FOb632fIGPZ2F0T8qLrvt+U=";
   };
 
-  vendorSha256 = "sha256-cIr8d5jz4EfBFuOBZG4Kz20wSXy1Cni77V+JR6vLHwQ=";
-
-  doCheck = false;
+  vendorSha256 = "sha256-BadW8AKHcrkCS3sXR7bqdgNhRYkfXIQOteMxIbiLvwg=";
 
   subPackages = [ "." ];
 
@@ -23,10 +21,15 @@ buildGoModule rec {
     sed -i "s/CommitID.*/CommitID = \"${src.rev}\"/g" cmd/build-constants.go
   '';
 
+  doInstallCheck = true;
+  installCheckPhase = ''
+    $out/bin/mc --version | grep ${version} > /dev/null
+  '';
+
   meta = with lib; {
     homepage = "https://github.com/minio/mc";
     description = "A replacement for ls, cp, mkdir, diff and rsync commands for filesystems and object storage";
-    maintainers = with maintainers; [ eelco bachp ];
+    maintainers = with maintainers; [ bachp eelco superherointj ];
     platforms = platforms.unix;
     license = licenses.asl20;
   };
diff --git a/nixpkgs/pkgs/tools/networking/n2n/default.nix b/nixpkgs/pkgs/tools/networking/n2n/default.nix
new file mode 100644
index 000000000000..aec4a1c5f530
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/n2n/default.nix
@@ -0,0 +1,32 @@
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config }:
+
+stdenv.mkDerivation rec {
+  pname = "n2n";
+  version = "2.8";
+
+  src = fetchFromGitHub {
+    owner = "ntop";
+    repo = "n2n";
+    rev = version;
+    hash = "sha256-2xJ8gYVZJZoKs6PZ/9GacgxQ+/3tmnRntT1AbPe1At4=";
+  };
+
+  nativeBuildInputs = [ autoreconfHook pkg-config ];
+
+  postPatch = ''
+    patchShebangs autogen.sh
+  '';
+
+  preAutoreconf = ''
+    ./autogen.sh
+  '';
+
+  PREFIX = placeholder "out";
+
+  meta = with lib; {
+    description = "Peer-to-peer VPN";
+    homepage = "https://www.ntop.org/products/n2n/";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ malvo ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/networking/ngrok-2/default.nix b/nixpkgs/pkgs/tools/networking/ngrok-2/default.nix
index fbfab8d2f05a..2840b9d8400a 100644
--- a/nixpkgs/pkgs/tools/networking/ngrok-2/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ngrok-2/default.nix
@@ -9,8 +9,7 @@ let versions = builtins.fromJSON (builtins.readFile ./versions.json);
            else if stdenv.isAarch64 then "arm64"
            else throw "Unsupported architecture";
     os = if stdenv.isLinux then "linux"
-         else if (stdenv.isDarwin && stdenv.isx86_64) then "darwin"
-         else if stdenv.isDarwin then throw "Unsupported architecture"
+         else if stdenv.isDarwin then "darwin"
          else throw "Unsupported os";
     versionInfo = versions."${os}-${arch}";
     inherit (versionInfo) version sha256 url;
diff --git a/nixpkgs/pkgs/tools/networking/ookla-speedtest/default.nix b/nixpkgs/pkgs/tools/networking/ookla-speedtest/default.nix
new file mode 100644
index 000000000000..200b488cf714
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/ookla-speedtest/default.nix
@@ -0,0 +1,43 @@
+{ lib, stdenv, fetchurl }:
+
+let
+  pname = "ookla-speedtest";
+  version = "1.0.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=";
+    };
+    aarch64-linux = fetchurl {
+      url = "https://install.speedtest.net/app/cli/${pname}-${version}-aarch64-linux.tgz";
+      sha256 = "sha256-BzaE3DSQUIygGwTFhV4Ez9eX/tM/bqam7cJt+8b2qp4=";
+    };
+  };
+in
+
+stdenv.mkDerivation rec {
+  inherit pname version;
+
+  src = srcs.${stdenv.hostPlatform.system};
+
+  setSourceRoot = ''
+    sourceRoot=$PWD
+  '';
+
+  dontBuild = true;
+  dontConfigure = true;
+
+  installPhase = ''
+    install -D speedtest $out/bin/speedtest
+    install -D speedtest.5 $out/share/man/man5/speedtest.5
+  '';
+
+  meta = with lib; {
+    description = "Command line internet speedtest tool by Ookla";
+    homepage = "https://www.speedtest.net/apps/cli";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ kranzes ];
+    platforms = lib.attrNames srcs;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/networking/openapi-generator-cli/default.nix b/nixpkgs/pkgs/tools/networking/openapi-generator-cli/default.nix
index b195c655c93f..34d2c22fb242 100644
--- a/nixpkgs/pkgs/tools/networking/openapi-generator-cli/default.nix
+++ b/nixpkgs/pkgs/tools/networking/openapi-generator-cli/default.nix
@@ -15,7 +15,7 @@ let this = stdenv.mkDerivation rec {
     sha256 = "06dvy4pwgpyf209n0b27qwkjj7zlgadg2czwxapy94fd1wpq9yb2";
   };
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   installPhase = ''
     runHook preInstall
diff --git a/nixpkgs/pkgs/tools/networking/openapi-generator-cli/unstable.nix b/nixpkgs/pkgs/tools/networking/openapi-generator-cli/unstable.nix
index 306654f05d99..33eb33e10b06 100644
--- a/nixpkgs/pkgs/tools/networking/openapi-generator-cli/unstable.nix
+++ b/nixpkgs/pkgs/tools/networking/openapi-generator-cli/unstable.nix
@@ -15,7 +15,7 @@ let this = stdenv.mkDerivation rec {
     sha256 = "1ji3yw9dp4srlgqxvb21vrcp2bzj4himxsmp8l8zid9nxsc1m71x";
   };
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   installPhase = ''
     runHook preInstall
diff --git a/nixpkgs/pkgs/tools/networking/p2p/gtk-gnutella/default.nix b/nixpkgs/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
index 0c0bc3705263..8d8069bec29e 100644
--- a/nixpkgs/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
+++ b/nixpkgs/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
@@ -17,15 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gtk-gnutella";
-  # NOTE: Please remove hardeningDisable on the next release, see:
-  # https://sourceforge.net/p/gtk-gnutella/bugs/555/#5c19
-  version = "1.2.0";
+  version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "gtk-gnutella";
     repo = "gtk-gnutella";
     rev = "v${version}";
-    sha256 = "0j596dpajk68bkry0gmpqawsi61rphfciy4vji1dh890jyhkhdgy";
+    sha256 = "sha256-Hk5KPXSJ2s0J/stW3Qgvu6p6RG5VCvuWx1UlMR+3JO4=";
   };
 
   nativeBuildInputs = [
@@ -54,8 +52,6 @@ stdenv.mkDerivation rec {
     ++ lib.optionals (!enableGui) [ "--topless" ]
   ;
 
-  hardeningDisable = [ "bindnow" "fortify" "pic" "relro" ];
-
   enableParallelBuilding = true;
 
   postInstall = ''
diff --git a/nixpkgs/pkgs/tools/networking/ppp/default.nix b/nixpkgs/pkgs/tools/networking/ppp/default.nix
index 36d156a3994b..708932ac1c9d 100644
--- a/nixpkgs/pkgs/tools/networking/ppp/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ppp/default.nix
@@ -1,45 +1,37 @@
-{ lib, stdenv, fetchurl, fetchpatch, fetchFromGitHub, substituteAll, libpcap, openssl }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, substituteAll
+, libpcap
+, openssl
+}:
 
 stdenv.mkDerivation rec {
-  version = "2.4.8";
+  version = "2.4.9";
   pname = "ppp";
 
   src = fetchFromGitHub {
-    owner = "paulusmack";
-    repo = "ppp";
-    rev = "ppp-${version}";
-    sha256 = "1i88m79h6g3fzsb4yw3k8bq1grsx3hsyawm7id2vcaab0gfqzjjv";
+    owner = "ppp-project";
+    repo = pname;
+    rev = "${pname}-${version}";
+    sha256 = "sha256-8+nbqRNfKPLDx+wmuKSkv+BSeG72hKJI4dNqypqeEK4=";
   };
 
-  patches =
-    [
-      ( substituteAll {
-        src = ./nix-purity.patch;
-        inherit libpcap;
-        glibc = stdenv.cc.libc.dev or stdenv.cc.libc;
-        openssl = openssl.dev;
-      })
-      # Without nonpriv.patch, pppd --version doesn't work when not run as
-      # root.
-      ./nonpriv.patch
-      (fetchpatch {
-        name = "CVE-2015-3310.patch";
-        url = "https://github.com/paulusmack/ppp/commit/858976b1fc3107f1261aae337831959b511b83c2.patch";
-        sha256 = "0wirmcis67xjwllqhz9lsz1b7dcvl8shvz78lxgybc70j2sv7ih4";
-      })
-      (fetchurl {
-        url = "https://www.nikhef.nl/~janjust/ppp/ppp-2.4.7-eaptls-mppe-1.102.patch";
-        sha256 = "04war8l5szql53l36043hvzgfwqp3v76kj8brbz7wlf7vs2mlkia";
-      })
-      (fetchpatch {
-        name = "CVE-2020-8597.patch";
-        url = "https://github.com/paulusmack/ppp/commit/8d7970b8f3db727fe798b65f3377fe6787575426.patch";
-        sha256 = "129wnhwxmzvr3y9gzxv82jnb5y8m4yg8vkpa0xl2rwkl8anbzgkh";
-      })
-      ./musl-fix-headers.patch
-    ];
+  patches = [
+    (substituteAll {
+      src = ./nix-purity.patch;
+      glibc = stdenv.cc.libc.dev or stdenv.cc.libc;
+      openssl_dev = openssl.dev;
+      openssl_out = openssl.out;
+    })
+    # Without nonpriv.patch, pppd --version doesn't work when not run as root.
+    ./nonpriv.patch
+  ];
 
-  buildInputs = [ libpcap openssl ];
+  buildInputs = [
+    libpcap
+    openssl
+  ];
 
   postPatch = ''
     # strip is not found when cross compiling with seemingly no way to point
@@ -66,9 +58,14 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = "https://ppp.samba.org/";
-    description = "Point-to-point implementation for Linux and Solaris";
-    license = with licenses; [ bsdOriginal publicDomain gpl2 lgpl2 ];
+    homepage = "https://ppp.samba.org";
+    description = "Point-to-point implementation to provide Internet connections over serial lines";
+    license = with licenses; [
+      bsdOriginal
+      publicDomain
+      gpl2
+      lgpl2
+    ];
     platforms = platforms.linux;
     maintainers = [ ];
   };
diff --git a/nixpkgs/pkgs/tools/networking/ppp/musl-fix-headers.patch b/nixpkgs/pkgs/tools/networking/ppp/musl-fix-headers.patch
deleted file mode 100644
index d6252a52675b..000000000000
--- a/nixpkgs/pkgs/tools/networking/ppp/musl-fix-headers.patch
+++ /dev/null
@@ -1,137 +0,0 @@
-diff --git a/include/net/ppp_defs.h b/include/net/ppp_defs.h
-index b06eda5..dafa36c 100644
---- a/include/net/ppp_defs.h
-+++ b/include/net/ppp_defs.h
-@@ -38,6 +38,8 @@
- #ifndef _PPP_DEFS_H_
- #define _PPP_DEFS_H_
- 
-+#include <sys/time.h>
-+
- /*
-  * The basic PPP frame.
-  */
-diff --git a/pppd/Makefile.linux b/pppd/Makefile.linux
-index a74c914..7acd2cf 100644
---- a/pppd/Makefile.linux
-+++ b/pppd/Makefile.linux
-@@ -126,7 +126,7 @@ LIBS	+= -lcrypt
- endif
- 
- ifdef USE_LIBUTIL
--CFLAGS	+= -DHAVE_LOGWTMP=1
-+#CFLAGS	+= -DHAVE_LOGWTMP=1
- LIBS	+= -lutil
- endif
- 
-diff --git a/pppd/magic.h b/pppd/magic.h
-index c81213b..305aece 100644
---- a/pppd/magic.h
-+++ b/pppd/magic.h
-@@ -42,6 +42,8 @@
-  * $Id: magic.h,v 1.5 2003/06/11 23:56:26 paulus Exp $
-  */
- 
-+#include <sys/cdefs.h>
-+
- void magic_init (void);	/* Initialize the magic number generator */
- u_int32_t magic (void);	/* Returns the next magic number */
- 
-diff --git a/pppd/plugins/rp-pppoe/if.c b/pppd/plugins/rp-pppoe/if.c
-index 91e9a57..9c0fac3 100644
---- a/pppd/plugins/rp-pppoe/if.c
-+++ b/pppd/plugins/rp-pppoe/if.c
-@@ -30,10 +30,6 @@ static char const RCSID[] =
- #include <linux/if_packet.h>
- #endif
- 
--#ifdef HAVE_NET_ETHERNET_H
--#include <net/ethernet.h>
--#endif
--
- #ifdef HAVE_ASM_TYPES_H
- #include <asm/types.h>
- #endif
-diff --git a/pppd/plugins/rp-pppoe/plugin.c b/pppd/plugins/rp-pppoe/plugin.c
-index a8c2bb4..ca34d79 100644
---- a/pppd/plugins/rp-pppoe/plugin.c
-+++ b/pppd/plugins/rp-pppoe/plugin.c
-@@ -46,7 +46,6 @@ static char const RCSID[] =
- #include <unistd.h>
- #include <fcntl.h>
- #include <signal.h>
--#include <net/ethernet.h>
- #include <net/if_arp.h>
- #include <linux/ppp_defs.h>
- #include <linux/if_pppox.h>
-diff --git a/pppd/plugins/rp-pppoe/pppoe-discovery.c b/pppd/plugins/rp-pppoe/pppoe-discovery.c
-index 3d3bf4e..b5f82d3 100644
---- a/pppd/plugins/rp-pppoe/pppoe-discovery.c
-+++ b/pppd/plugins/rp-pppoe/pppoe-discovery.c
-@@ -27,10 +27,6 @@
- #include <linux/if_packet.h>
- #endif
- 
--#ifdef HAVE_NET_ETHERNET_H
--#include <net/ethernet.h>
--#endif
--
- #ifdef HAVE_ASM_TYPES_H
- #include <asm/types.h>
- #endif
-@@ -55,6 +51,8 @@ void die(int status)
- 	exit(status);
- }
- 
-+#define error(x...) fprintf(stderr, x)
-+
- /* Initialize frame types to RFC 2516 values.  Some broken peers apparently
-    use different frame types... sigh... */
- 
-diff --git a/pppd/plugins/rp-pppoe/pppoe.h b/pppd/plugins/rp-pppoe/pppoe.h
-index c4aaa6e..70aef85 100644
---- a/pppd/plugins/rp-pppoe/pppoe.h
-+++ b/pppd/plugins/rp-pppoe/pppoe.h
-@@ -88,18 +88,6 @@ typedef unsigned long UINT32_t;
- #include <linux/if_ether.h>
- #endif
- 
--#ifdef HAVE_NETINET_IF_ETHER_H
--#include <sys/types.h>
--
--#ifdef HAVE_SYS_SOCKET_H
--#include <sys/socket.h>
--#endif
--#ifndef HAVE_SYS_DLPI_H
--#include <netinet/if_ether.h>
--#endif
--#endif
--
--
- /* Ethernet frame types according to RFC 2516 */
- #define ETH_PPPOE_DISCOVERY 0x8863
- #define ETH_PPPOE_SESSION   0x8864
-diff --git a/pppd/sys-linux.c b/pppd/sys-linux.c
-index 6d71530..86d224e 100644
---- a/pppd/sys-linux.c
-+++ b/pppd/sys-linux.c
-@@ -102,19 +102,11 @@
- #define MAX_ADDR_LEN 7
- #endif
- 
--#if !defined(__GLIBC__) || __GLIBC__ >= 2
- #include <asm/types.h>		/* glibc 2 conflicts with linux/types.h */
- #include <net/if.h>
- #include <net/if_arp.h>
- #include <net/route.h>
- #include <netinet/if_ether.h>
--#else
--#include <linux/types.h>
--#include <linux/if.h>
--#include <linux/if_arp.h>
--#include <linux/route.h>
--#include <linux/if_ether.h>
--#endif
- #include <netinet/in.h>
- #include <arpa/inet.h>
- 
diff --git a/nixpkgs/pkgs/tools/networking/ppp/nix-purity.patch b/nixpkgs/pkgs/tools/networking/ppp/nix-purity.patch
index 975ea9db6096..c3363e0ccb64 100644
--- a/nixpkgs/pkgs/tools/networking/ppp/nix-purity.patch
+++ b/nixpkgs/pkgs/tools/networking/ppp/nix-purity.patch
@@ -1,31 +1,33 @@
 diff --git a/pppd/Makefile.linux b/pppd/Makefile.linux
-index 9664f70..d07e01e 100644
+index 22837c5..6f6fff5 100644
 --- a/pppd/Makefile.linux
 +++ b/pppd/Makefile.linux
-@@ -125,7 +125,7 @@ CFLAGS   += -DHAS_SHADOW
+@@ -111,8 +111,8 @@ endif
+ 
+ # EAP SRP-SHA1
+ ifdef USE_SRP
+-CFLAGS	+= -DUSE_SRP -DOPENSSL -I/usr/local/ssl/include
+-LIBS	+= -lsrp -L/usr/local/ssl/lib
++CFLAGS	+= -DUSE_SRP -DOPENSSL -I@openssl_dev@/include/openssl
++LIBS	+= -lsrp -L@openssl_out@/lib
+ NEEDCRYPTOLIB = y
+ TARGETS	+= srp-entry
+ EXTRAINSTALL = $(INSTALL) -c -m 555 srp-entry $(BINDIR)/srp-entry
+@@ -143,7 +143,7 @@ CFLAGS   += -DHAS_SHADOW
  #LIBS     += -lshadow $(LIBS)
  endif
  
--ifneq ($(wildcard $(shell $(CC) --print-sysroot)/usr/include/crypt.h),)
+-ifeq ($(shell echo '\#include <crypt.h>' | $(CC) -E - >/dev/null 2>&1 && echo yes),yes)
 +ifneq ($(wildcard @glibc@/include/crypt.h),)
  CFLAGS  += -DHAVE_CRYPT_H=1
- LIBS   += -lcrypt
+ LIBS	+= -lcrypt
  endif
-@@ -137,7 +137,7 @@ endif
+@@ -155,7 +155,7 @@ endif
  
  ifdef NEEDDES
  ifndef USE_CRYPT
 -CFLAGS   += -I$(shell $(CC) --print-sysroot)/usr/include/openssl
-+CFLAGS   += -I@openssl@/include/openssl
- LIBS     += -lcrypto
++CFLAGS   += -I@openssl_dev@/include/openssl
+ NEEDCRYPTOLIB = y
  else
  CFLAGS   += -DUSE_CRYPT=1
-@@ -188,7 +188,7 @@ LIBS        += -ldl
- endif
- 
- ifdef FILTER
--ifneq ($(wildcard /usr/include/pcap-bpf.h),)
-+ifneq ($(wildcard @libpcap@/include/pcap-bpf.h),)
- LIBS    += -lpcap
- CFLAGS  += -DPPP_FILTER
- endif
diff --git a/nixpkgs/pkgs/tools/networking/siege/default.nix b/nixpkgs/pkgs/tools/networking/siege/default.nix
index 3a7e64623afd..175595edafb8 100644
--- a/nixpkgs/pkgs/tools/networking/siege/default.nix
+++ b/nixpkgs/pkgs/tools/networking/siege/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "siege";
-  version = "4.0.9";
+  version = "4.1.1";
 
   src = fetchurl {
     url = "http://download.joedog.org/siege/${pname}-${version}.tar.gz";
-    sha256 = "0xzjfljhv9wcf58qw2c1sbpa5nqz1pb6rjpgvz7bxrv90n31bghx";
+    sha256 = "1a74py0ib1gr3znv9ah5acw67ngl08b14dbc90ww9clvgdr2ag0l";
   };
 
   NIX_LDFLAGS = lib.optionalString stdenv.isLinux "-lgcc_s";
diff --git a/nixpkgs/pkgs/tools/networking/stevenblack-blocklist/default.nix b/nixpkgs/pkgs/tools/networking/stevenblack-blocklist/default.nix
index ebbaaa73fce1..ddccc9ac6358 100644
--- a/nixpkgs/pkgs/tools/networking/stevenblack-blocklist/default.nix
+++ b/nixpkgs/pkgs/tools/networking/stevenblack-blocklist/default.nix
@@ -1,7 +1,7 @@
 { lib, fetchFromGitHub }:
 
 let
-  version = "3.7.13";
+  version = "3.8.2";
 in
 fetchFromGitHub {
   name = "stevenblack-blocklist-${version}";
@@ -9,7 +9,7 @@ fetchFromGitHub {
   owner = "StevenBlack";
   repo = "hosts";
   rev = version;
-  sha256 = "sha256-nSajiRDpcFp3MwnQPnoBVB/OWnhVqkeSmS7OBrfhMnw=";
+  sha256 = "sha256-rkyAF1/kPI34nZ57Hqg8QivK0YERZ54jZ1HQ5oXYgxc=";
 
   meta = with lib; {
     description = "Unified hosts file with base extensions";
diff --git a/nixpkgs/pkgs/tools/networking/telepresence2/default.nix b/nixpkgs/pkgs/tools/networking/telepresence2/default.nix
index 97c758e19b4d..54de621763c5 100644
--- a/nixpkgs/pkgs/tools/networking/telepresence2/default.nix
+++ b/nixpkgs/pkgs/tools/networking/telepresence2/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "telepresence2";
-  version = "2.2.1";
+  version = "2.3.6";
 
   src = fetchFromGitHub {
     owner = "telepresenceio";
     repo = "telepresence";
     rev = "v${version}";
-    sha256 = "0pr6vm68jr5ld7hy2b4dwmjziir59vg137c74rdn1wlhq3n8vr41";
+    sha256 = "1bs4h450109vhy18kpyy6y4p5l9kvz4w09m56fxh5z547m5ax6k3";
   };
 
-  vendorSha256 = "0d0p879zchhrzrf6f5zc3vdcd5zi1ind7ibvb46y6wx6lp0f1nrp";
+  vendorSha256 = "0xmw9mc0iy64kb12lsii4nn63ynh6gab9ls8z6mrizjjqz845sa5";
 
   buildFlagsArray = ''
     -ldflags=-s -w -X=github.com/telepresenceio/telepresence/v2/pkg/version.Version=${src.rev}
diff --git a/nixpkgs/pkgs/tools/networking/userhosts/default.nix b/nixpkgs/pkgs/tools/networking/userhosts/default.nix
new file mode 100644
index 000000000000..6cec402638a1
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/userhosts/default.nix
@@ -0,0 +1,23 @@
+{lib, stdenv, fetchFromGitHub, pkg-config, ncurses, libnl }:
+
+stdenv.mkDerivation rec {
+  pname = "userhosts";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "figiel";
+    repo = "hosts";
+    rev = "v${version}";
+    hash = "sha256-9uF0fYl4Zz/Ia2UKx7CBi8ZU8jfWoBfy2QSgTSwXo5A";
+  };
+
+  installFlags = [ "PREFIX=$(out)" ];
+
+  meta = with lib; {
+    description = "A libc wrapper providing per-user hosts file";
+    homepage = "https://github.com/figiel/hosts";
+    maintainers = [ maintainers.bobvanderlinden ];
+    license = licenses.cc0;
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/networking/vde2/default.nix b/nixpkgs/pkgs/tools/networking/vde2/default.nix
index bc3be9122652..58fae3f9f157 100644
--- a/nixpkgs/pkgs/tools/networking/vde2/default.nix
+++ b/nixpkgs/pkgs/tools/networking/vde2/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     # Fix build with openssl 1.1.0
     (fetchpatch {
       name = "vde_cryptcab-compile-against-openssl-1.1.0.patch";
-      url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/vde_cryptcab-compile-against-openssl-1.1.0.patch?h=packages/vde2&id=15b11be49997fa94b603e366064690b7cc6bce61";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/15b11be49997fa94b603e366064690b7cc6bce61/trunk/vde_cryptcab-compile-against-openssl-1.1.0.patch";
       sha256 = "07z1yabwigq35mkwzqa934n7vjnjlqz5xfzq8cfj87lgyjjp00qi";
     })
   ] ++ lib.optional stdenv.hostPlatform.isMusl [
diff --git a/nixpkgs/pkgs/tools/networking/vpnc-scripts/default.nix b/nixpkgs/pkgs/tools/networking/vpnc-scripts/default.nix
index 734c6d9f4ec8..776e8450d13c 100644
--- a/nixpkgs/pkgs/tools/networking/vpnc-scripts/default.nix
+++ b/nixpkgs/pkgs/tools/networking/vpnc-scripts/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchgit
 , makeWrapper
-, nettools, gawk, systemd, openresolv, coreutils, gnugrep
+, nettools, gawk, systemd, openresolv, coreutils, gnugrep, iproute2
 }:
 
 stdenv.mkDerivation {
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
       --replace "/usr/bin/resolvectl" "${systemd}/bin/resolvectl"
   '' + ''
     wrapProgram $out/bin/vpnc-script \
-      --prefix PATH : "${lib.makeBinPath ([ nettools gawk coreutils gnugrep ] ++ lib.optionals stdenv.isLinux [ openresolv ])}"
+      --prefix PATH : "${lib.makeBinPath ([ nettools gawk coreutils gnugrep ] ++ lib.optionals stdenv.isLinux [ openresolv iproute2 ])}"
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/networking/wavemon/default.nix b/nixpkgs/pkgs/tools/networking/wavemon/default.nix
index 19bfd6ae4547..c54c4f8691ad 100644
--- a/nixpkgs/pkgs/tools/networking/wavemon/default.nix
+++ b/nixpkgs/pkgs/tools/networking/wavemon/default.nix
@@ -15,7 +15,6 @@ stdenv.mkDerivation rec {
   };
 
   meta = with lib; {
-    inherit version;
     description = "Ncurses-based monitoring application for wireless network devices";
     homepage = "https://github.com/uoaerg/wavemon";
     license = licenses.gpl3Plus;
diff --git a/nixpkgs/pkgs/tools/networking/zssh/default.nix b/nixpkgs/pkgs/tools/networking/zssh/default.nix
index 07b7a8441b8e..d512b03dbea5 100644
--- a/nixpkgs/pkgs/tools/networking/zssh/default.nix
+++ b/nixpkgs/pkgs/tools/networking/zssh/default.nix
@@ -17,7 +17,7 @@ in stdenv.mkDerivation rec {
     # Cargo-culted from Arch, returns “out of pty's” without it
     (fetchurl {
       name = "fix_use_ptmx_on_arch.patch";
-      url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/fix_use_ptmx_on_arch.patch?h=packages/zssh&id=0a7c92543f9309856d02e31196f06d7c3eaa8b67";
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-community/0a7c92543f9309856d02e31196f06d7c3eaa8b67/trunk/fix_use_ptmx_on_arch.patch";
       sha256 = "12daw9wpy58ql882zww945wk9cg2adwp8qsr5rvazx0xq0qawgbr";
     })
   ];
diff --git a/nixpkgs/pkgs/tools/nix/nar-serve/default.nix b/nixpkgs/pkgs/tools/nix/nar-serve/default.nix
index 146165d880de..1d7fd6beb4a7 100644
--- a/nixpkgs/pkgs/tools/nix/nar-serve/default.nix
+++ b/nixpkgs/pkgs/tools/nix/nar-serve/default.nix
@@ -1,24 +1,19 @@
 { buildGoModule
 , fetchFromGitHub
 , lib
-
 }:
-let
-  pname = "nar-serve";
-  version = "0.3.0";
-
-in
 buildGoModule rec {
-  inherit pname version;
+  pname = "nar-serve";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "numtide";
     repo = "nar-serve";
     rev = "v${version}";
-    sha256 = "000xxrar5ngrqqfi7ynx84i6wi27mirgm26brhyg0y4pygc9ykhz";
+    hash = "sha256-h/pzKRXgcGTpr1YUKppDa+iTLKak/PGhbYa8ZczWj1U=";
   };
 
-  vendorSha256 = "0qkzbr85wkx3r7qgnzg9pdl7vsli10bzcdbj2gqd1kdzwb8khszs";
+  vendorSha256 = "sha256-eW+cul/5qJocpKV/6azxj7HTmkezDw6dNubPtAOP5HU=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/nix/nix-script/default.nix b/nixpkgs/pkgs/tools/nix/nix-script/default.nix
index a755d933219e..f9077ef13871 100644
--- a/nixpkgs/pkgs/tools/nix/nix-script/default.nix
+++ b/nixpkgs/pkgs/tools/nix/nix-script/default.nix
@@ -15,13 +15,20 @@ stdenv.mkDerivation {
     (haskellPackages.ghcWithPackages (hs: with hs; [ posix-escape ]))
   ];
 
-  phases = [ "buildPhase" "installPhase" "fixupPhase" ];
   buildPhase = ''
+    runHook preBuild
+
     mkdir -p $out/bin
     ghc -O2 $src/nix-script.hs -o $out/bin/nix-script -odir . -hidir .
+
+    runHook postBuild
   '';
   installPhase = ''
+    runHook preInstall
+
     ln -s $out/bin/nix-script $out/bin/nix-scripti
+
+    runHook postInstall
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/nix/nixos-option/CMakeLists.txt b/nixpkgs/pkgs/tools/nix/nixos-option/CMakeLists.txt
new file mode 100644
index 000000000000..e5834598c4fd
--- /dev/null
+++ b/nixpkgs/pkgs/tools/nix/nixos-option/CMakeLists.txt
@@ -0,0 +1,8 @@
+cmake_minimum_required (VERSION 2.6)
+project (nixos-option)
+
+add_executable(nixos-option nixos-option.cc libnix-copy-paste.cc)
+target_link_libraries(nixos-option PRIVATE -lnixmain -lnixexpr -lnixstore -lnixutil)
+target_compile_features(nixos-option PRIVATE cxx_std_17)
+
+install (TARGETS nixos-option DESTINATION bin)
diff --git a/nixpkgs/pkgs/tools/nix/nixos-option/default.nix b/nixpkgs/pkgs/tools/nix/nixos-option/default.nix
new file mode 100644
index 000000000000..216e2678e2e2
--- /dev/null
+++ b/nixpkgs/pkgs/tools/nix/nixos-option/default.nix
@@ -0,0 +1,12 @@
+{lib, stdenv, boost, cmake, pkg-config, nix, ... }:
+
+stdenv.mkDerivation rec {
+  name = "nixos-option";
+  src = ./.;
+  nativeBuildInputs = [ cmake pkg-config ];
+  buildInputs = [ boost nix ];
+  meta = with lib; {
+    license = licenses.lgpl2Plus;
+    maintainers = with maintainers; [ chkno ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/nix/nixos-option/libnix-copy-paste.cc b/nixpkgs/pkgs/tools/nix/nixos-option/libnix-copy-paste.cc
new file mode 100644
index 000000000000..875c07da6399
--- /dev/null
+++ b/nixpkgs/pkgs/tools/nix/nixos-option/libnix-copy-paste.cc
@@ -0,0 +1,83 @@
+// These are useful methods inside the nix library that ought to be exported.
+// Since they are not, copy/paste them here.
+// TODO: Delete these and use the ones in the library as they become available.
+
+#include <nix/config.h> // for nix/globals.hh's reference to SYSTEM
+
+#include "libnix-copy-paste.hh"
+#include <boost/format/alt_sstream.hpp>           // for basic_altstringbuf...
+#include <boost/format/alt_sstream_impl.hpp>      // for basic_altstringbuf...
+#include <boost/format/format_class.hpp>          // for basic_format
+#include <boost/format/format_fwd.hpp>            // for format
+#include <boost/format/format_implementation.hpp> // for basic_format::basi...
+#include <boost/optional/optional.hpp>            // for get_pointer
+#include <iostream>                               // for operator<<, basic_...
+#include <nix/types.hh>                           // for Strings, Error
+#include <string>                                 // for string, basic_string
+
+using boost::format;
+using nix::Error;
+using nix::Strings;
+using std::string;
+
+// From nix/src/libexpr/attr-path.cc
+Strings parseAttrPath(const string & s)
+{
+    Strings res;
+    string cur;
+    string::const_iterator i = s.begin();
+    while (i != s.end()) {
+        if (*i == '.') {
+            res.push_back(cur);
+            cur.clear();
+        } else if (*i == '"') {
+            ++i;
+            while (1) {
+                if (i == s.end())
+                    throw Error(format("missing closing quote in selection path '%1%'") % s);
+                if (*i == '"')
+                    break;
+                cur.push_back(*i++);
+            }
+        } else
+            cur.push_back(*i);
+        ++i;
+    }
+    if (!cur.empty())
+        res.push_back(cur);
+    return res;
+}
+
+// From nix/src/nix/repl.cc
+bool isVarName(const string & s)
+{
+    if (s.size() == 0)
+        return false;
+    char c = s[0];
+    if ((c >= '0' && c <= '9') || c == '-' || c == '\'')
+        return false;
+    for (auto & i : s)
+        if (!((i >= 'a' && i <= 'z') || (i >= 'A' && i <= 'Z') || (i >= '0' && i <= '9') || i == '_' || i == '-' ||
+              i == '\''))
+            return false;
+    return true;
+}
+
+// From nix/src/nix/repl.cc
+std::ostream & printStringValue(std::ostream & str, const char * string)
+{
+    str << "\"";
+    for (const char * i = string; *i; i++)
+        if (*i == '\"' || *i == '\\')
+            str << "\\" << *i;
+        else if (*i == '\n')
+            str << "\\n";
+        else if (*i == '\r')
+            str << "\\r";
+        else if (*i == '\t')
+            str << "\\t";
+        else
+            str << *i;
+    str << "\"";
+    return str;
+}
diff --git a/nixpkgs/pkgs/tools/nix/nixos-option/libnix-copy-paste.hh b/nixpkgs/pkgs/tools/nix/nixos-option/libnix-copy-paste.hh
new file mode 100644
index 000000000000..2274e9a0f853
--- /dev/null
+++ b/nixpkgs/pkgs/tools/nix/nixos-option/libnix-copy-paste.hh
@@ -0,0 +1,9 @@
+#pragma once
+
+#include <iostream>
+#include <nix/types.hh>
+#include <string>
+
+nix::Strings parseAttrPath(const std::string & s);
+bool isVarName(const std::string & s);
+std::ostream & printStringValue(std::ostream & str, const char * string);
diff --git a/nixpkgs/pkgs/tools/nix/nixos-option/nixos-option.cc b/nixpkgs/pkgs/tools/nix/nixos-option/nixos-option.cc
new file mode 100644
index 000000000000..f779d82edbd6
--- /dev/null
+++ b/nixpkgs/pkgs/tools/nix/nixos-option/nixos-option.cc
@@ -0,0 +1,643 @@
+#include <nix/config.h> // for nix/globals.hh's reference to SYSTEM
+
+#include <exception>               // for exception_ptr, current_exception
+#include <functional>              // for function
+#include <iostream>                // for operator<<, basic_ostream, ostrin...
+#include <iterator>                // for next
+#include <list>                    // for _List_iterator
+#include <memory>                  // for allocator, unique_ptr, make_unique
+#include <new>                     // for operator new
+#include <nix/args.hh>             // for argvToStrings, UsageError
+#include <nix/attr-path.hh>        // for findAlongAttrPath
+#include <nix/attr-set.hh>         // for Attr, Bindings, Bindings::iterator
+#include <nix/common-eval-args.hh> // for MixEvalArgs
+#include <nix/eval-inline.hh>      // for EvalState::forceValue
+#include <nix/eval.hh>             // for EvalState, initGC, operator<<
+#include <nix/globals.hh>          // for initPlugins, Settings, settings
+#include <nix/nixexpr.hh>          // for Pos
+#include <nix/shared.hh>           // for getArg, LegacyArgs, printVersion
+#include <nix/store-api.hh>        // for openStore
+#include <nix/symbol-table.hh>     // for Symbol, SymbolTable
+#include <nix/types.hh>            // for Error, Path, Strings, PathSet
+#include <nix/util.hh>             // for absPath, baseNameOf
+#include <nix/value.hh>            // for Value, Value::(anonymous), Value:...
+#include <string>                  // for string, operator+, operator==
+#include <utility>                 // for move
+#include <variant>                 // for get, holds_alternative, variant
+#include <vector>                  // for vector<>::iterator, vector
+
+#include "libnix-copy-paste.hh"
+
+using nix::absPath;
+using nix::Bindings;
+using nix::Error;
+using nix::EvalError;
+using nix::EvalState;
+using nix::Path;
+using nix::PathSet;
+using nix::Strings;
+using nix::Symbol;
+using nix::tAttrs;
+using nix::ThrownError;
+using nix::tLambda;
+using nix::tString;
+using nix::UsageError;
+using nix::Value;
+
+// An ostream wrapper to handle nested indentation
+class Out
+{
+  public:
+    class Separator
+    {};
+    const static Separator sep;
+    enum LinePolicy
+    {
+        ONE_LINE,
+        MULTI_LINE
+    };
+    explicit Out(std::ostream & ostream) : ostream(ostream), policy(ONE_LINE), writeSinceSep(true) {}
+    Out(Out & o, const std::string & start, const std::string & end, LinePolicy policy);
+    Out(Out & o, const std::string & start, const std::string & end, int count)
+        : Out(o, start, end, count < 2 ? ONE_LINE : MULTI_LINE)
+    {}
+    Out(const Out &) = delete;
+    Out(Out &&) = default;
+    Out & operator=(const Out &) = delete;
+    Out & operator=(Out &&) = delete;
+    ~Out() { ostream << end; }
+
+  private:
+    std::ostream & ostream;
+    std::string indentation;
+    std::string end;
+    LinePolicy policy;
+    bool writeSinceSep;
+    template <typename T> friend Out & operator<<(Out & o, T thing);
+};
+
+template <typename T> Out & operator<<(Out & o, T thing)
+{
+    if (!o.writeSinceSep && o.policy == Out::MULTI_LINE) {
+        o.ostream << o.indentation;
+    }
+    o.writeSinceSep = true;
+    o.ostream << thing;
+    return o;
+}
+
+template <> Out & operator<<<Out::Separator>(Out & o, Out::Separator /* thing */)
+{
+    o.ostream << (o.policy == Out::ONE_LINE ? " " : "\n");
+    o.writeSinceSep = false;
+    return o;
+}
+
+Out::Out(Out & o, const std::string & start, const std::string & end, LinePolicy policy)
+    : ostream(o.ostream), indentation(policy == ONE_LINE ? o.indentation : o.indentation + "  "),
+      end(policy == ONE_LINE ? end : o.indentation + end), policy(policy), writeSinceSep(true)
+{
+    o << start;
+    *this << Out::sep;
+}
+
+// Stuff needed for evaluation
+struct Context
+{
+    Context(EvalState & state, Bindings & autoArgs, Value optionsRoot, Value configRoot)
+        : state(state), autoArgs(autoArgs), optionsRoot(optionsRoot), configRoot(configRoot),
+          underscoreType(state.symbols.create("_type"))
+    {}
+    EvalState & state;
+    Bindings & autoArgs;
+    Value optionsRoot;
+    Value configRoot;
+    Symbol underscoreType;
+};
+
+Value evaluateValue(Context & ctx, Value & v)
+{
+    ctx.state.forceValue(v);
+    if (ctx.autoArgs.empty()) {
+        return v;
+    }
+    Value called{};
+    ctx.state.autoCallFunction(ctx.autoArgs, v, called);
+    return called;
+}
+
+bool isOption(Context & ctx, const Value & v)
+{
+    if (v.type != tAttrs) {
+        return false;
+    }
+    const auto & actualType = v.attrs->find(ctx.underscoreType);
+    if (actualType == v.attrs->end()) {
+        return false;
+    }
+    try {
+        Value evaluatedType = evaluateValue(ctx, *actualType->value);
+        if (evaluatedType.type != tString) {
+            return false;
+        }
+        return static_cast<std::string>(evaluatedType.string.s) == "option";
+    } catch (Error &) {
+        return false;
+    }
+}
+
+// Add quotes to a component of a path.
+// These are needed for paths like:
+//    fileSystems."/".fsType
+//    systemd.units."dbus.service".text
+std::string quoteAttribute(const std::string & attribute)
+{
+    if (isVarName(attribute)) {
+        return attribute;
+    }
+    std::ostringstream buf;
+    printStringValue(buf, attribute.c_str());
+    return buf.str();
+}
+
+const std::string appendPath(const std::string & prefix, const std::string & suffix)
+{
+    if (prefix.empty()) {
+        return quoteAttribute(suffix);
+    }
+    return prefix + "." + quoteAttribute(suffix);
+}
+
+bool forbiddenRecursionName(std::string name) { return (!name.empty() && name[0] == '_') || name == "haskellPackages"; }
+
+void recurse(const std::function<bool(const std::string & path, std::variant<Value, std::exception_ptr>)> & f,
+             Context & ctx, Value v, const std::string & path)
+{
+    std::variant<Value, std::exception_ptr> evaluated;
+    try {
+        evaluated = evaluateValue(ctx, v);
+    } catch (Error &) {
+        evaluated = std::current_exception();
+    }
+    if (!f(path, evaluated)) {
+        return;
+    }
+    if (std::holds_alternative<std::exception_ptr>(evaluated)) {
+        return;
+    }
+    const Value & evaluated_value = std::get<Value>(evaluated);
+    if (evaluated_value.type != tAttrs) {
+        return;
+    }
+    for (const auto & child : evaluated_value.attrs->lexicographicOrder()) {
+        if (forbiddenRecursionName(child->name)) {
+            continue;
+        }
+        recurse(f, ctx, *child->value, appendPath(path, child->name));
+    }
+}
+
+bool optionTypeIs(Context & ctx, Value & v, const std::string & soughtType)
+{
+    try {
+        const auto & typeLookup = v.attrs->find(ctx.state.sType);
+        if (typeLookup == v.attrs->end()) {
+            return false;
+        }
+        Value type = evaluateValue(ctx, *typeLookup->value);
+        if (type.type != tAttrs) {
+            return false;
+        }
+        const auto & nameLookup = type.attrs->find(ctx.state.sName);
+        if (nameLookup == type.attrs->end()) {
+            return false;
+        }
+        Value name = evaluateValue(ctx, *nameLookup->value);
+        if (name.type != tString) {
+            return false;
+        }
+        return name.string.s == soughtType;
+    } catch (Error &) {
+        return false;
+    }
+}
+
+bool isAggregateOptionType(Context & ctx, Value & v)
+{
+    return optionTypeIs(ctx, v, "attrsOf") || optionTypeIs(ctx, v, "listOf");
+}
+
+MakeError(OptionPathError, EvalError);
+
+Value getSubOptions(Context & ctx, Value & option)
+{
+    Value getSubOptions = evaluateValue(ctx, *findAlongAttrPath(ctx.state, "type.getSubOptions", ctx.autoArgs, option));
+    if (getSubOptions.type != tLambda) {
+        throw OptionPathError("Option's type.getSubOptions isn't a function");
+    }
+    Value emptyString{};
+    nix::mkString(emptyString, "");
+    Value v;
+    ctx.state.callFunction(getSubOptions, emptyString, v, nix::Pos{});
+    return v;
+}
+
+// Carefully walk an option path, looking for sub-options when a path walks past
+// an option value.
+struct FindAlongOptionPathRet
+{
+    Value option;
+    std::string path;
+};
+FindAlongOptionPathRet findAlongOptionPath(Context & ctx, const std::string & path)
+{
+    Strings tokens = parseAttrPath(path);
+    Value v = ctx.optionsRoot;
+    std::string processedPath;
+    for (auto i = tokens.begin(); i != tokens.end(); i++) {
+        const auto & attr = *i;
+        try {
+            bool lastAttribute = std::next(i) == tokens.end();
+            v = evaluateValue(ctx, v);
+            if (attr.empty()) {
+                throw OptionPathError("empty attribute name");
+            }
+            if (isOption(ctx, v) && optionTypeIs(ctx, v, "submodule")) {
+                v = getSubOptions(ctx, v);
+            }
+            if (isOption(ctx, v) && isAggregateOptionType(ctx, v)) {
+                auto subOptions = getSubOptions(ctx, v);
+                if (lastAttribute && subOptions.attrs->empty()) {
+                    break;
+                }
+                v = subOptions;
+                // Note that we've consumed attr, but didn't actually use it.  This is the path component that's looked
+                // up in the list or attribute set that doesn't name an option -- the "root" in "users.users.root.name".
+            } else if (v.type != tAttrs) {
+                throw OptionPathError("Value is %s while a set was expected", showType(v));
+            } else {
+                const auto & next = v.attrs->find(ctx.state.symbols.create(attr));
+                if (next == v.attrs->end()) {
+                    throw OptionPathError("Attribute not found", attr, path);
+                }
+                v = *next->value;
+            }
+            processedPath = appendPath(processedPath, attr);
+        } catch (OptionPathError & e) {
+            throw OptionPathError("At '%s' in path '%s': %s", attr, path, e.msg());
+        }
+    }
+    return {v, processedPath};
+}
+
+// Calls f on all the option names at or below the option described by `path`.
+// Note that "the option described by `path`" is not trivial -- if path describes a value inside an aggregate
+// option (such as users.users.root), the *option* described by that path is one path component shorter
+// (eg: users.users), which results in f being called on sibling-paths (eg: users.users.nixbld1).  If f
+// doesn't want these, it must do its own filtering.
+void mapOptions(const std::function<void(const std::string & path)> & f, Context & ctx, const std::string & path)
+{
+    auto root = findAlongOptionPath(ctx, path);
+    recurse(
+        [f, &ctx](const std::string & path, std::variant<Value, std::exception_ptr> v) {
+            bool isOpt = std::holds_alternative<std::exception_ptr>(v) || isOption(ctx, std::get<Value>(v));
+            if (isOpt) {
+                f(path);
+            }
+            return !isOpt;
+        },
+        ctx, root.option, root.path);
+}
+
+// Calls f on all the config values inside one option.
+// Simple options have one config value inside, like sound.enable = true.
+// Compound options have multiple config values.  For example, the option
+// "users.users" has about 1000 config values inside it:
+//   users.users.avahi.createHome = false;
+//   users.users.avahi.cryptHomeLuks = null;
+//   users.users.avahi.description = "`avahi-daemon' privilege separation user";
+//   ...
+//   users.users.avahi.openssh.authorizedKeys.keyFiles = [ ];
+//   users.users.avahi.openssh.authorizedKeys.keys = [ ];
+//   ...
+//   users.users.avahi.uid = 10;
+//   users.users.avahi.useDefaultShell = false;
+//   users.users.cups.createHome = false;
+//   ...
+//   users.users.cups.useDefaultShell = false;
+//   users.users.gdm = ... ... ...
+//   users.users.messagebus = ... .. ...
+//   users.users.nixbld1 = ... .. ...
+//   ...
+//   users.users.systemd-timesync = ... .. ...
+void mapConfigValuesInOption(
+    const std::function<void(const std::string & path, std::variant<Value, std::exception_ptr> v)> & f,
+    const std::string & path, Context & ctx)
+{
+    Value * option;
+    try {
+        option = findAlongAttrPath(ctx.state, path, ctx.autoArgs, ctx.configRoot);
+    } catch (Error &) {
+        f(path, std::current_exception());
+        return;
+    }
+    recurse(
+        [f, ctx](const std::string & path, std::variant<Value, std::exception_ptr> v) {
+            bool leaf = std::holds_alternative<std::exception_ptr>(v) || std::get<Value>(v).type != tAttrs ||
+                        ctx.state.isDerivation(std::get<Value>(v));
+            if (!leaf) {
+                return true; // Keep digging
+            }
+            f(path, v);
+            return false;
+        },
+        ctx, *option, path);
+}
+
+std::string describeError(const Error & e) { return "«error: " + e.msg() + "»"; }
+
+void describeDerivation(Context & ctx, Out & out, Value v)
+{
+    // Copy-pasted from nix/src/nix/repl.cc  :(
+    Bindings::iterator i = v.attrs->find(ctx.state.sDrvPath);
+    PathSet pathset;
+    try {
+        Path drvPath = i != v.attrs->end() ? ctx.state.coerceToPath(*i->pos, *i->value, pathset) : "???";
+        out << "«derivation " << drvPath << "»";
+    } catch (Error & e) {
+        out << describeError(e);
+    }
+}
+
+Value parseAndEval(EvalState & state, const std::string & expression, const std::string & path)
+{
+    Value v{};
+    state.eval(state.parseExprFromString(expression, absPath(path)), v);
+    return v;
+}
+
+void printValue(Context & ctx, Out & out, std::variant<Value, std::exception_ptr> maybeValue, const std::string & path);
+
+void printList(Context & ctx, Out & out, Value & v)
+{
+    Out listOut(out, "[", "]", v.listSize());
+    for (unsigned int n = 0; n < v.listSize(); ++n) {
+        printValue(ctx, listOut, *v.listElems()[n], "");
+        listOut << Out::sep;
+    }
+}
+
+void printAttrs(Context & ctx, Out & out, Value & v, const std::string & path)
+{
+    Out attrsOut(out, "{", "}", v.attrs->size());
+    for (const auto & a : v.attrs->lexicographicOrder()) {
+        std::string name = a->name;
+        if (!forbiddenRecursionName(name)) {
+            attrsOut << name << " = ";
+            printValue(ctx, attrsOut, *a->value, appendPath(path, name));
+            attrsOut << ";" << Out::sep;
+        }
+    }
+}
+
+void multiLineStringEscape(Out & out, const std::string & s)
+{
+    int i;
+    for (i = 1; i < s.size(); i++) {
+        if (s[i - 1] == '$' && s[i] == '{') {
+            out << "''${";
+            i++;
+        } else if (s[i - 1] == '\'' && s[i] == '\'') {
+            out << "'''";
+            i++;
+        } else {
+            out << s[i - 1];
+        }
+    }
+    if (i == s.size()) {
+        out << s[i - 1];
+    }
+}
+
+void printMultiLineString(Out & out, const Value & v)
+{
+    std::string s = v.string.s;
+    Out strOut(out, "''", "''", Out::MULTI_LINE);
+    std::string::size_type begin = 0;
+    while (begin < s.size()) {
+        std::string::size_type end = s.find('\n', begin);
+        if (end == std::string::npos) {
+            multiLineStringEscape(strOut, s.substr(begin, s.size() - begin));
+            break;
+        }
+        multiLineStringEscape(strOut, s.substr(begin, end - begin));
+        strOut << Out::sep;
+        begin = end + 1;
+    }
+}
+
+void printValue(Context & ctx, Out & out, std::variant<Value, std::exception_ptr> maybeValue, const std::string & path)
+{
+    try {
+        if (auto ex = std::get_if<std::exception_ptr>(&maybeValue)) {
+            std::rethrow_exception(*ex);
+        }
+        Value v = evaluateValue(ctx, std::get<Value>(maybeValue));
+        if (ctx.state.isDerivation(v)) {
+            describeDerivation(ctx, out, v);
+        } else if (v.isList()) {
+            printList(ctx, out, v);
+        } else if (v.type == tAttrs) {
+            printAttrs(ctx, out, v, path);
+        } else if (v.type == tString && std::string(v.string.s).find('\n') != std::string::npos) {
+            printMultiLineString(out, v);
+        } else {
+            ctx.state.forceValueDeep(v);
+            out << v;
+        }
+    } catch (ThrownError & e) {
+        if (e.msg() == "The option `" + path + "' is used but not defined.") {
+            // 93% of errors are this, and just letting this message through would be
+            // misleading.  These values may or may not actually be "used" in the
+            // config.  The thing throwing the error message assumes that if anything
+            // ever looks at this value, it is a "use" of this value.  But here in
+            // nixos-option, we are looking at this value only to print it.
+            // In order to avoid implying that this undefined value is actually
+            // referenced, eat the underlying error message and emit "«not defined»".
+            out << "«not defined»";
+        } else {
+            out << describeError(e);
+        }
+    } catch (Error & e) {
+        out << describeError(e);
+    }
+}
+
+void printConfigValue(Context & ctx, Out & out, const std::string & path, std::variant<Value, std::exception_ptr> v)
+{
+    out << path << " = ";
+    printValue(ctx, out, std::move(v), path);
+    out << ";\n";
+}
+
+// Replace with std::starts_with when C++20 is available
+bool starts_with(const std::string & s, const std::string & prefix)
+{
+    return s.size() >= prefix.size() &&
+           std::equal(s.begin(), std::next(s.begin(), prefix.size()), prefix.begin(), prefix.end());
+}
+
+void printRecursive(Context & ctx, Out & out, const std::string & path)
+{
+    mapOptions(
+        [&ctx, &out, &path](const std::string & optionPath) {
+            mapConfigValuesInOption(
+                [&ctx, &out, &path](const std::string & configPath, std::variant<Value, std::exception_ptr> v) {
+                    if (starts_with(configPath, path)) {
+                        printConfigValue(ctx, out, configPath, v);
+                    }
+                },
+                optionPath, ctx);
+        },
+        ctx, path);
+}
+
+void printAttr(Context & ctx, Out & out, const std::string & path, Value & root)
+{
+    try {
+        printValue(ctx, out, *findAlongAttrPath(ctx.state, path, ctx.autoArgs, root), path);
+    } catch (Error & e) {
+        out << describeError(e);
+    }
+}
+
+bool hasExample(Context & ctx, Value & option)
+{
+    try {
+        findAlongAttrPath(ctx.state, "example", ctx.autoArgs, option);
+        return true;
+    } catch (Error &) {
+        return false;
+    }
+}
+
+void printOption(Context & ctx, Out & out, const std::string & path, Value & option)
+{
+    out << "Value:\n";
+    printAttr(ctx, out, path, ctx.configRoot);
+
+    out << "\n\nDefault:\n";
+    printAttr(ctx, out, "default", option);
+
+    out << "\n\nType:\n";
+    printAttr(ctx, out, "type.description", option);
+
+    if (hasExample(ctx, option)) {
+        out << "\n\nExample:\n";
+        printAttr(ctx, out, "example", option);
+    }
+
+    out << "\n\nDescription:\n";
+    printAttr(ctx, out, "description", option);
+
+    out << "\n\nDeclared by:\n";
+    printAttr(ctx, out, "declarations", option);
+
+    out << "\n\nDefined by:\n";
+    printAttr(ctx, out, "files", option);
+    out << "\n";
+}
+
+void printListing(Out & out, Value & v)
+{
+    out << "This attribute set contains:\n";
+    for (const auto & a : v.attrs->lexicographicOrder()) {
+        std::string name = a->name;
+        if (!name.empty() && name[0] != '_') {
+            out << name << "\n";
+        }
+    }
+}
+
+void printOne(Context & ctx, Out & out, const std::string & path)
+{
+    try {
+        auto result = findAlongOptionPath(ctx, path);
+        Value & option = result.option;
+        option = evaluateValue(ctx, option);
+        if (path != result.path) {
+            out << "Note: showing " << result.path << " instead of " << path << "\n";
+        }
+        if (isOption(ctx, option)) {
+            printOption(ctx, out, result.path, option);
+        } else {
+            printListing(out, option);
+        }
+    } catch (Error & e) {
+        std::cerr << "error: " << e.msg()
+                  << "\nAn error occurred while looking for attribute names. Are "
+                     "you sure that '"
+                  << path << "' exists?\n";
+    }
+}
+
+int main(int argc, char ** argv)
+{
+    bool recursive = false;
+    std::string path = ".";
+    std::string optionsExpr = "(import <nixpkgs/nixos> {}).options";
+    std::string configExpr = "(import <nixpkgs/nixos> {}).config";
+    std::vector<std::string> args;
+
+    struct MyArgs : nix::LegacyArgs, nix::MixEvalArgs
+    {
+        using nix::LegacyArgs::LegacyArgs;
+    };
+
+    MyArgs myArgs(nix::baseNameOf(argv[0]), [&](Strings::iterator & arg, const Strings::iterator & end) {
+        if (*arg == "--help") {
+            nix::showManPage("nixos-option");
+        } else if (*arg == "--version") {
+            nix::printVersion("nixos-option");
+        } else if (*arg == "-r" || *arg == "--recursive") {
+            recursive = true;
+        } else if (*arg == "--path") {
+            path = nix::getArg(*arg, arg, end);
+        } else if (*arg == "--options_expr") {
+            optionsExpr = nix::getArg(*arg, arg, end);
+        } else if (*arg == "--config_expr") {
+            configExpr = nix::getArg(*arg, arg, end);
+        } else if (!arg->empty() && arg->at(0) == '-') {
+            return false;
+        } else {
+            args.push_back(*arg);
+        }
+        return true;
+    });
+
+    myArgs.parseCmdline(nix::argvToStrings(argc, argv));
+
+    nix::initPlugins();
+    nix::initGC();
+    nix::settings.readOnlyMode = true;
+    auto store = nix::openStore();
+    auto state = std::make_unique<EvalState>(myArgs.searchPath, store);
+
+    Value optionsRoot = parseAndEval(*state, optionsExpr, path);
+    Value configRoot = parseAndEval(*state, configExpr, path);
+
+    Context ctx{*state, *myArgs.getAutoArgs(*state), optionsRoot, configRoot};
+    Out out(std::cout);
+
+    auto print = recursive ? printRecursive : printOne;
+    if (args.empty()) {
+        print(ctx, out, "");
+    }
+    for (const auto & arg : args) {
+        print(ctx, out, arg);
+    }
+
+    ctx.state.printStats();
+
+    return 0;
+}
diff --git a/nixpkgs/pkgs/tools/package-management/micromamba/default.nix b/nixpkgs/pkgs/tools/package-management/micromamba/default.nix
new file mode 100644
index 000000000000..a7e563ce67e5
--- /dev/null
+++ b/nixpkgs/pkgs/tools/package-management/micromamba/default.nix
@@ -0,0 +1,49 @@
+{ lib, stdenv, fetchFromGitHub, cmake
+, cli11, nlohmann_json, curl, libarchive, libyamlcpp, libsolv, reproc
+}:
+
+let
+  libsolv' = libsolv.overrideAttrs (oldAttrs: {
+    cmakeFlags = oldAttrs.cmakeFlags ++ [
+      "-DENABLE_CONDA=true"  # Maybe enable this in the original libsolv package? No idea about the implications.
+    ];
+  });
+in
+stdenv.mkDerivation rec {
+  pname = "micromamba";
+  version = "0.14.1";
+
+  src = fetchFromGitHub {
+    owner = "mamba-org";
+    repo = "mamba";
+    rev = version;
+    sha256 = "0a5kmwk44ll4d8b2akjc0vm6ap9jfxclcw4fclvjxr2in3am9256";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  buildInputs = [
+    cli11
+    nlohmann_json
+    curl
+    libarchive
+    libyamlcpp
+    libsolv'
+    reproc
+    # python3Packages.pybind11 # Would be necessary if someone wants to build with bindings I guess.
+  ];
+
+  cmakeFlags = [
+    "-DBUILD_BINDINGS=OFF" # Fails to build, I don't think it's necessary for now.
+    "-DBUILD_EXE=ON"
+  ];
+
+  CXXFLAGS = "-DMAMBA_USE_STD_FS";
+
+  meta = with lib; {
+    description = "Reimplementation of the conda package manager";
+    homepage = "https://github.com/mamba-org/mamba";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ mausch ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/package-management/nix-doc/default.nix b/nixpkgs/pkgs/tools/package-management/nix-doc/default.nix
index af83d04e8110..e12bed7d925c 100644
--- a/nixpkgs/pkgs/tools/package-management/nix-doc/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nix-doc/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "nix-doc";
-  version = "0.5.0";
+  version = "0.5.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "lf-";
     repo = "nix-doc";
-    sha256 = "1s0nlbn5fcgqfns8gpx3i87k5qivd8ar59rklvd7fbn6ckrmzi6m";
+    sha256 = "0yx5y90shdjwihbjrvv2m3bycgpdalafc9q4acfczfaymag8ggad";
   };
 
   doCheck = true;
@@ -16,13 +16,13 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [ pkg-config ];
 
-  cargoSha256 = "0xmw3fyic0fcg7a6z8dr3lv367bxqdhdrlrl2hhlz59xg5kq8b3f";
+  cargoSha256 = "11bcn111j4iqwqwpp26w7rnycasbhiixaqb1rq4ry2402hvl90j7";
 
   meta = with lib; {
     description = "An interactive Nix documentation tool";
     longDescription = "An interactive Nix documentation tool providing a CLI for function search, a Nix plugin for docs in the REPL, and a ctags implementation for Nix script";
     homepage = "https://github.com/lf-/nix-doc";
-    license = licenses.lgpl3;
+    license = licenses.lgpl3Plus;
     maintainers = [ maintainers.lf- ];
     platforms = platforms.unix;
   };
diff --git a/nixpkgs/pkgs/tools/package-management/nix-prefetch/default.nix b/nixpkgs/pkgs/tools/package-management/nix-prefetch/default.nix
index b9ae0b5b4b0b..5936429c7a45 100644
--- a/nixpkgs/pkgs/tools/package-management/nix-prefetch/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nix-prefetch/default.nix
@@ -1,33 +1,22 @@
 { lib, stdenv, fetchFromGitHub, installShellFiles, makeWrapper, asciidoc
 , docbook_xml_dtd_45, git, docbook_xsl, libxml2, libxslt, coreutils, gawk
-, gnugrep, gnused, jq, nix, fetchpatch }:
+, gnugrep, gnused, jq, nix }:
 
-let
-  binPath = lib.makeBinPath [ coreutils gawk git gnugrep gnused jq nix ];
-
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "nix-prefetch";
-  version = "0.4.0";
+  version = "0.4.1";
 
   src = fetchFromGitHub {
     owner = "msteen";
     repo = "nix-prefetch";
     rev = version;
-    sha256 = "11792677zyi06jw641xi9aywwgh9002b8406w6qids212c14va6n";
+    sha256 = "0bwv6x651gyq703pywrhb7lfby6xwnd1iwnrzzjihipn7x3v2hz9";
     # the stat call has to be in a subshell or we get the current date
     extraPostFetch = ''
       echo $(stat -c %Y $out) > $out/.timestamp
     '';
   };
 
-  patches = [
-    # Fix input_type regex for macOS systems: https://github.com/msteen/nix-prefetch/pull/24
-    (fetchpatch {
-      url = "https://github.com/msteen/nix-prefetch/commit/08282891bdb108e886eaf39be2030ba1feda1cb1.patch";
-      sha256 = "1v6ask54ind6f3784pbncv0dfg6draaaicg0q46jfvp0lafms70x";
-    })
-  ];
-
   postPatch = ''
     lib=$out/lib/${pname}
 
@@ -63,7 +52,7 @@ in stdenv.mkDerivation rec {
     install -Dm555 -t $lib src/*.sh
     install -Dm444 -t $lib lib/*
     makeWrapper $lib/main.sh $out/bin/${pname} \
-      --prefix PATH : ${binPath}
+      --prefix PATH : ${lib.makeBinPath [ coreutils gawk git gnugrep gnused jq nix ]}
 
     installManPage doc/nix-prefetch.?
 
@@ -77,6 +66,7 @@ in stdenv.mkDerivation rec {
     description = "Prefetch any fetcher function call, e.g. package sources";
     license = licenses.mit;
     maintainers = with maintainers; [ msteen ];
-    inherit (src.meta) homepage;
+    homepage = "https://github.com/msteen/nix-prefetch";
+    platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/tools/package-management/nix-serve/default.nix b/nixpkgs/pkgs/tools/package-management/nix-serve/default.nix
index f85adee4917f..a1edfdd1367f 100644
--- a/nixpkgs/pkgs/tools/package-management/nix-serve/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nix-serve/default.nix
@@ -1,5 +1,11 @@
-{ lib, stdenv, fetchFromGitHub,
-  bzip2, nix, perl, makeWrapper,
+{ lib
+, stdenv
+, fetchFromGitHub
+, bzip2
+, nix
+, perl
+, makeWrapper
+, nixosTests
 }:
 
 with lib;
@@ -30,6 +36,8 @@ stdenv.mkDerivation {
                 --add-flags $out/libexec/nix-serve/nix-serve.psgi
   '';
 
+  passthru.tests.nix-serve = nixosTests.nix-serve;
+
   meta = {
     homepage = "https://github.com/edolstra/nix-serve";
     description = "A utility for sharing a Nix store as a binary cache";
diff --git a/nixpkgs/pkgs/tools/package-management/nix-template/default.nix b/nixpkgs/pkgs/tools/package-management/nix-template/default.nix
index 0345830fb9dd..13c254cbee29 100644
--- a/nixpkgs/pkgs/tools/package-management/nix-template/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nix-template/default.nix
@@ -1,17 +1,45 @@
-{ lib, rustPlatform, fetchFromGitHub }:
+{ lib, stdenv, rustPlatform, fetchFromGitHub
+, installShellFiles
+, makeWrapper
+, nix
+, openssl
+, pkg-config
+, Security
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "nix-template";
-  version = "0.1.0";
+  version = "0.1.4";
 
   src = fetchFromGitHub {
+    name = "${pname}-${version}-src";
     owner = "jonringer";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1h6xdvhzg7nb0s82b3r5bsh8bfdb1l5sm7fa24lfwd396xp9yyig";
+    sha256 = "sha256-kNFhSfHUYBUOCXoD6m7thMho4tOIpRHfHGcsW8FTgkc=";
   };
 
-  cargoSha256 = "0hp31b5q4s6grkha2jz55945cbjkqdpvx1l8m49zv5prczhd7mz5";
+  cargoSha256 = "sha256-7PthFLCEt+E/Gx5//aulHYYBKZqapNEWKtKfRlDr3Pw=";
+
+  nativeBuildInputs = [
+    installShellFiles
+    makeWrapper
+    pkg-config
+  ];
+
+  buildInputs = [ openssl ]
+    ++ lib.optional stdenv.isDarwin Security;
+
+  # needed for nix-prefetch-url
+  postInstall = ''
+    wrapProgram $out/bin/nix-template \
+      --prefix PATH : ${lib.makeBinPath [ nix ]}
+
+    installShellCompletion --cmd nix-template \
+      --bash <($out/bin/nix-template completions bash) \
+      --fish <($out/bin/nix-template completions fish) \
+      --zsh <($out/bin/nix-template completions zsh)
+  '';
 
   meta = with lib; {
     description = "Make creating nix expressions easy";
diff --git a/nixpkgs/pkgs/tools/package-management/nix-top/default.nix b/nixpkgs/pkgs/tools/package-management/nix-top/default.nix
index da64ec138a60..eedd4f97db61 100644
--- a/nixpkgs/pkgs/tools/package-management/nix-top/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nix-top/default.nix
@@ -48,6 +48,5 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     maintainers = with maintainers; [ samueldr ];
     platforms = platforms.linux ++ platforms.darwin;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/tools/package-management/nix/default.nix b/nixpkgs/pkgs/tools/package-management/nix/default.nix
index 6ba5135fdd6c..e60cf5804261 100644
--- a/nixpkgs/pkgs/tools/package-management/nix/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nix/default.nix
@@ -193,38 +193,57 @@ common =
 
           preBuild = "unset NIX_INDENT_MAKE";
         });
+        inherit boehmgc;
       };
     };
   in nix;
 
+  boehmgc_nix = boehmgc.override {
+    enableLargeConfig = true;
+  };
+
+  boehmgc_nixUnstable = boehmgc_nix.overrideAttrs (drv: {
+    patches = (drv.patches or []) ++ [
+      # Part of the GC solution in https://github.com/NixOS/nix/pull/4944
+      (fetchpatch {
+        url = https://github.com/hercules-ci/nix/raw/5c58d84a76d96f269e3ff1e72c9c9ba5f68576af/boehmgc-coroutine-sp-fallback.diff;
+        sha256 = "sha256-JvnWVTlkltmQUs/0qApv/LPZ690UX1/2hEP+LYRwKbI=";
+      })
+    ];
+  });
+
 in rec {
 
   nix = nixStable;
 
   nixStable = callPackage common (rec {
     pname = "nix";
-    version = "2.3.12";
+    version = "2.3.14";
     src = fetchurl {
       url = "https://nixos.org/releases/nix/${pname}-${version}/${pname}-${version}.tar.xz";
-      sha256 = "sha256-ITp9ScRhB5syNh5NAI0kjX9o400syTR/Oo/5Ap+a+10=";
+      sha256 = "sha256-cToMnZU3+UpjeiiXnG3clz9zn8Xk+TbB7UbqmLMrlFk=";
     };
 
-    inherit storeDir stateDir confDir boehmgc;
+    boehmgc = boehmgc_nix;
+
+    inherit storeDir stateDir confDir;
   });
 
   nixUnstable = lib.lowPrio (callPackage common rec {
     pname = "nix";
     version = "2.4${suffix}";
-    suffix = "pre20210601_5985b8b";
+    suffix = "pre20210707_02dd6bb";
 
     src = fetchFromGitHub {
       owner = "NixOS";
       repo = "nix";
-      rev = "5985b8b5275605ddd5e92e2f0a7a9f494ac6e35d";
-      sha256 = "sha256-2So7ZsD8QJlOXCYqdoj8naNgBw6O4Vw1MM2ORsaqlXc=";
+      rev = "02dd6bb610e55a009cd7a4c83639698d3a7acaa2";
+      sha256 = "sha256-ARRiLrDOK+JQtvVXsYegspENYimQzilvdTfO7eiBuaA=";
     };
 
-    inherit storeDir stateDir confDir boehmgc;
+    boehmgc = boehmgc_nixUnstable;
+
+    inherit storeDir stateDir confDir;
 
   });
 
diff --git a/nixpkgs/pkgs/tools/package-management/nixops/default.nix b/nixpkgs/pkgs/tools/package-management/nixops/default.nix
index 16ecc7f11de8..5b4729e2abd7 100644
--- a/nixpkgs/pkgs/tools/package-management/nixops/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nixops/default.nix
@@ -2,12 +2,9 @@
 , fetchurl, fetchpatch
 }:
 
-let
-  version = "1.7";
-
-in python2Packages.buildPythonApplication {
+python2Packages.buildPythonApplication rec {
   pname = "nixops";
-  inherit version;
+  version = "1.7";
 
   src = fetchurl {
     url = "https://nixos.org/releases/nixops/nixops-${version}/nixops-${version}.tar.bz2";
diff --git a/nixpkgs/pkgs/tools/security/aws-okta/default.nix b/nixpkgs/pkgs/tools/security/aws-okta/default.nix
index 08508dd157a0..363abbd39507 100644
--- a/nixpkgs/pkgs/tools/security/aws-okta/default.nix
+++ b/nixpkgs/pkgs/tools/security/aws-okta/default.nix
@@ -21,7 +21,6 @@ buildGoPackage rec {
   buildInputs = [ libusb1  libiconv ];
 
   meta = with lib; {
-    inherit version;
     description = "aws-vault like tool for Okta authentication";
     license = licenses.mit;
     maintainers = with maintainers; [imalsogreg Chili-Man];
diff --git a/nixpkgs/pkgs/tools/security/bitwarden/default.nix b/nixpkgs/pkgs/tools/security/bitwarden/default.nix
index 39756c9e9a78..e0bbad3486ca 100644
--- a/nixpkgs/pkgs/tools/security/bitwarden/default.nix
+++ b/nixpkgs/pkgs/tools/security/bitwarden/default.nix
@@ -17,11 +17,11 @@ let
   pname = "bitwarden";
 
   version = {
-    x86_64-linux = "1.27.0";
+    x86_64-linux = "1.27.1";
   }.${system} or "";
 
   sha256 = {
-    x86_64-linux = "sha256-Ik+g7jkTBHRbGwDhbiJGQorMmt6GhCXVUd82Sug9a28=";
+    x86_64-linux = "sha256-CqyIARPHri018AOgI1rFJ9Td3K8OamXVgupAINME7BY=";
   }.${system} or "";
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/security/cewl/Gemfile b/nixpkgs/pkgs/tools/security/cewl/Gemfile
new file mode 100644
index 000000000000..97d9ae757acc
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/cewl/Gemfile
@@ -0,0 +1,8 @@
+source 'https://rubygems.org'
+gem 'mime'
+gem 'mime-types', ">=3.3.1"
+gem 'mini_exiftool'
+gem 'nokogiri'
+gem 'rexml'
+gem 'rubyzip'
+gem 'spider'
diff --git a/nixpkgs/pkgs/tools/security/cewl/Gemfile.lock b/nixpkgs/pkgs/tools/security/cewl/Gemfile.lock
new file mode 100644
index 000000000000..85bb2eb4b822
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/cewl/Gemfile.lock
@@ -0,0 +1,31 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    mime (0.4.4)
+    mime-types (3.3.1)
+      mime-types-data (~> 3.2015)
+    mime-types-data (3.2021.0704)
+    mini_exiftool (2.10.2)
+    mini_portile2 (2.5.3)
+    nokogiri (1.11.7)
+      mini_portile2 (~> 2.5.0)
+      racc (~> 1.4)
+    racc (1.5.2)
+    rexml (3.2.5)
+    rubyzip (2.3.2)
+    spider (0.5.4)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  mime
+  mime-types (>= 3.3.1)
+  mini_exiftool
+  nokogiri
+  rexml
+  rubyzip
+  spider
+
+BUNDLED WITH
+   2.1.4
diff --git a/nixpkgs/pkgs/tools/security/cewl/default.nix b/nixpkgs/pkgs/tools/security/cewl/default.nix
new file mode 100644
index 000000000000..06d983c14e36
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/cewl/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, lib, fetchFromGitHub, bundlerEnv }:
+
+let
+  rubyEnv = bundlerEnv {
+    name = "cewl-ruby-env";
+    gemdir = ./.;
+  };
+in
+stdenv.mkDerivation rec {
+  pname = "cewl";
+  version = "5.5.2";
+  src = fetchFromGitHub {
+    owner = "digininja";
+    repo = "CeWL";
+    rev = version;
+    sha256 = "sha256-5LTZUr3OMeu1NODhIgBiVqtQnUWYfZTm73q61vT3rXc=";
+  };
+
+  buildInputs = [ rubyEnv.wrappedRuby ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp *.rb $out/bin/
+    mv $out/bin/cewl.rb $out/bin/cewl
+  '';
+
+  meta = with lib; {
+    description = "Custom wordlist generator";
+    homepage = "https://digi.ninja/projects/cewl.php/";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ elohmeier ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/security/cewl/gemset.nix b/nixpkgs/pkgs/tools/security/cewl/gemset.nix
new file mode 100644
index 000000000000..851a6d2442d3
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/cewl/gemset.nix
@@ -0,0 +1,104 @@
+{
+  mime = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nskys7brz2bylhxiknl0z9i19w3wb1knf0h93in6mjq70jdw5cr";
+      type = "gem";
+    };
+    version = "0.4.4";
+  };
+  mime-types = {
+    dependencies = ["mime-types-data"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1zj12l9qk62anvk9bjvandpa6vy4xslil15wl6wlivyf51z773vh";
+      type = "gem";
+    };
+    version = "3.3.1";
+  };
+  mime-types-data = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0dlxwc75iy0dj23x824cxpvpa7c8aqcpskksrmb32j6m66h5mkcy";
+      type = "gem";
+    };
+    version = "3.2021.0704";
+  };
+  mini_exiftool = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ir4wigpm6nkd3f40wcjdqrhjx3l60w1hwcg143is1a95ypnvqhr";
+      type = "gem";
+    };
+    version = "2.10.2";
+  };
+  mini_portile2 = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ad0mli9rc0f17zw4ibp24dbj1y39zkykijsjmnzl4gwpg5s0j6k";
+      type = "gem";
+    };
+    version = "2.5.3";
+  };
+  nokogiri = {
+    dependencies = ["mini_portile2" "racc"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vrn31385ix5k9b0yalnlzv360isv6dincbcvi8psllnwz4sjxj9";
+      type = "gem";
+    };
+    version = "1.11.7";
+  };
+  racc = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "178k7r0xn689spviqzhvazzvxfq6fyjldxb3ywjbgipbfi4s8j1g";
+      type = "gem";
+    };
+    version = "1.5.2";
+  };
+  rexml = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53";
+      type = "gem";
+    };
+    version = "3.2.5";
+  };
+  rubyzip = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0grps9197qyxakbpw02pda59v45lfgbgiyw48i0mq9f2bn9y6mrz";
+      type = "gem";
+    };
+    version = "2.3.2";
+  };
+  spider = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fix7zhnvlfqg66bxwdpbsffbynzdnaifnxpakn07bjh3rdj75cx";
+      type = "gem";
+    };
+    version = "0.5.4";
+  };
+}
diff --git a/nixpkgs/pkgs/tools/security/cosign/default.nix b/nixpkgs/pkgs/tools/security/cosign/default.nix
index 31088e262711..bdc32570dfa7 100644
--- a/nixpkgs/pkgs/tools/security/cosign/default.nix
+++ b/nixpkgs/pkgs/tools/security/cosign/default.nix
@@ -1,29 +1,30 @@
-{ stdenv, lib, buildGoModule, fetchFromGitHub, pcsclite, pkg-config, PCSC }:
+{ stdenv, lib, buildGoModule, fetchFromGitHub, pcsclite, pkg-config, PCSC, pivKeySupport ? true }:
 
 buildGoModule rec {
   pname = "cosign";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "sigstore";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0g60qwdxk6pmkzj0zz9iyc8b0bzh751fj2yyz0vilkgcjq47xjk8";
+    sha256 = "1h0lhbcrynaiwpgpkcn10yrn90j03g00w9hr2lvsj3cwmdbz0rcz";
   };
 
   buildInputs =
-    lib.optional stdenv.isLinux (lib.getDev pcsclite)
-    ++ lib.optionals stdenv.isDarwin [ PCSC ];
+    lib.optional (stdenv.isLinux && pivKeySupport) (lib.getDev pcsclite)
+    ++ lib.optionals (stdenv.isDarwin && pivKeySupport) [ PCSC ];
 
   nativeBuildInputs = [ pkg-config ];
 
-  vendorSha256 = "0agmnl5d00hm854sj1iipng36pf7hcc26iwcmpcr1rsmc7v522z4";
+  vendorSha256 = "0f3al6ds0kqyv2fapgdg9i38rfx6h169pmj6az0sfnkh2psq73ia";
 
   subPackages = [ "cmd/cosign" ];
 
   preBuild = ''
-    buildFlagsArray+=("-ldflags" "-s -w -X github.com/sigstore/cosign/cmd/cosign/cli.gitVersion=v${version}")
+    buildFlagsArray+=(${lib.optionalString pivKeySupport "-tags=pivkey"})
   '';
+  ldflags = [ "-s" "-w" "-X github.com/sigstore/cosign/cmd/cosign/cli.gitVersion=v${version}"];
 
   meta = with lib; {
     homepage = "https://github.com/sigstore/cosign";
diff --git a/nixpkgs/pkgs/tools/security/dnsrecon/default.nix b/nixpkgs/pkgs/tools/security/dnsrecon/default.nix
index 5eda4e75f94b..163728a37c68 100644
--- a/nixpkgs/pkgs/tools/security/dnsrecon/default.nix
+++ b/nixpkgs/pkgs/tools/security/dnsrecon/default.nix
@@ -1,8 +1,11 @@
-{ lib, fetchFromGitHub, python3 }:
+{ lib
+, fetchFromGitHub
+, python3
+}:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "dnsrecon";
-  version = "0.9.1";
+  version = "0.10.1";
 
   src = fetchFromGitHub {
     owner = "darkoperator";
@@ -19,8 +22,7 @@ python3.pkgs.buildPythonApplication rec {
 
   postPatch = ''
     substituteInPlace dnsrecon.py \
-      --replace "namelist.txt" "../share/namelist.txt" \
-      --replace "0.9.0" "${version}"
+      --replace "namelist.txt" "../share/namelist.txt"
   '';
 
   installPhase = ''
@@ -37,8 +39,8 @@ python3.pkgs.buildPythonApplication rec {
   meta = with lib; {
     description = "DNS Enumeration Script";
     homepage = "https://github.com/darkoperator/dnsrecon";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.all;
-    maintainers = with maintainers; [ c0bw3b ];
+    maintainers = with maintainers; [ c0bw3b fab ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/ecryptfs/helper.nix b/nixpkgs/pkgs/tools/security/ecryptfs/helper.nix
index bd558b7ab66d..e0252dac820a 100644
--- a/nixpkgs/pkgs/tools/security/ecryptfs/helper.nix
+++ b/nixpkgs/pkgs/tools/security/ecryptfs/helper.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
     sha256 = "0gp4m22zc80814ng80s38hp930aa8r4zqihr7jr23m0m2iq4pdpg";
   };
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/nixpkgs/pkgs/tools/security/enpass/default.nix b/nixpkgs/pkgs/tools/security/enpass/default.nix
index 2444d1f1d726..63f25bc12efe 100644
--- a/nixpkgs/pkgs/tools/security/enpass/default.nix
+++ b/nixpkgs/pkgs/tools/security/enpass/default.nix
@@ -61,7 +61,6 @@ let
 
     nativeBuildInputs = [ makeWrapper ];
     buildInputs = [dpkg];
-    phases = [ "unpackPhase" "installPhase" ];
 
     unpackPhase = "dpkg -X $src .";
     installPhase=''
diff --git a/nixpkgs/pkgs/tools/security/exploitdb/default.nix b/nixpkgs/pkgs/tools/security/exploitdb/default.nix
index 2c096d100e27..9509288b5819 100644
--- a/nixpkgs/pkgs/tools/security/exploitdb/default.nix
+++ b/nixpkgs/pkgs/tools/security/exploitdb/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "exploitdb";
-  version = "2021-07-06";
+  version = "2021-07-22";
 
   src = fetchFromGitHub {
     owner = "offensive-security";
     repo = pname;
     rev = version;
-    sha256 = "sha256-tRdA3GwU+jko+N+LOCHOA6RqFp3rkhyARwSTXRXoDww=";
+    sha256 = "sha256-pmi1oKam3t4iKqbisFghdVlzp1Ozmc9Nmn19JLrsams=";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/tools/security/fido2luks/default.nix b/nixpkgs/pkgs/tools/security/fido2luks/default.nix
index 1bc0d77878c8..b41f6bc67fcb 100644
--- a/nixpkgs/pkgs/tools/security/fido2luks/default.nix
+++ b/nixpkgs/pkgs/tools/security/fido2luks/default.nix
@@ -9,13 +9,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "fido2luks";
-  version = "0.2.16";
+  version = "0.2.17";
 
   src = fetchFromGitHub {
     owner = "shimunn";
     repo = pname;
     rev = version;
-    sha256 = "sha256-WOdbdJAcMZHSnf7AkGnEumjaDut9J8VwSJYjqLUtPXs=";
+    sha256 = "sha256-rrtPMCgp2Xe8LXzFN57rzay2kyPaLT1+2m1NZQ9EsW4=";
   };
 
   buildInputs = [ cryptsetup ];
@@ -25,7 +25,7 @@ rustPlatform.buildRustPackage rec {
     export LIBCLANG_PATH="${llvmPackages.libclang.lib}/lib"
   '';
 
-  cargoSha256 = "sha256-d6t/bvHpnH4lKv78tp/8DC/VrQBnaiZhnf8GrlcYhJw=";
+  cargoSha256 = "sha256-5CzQuzmKuEi4KTR1jNh4avwqA3qYzTj+rV/zbIeUjAM=";
 
   meta = with lib; {
     description = "Decrypt your LUKS partition using a FIDO2 compatible authenticator";
diff --git a/nixpkgs/pkgs/tools/security/fulcio/default.nix b/nixpkgs/pkgs/tools/security/fulcio/default.nix
new file mode 100644
index 000000000000..4539f10e50d2
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/fulcio/default.nix
@@ -0,0 +1,41 @@
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
+
+buildGoModule rec {
+  pname = "fulcio";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "sigstore";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-+HWzhg+LTKpr9VJ9mzQghwOuGgp3EBb4/zltaqp0zHw=";
+  };
+  vendorSha256 = "sha256-1tR1vUm5eFBS93kELQoKWEyFlfMF28GBI8VEHxTyeM4=";
+
+  ldflags = [ "-s" "-w" ];
+
+  # Install completions post-install
+  nativeBuildInputs = [ installShellFiles ];
+
+  postInstall = ''
+    installShellCompletion --cmd fulcio \
+      --bash <($out/bin/fulcio completion bash) \
+      --fish <($out/bin/fulcio completion fish) \
+      --zsh <($out/bin/fulcio completion zsh)
+  '';
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    runHook preInstallCheck
+    $out/bin/fulcio --help
+    runHook postInstallCheck
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/sigstore/fulcio";
+    changelog = "https://github.com/sigstore/fulcio/releases/tag/${version}";
+    description = "A Root-CA for code signing certs - issuing certificates based on an OIDC email address";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ lesuisse jk ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/security/gorilla-bin/default.nix b/nixpkgs/pkgs/tools/security/gorilla-bin/default.nix
index 68aa7c488198..228271742c64 100644
--- a/nixpkgs/pkgs/tools/security/gorilla-bin/default.nix
+++ b/nixpkgs/pkgs/tools/security/gorilla-bin/default.nix
@@ -11,7 +11,6 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ patchelf makeWrapper ];
-  phases = [ "unpackPhase" "installPhase" ];
 
   unpackCmd = ''
     mkdir gorilla;
diff --git a/nixpkgs/pkgs/tools/security/gpg-tui/default.nix b/nixpkgs/pkgs/tools/security/gpg-tui/default.nix
index 063265e51d81..ad912aee8391 100644
--- a/nixpkgs/pkgs/tools/security/gpg-tui/default.nix
+++ b/nixpkgs/pkgs/tools/security/gpg-tui/default.nix
@@ -15,16 +15,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "gpg-tui";
-  version = "0.6.2";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     owner = "orhun";
     repo = "gpg-tui";
     rev = "v${version}";
-    sha256 = "sha256-Iv5A+o4TNSHJeTZgZ2e0SCHclz1mGMVRJDdBAWilyT8=";
+    sha256 = "sha256-J1mdgcNWloQOnGdBjcCoAsv+ClQ77DXYQajM9B3sYHY=";
   };
 
-  cargoSha256 = "sha256-ISG/0WtgWwZoQd8PsvaQ9L8UKwerzEhY/84DxkdZV2g=";
+  cargoSha256 = "sha256-I63Pevw0BjkjasszZn2wmT4TNeVk27pJy4mJR6nl9MI=";
 
   nativeBuildInputs = [
     gpgme # for gpgme-config
diff --git a/nixpkgs/pkgs/tools/security/grype/default.nix b/nixpkgs/pkgs/tools/security/grype/default.nix
index 7df1090b2b0c..c24515dd1bbb 100644
--- a/nixpkgs/pkgs/tools/security/grype/default.nix
+++ b/nixpkgs/pkgs/tools/security/grype/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "grype";
-  version = "0.14.0";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     owner = "anchore";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-fYeZFNtftG46/QHdV5UhCNCdP7ErOgwWfEB4V14ei5k=";
+    sha256 = "sha256-xiUDyuVNVkVT+kxOEFOq4RKxMc5nNjsom/ZTKzfkOhU=";
   };
 
   vendorSha256 = "sha256-mW3e4WFa9pKSpyTZYmPA2j8nZz+94G2PqdqI0BDo3wc=";
diff --git a/nixpkgs/pkgs/tools/security/hashcat/default.nix b/nixpkgs/pkgs/tools/security/hashcat/default.nix
index 3f38493d752c..273e2837e06a 100644
--- a/nixpkgs/pkgs/tools/security/hashcat/default.nix
+++ b/nixpkgs/pkgs/tools/security/hashcat/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname   = "hashcat";
-  version = "6.2.2";
+  version = "6.2.3";
 
   src = fetchurl {
     url = "https://hashcat.net/files/hashcat-${version}.tar.gz";
-    sha256 = "0xbs3i5g2w8h5031jwgm13algs3f721k12fghnwfzi05fmzw8d0f";
+    sha256 = "sha256-wL4cZpPuHzXHvvH3m/njCpVPcX70LQDjd4eq7/MnHlE=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/security/kpcli/default.nix b/nixpkgs/pkgs/tools/security/kpcli/default.nix
index 37af42e33ccf..176cc5e706bb 100644
--- a/nixpkgs/pkgs/tools/security/kpcli/default.nix
+++ b/nixpkgs/pkgs/tools/security/kpcli/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ perl ];
 
-  phases = [ "installPhase" "fixupPhase" ];
+  dontUnpack = true;
 
   installPhase = ''
     mkdir -p $out/{bin,share}
diff --git a/nixpkgs/pkgs/tools/security/metasploit/Gemfile b/nixpkgs/pkgs/tools/security/metasploit/Gemfile
index 79f85f2b3750..8b90f7dd5f99 100644
--- a/nixpkgs/pkgs/tools/security/metasploit/Gemfile
+++ b/nixpkgs/pkgs/tools/security/metasploit/Gemfile
@@ -1,4 +1,4 @@
 # frozen_string_literal: true
 source "https://rubygems.org"
 
-gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.0.51"
+gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.0.53"
diff --git a/nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock b/nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock
index 8248f6e8181b..53b1170b210f 100644
--- a/nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock
+++ b/nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock
@@ -1,9 +1,9 @@
 GIT
   remote: https://github.com/rapid7/metasploit-framework
-  revision: d9aeac3fea255c475f553be4c55f3ae7cefc8542
-  ref: refs/tags/6.0.51
+  revision: b7cef30d11f0509b7e27334030dae6b8cb34e7f2
+  ref: refs/tags/6.0.53
   specs:
-    metasploit-framework (6.0.51)
+    metasploit-framework (6.0.53)
       actionpack (~> 5.2.2)
       activerecord (~> 5.2.2)
       activesupport (~> 5.2.2)
@@ -85,6 +85,7 @@ GIT
       thin
       tzinfo
       tzinfo-data
+      unix-crypt
       warden
       windows_error
       xdr
@@ -119,23 +120,23 @@ GEM
       i18n (>= 0.7, < 2)
       minitest (~> 5.1)
       tzinfo (~> 1.1)
-    addressable (2.7.0)
+    addressable (2.8.0)
       public_suffix (>= 2.0.2, < 5.0)
     afm (0.2.2)
     arel (9.0.0)
     arel-helpers (2.12.0)
       activerecord (>= 3.1.0, < 7)
     aws-eventstream (1.1.1)
-    aws-partitions (1.473.0)
-    aws-sdk-core (3.115.0)
+    aws-partitions (1.478.0)
+    aws-sdk-core (3.117.0)
       aws-eventstream (~> 1, >= 1.0.2)
       aws-partitions (~> 1, >= 1.239.0)
       aws-sigv4 (~> 1.1)
       jmespath (~> 1.0)
-    aws-sdk-ec2 (1.246.0)
+    aws-sdk-ec2 (1.249.0)
       aws-sdk-core (~> 3, >= 3.112.0)
       aws-sigv4 (~> 1.1)
-    aws-sdk-iam (1.55.0)
+    aws-sdk-iam (1.56.0)
       aws-sdk-core (~> 3, >= 3.112.0)
       aws-sigv4 (~> 1.1)
     aws-sdk-kms (1.44.0)
@@ -145,7 +146,7 @@ GEM
       aws-sdk-core (~> 3, >= 3.112.0)
       aws-sdk-kms (~> 1)
       aws-sigv4 (~> 1.1)
-    aws-sigv4 (1.2.3)
+    aws-sigv4 (1.2.4)
       aws-eventstream (~> 1, >= 1.0.2)
     bcrypt (3.1.16)
     bcrypt_pbkdf (1.1.0)
@@ -173,19 +174,23 @@ GEM
     eventmachine (1.2.7)
     faker (2.18.0)
       i18n (>= 1.6, < 2)
-    faraday (1.4.3)
+    faraday (1.5.1)
       faraday-em_http (~> 1.0)
       faraday-em_synchrony (~> 1.0)
       faraday-excon (~> 1.1)
+      faraday-httpclient (~> 1.0.1)
       faraday-net_http (~> 1.0)
       faraday-net_http_persistent (~> 1.1)
+      faraday-patron (~> 1.0)
       multipart-post (>= 1.2, < 3)
       ruby2_keywords (>= 0.0.4)
     faraday-em_http (1.0.0)
     faraday-em_synchrony (1.0.0)
     faraday-excon (1.1.0)
+    faraday-httpclient (1.0.1)
     faraday-net_http (1.0.1)
-    faraday-net_http_persistent (1.1.0)
+    faraday-net_http_persistent (1.2.0)
+    faraday-patron (1.0.0)
     faye-websocket (0.11.1)
       eventmachine (>= 0.12.0)
       websocket-driver (>= 0.5.1)
@@ -195,7 +200,7 @@ GEM
       ed25519 (~> 1.2)
     http-cookie (1.0.4)
       domain_name (~> 0.5)
-    http_parser.rb (0.6.0)
+    http_parser.rb (0.7.0)
     i18n (1.8.10)
       concurrent-ruby (~> 1.0)
     io-console (0.5.9)
@@ -208,7 +213,7 @@ GEM
     loofah (2.10.0)
       crass (~> 1.0.2)
       nokogiri (>= 1.5.9)
-    metasm (1.0.4)
+    metasm (1.0.5)
     metasploit-concern (3.0.2)
       activemodel (~> 5.2.2)
       activesupport (~> 5.2.2)
@@ -293,7 +298,7 @@ GEM
       method_source
       rake (>= 0.8.7)
       thor (>= 0.19.0, < 2.0)
-    rake (13.0.3)
+    rake (13.0.6)
     rb-readline (0.5.5)
     recog (2.3.20)
       nokogiri
@@ -308,7 +313,7 @@ GEM
       rex-core
       rex-struct2
       rex-text
-    rex-core (0.1.16)
+    rex-core (0.1.17)
     rex-encoder (0.1.5)
       metasm
       rex-arch
@@ -327,7 +332,7 @@ GEM
       rex-arch
     rex-ole (0.1.7)
       rex-text
-    rex-powershell (0.1.90)
+    rex-powershell (0.1.91)
       rex-random_identifier
       rex-text
       ruby-rc4
@@ -352,7 +357,7 @@ GEM
     rkelly-remix (0.0.7)
     ruby-macho (2.5.1)
     ruby-rc4 (0.1.5)
-    ruby2_keywords (0.0.4)
+    ruby2_keywords (0.0.5)
     ruby_smb (2.0.10)
       bindata
       openssl-ccm
@@ -360,7 +365,7 @@ GEM
       rubyntlm
       windows_error
     rubyntlm (0.6.3)
-    rubyzip (2.3.0)
+    rubyzip (2.3.2)
     sawyer (0.8.2)
       addressable (>= 2.3.5)
       faraday (> 0.8, < 2.0)
@@ -389,6 +394,7 @@ GEM
     unf (0.1.4)
       unf_ext
     unf_ext (0.0.7.7)
+    unix-crypt (1.3.0)
     warden (1.2.9)
       rack (>= 2.0.9)
     webrick (1.7.0)
diff --git a/nixpkgs/pkgs/tools/security/metasploit/default.nix b/nixpkgs/pkgs/tools/security/metasploit/default.nix
index c48c5e1690ef..5217322fd6bb 100644
--- a/nixpkgs/pkgs/tools/security/metasploit/default.nix
+++ b/nixpkgs/pkgs/tools/security/metasploit/default.nix
@@ -8,13 +8,13 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "metasploit-framework";
-  version = "6.0.51";
+  version = "6.0.53";
 
   src = fetchFromGitHub {
     owner = "rapid7";
     repo = "metasploit-framework";
     rev = version;
-    sha256 = "sha256-ICVF4GVOyCq7dUAvzUUzhG+NuEiHSFvVWbQ8tAqUFFg=";
+    sha256 = "sha256-0tg2FSRtwo1LRxA5jNQ1Pxx54TPs3ZwErXim8uj24VI=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/security/metasploit/gemset.nix b/nixpkgs/pkgs/tools/security/metasploit/gemset.nix
index b52bff8aa8bb..ab8a1a21ca98 100644
--- a/nixpkgs/pkgs/tools/security/metasploit/gemset.nix
+++ b/nixpkgs/pkgs/tools/security/metasploit/gemset.nix
@@ -54,10 +54,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1fvchp2rhp2rmigx7qglf69xvjqvzq7x0g49naliw29r2bz656sy";
+      sha256 = "022r3m9wdxljpbya69y2i3h9g3dhhfaqzidf95m6qjzms792jvgp";
       type = "gem";
     };
-    version = "2.7.0";
+    version = "2.8.0";
   };
   afm = {
     groups = ["default"];
@@ -114,40 +114,40 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1dw05k0l63lm631lwg5b1bx1nhkirds4rbc1v98bliwfjk5wf71a";
+      sha256 = "0vsxqayzh04gxxan5i8vvfxh0n238dc9305bc89xs2mx2x1pw167";
       type = "gem";
     };
-    version = "1.473.0";
+    version = "1.478.0";
   };
   aws-sdk-core = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06cs5wj4njb2ivhv06v5d7rgy1i2g67a93c0kxly8h7fkkxh315q";
+      sha256 = "1mcagbyzy7l39lxm9g85frvjwlv3yfd9x8jddd1pfc0xsy9y0rax";
       type = "gem";
     };
-    version = "3.115.0";
+    version = "3.117.0";
   };
   aws-sdk-ec2 = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0n3m2a8jnk64ai4wb1wh1a77i8c561ncjklvp650w8723avbj5bq";
+      sha256 = "1n6yl7qbzmjlxp3rzm3a62vinzdg9a8rqspq7xdaa9sxrf4zsamf";
       type = "gem";
     };
-    version = "1.246.0";
+    version = "1.249.0";
   };
   aws-sdk-iam = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "03vs5wf96qpjl309vnrnr4d8hy4l8bvnflgc806bm9n130cyvs9m";
+      sha256 = "0d30abab908434nmfi5j97vmv63466bmcvhvaknma27qc04s53ph";
       type = "gem";
     };
-    version = "1.55.0";
+    version = "1.56.0";
   };
   aws-sdk-kms = {
     groups = ["default"];
@@ -174,10 +174,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1d9zhmi3mpfzkkpg7yw7s9r1dwk157kh9875j3c7gh6cy95lmmaw";
+      sha256 = "0cb9hsg0x9v4yk6sxif8968sg646qphmsjaqy9z8p7y3my5bkrf0";
       type = "gem";
     };
-    version = "1.2.3";
+    version = "1.2.4";
   };
   bcrypt = {
     groups = ["default"];
@@ -354,10 +354,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0zmdsl6n05khwwq8gjssmfca0ifz6q82wwghf1qyzbxxjdna5mly";
+      sha256 = "1xpq9w46alagszx2mx82mqxxmsmyni2bpxd08gygzpl03zwbpr63";
       type = "gem";
     };
-    version = "1.4.3";
+    version = "1.5.1";
   };
   faraday-em_http = {
     groups = ["default"];
@@ -389,6 +389,16 @@
     };
     version = "1.1.0";
   };
+  faraday-httpclient = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fyk0jd3ks7fdn8nv3spnwjpzx2lmxmg2gh4inz3by1zjzqg33sc";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
   faraday-net_http = {
     groups = ["default"];
     platforms = [];
@@ -404,10 +414,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0l2c835wl7gv34xp49fhd1bl4czkpw2g3ahqsak2251iqv5589ka";
+      sha256 = "0dc36ih95qw3rlccffcb0vgxjhmipsvxhn6cw71l7ffs0f7vq30b";
       type = "gem";
     };
-    version = "1.1.0";
+    version = "1.2.0";
+  };
+  faraday-patron = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19wgsgfq0xkski1g7m96snv39la3zxz6x7nbdgiwhg5v82rxfb6w";
+      type = "gem";
+    };
+    version = "1.0.0";
   };
   faye-websocket = {
     groups = ["default"];
@@ -464,10 +484,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "15nidriy0v5yqfjsgsra51wmknxci2n2grliz78sf9pga3n0l7gi";
+      sha256 = "1xha614fi6l04wryqjj1xmpalzlmhb6lb9qmlh8mmliycdhvcshp";
       type = "gem";
     };
-    version = "0.6.0";
+    version = "0.7.0";
   };
   i18n = {
     groups = ["default"];
@@ -544,10 +564,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0mbmpc8vsi574s78f23bhiqk07sr6yrrrmk702lfv61ql4ah5l89";
+      sha256 = "0dpjbkdvi4h6v0g01db7vlcsg15pfiyslkz3zd7wfk04yrc6g7wi";
       type = "gem";
     };
-    version = "1.0.4";
+    version = "1.0.5";
   };
   metasploit-concern = {
     groups = ["default"];
@@ -574,12 +594,12 @@
     platforms = [];
     source = {
       fetchSubmodules = false;
-      rev = "d9aeac3fea255c475f553be4c55f3ae7cefc8542";
-      sha256 = "0n0ljh5b8g5lb7amnj4792w8svw46d2wsbs0fnxjmj2fcph4a990";
+      rev = "b7cef30d11f0509b7e27334030dae6b8cb34e7f2";
+      sha256 = "0lp1yvlg59kqml29rpgc6ghpj71z6pa8qf8h8x5qvhkd4hakdn6j";
       type = "git";
       url = "https://github.com/rapid7/metasploit-framework";
     };
-    version = "6.0.51";
+    version = "6.0.53";
   };
   metasploit-model = {
     groups = ["default"];
@@ -946,10 +966,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1iik52mf9ky4cgs38fp2m8r6skdkq1yz23vh18lk95fhbcxb6a67";
+      sha256 = "15whn7p9nrkxangbs9hh75q585yfn66lv0v2mhj6q6dl6x8bzr2w";
       type = "gem";
     };
-    version = "13.0.3";
+    version = "13.0.6";
   };
   rb-readline = {
     groups = ["default"];
@@ -1016,10 +1036,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08krnf05mbq6x2d92fv34bl8xdz1d3yq2m0mp8bfbq5kd6a13l2w";
+      sha256 = "0b0f9s18d2ax2k1xmwrvr97gxh8gfm79kfibv55fqmv846vgkkvk";
       type = "gem";
     };
-    version = "0.1.16";
+    version = "0.1.17";
   };
   rex-encoder = {
     groups = ["default"];
@@ -1086,10 +1106,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08a9s82y4bv2bis0szasrrqvz6imwx94ckg259f7w39ng1fbc7b1";
+      sha256 = "0zrc0pr1pla0amw6hagllj82hyq8pyy6wb38xry2cxg7q70ghfq7";
       type = "gem";
     };
-    version = "0.1.90";
+    version = "0.1.91";
   };
   rex-random_identifier = {
     groups = ["default"];
@@ -1216,10 +1236,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "15wfcqxyfgka05v2a7kpg64x57gl1y4xzvnc9lh60bqx5sf1iqrs";
+      sha256 = "1vz322p8n39hz3b4a9gkmz9y7a5jaz41zrm2ywf31dvkqm03glgz";
       type = "gem";
     };
-    version = "0.0.4";
+    version = "0.0.5";
   };
   ruby_smb = {
     groups = ["default"];
@@ -1246,10 +1266,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0590m2pr9i209pp5z4mx0nb1961ishdiqb28995hw1nln1d1b5ji";
+      sha256 = "0grps9197qyxakbpw02pda59v45lfgbgiyw48i0mq9f2bn9y6mrz";
       type = "gem";
     };
-    version = "2.3.0";
+    version = "2.3.2";
   };
   sawyer = {
     groups = ["default"];
@@ -1401,6 +1421,16 @@
     };
     version = "0.0.7.7";
   };
+  unix-crypt = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1wflipsmmicmgvqilp9pml4x19b337kh6p6jgrzqrzpkq2z52gdq";
+      type = "gem";
+    };
+    version = "1.3.0";
+  };
   warden = {
     groups = ["default"];
     platforms = [];
diff --git a/nixpkgs/pkgs/tools/security/nuclei/default.nix b/nixpkgs/pkgs/tools/security/nuclei/default.nix
index e4c6039c456c..3f674bef7bcb 100644
--- a/nixpkgs/pkgs/tools/security/nuclei/default.nix
+++ b/nixpkgs/pkgs/tools/security/nuclei/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "nuclei";
-  version = "2.3.8";
+  version = "2.4.0";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-MrAJHYfTcziHTKJYRB6FW23XcHqdr9AGF+Cumw7hbcQ=";
+    sha256 = "sha256-nmojx3xX5MZFfd1od2Aq3+dWmHCFgR7+q5C2FIUzq7A=";
   };
 
-  vendorSha256 = "sha256-ZzpmHoMkrDAZcMXtD6smEaFEmT/EnRcKd7XYz/IK72Y=";
+  vendorSha256 = "sha256-Ok2VUwtqhlp6NwLbQX9KAaGiZtzmfWG0LcqtBBDk22A=";
 
   modRoot = "./v2";
   subPackages = [
diff --git a/nixpkgs/pkgs/tools/security/oath-toolkit/default.nix b/nixpkgs/pkgs/tools/security/oath-toolkit/default.nix
index a925d07cb7c8..e542a2ae7140 100644
--- a/nixpkgs/pkgs/tools/security/oath-toolkit/default.nix
+++ b/nixpkgs/pkgs/tools/security/oath-toolkit/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv, fetchurl, pam, xmlsec }:
 
 let
+  # TODO: Switch to OpenPAM once https://gitlab.com/oath-toolkit/oath-toolkit/-/issues/26 is addressed upstream
   securityDependency =
     if stdenv.isDarwin then xmlsec
     else pam;
@@ -16,6 +17,8 @@ in stdenv.mkDerivation rec {
 
   buildInputs = [ securityDependency ];
 
+  configureFlags = lib.optionals stdenv.isDarwin [ "--disable-pam" ];
+
   passthru.updateScript = ./update.sh;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/security/open-ecard/default.nix b/nixpkgs/pkgs/tools/security/open-ecard/default.nix
index 5c07add90563..00ff112ba844 100644
--- a/nixpkgs/pkgs/tools/security/open-ecard/default.nix
+++ b/nixpkgs/pkgs/tools/security/open-ecard/default.nix
@@ -23,7 +23,7 @@ in stdenv.mkDerivation rec {
 
   src = srcs.richclient;
 
-  phases = "installPhase";
+  dontUnpack = true;
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/nixpkgs/pkgs/tools/security/ossec/default.nix b/nixpkgs/pkgs/tools/security/ossec/default.nix
index 22374e1d302b..b86cb57bbde0 100644
--- a/nixpkgs/pkgs/tools/security/ossec/default.nix
+++ b/nixpkgs/pkgs/tools/security/ossec/default.nix
@@ -1,18 +1,16 @@
 { lib, stdenv, fetchurl, which }:
 
-stdenv.mkDerivation {
-  name = "ossec-client-2.6";
+stdenv.mkDerivation rec {
+  pname = "ossec-client";
+  version = "2.6";
 
   src = fetchurl {
-    url = "https://www.ossec.net/files/ossec-hids-2.6.tar.gz";
-
+    url = "https://www.ossec.net/files/ossec-hids-${version}.tar.gz";
     sha256 = "0k1b59wdv9h50gbyy88qw3cnpdm8hv0nrl0znm92h9a11i5b39ip";
   };
 
   buildInputs = [ which ];
 
-  phases = [ "unpackPhase" "patchPhase" "buildPhase" ];
-
   patches = [ ./no-root.patch ];
 
   buildPhase = ''
@@ -30,11 +28,12 @@ yes
 "   | ./install.sh
   '';
 
-  meta = {
+  meta = with lib; {
     description = "Open source host-based instrusion detection system";
     homepage = "https://www.ossec.net";
-    license = lib.licenses.gpl2;
-    platforms = lib.platforms.linux;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ ];
+    platforms = platforms.linux;
   };
 }
 
diff --git a/nixpkgs/pkgs/tools/security/quill/default.nix b/nixpkgs/pkgs/tools/security/quill/default.nix
new file mode 100644
index 000000000000..74c7996a8964
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/quill/default.nix
@@ -0,0 +1,46 @@
+{ lib, stdenv, rustPlatform, fetchFromGitHub, openssl, Security, libiconv, pkg-config, protobuf, which, buildPackages }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "quill";
+  version = "0.2.1";
+
+  src = fetchFromGitHub {
+    owner = "dfinity";
+    repo = "quill";
+    rev = "v${version}";
+    sha256 = "02ga2xkdxs36mfr4lv43cy6wkf27c28bdkzfkp3az5jvyk17mkfr";
+  };
+
+  ic = fetchFromGitHub {
+    owner = "dfinity";
+    repo = "ic";
+    rev = "779549eccfcf61ac702dfc2ee6d76ffdc2db1f7f";
+    sha256 = "1r31d5hab7k1n60a7y8fw79fjgfq04cgj9krwa6r9z4isi3919v6";
+  };
+
+  registry = "file://local-registry";
+
+  preBuild = ''
+    export REGISTRY_TRANSPORT_PROTO_INCLUDES=${ic}/rs/registry/transport/proto
+    export IC_BASE_TYPES_PROTO_INCLUDES=${ic}/rs/types/base_types/proto
+    export IC_PROTOBUF_PROTO_INCLUDES=${ic}/rs/protobuf/def
+    export IC_NNS_COMMON_PROTO_INCLUDES=${ic}/rs/nns/common/proto
+    export PROTOC=${buildPackages.protobuf}/bin/protoc
+    export OPENSSL_DIR=${openssl.dev}
+    export OPENSSL_LIB_DIR=${openssl.out}/lib
+  '';
+
+  cargoSha256 = "142pzhyi73ljlqas5vbhjhn4vmp9w9ps1mv8q7s3kzg0h7jcvm1k";
+
+  nativeBuildInputs = [ pkg-config protobuf ];
+  buildInputs = [ openssl ]
+    ++ lib.optionals stdenv.isDarwin [ Security libiconv ];
+
+  meta = with lib; {
+    homepage = "https://github.com/dfinity/quill";
+    changelog = "https://github.com/dfinity/quill/releases/tag/v${version}";
+    description = "Minimalistic ledger and governance toolkit for cold wallets on the Internet Computer.";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ imalison ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/security/saml2aws/default.nix b/nixpkgs/pkgs/tools/security/saml2aws/default.nix
index 567d3727a16a..8ee2c9a4c4e4 100644
--- a/nixpkgs/pkgs/tools/security/saml2aws/default.nix
+++ b/nixpkgs/pkgs/tools/security/saml2aws/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, stdenv, buildGoModule, fetchFromGitHub, AppKit }:
 
 buildGoModule rec {
   pname = "saml2aws";
@@ -14,6 +14,8 @@ buildGoModule rec {
   runVend = true;
   vendorSha256 = "sha256-TieQVPSWtIteU0wTqX7si6GrPdYd4WD2eK4ZlLz0VJ8=";
 
+  buildInputs = lib.optionals stdenv.isDarwin [ AppKit ];
+
   doCheck = false;
 
   subPackages = [ "." "cmd/saml2aws" ];
diff --git a/nixpkgs/pkgs/tools/security/sequoia/default.nix b/nixpkgs/pkgs/tools/security/sequoia/default.nix
index a40e2ce33c99..d84f6f299005 100644
--- a/nixpkgs/pkgs/tools/security/sequoia/default.nix
+++ b/nixpkgs/pkgs/tools/security/sequoia/default.nix
@@ -51,7 +51,7 @@ rustPlatform.buildRustPackage rec {
 
   checkInputs = lib.optionals pythonSupport [
     pythonPackages.pytest
-    pythonPackages.pytestrunner
+    pythonPackages.pytest-runner
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/tools/security/sshuttle/default.nix b/nixpkgs/pkgs/tools/security/sshuttle/default.nix
index 9fd57c82e88f..959712488a20 100644
--- a/nixpkgs/pkgs/tools/security/sshuttle/default.nix
+++ b/nixpkgs/pkgs/tools/security/sshuttle/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , python3Packages
 , makeWrapper
 , coreutils
@@ -10,24 +11,29 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "sshuttle";
-  version = "1.0.3";
+  version = "1.0.5";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "0fff1c88669a20bb6a4e7331960673a3a02a2e04ff163e4c9299496646edcf61";
+    sha256 = "fd8c691aac2cb80933aae7f94d9d9e271a820efc5c48e73408f1a90da426a1bd";
   };
 
   patches = [ ./sudo.patch ];
 
+  postPatch = ''
+    substituteInPlace setup.cfg \
+      --replace '--cov=sshuttle --cov-branch --cov-report=term-missing' ""
+  '';
+
   nativeBuildInputs = [ makeWrapper python3Packages.setuptools-scm ];
 
-  checkInputs = with python3Packages; [ mock pytest pytestcov pytestrunner flake8 ];
+  propagatedBuildInputs = [ python3Packages.psutil ];
 
-  runtimeDeps = [ coreutils openssh procps ] ++ lib.optionals stdenv.isLinux [ iptables nettools ];
+  checkInputs = with python3Packages; [ mock pytestCheckHook flake8 ];
 
   postInstall = ''
     wrapProgram $out/bin/sshuttle \
-      --prefix PATH : "${lib.makeBinPath runtimeDeps}" \
+      --prefix PATH : "${lib.makeBinPath ([ coreutils openssh procps ] ++ lib.optionals stdenv.isLinux [ iptables nettools ])}" \
   '';
 
   meta = with lib; {
@@ -38,8 +44,7 @@ python3Packages.buildPythonApplication rec {
       target network (though it does require Python 2.7, Python 3.5 or later at both ends).
       Works with Linux and Mac OS and supports DNS tunneling.
     '';
-    license = licenses.gpl2;
+    license = licenses.lgpl21;
     maintainers = with maintainers; [ domenkozar carlosdagos ];
-    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/ssss/default.nix b/nixpkgs/pkgs/tools/security/ssss/default.nix
index 34407f5f5ad9..61d10111120e 100644
--- a/nixpkgs/pkgs/tools/security/ssss/default.nix
+++ b/nixpkgs/pkgs/tools/security/ssss/default.nix
@@ -1,28 +1,45 @@
-{ lib, stdenv, fetchurl, gmp }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, gmp
+, installShellFiles
+}:
 
-stdenv.mkDerivation {
-  name = "ssss-0.5";
+stdenv.mkDerivation rec {
+  pname = "ssss";
+  version = "0.5.7";
 
-  src = fetchurl {
-    url = "http://point-at-infinity.org/ssss/ssss-0.5.tar.gz";
-    sha256 = "15grn2fp1x8p92kxkwbmsx8rz16g93y9grl3hfqbh1jn21ama5jx";
+  src = fetchFromGitHub {
+    owner = "MrJoy";
+    repo = pname;
+    rev = "releases%2Fv${version}";
+    sha256 = "18r1hwch6nq6gjijavr4pvrxz2plrlrvdx8ssqhdj2vmqvlqwbvd";
   };
 
-  buildInputs = [ gmp ];
+  nativeBuildInputs = [
+    installShellFiles
+  ];
 
-  preBuild =
-    ''
-      sed -e s@/usr/@$out/@g -i Makefile
-      cp ssss.manpage.xml ssss.1
-      cp ssss.manpage.xml ssss.1.html
-      mkdir -p $out/bin $out/share/man/man1
-      echo -e 'install:\n\tcp ssss-combine ssss-split '"$out"'/bin' >>Makefile
-    '';
+  buildInputs = [
+    gmp
+  ];
 
-  meta = {
+  preBuild = ''
+    sed -e s@/usr/@$out/@g -i Makefile
+    cp ssss.manpage.xml ssss.1
+    mkdir -p $out/bin
+    echo -e 'install:\n\tcp ssss-combine ssss-split '"$out"'/bin' >>Makefile
+  '';
+
+  postInstall = ''
+    installManPage ssss.1
+  '';
+
+  meta = with lib; {
     description = "Shamir Secret Sharing Scheme";
     homepage = "http://point-at-infinity.org/ssss/";
-    platforms = lib.platforms.unix;
-    license = lib.licenses.gpl2;
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/step-cli/default.nix b/nixpkgs/pkgs/tools/security/step-cli/default.nix
index a13eec71eb84..c91a83c0a0d7 100644
--- a/nixpkgs/pkgs/tools/security/step-cli/default.nix
+++ b/nixpkgs/pkgs/tools/security/step-cli/default.nix
@@ -5,20 +5,27 @@
 
 buildGoModule rec {
   pname = "step-cli";
-  version = "0.15.16";
+  version = "0.16.1";
 
   src = fetchFromGitHub {
     owner = "smallstep";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-/HqCG3LscwogLXvZlL2CVo2Pj1hVRnOMPCmG1hxrG/I=";
+    sha256 = "sha256-gMXvHPqWvaZmzWiWrxlknaMkUraS64yrKl+RzAF7c4I=";
   };
 
+  ldflags = [
+    "-w"
+    "-s"
+    "-X main.Version=${version}"
+  ];
+
   preCheck = ''
     # Tries to connect to smallstep.com
     rm command/certificate/remote_test.go
   '';
-  vendorSha256 = "sha256-plQgIqs6QUbzndn8C0ByKceGtz/JxZ1Rx0fXWHNJ0kM=";
+
+  vendorSha256 = "sha256-WF2UD0LwzCMkoW1EfcjV+9ZboPp1oWhmsSEryj13Kg0=";
 
   meta = with lib; {
     description = "A zero trust swiss army knife for working with X509, OAuth, JWT, OATH OTP, etc";
diff --git a/nixpkgs/pkgs/tools/security/sudolikeaboss/default.nix b/nixpkgs/pkgs/tools/security/sudolikeaboss/default.nix
index 53f99636b458..242da1a67bb4 100644
--- a/nixpkgs/pkgs/tools/security/sudolikeaboss/default.nix
+++ b/nixpkgs/pkgs/tools/security/sudolikeaboss/default.nix
@@ -22,7 +22,6 @@ buildGoPackage rec {
   ];
 
   meta = with lib; {
-    inherit version;
     inherit (src.meta) homepage;
     description = "Get 1password access from iterm2";
     license = licenses.mit;
diff --git a/nixpkgs/pkgs/tools/security/theharvester/default.nix b/nixpkgs/pkgs/tools/security/theharvester/default.nix
index 2fae6c465d59..dc1596facdff 100644
--- a/nixpkgs/pkgs/tools/security/theharvester/default.nix
+++ b/nixpkgs/pkgs/tools/security/theharvester/default.nix
@@ -4,8 +4,8 @@
 }:
 
 python3.pkgs.buildPythonApplication rec {
-  pname = "theHarvester";
-  version = "3.2.3";
+  pname = "theharvester";
+  version = "4.0.0";
 
   src = fetchFromGitHub {
     owner = "laramies";
@@ -16,6 +16,7 @@ python3.pkgs.buildPythonApplication rec {
 
   propagatedBuildInputs = with python3.pkgs; [
     aiodns
+    aiofiles
     aiohttp
     aiomultiprocess
     aiosqlite
@@ -23,8 +24,7 @@ python3.pkgs.buildPythonApplication rec {
     censys
     certifi
     dnspython
-    gevent
-    grequests
+    fastapi
     lxml
     netaddr
     plotly
@@ -33,14 +33,23 @@ python3.pkgs.buildPythonApplication rec {
     requests
     retrying
     shodan
-    texttable
+    slowapi
+    starlette
+    uvicorn
     uvloop
   ];
 
-  checkInputs = [ python3.pkgs.pytest ];
+  checkInputs = with  python3.pkgs; [
+    pytest
+    pytest-asyncio
+  ];
 
-  checkPhase = "runHook preCheck ; pytest tests/test_myparser.py ; runHook postCheck";
   # We don't run other tests (discovery modules) because they require network access
+  checkPhase = ''
+    runHook preCheck
+    pytest tests/test_myparser.py
+    runHook postCheck
+  '';
 
   meta = with lib; {
     description = "Gather E-mails, subdomains and names from different public sources";
diff --git a/nixpkgs/pkgs/tools/security/volatility/default.nix b/nixpkgs/pkgs/tools/security/volatility/default.nix
index 6cc5ddbfb4cf..4abbbd2d1d1f 100644
--- a/nixpkgs/pkgs/tools/security/volatility/default.nix
+++ b/nixpkgs/pkgs/tools/security/volatility/default.nix
@@ -13,7 +13,7 @@ pythonPackages.buildPythonApplication rec {
 
   doCheck = false;
 
-  propagatedBuildInputs = [ pythonPackages.pycrypto pythonPackages.distorm3 ];
+  propagatedBuildInputs = with pythonPackages; [ pycrypto distorm3 pillow ];
 
   meta = with lib; {
     homepage = "https://www.volatilityfoundation.org/";
diff --git a/nixpkgs/pkgs/tools/security/vulnix/default.nix b/nixpkgs/pkgs/tools/security/vulnix/default.nix
index a7ce0fb4b6e4..037adda92eb6 100644
--- a/nixpkgs/pkgs/tools/security/vulnix/default.nix
+++ b/nixpkgs/pkgs/tools/security/vulnix/default.nix
@@ -6,11 +6,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "vulnix";
-  version = "1.9.6";
+  version = "1.10.0";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "0anyxmqgn4kx102l3qjhh1f2b0cg7mnlapfhriyjw0zyy5gyqvng";
+    sha256 = "1d5mqpc4g1wkqcwxp8m9k130i3ii3q7n1n4b1fyb5wijidmyn3xv";
   };
 
   outputs = [ "out" "doc" "man" ];
@@ -19,7 +19,7 @@ python3Packages.buildPythonApplication rec {
   checkInputs = with python3Packages; [
     freezegun
     pytest
-    pytestcov
+    pytest-cov
     pytest-flake8
   ];
 
diff --git a/nixpkgs/pkgs/tools/security/wpscan/Gemfile.lock b/nixpkgs/pkgs/tools/security/wpscan/Gemfile.lock
index 96857239bda0..65e09d0aecfb 100644
--- a/nixpkgs/pkgs/tools/security/wpscan/Gemfile.lock
+++ b/nixpkgs/pkgs/tools/security/wpscan/Gemfile.lock
@@ -1,7 +1,7 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    activesupport (6.1.3.2)
+    activesupport (6.1.4)
       concurrent-ruby (~> 1.0, >= 1.0.2)
       i18n (>= 1.6, < 2)
       minitest (>= 5.1)
@@ -9,10 +9,10 @@ GEM
       zeitwerk (~> 2.3)
     addressable (2.7.0)
       public_suffix (>= 2.0.2, < 5.0)
-    cms_scanner (0.13.4)
+    cms_scanner (0.13.5)
       ethon (~> 0.14.0)
       get_process_mem (~> 0.2.5)
-      nokogiri (~> 1.11.0)
+      nokogiri (~> 1.11.4)
       opt_parse_validator (~> 1.9.4)
       public_suffix (~> 4.0.3)
       ruby-progressbar (>= 1.10, < 1.12)
@@ -20,17 +20,17 @@ GEM
       typhoeus (>= 1.3, < 1.5)
       xmlrpc (~> 0.3)
       yajl-ruby (~> 1.4.1)
-    concurrent-ruby (1.1.8)
+    concurrent-ruby (1.1.9)
     ethon (0.14.0)
       ffi (>= 1.15.0)
-    ffi (1.15.1)
+    ffi (1.15.3)
     get_process_mem (0.2.7)
       ffi (~> 1.0)
     i18n (1.8.10)
       concurrent-ruby (~> 1.0)
     mini_portile2 (2.5.3)
     minitest (5.14.4)
-    nokogiri (1.11.6)
+    nokogiri (1.11.7)
       mini_portile2 (~> 2.5.0)
       racc (~> 1.4)
     opt_parse_validator (1.9.4)
@@ -46,8 +46,8 @@ GEM
     tzinfo (2.0.4)
       concurrent-ruby (~> 1.0)
     webrick (1.7.0)
-    wpscan (3.8.17)
-      cms_scanner (~> 0.13.3)
+    wpscan (3.8.18)
+      cms_scanner (~> 0.13.5)
     xmlrpc (0.3.2)
       webrick
     yajl-ruby (1.4.1)
diff --git a/nixpkgs/pkgs/tools/security/wpscan/default.nix b/nixpkgs/pkgs/tools/security/wpscan/default.nix
index e7a784c1a779..6a41611e67e0 100644
--- a/nixpkgs/pkgs/tools/security/wpscan/default.nix
+++ b/nixpkgs/pkgs/tools/security/wpscan/default.nix
@@ -11,11 +11,13 @@ bundlerApp {
       --prefix PATH : ${lib.makeBinPath [ curl ]}
   '';
 
+  passthru.updateScript = ./update.sh;
+
   meta = with lib; {
     description = "Black box WordPress vulnerability scanner";
-    homepage    = "https://wpscan.org/";
-    license     = licenses.unfreeRedistributable;
+    homepage = "https://wpscan.org/";
+    license = licenses.unfreeRedistributable;
     maintainers = with maintainers; [ nyanloutre manveru ];
-    platforms   = platforms.unix;
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/wpscan/gemset.nix b/nixpkgs/pkgs/tools/security/wpscan/gemset.nix
index c3d79ea77fbc..80b5ec290c00 100644
--- a/nixpkgs/pkgs/tools/security/wpscan/gemset.nix
+++ b/nixpkgs/pkgs/tools/security/wpscan/gemset.nix
@@ -5,10 +5,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1csxddyhl6k773ycxjvmyshyr4g9jb1icbs3pnm7crnavqs4h1yr";
+      sha256 = "0kqgywy4cj3h5142dh7pl0xx5nybp25jn0ykk0znziivzks68xdk";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   addressable = {
     dependencies = ["public_suffix"];
@@ -27,20 +27,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1xzkbk6a93sdhshzlkx1dcpln3fcw2apccb7g6jha0g1im7yhgcj";
+      sha256 = "15qh28drxkyv294l1qcpsghfa875p71q0vkmmv5l6fbmpapmllrk";
       type = "gem";
     };
-    version = "0.13.4";
+    version = "0.13.5";
   };
   concurrent-ruby = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0mr23wq0szj52xnj0zcn1k0c7j4v79wlwbijkpfcscqww3l6jlg3";
+      sha256 = "0nwad3211p7yv9sda31jmbyw6sdafzmdi2i2niaz6f0wk5nq9h0f";
       type = "gem";
     };
-    version = "1.1.8";
+    version = "1.1.9";
   };
   ethon = {
     dependencies = ["ffi"];
@@ -58,10 +58,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "15nn2v70rql15vb0pm9cg0f3xsaslwjkv6xgz0k5jh48idmfw9fi";
+      sha256 = "1wgvaclp4h9y8zkrgz8p2hqkrgr4j7kz0366mik0970w532cbmcq";
       type = "gem";
     };
-    version = "1.15.1";
+    version = "1.15.3";
   };
   get_process_mem = {
     dependencies = ["ffi"];
@@ -111,10 +111,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1z4x366icbl9w13pk50vxx5kywlksvhxqxrpv8f5xpjxfl3jl64z";
+      sha256 = "1vrn31385ix5k9b0yalnlzv360isv6dincbcvi8psllnwz4sjxj9";
       type = "gem";
     };
-    version = "1.11.6";
+    version = "1.11.7";
   };
   opt_parse_validator = {
     dependencies = ["activesupport" "addressable"];
@@ -206,10 +206,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0jdn2v5cmxlzq9nkzh5lqnqr0mbiyn87g6bfc0074m19m38g19r9";
+      sha256 = "01ig3fbxxm0gnvqkzmsc4zcipijprrw5xs84rnwp50w0crww842c";
       type = "gem";
     };
-    version = "3.8.17";
+    version = "3.8.18";
   };
   xmlrpc = {
     dependencies = ["webrick"];
diff --git a/nixpkgs/pkgs/tools/security/wpscan/update.sh b/nixpkgs/pkgs/tools/security/wpscan/update.sh
new file mode 100755
index 000000000000..4e55a770fd4e
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/wpscan/update.sh
@@ -0,0 +1,11 @@
+#!/usr/bin/env nix-shell
+#! nix-shell -i bash -p bash bundix bundler
+
+set -e
+
+cd "$(dirname "${BASH_SOURCE[0]}")"
+
+rm -f Gemfile.lock Gemfile.lock
+bundler lock
+BUNDLE_GEMFILE=Gemfile bundler lock --lockfile=Gemfile.lock
+bundix --gemfile=Gemfile --lockfile=Gemfile.lock --gemset=gemset.nix
diff --git a/nixpkgs/pkgs/tools/security/yubikey-agent/default.nix b/nixpkgs/pkgs/tools/security/yubikey-agent/default.nix
index 305f5a4fe799..baccb14faf43 100644
--- a/nixpkgs/pkgs/tools/security/yubikey-agent/default.nix
+++ b/nixpkgs/pkgs/tools/security/yubikey-agent/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "yubikey-agent";
-  version = "unstable-2021-02-18";
+  version = "0.1.4";
 
   src = fetchFromGitHub {
     owner = "FiloSottile";
     repo = pname;
-    rev = "8cadc13d107757f8084d9d2b93ea64ff0c1748e8";
-    sha256 = "1lklgq9qkqil5s0g56wbhs0vpr9c1bd4ir7bkrjwqj75ygxim8ml";
+    rev = "v${version}";
+    sha256 = "1b4522s7xkh6q74m0lprbnzg2hspg1pr9rzn94qmd06sry82d3fd";
   };
 
   buildInputs =
@@ -17,15 +17,11 @@ buildGoModule rec {
 
   nativeBuildInputs = [ makeWrapper pkg-config ];
 
-  # pull in go-piv/piv-go#75
-  # once go-piv/piv-go#75 is merged and released, we should
-  # use the released version (and push upstream to do the same)
-  patches = [ ./use-piv-go-75.patch ];
   postPatch = lib.optionalString stdenv.isLinux ''
     substituteInPlace main.go --replace 'notify-send' ${libnotify}/bin/notify-send
   '';
 
-  vendorSha256 = "1zx1w2is61471v4dlmr4wf714zqsc8sppik671p7s4fis5vccsca";
+  vendorSha256 = "0cpj4nj2g0ick6p79h4pnjg7ybnyz9p26jivv0awi6bmn378nbxn";
 
   doCheck = false;
 
@@ -35,12 +31,7 @@ buildGoModule rec {
   # ensure the nixpkgs-provided one is available
   postInstall = lib.optionalString stdenv.isDarwin ''
     wrapProgram $out/bin/yubikey-agent --suffix PATH : $(dirname ${pinentry_mac}/${pinentry_mac.binaryPath})
-  ''
-  # Note: in the next release, upstream provides
-  # contrib/systemd/user/yubikey-agent.service, which we should use
-  # instead
-  # See https://github.com/FiloSottile/yubikey-agent/pull/43
-  + lib.optionalString stdenv.isLinux ''
+  '' + lib.optionalString stdenv.isLinux ''
     mkdir -p $out/lib/systemd/user
     substitute contrib/systemd/user/yubikey-agent.service $out/lib/systemd/user/yubikey-agent.service \
       --replace 'ExecStart=yubikey-agent' "ExecStart=$out/bin/yubikey-agent"
diff --git a/nixpkgs/pkgs/tools/security/yubikey-agent/use-piv-go-75.patch b/nixpkgs/pkgs/tools/security/yubikey-agent/use-piv-go-75.patch
deleted file mode 100644
index 73967d817d96..000000000000
--- a/nixpkgs/pkgs/tools/security/yubikey-agent/use-piv-go-75.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From 547695fff9cbfc4037168cdeb07cfe16bd89b6db Mon Sep 17 00:00:00 2001
-From: Philip Potter <philip.g.potter@gmail.com>
-Date: Sat, 25 Jul 2020 21:59:50 +0100
-Subject: [PATCH] Pull in piv-go#75
-
----
- go.mod | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/go.mod b/go.mod
-index d4d13c8..f75be2d 100644
---- a/go.mod
-+++ b/go.mod
-@@ -7,3 +7,5 @@ require (
- 	github.com/gopasspw/gopass v1.9.1
- 	golang.org/x/crypto v0.0.0-20200429183012-4b2356b1ed79
- )
-+
-+replace github.com/go-piv/piv-go => github.com/rawkode/piv-go v1.5.1-0.20200725154545-1c3200c75a28
--- 
-2.27.0
-
diff --git a/nixpkgs/pkgs/tools/system/bottom/default.nix b/nixpkgs/pkgs/tools/system/bottom/default.nix
index 036410f350ca..1401f2a78a90 100644
--- a/nixpkgs/pkgs/tools/system/bottom/default.nix
+++ b/nixpkgs/pkgs/tools/system/bottom/default.nix
@@ -11,13 +11,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "bottom";
-  version = "0.6.2";
+  version = "0.6.3";
 
   src = fetchFromGitHub {
     owner = "ClementTsang";
     repo = pname;
     rev = version;
-    sha256 = "sha256-QCi6Oi5xk88ev2B4rlXwgR55qKZSUbIY/96t/jhJQ0Q=";
+    sha256 = "sha256-hXEaQL4jTd/MfEUVKUTs7oTRAffau1YA/IUUtD+V9KI=";
   };
 
   prePatch = ''
@@ -33,7 +33,7 @@ rustPlatform.buildRustPackage rec {
     libiconv
   ];
 
-  cargoSha256 = "sha256-RJ7xIp9EBiBLSMAchr7XYhrTITNJy+Yfok//vZr3Z38=";
+  cargoSha256 = "sha256-aeR6fcIWkY4AWZy8tVotUAVRVSiO/0S0DU/A9/ATrF4=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/system/collectd/data.nix b/nixpkgs/pkgs/tools/system/collectd/data.nix
index 378eb62d6cc5..3867bd6bb3d9 100644
--- a/nixpkgs/pkgs/tools/system/collectd/data.nix
+++ b/nixpkgs/pkgs/tools/system/collectd/data.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
 
   pname = "collectd-data";
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   installPhase = ''
     mkdir -p $out/share/collectd
diff --git a/nixpkgs/pkgs/tools/system/dd_rescue/default.nix b/nixpkgs/pkgs/tools/system/dd_rescue/default.nix
index ba18c58becb9..ce996bf7c6f4 100644
--- a/nixpkgs/pkgs/tools/system/dd_rescue/default.nix
+++ b/nixpkgs/pkgs/tools/system/dd_rescue/default.nix
@@ -36,7 +36,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     homepage = "http://www.garloff.de/kurt/linux/ddrescue/";
     license = licenses.gpl2Plus;
-    inherit version;
     updateWalker = true;
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/fakechroot/default.nix b/nixpkgs/pkgs/tools/system/fakechroot/default.nix
index fb56350aa72f..382a47039ba8 100644
--- a/nixpkgs/pkgs/tools/system/fakechroot/default.nix
+++ b/nixpkgs/pkgs/tools/system/fakechroot/default.nix
@@ -21,6 +21,24 @@ stdenv.mkDerivation rec {
       # and are uninteresting as well as unimportant for our purposes (since NEWS never leaves the build env).
       excludes = [ "NEWS.md" ];
     })
+
+    # glibc 2.33 compat (https://github.com/dex4er/fakechroot/pull/85/)
+    (fetchpatch {
+      url = "https://github.com/dex4er/fakechroot/commit/534e6d555736b97211523970d378dfb0db2608e9.patch";
+      sha256 = "sha256-bUlGJZvOSrATPt8bxGqU1UETTUD9V/HhJyA5ZxsOLQU=";
+    })
+    (fetchpatch {
+      url = "https://github.com/dex4er/fakechroot/commit/75d7e6fa191c11a791faff06a0de86eaa7801d05.patch";
+      sha256 = "sha256-vWN7zFkKlBd/F+h/66z21RiZqkSCn3UIzy9NHV7TYDg=";
+    })
+    (fetchpatch {
+      url = "https://github.com/dex4er/fakechroot/commit/693a3597ea7fccfb62f357503ff177bd3e3d5a89.patch";
+      sha256 = "sha256-bFXsT0hWocJFbtS1cpzo7oIy/x66iUw6QE1/cEoZ+3k=";
+    })
+    (fetchpatch {
+      url = "https://github.com/dex4er/fakechroot/commit/e7c1f3a446e594a4d0cce5f5d499c9439ce1d5c5.patch";
+      sha256 = "sha256-eX6kB4U1ZlXoRtkSVEIBTRjO/cTS/7z5a9S366DiRMg=";
+    })
   ];
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/nixpkgs/pkgs/tools/system/fakeroot/default.nix b/nixpkgs/pkgs/tools/system/fakeroot/default.nix
index 0e4f51c7ea6c..bf42e987c4d3 100644
--- a/nixpkgs/pkgs/tools/system/fakeroot/default.nix
+++ b/nixpkgs/pkgs/tools/system/fakeroot/default.nix
@@ -9,7 +9,23 @@ stdenv.mkDerivation rec {
     sha256 = "1xpl0s2yjyjwlf832b6kbkaa5921liybaar13k7n45ckd9lxd700";
   };
 
-  patches = lib.optional stdenv.isLinux ./einval.patch
+  patches = lib.optionals stdenv.isLinux [
+    ./einval.patch
+
+    # glibc 2.33 patches from ArchLinux
+    (fetchpatch {
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/packages/fakeroot/trunk/fakeroot-1.25.3-glibc-2.33-fix-1.patch";
+      sha256 = "sha256-F6BcxYInSLu7Fxg6OmMZDhTWoLqsc//yYPlTZqQQl68=";
+    })
+    (fetchpatch {
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/packages/fakeroot/trunk/fakeroot-1.25.3-glibc-2.33-fix-2.patch";
+      sha256 = "sha256-ifpJxhk6MyQpFolC1hIAAUjcHmOHVU1D25tRwpu2S/k=";
+    })
+    (fetchpatch {
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/packages/fakeroot/trunk/fakeroot-1.25.3-glibc-2.33-fix-3.patch";
+      sha256 = "sha256-o2Xm4C64Ny9TL8fjsZltjO1CdJ4VGwqZ+LnufVL5Sq8=";
+    })
+  ]
   # patchset from brew
   ++ lib.optionals stdenv.isDarwin [
     (fetchpatch {
diff --git a/nixpkgs/pkgs/tools/system/fancy-motd/default.nix b/nixpkgs/pkgs/tools/system/fancy-motd/default.nix
index 2c30e7e93485..e8f21c6fbd31 100644
--- a/nixpkgs/pkgs/tools/system/fancy-motd/default.nix
+++ b/nixpkgs/pkgs/tools/system/fancy-motd/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fancy-motd";
-  version = "unstable-2021-07-04";
+  version = "unstable-2021-07-15";
 
   src = fetchFromGitHub {
     owner = "bcyran";
     repo = pname;
-    rev = "2cc3c3c164ef695c9dd465beca61716a364db32c";
-    sha256 = "003p5rsyl216xwldrk8slpnzw6wdrcm8hpfdgy9a0mja5g1xdqzr";
+    rev = "e8d2d2602d9b9fbc132ddc4f9fbf22428d715721";
+    sha256 = "10fxr1grsiwvdc5m2wd4n51lvz0zd4sldg9rzviaim18nw68gdq3";
   };
 
   buildInputs = [ bc curl figlet fortune gawk iproute2 ];
diff --git a/nixpkgs/pkgs/tools/system/freeipmi/default.nix b/nixpkgs/pkgs/tools/system/freeipmi/default.nix
index 8dbe4b5e0033..77828ae823d4 100644
--- a/nixpkgs/pkgs/tools/system/freeipmi/default.nix
+++ b/nixpkgs/pkgs/tools/system/freeipmi/default.nix
@@ -39,6 +39,5 @@ stdenv.mkDerivation rec {
     platforms = lib.platforms.gnu ++ lib.platforms.linux;  # arbitrary choice
 
     updateWalker = true;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/gdu/default.nix b/nixpkgs/pkgs/tools/system/gdu/default.nix
index 5a84cd6ee3ff..c50b2a4c84ea 100644
--- a/nixpkgs/pkgs/tools/system/gdu/default.nix
+++ b/nixpkgs/pkgs/tools/system/gdu/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "gdu";
-  version = "5.1.1";
+  version = "5.3.0";
 
   src = fetchFromGitHub {
     owner = "dundee";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-9o/njurf1AWt04A8u38FMFcteLZlRHDejbH9+ekDjKI=";
+    sha256 = "sha256-hf5jTEAN5oOPg2PaAlYjIDMYcwXkaFAqPtWTwZV98N0=";
   };
 
   vendorSha256 = "sha256-9W1K01PJ+tRLSJ0L7NGHXT5w5oHmlBkT8kwnOLOzSCc=";
diff --git a/nixpkgs/pkgs/tools/system/gotop/default.nix b/nixpkgs/pkgs/tools/system/gotop/default.nix
index 1cc0ba877399..dffbaaa81832 100644
--- a/nixpkgs/pkgs/tools/system/gotop/default.nix
+++ b/nixpkgs/pkgs/tools/system/gotop/default.nix
@@ -1,31 +1,32 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "gotop";
-  version = "4.1.1";
+  version = "4.1.2";
 
   src = fetchFromGitHub {
     owner = "xxxserxxx";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-3t6I4ah9gUmPlIBRL86BdgiUaMNiKNEeoUSRMASz1Yc=";
+    sha256 = "15bsxaxqxp17wsr0p9fkpvgfyqnhhwm3j8jxkvcs4cdw73qaxdsy";
   };
 
   runVend = true;
-  vendorSha256 = "sha256-GcIaUIuTiSY1aKxRtclfl7hMNaZZx4uoVG7ahjF/4Hs=";
+  vendorSha256 = "06hl1npwmy9dvpf4kljvw8lwwiigm52wf106lmf9k6k2gi5ikprz";
 
-  buildFlagsArray = [ "-ldflags=-s -w -X main.Version=v${version}" ];
+  ldflags = [ "-s" "-w" "-X main.Version=v${version}" ];
 
   preCheck = ''
     export HOME=$(mktemp -d)
   '';
 
+  doCheck = !stdenv.isDarwin;
+
   meta = with lib; {
     description = "A terminal based graphical activity monitor inspired by gtop and vtop";
     homepage = "https://github.com/xxxserxxx/gotop";
-    changelog = "https://github.com/xxxserxxx/gotop/blob/v${version}/CHANGELOG.md";
+    changelog = "https://github.com/xxxserxxx/gotop/raw/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = [ maintainers.magnetophon ];
-    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/hostctl/default.nix b/nixpkgs/pkgs/tools/system/hostctl/default.nix
index 6f557e05cd12..54bc72144ea3 100644
--- a/nixpkgs/pkgs/tools/system/hostctl/default.nix
+++ b/nixpkgs/pkgs/tools/system/hostctl/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "hostctl";
-  version = "1.0.14";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "guumaster";
     repo = pname;
     rev = "v${version}";
-    sha256 = "02bjii97l4fy43v2rb93m9b0ad8y6mjvbvp4sz6a5n0w9dm1z1q9";
+    sha256 = "sha256-X07JvXN1mwOQE2XBfaYbqQnQ92fBSg/Erj0yUygAqmM=";
   };
 
-  vendorSha256 = "1lqk3cda0frqp2vwkqa4b3xkdw814wgkbr7g9r2mwxn85fpdcq5c";
+  vendorSha256 = "sha256-rGDWrivIdl5FTu/kNR8nAfE2+1hE4cm3uDg7oBobE9M=";
 
   buildFlagsArray = [ "-ldflags=-s -w -X github.com/guumaster/hostctl/cmd/hostctl/actions.version=${version}" ];
 
diff --git a/nixpkgs/pkgs/tools/system/ipmiutil/default.nix b/nixpkgs/pkgs/tools/system/ipmiutil/default.nix
index 4efc8024cc4a..a11890dabd6f 100644
--- a/nixpkgs/pkgs/tools/system/ipmiutil/default.nix
+++ b/nixpkgs/pkgs/tools/system/ipmiutil/default.nix
@@ -27,6 +27,5 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     license = licenses.bsd3;
     downloadPage = "https://sourceforge.net/projects/ipmiutil/files/ipmiutil/";
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/jsvc/default.nix b/nixpkgs/pkgs/tools/system/jsvc/default.nix
new file mode 100644
index 000000000000..442f8d904195
--- /dev/null
+++ b/nixpkgs/pkgs/tools/system/jsvc/default.nix
@@ -0,0 +1,40 @@
+{ lib, stdenv, fetchurl, commonsDaemon, jdk, makeWrapper, jre }:
+
+stdenv.mkDerivation rec {
+  pname = "jsvc";
+  version = "1.2.4";
+
+  src = fetchurl {
+    url = "https://downloads.apache.org//commons/daemon/source/commons-daemon-${version}-src.tar.gz";
+    sha256 = "1nrr6ggy6h20r9zyv14vx6vc9p1w6l8fl9fn6i8dx2hrq6kk2bjw";
+  };
+
+  buildInputs = [ commonsDaemon ];
+  nativeBuildInputs = [ jdk makeWrapper ];
+
+  preConfigure = ''
+    cd ./src/native/unix/
+    sh ./support/buildconf.sh
+  '';
+
+  preBuild = ''
+    export JAVA_HOME=${jre}
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/bin
+    cp jsvc $out/bin/jsvc
+    chmod +x $out/bin/jsvc
+    wrapProgram $out/bin/jsvc --set JAVA_HOME "${jre}"
+    runHook postInstall
+  '';
+
+  meta = {
+    homepage    = "https://commons.apache.org/proper/commons-daemon";
+    description = "JSVC is part of the Apache Commons Daemon software, a set of utilities and Java support classes for running Java applications as server processes.";
+    maintainers = with lib.maintainers; [ rsynnest ];
+    license     = lib.licenses.asl20;
+    platforms = with lib.platforms; unix;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/system/kmon/default.nix b/nixpkgs/pkgs/tools/system/kmon/default.nix
index 4253ff3e7c9d..85d9df5df48d 100644
--- a/nixpkgs/pkgs/tools/system/kmon/default.nix
+++ b/nixpkgs/pkgs/tools/system/kmon/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "kmon";
-  version = "1.5.3";
+  version = "1.5.4";
 
   src = fetchFromGitHub {
     owner = "orhun";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-2cP3kZnjlMmN3nWRPh1M+hk+dyssGNpJjlluDsm702g=";
+    sha256 = "sha256-zbTS4nGb2jDYGhNYxoPaVv9kAc51CQOi9qiHiSLjAjo=";
   };
 
-  cargoSha256 = "sha256-xxYfaGhAtLESpy4gdE3IjE29W+DGnI1ed020mxjT3TI=";
+  cargoSha256 = "sha256-ujVlOShZOuaV3B1ydggVJXLNMQHoTZC0dJaw+/ajVFg=";
 
   nativeBuildInputs = [ python3 ];
 
diff --git a/nixpkgs/pkgs/tools/system/sleuthkit/default.nix b/nixpkgs/pkgs/tools/system/sleuthkit/default.nix
index be4eaf5f0791..912afb7021ca 100644
--- a/nixpkgs/pkgs/tools/system/sleuthkit/default.nix
+++ b/nixpkgs/pkgs/tools/system/sleuthkit/default.nix
@@ -29,6 +29,5 @@ stdenv.mkDerivation rec {
     maintainers = [ lib.maintainers.raskin ];
     platforms = lib.platforms.linux;
     license = lib.licenses.ipl10;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/smartmontools/default.nix b/nixpkgs/pkgs/tools/system/smartmontools/default.nix
index 8d0539d118f3..669d1a9fbc6d 100644
--- a/nixpkgs/pkgs/tools/system/smartmontools/default.nix
+++ b/nixpkgs/pkgs/tools/system/smartmontools/default.nix
@@ -4,8 +4,6 @@
 , IOKit, ApplicationServices }:
 
 let
-  version = "7.2";
-
   dbrev = "5171";
   drivedbBranch = "RELEASE_7_2_DRIVEDB";
   driverdb = fetchurl {
@@ -16,7 +14,7 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "smartmontools";
-  inherit version;
+  version = "7.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/smartmontools/${pname}-${version}.tar.gz";
@@ -40,5 +38,6 @@ in stdenv.mkDerivation rec {
     license     = licenses.gpl2Plus;
     maintainers = with maintainers; [ peti Frostman ];
     platforms   = with platforms; linux ++ darwin;
+    mainProgram = "smartctl";
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/tree/default.nix b/nixpkgs/pkgs/tools/system/tree/default.nix
index dea7fd2e2b6c..ab76de74762c 100644
--- a/nixpkgs/pkgs/tools/system/tree/default.nix
+++ b/nixpkgs/pkgs/tools/system/tree/default.nix
@@ -1,8 +1,6 @@
 { lib, stdenv, fetchurl }:
 
 let
-  version = "1.8.0";
-
   # These settings are found in the Makefile, but there seems to be no
   # way to select one ore the other setting other than editing the file
   # manually, so we have to duplicate the know how here.
@@ -23,9 +21,9 @@ let
     '' else
     ""; # use linux flags by default
 in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "tree";
-  inherit version;
+  version = "1.8.0";
 
   src = fetchurl {
     url = "http://mama.indstate.edu/users/ice/tree/src/tree-${version}.tgz";
diff --git a/nixpkgs/pkgs/tools/system/uefitool/common.nix b/nixpkgs/pkgs/tools/system/uefitool/common.nix
index 7d5ee82dcf98..7b9c8f2e57df 100644
--- a/nixpkgs/pkgs/tools/system/uefitool/common.nix
+++ b/nixpkgs/pkgs/tools/system/uefitool/common.nix
@@ -20,8 +20,10 @@ mkDerivation rec {
   buildInputs = [ qtbase ];
   nativeBuildInputs = [ qmake cmake zip ];
 
-  configurePhase = ":";
-  buildPhase = "bash unixbuild.sh";
+  dontConfigure = true;
+  buildPhase = ''
+    bash unixbuild.sh
+  '';
 
   installPhase = ''
     mkdir -p "$out"/bin
diff --git a/nixpkgs/pkgs/tools/system/wsmancli/default.nix b/nixpkgs/pkgs/tools/system/wsmancli/default.nix
index bb7a206ced8c..ac6a561bb0a6 100644
--- a/nixpkgs/pkgs/tools/system/wsmancli/default.nix
+++ b/nixpkgs/pkgs/tools/system/wsmancli/default.nix
@@ -31,6 +31,5 @@ stdenv.mkDerivation rec {
     '';
     downloadPage = "https://github.com/Openwsman/wsmancli/releases";
     inherit (openwsman.meta) homepage license maintainers platforms;
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/tools/text/choose/default.nix b/nixpkgs/pkgs/tools/text/choose/default.nix
index 05b325126871..f5cded1beab6 100644
--- a/nixpkgs/pkgs/tools/text/choose/default.nix
+++ b/nixpkgs/pkgs/tools/text/choose/default.nix
@@ -5,16 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "choose";
-  version = "1.3.1";
+  version = "1.3.2";
 
   src = fetchFromGitHub {
     owner = "theryangeary";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0j3861pxqw0lnamb201c7h5w7npzyiwwb6c1xzxjv72m2ccvz76j";
+    sha256 = "sha256-QX0tAo1cGPpRhggiAPxsVhKXg6TgaVl1lcp3na7jUNw=";
   };
 
-  cargoSha256 = "1fdcz7vnmrw92y7bx49napi7j2jjc41liz5k63kbijfwqnaaiswy";
+  cargoSha256 = "sha256-3pK7y/zC5iZkto5p5Xerlpu3yfN6sB2kjLF2fURlUj0=";
 
   meta = with lib; {
     description = "A human-friendly and fast alternative to cut and (sometimes) awk";
diff --git a/nixpkgs/pkgs/tools/text/gawk/gawk-with-extensions.nix b/nixpkgs/pkgs/tools/text/gawk/gawk-with-extensions.nix
index 751e5181bb58..1b82d798d330 100644
--- a/nixpkgs/pkgs/tools/text/gawk/gawk-with-extensions.nix
+++ b/nixpkgs/pkgs/tools/text/gawk/gawk-with-extensions.nix
@@ -1,7 +1,8 @@
 { runCommand, gawk, extensions, makeWrapper }:
 
 runCommand "gawk-with-extensions" {
-  buildInputs = [ makeWrapper gawk ] ++ extensions;
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ gawk ] ++ extensions;
 } ''
   mkdir -p $out/bin
   for i in ${gawk}/bin/*; do
diff --git a/nixpkgs/pkgs/tools/text/html-tidy/default.nix b/nixpkgs/pkgs/tools/text/html-tidy/default.nix
index 6caa3d34a0c9..d4bb26a0a777 100644
--- a/nixpkgs/pkgs/tools/text/html-tidy/default.nix
+++ b/nixpkgs/pkgs/tools/text/html-tidy/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "html-tidy";
-  version = "5.7.28";
+  version = "5.8.0";
 
   src = fetchFromGitHub {
     owner = "htacg";
     repo = "tidy-html5";
     rev = version;
-    sha256 = "sha256-Tny53PtaQWAMAEjqw4tKnmGURfZhhwFQNCJr9jjWZQY=";
+    sha256 = "sha256-ZMz0NySxzX2XHiqB8f5asvwjIG6kdIcq8Gb3EbAxBaU=";
   };
 
   nativeBuildInputs = [ cmake libxslt/*manpage*/ ];
diff --git a/nixpkgs/pkgs/tools/text/ledger2beancount/default.nix b/nixpkgs/pkgs/tools/text/ledger2beancount/default.nix
index b3f48085d1db..12fe3a9c9e0b 100644
--- a/nixpkgs/pkgs/tools/text/ledger2beancount/default.nix
+++ b/nixpkgs/pkgs/tools/text/ledger2beancount/default.nix
@@ -26,11 +26,7 @@ in stdenv.mkDerivation rec {
     sha256 = "0kimp8l9ax37grfv5r5iw0g0xnrpkak022fl10y3i7kc4nyi1s99";
   };
 
-  phases = [
-    "unpackPhase"
-    "installPhase"
-    "fixupPhase"
-  ];
+  dontBuild = true;
 
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ perlPackages.perl beancount ] ++ perlDeps;
diff --git a/nixpkgs/pkgs/tools/text/mdcat/default.nix b/nixpkgs/pkgs/tools/text/mdcat/default.nix
index e298a56c58c2..67f69ecc71d2 100644
--- a/nixpkgs/pkgs/tools/text/mdcat/default.nix
+++ b/nixpkgs/pkgs/tools/text/mdcat/default.nix
@@ -12,20 +12,20 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mdcat";
-  version = "0.23.0";
+  version = "0.23.2";
 
   src = fetchFromGitHub {
     owner = "lunaryorn";
     repo = pname;
     rev = "mdcat-${version}";
-    hash = "sha256-bGXuYGQyrXa9gUEQfB7BF9K04z88r1UoM8R5gpL2nRM=";
+    sha256 = "sha256-PM6bx7qzEx4He9aX4WRO7ad/f9+wzT+gPGXKwYwG8+A=";
   };
 
   nativeBuildInputs = [ pkg-config asciidoctor installShellFiles ];
   buildInputs = [ openssl ]
     ++ lib.optional stdenv.isDarwin Security;
 
-  cargoSha256 = "sha256-hmv4LNk7NEYjT/5XXUpMd+xGS19KHOW+HIgsiFEWeig=";
+  cargoSha256 = "sha256-GL9WGoyM1++QFAR+bzj0XkjaRaDCWcbcahles5amNpk=";
 
   checkInputs = [ ansi2html ];
   # Skip tests that use the network and that include files.
diff --git a/nixpkgs/pkgs/tools/text/namazu/default.nix b/nixpkgs/pkgs/tools/text/namazu/default.nix
index e5b3f59db8c1..e748515b0513 100644
--- a/nixpkgs/pkgs/tools/text/namazu/default.nix
+++ b/nixpkgs/pkgs/tools/text/namazu/default.nix
@@ -1,30 +1,21 @@
-{ fetchurl, lib, stdenv, perl }:
+{ fetchurl, lib, stdenv, perl, perlPackages, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "namazu-2.0.21";
+  pname = "namazu";
+  version = "2.0.21";
 
   src = fetchurl {
-    url = "http://namazu.org/stable/${name}.tar.gz";
+    url = "http://namazu.org/stable/${pname}-${version}.tar.gz";
     sha256 = "1xvi7hrprdchdpzhg3fvk4yifaakzgydza5c0m50h1yvg6vay62w";
   };
 
-  buildInputs = [ perl ];
+  buildInputs = [ perl perlPackages.FileMMagic ];
+  nativeBuildInputs = [ makeWrapper ];
 
-  # First install the `File::MMagic' Perl module.
-  preConfigure = ''
-    ( cd File-MMagic &&                              \
-      perl Makefile.PL                               \
-        LIB="$out/${perl.libPrefix}/${perl.version}" \
-        INSTALLSITEMAN3DIR="$out/man" &&             \
-      make && make install )
-    export PERL5LIB="$out/${perl.libPrefix}/${perl.version}:$PERL5LIB"
+  postInstall = ''
+    wrapProgram $out/bin/mknmz --set PERL5LIB ${perlPackages.makeFullPerlPath [ perlPackages.FileMMagic ]}
   '';
 
-  # FIXME: The `tests/namazu-6' test fails on GNU/Linux, presumably because
-  # phrase searching is broken somehow.  However, it doesn't fail on other
-  # platforms.
-  doCheck = !stdenv.isLinux;
-
   meta = {
     description = "Full-text search engine";
 
@@ -39,6 +30,5 @@ stdenv.mkDerivation rec {
 
     platforms = lib.platforms.gnu ++ lib.platforms.linux;  # arbitrary choice
     maintainers = [ ];
-    broken = true; # File-MMagic is not compatible with our Perl version
   };
 }
diff --git a/nixpkgs/pkgs/tools/text/ocrmypdf/default.nix b/nixpkgs/pkgs/tools/text/ocrmypdf/default.nix
index 0e13e4c5f35c..0dff6d76fffe 100644
--- a/nixpkgs/pkgs/tools/text/ocrmypdf/default.nix
+++ b/nixpkgs/pkgs/tools/text/ocrmypdf/default.nix
@@ -30,14 +30,13 @@ let
 in
 buildPythonApplication rec {
   pname = "ocrmypdf";
-  version = "11.7.3";
-  disabled = ! python3Packages.isPy3k;
+  version = "12.3.0";
 
   src = fetchFromGitHub {
     owner = "jbarlow83";
     repo = "OCRmyPDF";
     rev = "v${version}";
-    sha256 = "0gs2w9kl5wwrs0hx2sivq3pdvpf3lkaifblwfbz5g31yl770blji";
+    sha256 = "122yv3p0v4fbx30zgppcznwnm7svg97gv0sa103xb6zcld68ggn2";
   };
 
   nativeBuildInputs = with python3Packages; [
@@ -64,7 +63,7 @@ buildPythonApplication rec {
     pypdf2
     pytest
     pytest-helpers-namespace
-    pytest_xdist
+    pytest-xdist
     pytest-cov
     python-xmp-toolkit
     pytestCheckHook
diff --git a/nixpkgs/pkgs/tools/text/papertrail/default.nix b/nixpkgs/pkgs/tools/text/papertrail/default.nix
index 57e79b08fda8..c3d005a97e08 100644
--- a/nixpkgs/pkgs/tools/text/papertrail/default.nix
+++ b/nixpkgs/pkgs/tools/text/papertrail/default.nix
@@ -11,7 +11,7 @@ let
 in stdenv.mkDerivation {
   name = "papertrail-${(import ./gemset.nix).papertrail.version}";
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   installPhase = ''
     mkdir -p $out/bin
diff --git a/nixpkgs/pkgs/tools/text/reckon/default.nix b/nixpkgs/pkgs/tools/text/reckon/default.nix
index b37928fc7c5b..3af64e39ed17 100644
--- a/nixpkgs/pkgs/tools/text/reckon/default.nix
+++ b/nixpkgs/pkgs/tools/text/reckon/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   pname = "reckon";
   version = (import ./gemset.nix).reckon.version;
 
-  phases = [ "installPhase" ];
+  dontUnpack = true;
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/nixpkgs/pkgs/tools/typesetting/lowdown/default.nix b/nixpkgs/pkgs/tools/typesetting/lowdown/default.nix
index e45eda3326a1..640bf49fc16b 100644
--- a/nixpkgs/pkgs/tools/typesetting/lowdown/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/lowdown/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lowdown";
-  version = "0.8.4";
+  version = "0.8.5";
 
   outputs = [ "out" "lib" "dev" "man" ];
 
   src = fetchurl {
     url = "https://kristaps.bsd.lv/lowdown/snapshots/lowdown-${version}.tar.gz";
-    sha512 = "1rbsngfw36lyc8s6qxl8hgb1pzj0gdzlb7yqkfblb8fpgs2z0ggyhnfszrqfir8s569i7a9yk9bdx2ggwqhjj56hmi2i4inlnb3rmni";
+    sha512 = "0gvrjxvizpxm5xvw8v2jygmx244wdl9n75qxz4chqbzkwshk4gwscz38p7sq9qlsbq8jmnv4l095a9dl9b836kym38hh1bvzmdiflar";
   };
 
   nativeBuildInputs = [ which ]
diff --git a/nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix b/nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix
index 47256f9f7ee6..33f8481bc1a0 100644
--- a/nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix
@@ -67,6 +67,5 @@ stdenv.mkDerivation rec {
     homepage = "https://jwilk.net/software/pdf2djvu";
     license = licenses.gpl2;
     maintainers = with maintainers; [ pSub ];
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/tools/typesetting/pdf2odt/default.nix b/nixpkgs/pkgs/tools/typesetting/pdf2odt/default.nix
index 8365163c2fcb..6b64ee466090 100644
--- a/nixpkgs/pkgs/tools/typesetting/pdf2odt/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/pdf2odt/default.nix
@@ -44,6 +44,5 @@ in stdenv.mkDerivation rec {
     license     = licenses.mit;
     platforms   = platforms.all;
     maintainers = with maintainers; [ peterhoeg ];
-    inherit version;
   };
 }
diff --git a/nixpkgs/pkgs/tools/typesetting/tex/texlive/UPGRADING.md b/nixpkgs/pkgs/tools/typesetting/tex/texlive/UPGRADING.md
index 71c42917394f..86e650afd46f 100644
--- a/nixpkgs/pkgs/tools/typesetting/tex/texlive/UPGRADING.md
+++ b/nixpkgs/pkgs/tools/typesetting/tex/texlive/UPGRADING.md
@@ -35,13 +35,18 @@ See https://tug.org/texlive/acquire-mirror.html for instructions.
 
 
 ```bash
-curl -L http://mirror.ctan.org/tex-archive/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz \
-         | xzcat | uniq -u | sed -rn -f ./tl2nix.sed > ./pkgs.nix
+curl -L https://texlive.info/tlnet-archive/$YEAR/$MONTH/$DAY/tlnet/tlpkg/texlive.tlpdb.xz \
+         | xzcat | sed -rn -f ./tl2nix.sed | uniq > ./pkgs.nix
 ```
 
-This will download a current snapshot of the CTAN package database `texlive.tlpdb.xz`
+This will download the daily snapshot of the CTAN package database `texlive.tlpdb.xz`
 and regenerate all of the sha512 hashes for the current upstream distribution in `pkgs.nix`.
 
+Use the url
+
+https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/$YEAR/tlnet-final/tlpkg/texlive.tlpdb.xz
+
+for the final TeX Live release.
 
 ### Build packages locally and generate fix hashes
 
diff --git a/nixpkgs/pkgs/tools/typesetting/tex/texlive/bin.nix b/nixpkgs/pkgs/tools/typesetting/tex/texlive/bin.nix
index 32fba9a8e1f3..05c1644c8c7d 100644
--- a/nixpkgs/pkgs/tools/typesetting/tex/texlive/bin.nix
+++ b/nixpkgs/pkgs/tools/typesetting/tex/texlive/bin.nix
@@ -309,7 +309,7 @@ latexindent = perlPackages.buildPerlPackage rec {
   preConfigure = ''
     touch Makefile.PL
   '';
-  buildPhase = ":";
+  dontBuild = true;
   installPhase = ''
     install -D ./scripts/latexindent/latexindent.pl "$out"/bin/latexindent
     mkdir -p "$out"/${perl.libPrefix}
diff --git a/nixpkgs/pkgs/tools/typesetting/tex/texlive/combine.nix b/nixpkgs/pkgs/tools/typesetting/tex/texlive/combine.nix
index f553908d9ccb..1367d651a091 100644
--- a/nixpkgs/pkgs/tools/typesetting/tex/texlive/combine.nix
+++ b/nixpkgs/pkgs/tools/typesetting/tex/texlive/combine.nix
@@ -50,7 +50,8 @@ in (buildEnv {
     "/tex/generic/config" # make it a real directory for scheme-infraonly
   ];
 
-  buildInputs = [ makeWrapper ] ++ pkgList.extraInputs;
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = pkgList.extraInputs;
 
   # This is set primarily to help find-tarballs.nix to do its job
   passthru.packages = pkgList.all;
@@ -120,25 +121,49 @@ in (buildEnv {
       mkdir $out/share/texmf-local
     )
   '' +
-    # now filter hyphenation patterns, in a hacky way ATM
+    # now filter hyphenation patterns and formats
   (let
-    pnames = uniqueStrings (map (p: p.pname) pkgList.splitBin.wrong);
+    hyphens = lib.filter (p: p.hasHyphens or false && p.tlType == "run") pkgList.splitBin.wrong;
+    hyphenPNames = uniqueStrings (map (p: p.pname) hyphens);
+    formats = lib.filter (p: p.hasFormats or false && p.tlType == "run") pkgList.splitBin.wrong;
+    formatPNames = uniqueStrings (map (p: p.pname) formats);
+    # sed expression that prints the lines in /start/,/end/ except for /end/
+    section = start: end: "/${start}/,/${end}/{ /${start}/p; /${end}/!p; };\n";
     script =
       writeText "hyphens.sed" (
+        # document how the file was generated (for language.dat)
+        "1{ s/^(% Generated by .*)$/\\1, modified by texlive.combine/; p; }\n"
         # pick up the header
-        "1,/^% from/p;"
+        + "2,/^% from/{ /^% from/!p; };\n"
         # pick up all sections matching packages that we combine
-        + lib.concatMapStrings (pname: "/^% from ${pname}:$/,/^%/p;\n") pnames
+        + lib.concatMapStrings (pname: section "^% from ${pname}:$" "^% from|^%%% No changes may be made beyond this point.$") hyphenPNames
+        # pick up the footer (for language.def)
+        + "/^%%% No changes may be made beyond this point.$/,$p;\n"
+      );
+    scriptLua =
+      writeText "hyphens.lua.sed" (
+        "1{ s/^(-- Generated by .*)$/\\1, modified by texlive.combine/; p; }\n"
+        + "2,/^-- END of language.us.lua/p;\n"
+        + lib.concatMapStrings (pname: section "^-- from ${pname}:$" "^}$|^-- from") hyphenPNames
+        + "$p;\n"
+      );
+    fmtutilSed =
+      writeText "fmtutil.sed" (
+        "1{ s/^(# Generated by .*)$/\\1, modified by texlive.combine/; p; }\n"
+        + "2,/^# from/{ /^# from/!p; };\n"
+        + lib.concatMapStrings (pname: section "^# from ${pname}:$" "^# from") formatPNames
       );
   in ''
     (
       cd ./share/texmf/tex/generic/config/
-      for fname in language.dat language.def; do
-        [ -e $fname ] || continue;
-        cnfOrig="$(realpath ./$fname)"
-        rm ./$fname
-        cat "$cnfOrig" | sed -n -f '${script}' > ./$fname
+      for fname in language.{dat,def}; do
+        [[ -e "$fname" ]] && sed -E -n -f '${script}' -i "$fname"
       done
+      [[ -e language.dat.lua ]] && sed -E -n -f '${scriptLua}' -i language.dat.lua
+    )
+    (
+      cd ./share/texmf/web2c/
+      [[ -e fmtutil.cnf ]] && sed -E -n -f '${fmtutilSed}' -i fmtutil.cnf
     )
   '') +
 
@@ -200,7 +225,7 @@ in (buildEnv {
 
     perl `type -P mktexlsr.pl` ./share/texmf
     ${bin.texlinks} "$out/bin" && wrapBin
-    (perl `type -P fmtutil.pl` --sys --all || true) | grep '^fmtutil' # too verbose
+    perl `type -P fmtutil.pl` --sys --all | grep '^fmtutil' # too verbose
     #${bin.texlinks} "$out/bin" && wrapBin # do we need to regenerate format links?
 
     # Disable unavailable map files
diff --git a/nixpkgs/pkgs/tools/typesetting/tex/texlive/default.nix b/nixpkgs/pkgs/tools/typesetting/tex/texlive/default.nix
index c26b944522c9..4497cdfbed26 100644
--- a/nixpkgs/pkgs/tools/typesetting/tex/texlive/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/tex/texlive/default.nix
@@ -109,8 +109,13 @@ let
       pkgs =
         # tarball of a collection/scheme itself only contains a tlobj file
         [( if (attrs.hasRunfiles or false) then mkPkgV "run"
-            # the fake derivations are used for filtering of hyphenation patterns
-          else { inherit pname version; tlType = "run"; }
+            # the fake derivations are used for filtering of hyphenation patterns and formats
+          else {
+            inherit pname version;
+            tlType = "run";
+            hasFormats = attrs.hasFormats or false;
+            hasHyphens = attrs.hasHyphens or false;
+          }
         )]
         ++ lib.optional (attrs.sha512 ? doc) (mkPkgV "doc")
         ++ lib.optional (attrs.sha512 ? source) (mkPkgV "source")
@@ -165,7 +170,11 @@ let
           src = fetchurl { inherit urls sha512; };
           inherit stripPrefix;
           # metadata for texlive.combine
-          passthru = { inherit pname tlType version; };
+          passthru = {
+            inherit pname tlType version;
+            hasFormats = args.hasFormats or false;
+            hasHyphens = args.hasHyphens or false;
+          };
         } // lib.optionalAttrs (fixedHash != null) {
           outputHash = fixedHash;
           outputHashAlgo = "sha1";
diff --git a/nixpkgs/pkgs/tools/typesetting/tex/texlive/pkgs.nix b/nixpkgs/pkgs/tools/typesetting/tex/texlive/pkgs.nix
index 6cdcde78cc56..a42b384803ac 100644
--- a/nixpkgs/pkgs/tools/typesetting/tex/texlive/pkgs.nix
+++ b/nixpkgs/pkgs/tools/typesetting/tex/texlive/pkgs.nix
@@ -584,6 +584,7 @@ tl: { # no indentation
   deps."lambda" = tl."lambda";
   deps."latex" = tl."latex";
   deps."plain" = tl."plain";
+  hasFormats = true;
   sha512.run = "7d9241eab3e1e34f8c1aef85c4f2278680cd147cc4f188194c8c27147df3b9bf2a3bee7c651227aac79996e0745124990950ddc010a4f6662fda4a2f72575211";
   sha512.doc = "87de188abf9880f2e680d6582cfb20d8166eb0c3ed2d3a85971eeac6ba8abea2d7f46b8037c26b719c1289f778d4e94ae1813598e73f8f56f6224e3299852cf6";
 };
@@ -862,6 +863,7 @@ tl: { # no indentation
   deps."knuth-lib" = tl."knuth-lib";
   deps."plain" = tl."plain";
   deps."tex" = tl."tex";
+  hasFormats = true;
   sha512.run = "d52e4a817f839c95b7718c65b6cba571443f9f25533a9c7412a69b3f15c89e995494ed812ead2ddac9f0952e0e842216a7fd443ecf2360f50a36107241397c19";
   sha512.doc = "ed91ca4af98a72f081aa021b598ed58888150a73346d5d8da9ef7171f7d757c6d690169e1eb4b3e409ed8b988b8ffff9475f35ca7a443074080c1c9568ebaa0d";
   hasRunfiles = true;
@@ -10423,6 +10425,7 @@ tl: { # no indentation
   deps."pdftex" = tl."pdftex";
   deps."stmaryrd" = tl."stmaryrd";
   deps."xetex" = tl."xetex";
+  hasFormats = true;
   sha512.run = "61fcc778837ecff88bb0e80e39e2acb3ee64e2c26e4069f7634e5dc6c74dc93caab78e4b0088ed58f494d6dcd3a5084bc55cd471baaeb292dc208cf2a241bf69";
   sha512.doc = "ee4458cd6d45a41652ae24b3b82bea5cfa2d8b9c14cf4ba1357f9f07d6572f8ba83e350b74659c471ebf5068f33f5c5762a11669ab2a4f5adb3db41f392956dd";
   hasRunfiles = true;
@@ -11077,6 +11080,7 @@ tl: { # no indentation
   deps."latex-fonts" = tl."latex-fonts";
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."unicode-data" = tl."unicode-data";
+  hasFormats = true;
   sha512.run = "dd6b98eb22786f39c830a4c012396507dca694d727f1a7eb147a1c8c2d4442d8120e016de4c08c038239dfac866f828bc7686d8fd124d1af63edd0994db80f9f";
   sha512.doc = "8ec3527c25c07641788b809cca4f4cc8bb034f63f1100b74270041b503dbc8926a410429a370692502596bd6ffec69a970a19b1c32178e4722f81acdbf0ea934";
   sha512.source = "0563f453bf7e34b4948a29d832207f8148082c5186a6915a6bdc1c41d0c08399505491ccdea0b45e8bf326a8e8459d37eeaca546143d9f622ce4dacba11cac7f";
@@ -11094,6 +11098,7 @@ tl: { # no indentation
   deps."plain" = tl."plain";
   deps."tex" = tl."tex";
   deps."tex-ini-files" = tl."tex-ini-files";
+  hasFormats = true;
   sha512.run = "27fc3fbb1aa29693fcd1d39abf92e3248fa769b8c4e0171948c2a7957e52dad2e08759050321401f7cb900285de62246bc0013d22141281111a82681c11802e4";
   hasRunfiles = true;
   version = "Mar._2021";
@@ -12018,6 +12023,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "ed2a3c4d91ecc125ecc2179594e66b5bbe66bb806c1b232ae1b71fdd0d29152a2d28e3dc6dbb2e1724650b8b8cb67e8c8bdf5b7506357207ba61c636768fb8c5";
   sha512.doc = "e40955db986b94bb9bbbbf9daaf6a12d2898ae736741fb0a5626755b55908b056a2b4dbc1d87e9681201d7e45c99297393d6e1d2de17d135d8d74c732106897a";
   hasRunfiles = true;
@@ -13809,6 +13815,7 @@ tl: { # no indentation
   deps."plain" = tl."plain";
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."unicode-data" = tl."unicode-data";
+  hasFormats = true;
   sha512.run = "a5b93a081e9b2201a65bf7e7fb01381480f5c1f31aafaa78c5785981d895a384f1f8db1d474db845c06cd0850cf70ec4bec0e3935b67fe506b8b07512ee97479";
   sha512.doc = "44d804287cdd427043f766ea9f5f352d93d65f941b3e18727dfc9276fc381f51fccb3a025707f24dca5efd59cccd1a340e5de0d452d928ec0296b4faa46abf67";
   sha512.source = "8edb47575e32de1d7947bc2b7e1e354eeafe287cce6b4c7bafa1266d9d7c1bd4c8df363ecb4c17da9eb35cfc1e3393e2297ae6d90f9f4aa8147b4467e2ae1c89";
@@ -18001,6 +18008,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "0f969847994b3b377c752c23f802e8c51b4076efc2d43ad2560a72b83cea3bf0a64d7df18a59afe4289a4547a9f23cf81b0c365a499be85a2467579941fa9700";
   hasRunfiles = true;
 };
@@ -18009,6 +18017,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "3f91560ecf78c5540fd4f5d9890f6aa7a57bcd3a41095985785505b82e40793b91a5da3a01bdc021b11c32db3dd7030a104686b34b496c9094acfb85509cd007";
   hasRunfiles = true;
 };
@@ -18017,6 +18026,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "85012062097dd4b624cb39c68b293169a25ab3c9cd15b4474c3a3ffbe4b8ab13d6856c6c70a580da45a2d210952df2d9760682da3917cfd24d17772dc2ccce7f";
 };
 "hyphen-armenian" = {
@@ -18024,6 +18034,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "59538414bf5a4701199100fbd9d5247999a36bc28c7c6ef2a28deb9024e01605d48839f00f345c848365853ac3a9f1aab7402f44860532d7a5c099d2f27ee189";
   sha512.source = "d25e6347545e00a809db1dc8e48ef3fe67678b9ec93a1f3619d2a5a3d786d6e411c2e9f905120e3c5d01d9489c0a83035ce8025836249c88ee768bf07b8e2ca7";
   hasRunfiles = true;
@@ -18039,6 +18050,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "b90680dc5692824d60ca603e8bdd2fcade7cc772c8c0f9538d579704fb16165db2baf0c466ccaff46d92491b4a678fa86a127c0d106dbef6d640dfd2f887663d";
   sha512.source = "75a20da77fa056c719ecc1f014bb09c67f62f1c4a3abe04b7cadf45c7a4e06e4492cb0d34a8025f19f3ee5e3330e488212885095335d4a7e97baa5b106576223";
   hasRunfiles = true;
@@ -18048,6 +18060,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "19b9bd10d2357d0cb6ecc9ddb5e46b65b3c0eec1b2917a78311f255c1609bbb86595ce617d331271a72de934ae4001597f4a04d61b3810e34f3b197b21cab193";
   hasRunfiles = true;
 };
@@ -18056,6 +18069,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "9763e6ece053594b01cd9255a8a3551eb6b86ab082f6f9283664e256c55d43b9513b624774a650d83215d656334751f569496030187c1c78e2fe80f2d10f2f1f";
   hasRunfiles = true;
 };
@@ -18064,6 +18078,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "37189e09ee902f2c5145f30180b51211091b07d7d04125c98f1b7c424ad27f6899424b78cd17c559509076eeeb957b4f268fb4130807e7fafb461174fed8200b";
   hasRunfiles = true;
 };
@@ -18072,6 +18087,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "a78b70095fcfe297e2d85a49108affd5d48451ff4740461eed46d395410a665011614c9a89dff37e9477ee3803de6ebaa68595ac39222f2968a4124355ea7fa7";
   hasRunfiles = true;
 };
@@ -18080,6 +18096,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "c44b3f5fec7b44958336dcfb1a43c5b71fd1715262278863f5fcd74d7ec0cc6f1d572b741256d791e6979f15e4b0fcda8058725e27f17e1deb6e5df5fdb007ab";
   hasRunfiles = true;
 };
@@ -18088,6 +18105,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "fe36adfe900e23f2b0c3e9c3a3d96b608c49bf597222537d355d6a68e2f87f587db78a1921ab1c9a80ea175529e353524c35e99b83ef7f5515ab7c0aacd2f680";
   hasRunfiles = true;
 };
@@ -18096,6 +18114,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "8355d0aa95bb2e72bfc45015f9ae9f6a138f94441387a4daadfec5be4060878f6e69d05eab15432d99c256c1a3f68c122d5c915164fe343459d658a4543ddf42";
   hasRunfiles = true;
 };
@@ -18104,6 +18123,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "f5c8b08c2db716dfa6d36fcf337b4e18372978d04e28ff2c8ed0a0b3866f4bb3efb7b498fedbfde5052fc504b8677ae553c2dce73701e219632d8c5460d7e826";
   hasRunfiles = true;
 };
@@ -18112,6 +18132,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "954543a3fb81ff00d9c58315ba59d7a5e3430217dda6c1453bcb7ffb0516025dea4b877eb9d66c9f80ccc69d3d4895bdc6ae1b611d8394435fa647b8b806559d";
   hasRunfiles = true;
 };
@@ -18120,6 +18141,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "111371e47ca29069a5a9144d694858dd899b19e2b38d0c793b1e4884c69ae2d62398aacb4cd89e23246fc025e42872875bc808c1f327ac1502fac88c962e6c14";
   hasRunfiles = true;
   version = "1.1";
@@ -18129,6 +18151,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "a305cf89138e4327844d43a7e21773e31ac97a4655e4d58ae9a46dc0df565e432330debf704c37b4ad552561357521eba0b676755544ceb9c4f21ace09d6dd2c";
   hasRunfiles = true;
 };
@@ -18137,6 +18160,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "ed2976e9fb3eec5d2f0759348b284129e43bf161db571dd21270335388b8aec57e1b8393bc9b246f8a6e9cde22f93a4cb3c1a03dcadd64fdda3d70b576789050";
   hasRunfiles = true;
 };
@@ -18145,6 +18169,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "0eb91153214aaca8c3b5816f5315f9afdeb7c19521c87c79ea2b35e82217bfb23c8bb774baf810206f4413fc663e441ebe6b4962880ca0dbcda9209d2acce3b8";
   hasRunfiles = true;
 };
@@ -18153,6 +18178,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "a1532603758e7f774acba7c13ee74f0046ff187598ca86b2e93b91da31317f03fdbab5d4d7c0814978fb2ac159bd6e5a48e6e734c19758da21ad0a031844f52b";
   sha512.source = "9d6c8c1b0ce5c40d388937328461336a97fcf1fe780fa6198e029f12ef118d9d98f6eec03ea217743851f0217217d6548298df9336fcf33e6c4c196bbdb9eef0";
   hasRunfiles = true;
@@ -18162,6 +18188,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "5b02582769a55bb07d81e748e83170c16aca1c33b0a240cf547fa9c2212f2be52223e258229c760ddc5dd730419bd9e761614cc4fb3b3ba8102841bb779af511";
 };
 "hyphen-finnish" = {
@@ -18169,6 +18196,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "6aa171d77952165cdcb1b667885f16dd382124ed70ed1db80a9a89553d972720d8ff5f0da1b36669e02c3030d9ff362ab77ba1fa2ba45cddfb460018f0c0191d";
   hasRunfiles = true;
 };
@@ -18177,6 +18205,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "b9d2d05311a90f4caa6c4e8aa8a2e80e9c15fc3552f03f0ac6ec70d386610612715deb6e778247248355a3a209fb2413d6d2aee12f18bc35d5a334870b612507";
   hasRunfiles = true;
 };
@@ -18185,6 +18214,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "d1775a9b6e6b7fa155e44c93271e2ccb41bd1ec143ea0cf624841ad48a123db924dd134e6e60b862a808ad2058ed5b86cb34d98e5728b9dccd3997ba2f06932e";
   hasRunfiles = true;
 };
@@ -18193,6 +18223,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "2d707542f80dc94ad20c0daa776df23b773a5e6ccb261e11db675e1e89f5f303a4f5cd50d97f491cc7ea8b0f3c0d3f6391707812a95d4e72cca3afa7815e566f";
   sha512.source = "b9925168b1f9ae5139ffc3bd34810cc05a27475cfae31e98fd0d7618575fc994ca95d7479506024abec2c33bb20121811244d69c490df18a29d6c93fe02174c6";
   hasRunfiles = true;
@@ -18202,6 +18233,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "edaf041a2f92b0f7dbf28042c81838e8fd781cf9c3ad529c314227c94917ce4e8728ca676f8bd42e2a81bae76b11aabc1e22896e3ef9cd38ca4b718bc58fa0cb";
   hasRunfiles = true;
 };
@@ -18211,6 +18243,7 @@ tl: { # no indentation
   deps."dehyph" = tl."dehyph";
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "bea7d4605b1a18d3e7845ccaa06951b62178b3abbdc13dc59d3cbece3fa95fc4fba7e4d60dd253cd9fc022f804975cae5c4996fb99d3037c29971ade9984abce";
   hasRunfiles = true;
 };
@@ -18219,6 +18252,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "3da84f41aaf7e5d4be0ce609e4d119e65c9189ff6662051cb7e879e9e373d990ef1c59ac7cfead1bdbc6e55b52d4b3ed28d157b22dbec43e5226f16872d5a7de";
   sha512.doc = "865aaf1f9f0fbe130f9006e41ef677713667832745fc24c28cffe805a540a19f7104a3f0fef3258ba0e16c1c456959904887899a4c584338c58de7fcc80c5419";
   hasRunfiles = true;
@@ -18229,6 +18263,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "868a4c3f4d0eda078054026bd1ec35e05c2f4013e093bf58147bfa2d861814242b55a900ce60384767558c9552ff9d41cf447e2a157bae83bd2877251012d96b";
   sha512.doc = "164180f0485e16a49ba83dcb4721902e8a29f399032d4f5a59d55e424b8178a25dedd9fb99919d9d772142342fb78fe0dbf7a5303382a0b7feae4a381b76f8bb";
   hasRunfiles = true;
@@ -18238,6 +18273,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "69add7ccde189e86810e2a82692a260de9a9fcc0ba011352881d202d4f4c94c4dbd84fe36dff40ef9b9ad3e8e990947cc61022307790f13cad56744f3ef5e41f";
   hasRunfiles = true;
 };
@@ -18246,6 +18282,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "765be1c13ef3445b056b61c24460cc2f18bad038c04541bf4773c7f61c6d26be25d3079b260a1b9623e2f01155ec52eb5bc87b0ea9234e50a5ca24dd8a7a5937";
   hasRunfiles = true;
 };
@@ -18254,6 +18291,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "3f04a63010c02d77cb229c90aec9f1079557493958573be9ce992ac5ae3c229f01f9abc0cac785d9340ff48aa169a01f8b327ecb2e255bef57f1fe85d04d1d2a";
   hasRunfiles = true;
 };
@@ -18262,6 +18300,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "dfed82ea70f25d452726b5cd03d8e060bddc23cbbc5deebab2ddad93ce6744c38d357327fbe570bf7a1444f62cee0cc422a6c7d066d6693a238d851b4fe46e32";
   hasRunfiles = true;
 };
@@ -18270,6 +18309,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "478a77c4ab8231a3041c3427075f16c072f58a394eced8ff0cd5da6544f3f2fd65722f33fd8344e18060c96f09bd18b90af71f8508639fc9c59d29d704d9e348";
   hasRunfiles = true;
 };
@@ -18278,6 +18318,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "4e79ee31893d6c948a3aac8588d4beb75d89f89df973b1e39cd63894e008af55f8dca774194d7eb105fb0aef692b17bb645d5bd85cca7debafd74aabf241bc30";
   hasRunfiles = true;
   version = "4.8g";
@@ -18287,6 +18328,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "e5114da178fc841b1079130c01f8729ac94f0e3592dbd479f44a978ea009fd75b410d6130d9badd6227d115d8f6dad3ed4b553dbfbf4f80be5d1c2adf108e2fa";
   hasRunfiles = true;
 };
@@ -18295,6 +18337,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "9d0db7fcad4ca764379957fa22f9daede79898bcacfbdb62abe54318a52dd82a66f8e39542c18008e3f6b6d0db284b1e9b891531d3c8f3c9cf22c764e83d57b3";
   hasRunfiles = true;
   version = "3.1";
@@ -18304,6 +18347,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "85aeadb0cb3c5de9ef48057132ccd958d17f014b07b56b9ebe2186a709c4e7646fad260e156718e43ec3eac88681654f88c9b53a6d71fb3eaee934dcb4439ed9";
   hasRunfiles = true;
 };
@@ -18312,6 +18356,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "7a691e3c55c768b9ea5ef13552dc42025ab613df0a0d5c0d54aad58b63da11a93e59bc53e6a8211d5e054cbea8500846da01e9619bbee723d648e2d369a49d55";
   hasRunfiles = true;
 };
@@ -18320,6 +18365,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "f88208291212874df493151581205d1b270b2d4278176c42e11edac9b344b73c2ee859f93b6947e4a6003a00abc4d3753024add9caf84f114c8a0cec72aa8c8d";
   hasRunfiles = true;
 };
@@ -18328,6 +18374,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "159562a8feb25918bc422e7dc78a46423c7fff2f3c61016a0162761411999a5555be3c6e36cf967d5034f65c12f4b0834ae0c0423c2f3ab17a65034b1803dc72";
   hasRunfiles = true;
 };
@@ -18336,6 +18383,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "8b02e90bfcdf3c6d4bd1966b21e0512069f1749c638d537e9553f68e61e0bc325db8d3b462f45650db4376c7a769c2cde3e0c0601d7de272898a23cd2251c064";
   hasRunfiles = true;
 };
@@ -18344,6 +18392,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "b0743d1f6083dac7a347e22aed19d0c5d76119582e4862557a55b817b17dddaa69a2150f14daf6b08689278dd61b27c1b6ed45df5601dd6327bf185a7a46a5c6";
   hasRunfiles = true;
 };
@@ -18352,6 +18401,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "fa7fc73edd582ba20b8236507385f0a30f477bb9c79e35fea56aa4020be966b9c4a16a327848dd051fa4cf6e6117ef8a51eb92ed6cb72f6993cb290fa5cd5ca3";
   hasRunfiles = true;
 };
@@ -18360,6 +18410,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "5580b3865ff8d20d475cb962b0257b909ff0e410b6776cb8153145fb0ee42b2f777069413bc6b3622c8c52318aba1ba836210e8972c5b6a47ef978c24fc8848a";
   hasRunfiles = true;
   version = "3.0b";
@@ -18369,6 +18420,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "9d9ab3e616522ab9837bb7c7509127f998c442e96f96ee6b6fc0fdc9ac53fd03319d0c0ce28e23a35f1ae0ebb840cdeb19e8ab6444549c33059b28e7b307486e";
   hasRunfiles = true;
 };
@@ -18377,6 +18429,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "124a93a633731dc1b3d6cbf2fc9b8489bf0737911a0c25ea44dbdfffa07c165ba5804dfd7e9cbe0be3b6eceb9fd6e95daefcae2356ee140f644416bbe1b13507";
   hasRunfiles = true;
 };
@@ -18385,6 +18438,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "a69d3881493c70cfd58e3d79ed76ce6f18bbcb43e1683f31270eafeb743b366a3c52c9945ff94db333e88ca18145263ba74002f5e78bb42d7aefa48c66af7955";
   hasRunfiles = true;
 };
@@ -18394,6 +18448,7 @@ tl: { # no indentation
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
   deps."ruhyphen" = tl."ruhyphen";
+  hasHyphens = true;
   sha512.run = "f17852dffbb8f5c337b8316b92c2b0a60a318df491231047d9c0930d55d8b2be3274ec94d0d87085d53e06e89c585d47250f046300bf3890ce751f6f2052d348";
   hasRunfiles = true;
 };
@@ -18402,6 +18457,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "e84b6ca93e922c9c6edf03f4dbec1fae9eef2462379ef2fd0f3508a5048b54819c5ba12e0d76bafe1336666ca74ba95e27f63224fa048068bc515f3bc41f6eba";
   sha512.doc = "95c6ae15687118ffc9019c8634347a602e6590b4a1d18bc060e57fe548a81f097070322975be1f62fa2685c5affff7f31b4854b0ec941bbcb9377ecf16986cea";
   hasRunfiles = true;
@@ -18411,6 +18467,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "390aa9c116b6db7b362fc57aa0758a4c489c5fe33c718fb37675b17a9772a463ce532a2ace3e1ef90275b4afef5ea8d6cff71a7abe625d84e3f461c115306452";
   hasRunfiles = true;
   version = "1.0a";
@@ -18420,6 +18477,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "a0786980e0cda7029a72075023520acdc998b83226e85deb0b8186ee4293560321517d507f74fbe68f1d68a16cd8af67aae68baead9176f9cc687bcc7d0a72e1";
   hasRunfiles = true;
 };
@@ -18428,6 +18486,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "a605c9149ae452df8b2c25aa0f6bcdde53150e4485147a065f1f56c9740c3544c5c7f9c6049aea913916a62aabaf40777cf6f0f76a858e485c0bd09826a6ef5b";
   hasRunfiles = true;
 };
@@ -18436,6 +18495,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "d6783537ff44a326b83c2004afd63f5bdbd162fa4865138c2e6d34c9e6a103ac41dd7b382454646b09c74970f8e0d5827a5f4af617936f74fd300b2054a096d4";
   sha512.doc = "263fd9480c5f225c7e36169b86e846baa64745b83c1072c9602e873f2e7cf8e63b07ab85b29e9d4263656faff58a39fe83e1eba34517b8ba34720f189c8e7f43";
   sha512.source = "b1ceb7602a46ecab68fb767ffb154f0dea9626d81bf6c46dd43be328204f72141842c81efda9d7d51997ed25356746e345f7cd9f9ed88ac2f99746794becb75d";
@@ -18447,6 +18507,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "5f993ae6b22eadb87b6a1839bfa7d78a0dccc1107c5afbec8c248ed001018da38bb179e29f2430cffa90283221b20c5475346a8d5566edf16152266257f2a37d";
   hasRunfiles = true;
 };
@@ -18455,6 +18516,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "8336eee03250859ab4328ad3c1fe437d2af688ef56b43be49c45838965ffe033befa84cdf600e9f48cdf60cbbfbff44450c830bd4c34556f680c5096ed3aecc4";
   hasRunfiles = true;
 };
@@ -18463,6 +18525,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "5c7023e01bf59af4d36bd451f51ae00c445711c7ecf109c9d835f1d689446d7b0b1b2627b7f9e84e4f4a8ceff52227ff280ac64481e1d29d538a30e093dace85";
   sha512.source = "2aa80889b9657b03b6beb6510b6790fba13811b97abbac186eaf4d3f40212b41db0dd2d21583429820faad558b0415a09aa8254d2edd96812cf6396fb18ccf5c";
   hasRunfiles = true;
@@ -18472,6 +18535,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "c984bb7f09c5816c36a7a790f16df1750ee90f36e2130994ecd1db63f26afb650245985699a80da9b4d7004ad67106771d8c7b79262438369aee3f52fd8374cf";
   sha512.source = "a496f681db0b4b85d82ec1dd60c057f63b6d1c1b52d391e7bee98d3d6e1fb596701c91f2ca400d0df13b96ec7a43d275646b7d2874fe1e4efc9d9b2b47f6cc5d";
   hasRunfiles = true;
@@ -18482,6 +18546,7 @@ tl: { # no indentation
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
   deps."ukrhyph" = tl."ukrhyph";
+  hasHyphens = true;
   sha512.run = "05a9111b358c659159c6edfd38b9ce3d78febd794cc82968dc3e2acdc3612786304721fbd07f00f0a8278f4c2e46a1bfad821b5da45e60546d6acb5bf9068d08";
   hasRunfiles = true;
 };
@@ -18490,6 +18555,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "b2cb1bcd953ffabbd3f5acd8c72e9c60415fd300004de56ee446fc77d381aac1db65d613a2f591d3d0e45f2a12ff5340457ae3061b4c77de502923932383bdcb";
   hasRunfiles = true;
 };
@@ -18498,6 +18564,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
+  hasHyphens = true;
   sha512.run = "12a23e0b9d00eb4381e3c97ecbb449faf5a73b755a17fc0301f1cbad5d0babb370aeec16dcdd316cefb56e142873abaa685288b1a1d3c7dcb76a07a9ef127ac6";
   hasRunfiles = true;
 };
@@ -19318,6 +19385,7 @@ tl: { # no indentation
   deps."url" = tl."url";
   deps."wasysym" = tl."wasysym";
   deps."zapfding" = tl."zapfding";
+  hasFormats = true;
   sha512.run = "985e1ed14e5db0a23e9be510e5a52456fdf07ff8c8746add0d1123fa8b8684b3a0c5d9e99e06aa193c667ffa2dd648419d4359a75685d6514e81b9ef0d92ff22";
   sha512.doc = "bf83fb4dc700f10050d34905197a630f8de75a6a27146188efc254b831ad0d68cc873b610f7457a3dc1140a10793aa05c567749efc38225089014df99fc2c895";
   sha512.source = "63bf7f94983a971833e1e1b7d33afdf684d83117e4ce846334952176641b45acfe0c18b2fe983c2f24d98e68e91469560c2c10582d53015d069802a38066280f";
@@ -20245,6 +20313,7 @@ tl: { # no indentation
   deps."pdftex" = tl."pdftex";
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."unicode-data" = tl."unicode-data";
+  hasFormats = true;
   sha512.run = "b349e8fad2765c4a87b471532dcfafedc0a9711237c6e967011727da7bad3a5ed27a89eca81af324aa84958872d0b78c68e6d9490fced44eb7636b2fbf36611f";
   sha512.doc = "7cfb465f4db5089e7fa41762a0437f5f51445efdb9aba5d676dc5933e0fbcfbe0fda31baf83e20f2d16e6a7a0019c71752af8744d02ad12636adb9afb8cb3041";
 };
@@ -20275,6 +20344,7 @@ tl: { # no indentation
   deps."pdftex" = tl."pdftex";
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."unicode-data" = tl."unicode-data";
+  hasFormats = true;
   sha512.run = "31c364be709db593c1a1d4e5250a7d8899fe0f5eb534c61c5f67d1a032b4afca9a91c5d2d1a541e96045d294c87d7ca1758a6a59bce8a3e94bf5511e20cf8854";
   sha512.doc = "94474a52fb6a2bb801405c83562d6dd69038cca8d73705f382c2acc6c63d57e057a6b6c1b93556e41f5d0d9f9adfa269f0857c35e6523108eb230985752c3261";
 };
@@ -21366,6 +21436,7 @@ tl: { # no indentation
   revision = 45678;
   deps."cm" = tl."cm";
   deps."hyphen-base" = tl."hyphen-base";
+  hasFormats = true;
   sha512.run = "81557b83acfa4ad42dfa6fb1a65ea42bc33885da444ee23bc3c67a899df7b3ac2c19a1607305b5ec10b503980365c5d29ac3598339fc186a05417ea5bca60a78";
   sha512.doc = "206dee2be733e3ac04b5b259862b60fb3641fc44ea182da601ca54a010ff8e42f254dd01c03be7bcdd2a6258110c567a596ee82b4eb74d04ca8ed70e50cd6a86";
   hasRunfiles = true;
@@ -21863,6 +21934,7 @@ tl: { # no indentation
   deps."plain" = tl."plain";
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."unicode-data" = tl."unicode-data";
+  hasFormats = true;
   sha512.run = "bb198606ca33912f75327b0799061a81aeb9e2315182001710929d5a7c786fc11b58a5eadcc186f2db21df01777904ada31058c0a03376c04020b213d9f7c519";
   sha512.doc = "9b7c72ad24d459b345552ee8ae05c047c61cf3e0b6eabb927e2a02bf62558f143e937463574bdb0cc60a0a4c8b2da3f86b1d9361275142519044051039275f1c";
 };
@@ -21918,6 +21990,7 @@ tl: { # no indentation
   deps."plain" = tl."plain";
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."unicode-data" = tl."unicode-data";
+  hasFormats = true;
   sha512.run = "01777af9a468b6216417c5158034c3dea3cfb1c3ca7d28f1c4ca2b239fe569fbde410d17662bf9a10f5fddfd1bb6541c505d772e705832b52a1c2d6225d0fc6f";
   sha512.doc = "a6a17f70a44655e1aba11ac1353cc13b36bee762083be76a31c04d90ae73d021659219a3a741b70f0b43888d6b6a6ab356f378fa5850a23ce7423b28a721e924";
 };
@@ -22043,6 +22116,7 @@ tl: { # no indentation
   deps."plain" = tl."plain";
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."unicode-data" = tl."unicode-data";
+  hasFormats = true;
   sha512.run = "c16a8cfa5ce0991d4b667471dd32f692c4e340d1856a36fd684811d40322f912b94125ae101ba095ca6c54b2afa3a37f1ab9af83e4a10328f8c1a1906a02a44b";
   sha512.doc = "0d2492075eb2bb6b9cc8a67b0ed53cf5a8c4c700797d8bce8061a4cf938db5cf19fa4ed6f7adb59b1da0701ff365504e813289dea3c245ad717c82bc58df9128";
   hasRunfiles = true;
@@ -22935,6 +23009,7 @@ tl: { # no indentation
   revision = 57972;
   deps."kpathsea" = tl."kpathsea";
   deps."modes" = tl."modes";
+  hasFormats = true;
   sha512.run = "7ea3271c2a9682ae5ee29a05a95e794f4a6dc5a6244a6c243e856aaa857310127d5593b0643d4ca53eae7feb9c205574f5ea216b7c3c0b731e7f98be99bf1588";
   sha512.doc = "95e7221ac9e3438d4cae336296e7db855df9a7e49ebaaec5dfea294565824938f3d6544459cee9ecbf17312daad4e44c92a7a9a65269feebd2b819f226f305bc";
   hasRunfiles = true;
@@ -23088,6 +23163,7 @@ tl: { # no indentation
   deps."tex" = tl."tex";
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."utf8mex" = tl."utf8mex";
+  hasFormats = true;
   sha512.run = "a79d6a1ecb15f7962826773d7eab4b1ffd86a5c15f8076f096fecf63df1bd661449eb7d14251a57a1eb2bede030ddf93aac170fc3c59ae0a124da6cef69e55be";
   sha512.doc = "091f2825376718d8c2190555af7ef54d0ae5202425d57b986fba861df2f8604301df5a121ccfcfcdc91032d07dcda8289fb8de5d81c487b93b0e202a2a5a658e";
   sha512.source = "6f20a7e4f80670f7dfe5b2cfe3357a5d16b0f627b5e9e95c2d7d46598e00b989d5ae8c797589c56c594b7d3610f5f79cad42f3bb64a628be968e4e9e5d541e98";
@@ -23131,6 +23207,7 @@ tl: { # no indentation
   revision = 54074;
   deps."luatex" = tl."luatex";
   deps."metafont" = tl."metafont";
+  hasFormats = true;
   sha512.run = "ec89212e9a1518f5502f93114377f07e88af787f15c64fc61f40f22a679384f8825384c694dd365d5a74bc5d9417dcf3932c634279550603374bb43df1a7a0e6";
   hasRunfiles = true;
 };
@@ -23488,6 +23565,7 @@ tl: { # no indentation
   deps."plain" = tl."plain";
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."unicode-data" = tl."unicode-data";
+  hasFormats = true;
   sha512.run = "0b3fe440055cc4c943fe8cdee93997718a3625782c5b2962cb514011f2038ad14518f7cffc55dee41f0a57f7401b8f2f493631a2b9cbeb806ae75ae80269f3b5";
   sha512.doc = "a3b962871878f3f34c2d419fa9ae1c27518f3901212796d32649b5524f49fa103a71f46403726b9568ac358ab98afe7b23356a0f2d2d8592c0b84cfc186d5f53";
   hasRunfiles = true;
@@ -23816,6 +23894,7 @@ tl: { # no indentation
 "mptopdf" = {
   revision = 57347;
   deps."plain" = tl."plain";
+  hasFormats = true;
   sha512.run = "69181f1facef413b4e2317180f8dba551fe40bb06e6af8d9378319d8cd3fdec985241e632f19888f32b70f16a40d11c66581f7e3c409bc38b7cfad3733cba2fd";
   sha512.doc = "f0cbd95500324a6b5ca835d62065c83028241e0ce5fa35a313458dc30e6726a21a6d1c267669627061d23f2dd7d7397f471581021e03c817c281cb6efa1d2769";
   hasRunfiles = true;
@@ -25260,6 +25339,7 @@ tl: { # no indentation
   deps."lm" = tl."lm";
   deps."luatex" = tl."luatex";
   deps."rsfs" = tl."rsfs";
+  hasFormats = true;
   sha512.run = "d734139205c47599f3490dfbf13e6f71532ed7c311c3c76b6e444e539f1be6dd1bfffc612f8d019c38923d46ea7c98be72b28cf83c2b00885d787f6f526b0f0a";
   sha512.doc = "285d74614c05d3776a41269da1156930024359eef282b3d5479a5397bdb928357ff3020d3fcf47bc92d8ce4ae37a9c4fd68c9e601d7083911145a2bed2bad4f9";
   hasRunfiles = true;
@@ -26007,6 +26087,7 @@ tl: { # no indentation
   deps."kpathsea" = tl."kpathsea";
   deps."plain" = tl."plain";
   deps."tex-ini-files" = tl."tex-ini-files";
+  hasFormats = true;
   sha512.run = "17c2b07af5e14f9f581d1094f4a3657ec1fe2b19fa96d952d1e4859265dc26e42743dc1fd7e8d6a7de56867be1b50a7071524d0580a8a680c605146893e7ff1b";
   sha512.doc = "8422210dceae381676a4c03784ab2c9b0e9233913eca6d25a9a7d5c5675f9ecb32f0a93dd624dbcc715f20d7e386a7844ea00e6e85473c1af14f8e384cd3f61e";
   hasRunfiles = true;
@@ -26720,6 +26801,7 @@ tl: { # no indentation
   deps."ptex-fonts" = tl."ptex-fonts";
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."unicode-data" = tl."unicode-data";
+  hasFormats = true;
   sha512.run = "787554d26ec4acb3811efbe96349a51b517e5b3b4677754d94dfe1d0ce61088d016f21995e5e9f49e1ace76a1e1f2c057c126981a9e340a9e047597f637aae3e";
   sha512.doc = "f0085548bc20f0389d475a9abf294a8713d36184aef1c65e12d5a7621a4f60e26cf8b63f6a1d558afe964f633455fffd9f492e749938c290b91c10e02c6cb4d7";
   sha512.source = "50afb0b5a1b766f89d7f3dda64b74f080a06d25d66618a4466018209fe4e3245f8deb274b22e30b45fac0a8a9f903ae70ec0301bfb72a394ebc3759e065205fd";
@@ -28253,6 +28335,7 @@ tl: { # no indentation
   deps."plain" = tl."plain";
   deps."ptex-base" = tl."ptex-base";
   deps."ptex-fonts" = tl."ptex-fonts";
+  hasFormats = true;
   sha512.run = "d59108f06a06b7ac46195ef05c0ba6fb4873a88d327839a6143e94392faf3df73ae7b128548ae1ab69915f9883bad554f0e2dbd8d36b8f8c959897210895fba0";
   sha512.doc = "4f863d89fca4c137a84fe75365f600da96f3901d29dd98e9d5733523648b746861a22284707c6e9df90a9939c83adc7bcdf21b310785b8d403459d65294d1133";
 };
@@ -32394,6 +32477,7 @@ tl: { # no indentation
   deps."knuth-lib" = tl."knuth-lib";
   deps."kpathsea" = tl."kpathsea";
   deps."plain" = tl."plain";
+  hasFormats = true;
   sha512.run = "e38f62fcc5ccee22a909eae5ea196e055eae59eedc652ce9788a3b4520995e97f64c683f1ba940853a06030a7ea6f1d749ed4dda1cb30433f87f5f9cdce5a9a7";
   sha512.doc = "3056263569276ca7a62ccb03542eac99b648d36c398ded17204a2624f06920c506985aedd1a639a48bc60af6394d091cdfd9ec44000730bd8e8c83c2234bb569";
   version = "3.141592653";
@@ -32801,6 +32885,7 @@ tl: { # no indentation
   deps."knuth-lib" = tl."knuth-lib";
   deps."plain" = tl."plain";
   deps."tex" = tl."tex";
+  hasFormats = true;
   sha512.run = "7309726b33eadf8290e596aab50bb1af95600a067338b352c1ac092643a8c6d4142180d0146abbbb828a38fb08fdd9ae03da6572e6c221afcd151a51430a423e";
   sha512.doc = "2a4979a10514ccd589b331ff34a677a4e22adbeea73d6112c9a14392b3ee75a8cdb292b008b160792b3d00b812834afa7e0211db860c41f1beb69bbc900fdb90";
   hasRunfiles = true;
@@ -34920,6 +35005,7 @@ tl: { # no indentation
   deps."unicode-data" = tl."unicode-data";
   deps."uptex" = tl."uptex";
   deps."uptex-fonts" = tl."uptex-fonts";
+  hasFormats = true;
   sha512.run = "8acef423a0359136795301e1deaba156c702ee360f309d1884a90b3ed89842389bcc015e70c1461611ebb4a21fb9d5853db5ef40226ce0f61eb11f2a424a70f4";
   sha512.doc = "7cbc40c770c1e04114add004fc4920e3c7dea62f959d06fcbfe54b9fdc45893214ef3e960ac685cce258b07fab424aa7a242da368aa1ee0015ddf8579d582820";
   sha512.source = "9c1c1d0fec518410938e6642123f64242a6ff0bbb6425945897c10754e436fbd82d6739d31717152d183da385800a569d9209f37dd38c8eb77767842e0822a67";
@@ -34960,6 +35046,7 @@ tl: { # no indentation
   deps."ptex-base" = tl."ptex-base";
   deps."uptex-base" = tl."uptex-base";
   deps."uptex-fonts" = tl."uptex-fonts";
+  hasFormats = true;
   sha512.run = "1ee2679e7531fe4406fea72f7efc482f7900da50cb74045a62c0b5e5596862011509c3d966a795bc13538170afd7db26e8cf4f406391a746e45804414f26cff0";
   sha512.doc = "06a3459702bc9838f2246aad7af99c427413a43356d88165e68a132bf8b926d9ab668e6dc10127c27eaac6526085c3fa069bb9709833cef241c94d0f4fb3e02a";
 };
@@ -35893,6 +35980,7 @@ tl: { # no indentation
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."unicode-data" = tl."unicode-data";
   deps."xetex" = tl."xetex";
+  hasFormats = true;
   sha512.run = "93df696d59d088bf5808b5dfe0ad6a834b65252dfe1f06cdc0d2f446a57b97751c08464e58be40ac042cc508d5f846696561d6524bbb84234af11fd3b7c61d00";
 };
 "xellipsis" = {
@@ -35960,6 +36048,7 @@ tl: { # no indentation
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."unicode-data" = tl."unicode-data";
   deps."xetexconfig" = tl."xetexconfig";
+  hasFormats = true;
   sha512.run = "dd788efc6e03e11e2dd88d8e63ca2153e936194391d49ce422a757ba1937986cb80faafa71860bf55ef5cbab51b53cd0c85c60dadddd92940802ede301cdefd6";
   sha512.doc = "544a36d94bf2094403806d934a7e0d92062c1b5b1d0efbf4316d9319a1ff95a1d8f7a4a961c63e4a3eb66c9c4a24789e239f958132e5a4f08c3764f44772c8aa";
   hasRunfiles = true;
@@ -36186,6 +36275,7 @@ tl: { # no indentation
   deps."tex-ini-files" = tl."tex-ini-files";
   deps."unicode-data" = tl."unicode-data";
   deps."xmltexconfig" = tl."xmltexconfig";
+  hasFormats = true;
   sha512.run = "e98a3ab9986d63d2605c87463bb32835d8ffcdd93f577b642da8e8f2447b6a74363c3a5799808c35f2e4b099af2789698ea471e04457a31ba8753ec4762e0ead";
   sha512.doc = "340859a95a102759494222e0cbf19b7f851c44d4cfeac77cee178b69f576151021de53c32ffb8dcb8ed911dae2eecaac943941481b5cccdfb5302bb8291724fb";
   hasRunfiles = true;
diff --git a/nixpkgs/pkgs/tools/typesetting/tex/texlive/tl2nix.sed b/nixpkgs/pkgs/tools/typesetting/tex/texlive/tl2nix.sed
index 2f30aa69fe2c..61150fa8b7cf 100644
--- a/nixpkgs/pkgs/tools/typesetting/tex/texlive/tl2nix.sed
+++ b/nixpkgs/pkgs/tools/typesetting/tex/texlive/tl2nix.sed
@@ -32,3 +32,7 @@ s/^catalogue-version_(.*)/  version = "\1";/p
 # extract deps
 s/^depend ([^.]*)$/  deps."\1" = tl."\1";/p
 
+# extract hyphenation patterns and formats
+# (this may create duplicate lines, use uniq to remove them)
+/^execute\sAddHyphen/i\  hasHyphens = true;
+/^execute\sAddFormat/i\  hasFormats = true;
diff --git a/nixpkgs/pkgs/tools/virtualization/cloudmonkey/default.nix b/nixpkgs/pkgs/tools/virtualization/cloudmonkey/default.nix
index 8b9cd18cd0a7..1945e56b96e7 100644
--- a/nixpkgs/pkgs/tools/virtualization/cloudmonkey/default.nix
+++ b/nixpkgs/pkgs/tools/virtualization/cloudmonkey/default.nix
@@ -1,23 +1,23 @@
-{ python2Packages, lib }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
-with python2Packages;
-
-buildPythonApplication rec {
+buildGoModule rec {
   pname = "cloudmonkey";
-  version = "5.3.3";
+  version = "6.1.0";
 
-  propagatedBuildInputs = [ argcomplete pygments ];
+  src = fetchFromGitHub {
+    owner = "apache";
+    repo = "cloudstack-cloudmonkey";
+    rev = version;
+    sha256 = "sha256-OmVM6ayrtrLl+PADnkUnrssbsq1GZp2KiMBOXPgfi5Y=";
+  };
 
-  doCheck = false; # upstream has no tests defined
+  runVend = true;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "064yk3lwl272nyn20xxrh0qxzh3r1rl9015qqf2i4snqdzwd5cf7";
-  };
+  vendorSha256 = null;
 
   meta = with lib; {
     description = "CLI for Apache CloudStack";
-    homepage = "https://cwiki.apache.org/confluence/display/CLOUDSTACK/CloudStack+cloudmonkey+CLI";
+    homepage = "https://github.com/apache/cloudstack-cloudmonkey";
     license = [ licenses.asl20 ];
     maintainers = [ maintainers.womfoo ];
   };
diff --git a/nixpkgs/pkgs/tools/virtualization/linode-cli/default.nix b/nixpkgs/pkgs/tools/virtualization/linode-cli/default.nix
index b30c4b88651c..f169ec7b854a 100644
--- a/nixpkgs/pkgs/tools/virtualization/linode-cli/default.nix
+++ b/nixpkgs/pkgs/tools/virtualization/linode-cli/default.nix
@@ -11,23 +11,24 @@
 }:
 
 let
-  specVersion = "4.96.0"; # Version taken from: https://www.linode.com/docs/api/openapi.yaml at `info.version`.
+  # specVersion taken from: https://www.linode.com/docs/api/openapi.yaml at `info.version`.
+  specVersion = "4.99.0";
   spec = fetchurl {
     url = "https://raw.githubusercontent.com/linode/linode-api-docs/v${specVersion}/openapi.yaml";
-    sha256 = "sha256-4+j5BBTOFLLiA+n0YEUH/ICK4Iuxr6nNB7ZRrYACW2I=";
+    sha256 = "10z63a2clbiskdnmnyf4m8v2hgc4bdm703y7s2dpw0q09msx9aca";
   };
 
 in
 
 buildPythonApplication rec {
   pname = "linode-cli";
-  version = "5.4.3";
+  version = "5.5.2";
 
   src = fetchFromGitHub {
     owner = "linode";
     repo = pname;
     rev = version;
-    sha256 = "sha256-hljvcYtck89Lzje0XgnvYqh+jebOEOFnOkgEnGZJm0o=";
+    sha256 = "sha256-AjO4h0PaE/QFwbwUVNoe98XOPZ24ct0mbLkua5/YsEA=";
   };
 
   # remove need for git history
diff --git a/nixpkgs/pkgs/tools/wayland/swayr/default.nix b/nixpkgs/pkgs/tools/wayland/swayr/default.nix
new file mode 100644
index 000000000000..24a830a7277c
--- /dev/null
+++ b/nixpkgs/pkgs/tools/wayland/swayr/default.nix
@@ -0,0 +1,30 @@
+{ lib, fetchFromSourcehut, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "swayr";
+  version = "0.6.1";
+
+  src = fetchFromSourcehut {
+    owner = "~tsdh";
+    repo = "swayr";
+    rev = "v${version}";
+    sha256 = "1865064q8jb75nfb0hbx4swbbijpibm0n7m4cid8qgylzp4bxvs2";
+  };
+
+  cargoSha256 = "0w6zjnywifdlaw01xz2824lwm4b6r1b7r99wi3p12vgbrmks4jcr";
+
+  patches = [
+    ./icon-paths.patch
+  ];
+
+  preCheck = ''
+    export HOME=$TMPDIR
+  '';
+
+  meta = with lib; {
+    description = "A window switcher (and more) for sway";
+    homepage = "https://git.sr.ht/~tsdh/swayr";
+    license = with licenses; [ gpl3Plus ];
+    maintainers = with maintainers; [ artturin ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/wayland/swayr/icon-paths.patch b/nixpkgs/pkgs/tools/wayland/swayr/icon-paths.patch
new file mode 100644
index 000000000000..8fafc4c4153c
--- /dev/null
+++ b/nixpkgs/pkgs/tools/wayland/swayr/icon-paths.patch
@@ -0,0 +1,17 @@
+diff --git a/src/config.rs b/src/config.rs
+index de7d04b..291114b 100644
+--- a/src/config.rs
++++ b/src/config.rs
+@@ -197,6 +197,12 @@ impl Default for Format {
+             ),
+             urgency_end: Some("</span>".to_string()),
+             icon_dirs: Some(vec![
++                "/run/current-system/sw/share/icons/hicolor/scalable/apps".to_string(),
++                "/run/current-system/sw/share/icons/hicolor/48x48/apps".to_string(),
++                "/run/current-system/sw/share/pixmaps".to_string(),
++                "~/.nix-profile/share/icons/hicolor/scalable/apps".to_string(),
++                "~/.nix-profile/share/icons/hicolor/48x48/apps".to_string(),
++                "~/.nix-profile/share/pixmaps".to_string(),
+                 "/usr/share/icons/hicolor/scalable/apps".to_string(),
+                 "/usr/share/icons/hicolor/48x48/apps".to_string(),
+                 "/usr/share/pixmaps".to_string(),
diff --git a/nixpkgs/pkgs/tools/wayland/wayland-utils/default.nix b/nixpkgs/pkgs/tools/wayland/wayland-utils/default.nix
index 5c07081099c6..16bce1723aa6 100644
--- a/nixpkgs/pkgs/tools/wayland/wayland-utils/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/wayland-utils/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl
-, meson, pkg-config, ninja
+, meson, pkg-config, ninja, wayland-scanner
 , wayland, wayland-protocols
 }:
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "1h38l850ww6hxjb1l8iwa33nkbz8q88bw6lh0aryjyp8b16crzk4";
   };
 
-  nativeBuildInputs = [ meson pkg-config ninja wayland ];
+  nativeBuildInputs = [ meson pkg-config ninja wayland-scanner ];
   buildInputs = [ wayland wayland-protocols ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/wayland/wev/default.nix b/nixpkgs/pkgs/tools/wayland/wev/default.nix
index 69288a1bc8ce..d04cee342b7e 100644
--- a/nixpkgs/pkgs/tools/wayland/wev/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/wev/default.nix
@@ -3,6 +3,7 @@
 , fetchFromSourcehut
 , pkg-config
 , scdoc
+, wayland-scanner
 , wayland
 , wayland-protocols
 , libxkbcommon
@@ -19,8 +20,8 @@ stdenv.mkDerivation rec {
     sha256 = "0l71v3fzgiiv6xkk365q1l08qvaymxd4kpaya6r2g8yzkr7i2hms";
   };
 
-  nativeBuildInputs = [ pkg-config scdoc wayland ];
-  buildInputs = [ wayland-protocols libxkbcommon ];
+  nativeBuildInputs = [ pkg-config scdoc wayland-scanner ];
+  buildInputs = [ wayland wayland-protocols libxkbcommon ];
 
   installFlags = [ "PREFIX=$(out)" ];
 
diff --git a/nixpkgs/pkgs/tools/wayland/wlsunset/default.nix b/nixpkgs/pkgs/tools/wayland/wlsunset/default.nix
index 3572f63f57e5..7ced81616f63 100644
--- a/nixpkgs/pkgs/tools/wayland/wlsunset/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/wlsunset/default.nix
@@ -1,5 +1,6 @@
-{ lib, stdenv, fetchFromSourcehut, meson, pkg-config, ninja, wayland, scdoc
-, wayland-protocols
+{ lib, stdenv, fetchFromSourcehut
+, meson, pkg-config, ninja, wayland-scanner, scdoc
+, wayland, wayland-protocols
 }:
 
 stdenv.mkDerivation rec {
@@ -13,7 +14,7 @@ stdenv.mkDerivation rec {
     sha256 = "0hhsddh3rs066rbsjksr8kcwg8lvglbvs67dq0r5wx5c1xcwb51w";
   };
 
-  nativeBuildInputs = [ meson pkg-config ninja wayland scdoc ];
+  nativeBuildInputs = [ meson pkg-config ninja wayland-scanner scdoc ];
   buildInputs = [ wayland wayland-protocols ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/wayland/wob/default.nix b/nixpkgs/pkgs/tools/wayland/wob/default.nix
index 3567ed6eea41..07fd6f433d73 100644
--- a/nixpkgs/pkgs/tools/wayland/wob/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/wob/default.nix
@@ -5,9 +5,10 @@
 , ninja
 , pkg-config
 , scdoc
-, libseccomp
-, wayland # wayland-scanner
+, wayland-scanner
+, wayland
 , wayland-protocols
+, libseccomp
 }:
 
 stdenv.mkDerivation rec {
@@ -21,8 +22,8 @@ stdenv.mkDerivation rec {
     sha256 = "13mx6nzab6msp57s9mv9ambz53a4zkafms9v97xv5zvd6xarnrya";
   };
 
-  nativeBuildInputs = [ meson ninja pkg-config scdoc wayland ];
-  buildInputs = [ wayland-protocols ]
+  nativeBuildInputs = [ meson ninja pkg-config scdoc wayland-scanner ];
+  buildInputs = [ wayland wayland-protocols ]
     ++ lib.optional stdenv.isLinux libseccomp;
 
   mesonFlags = lib.optional stdenv.isLinux "-Dseccomp=enabled";
diff --git a/nixpkgs/pkgs/tools/wayland/wshowkeys/default.nix b/nixpkgs/pkgs/tools/wayland/wshowkeys/default.nix
index 5f0025d6072b..00dc1d74910d 100644
--- a/nixpkgs/pkgs/tools/wayland/wshowkeys/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/wshowkeys/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromSourcehut
-, meson, pkg-config, wayland, ninja
-, cairo, libinput, pango, wayland-protocols, libxkbcommon
+, meson, pkg-config, wayland-scanner, ninja
+, cairo, libinput, pango, wayland, wayland-protocols, libxkbcommon
 }:
 
 let
@@ -17,8 +17,8 @@ in stdenv.mkDerivation rec {
     sha256 = "10kafdja5cwbypspwhvaxjz3hvf51vqjzbgdasl977193cvxgmbs";
   };
 
-  nativeBuildInputs = [ meson pkg-config wayland ninja ];
-  buildInputs = [ cairo libinput pango wayland-protocols libxkbcommon ];
+  nativeBuildInputs = [ meson pkg-config wayland-scanner ninja ];
+  buildInputs = [ cairo libinput pango wayland wayland-protocols libxkbcommon ];
 
   meta = with lib; {
     description = "Displays keys being pressed on a Wayland session";
@@ -35,5 +35,7 @@ in stdenv.mkDerivation rec {
     # TODO: gpl3Only or gpl3Plus (ask upstream)?
     platforms = platforms.unix;
     maintainers = with maintainers; [ primeos berbiche ];
+    broken = true; # Unmaintained and fails to run (Wayland protocol error)
+    # TODO (@primeos): Remove this package after the NixOS 21.11 branch-off
   };
 }
diff --git a/nixpkgs/pkgs/top-level/aliases.nix b/nixpkgs/pkgs/top-level/aliases.nix
index f837f4a2b6bb..a901881e3796 100644
--- a/nixpkgs/pkgs/top-level/aliases.nix
+++ b/nixpkgs/pkgs/top-level/aliases.nix
@@ -129,6 +129,7 @@ mapAliases ({
   clang12Stdenv = lowPrio llvmPackages_12.stdenv;
 
   clangAnalyzer = clang-analyzer;  # added 2015-02-20
+  claws-mail-gtk3 = claws-mail; # added 2021-07-10
   clawsMail = claws-mail; # added 2016-04-29
   clutter_gtk = clutter-gtk; # added 2018-02-25
   cmakeWithQt4Gui = throw "cmakeWithQt4Gui has been removed in favor of cmakeWithGui (Qt 5)"; # added 2021-05
@@ -447,6 +448,7 @@ mapAliases ({
 
   linux-steam-integration = throw "linux-steam-integration has been removed, as the upstream project has been abandoned"; # added 2020-05-22
   loadcaffe = throw "loadcaffe has been removed, as the upstream project has been abandoned"; # added 2020-03-28
+  lobster-two = google-fonts; # added 2021-07-22
   lprof = throw "lprof has been removed as it's unmaintained upstream and broken in nixpkgs since a while ago"; # added 2021-02-15
   lttngTools = lttng-tools;  # added 2014-07-31
   lttngUst = lttng-ust;  # added 2014-07-31
@@ -540,6 +542,7 @@ mapAliases ({
   osxfuse = macfuse-stubs; # added 2021-03-20
   otter-browser = throw "otter-browser has been removed from nixpkgs, as it was unmaintained"; # added 2020-02-02
   owncloudclient = owncloud-client;  # added 2016-08
+  ocz-ssd-guru = throw "ocz-ssd-guru has been removed due to there being no source available"; # added 2021-07-12
   p11_kit = p11-kit; # added 2018-02-25
   parity = openethereum; # added 2020-08-01
   parquet-cpp = arrow-cpp; # added 2018-09-08
@@ -653,7 +656,8 @@ mapAliases ({
   pyo3-pack = maturin;
   pmenu = throw "pmenu has been removed from nixpkgs, as its maintainer is no longer interested in the package."; # added 2019-12-10
   pulseaudioLight = pulseaudio; # added 2018-04-25
-  pulseeffects = throw "Use pulseeffects-legacy if you use PulseAudio and pulseeffects-pw if you use PipeWire."; # added 2021-02-13, move back once we default to PipeWire audio server.
+  pulseeffects = throw "Use pulseeffects-legacy if you use PulseAudio and easyeffects if you use PipeWire."; # added 2021-02-13
+  pulseeffects-pw = easyeffects; # added 2021-07-07
   phonon-backend-gstreamer = throw "phonon-backend-gstreamer: Please use libsForQt5.phonon-backend-gstreamer, as Qt4 support in this package has been removed."; # added 2019-11-22
   phonon-backend-vlc = throw "phonon-backend-vlc: Please use libsForQt5.phonon-backend-vlc, as Qt4 support in this package has been removed."; # added 2019-11-22
   phonon = throw "phonon: Please use libsForQt5.phonon, as Qt4 support in this package has been removed."; # added 2019-11-22
@@ -881,6 +885,7 @@ mapAliases ({
   virtviewer = virt-viewer; # added 2015-12-24
   virtmanager = virt-manager; # added 2019-10-29
   virtmanager-qt = virt-manager-qt; # added 2019-10-29
+  virtinst = throw "virtinst has been removed, as it's included in virt-manager"; # added 2021-07-21
   vorbisTools = vorbis-tools; # added 2016-01-26
   webkit = webkitgtk; # added 2019-03-05
   webkitgtk24x-gtk3 = throw "webkitgtk24x-gtk3 has been removed because it's insecure. Please use webkitgtk."; # added 2019-12-05
@@ -1129,6 +1134,7 @@ mapAliases ({
     kwin-dynamic-workspaces
     kwin-tiling
     krohnkite
+    krunner-symbols
   ;
   inherit (libsForQt5)
     sddm
diff --git a/nixpkgs/pkgs/top-level/all-packages.nix b/nixpkgs/pkgs/top-level/all-packages.nix
index e764ab43ae72..3116adb5eba9 100644
--- a/nixpkgs/pkgs/top-level/all-packages.nix
+++ b/nixpkgs/pkgs/top-level/all-packages.nix
@@ -241,6 +241,8 @@ in
 
   cereal = callPackage ../development/libraries/cereal { };
 
+  cewl = callPackage ../tools/security/cewl { };
+
   checkov = callPackage ../development/tools/analysis/checkov {};
 
   chrysalis = callPackage ../applications/misc/chrysalis { };
@@ -295,6 +297,8 @@ in
 
   glade = callPackage ../development/tools/glade { };
 
+  gpick = callPackage ../tools/misc/gpick { };
+
   hobbes = callPackage ../development/tools/hobbes { };
 
   html5validator = python3Packages.callPackage ../applications/misc/html5validator { };
@@ -361,7 +365,6 @@ in
   grsync = callPackage ../applications/misc/grsync { };
 
   dockerTools = callPackage ../build-support/docker {
-    go = buildPackages.go_1_15;
     writePython3 = buildPackages.writers.writePython3;
   };
 
@@ -807,6 +810,8 @@ in
 
   afew = callPackage ../applications/networking/mailreaders/afew { };
 
+  afetch = callPackage ../tools/misc/afetch { };
+
   afio = callPackage ../tools/archivers/afio { };
 
   afl = callPackage ../tools/security/afl {
@@ -867,7 +872,7 @@ in
 
   auditwheel = callPackage ../tools/package-management/auditwheel { };
 
-  amidst = callPackage ../tools/games/amidst { };
+  amidst = callPackage ../tools/games/minecraft/amidst { };
 
   gamemode = callPackage ../tools/games/gamemode {
     libgamemode32 = pkgsi686Linux.gamemode.lib;
@@ -928,6 +933,10 @@ in
 
   cool-retro-term = libsForQt5.callPackage ../applications/terminal-emulators/cool-retro-term { };
 
+  coreterminal = libsForQt5.callPackage ../applications/terminal-emulators/coreterminal {
+    inherit (lxqt) qtermwidget;
+  };
+
   eterm = callPackage ../applications/terminal-emulators/eterm { };
 
   evilvte = callPackage ../applications/terminal-emulators/evilvte (config.evilvte or {});
@@ -951,6 +960,8 @@ in
 
   lifecycled = callPackage ../tools/misc/lifecycled { };
 
+  lilo = callPackage ../tools/misc/lilo { };
+
   lilyterm = callPackage ../applications/terminal-emulators/lilyterm {
     inherit (gnome2) vte;
     gtk = gtk2;
@@ -1150,6 +1161,8 @@ in
 
   argyllcms = callPackage ../tools/graphics/argyllcms {};
 
+  arj = callPackage ../tools/archivers/arj { };
+
   arp-scan = callPackage ../tools/misc/arp-scan { };
 
   inherit (callPackages ../data/fonts/arphic {})
@@ -1234,6 +1247,8 @@ in
 
   azure-cli = callPackage ../tools/admin/azure-cli { };
 
+  azure-functions-core-tools = callPackage ../development/tools/azure-functions-core-tools { };
+
   azure-storage-azcopy = callPackage ../development/tools/azcopy { };
 
   azure-vhd-utils  = callPackage ../tools/misc/azure-vhd-utils { };
@@ -1246,6 +1261,8 @@ in
 
   betterdiscord-installer = callPackage ../tools/misc/betterdiscord-installer { };
 
+  bitwise = callPackage ../tools/misc/bitwise { };
+
   brakeman = callPackage ../development/tools/analysis/brakeman { };
 
   brewtarget = libsForQt514.callPackage ../applications/misc/brewtarget { } ;
@@ -1320,10 +1337,14 @@ in
 
   inherit (nodePackages) bitwarden-cli;
 
+  inherit (nodePackages) hyperspace-cli;
+
   bkyml = callPackage ../tools/misc/bkyml { };
 
   blockbench-electron = callPackage ../applications/graphics/blockbench-electron { };
 
+  blocksat-cli = with python3Packages; toPythonApplication blocksat-cli;
+
   bmap-tools = callPackage ../tools/misc/bmap-tools { };
 
   bonnmotion = callPackage ../development/tools/misc/bonnmotion { };
@@ -1543,6 +1564,8 @@ in
 
   github-commenter = callPackage ../development/tools/github-commenter { };
 
+  github-desktop = callPackage ../applications/version-management/github-desktop { };
+
   github-to-sqlite = with python3Packages; toPythonApplication github-to-sqlite;
 
   gitless = callPackage ../applications/version-management/gitless { python = python3; };
@@ -1563,6 +1586,8 @@ in
 
   gmnisrv = callPackage ../servers/gemini/gmnisrv { };
 
+  gmnitohtml = callPackage ../applications/misc/gmnitohtml { };
+
   goimapnotify = callPackage ../tools/networking/goimapnotify { };
 
   gojsontoyaml = callPackage ../development/tools/gojsontoyaml { };
@@ -1631,6 +1656,8 @@ in
 
   lesspass-cli = callPackage ../tools/security/lesspass-cli { };
 
+  lsix = callPackage ../tools/graphics/lsix { };
+
   mpdevil = callPackage ../applications/audio/mpdevil { };
 
   pacparser = callPackage ../tools/networking/pacparser { };
@@ -1974,6 +2001,8 @@ in
 
   tensorflow-lite = callPackage ../development/libraries/science/math/tensorflow-lite { };
 
+  tezos-rust-libs = callPackage ../development/libraries/tezos-rust-libs { };
+
   behdad-fonts = callPackage ../data/fonts/behdad-fonts { };
 
   bfetch = callPackage ../tools/misc/bfetch { };
@@ -2300,6 +2329,8 @@ in
 
   swaycwd = callPackage ../tools/wayland/swaycwd { };
 
+  swayr = callPackage ../tools/wayland/swayr { };
+
   wayland-utils = callPackage ../tools/wayland/wayland-utils { };
 
   wayland-proxy-virtwl = callPackage ../tools/wayland/wayland-proxy-virtwl { };
@@ -2480,6 +2511,10 @@ in
 
   discourse = callPackage ../servers/web-apps/discourse { };
 
+  discourseAllPlugins = discourse.override {
+    plugins = lib.filter (p: p ? pluginName) (builtins.attrValues discourse.plugins);
+  };
+
   discourse-mail-receiver = callPackage ../servers/web-apps/discourse/mail_receiver { };
 
   discocss = callPackage ../tools/misc/discocss { };
@@ -2534,7 +2569,9 @@ in
 
   dtrx = callPackage ../tools/compression/dtrx { };
 
-  dua = callPackage ../tools/misc/dua { };
+  dua = callPackage ../tools/misc/dua {
+    inherit (darwin.apple_sdk.frameworks) Foundation;
+  };
 
   duf = callPackage ../tools/misc/duf { };
 
@@ -2880,6 +2917,8 @@ in
 
   ink = callPackage ../tools/misc/ink { };
 
+  inklecate = callPackage ../development/compilers/inklecate {};
+
   interlock = callPackage ../servers/interlock {};
 
   iotools = callPackage ../tools/misc/iotools { };
@@ -3064,6 +3103,8 @@ in
 
   mq-cli = callPackage ../tools/system/mq-cli { };
 
+  n2n = callPackage ../tools/networking/n2n { };
+
   nextdns = callPackage ../applications/networking/nextdns { };
 
   ngadmin = callPackage ../applications/networking/ngadmin { };
@@ -3076,7 +3117,9 @@ in
 
   nix-output-monitor = haskell.lib.justStaticExecutables (haskellPackages.nix-output-monitor);
 
-  nix-template = callPackage ../tools/package-management/nix-template { };
+  nix-template = callPackage ../tools/package-management/nix-template {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
 
   nodepy-runtime = with python3.pkgs; toPythonApplication nodepy-runtime;
 
@@ -3191,6 +3234,8 @@ in
 
   rmview = libsForQt5.callPackage ../applications/misc/remarkable/rmview { };
 
+  rm-improved = callPackage ../applications/misc/rm-improved { };
+
   remarkable-mouse = python3Packages.callPackage ../applications/misc/remarkable/remarkable-mouse { };
 
   restream = callPackage ../applications/misc/remarkable/restream { };
@@ -3564,6 +3609,8 @@ in
 
   cdimgtools = callPackage ../tools/cd-dvd/cdimgtools { };
 
+  cdpr = callPackage ../tools/networking/cdpr { };
+
   cdrdao = callPackage ../tools/cd-dvd/cdrdao { };
 
   cdrkit = callPackage ../tools/cd-dvd/cdrkit { };
@@ -3647,7 +3694,7 @@ in
 
   circus = callPackage ../tools/networking/circus { };
 
-  citrix_workspace = citrix_workspace_21_03_0;
+  citrix_workspace = citrix_workspace_21_06_0;
 
   inherit (callPackage ../applications/networking/remote/citrix-workspace { })
     citrix_workspace_20_04_0
@@ -3657,6 +3704,7 @@ in
     citrix_workspace_20_12_0
     citrix_workspace_21_01_0
     citrix_workspace_21_03_0
+    citrix_workspace_21_06_0
   ;
 
   citra = libsForQt5.callPackage ../misc/emulators/citra { };
@@ -3886,7 +3934,9 @@ in
 
   cloud-utils = callPackage ../tools/misc/cloud-utils { };
 
-  cobalt = callPackage ../applications/misc/cobalt { };
+  cobalt = callPackage ../applications/misc/cobalt {
+    inherit (darwin.apple_sdk.frameworks) CoreServices;
+  };
 
   cocoapods = callPackage ../development/mobile/cocoapods { };
 
@@ -4053,6 +4103,8 @@ in
 
   debootstrap = callPackage ../tools/misc/debootstrap { };
 
+  debugedit-unstable = callPackage ../development/tools/misc/debugedit { };
+
   deer = callPackage ../shells/zsh/zsh-deer { };
 
   delta = callPackage ../applications/version-management/git-and-tools/delta {
@@ -4287,9 +4339,7 @@ in
 
   duplicati = callPackage ../tools/backup/duplicati { };
 
-  duplicity = callPackage ../tools/backup/duplicity {
-    pythonPackages = python3Packages;
-  };
+  duplicity = callPackage ../tools/backup/duplicity { };
 
   duply = callPackage ../tools/backup/duply { };
 
@@ -4349,6 +4399,8 @@ in
     autoreconfHook = buildPackages.autoreconfHook269;
   };
 
+  engauge-digitizer = libsForQt5.callPackage ../applications/science/math/engauge-digitizer { };
+
   epubcheck = callPackage ../tools/text/epubcheck { };
 
   luckybackup = libsForQt5.callPackage ../tools/backup/luckybackup {
@@ -4785,10 +4837,6 @@ in
 
   flamerobin = callPackage ../applications/misc/flamerobin { };
 
-  flashtool = pkgsi686Linux.callPackage ../development/mobile/flashtool {
-    inherit (androidenv.androidPkgs_9_0) platform-tools;
-  };
-
   flashrom = callPackage ../tools/misc/flashrom { };
 
   flent = python3Packages.callPackage ../applications/networking/flent { };
@@ -4811,6 +4859,8 @@ in
 
   lp_solve = callPackage ../applications/science/math/lp_solve { };
 
+  fabric-installer = callPackage ../tools/games/minecraft/fabric-installer { };
+
   fastlane = callPackage ../tools/admin/fastlane { };
 
   fatresize = callPackage ../tools/filesystems/fatresize {};
@@ -4950,6 +5000,8 @@ in
 
   fswebcam = callPackage ../os-specific/linux/fswebcam { };
 
+  fulcio = callPackage ../tools/security/fulcio { };
+
   fuseiso = callPackage ../tools/filesystems/fuseiso { };
 
   fusuma = callPackage ../tools/inputmethods/fusuma {};
@@ -5537,7 +5589,17 @@ in
 
   grub2 = grub2_full;
 
-  grub2_full = callPackage ../tools/misc/grub/2.0x.nix { };
+  grub2_full = callPackage ../tools/misc/grub/2.0x.nix {
+    # update breaks grub2
+    gnulib = pkgs.gnulib.overrideAttrs (oldAttrs: rec {
+      version = "20200223";
+      src = fetchgit {
+        url = "https://git.savannah.gnu.org/r/gnulib.git";
+        rev = "292fd5d6ff5ecce81ec3c648f353732a9ece83c0";
+        sha256 = "0hkg3nql8nsll0vrqk4ifda0v4kpi67xz42r8daqsql6c4rciqnw";
+      };
+    });
+  };
 
   grub2_efi = grub2.override {
     efiSupport = true;
@@ -5557,6 +5619,10 @@ in
     stdenv = stdenv_32bit;
   };
 
+  gruut = with python3.pkgs; toPythonApplication gruut;
+
+  gruut-ipa = with python3.pkgs; toPythonApplication gruut-ipa;
+
   gx = callPackage ../tools/package-management/gx { };
   gx-go = callPackage ../tools/package-management/gx/go { };
 
@@ -5754,6 +5820,8 @@ in
 
   heimdall-gui = heimdall.override { enableGUI = true; };
 
+  headscale = callPackage ../servers/headscale { };
+
   heisenbridge = callPackage ../servers/heisenbridge { };
 
   helio-workstation = callPackage ../applications/audio/helio-workstation { };
@@ -5777,6 +5845,10 @@ in
     lua = lua5;
   });
 
+  hockeypuck = callPackage ../servers/hockeypuck/server.nix { };
+
+  hockeypuck-web = callPackage ../servers/hockeypuck/web.nix { };
+
   holochain-go = callPackage ../servers/holochain-go { };
 
   homesick = callPackage ../tools/misc/homesick { };
@@ -6029,6 +6101,8 @@ in
 
   itm-tools = callPackage ../development/tools/misc/itm-tools { };
 
+  iwgtk = callPackage ../tools/networking/iwgtk { };
+
   ix = callPackage ../tools/misc/ix { };
 
   jaaa = callPackage ../applications/audio/jaaa { };
@@ -6076,6 +6150,8 @@ in
 
   jnettop = callPackage ../tools/networking/jnettop { };
 
+  jsvc = callPackage ../tools/system/jsvc { };
+
   jumpnbump = callPackage ../games/jumpnbump { };
 
   junkie = callPackage ../tools/networking/junkie { };
@@ -6206,6 +6282,8 @@ in
 
   keystore-explorer = callPackage ../applications/misc/keystore-explorer { };
 
+  kfctl = callPackage ../applications/networking/cluster/kfctl { };
+
   kibana6 = callPackage ../development/tools/misc/kibana/6.x.nix { };
   kibana6-oss = callPackage ../development/tools/misc/kibana/6.x.nix {
     enableUnfree = false;
@@ -6293,6 +6371,8 @@ in
 
   lf = callPackage ../tools/misc/lf {};
 
+  lha = callPackage ../tools/archivers/lha { };
+
   lhasa = callPackage ../tools/compression/lhasa {};
 
   libcpuid = callPackage ../tools/misc/libcpuid { };
@@ -6301,6 +6381,8 @@ in
 
   libscrypt = callPackage ../development/libraries/libscrypt { };
 
+  libcprime = libsForQt5.callPackage ../development/libraries/libcprime { };
+
   libcloudproviders = callPackage ../development/libraries/libcloudproviders { };
 
   libcoap = callPackage ../applications/networking/libcoap {
@@ -6757,9 +6839,8 @@ in
   inherit (callPackages ../development/libraries/libwebsockets { })
     libwebsockets_3_1
     libwebsockets_3_2
-    libwebsockets_4_0
-    libwebsockets_4_1;
-  libwebsockets = libwebsockets_3_2;
+    libwebsockets_4_2;
+  libwebsockets = libwebsockets_4_2;
 
   licensee = callPackage ../tools/package-management/licensee { };
 
@@ -7266,7 +7347,7 @@ in
   grocy = callPackage ../servers/grocy { };
 
   inherit (callPackage ../servers/nextcloud {})
-    nextcloud18 nextcloud19 nextcloud20 nextcloud21;
+    nextcloud19 nextcloud20 nextcloud21 nextcloud22;
 
   nextcloud-client = libsForQt5.callPackage ../applications/networking/nextcloud-client { };
 
@@ -7665,6 +7746,8 @@ in
 
   openvswitch-lts = callPackage ../os-specific/linux/openvswitch/lts.nix { };
 
+  optifine = callPackage ../tools/games/minecraft/optifine { };
+
   optipng = callPackage ../tools/graphics/optipng {
     libpng = libpng12;
   };
@@ -8005,10 +8088,7 @@ in
 
   podiff = callPackage ../tools/text/podiff { };
 
-  podman = if stdenv.isDarwin then
-    callPackage ../applications/virtualization/podman { }
-  else
-    callPackage ../applications/virtualization/podman/wrapper.nix { };
+  podman = callPackage ../applications/virtualization/podman/wrapper.nix { };
   podman-unwrapped = callPackage ../applications/virtualization/podman { };
 
   podman-compose = python3Packages.callPackage ../applications/virtualization/podman-compose {};
@@ -8207,8 +8287,6 @@ in
 
   quickbms = pkgsi686Linux.callPackage ../tools/archivers/quickbms { };
 
-  ocz-ssd-guru = callPackage ../tools/misc/ocz-ssd-guru { };
-
   q-text-as-data = callPackage ../tools/misc/q-text-as-data { };
 
   qalculate-gtk = callPackage ../applications/science/math/qalculate-gtk { };
@@ -8440,9 +8518,7 @@ in
 
   routino = callPackage ../tools/misc/routino { };
 
-  rq = callPackage ../development/tools/rq {
-    inherit (darwin) libiconv;
-  };
+  rq = callPackage ../development/tools/rq { };
 
   rs-git-fsmonitor = callPackage ../applications/version-management/git-and-tools/rs-git-fsmonitor { };
 
@@ -8580,7 +8656,9 @@ in
 
   samim-fonts = callPackage ../data/fonts/samim-fonts {};
 
-  saml2aws = callPackage ../tools/security/saml2aws {};
+  saml2aws = callPackage ../tools/security/saml2aws {
+    inherit (darwin.apple_sdk.frameworks) AppKit;
+  };
 
   sammler = callPackage ../tools/security/sammler {};
 
@@ -9117,6 +9195,10 @@ in
 
   squeekboard = callPackage ../applications/accessibility/squeekboard { };
 
+  sx = callPackage ../tools/X11/sx {
+    inherit (xorg) xauth xorgserver;
+  };
+
   t = callPackage ../tools/misc/t { };
 
   tabnine = callPackage ../development/tools/tabnine { };
@@ -9190,6 +9272,8 @@ in
 
   teler = callPackage ../tools/security/teler { };
 
+  telescope = callPackage ../applications/networking/browsers/telescope { };
+
   termius = callPackage ../applications/networking/termius { };
 
   termplay = callPackage ../tools/misc/termplay { };
@@ -9524,7 +9608,7 @@ in
 
   unrtf = callPackage ../tools/text/unrtf { };
 
-  unrpa = with python3Packages; toPythonApplication unrpa;
+  unrpa = with python38Packages; toPythonApplication unrpa;
 
   untex = callPackage ../tools/text/untex { };
 
@@ -9576,6 +9660,8 @@ in
 
   vdmfec = callPackage ../applications/backup/vdmfec {};
 
+  vk-cli = callPackage ../applications/networking/instant-messengers/vk-cli { };
+
   vk-messenger = callPackage ../applications/networking/instant-messengers/vk-messenger {};
 
   volatility = callPackage ../tools/security/volatility { };
@@ -9621,6 +9707,10 @@ in
     inherit lib udisks2 python3;
   };
 
+  via = callPackage ../tools/misc/via {};
+
+  vial = callPackage ../tools/misc/vial {};
+
   viking = callPackage ../applications/misc/viking { };
 
   vim-vint = callPackage ../development/tools/vim-vint { };
@@ -9820,9 +9910,7 @@ in
 
   tftp-hpa = callPackage ../tools/networking/tftp-hpa {};
 
-  tigervnc = callPackage ../tools/admin/tigervnc {
-    fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc xorg.fontbhlucidatypewriter75dpi ];
-  };
+  tigervnc = callPackage ../tools/admin/tigervnc {};
 
   tightvnc = callPackage ../tools/admin/tightvnc {
     fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc
@@ -10745,6 +10833,8 @@ in
 
   fasmg = callPackage ../development/compilers/fasmg { };
 
+  fennel = callPackage ../development/compilers/fennel { };
+
   flasm = callPackage ../development/compilers/flasm { };
 
   flyctl = callPackage ../development/web/flyctl { };
@@ -12342,7 +12432,7 @@ in
   erlang_nox = beam_nox.interpreters.erlang;
 
   inherit (beam.packages.erlang)
-    erlang-ls erlfmt
+    erlang-ls erlfmt elvis-erlang
     rebar rebar3 rebar3WithPlugins
     fetchHex beamPackages;
 
@@ -12521,10 +12611,10 @@ in
   # When switching these sets, please update docs at ../../doc/languages-frameworks/python.md
   python = python2;
   python2 = python27;
-  python3 = python38;
+  python3 = python39;
   pypy = pypy2;
   pypy2 = pypy27;
-  pypy3 = pypy36;
+  pypy3 = pypy37;
 
   # Python interpreter that is build with all modules, including tkinter.
   # These are for compatibility and should not be used inside Nixpkgs.
@@ -12580,7 +12670,7 @@ in
   python3Packages = python3.pkgs;
 
   pythonInterpreters = callPackage ./../development/interpreters/python { };
-  inherit (pythonInterpreters) python27 python36 python37 python38 python39 python310 python3Minimal pypy27 pypy36;
+  inherit (pythonInterpreters) python27 python36 python37 python38 python39 python310 python3Minimal pypy27 pypy37;
 
   # Python package sets.
   python27Packages = python27.pkgs;
@@ -12684,7 +12774,7 @@ in
 
   bundler-audit = callPackage ../tools/security/bundler-audit { };
 
-  solargraph = callPackage ../development/ruby-modules/solargraph { };
+  solargraph = rubyPackages.solargraph;
 
   rbenv = callPackage ../development/ruby-modules/rbenv { };
 
@@ -12768,8 +12858,6 @@ in
 
   wasm3 = callPackage ../development/interpreters/wasm3 { };
 
-  proglodyte-wasm = callPackage ../development/interpreters/proglodyte-wasm { };
-
 
   ### DEVELOPMENT / MISC
 
@@ -13165,6 +13253,8 @@ in
   buildkite-agent2 = throw "pkgs.buildkite-agent2 has been discontinued. Please use pkgs.buildkite-agent (v3.x)";
   buildkite-agent3 = callPackage ../development/tools/continuous-integration/buildkite-agent { };
 
+  buildkite-agent-metrics = callPackage ../servers/monitoring/buildkite-agent-metrics { };
+
   buildkite-cli = callPackage ../development/tools/continuous-integration/buildkite-cli { };
 
   bump = callPackage ../development/tools/github/bump { };
@@ -13728,6 +13818,8 @@ in
 
   augustus = callPackage ../games/augustus { };
 
+  k0sctl = callPackage ../applications/networking/cluster/k0sctl { };
+
   k2tf = callPackage ../development/tools/misc/k2tf { };
 
   kafkacat = callPackage ../development/tools/kafkacat { };
@@ -13748,6 +13840,8 @@ in
 
   khronos-ocl-icd-loader = callPackage ../development/libraries/khronos-ocl-icd-loader {  };
 
+  ko = callPackage ../development/tools/ko { };
+
   krankerl = callPackage ../development/tools/krankerl { };
 
   krew = callPackage ../development/tools/krew { };
@@ -13829,6 +13923,8 @@ in
       stdenv = overrideCC stdenv llvmPackages_latest.clang;
     });
 
+  malt = callPackage ../development/tools/profiling/malt {};
+
   massif-visualizer = libsForQt5.callPackage ../development/tools/analysis/massif-visualizer { };
 
   mastodon-archive = callPackage ../tools/backup/mastodon-archive { };
@@ -13865,6 +13961,10 @@ in
 
   modd = callPackage ../development/tools/modd { };
 
+  mold = callPackage ../development/tools/mold {
+    stdenv = llvmPackages_latest.stdenv;
+  };
+
   msgpack-tools = callPackage ../development/tools/msgpack-tools { };
 
   msgpuck = callPackage ../development/libraries/msgpuck { };
@@ -13896,7 +13996,9 @@ in
 
   nix-build-uncached = callPackage ../development/tools/misc/nix-build-uncached { };
 
-  nexus = callPackage ../development/tools/repository-managers/nexus { };
+  nexus = callPackage ../development/tools/repository-managers/nexus {
+    jre_headless = jre8_headless;
+  };
 
   nwjs = callPackage ../development/tools/nwjs {
     gconf = pkgs.gnome2.GConf;
@@ -14298,6 +14400,8 @@ in
 
   todoist-electron = callPackage ../applications/misc/todoist-electron { };
 
+  toil = callPackage ../applications/science/misc/toil { };
+
   travis = callPackage ../development/tools/misc/travis { };
 
   tree-sitter = callPackage ../development/tools/parsing/tree-sitter {
@@ -15078,12 +15182,27 @@ in
   flite = callPackage ../development/libraries/flite { };
 
   fltk13 = callPackage ../development/libraries/fltk {
-    inherit (darwin.apple_sdk.frameworks) Cocoa AGL GLUT;
+    inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa OpenGL;
   };
   fltk14 = callPackage ../development/libraries/fltk/1.4.nix {
-    inherit (darwin.apple_sdk.frameworks) Cocoa AGL GLUT;
+    inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa OpenGL;
+  };
+  fltk13-minimal = fltk13.override {
+    withGL = false;
+    withCairo = false;
+    withPango = false;
+    withExamples = false;
+    withDocs = false;
   };
-  fltk = res.fltk13;
+  fltk14-minimal = fltk14.override {
+    withGL = false;
+    withCairo = false;
+    withPango = false;
+    withExamples = false;
+    withDocs = false;
+  };
+  fltk = fltk13;
+  fltk-minimal = fltk13-minimal;
 
   flyway = callPackage ../development/tools/flyway { };
 
@@ -15284,6 +15403,9 @@ in
   });
 
   glfw = glfw3;
+  glfw-wayland = glfw.override {
+    waylandSupport = true;
+  };
   glfw2 = callPackage ../development/libraries/glfw/2.x.nix { };
   glfw3 = callPackage ../development/libraries/glfw/3.x.nix {
     inherit (darwin.apple_sdk.frameworks) Cocoa Kernel;
@@ -15912,6 +16034,8 @@ in
 
   json2hcl = callPackage ../development/tools/json2hcl { };
 
+  json2yaml = haskell.lib.justStaticExecutables haskellPackages.json2yaml;
+
   json-glib = callPackage ../development/libraries/json-glib { };
 
   json_c = callPackage ../development/libraries/json-c { };
@@ -16480,6 +16604,8 @@ in
 
   libgksu = callPackage ../development/libraries/libgksu { };
 
+  libgnt = callPackage ../development/libraries/libgnt { };
+
   libgpgerror = callPackage ../development/libraries/libgpg-error { };
 
   # https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgpg-error.git;a=blob;f=README;h=fd6e1a83f55696c1f7a08f6dfca08b2d6b7617ec;hb=70058cd9f944d620764e57c838209afae8a58c78#l118
@@ -17025,7 +17151,9 @@ in
 
   libtifiles2 = callPackage ../development/libraries/libtifiles2 { };
 
-  libtiff = callPackage ../development/libraries/libtiff { };
+  libtiff = if stdenv.isDarwin && stdenv.isAarch64
+    then callPackage ../development/libraries/libtiff/aarch64-darwin.nix { }
+    else callPackage ../development/libraries/libtiff { };
 
   libtiger = callPackage ../development/libraries/libtiger { };
 
@@ -17109,6 +17237,8 @@ in
 
   libutempter = callPackage ../development/libraries/libutempter { };
 
+  libuldaq = callPackage ../development/libraries/libuldaq { };
+
   libunwind =
     if stdenv.isDarwin then darwin.libunwind
     else if stdenv.hostPlatform.isRiscV then llvmPackages_latest.libunwind
@@ -17620,6 +17750,8 @@ in
 
   oobicpl = callPackage ../development/libraries/science/biology/oobicpl { };
 
+  ookla-speedtest = callPackage ../tools/networking/ookla-speedtest { };
+
   openalSoft = callPackage ../development/libraries/openal-soft {
     inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit AudioToolbox;
   };
@@ -18025,6 +18157,10 @@ in
 
   quicksynergy = callPackage ../applications/misc/quicksynergy { };
 
+  quill = callPackage ../tools/security/quill {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
+
   qv2ray = libsForQt5.callPackage ../applications/networking/qv2ray {};
 
   qwt = callPackage ../development/libraries/qwt {};
@@ -19003,6 +19139,8 @@ in
 
   commonsCompress = callPackage ../development/libraries/java/commons/compress { };
 
+  commonsDaemon = callPackage ../development/libraries/java/commons/daemon { };
+
   commonsFileUpload = callPackage ../development/libraries/java/commons/fileupload { };
 
   commonsLang = callPackage ../development/libraries/java/commons/lang { };
@@ -19145,14 +19283,14 @@ in
   ### DEVELOPMENT / PERL MODULES
 
   perlInterpreters = callPackages ../development/interpreters/perl {};
-  inherit (perlInterpreters) perl530 perl532 perldevel;
+  inherit (perlInterpreters) perl532 perl534 perldevel;
 
-  perl530Packages = recurseIntoAttrs perl530.pkgs;
   perl532Packages = recurseIntoAttrs perl532.pkgs;
+  perl534Packages = recurseIntoAttrs perl534.pkgs;
   perldevelPackages = perldevel.pkgs;
 
-  perl = perl532;
-  perlPackages = perl532Packages;
+  perl = perl534;
+  perlPackages = perl534Packages;
 
   ack = perlPackages.ack;
 
@@ -19489,6 +19627,8 @@ in
 
   icecream = callPackage ../servers/icecream { };
 
+  icingaweb2-ipl = callPackage ../servers/icingaweb2/ipl.nix { };
+  icingaweb2-thirdparty = callPackage ../servers/icingaweb2/thirdparty.nix { };
   icingaweb2 = callPackage ../servers/icingaweb2 { };
   icingaweb2Modules = {
     theme-april = callPackage ../servers/icingaweb2/theme-april { };
@@ -19508,6 +19648,8 @@ in
 
   ircdHybrid = callPackage ../servers/irc/ircd-hybrid { };
 
+  janus-gateway = callPackage ../servers/janus-gateway { };
+
   jboss = callPackage ../servers/http/jboss { };
 
   jboss_mysql_jdbc = callPackage ../servers/http/jboss/jdbc/mysql { };
@@ -19533,6 +19675,10 @@ in
 
   leafnode = callPackage ../servers/news/leafnode { };
 
+  lemmy = callPackage ../servers/web-apps/lemmy {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
+
   lighttpd = callPackage ../servers/http/lighttpd { };
 
   livepeer = callPackage ../servers/livepeer { };
@@ -19790,8 +19936,8 @@ in
 
   libpulseaudio = libpulseaudio-vanilla;
 
-  pulseeffects-pw = callPackage ../applications/audio/pulseeffects {
-    boost = boost172;
+  easyeffects = callPackage ../applications/audio/easyeffects {
+    glibmm = glibmm_2_68;
   };
 
   pulseeffects-legacy = callPackage ../applications/audio/pulseeffects-legacy {
@@ -19879,7 +20025,7 @@ in
     inherit (darwin) cctools developer_cmds;
     inherit (darwin.apple_sdk.frameworks) CoreServices;
     boost = boost173; # Configure checks for specific version.
-    protobuf = protobuf3_7;
+    protobuf = protobuf3_11;
     icu =  icu67;
   };
 
@@ -19917,7 +20063,9 @@ in
 
   check_systemd = callPackage ../servers/monitoring/nagios/plugins/check_systemd.nix { };
 
-  neo4j = callPackage ../servers/nosql/neo4j { };
+  neo4j = callPackage ../servers/nosql/neo4j {
+    jre = jre8_headless;
+  };
 
   neo4j-desktop = callPackage ../applications/misc/neo4j-desktop { };
 
@@ -20254,6 +20402,8 @@ in
     unifi6;
   unifi = unifi6;
 
+  unifi-video = callPackage ../servers/unifi-video { };
+
   unpackerr = callPackage ../servers/unpackerr {
     inherit (darwin.apple_sdk.frameworks) Cocoa WebKit;
   };
@@ -20680,6 +20830,8 @@ in
 
   kbdlight = callPackage ../os-specific/linux/kbdlight { };
 
+  kinect-audio-setup = callPackage ../os-specific/linux/kinect-audio-setup { };
+
   kmscon = callPackage ../os-specific/linux/kmscon { };
 
   kmscube = callPackage ../os-specific/linux/kmscube { };
@@ -20878,11 +21030,9 @@ in
     ];
   };
 
-  linux_testing_bcachefs = callPackage ../os-specific/linux/kernel/linux-testing-bcachefs.nix {
-    kernelPatches =
-      [ kernelPatches.bridge_stp_helper
-        kernelPatches.request_key_helper
-      ];
+  linux_testing_bcachefs = callPackage ../os-specific/linux/kernel/linux-testing-bcachefs.nix rec {
+    kernel = linux_5_13;
+    kernelPatches = kernel.kernelPatches;
   };
 
   linux_hardkernel_4_14 = callPackage ../os-specific/linux/kernel/linux-hardkernel-4.14.nix {
@@ -21125,6 +21275,8 @@ in
 
     x86_energy_perf_policy = callPackage ../os-specific/linux/x86_energy_perf_policy { };
 
+    xmm7360-pci = callPackage ../os-specific/linux/xmm7360-pci { };
+
     xpadneo = callPackage ../os-specific/linux/xpadneo { };
 
     zenpower = callPackage ../os-specific/linux/zenpower { };
@@ -21862,6 +22014,8 @@ in
 
   usbutils = callPackage ../os-specific/linux/usbutils { };
 
+  userhosts = callPackage ../tools/networking/userhosts { };
+
   usermount = callPackage ../os-specific/linux/usermount { };
 
   util-linux = if stdenv.isLinux then callPackage ../os-specific/linux/util-linux { }
@@ -22271,6 +22425,8 @@ in
 
   juno-theme = callPackage ../data/themes/juno { };
 
+  kanit-font = callPackage ../data/fonts/kanit { };
+
   kanji-stroke-order-font = callPackage ../data/fonts/kanji-stroke-order-font {};
 
   kawkab-mono-font = callPackage ../data/fonts/kawkab-mono {};
@@ -22290,6 +22446,8 @@ in
 
   kreative-square-fonts = callPackage ../data/fonts/kreative-square-fonts { };
 
+  layan-gtk-theme = callPackage ../data/themes/layan-gtk-theme { };
+
   lato = callPackage ../data/fonts/lato {};
 
   league-of-moveable-type = callPackage ../data/fonts/league-of-moveable-type {};
@@ -22330,8 +22488,6 @@ in
 
   lmodern = callPackage ../data/fonts/lmodern { };
 
-  lobster-two = callPackage ../data/fonts/lobster-two {};
-
   logitech-udev-rules = callPackage ../os-specific/linux/logitech-udev-rules {};
 
   # lohit-fonts.assamese lohit-fonts.bengali lohit-fonts.devanagari lohit-fonts.gujarati lohit-fonts.gurmukhi
@@ -22869,7 +23025,7 @@ in
   acd-cli = callPackage ../applications/networking/sync/acd_cli {
     inherit (python3Packages)
       buildPythonApplication appdirs colorama python-dateutil
-      requests requests_toolbelt setuptools sqlalchemy fusepy;
+      requests requests-toolbelt setuptools sqlalchemy fusepy;
   };
 
   adobe-reader = pkgsi686Linux.callPackage ../applications/misc/adobe-reader { };
@@ -23127,8 +23283,9 @@ in
     inherit (pkgs) bitwig-studio1;
   };
   bitwig-studio3 =  callPackage ../applications/audio/bitwig-studio/bitwig-studio3.nix { };
+  bitwig-studio4 =  callPackage ../applications/audio/bitwig-studio/bitwig-studio4.nix { };
 
-  bitwig-studio = bitwig-studio3;
+  bitwig-studio = bitwig-studio4;
 
   bgpdump = callPackage ../tools/networking/bgpdump { };
 
@@ -23298,10 +23455,11 @@ in
 
   cipher = callPackage ../applications/misc/cipher { };
 
-  claws-mail = callPackage ../applications/networking/mailreaders/claws-mail {
+  claws-mail-gtk2 = callPackage ../applications/networking/mailreaders/claws-mail {
     inherit (xorg) libSM;
+    useGtk3 = false;
   };
-  claws-mail-gtk3 = callPackage ../applications/networking/mailreaders/claws-mail {
+  claws-mail = callPackage ../applications/networking/mailreaders/claws-mail {
     inherit (xorg) libSM;
     useGtk3 = true;
   };
@@ -23354,7 +23512,7 @@ in
 
   confclerk = callPackage ../applications/misc/confclerk { };
 
-  copyq = libsForQt514.callPackage ../applications/misc/copyq { };
+  copyq = libsForQt5.callPackage ../applications/misc/copyq { };
 
   corectrl = libsForQt5.callPackage ../applications/misc/corectrl { };
 
@@ -23364,6 +23522,8 @@ in
 
   corrscope = libsForQt5.callPackage ../applications/video/corrscope { };
 
+  coreimage = libsForQt5.callPackage ../applications/graphics/coreimage { };
+
   csa = callPackage ../applications/audio/csa { };
 
   csound = callPackage ../applications/audio/csound {
@@ -23512,6 +23672,8 @@ in
     inherit (darwin.apple_sdk.frameworks) Foundation;
   };
 
+  dnd-tools = callPackage ../applications/misc/dnd-tools { };
+
   inherit (callPackage ../applications/virtualization/docker {})
     docker_20_10;
 
@@ -23857,6 +24019,8 @@ in
 
   fritzing = libsForQt5.callPackage ../applications/science/electronics/fritzing { };
 
+  fritzprofiles = with python3.pkgs; toPythonApplication fritzprofiles;
+
   fsv = callPackage ../applications/misc/fsv {
     autoreconfHook = buildPackages.autoreconfHook269;
   };
@@ -24080,6 +24244,8 @@ in
 
   fbida = callPackage ../applications/graphics/fbida { };
 
+  fcp = callPackage ../tools/misc/fcp { };
+
   fdupes = callPackage ../tools/misc/fdupes { };
 
   feh = callPackage ../applications/graphics/feh { };
@@ -24753,6 +24919,8 @@ in
     cairo = cairo.override { xcbSupport = true; };
   };
 
+  i3lock-blur = callPackage ../applications/window-managers/i3/lock-blur.nix { };
+
   i3lock-color = callPackage ../applications/window-managers/i3/lock-color.nix { };
 
   i3lock-fancy = callPackage ../applications/window-managers/i3/lock-fancy.nix { };
@@ -24795,6 +24963,8 @@ in
 
   icewm = callPackage ../applications/window-managers/icewm {};
 
+  icecat-bin = callPackage ../applications/networking/browsers/icecat-bin { };
+
   id3v2 = callPackage ../applications/audio/id3v2 { };
 
   ideamaker = libsForQt5.callPackage ../applications/misc/ideamaker { };
@@ -25111,6 +25281,8 @@ in
 
   ktorrent = libsForQt5.callPackage ../applications/networking/p2p/ktorrent { };
 
+  kubedb-cli = callPackage ../applications/networking/cluster/kubedb-cli { };
+
   kubecfg = callPackage ../applications/networking/cluster/kubecfg { };
 
   kube-score = callPackage ../applications/networking/cluster/kube-score { };
@@ -25157,9 +25329,9 @@ in
 
   fluxcd = callPackage ../applications/networking/cluster/fluxcd { };
 
-  linkerd_stable = (callPackage ../applications/networking/cluster/linkerd { }).stable;
   linkerd_edge = (callPackage ../applications/networking/cluster/linkerd { }).edge;
-  linkerd = linkerd_edge;
+  linkerd_stable = (callPackage ../applications/networking/cluster/linkerd { }).stable;
+  linkerd = linkerd_stable;
 
   kile-wl = callPackage ../applications/misc/kile-wl { };
 
@@ -25437,7 +25609,7 @@ in
 
   matrixcli = callPackage ../applications/networking/instant-messengers/matrixcli {
     inherit (python3Packages) buildPythonApplication buildPythonPackage
-      pygobject3 pytestrunner requests responses pytest python-olm
+      pygobject3 pytest-runner requests responses pytest python-olm
       canonicaljson;
   };
 
@@ -25561,6 +25733,8 @@ in
 
   mmtc = callPackage ../applications/audio/mmtc { };
 
+  mnamer = callPackage ../applications/misc/mnamer { };
+
   moc = callPackage ../applications/audio/moc { };
 
   mod-distortion = callPackage ../applications/audio/mod-distortion { };
@@ -25670,6 +25844,8 @@ in
 
   rofi-power-menu = callPackage ../applications/misc/rofi-power-menu { };
 
+  rofi-vpn = callPackage ../applications/networking/rofi-vpn { };
+
   ympd = callPackage ../applications/audio/ympd { };
 
   # a somewhat more maintained fork of ympd
@@ -25803,12 +25979,16 @@ in
   nootka = qt5.callPackage ../applications/audio/nootka { };
   nootka-unstable = qt5.callPackage ../applications/audio/nootka/unstable.nix { };
 
+  nwg-drawer = callPackage ../applications/misc/nwg-drawer { };
+
   nwg-launchers = callPackage ../applications/misc/nwg-launchers { };
 
   nwg-menu = callPackage ../applications/misc/nwg-menu { };
 
   nwg-panel = callPackage ../applications/misc/nwg-panel { };
 
+  nwg-wrapper = callPackage ../applications/misc/nwg-wrapper { };
+
   ocenaudio = callPackage ../applications/audio/ocenaudio { };
 
   onlyoffice-bin = callPackage ../applications/office/onlyoffice-bin { };
@@ -26718,7 +26898,7 @@ in
   rofi-systemd = callPackage ../tools/system/rofi-systemd { };
 
   rofimoji = callPackage ../applications/misc/rofimoji {
-    inherit (python3Packages) buildPythonApplication ConfigArgParse;
+    inherit (python3Packages) buildPythonApplication configargparse;
   };
 
   rootlesskit = callPackage ../tools/virtualization/rootlesskit {};
@@ -27215,6 +27395,8 @@ in
 
   tempo = callPackage ../servers/tracing/tempo {};
 
+  temporal = callPackage ../applications/networking/cluster/temporal { };
+
   tendermint = callPackage ../tools/networking/tendermint { };
 
   termdown = python3Packages.callPackage ../applications/misc/termdown { };
@@ -27530,7 +27712,32 @@ in
   wrapNeovimUnstable = callPackage ../applications/editors/neovim/wrapper.nix { };
   wrapNeovim = neovim-unwrapped: lib.makeOverridable (neovimUtils.legacyWrapper neovim-unwrapped);
   neovim-unwrapped = callPackage ../applications/editors/neovim {
-    lua = luajit;
+    # neovim doesn't build with luajit on aarch64:
+    # ./luarocks init
+    # PANIC: unprotected error in call to Lua API (module 'luarocks.core.hardcoded' not found:
+    #         no field package.preload['luarocks.core.hardcoded']
+    #         no file '/private/tmp/nix-build-luarocks-3.2.1.drv-0/source/src/luarocks/core/hardcoded.lua'
+    #         no file './luarocks/core/hardcoded.lua'
+    #         no file '/nix/store/3s6c509q9vvq3db87rfi7qa38wzxwz8w-luajit-2.1.0-2021-05-29/share/luajit-2.1.0-beta3/luarocks/core/hardcoded.lua'
+    #         no file '/usr/local/share/lua/5.1/luarocks/core/hardcoded.lua'
+    #         no file '/usr/local/share/lua/5.1/luarocks/core/hardcoded/init.lua'
+    #         no file '/nix/store/3s6c509q9vvq3db87rfi7qa38wzxwz8w-luajit-2.1.0-2021-05-29/share/lua/5.1/luarocks/core/hardcoded.lua'
+    #         no file '/nix/store/3s6c509q9vvq3db87rfi7qa38wzxwz8w-luajit-2.1.0-2021-05-29/share/lua/5.1/luarocks/core/hardcoded/init.lua'
+    #         no file './luarocks/core/hardcoded.so'
+    #         no file '/usr/local/lib/lua/5.1/luarocks/core/hardcoded.so'
+    #         no file '/nix/store/3s6c509q9vvq3db87rfi7qa38wzxwz8w-luajit-2.1.0-2021-05-29/lib/lua/5.1/luarocks/core/hardcoded.so'
+    #         no file '/usr/local/lib/lua/5.1/loadall.so'
+    #         no file './luarocks.so'
+    #         no file '/usr/local/lib/lua/5.1/luarocks.so'
+    #         no file '/nix/store/3s6c509q9vvq3db87rfi7qa38wzxwz8w-luajit-2.1.0-2021-05-29/lib/lua/5.1/luarocks.so'
+    #         no file '/usr/local/lib/lua/5.1/loadall.so')
+    # make: *** [GNUmakefile:57: luarocks] Error 1
+    #
+    # See https://github.com/NixOS/nixpkgs/issues/129099
+    # Possibly related: https://github.com/neovim/neovim/issues/7879
+    lua =
+      if stdenv.isAarch64 then lua5_1 else
+      luajit;
   };
 
   neovimUtils = callPackage ../applications/editors/neovim/utils.nix { };
@@ -27571,8 +27778,6 @@ in
     qtermwidget = lxqt.qtermwidget;
   };
 
-  virtinst = callPackage ../applications/virtualization/virtinst {};
-
   virtscreen = callPackage ../tools/admin/virtscreen {};
 
   virtual-ans = callPackage ../applications/audio/virtual-ans {};
@@ -27826,6 +28031,8 @@ in
 
   wofi = callPackage ../applications/misc/wofi { };
 
+  wofi-emoji = callPackage ../applications/misc/wofi-emoji { };
+
   wordnet = callPackage ../applications/misc/wordnet {
     inherit (darwin.apple_sdk.frameworks) Cocoa;
   };
@@ -28307,6 +28514,9 @@ in
 
   zola = callPackage ../applications/misc/zola {
     inherit (darwin.apple_sdk.frameworks) CoreServices;
+    # Version 0.13.0 has the lexical_core 0.7.4 dependency that doesn't build
+    # with rust 1.53. This should be fixed in the next version.
+    rustPlatform = rustPackages_1_45.rustPlatform;
   };
 
   zombietrackergps = libsForQt5.callPackage ../applications/gis/zombietrackergps { };
@@ -28337,6 +28547,13 @@ in
 
   aeon = callPackage ../applications/blockchains/aeon { };
 
+  alfis = callPackage ../applications/blockchains/alfis {
+    inherit (darwin.apple_sdk.frameworks) Cocoa WebKit;
+  };
+  alfis-nogui = alfis.override {
+    withGui = false;
+  };
+
   balanceofsatoshis = nodePackages.balanceofsatoshis;
 
   bitcoin  = libsForQt5.callPackage ../applications/blockchains/bitcoin.nix { miniupnpc = miniupnpc_2; withGui = true; };
@@ -28391,8 +28608,13 @@ in
   dogecoin  = callPackage ../applications/blockchains/dogecoin.nix { boost = boost165; withGui = true; };
   dogecoind = callPackage ../applications/blockchains/dogecoin.nix { boost = boost165; withGui = false; };
 
+  eclair = callPackage ../applications/blockchains/eclair.nix { };
+
   electrs = callPackage ../applications/blockchains/electrs.nix { };
 
+  elements  = libsForQt5.callPackage ../applications/blockchains/elements.nix { miniupnpc = miniupnpc_2; withGui = true; };
+  elementsd = callPackage ../applications/blockchains/elements.nix { miniupnpc = miniupnpc_2; withGui = false; };
+
   ergo = callPackage ../applications/blockchains/ergo { };
 
   exodus = callPackage ../applications/blockchains/exodus { };
@@ -28430,6 +28652,10 @@ in
     boost = boost17x;
   };
 
+  oxen = callPackage ../applications/blockchains/oxen {
+    boost = boost17x;
+  };
+
   monero-gui = libsForQt5.callPackage ../applications/blockchains/monero-gui {
     boost = boost17x;
   };
@@ -28724,7 +28950,9 @@ in
 
   exult = callPackage ../games/exult { };
 
-  fltrator = callPackage ../games/fltrator { };
+  fltrator = callPackage ../games/fltrator {
+    fltk = fltk-minimal;
+  };
 
   factorio = callPackage ../games/factorio { releaseType = "alpha"; };
 
@@ -29097,6 +29325,8 @@ in
 
   pokerth-server = libsForQt5.callPackage ../games/pokerth { target = "server"; };
 
+  powermanga = callPackage ../games/powermanga { };
+
   prboom = callPackage ../games/prboom { };
 
   pysolfc = python3Packages.callPackage ../games/pysolfc { };
@@ -29311,6 +29541,8 @@ in
 
   tbe = libsForQt5.callPackage ../games/the-butterfly-effect { };
 
+  tecnoballz = callPackage ../games/tecnoballz { };
+
   teetertorture = callPackage ../games/teetertorture { };
 
   teeworlds = callPackage ../games/teeworlds { };
@@ -29600,6 +29832,10 @@ in
     gtk = gtk2;
   };
 
+  arcan = recurseIntoAttrs (callPackage ../desktops/arcan {
+    callPackage = newScope pkgs.arcan;
+  });
+
   xfce = recurseIntoAttrs (callPackage ../desktops/xfce { });
 
   xrandr-invert-colors = callPackage ../applications/misc/xrandr-invert-colors { };
@@ -29635,6 +29871,8 @@ in
     gstreamerSupport = true;
   });
 
+  dkh = callPackage ../applications/science/chemistry/dkh { };
+
   openmolcas = callPackage ../applications/science/chemistry/openmolcas { };
 
   pymol = callPackage ../applications/science/chemistry/pymol { };
@@ -30949,11 +31187,11 @@ in
   # Exceptions are versions that we need to keep to allow upgrades from older NixOS releases
   inherit (callPackage ../applications/networking/cluster/kops {})
     mkKops
-    kops_1_18
     kops_1_19
     kops_1_20
+    kops_1_21
     ;
-  kops = kops_1_20;
+  kops = kops_1_21;
 
   lguf-brightness = callPackage ../misc/lguf-brightness { };
 
@@ -30981,6 +31219,8 @@ in
 
   mas = callPackage ../os-specific/darwin/mas { };
 
+  micromamba = callPackage ../tools/package-management/micromamba { };
+
   moltengamepad = callPackage ../misc/drivers/moltengamepad { };
 
   openzwave = callPackage ../development/libraries/openzwave { };
@@ -31004,7 +31244,6 @@ in
   inherit (callPackage ../tools/package-management/nix {
       storeDir = config.nix.storeDir or "/nix/store";
       stateDir = config.nix.stateDir or "/nix/var";
-      boehmgc = boehmgc.override { enableLargeConfig = true; };
       inherit (darwin.apple_sdk.frameworks) Security;
       })
     nix
@@ -31179,6 +31418,8 @@ in
 
   nix-linter = haskell.lib.justStaticExecutables (haskellPackages.nix-linter);
 
+  nixos-option = callPackage ../tools/nix/nixos-option { };
+
   nix-pin = callPackage ../tools/package-management/nix-pin { };
 
   nix-prefetch = callPackage ../tools/package-management/nix-prefetch { };
@@ -31353,6 +31594,10 @@ in
 
   fsuae = callPackage ../misc/emulators/fs-uae { };
 
+  fsuae-launcher = callPackage ../misc/emulators/fs-uae-launcher {
+    inherit (python3Packages) pyqt5 setuptools requests;
+  };
+
   putty = callPackage ../applications/networking/remote/putty {
     gtk2 = gtk2-x11;
   };
@@ -31693,6 +31938,9 @@ in
   vimb-unwrapped = callPackage ../applications/networking/browsers/vimb { };
   vimb = wrapFirefox vimb-unwrapped { };
 
+  vikunja-api = callPackage ../servers/web-apps/vikunja/api.nix { };
+  vikunja-frontend = callPackage ../servers/web-apps/vikunja/frontend.nix { };
+
   vips = callPackage ../tools/graphics/vips {
     inherit (darwin.apple_sdk.frameworks) ApplicationServices Foundation;
   };
@@ -31866,6 +32114,8 @@ in
 
   yamdi = callPackage ../tools/video/yamdi { };
 
+  yandex-browser = callPackage ../applications/networking/browsers/yandex-browser { };
+
   yandex-disk = callPackage ../tools/filesystems/yandex-disk { };
 
   yara = callPackage ../tools/security/yara { };
diff --git a/nixpkgs/pkgs/top-level/dotnet-packages.nix b/nixpkgs/pkgs/top-level/dotnet-packages.nix
index 6a189c0005a0..1ca8621b7114 100644
--- a/nixpkgs/pkgs/top-level/dotnet-packages.nix
+++ b/nixpkgs/pkgs/top-level/dotnet-packages.nix
@@ -285,21 +285,24 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
     outputFiles = [ "*" ];
   };
 
-  Nuget = buildDotnetPackage {
+  Nuget = buildDotnetPackage rec {
     baseName = "Nuget";
-    version = "4.9.1";
+    version = "5.6.0.6489";
 
     src = fetchFromGitHub {
       owner = "mono";
-      repo = "nuget-binary";
-      rev = "7871fa26914593fdb2f2500df1196df7b8aecb1c";
-      sha256 = "07r63xam6icm17pf6amh1qkmna13nxa3ncdan7a3ql307i5isriz";
+      repo = "linux-packaging-nuget";
+      rev = "upstream/${version}.bin";
+      sha256 = "sha256-71vjM7a+F0DNTY+dML3UBSkrVyXv/k5rdl7iXBKSpNM=";
     };
 
-    phases = [ "unpackPhase" "installPhase" ];
+    # configurePhase breaks the binary and results in
+    # `File does not contain a valid CIL image.`
+    dontConfigure = true;
+    dontBuild = true;
+    dontPlacateNuget = true;
 
     outputFiles = [ "*" ];
-    dllFiles = [ "NuGet*.dll" ];
     exeFiles = [ "nuget.exe" ];
   };
 
diff --git a/nixpkgs/pkgs/top-level/emacs-packages.nix b/nixpkgs/pkgs/top-level/emacs-packages.nix
index d168d34e3738..4d4c172296a1 100644
--- a/nixpkgs/pkgs/top-level/emacs-packages.nix
+++ b/nixpkgs/pkgs/top-level/emacs-packages.nix
@@ -26,7 +26,11 @@
 let
 
   mkElpaPackages = { pkgs, lib }: import ../applications/editors/emacs/elisp-packages/elpa-packages.nix {
-    inherit (pkgs) stdenv texinfo writeText;
+    inherit (pkgs) stdenv texinfo writeText gcc;
+    inherit lib;
+  };
+
+  mkNongnuPackages = { lib }: import ../applications/editors/emacs/elisp-packages/nongnu-packages.nix {
     inherit lib;
   };
 
@@ -44,7 +48,7 @@ let
   };
 
   emacsWithPackages = { pkgs, lib }: import ../build-support/emacs/wrapper.nix {
-    inherit (pkgs) makeWrapper runCommand;
+    inherit (pkgs) makeWrapper runCommand gcc;
     inherit (pkgs.xorg) lndir;
     inherit lib;
   };
@@ -53,12 +57,14 @@ in makeScope pkgs'.newScope (self: makeOverridable ({
   pkgs ? pkgs'
   , lib ? pkgs.lib
   , elpaPackages ? mkElpaPackages { inherit pkgs lib; } self
+  , nongnuPackages ? mkNongnuPackages { inherit lib; } self
   , melpaStablePackages ? melpaGeneric { inherit pkgs lib; } "stable" self
   , melpaPackages ? melpaGeneric { inherit pkgs lib; } "unstable" self
   , orgPackages ? mkOrgPackages { inherit lib; } self
   , manualPackages ? mkManualPackages { inherit pkgs lib; } self
 }: ({}
   // elpaPackages // { inherit elpaPackages; }
+  // nongnuPackages // { inherit nongnuPackages; }
   // melpaStablePackages // { inherit melpaStablePackages; }
   // melpaPackages // { inherit melpaPackages; }
   // orgPackages // { inherit orgPackages; }
diff --git a/nixpkgs/pkgs/top-level/haskell-packages.nix b/nixpkgs/pkgs/top-level/haskell-packages.nix
index 8bea40efe64d..b872f3286e16 100644
--- a/nixpkgs/pkgs/top-level/haskell-packages.nix
+++ b/nixpkgs/pkgs/top-level/haskell-packages.nix
@@ -57,7 +57,8 @@ in {
 
     ghc884 = callPackage ../development/compilers/ghc/8.8.4.nix {
       # aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
-      bootPkgs = if stdenv.isAarch64 then
+      # Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them
+      bootPkgs = if stdenv.isAarch64 || stdenv.targetPlatform.isMusl then
           packages.ghc8102BinaryMinimal
         else
           packages.ghc865Binary;
@@ -67,7 +68,8 @@ in {
     };
     ghc8104 = callPackage ../development/compilers/ghc/8.10.4.nix {
       # aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
-      bootPkgs = if stdenv.isAarch64 || stdenv.isAarch32 then
+      # Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them
+      bootPkgs = if stdenv.isAarch64 || stdenv.isAarch32 || stdenv.targetPlatform.isMusl then
           packages.ghc8102BinaryMinimal
         else
           packages.ghc865Binary;
diff --git a/nixpkgs/pkgs/top-level/make-tarball.nix b/nixpkgs/pkgs/top-level/make-tarball.nix
index d0728c5d1b2c..c5a5a4376999 100644
--- a/nixpkgs/pkgs/top-level/make-tarball.nix
+++ b/nixpkgs/pkgs/top-level/make-tarball.nix
@@ -10,9 +10,7 @@
 , lib-tests ? import ../../lib/tests/release.nix { inherit pkgs; }
 }:
 
-with pkgs;
-
-releaseTools.sourceTarball {
+pkgs.releaseTools.sourceTarball {
   name = "nixpkgs-tarball";
   src = nixpkgs;
 
@@ -23,7 +21,7 @@ releaseTools.sourceTarball {
     then builtins.substring 0 8 (nixpkgs.lastModifiedDate or nixpkgs.lastModified)
     else toString nixpkgs.revCount}.${nixpkgs.shortRev or "dirty"}";
 
-  buildInputs = [ nix.out jq lib-tests pkgs.brotli ];
+  buildInputs = with pkgs; [ nix.out jq lib-tests brotli ];
 
   configurePhase = ''
     eval "$preConfigure"
@@ -34,6 +32,9 @@ releaseTools.sourceTarball {
     echo "git-revision is $(cat .git-revision)"
   '';
 
+  nixpkgs-basic-release-checks = import ./nixpkgs-basic-release-checks.nix
+   { inherit nix pkgs nixpkgs supportedSystems; };
+
   dontBuild = false;
 
   doCheck = true;
@@ -46,47 +47,6 @@ releaseTools.sourceTarball {
     opts=(--option build-users-group "")
     nix-store --init
 
-    echo 'abort "Illegal use of <nixpkgs> in Nixpkgs."' > $TMPDIR/barf.nix
-
-    # Make sure that Nixpkgs does not use <nixpkgs>.
-    badFiles=$(find pkgs -type f -name '*.nix' -print | xargs grep -l '^[^#]*<nixpkgs\/' || true)
-    if [[ -n $badFiles ]]; then
-        echo "Nixpkgs is not allowed to use <nixpkgs> to refer to itself."
-        echo "The offending files: $badFiles"
-        exit 1
-    fi
-
-    # Make sure that derivation paths do not depend on the Nixpkgs path.
-    mkdir $TMPDIR/foo
-    ln -s $(readlink -f .) $TMPDIR/foo/bar
-    p1=$(nix-instantiate ./. --dry-run -A firefox --show-trace)
-    p2=$(nix-instantiate $TMPDIR/foo/bar --dry-run -A firefox --show-trace)
-    if [ "$p1" != "$p2" ]; then
-        echo "Nixpkgs evaluation depends on Nixpkgs path ($p1 vs $p2)!"
-        exit 1
-    fi
-
-    # Check that all-packages.nix evaluates on a number of platforms without any warnings.
-    for platform in ${pkgs.lib.concatStringsSep " " supportedSystems}; do
-        header "checking Nixpkgs on $platform"
-
-        nix-env -f . \
-            --show-trace --argstr system "$platform" \
-            -qa --drv-path --system-filter \* --system \
-            "''${opts[@]}" 2>&1 >/dev/null | tee eval-warnings.log
-
-        if [ -s eval-warnings.log ]; then
-            echo "Nixpkgs on $platform evaluated with warnings, aborting"
-            exit 1
-        fi
-        rm eval-warnings.log
-
-        nix-env -f . \
-            --show-trace --argstr system "$platform" \
-            -qa --drv-path --system-filter \* --system --meta --xml \
-            "''${opts[@]}" > /dev/null
-    done
-
     header "checking eval-release.nix"
     nix-instantiate --eval --strict --show-trace ./maintainers/scripts/eval-release.nix > /dev/null
 
@@ -104,7 +64,7 @@ releaseTools.sourceTarball {
     header "generating packages.json"
     mkdir -p $out/nix-support
     echo -n '{"version":2,"packages":' > tmp
-    nix-env -f . -I nixpkgs=${src} -qa --json --arg config 'import ${./packages-config.nix}' "''${opts[@]}" >> tmp
+    nix-env -f . -I nixpkgs=$src -qa --json --arg config 'import ${./packages-config.nix}' "''${opts[@]}" >> tmp
     echo -n '}' >> tmp
     packages=$out/packages.json.br
     < tmp sed "s|$(pwd)/||g" | jq -c | brotli -9 > $packages
@@ -121,6 +81,6 @@ releaseTools.sourceTarball {
   '';
 
   meta = {
-    maintainers = [ lib.maintainers.all ];
+    maintainers = [ pkgs.lib.maintainers.all ];
   };
 }
diff --git a/nixpkgs/pkgs/top-level/nixpkgs-basic-release-checks.nix b/nixpkgs/pkgs/top-level/nixpkgs-basic-release-checks.nix
new file mode 100644
index 000000000000..ffd92d587ba1
--- /dev/null
+++ b/nixpkgs/pkgs/top-level/nixpkgs-basic-release-checks.nix
@@ -0,0 +1,53 @@
+{ supportedSystems, nixpkgs, pkgs, nix }:
+
+pkgs.runCommand "nixpkgs-release-checks" { src = nixpkgs; buildInputs = [nix]; } ''
+    set -o pipefail
+
+    export NIX_STATE_DIR=$TMPDIR
+    export NIX_PATH=nixpkgs=$TMPDIR/barf.nix
+    opts=(--option build-users-group "")
+    nix-store --init
+
+    echo 'abort "Illegal use of <nixpkgs> in Nixpkgs."' > $TMPDIR/barf.nix
+
+    # Make sure that Nixpkgs does not use <nixpkgs>.
+    badFiles=$(find $src/pkgs -type f -name '*.nix' -print | xargs grep -l '^[^#]*<nixpkgs\/' || true)
+    if [[ -n $badFiles ]]; then
+        echo "Nixpkgs is not allowed to use <nixpkgs> to refer to itself."
+        echo "The offending files: $badFiles"
+        exit 1
+    fi
+
+    # Make sure that derivation paths do not depend on the Nixpkgs path.
+    mkdir $TMPDIR/foo
+    ln -s $(readlink -f $src) $TMPDIR/foo/bar
+    p1=$(nix-instantiate $src --dry-run -A firefox --show-trace)
+    p2=$(nix-instantiate $TMPDIR/foo/bar --dry-run -A firefox --show-trace)
+    if [ "$p1" != "$p2" ]; then
+        echo "Nixpkgs evaluation depends on Nixpkgs path ($p1 vs $p2)!"
+        exit 1
+    fi
+
+    # Check that all-packages.nix evaluates on a number of platforms without any warnings.
+    for platform in ${pkgs.lib.concatStringsSep " " supportedSystems}; do
+        header "checking Nixpkgs on $platform"
+
+        nix-env -f $src \
+            --show-trace --argstr system "$platform" \
+            -qa --drv-path --system-filter \* --system \
+            "''${opts[@]}" 2>&1 >/dev/null | tee eval-warnings.log
+
+        if [ -s eval-warnings.log ]; then
+            echo "Nixpkgs on $platform evaluated with warnings, aborting"
+            exit 1
+        fi
+        rm eval-warnings.log
+
+        nix-env -f $src \
+            --show-trace --argstr system "$platform" \
+            -qa --drv-path --system-filter \* --system --meta --xml \
+            "''${opts[@]}" > /dev/null
+    done
+
+    touch $out
+''
diff --git a/nixpkgs/pkgs/top-level/ocaml-packages.nix b/nixpkgs/pkgs/top-level/ocaml-packages.nix
index 1a7c42c8a543..c17ea27a9e51 100644
--- a/nixpkgs/pkgs/top-level/ocaml-packages.nix
+++ b/nixpkgs/pkgs/top-level/ocaml-packages.nix
@@ -78,6 +78,8 @@ let
 
     bitv = callPackage ../development/ocaml-modules/bitv { };
 
+    bls12-381 = callPackage ../development/ocaml-modules/bls12-381 { };
+
     bolt = callPackage ../development/ocaml-modules/bolt { };
 
     bos = callPackage ../development/ocaml-modules/bos { };
@@ -242,6 +244,8 @@ let
 
     dap =  callPackage ../development/ocaml-modules/dap { };
 
+    data-encoding = callPackage ../development/ocaml-modules/data-encoding { };
+
     decompress =  callPackage ../development/ocaml-modules/decompress { };
 
     diet =  callPackage ../development/ocaml-modules/diet { };
@@ -369,6 +373,8 @@ let
 
     fdkaac = callPackage ../development/ocaml-modules/fdkaac { };
 
+    ff = callPackage ../development/ocaml-modules/ff { };
+
     fiat-p256 = callPackage ../development/ocaml-modules/fiat-p256 { };
 
     fieldslib_p4 = callPackage ../development/ocaml-modules/fieldslib { };
@@ -411,6 +417,9 @@ let
 
     hacl_x25519 = callPackage ../development/ocaml-modules/hacl_x25519 { };
 
+    hacl-star = callPackage ../development/ocaml-modules/hacl-star { };
+    hacl-star-raw = callPackage ../development/ocaml-modules/hacl-star/raw.nix { };
+
     herelib = callPackage ../development/ocaml-modules/herelib { };
 
     hidapi = callPackage ../development/ocaml-modules/hidapi { };
@@ -548,6 +557,10 @@ let
 
     jsonm = callPackage ../development/ocaml-modules/jsonm { };
 
+    json-data-encoding = callPackage ../development/ocaml-modules/json-data-encoding { };
+
+    json-data-encoding-bson = callPackage ../development/ocaml-modules/json-data-encoding/bson.nix { };
+
     junit = callPackage ../development/ocaml-modules/junit { };
     junit_ounit = callPackage ../development/ocaml-modules/junit/ounit.nix { };
     junit_alcotest = callPackage ../development/ocaml-modules/junit/alcotest.nix { };
@@ -620,6 +633,8 @@ let
 
     lwt-dllist = callPackage ../development/ocaml-modules/lwt-dllist { };
 
+    lwt-watcher = callPackage ../development/ocaml-modules/lwt-watcher { };
+
     lwt_log = callPackage ../development/ocaml-modules/lwt_log { };
 
     lwt_ppx = callPackage ../development/ocaml-modules/lwt/ppx.nix { };
@@ -833,8 +848,6 @@ let
     ocamlgraph = callPackage ../development/ocaml-modules/ocamlgraph { };
     ocamlgraph_gtk = callPackage ../development/ocaml-modules/ocamlgraph/gtk.nix { };
 
-    ocaml_http = callPackage ../development/ocaml-modules/http { };
-
     ocaml_libvirt = callPackage ../development/ocaml-modules/ocaml-libvirt { };
 
     ocamlify = callPackage ../development/tools/ocaml/ocamlify { };
@@ -851,9 +864,7 @@ let
 
     ocamlmod = callPackage ../development/tools/ocaml/ocamlmod { };
 
-    ocaml-monadic = callPackage ../development/ocaml-modules/ocaml-monadic {
-      ocaml-migrate-parsetree = ocaml-migrate-parsetree-2;
-    };
+    ocaml-monadic = callPackage ../development/ocaml-modules/ocaml-monadic { };
 
     ocaml_mysql = callPackage ../development/ocaml-modules/mysql { };
 
@@ -1019,6 +1030,8 @@ let
       inherit (pkgs) secp256k1;
     };
 
+    secp256k1-internal = callPackage ../development/ocaml-modules/secp256k1-internal { };
+
     seq = callPackage ../development/ocaml-modules/seq { };
 
     sosa = callPackage ../development/ocaml-modules/sosa { };
@@ -1153,6 +1166,21 @@ let
 
     reason-native = lib.recurseIntoAttrs (callPackage ../development/ocaml-modules/reason-native { });
 
+    ezresto = callPackage ../development/ocaml-modules/resto/ezresto.nix { };
+    ezresto-directory = callPackage ../development/ocaml-modules/resto/ezresto-directory.nix { };
+
+    resto = callPackage ../development/ocaml-modules/resto { };
+    resto-acl = callPackage ../development/ocaml-modules/resto/acl.nix { };
+    resto-cohttp = callPackage ../development/ocaml-modules/resto/cohttp.nix { };
+    resto-cohttp-client = callPackage ../development/ocaml-modules/resto/cohttp-client.nix { };
+    resto-cohttp-self-serving-client = callPackage ../development/ocaml-modules/resto/cohttp-self-serving-client.nix { };
+    resto-cohttp-server = callPackage ../development/ocaml-modules/resto/cohttp-server.nix { };
+    resto-directory = callPackage ../development/ocaml-modules/resto/directory.nix { };
+    resto-json = callPackage ../development/ocaml-modules/resto/json.nix { };
+
+    ringo = callPackage ../development/ocaml-modules/ringo { };
+    ringo-lwt = callPackage ../development/ocaml-modules/ringo/lwt.nix { };
+
     rope = callPackage ../development/ocaml-modules/rope { };
 
     routes = callPackage ../development/ocaml-modules/routes { };
@@ -1215,6 +1243,8 @@ let
 
     uchar = callPackage ../development/ocaml-modules/uchar { };
 
+    uecc = callPackage ../development/ocaml-modules/uecc { };
+
     utop = callPackage ../development/tools/ocaml/utop { };
 
     uuidm = callPackage ../development/ocaml-modules/uuidm { };
diff --git a/nixpkgs/pkgs/top-level/perl-packages.nix b/nixpkgs/pkgs/top-level/perl-packages.nix
index 1789f638a191..c5bcf7c48a0e 100644
--- a/nixpkgs/pkgs/top-level/perl-packages.nix
+++ b/nixpkgs/pkgs/top-level/perl-packages.nix
@@ -1328,12 +1328,12 @@ let
     propagatedBuildInputs = [ CarpClan ];
   };
 
-  BKeywords = buildPerlPackage {
+  BKeywords = buildPerlPackage rec {
     pname = "B-Keywords";
-    version = "1.21";
+    version = "1.22";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/R/RU/RURBAN/B-Keywords-1.21.tar.gz";
-      sha256 = "12481z1z1nyrjlkizzqn4cdmcrfjkc3hvxppqipsf6r5gnffh9as";
+      url = "mirror://cpan/authors/id/R/RU/RURBAN/B-Keywords-${version}.tar.gz";
+      sha256 = "0i2ksp0w9wv1qc22hrdl3k48cww64syhmv8zf6x0kgyd4081hr56";
     };
     meta = {
       description = "Lists of reserved barewords and symbol names";
@@ -10793,25 +10793,15 @@ let
     };
   };
 
-  ImageExifTool = buildPerlPackage {
+  ImageExifTool = buildPerlPackage rec {
     pname = "Image-ExifTool";
-    version = "12.16";
+    version = "12.29";
 
     src = fetchurl {
-      url = "mirror://cpan/authors/id/E/EX/EXIFTOOL/Image-ExifTool-12.16.tar.gz";
-      sha256 = "0skm22b3gg1bfk0amklrprpva41m6mkrhqp0gi7z1nmcf9ypjh61";
+      url = "https://exiftool.org/Image-ExifTool-${version}.tar.gz";
+      sha256 = "09yszwhirprqr94jwrsr9kyav5syv0mjmnjngqn20fn7m135wv95";
     };
 
-    patches = [
-      # Unfortunately, not every release is uploaded to CPAN so security fixes
-      # would need to be cherry-picked from releases
-      (fetchpatch {
-        name = "CVE-2021-22204.patch";
-        url = "https://salsa.debian.org/perl-team/modules/packages/libimage-exiftool-perl/-/raw/0347501fda93cb8366d6451aedcf258b34fb4a2b/debian/patches/CVE-2021-22204.patch";
-        sha256 = "1fxw32zcssillnv764wsd05lyswn8bbrc90q5cy9aknx0ncgsrxj";
-      })
-    ];
-
     nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang;
     postInstall = lib.optionalString stdenv.isDarwin ''
       shortenPerlShebang $out/bin/exiftool
diff --git a/nixpkgs/pkgs/top-level/python-aliases.nix b/nixpkgs/pkgs/top-level/python-aliases.nix
index 017d27a8a208..294c90f66566 100644
--- a/nixpkgs/pkgs/top-level/python-aliases.nix
+++ b/nixpkgs/pkgs/top-level/python-aliases.nix
@@ -34,12 +34,15 @@ in
 
 mapAliases ({
   blockdiagcontrib-cisco = throw "blockdiagcontrib-cisco is not compatible with blockdiag 2.0.0 and has been removed."; # Added 2020-11-29
+  bt_proximity = bt-proximity; # added 2021-07-02
   bugseverywhere = throw "bugseverywhere has been removed: Abandoned by upstream."; # Added 2019-11-27
+  ConfigArgParse = configargparse; # added 2021-03-18
   dateutil = python-dateutil; # added 2021-07-03
   detox = throw "detox is no longer maintained, and was broken since may 2019"; # added 2020-07-04
   dftfit = throw "it's dependency lammps-cython no longer builds";
   diff_cover = diff-cover; # added 2021-07-02
   discogs_client = discogs-client; # added 2021-07-02
+  djangorestframework-jwt = drf-jwt;
   dns = dnspython; # Alias for compatibility, 2017-12-10
   faulthandler = throw "faulthandler is built into ${python.executable}";
   gitdb2 = throw "gitdb2 has been deprecated, use gitdb instead."; # added 2020-03-14
@@ -52,10 +55,17 @@ mapAliases ({
   privacyidea = throw "renamed to pkgs.privacyidea"; # added 2021-06-20
   pylibgen = throw "pylibgen is unmaintained upstreamed, and removed from nixpkgs"; # added 2020-06-20
   pymssql = throw "pymssql has been abandoned upstream."; # added 2020-05-04
+  pytestcov = pytest-cov; # added 2021-01-04
   pytest-pep8 = pytestpep8; # added 2021-01-04
   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
+  pytest_xdist = pytest-xdist; # added 2021-01-04
+  python_simple_hipchat = python-simple-hipchat; # added 2021-07-21
   qasm2image = throw "qasm2image is no longer maintained (since November 2018), and is not compatible with the latest pythonPackages.qiskit versions."; # added 2020-12-09
+  requests_toolbelt = requests-toolbelt; # added 2017-09-26
   rotate-backups = throw "pythonPackages.rotate-backups was removed in favor of the top-level rotate-backups"; # added 2021-07-01
+  scikitlearn = scikit-learn; # added 2021-07-21
   selectors34 = throw "selectors34 has been removed: functionality provided by Python itself; archived by upstream."; # Added 2021-06-10
   setuptools_scm = setuptools-scm; # added 2021-06-03
   smart_open = smart-open; # added 2021-03-14
@@ -63,5 +73,5 @@ mapAliases ({
   topydo = throw "python3Packages.topydo was moved to topydo"; # 2017-09-22
   tvnamer = throw "python3Packages.tvnamer was moved to tvnamer"; # 2021-07-05
   websocket_client = websocket-client;
-  bt_proximity = bt-proximity; # added 2021-07-02
+  zc_buildout221 = zc_buildout; # added 2021-07-21
 })
diff --git a/nixpkgs/pkgs/top-level/python-packages.nix b/nixpkgs/pkgs/top-level/python-packages.nix
index 2450ee309e39..590ee7ab13f2 100644
--- a/nixpkgs/pkgs/top-level/python-packages.nix
+++ b/nixpkgs/pkgs/top-level/python-packages.nix
@@ -201,6 +201,8 @@ in {
     inherit (pkgs.darwin.apple_sdk.frameworks) CoreFoundation Security;
   };
 
+  addict = callPackage ../development/python-modules/addict { };
+
   addic7ed-cli = callPackage ../development/python-modules/addic7ed-cli { };
 
   adext = callPackage ../development/python-modules/adext { };
@@ -825,6 +827,8 @@ in {
 
   azure-mgmt-eventhub = callPackage ../development/python-modules/azure-mgmt-eventhub { };
 
+  azure-mgmt-extendedlocation = callPackage ../development/python-modules/azure-mgmt-extendedlocation { };
+
   azure-mgmt-hanaonazure = callPackage ../development/python-modules/azure-mgmt-hanaonazure { };
 
   azure-mgmt-hdinsight = callPackage ../development/python-modules/azure-mgmt-hdinsight { };
@@ -1141,6 +1145,8 @@ in {
 
   block-io = callPackage ../development/python-modules/block-io { };
 
+  blocksat-cli = callPackage ../development/python-modules/blocksat-cli { };
+
   blspy = callPackage ../development/python-modules/blspy { };
 
   bluepy = callPackage ../development/python-modules/bluepy { };
@@ -1605,7 +1611,6 @@ in {
 
   conda = callPackage ../development/python-modules/conda { };
 
-  ConfigArgParse = self.configargparse; # added 2021-03-18
   configargparse = callPackage ../development/python-modules/configargparse { };
 
   configobj = callPackage ../development/python-modules/configobj { };
@@ -1670,6 +1675,8 @@ in {
 
   cram = callPackage ../development/python-modules/cram { };
 
+  cramjam = callPackage ../development/python-modules/cramjam { };
+
   crashtest = callPackage ../development/python-modules/crashtest { };
 
   crate = callPackage ../development/python-modules/crate { };
@@ -1765,6 +1772,8 @@ in {
 
   d2to1 = callPackage ../development/python-modules/d2to1 { };
 
+  dacite = callPackage ../development/python-modules/dacite { };
+
   daemonize = callPackage ../development/python-modules/daemonize { };
 
   daemonocle = callPackage ../development/python-modules/daemonocle { };
@@ -1909,6 +1918,8 @@ in {
 
   devpi-common = callPackage ../development/python-modules/devpi-common { };
 
+  devtools = callPackage ../development/python-modules/devtools { };
+
   diagrams = callPackage ../development/python-modules/diagrams { };
 
   diceware = callPackage ../development/python-modules/diceware { };
@@ -2060,8 +2071,6 @@ in {
 
   djangorestframework = callPackage ../development/python-modules/djangorestframework { };
 
-  djangorestframework-jwt = self.drf-jwt;
-
   djangorestframework-simplejwt = callPackage ../development/python-modules/djangorestframework-simplejwt { };
 
   django_reversion = callPackage ../development/python-modules/django_reversion { };
@@ -2245,6 +2254,8 @@ in {
 
   ed25519 = callPackage ../development/python-modules/ed25519 { };
 
+  editables = callPackage ../development/python-modules/editables { };
+
   editdistance = callPackage ../development/python-modules/editdistance { };
 
   editdistance-s = callPackage ../development/python-modules/editdistance-s { };
@@ -2291,6 +2302,8 @@ in {
 
   enamlx = callPackage ../development/python-modules/enamlx { };
 
+  enlighten = callPackage ../development/python-modules/enlighten { };
+
   enocean = callPackage ../development/python-modules/enocean { };
 
   enrich = callPackage ../development/python-modules/enrich { };
@@ -2353,6 +2366,8 @@ in {
 
   et_xmlfile = callPackage ../development/python-modules/et_xmlfile { };
 
+  ev3dev2 = callPackage ../development/python-modules/ev3dev2 { };
+
   evdev = callPackage ../development/python-modules/evdev { };
 
   eve = callPackage ../development/python-modules/eve { };
@@ -2723,6 +2738,8 @@ in {
 
   fritzconnection = callPackage ../development/python-modules/fritzconnection { };
 
+  fritzprofiles = callPackage ../development/python-modules/fritzprofiles { };
+
   frozendict = callPackage ../development/python-modules/frozendict { };
 
   frozenlist = callPackage ../development/python-modules/frozenlist { };
@@ -3131,6 +3148,10 @@ in {
 
   grpcio-tools = callPackage ../development/python-modules/grpcio-tools { };
 
+  gruut = callPackage ../development/python-modules/gruut { };
+
+  gruut-ipa = callPackage ../development/python-modules/gruut-ipa { };
+
   gsd = callPackage ../development/python-modules/gsd { };
 
   gspread = callPackage ../development/python-modules/gspread { };
@@ -3386,6 +3407,8 @@ in {
 
   hypchat = callPackage ../development/python-modules/hypchat { };
 
+  hypercorn = callPackage ../development/python-modules/hypercorn { };
+
   hyperframe = callPackage ../development/python-modules/hyperframe { };
 
   hyperion-py = callPackage ../development/python-modules/hyperion-py { };
@@ -4321,6 +4344,8 @@ in {
 
   marshmallow-enum = callPackage ../development/python-modules/marshmallow-enum { };
 
+  marshmallow-oneofschema = callPackage ../development/python-modules/marshmallow-oneofschema { };
+
   marshmallow-polyfield = callPackage ../development/python-modules/marshmallow-polyfield { };
 
   marshmallow-sqlalchemy = callPackage ../development/python-modules/marshmallow-sqlalchemy { };
@@ -4664,6 +4689,8 @@ in {
 
   names = callPackage ../development/python-modules/names { };
 
+  nampa = callPackage ../development/python-modules/nampa { };
+
   nanoleaf = callPackage ../development/python-modules/nanoleaf { };
 
   nanomsg-python = callPackage ../development/python-modules/nanomsg-python {
@@ -4716,6 +4743,8 @@ in {
 
   ndtypes = callPackage ../development/python-modules/ndtypes { };
 
+  nengo = callPackage ../development/python-modules/nengo { };
+
   neo = callPackage ../development/python-modules/neo { };
 
   nest-asyncio = callPackage ../development/python-modules/nest-asyncio { };
@@ -4888,6 +4917,8 @@ in {
 
   nvchecker = callPackage ../development/python-modules/nvchecker { };
 
+  python-nvd3 = callPackage ../development/python-modules/python-nvd3 { };
+
   nwdiag = callPackage ../development/python-modules/nwdiag { };
 
   oath = callPackage ../development/python-modules/oath { };
@@ -4975,6 +5006,8 @@ in {
 
   openshift = callPackage ../development/python-modules/openshift { };
 
+  opensimplex = callPackage ../development/python-modules/opensimplex { };
+
   opentimestamps = callPackage ../development/python-modules/opentimestamps { };
 
   opentracing = callPackage ../development/python-modules/opentracing { };
@@ -5245,6 +5278,8 @@ in {
 
   openapi-core = callPackage ../development/python-modules/openapi-core { };
 
+  parameterizedtestcase = callPackage ../development/python-modules/parameterizedtestcase { };
+
   pdunehd = callPackage ../development/python-modules/pdunehd { };
 
   phonopy = callPackage ../development/python-modules/phonopy { };
@@ -5373,6 +5408,8 @@ in {
 
   python-codon-tables = callPackage ../development/python-modules/python-codon-tables { };
 
+  python-crfsuite = callPackage ../development/python-modules/python-crfsuite { };
+
   python-csxcad = callPackage ../development/python-modules/python-csxcad { };
 
   python-ecobee-api = callPackage ../development/python-modules/python-ecobee-api { };
@@ -5383,6 +5420,8 @@ in {
 
   python-juicenet = callPackage ../development/python-modules/python-juicenet { };
 
+  python-lsp-black = callPackage ../development/python-modules/python-lsp-black { };
+
   python-openems = callPackage ../development/python-modules/python-openems { };
 
   python-openzwave-mqtt = callPackage ../development/python-modules/python-openzwave-mqtt { };
@@ -5391,6 +5430,8 @@ in {
 
   python-tado = callPackage ../development/python-modules/python-tado { };
 
+  pyutil = callPackage ../development/python-modules/pyutil { };
+
   pkutils = callPackage ../development/python-modules/pkutils { };
 
   plac = callPackage ../development/python-modules/plac { };
@@ -5516,6 +5557,8 @@ in {
 
   precis-i18n = callPackage ../development/python-modules/precis-i18n { };
 
+  prefixed = callPackage ../development/python-modules/prefixed { };
+
   pre-commit = callPackage ../development/python-modules/pre-commit { };
 
   pre-commit-hooks = callPackage ../development/python-modules/pre-commit-hooks { };
@@ -5631,6 +5674,8 @@ in {
 
   purl = callPackage ../development/python-modules/purl { };
 
+  push-receiver = callPackage ../development/python-modules/push-receiver { };
+
   pushbullet = callPackage ../development/python-modules/pushbullet { };
 
   pushover-complete = callPackage ../development/python-modules/pushover-complete { };
@@ -5653,6 +5698,8 @@ in {
 
   py-ubjson = callPackage ../development/python-modules/py-ubjson { };
 
+  py17track = callPackage ../development/python-modules/py17track { };
+
   py2bit = callPackage ../development/python-modules/py2bit { };
 
   py3buddy = toPythonModule (callPackage ../development/python-modules/py3buddy { });
@@ -5954,6 +6001,8 @@ in {
 
   pyfritzhome = callPackage ../development/python-modules/pyfritzhome { };
 
+  pyfronius = callPackage ../development/python-modules/pyfronius { };
+
   pyftdi = callPackage ../development/python-modules/pyftdi { };
 
   pyftgl = callPackage ../development/python-modules/pyftgl { };
@@ -5972,6 +6021,8 @@ in {
 
   pygame_sdl2 = callPackage ../development/python-modules/pygame_sdl2 { };
 
+  pygame-gui = callPackage ../development/python-modules/pygame-gui { };
+
   pygatt = callPackage ../development/python-modules/pygatt { };
 
   pygbm = callPackage ../development/python-modules/pygbm { };
@@ -6144,12 +6195,16 @@ in {
 
   pyls-black = callPackage ../development/python-modules/pyls-black { };
 
+  pyls-flake8 = callPackage ../development/python-modules/pyls-flake8 { };
+
   pyls-isort = callPackage ../development/python-modules/pyls-isort { };
 
   pyls-mypy = callPackage ../development/python-modules/pyls-mypy { };
 
   pyls-spyder = callPackage ../development/python-modules/pyls-spyder { };
 
+  pylsp-mypy = callPackage ../development/python-modules/pylsp-mypy { };
+
   PyLTI = callPackage ../development/python-modules/pylti { };
 
   pylutron = callPackage ../development/python-modules/pylutron { };
@@ -6230,6 +6285,8 @@ in {
 
   pymumble = callPackage ../development/python-modules/pymumble { };
 
+  pymunk = callPackage ../development/python-modules/pymunk { };
+
   pymupdf = callPackage ../development/python-modules/pymupdf { };
 
   PyMVGLive = callPackage ../development/python-modules/pymvglive { };
@@ -6254,7 +6311,9 @@ in {
 
   pynanoleaf = callPackage ../development/python-modules/pynanoleaf { };
 
-  pync = callPackage ../development/python-modules/pync { };
+  pync = callPackage ../development/python-modules/pync {
+    inherit (pkgs) coreutils which;
+  };
 
   pynest2d = callPackage ../development/python-modules/pynest2d { };
 
@@ -6750,8 +6809,7 @@ in {
 
   pytest-console-scripts = callPackage ../development/python-modules/pytest-console-scripts { };
 
-  pytest-cov = self.pytestcov; # self 2021-01-04
-  pytestcov = callPackage ../development/python-modules/pytest-cov { };
+  pytest-cov = callPackage ../development/python-modules/pytest-cov { };
 
   pytest-cram = callPackage ../development/python-modules/pytest-cram { };
 
@@ -6827,8 +6885,7 @@ in {
 
   pytest-qt = callPackage ../development/python-modules/pytest-qt { };
 
-  pytest-quickcheck = self.pytestquickcheck;
-  pytestquickcheck = callPackage ../development/python-modules/pytest-quickcheck { };
+  pytest-quickcheck = callPackage ../development/python-modules/pytest-quickcheck { };
 
   pytest-raises = callPackage ../development/python-modules/pytest-raises { };
 
@@ -6848,8 +6905,7 @@ in {
 
   pytest-rerunfailures = callPackage ../development/python-modules/pytest-rerunfailures { };
 
-  pytest-runner = self.pytestrunner; # added 2021-01-04
-  pytestrunner = callPackage ../development/python-modules/pytestrunner { };
+  pytest-runner = callPackage ../development/python-modules/pytest-runner { };
 
   pytest-sanic = callPackage ../development/python-modules/pytest-sanic {
     sanic = self.sanic.override { doCheck = false; };
@@ -6893,7 +6949,6 @@ in {
 
   pytest-watch = callPackage ../development/python-modules/pytest-watch { };
 
-  pytest_xdist = self.pytest-xdist; # added 2021-01-04
   pytest-xdist = callPackage ../development/python-modules/pytest-xdist { };
 
   pytest-xprocess = callPackage ../development/python-modules/pytest-xprocess { };
@@ -7092,7 +7147,6 @@ in {
   python-sat = callPackage ../development/python-modules/python-sat { };
 
   python-simple-hipchat = callPackage ../development/python-modules/python-simple-hipchat { };
-  python_simple_hipchat = self.python-simple-hipchat;
 
   python-slugify = callPackage ../development/python-modules/python-slugify { };
 
@@ -7412,6 +7466,8 @@ in {
     gdal = pkgs.gdal_2;
   };
 
+  ratelim = callPackage ../development/python-modules/ratelim { };
+
   ratelimit = callPackage ../development/python-modules/ratelimit { };
 
   ratelimiter = callPackage ../development/python-modules/ratelimiter { };
@@ -7504,6 +7560,8 @@ in {
 
   requests-file = callPackage ../development/python-modules/requests-file { };
 
+  requests-futures = callPackage ../development/python-modules/requests-futures { };
+
   requests-http-signature = callPackage ../development/python-modules/requests-http-signature { };
 
   requests-kerberos = callPackage ../development/python-modules/requests-kerberos { };
@@ -7518,8 +7576,6 @@ in {
 
   requests-toolbelt = callPackage ../development/python-modules/requests-toolbelt { };
 
-  requests_toolbelt = self.requests-toolbelt; # Old attr, 2017-09-26
-
   requests-unixsocket = callPackage ../development/python-modules/requests-unixsocket { };
 
   requirements-detector = callPackage ../development/python-modules/requirements-detector { };
@@ -7773,8 +7829,6 @@ in {
     inherit (pkgs) gfortran glibcLocales;
   };
 
-  scikitlearn = self.scikit-learn;
-
   scikit-optimize = callPackage ../development/python-modules/scikit-optimize { };
 
   scikits-odes = callPackage ../development/python-modules/scikits-odes { };
@@ -8008,6 +8062,8 @@ in {
 
   slob = callPackage ../development/python-modules/slob { };
 
+  slowapi = callPackage ../development/python-modules/slowapi { };
+
   sly = callPackage ../development/python-modules/sly { };
 
   smart-meter-texas = callPackage ../development/python-modules/smart-meter-texas { };
@@ -8198,6 +8254,8 @@ in {
 
   sphinx-autobuild = callPackage ../development/python-modules/sphinx-autobuild { };
 
+  sphinx-copybutton = callPackage ../development/python-modules/sphinx-copybutton { };
+
   sphinx-jinja = callPackage ../development/python-modules/sphinx-jinja { };
 
   sphinx-markdown-parser = callPackage ../development/python-modules/sphinx-markdown-parser { };
@@ -8234,6 +8292,8 @@ in {
 
   SQLAlchemy-ImageAttach = callPackage ../development/python-modules/sqlalchemy-imageattach { };
 
+  sqlalchemy-jsonfield = callPackage ../development/python-modules/sqlalchemy-jsonfield { };
+
   sqlalchemy_migrate = callPackage ../development/python-modules/sqlalchemy-migrate { };
 
   sqlalchemy-utils = callPackage ../development/python-modules/sqlalchemy-utils { };
@@ -8446,6 +8506,8 @@ in {
 
   telethon-session-sqlalchemy = callPackage ../development/python-modules/telethon-session-sqlalchemy { };
 
+  teletype = callPackage ../development/python-modules/teletype { };
+
   telfhash = callPackage ../development/python-modules/telfhash { };
 
   tempita = callPackage ../development/python-modules/tempita { };
@@ -8651,6 +8713,8 @@ in {
 
   toml = callPackage ../development/python-modules/toml { };
 
+  tomli = callPackage ../development/python-modules/tomli { };
+
   tomlkit = callPackage ../development/python-modules/tomlkit { };
 
   toolz = callPackage ../development/python-modules/toolz { };
@@ -9410,9 +9474,7 @@ in {
 
   zarr = callPackage ../development/python-modules/zarr { };
 
-  zc_buildout221 = callPackage ../development/python-modules/buildout { };
-
-  zc_buildout = self.zc_buildout221; # A patched version of buildout, useful for buildout based development on Nix
+  zc_buildout = callPackage ../development/python-modules/buildout { };
 
   zc_buildout_nix = callPackage ../development/python-modules/buildout-nix { };
 
@@ -9440,6 +9502,8 @@ in {
 
   zetup = callPackage ../development/python-modules/zetup { };
 
+  zfec = callPackage ../development/python-modules/zfec { };
+
   zha-quirks = callPackage ../development/python-modules/zha-quirks { };
 
   zict = callPackage ../development/python-modules/zict { };
diff --git a/nixpkgs/pkgs/top-level/python2-packages.nix b/nixpkgs/pkgs/top-level/python2-packages.nix
index 471548b9fa20..48ddb18291af 100644
--- a/nixpkgs/pkgs/top-level/python2-packages.nix
+++ b/nixpkgs/pkgs/top-level/python2-packages.nix
@@ -478,9 +478,8 @@ with self; with super; {
 
   pytest-mock = callPackage ../development/python-modules/pytest-mock/2.nix { };
 
-  pytestrunner = callPackage ../development/python-modules/pytestrunner/2.nix { };
+  pytest-runner = callPackage ../development/python-modules/pytest-runner/2.nix { };
 
-  pytest_xdist = self.pytest-xdist; # added 2021-01-04
   pytest-xdist = callPackage ../development/python-modules/pytest-xdist/1.nix { };
 
   python-otr = callPackage ../development/python-modules/python-otr { };
diff --git a/nixpkgs/pkgs/top-level/qt5-packages.nix b/nixpkgs/pkgs/top-level/qt5-packages.nix
index 60b4609479df..4c3518436de8 100644
--- a/nixpkgs/pkgs/top-level/qt5-packages.nix
+++ b/nixpkgs/pkgs/top-level/qt5-packages.nix
@@ -80,12 +80,16 @@ in (kdeFrameworks // plasma5 // plasma5.thirdParty // kdeGear // qt5 // {
 
   kde2-decoration = callPackage ../data/themes/kde2 { };
 
+  kcolorpicker = callPackage ../development/libraries/kcolorpicker { };
+
   kdiagram = callPackage ../development/libraries/kdiagram { };
 
   kdsoap = callPackage ../development/libraries/kdsoap { };
 
   kf5gpgmepp = callPackage ../development/libraries/kf5gpgmepp { };
 
+  kimageannotator = callPackage ../development/libraries/kimageannotator { };
+
   kproperty = callPackage ../development/libraries/kproperty { };
 
   kpeoplevcard = callPackage ../development/libraries/kpeoplevcard { };
diff --git a/nixpkgs/pkgs/top-level/release-haskell.nix b/nixpkgs/pkgs/top-level/release-haskell.nix
index 87a08dddb606..fe5241e3634e 100644
--- a/nixpkgs/pkgs/top-level/release-haskell.nix
+++ b/nixpkgs/pkgs/top-level/release-haskell.nix
@@ -82,23 +82,26 @@ let
   recursiveUpdateMany = builtins.foldl' lib.recursiveUpdate {};
 
   staticHaskellPackagesPlatforms =
-    packagePlatforms pkgs.pkgsStatic.haskellPackages;
+    packagePlatforms pkgs.pkgsStatic.haskell.packages.integer-simple.ghc8104;
 
   jobs = recursiveUpdateMany [
     (mapTestOn {
       haskellPackages = packagePlatforms pkgs.haskellPackages;
       haskell.compiler = packagePlatforms pkgs.haskell.compiler;
 
-      tests = let
-        testPlatforms = packagePlatforms pkgs.tests;
-      in {
-        haskell = testPlatforms.haskell;
-        writers = testPlatforms.writers;
+      tests.haskell = packagePlatforms pkgs.tests.haskell;
+
+      pkgsMusl.haskell.compiler = packagePlatforms pkgs.pkgsMusl.haskell.compiler // {
+        # remove musl ghc865Binary since it is known to be broken and
+        # causes an evaluation error on darwin.
+        # TODO: remove ghc865Binary altogether and use ghc8102Binary
+        ghc865Binary = {};
       };
 
       # test some statically linked packages to catch regressions
       # and get some cache going for static compilation with GHC
-      pkgsStatic.haskellPackages = {
+      # Use integer-simple to avoid GMP linking problems (LGPL)
+      pkgsStatic.haskell.packages.integer-simple.ghc8104 = {
         inherit (staticHaskellPackagesPlatforms)
           hello
           random
@@ -246,11 +249,10 @@ let
         };
         constituents = accumulateDerivations [
           # haskell specific tests
-          jobs.tests.haskell
-          # writeHaskell and writeHaskellBin
-          # TODO: writeHaskell currently fails on darwin
-          jobs.tests.writers.x86_64-linux
-          jobs.tests.writers.aarch64-linux
+          #
+          # TODO: The writers test appears to be failing on darwin for unknown
+          # reasons.  See https://github.com/NixOS/nixpkgs/pull/129606#issuecomment-881307871.
+          (lib.recursiveUpdate jobs.tests.haskell { writers.x86_64-darwin = null; })
           # important top-level packages
           jobs.cabal-install
           jobs.cabal2nix
@@ -300,12 +302,27 @@ let
         };
         constituents = [
           # TODO: reenable darwin builds if static libiconv works
-          jobs.pkgsStatic.haskellPackages.hello.x86_64-linux
-          jobs.pkgsStatic.haskellPackages.hello.aarch64-linux
-          jobs.pkgsStatic.haskellPackages.lens.x86_64-linux
-          jobs.pkgsStatic.haskellPackages.lens.aarch64-linux
-          jobs.pkgsStatic.haskellPackages.random.x86_64-linux
-          jobs.pkgsStatic.haskellPackages.random.aarch64-linux
+          jobs.pkgsStatic.haskell.packages.integer-simple.ghc8104.hello.x86_64-linux
+          jobs.pkgsStatic.haskell.packages.integer-simple.ghc8104.hello.aarch64-linux
+          jobs.pkgsStatic.haskell.packages.integer-simple.ghc8104.lens.x86_64-linux
+          jobs.pkgsStatic.haskell.packages.integer-simple.ghc8104.lens.aarch64-linux
+          jobs.pkgsStatic.haskell.packages.integer-simple.ghc8104.random.x86_64-linux
+          jobs.pkgsStatic.haskell.packages.integer-simple.ghc8104.random.aarch64-linux
+        ];
+      };
+      muslGHCs = pkgs.releaseTools.aggregate {
+        name = "haskell-pkgsMusl-ghcs";
+        meta = {
+          description = "GHCs built with musl";
+          maintainers = with lib.maintainers; [
+            nh2
+          ];
+        };
+        constituents = accumulateDerivations [
+          jobs.pkgsMusl.haskell.compiler.ghc8102Binary
+          jobs.pkgsMusl.haskell.compiler.ghc884
+          jobs.pkgsMusl.haskell.compiler.ghc8104
+          jobs.pkgsMusl.haskell.compiler.ghc901
         ];
       };
     }
diff --git a/nixpkgs/pkgs/top-level/ruby-packages.nix b/nixpkgs/pkgs/top-level/ruby-packages.nix
index 123bc1ead18b..a32cfbe0df60 100644
--- a/nixpkgs/pkgs/top-level/ruby-packages.nix
+++ b/nixpkgs/pkgs/top-level/ruby-packages.nix
@@ -5,10 +5,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "15r6ab17iwhhq92by4ah9z4wwvjbr07qn16x8pn2ypgqwvfy74h7";
+      sha256 = "1wswkgwhmfk5j76ar76plhaxna12x0cyf2di57azahlcv88rrwra";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   actionmailbox = {
     dependencies = ["actionpack" "activejob" "activerecord" "activestorage" "activesupport" "mail"];
@@ -16,10 +16,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1q1r3x9fbq5wlgn4xhqw48la09q7f97zna7ld5fglk3jpmh973x5";
+      sha256 = "101r0x4lhzp23hksch7z24ajvp549lskxn2cr7pbgr64jjy6v17y";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   actionmailer = {
     dependencies = ["actionpack" "actionview" "activejob" "activesupport" "mail" "rails-dom-testing"];
@@ -27,10 +27,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nqdaykzgib8fsldkxdkw0w44jzz4grvb028crzg0qpwvv03g2wp";
+      sha256 = "0mxqpiwgqam5vfk8wsfyj4dpxq0xqqvfbcwx1i4p9n1ahrx7wv7f";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   actionpack = {
     dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
@@ -38,10 +38,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wdgv5llgbl4nayx5j78lfvhhjssrzfmypb45mjy37mgm8z5l5m5";
+      sha256 = "1pj4xz316b3z56vpb8pnrkwj4rlf3hgas5fhddk6yh7ifrl30sc9";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   actiontext = {
     dependencies = ["actionpack" "activerecord" "activestorage" "activesupport" "nokogiri"];
@@ -49,10 +49,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1zfrkcnp9wy1dm4b6iqf29858dp04a62asfmldainqmv4a7931q7";
+      sha256 = "1fn488la8dllfg5zhm74k8y23xl9czrzzs55b9v624j43wjhfxcl";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   actionview = {
     dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"];
@@ -60,10 +60,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1r6db2g3fsrca1hp9kbyvjx9psipsxw0g306qharkcblxl8h1ysn";
+      sha256 = "1jqybz7h11xkjpqdffb9gphwmd56lms9xqskza00wd2pswxcwkn4";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   activejob = {
     dependencies = ["activesupport" "globalid"];
@@ -71,10 +71,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0p80rbahcxhxlkxgf4bh580hbifn9q4gr5g9fy8fd0z5g6gr9xxq";
+      sha256 = "0q00vrknnnhmg02nik06ivrmz7hnq5snpy653kdpskvp4c9ys55c";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   activemodel = {
     dependencies = ["activesupport"];
@@ -82,10 +82,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1gpd3hh4ryyr84drj6m0b5sy6929nyf50bfgksw1hpc594542nal";
+      sha256 = "0xjy8fg7n5wwv29ngvvdf5r6815s5f0knzyswxh8w6z8f8qj5wr7";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   activerecord = {
     dependencies = ["activemodel" "activesupport"];
@@ -93,10 +93,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0fg58qma2zgrz0gr61p61qcz8c3h88fd5lbdrkpkm96aq5shwh68";
+      sha256 = "18897s9h9kha8vgky1yfq4x91m3p81k6rkrb1fgjlnqnvarh9vg0";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   activestorage = {
     dependencies = ["actionpack" "activejob" "activerecord" "activesupport" "marcel" "mini_mime"];
@@ -104,10 +104,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0sbpkk3r8qi47bd0ilznq4gpfyfwm2bwvxqb5z0wc75h3zj1jhqg";
+      sha256 = "03gb6jbvdzm0xlr2g393jvf980ybjf9zzgspl0p4ixh3lcxxr51w";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   activesupport = {
     dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo" "zeitwerk"];
@@ -115,10 +115,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1csxddyhl6k773ycxjvmyshyr4g9jb1icbs3pnm7crnavqs4h1yr";
+      sha256 = "0kqgywy4cj3h5142dh7pl0xx5nybp25jn0ykk0znziivzks68xdk";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   addressable = {
     dependencies = ["public_suffix"];
@@ -126,10 +126,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1fvchp2rhp2rmigx7qglf69xvjqvzq7x0g49naliw29r2bz656sy";
+      sha256 = "022r3m9wdxljpbya69y2i3h9g3dhhfaqzidf95m6qjzms792jvgp";
       type = "gem";
     };
-    version = "2.7.0";
+    version = "2.8.0";
   };
   ast = {
     groups = ["default"];
@@ -147,10 +147,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "03xphzq4fgva2xiwlpc7jqp0jl6k022gp7alwg0r7vyai0zx6q5n";
+      sha256 = "0hb4br24c7awarvcdmairg9g9xs37nlc98fp5abhq3b426zlzskg";
       type = "gem";
     };
-    version = "3.4.4";
+    version = "3.4.5";
   };
   atomos = {
     groups = ["default"];
@@ -172,6 +172,16 @@
     };
     version = "1.9.2";
   };
+  backport = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xbzzjrgah0f8ifgd449kak2vyf30micpz6x2g82aipfv7ypsb4i";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
   bacon = {
     groups = ["default"];
     platforms = [];
@@ -182,6 +192,16 @@
     };
     version = "1.2.0";
   };
+  benchmark = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jvrl7400fv7v2jjri1r7ilj3sri36hzipwwgpn5psib4c9c59c6";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
   builder = {
     groups = ["default"];
     platforms = [];
@@ -219,10 +239,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0aq55b8b33pl0yi2abib8i8d22rifji8nzfpf48vj0a0092rllcl";
+      sha256 = "161azhqndf9gvnsvsx0k2x2kpalsgmlz233hvwc7ckbiral7q86s";
       type = "gem";
     };
-    version = "3.4.4";
+    version = "3.4.5";
   };
   camping = {
     dependencies = ["mab" "rack"];
@@ -643,10 +663,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0mr23wq0szj52xnj0zcn1k0c7j4v79wlwbijkpfcscqww3l6jlg3";
+      sha256 = "0nwad3211p7yv9sda31jmbyw6sdafzmdi2i2niaz6f0wk5nq9h0f";
       type = "gem";
     };
-    version = "1.1.8";
+    version = "1.1.9";
   };
   crass = {
     groups = ["default"];
@@ -673,10 +693,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0i4j6j18ih6lx7gk9jg2p7q8iswc897mgzn5m62jbf0zv0f7mkji";
+      sha256 = "0j00s12wn9ai2qinbmzak6v0173cldqllnzs2s2id7gl45py2s75";
       type = "gem";
     };
-    version = "1.4.0";
+    version = "1.4.2";
   };
   daemons = {
     groups = ["default"];
@@ -771,6 +791,16 @@
     };
     version = "2.7.6";
   };
+  e2mmap = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0n8gxjb63dck3vrmsdcqqll7xs7f3wk78mw8w0gdk9wp5nx6pvj5";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
   em-websocket = {
     dependencies = ["eventmachine" "http_parser.rb"];
     groups = ["default"];
@@ -828,21 +858,41 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "19g5nvkycnkzqq4mqn1zjznq9adrlv2jz0dr9w10cbn42hhqpiz7";
+      sha256 = "186sra2bww83wa245mhmm57ngdn4w2k2x39iqkmxasjhibg5jsbl";
       type = "gem";
     };
-    version = "0.81.0";
+    version = "0.84.0";
   };
   faraday = {
-    dependencies = ["faraday-excon" "faraday-net_http" "faraday-net_http_persistent" "multipart-post" "ruby2_keywords"];
+    dependencies = ["faraday-em_http" "faraday-em_synchrony" "faraday-excon" "faraday-httpclient" "faraday-net_http" "faraday-net_http_persistent" "faraday-patron" "multipart-post" "ruby2_keywords"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0gwbii45plm9bljk22bwzhzxrc5xid8qx24f54vrm74q3zaz00ah";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  faraday-em_http = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0q646m07lfahakx5jdq77j004rcgfj6lkg13c0f84993gi78dhvi";
+      sha256 = "12cnqpbak4vhikrh2cdn94assh3yxza8rq2p9w2j34bqg5q4qgbs";
       type = "gem";
     };
-    version = "1.4.1";
+    version = "1.0.0";
+  };
+  faraday-em_synchrony = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vgrbhkp83sngv6k4mii9f2s9v5lmp693hylfxp2ssfc60fas3a6";
+      type = "gem";
+    };
+    version = "1.0.0";
   };
   faraday-excon = {
     groups = ["default"];
@@ -854,6 +904,16 @@
     };
     version = "1.1.0";
   };
+  faraday-httpclient = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fyk0jd3ks7fdn8nv3spnwjpzx2lmxmg2gh4inz3by1zjzqg33sc";
+      type = "gem";
+    };
+    version = "1.0.1";
+  };
   faraday-net_http = {
     groups = ["default"];
     platforms = [];
@@ -874,15 +934,25 @@
     };
     version = "1.1.0";
   };
+  faraday-patron = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "19wgsgfq0xkski1g7m96snv39la3zxz6x7nbdgiwhg5v82rxfb6w";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
   ffi = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0nq1fb3vbfylccwba64zblxy96qznxbys5900wd7gm9bpplmf432";
+      sha256 = "1wgvaclp4h9y8zkrgz8p2hqkrgr4j7kz0366mik0970w532cbmcq";
       type = "gem";
     };
-    version = "1.15.0";
+    version = "1.15.3";
   };
   ffi-compiler = {
     dependencies = ["ffi" "rake"];
@@ -944,10 +1014,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1gc26phrwlmlqrmz4bagq1wd5b7g64avpx0ghxr9xdxcvmlii0l0";
+      sha256 = "0mprf1dwznz5ld0q1jpbyl59fwnwk6azspnd0am7zz7kfg3pxhv5";
       type = "gem";
     };
-    version = "0.2.5";
+    version = "0.3.0";
   };
   forwardable-extended = {
     groups = ["default"];
@@ -985,10 +1055,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0jjgqg1iys8k5mjb1wlg8x26d97h1yikgipxwjf9rlyl4i725gn1";
+      sha256 = "02618y5gw8sbn258w298894if1xkn5gg7q6wj1sw0bx469xgj256";
       type = "gem";
     };
-    version = "3.4.4";
+    version = "3.4.5";
   };
   gio2 = {
     dependencies = ["gobject-introspection"];
@@ -996,10 +1066,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0m1dafspwk38jhk8kgk7v1r8pphz42mk9jkz8h3rvlxqnrnsl7sk";
+      sha256 = "0wflbi8yhrxv84q6lzrrqvdhpwrcklspkyzwyi47690wlbjff6cl";
       type = "gem";
     };
-    version = "3.4.4";
+    version = "3.4.5";
   };
   gitlab-markup = {
     groups = ["default"];
@@ -1017,10 +1087,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1qk30k15qk93mhw2dl191akqs9m0016avc8pwzvvcm7gk99qpbxc";
+      sha256 = "0aba6j1ixlb5bg2542dhm16c880vdk9cqn70247vhixzc3by0463";
       type = "gem";
     };
-    version = "3.4.4";
+    version = "3.4.5";
   };
   globalid = {
     dependencies = ["activesupport"];
@@ -1039,10 +1109,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0wm1s6xa2cf1n2yvcya8ah57rc0q1klmnrvvdaby3qyn8a6gdlby";
+      sha256 = "0rfjkgk5wxs19qah531k6ki6384iqf7b8cbdqc9l6ff9gvkf8cmw";
       type = "gem";
     };
-    version = "3.4.4";
+    version = "3.4.5";
   };
   gpgme = {
     dependencies = ["mini_portile2"];
@@ -1131,10 +1201,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "004cgs4xg5n6byjs7qld0xhsjq3n6ydfh897myr2mibvh6fjc49g";
+      sha256 = "19370bc97gsy2j4hanij246hv1ddc85hw0xjb6sj7n1ykqdlx9l9";
       type = "gem";
     };
-    version = "1.0.3";
+    version = "1.0.4";
   };
   "http_parser.rb" = {
     groups = ["default"];
@@ -1182,10 +1252,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07vblcyk3g72sbq12xz7xj28snpxnh3sbcnxy8bglqbfqqhvmawr";
+      sha256 = "1papdw0503grmbl51jwaa2yn7ndvm94vbdqzz46r25hp3r6d1pls";
       type = "gem";
     };
-    version = "0.1.0";
+    version = "0.1.2";
+  };
+  jaro_winkler = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1y8l6k34svmdyqxya3iahpwbpvmn3fswhwsvrz0nk1wyb8yfihsh";
+      type = "gem";
+    };
+    version = "1.5.4";
   };
   jbuilder = {
     dependencies = ["activesupport"];
@@ -1299,10 +1379,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wbz3cjfrz3ii70lmmyspkm29x2wyr44ly0m818d2w7qi3igq79p";
+      sha256 = "1wqpp3m4zwy7l8n8z8d4krvf38q1gfx9lnsyipnfsapspsmsgdb6";
       type = "gem";
     };
-    version = "1.4.12";
+    version = "1.4.19";
   };
   libv8 = {
     groups = ["default"];
@@ -1351,10 +1431,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1w9mbii8515p28xd4k72f3ab2g6xiyq15497ys5r8jn6m355lgi7";
+      sha256 = "19vkaazjqyq7yj5ah8rpr4vl9n4mg95scdr5im93akhd5bjvkkly";
       type = "gem";
     };
-    version = "2.9.1";
+    version = "2.10.0";
   };
   mab = {
     groups = ["default"];
@@ -1409,6 +1489,16 @@
     };
     version = "0.9.0";
   };
+  matrix = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1h2cgkpzkh3dd0flnnwfq6f3nl2b1zff9lvqz8xs853ssv5kq23i";
+      type = "gem";
+    };
+    version = "0.4.2";
+  };
   mercenary = {
     groups = ["default"];
     platforms = [];
@@ -1445,10 +1535,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1phcq7z0zpipwd7y4fbqmlaqghv07fjjgrx99mwq3z3n0yvy7fmi";
+      sha256 = "0dlxwc75iy0dj23x824cxpvpa7c8aqcpskksrmb32j6m66h5mkcy";
       type = "gem";
     };
-    version = "3.2021.0225";
+    version = "3.2021.0704";
   };
   mini_magick = {
     groups = ["default"];
@@ -1465,20 +1555,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1np6srnyagghhh2w4nyv09sz47v0i6ri3q6blicj94vgxqp12c94";
+      sha256 = "0kb7jq3wjgckmkzna799y5qmvn6vg52878bkgw35qay6lflcrwih";
       type = "gem";
     };
-    version = "1.0.3";
+    version = "1.1.0";
   };
   mini_portile2 = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xg1x4708a4pn2wk8qs2d8kfzzdyv9kjjachg2f1phsx62ap2rx2";
+      sha256 = "1ad0mli9rc0f17zw4ibp24dbj1y39zkykijsjmnzl4gwpg5s0j6k";
       type = "gem";
     };
-    version = "2.5.1";
+    version = "2.5.3";
   };
   minitest = {
     groups = ["default"];
@@ -1638,10 +1728,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1i80ny61maqzqr1fq5wgpkijmh5j8abisrmhn16kv7mzmxqg5w0m";
+      sha256 = "1vrn31385ix5k9b0yalnlzv360isv6dincbcvi8psllnwz4sjxj9";
       type = "gem";
     };
-    version = "1.11.5";
+    version = "1.11.7";
   };
   opus-ruby = {
     dependencies = ["ffi"];
@@ -1682,10 +1772,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0vz880akmcgxf30mrmkld5zyvzr79qaaprnrn10yn7915qsqjh51";
+      sha256 = "1xaqx3i4cx7xb5m5qfm7jclq3yyrj8abaqif0q1i72259g5klb8c";
       type = "gem";
     };
-    version = "3.4.4";
+    version = "3.4.5";
   };
   parallel = {
     groups = ["default"];
@@ -1818,10 +1908,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "00839fhvcq73h9a4crbrk87y6bi2z4vp1zazxihn6w0mrwr51c3i";
+      sha256 = "0lmaq05a257m9588a81wql3a5p039f221f0dmq57bm2qjwxydjmj";
       type = "gem";
     };
-    version = "5.3.1";
+    version = "5.3.2";
   };
   racc = {
     groups = ["default"];
@@ -1871,10 +1961,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0flnpli87b9j0zvb3c4l5addjbznbpkbmp1wzfjc1gh8qxlhcs1n";
+      sha256 = "0k3d3acac2qn9fg185z3y79nvg4ghr4lyhqiz6mbwlsd7r2nd8mh";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   rails-dom-testing = {
     dependencies = ["activesupport" "nokogiri"];
@@ -1904,10 +1994,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17r1pr8d467vh3zkciw4wmrcixj9zjrvd11nxn2z091bkzf66xq2";
+      sha256 = "0hwp0qwkphp3fvbsq6ljp8s99v621si9bgqihysz5bv1d1z52mm4";
       type = "gem";
     };
-    version = "6.1.3.2";
+    version = "6.1.4";
   };
   rainbow = {
     groups = ["default"];
@@ -1982,14 +2072,15 @@
     version = "1.4.0";
   };
   red-colors = {
+    dependencies = ["matrix"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1kdjqvd9zdim2im6492lb4f3559sblrxcnza2xm7j7qr8hhyvisj";
+      sha256 = "1xqnbbcqg55abn985m716l6n5izyaaf4zdllhc8095cfqz2fbjcx";
       type = "gem";
     };
-    version = "0.1.2";
+    version = "0.3.0";
   };
   redcarpet = {
     groups = ["default"];
@@ -2006,10 +2097,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "15x2sr6h094rjbvg8pkq6m3lcd5abpyx93aifvfdz3wv6x55xa48";
+      sha256 = "057xp6bkfpmkq0csd1aa0nji1vjsx8pc0c63blcj6scvi9nh1l5k";
       type = "gem";
     };
-    version = "4.2.5";
+    version = "4.3.1";
   };
   redis-rack = {
     dependencies = ["rack" "redis-store"];
@@ -2054,6 +2145,17 @@
     };
     version = "2.1.0";
   };
+  reverse_markdown = {
+    dependencies = ["nokogiri"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0w6fv779542vdliq2kmikfhymjv55z8mgzblkfjdy2agl07da9c6";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
   rexml = {
     groups = ["default"];
     platforms = [];
@@ -2154,10 +2256,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1xhay8qn3p5f3g6x8i6zh372zk5w2wjrv9dksysxal1r5brkly1w";
+      sha256 = "045iralskypd95f42jdgbzp0alv2q0qlvya4qm6bkahg2rfb8s1x";
       type = "gem";
     };
-    version = "1.15.0";
+    version = "1.18.3";
   };
   rubocop-ast = {
     dependencies = ["parser"];
@@ -2165,10 +2267,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hx4im1a2qpiwipvsl3fma358ixjp4h0mhj56ichq15xrq709qlf";
+      sha256 = "1hnrfy928mwpa0ippqs4s8xwghwwp5h853naphgqxcd53l33chlv";
       type = "gem";
     };
-    version = "1.5.0";
+    version = "1.7.0";
   };
   rubocop-performance = {
     dependencies = ["rubocop" "rubocop-ast"];
@@ -2176,10 +2278,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0sllna4r40gbw0llh8p9581mfjvi535gfby27m2b11q5x5phrhwc";
+      sha256 = "0sl1l9xwvbxbkla5a64avlmyirc2vsbmvqdqza17dydh8m48pb3h";
       type = "gem";
     };
-    version = "1.11.3";
+    version = "1.11.4";
   };
   ruby-graphviz = {
     dependencies = ["rexml"];
@@ -2226,13 +2328,11 @@
     groups = ["default"];
     platforms = [];
     source = {
-      url = "https://github.com/akr/ruby-terminfo";
-      rev = "8aaa20b15fcf922239c200a1cccbc8853c397bb4";
-      fetchSubmodules = false;
-      sha256 = "1ak85bmnaqwpyx07wb6wfa2cr06gb30gnmv9knijnsbv4q583xlz";
-      type = "git";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rl4ic5pzvrpgd42z0c1s2n3j39c9znksblxxvmhkzrc0ckyg2cm";
+      type = "gem";
     };
-    version = "0.2";
+    version = "0.1.1";
   };
   ruby-vips = {
     dependencies = ["ffi"];
@@ -2271,20 +2371,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0590m2pr9i209pp5z4mx0nb1961ishdiqb28995hw1nln1d1b5ji";
+      sha256 = "0grps9197qyxakbpw02pda59v45lfgbgiyw48i0mq9f2bn9y6mrz";
       type = "gem";
     };
-    version = "2.3.0";
+    version = "2.3.2";
   };
   rugged = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "04aq913plcxjw71l5r62qgz3bx3466p0wvgyfqahg5n3nybmcwqy";
+      sha256 = "1dld1z2mdnsf9i4fs74zdr6rfk75pkgzvvyxask5w2dsmkj7bb4m";
       type = "gem";
     };
-    version = "1.1.0";
+    version = "1.1.1";
   };
   safe_yaml = {
     groups = ["default"];
@@ -2333,10 +2433,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18b89pmkfnb8q8n3q774ifn317wsxwgcqa0d9zklqsfyrg53768i";
+      sha256 = "0qbx9p07jdrnpqvjnq6js9qjwjihsk91c1ndmfap153darp1adw0";
       type = "gem";
     };
-    version = "5.44.0";
+    version = "5.46.0";
   };
   sequel_pg = {
     dependencies = ["pg" "sequel"];
@@ -2407,10 +2507,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09n6sj4p3b43qq6jmghr9zhgny6719bpca8j6rxnlbq9bsnrd8rj";
+      sha256 = "067bvjmjdjs19bvy138hkqqvw8li3732radcd4x5f5dbf30yk3a9";
       type = "gem";
     };
-    version = "4.9.0";
+    version = "4.9.1";
   };
   snappy = {
     groups = ["default"];
@@ -2422,6 +2522,17 @@
     };
     version = "0.2.0";
   };
+  solargraph = {
+    dependencies = ["backport" "benchmark" "diff-lcs" "e2mmap" "jaro_winkler" "kramdown" "kramdown-parser-gfm" "parser" "reverse_markdown" "rubocop" "thor" "tilt" "yard"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xqmvwh6k638h6r13wsx1l0n0jvz07qys1lr7z8aaynscs0k6hyi";
+      type = "gem";
+    };
+    version = "0.42.3";
+  };
   sprockets = {
     dependencies = ["concurrent-ruby" "rack"];
     groups = ["default"];
@@ -2490,10 +2601,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1sfa4120a7yl3gxjcx990gyawsshfr22gfv5rvgpk72l2p9j2420";
+      sha256 = "16x542qnzybzsi65ngd16921m88sh47l8fi21y8gbz08daq4rpab";
       type = "gem";
     };
-    version = "0.14.1";
+    version = "0.14.2";
   };
   tilt = {
     groups = ["default"];
@@ -2595,10 +2706,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1i3rs4kcj0jba8idxla3s6xd1xfln3k8b4cb1dik2lda3ifnp3dh";
+      sha256 = "0a3bwxd9v3ghrxzjc4vxmf4xa18c6m4xqy5wb0yk5c6b9psc7052";
       type = "gem";
     };
-    version = "0.7.3";
+    version = "0.7.5";
   };
   websocket-extensions = {
     groups = ["default"];
@@ -2621,15 +2732,15 @@
     version = "5.0.2";
   };
   xcodeproj = {
-    dependencies = ["CFPropertyList" "atomos" "claide" "colored2" "nanaimo"];
+    dependencies = ["CFPropertyList" "atomos" "claide" "colored2" "nanaimo" "rexml"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1411j6sfnz0cx4fiw52f0yqx4bgcn8cmpgi3i5rwmmahayyjz2fn";
+      sha256 = "0vcfl87z490xmj4q09davx31r2gzvan95sj90x58wq4ymgrdhf1p";
       type = "gem";
     };
-    version = "1.19.0";
+    version = "1.20.0";
   };
   xctasks = {
     dependencies = ["nokogiri" "rake"];